Mit Freepascal kannst Du auf jeden Fall Programme für DOS schreiben. Es sind dann 32Bit Programme und Du musst die cwsdpmi.exe in dem Ordner haben, in dem Deine exe liegt, damit in den Protected Mode umgeschaltet werden kann. Außerdem musst Du je nach Rechner schauen, ob dort ein mathematischer Coprozessor vorhanden ist. Ich hatte damals einen
386EX-Card III von Taskit benutzt, der hatte keinen Coprozessor und musste noch die wmemu387.dxe im Programmordner haben. So weit ich mich erinnere, musste ich auch mit Freepascal 1.9xx arbeiten, mit Freepascal 2.xx hat es nicht geklappt. Wenn Du das ganze auf einem 486 oder höher laufen lassen willst, dann sollte es auch mit Freepascal 2.xx gehen.
Durch die fehlende direkte Unterstützung unter DOS mit dem Netztwerk und da ich irgendwie nichts gefunden habe, um auf die DOS Netzwerktreiber aufzusetzen, habe ich Projekt dann anders gelöst, in dem ich einen kleinen Embedded Rechner mit WXP Embedded benutzt habe.
Falls Du noch weitere Infos zu Freepascal oder sonst vielleicht irgendwelche Sourcen benötigst, gib Bescheid, ich habe noch alles auf meiner Platte und kann da mal reinschauen.
Grüße Sven