Re: Euphoria on DOSbox
- Posted by CChris <christian.cuvier at a?ri?ulture.gouv.fr> Oct 30, 2007
- 844 views
olddog wrote: > > Is there anybody out there who has a copy of the source and who knows how > to work with compilers who would be willing to join an experiment? > > If you could re-compile Euphoria for DOS using the DOS/32a open-source > DOS extender (instead of Causeway), there is a good chance that the > common DOS emulators could run it, including PocketDOS for the pocket PC. > > This could open up a whole new realm of application for Euphoria. > > Is anybody willing to try this and share the resultant ex.exe with us? > I'd be happy to do some testing on my pocket PC (Dell Axim x50v). > > Thanks! > > > Robert Craig wrote: > > > > olddog wrote: > > > Apparently, the old DOS game Doom can run on PocketDOS, using the DOS/4GW > > > DOS > > > extender, > > > for which there is a drop-in open-source replacement, DOS/32. > > > > > > Is it possible to compile Euphoria for DOS using a different DOS extender, > > > which > > > may > > > then run under PocketDOS on a Pocket PC? > > > > > > Thanks for any help. > > > > Euphoria used to use DOS/4GW a long time ago. > > The DOS extender could reside in a separate file, > > or could be combined with the Euphoria interpreter .exe file > > to make a single .exe file. They charged you extra > > for the privilege of making a single .exe file. > > > > I don't think you'd even have to change the > > Euphoria C source code to use it again. > > It just involves some trivial change to the way > > you link the object files using Watcom, > > perhaps not even that, if the extender is separate. > > > > The Watcom, DOS/4GW or DOS/32 docs should > > have an explanation of how it's done. > > I know it's very easy, but I don't remember the > > details off-hand. > > > > Regards, > > Rob Craig > > Rapid Deployment Software > > <a href="http://www.RapidEuphoria.com">http://www.RapidEuphoria.com</a> Really? The code in be_machine.c has some interrupt #31 calls which are specific to Causeway according to RBIL v61: * long_to_short(): AX=#FF21 (GetMemDOS) and #FF01 (RM interrupt) * InitGraphics(): AX=#FF08 (GetSelDet32) * user_allocate_low(): AX=#FF21 * user_free_low: AX=#FF23 (RelMemDOS) * dos_interrupt: AX=#FF01 So... I expect these areas of the backend source will require some alternative variant selected by an #ifdef ... #else directive. CChris