Zwar kann man in der Tat mit irgendwelchen Hacks (giveio.sys) direkte
Hardwarezugriffe auch für DOS-Programme ermöglichen, die unter Windows
laufen, das sollte man aber tunlichst sein lassen, wenn die Hardware
interruptgesteuert arbeitet, was bei der seriellen Schnittstelle
zumindest üblich ist.
Dann geht ein solcher Zugriff ganz ordentlich in die Hose und ein
Bluescreen ist die Folge.
Dieser "giveio"-Hack ist daher nur sinnvoll, wenn nicht
interruptauslösende Hardware verwendet wird, was für die
Parallelschnittstelle im Standard-Modus zutrifft.
Ein Grund für das teilweise erstaunlich schlechte Funktionieren von
DOS-Programmen, die mit der seriellen Schnittstelle hantieren, ist die
teilweise abenteuerlichste Ansteuerung der Schnittstelle durch das
DOS-Programm.
Da es für DOS keine verwendbaren Devicetreiber für serielle
Schnittstellen gab bzw. die wenigen Möglichkeiten (Fossil) kein
Programmierer nutzen wollte, hat jeder seine höchst individuelle
Variante der Ansteuerung implementiert. Mehr oder weniger brauchbar,
wie das bei verschiedenen Programmierern mit schwankenden
Hardwarekenntnissen und -Verständnis halt der Fall ist.
Und aus diesem Grund hat die nicht 100% perfekte Hardwareemulation der
VDM (das ist die virtuelle DOS-Emulation von Windows NT) so ihre
Probleme damit, mit all diesen Varianten der Programmierung
klarzukommen.
Eine letzte Möglichkeit bestünde darin, den ganzen Kram in einer
vollständig virtualisierten Umgebung wie VMWare laufen zu lassen ...
Sinnvoller erscheint mir hier die Entwicklung eines neuen
Download-Programmes, das als Win32-Konsolapplikation mit
Betriebssystemmethoden (CreateFile etc.) die serielle Schnittstelle
behandelt, was natürlich nur dann möglich ist, wenn das
Downloadprotokoll des EPROM-Simulators dokumentiert ist.
Wie auch immer: Viel Erfolg beim Finden einer Lösung.