Who's Online |
90 user(s) are online ( 54 user(s) are browsing Forums)
Members: 0
Guests: 90
more...
|
|
|
|
Re: LiteXL v2.1.0 is released
|
Posted on: Today 12:24
#1
|
Just can't stay away
|
@walkero
THXaLOT downloaded and works fine so far. Good work mate!!!!
|
|
|
|
Re: LiteXL v2.1.0 is released
|
Posted on: Today 12:03
#2
|
Site Builder
|
There is a new release of LiteXL 2.1.4r1 waiting for you. You can read about it at https://ko-fi.com/post/Lite-XL-2-1-4r1-released-N4N3YHCT4Changes: - Added the ability to open files and folders by drag 'n drop them on the LiteXL icon when this is on the AmiDock (AmigaOS4) / Panel (MorphOS) - Updated the code to the upstream 2.1.4 release - Fix opening files from the root of a device
|
|
|
|
Re: Tracing of callhookpkt()/callhook()
|
|
Just can't stay away
|
@Hypex Quote: The 68K ABI convention is also the same way as the native ABI also uses registers in API calls, No, it doesn't. Check for example https://m680x0.github.io/doc/abi.htmlFor the return value a register (d0 for ints, a0 for pointers) is used, but all arguments are on the stack, none in a register. Quote: Quote: But even on m68k most people didn't use that anymore but something like
Except in that case but it can be compiler specific. It would have been compiler specific if I'd have used something like
int32 hookFunc(__asm(a0) struct Hook *hook, __asm(a2) APTR object, __asm(a1) APTR message)
which only works with GCC, but using the REG() macro instead works at least with SAS/C, DICE, VBCC, StormC and GCC.
|
|
|
|
Re: Tracing of callhookpkt()/callhook()
|
|
Not too shy to talk
|
@joerg Quote: On PPC nobody is using an asm stub in h_Entry and a C function in h_SubEntry. It's not required because on PPC all 3 arguments are passed in registers (r3, r4 and r5) in C code anyway. Yes, obviously the ABI convention helps here in SYSV, which C compilers follow. The 68K ABI convention is also the same way as the native ABI also uses registers in API calls, however, C compilers don't follow it for internal functions calls and use the common stacking standard. Quote: On m68k an asm stub in h_Entry can be used which pushes the 3 registers A0, A2 and A1 on the stack and calls a C function in h_SubEntry. On m68k C functions don't use registers but only the stack for the arguments. And that's where the mess begins. It would have needed a specific keyword like APICALL in GCC does, but I imagine that C compilers could have used registers automatically, if they could be told to call it like an API function. Of course there would be no library base so perhaps it wouldn't have been easy to tell the C compiler to put parameters in registers like a normal library call. Quote: But even on m68k most people didn't use that anymore but something like Except in that case but it can be compiler specific. Where as a library call using the same register method is just an include file away for the causal coder. Quote: The EmulateTags() call works in any case, no matter if there is a m68k asm stub in h_Entry which calls a h_SubEntry function with stack arguments, or if h_Entry is the C function using register arguments with the REG() macro. Transparency is good and expected. Quote: It's the same for PPC native code, just in case someone uses useless code like Ha.
|
|
|
|
Re: Hello!
|
Posted on: Yesterday 23:25
#5
|
Just popping in
|
@nbache Thanks Niels, that saved me having to look for it. I've also found the example HelloWorld program related to this which I'm currently looking through to see how it is implemented. Kind regards, Francis
|
|
|
|
Re: Hello!
|
Posted on: Yesterday 21:51
#6
|
Just can't stay away
|
@dfstudios
The best place to learn about how to implement localization of your program is the CatComp.doc in SDK:Documentation/Tools/Locale/ - I've just done it to a small program I'm working on.
Find all the strings you need to localize in your program and create a .cd (catalog description) file with them. Using that file and your source file(s), you can make CatComp create the necessary header file with the strings and code for a GetString function, which you then call in your code as a replacement for each string.
Later, you can make CatComp create, based on the .cd file, a .ct (catalog translation) file in which the translator can enter the translated strings, and then CatComp can compile the finished .catalog file from the .cd and .ct files.
In broad terms, that should be it, but read though the doc, and all should be clear.
Best regards,
Niels
|
|
|
|
Re: Hello!
|
Posted on: Yesterday 19:47
#7
|
Just popping in
|
@MaijestroQuote: Before you publish your tool on Os4Depot or your website (yes I have already visited it) is there a possibility that we could translate the tool into German? I would do the translation myself if your tool also supports catalog files. Having different translations is one of the things on my list that I definitely want to add. I just need to have a look at how best to do this. Kind regards, Francis
|
|
|
|
Re: Hello!
|
Posted on: Yesterday 19:44
#8
|
Just popping in
|
@nbacheQuote: nbache wrote:@dfstudios
It looks very much like the feature which was included in the Workbench menu in 4.1FE Update 2 a couple of years ago. Thanks for your comments, they are genuinely appreciated. Before I got my A1222, I did have plans to revisit my OS4Reboot tool which I probably last looked at in 2005 or 2006 (wow, how time flies! ) when I still had my Micro-A1 (I unfortunately had to sell it along with some other things due to unexpected money issues at the time). When I got the A1222 and discovered it already had this functionality I originally decided to forget about OS4Reboot, but due to interest here I decided to go ahead with giving it an overhaul. I don't have a lot of C programming experience (I'm more of a BASIC guy), so as you said this is a good opportunity to learn and practice. Plus, it also gives me the opportunity to add features and fix things that I wanted to do first time round. Kind regards, Francis
|
|
|
|
Re: A1222+ and Enhancer 2.2 Question
|
Posted on: Yesterday 19:19
#9
|
Just popping in
|
@Maijestro
On AmiStore it just says that there is an update. On Updater it says that there are a bunch of Radeon updates and an updated Dir command. If I try to download or update them I just get told that theses are either not enabled for my account (Updater) or the files are missing from the server (AmiStore).
Kind regards,
Francis
|
|
|
|
Re: What the fastest possible x64 emulation way of OS4 today ?
|
Posted on: Yesterday 18:00
#10
|
Quite a regular
|
You will definitely find help. The prices are really affordable For example, Heretic 2 is offered at an irresistible price. (EUR 44.95) Not to mention Quake 2. Welcome to the fantastic Amiga world. Taking this yardstick into account Elden Ring plus the upcoming expansion Elden Ring Shadow of the Erdtree should be sold for 1,000 EUR. Oh I forgot, The Sam upgrade for 15 euros is a real bargain Well this is a trend that has been going on for many years. I remember when I bought Quake 1 by "ClickBoom" I sent the game back at the time PayPal didn't exist yet. Simply because it said minimum requirements 030 needless to say the game ran at 4fps on my 1200 with 030. I have to be honest I was refunded.
Edited by white on 2024/5/23 21:29:25
|
|
|
|
Re: A1222+ and Enhancer 2.2 Question
|
Posted on: Yesterday 17:42
#11
|
Quite a regular
|
@dfstudios Quote: dfstudios wrote:@MisterJBAMQuote:but in Amistore it is visible in my purchases but I cannot download the update Interesting. The Enhancer software is now showing up in my AMIStore, though I'm unable to download the update either.
Just out of curiosity, what kind of updates would these be?
|
MacStudio ARM M1 Max Qemu//Pegasos2 AmigaOs4.1 FE
|
|
|
Re: What the fastest possible x64 emulation way of OS4 today ?
|
Posted on: Yesterday 17:37
#12
|
Quite a regular
|
@defcon9 Quote: I'm on macOS Sonoma (ARM64). I could set up a TeamViewer session for you, but then it might be better to wait for my Pegasos 2 disk and license to arrive, which should be in a few days.
It would be great to have the basics up and running so I can dive into the code immediately.
I'm also a hardware guy, but I have way too many hardware & desktop systems already. The "woman approval factor" for another machine is very low ;) I really depend on macOS for my daily cross-platform development work, so having a mobile system that can virtualize multiple other OSes is more practical for me.
On their hardware Qemu/Pegasos2 runs fast with AmigaOs4.1 and is in my opinion one of the best at the moment. A TeamViewer session should not be necessary and you will not learn how to use Qemu or AmigaOs4.1. There are already some guides that you just have to follow and if you don't understand something just write here in the forum I or someone else will be able to guide you through the installation. My English installation guide lags a bit behind the German guide and is not as detailed, but for the first installation it should be enough, as well as Balton's own installation guide which can be used for this. You can do it...
|
MacStudio ARM M1 Max Qemu//Pegasos2 AmigaOs4.1 FE
|
|
|
Re: Hello!
|
Posted on: Yesterday 17:25
#13
|
Quite a regular
|
@dfstudios Quote: dfstudios wrote:I've now got a working version of OS4Reboot (currently retitled as PowerReboot) that can power off the system:
I've still got a bit of work to do before it is ready for release, but hopefully it won't be too long.
Soft Reboot/Hard Reboot/Shutdown is already available from AmigaOs4.1 Update 2 via the WB menu, but I also know your tool and find it nicer and you can start it quickly via AmiDock. Before you publish your tool on Os4Depot or your website (yes I have already visited it) is there a possibility that we could translate the tool into German? I would do the translation myself if your tool also supports catalog files.
|
MacStudio ARM M1 Max Qemu//Pegasos2 AmigaOs4.1 FE
|
|
|
Re: Sam 440ep multiple hard drives
|
Posted on: Yesterday 7:30
#14
|
Not too shy to talk
|
@pjs
Thanks, but no. This is Flex version and it has a 550W PSU.
Mechanical drives seems to work, but not SSD. It also has Radeon HD7750 graphics cards, so if there is not enough juice, I ques it would freeze first.
|
|
|
|
Re: Tracing of callhookpkt()/callhook()
|
Posted on: Yesterday 5:47
#15
|
Just can't stay away
|
@Hypex On PPC nobody is using an asm stub in h_Entry and a C function in h_SubEntry. It's not required because on PPC all 3 arguments are passed in registers (r3, r4 and r5) in C code anyway. On m68k an asm stub in h_Entry can be used which pushes the 3 registers A0, A2 and A1 on the stack and calls a C function in h_SubEntry. On m68k C functions don't use registers but only the stack for the arguments. But even on m68k most people didn't use that anymore but something like
ASM SAVEDS int32 hookFunc(REG(a0, struct Hook *hook), REG(a2, APTR object), REG(a1, APTR message))
{
...
return result;
}
in h_Entry. The EmulateTags() call works in any case, no matter if there is a m68k asm stub in h_Entry which calls a h_SubEntry function with stack arguments, or if h_Entry is the C function using register arguments with the REG() macro. It's the same for PPC native code, just in case someone uses useless code like
int32 hookFunc(struct Hook *hook, APTR object, APTR message)
{
...
return result;
}
int32 hookStub(struct Hook *hook, APTR object, APTR message)
{
return hook->h_SubEntry(hook, object, message);
}
struct Hook hook;
hook.h_Entry = hookStub;
hook.h_SubEntry = hookFunc;
Edited by joerg on 2024/5/23 6:08:42
|
|
|
|
Re: Tracing of callhookpkt()/callhook()
|
Posted on: Yesterday 3:07
#16
|
Not too shy to talk
|
@joerg
An issue with that is it's using h_Entry as the HLL entry point. According to convention, h_Entry is for asm stub and h_Subentry is the HLL function. Mind you, it's pointing to some code, but that's not the point. It's designed so that h_Entry is an asm stub that calls h_Subentry. Perhaps naming it as h_Start and h_Main or h_Function would be less confusing but I suppose in any case h_Entry can be treated as a generic entry point.
|
|
|
|
Re: Sam 440ep multiple hard drives
|
Posted on: Yesterday 1:54
#17
|
Not too shy to talk
|
Hi Utri007, Is this a Sam440mini? Is it possibly your power supply isn't putting out enough power to drive all those drives? You could try pulling a few drives and seeing if the other ones work correctly. Then alternate to the others and try again. With my Sam440mini I ended up replacing the original power supply from ACube with a higher wattage mini-ITX model. I think this might be the one I got: http://www.mini-box.com/picoPSU-160-XT-192W-Adapter-Power-KitMaybe that might help you? Good luck!! PJS
|
|
|
|
Sam 440ep multiple hard drives
|
Posted on: 5/22 22:16
#18
|
Not too shy to talk
|
Hi,
I have a 3 hard drives and DVD drive connected to sata ports.
Problem is that SSD drives that I have gives time out and doesn't appear to Hd install utility. Mounter tells time out. I have tested with two SSD drives and one mechanical which seems to work righ a way.
BUT if I just keep it connected it might just appear as drive and after that it just works.
Any ideas? I tried to find if there is something for a uboot shell?
|
|
|
|
Re: Hello!
|
Posted on: 5/22 21:57
#19
|
Just can't stay away
|
@dfstudios It looks very much like the feature which was included in the Workbench menu in 4.1FE Update 2 a couple of years ago. From the ChangeLog.guide of Update 2: Quote: workbench.library v53.62
NEW o Added "Shutdown..." menu item which opens a requester allowing to select between doing a soft reset, a hard reset or a power off (if supported). Before a reset or power off is performed all filesystems will be flushed and inhibited. Note that I'm not trying to put down your work, I'm sure it's a good experience to create this program - I also make more or less useful programs myself just in order to learn and practice. And of course your program may well have features the builtin one doesn't, I haven't tried yours. At least the builtin one creates a much smaller requester, which may or may not be an advantage; it's probably a matter of taste. But just wanted to make sure you were aware of this . Best regards, Niels
|
|
|
|
Re: Hello!
|
Posted on: 5/22 21:06
#20
|
Quite a regular
|
Impressive ! can not wait to test and include it in my dock !
|
|
|
|