Hello together!

For a project at work I need to run 16-bit x86 code on a bare x86 hardware (more precisely a 8086 VM). Considering that i8086-embedded had been added to FPC nearly exactly 3 years ago I though I'd give it a try and cross compiled the units for the tiny memory model. However when I tried to compile a test program with -Wtcom (cause I've read that I'd need to use exe2bin to convert the resulting binary) I get the following output:

=== output begin ===

PS C:\fpc\git> .\compiler\ppcross8086.exe -n -Furtl\units\i8086-embedded -viwn -FEtestoutput -Tembedded -CX -XXs -Wmtiny
 -Wtcom .\fpctests\tembedtest.pp
Target OS: Embedded
Compiling .\fpctests\tembedtest.pp
Linking testoutput\tembedtest.com
tembedtest.pp(7,1) Warning: Object prt0t.o not found, Linking may fail !
tembedtest.pp(7,1) Warning: Object prt0t.o not found, Linking may fail !
tembedtest.pp(7,1) Error: Can't open object file: prt0t.o
tembedtest.pp(7,1) Fatal: There were 1 errors compiling module, stopping
Fatal: Compilation aborted

=== output end ===

Well, prt0t indeed does not exist for embedded (neither source nor object file) and looking at the code of $fpcdir/rtl/msdos/prt0t.asm (or more precisely prt0comn.asm) that one seems to be quite a bit dependant on DOS.

So what's the state of i8086-embedded? All I need is doing some calculation code and executing some interrupts (thus I hope that I won't need to load the resulting program at address 0, thus overwriting the interrupt table ;) ). And of course I'll need to know how I'll need to setup the VM's state before jumping into the entry code of the program. ;)

Regards,
Sven
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel

Reply via email to