Amiga.org

Operating System Specific Discussions => MorphOS => MorphOS -- Development Support => Topic started by: evenmore on November 30, 2011, 07:06:44 PM

Title: AmigaE/ECX - LoadSeg and libraries
Post by: evenmore on November 30, 2011, 07:06:44 PM
I have been a long time Amiga user, although I have never upgraded from the classic 3.9 OS. I am now in the process of getting a MorphOS machine, and will be using it to do a little bit of programming. My problem is, I use AmigaE on the classic Amiga, which works fine for me. But it's MorphOS equivalent, ECX, is giving me headaches. While it compiles my program, it won't let my program open an ECX generated library.

My question is, is it possible to open an ECX/AmigaE generated library (or any library for that matter) directly using the LoadSeg() command, instead of OpenLibrary()? Or does anyone have information on how this is done?

Cheers
Title: Re: AmigaE/ECX - LoadSeg and libraries
Post by: SamuraiCrow on November 30, 2011, 08:13:27 PM
AmigaE's library mode is hopelessly malformed.  I don't know about ECX but I do know that PortablE (http://cshandley.co.uk/portable/) has a compatibility mode for running older AmigaE software.  It doesn't have a library mode yet though.
Title: Re: AmigaE/ECX - LoadSeg and libraries
Post by: evenmore on November 30, 2011, 11:58:30 PM
Thanks for the reply. I thought E's library function wasn't quite right. I did check PortablE as well, unfortunately there is no library mode in it. PortablE is good, but quite slow at compiling, and my code would require a lot of changes in order for it to work.

As far as I can see, there is no way of guaranteeing where the AmigaE/ECX compiler will put its code in a binary file, making it very hard to determine which functions are which after a LoadSeg(). At least in a library file, the OpenLibrary() would do that all for you.

May have to think of a completely different way of producing plugins for my program. Cheers!