[fpc-devel] State of i8086-embedded
Sven Barth
pascaldragon at googlemail.com
Mon Jul 1 21:52:23 CEST 2019
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
More information about the fpc-devel
mailing list