Wie laufen alte x86-DOS-Assembler-Programme in 64-bit Windows?
Vor einigen Jahren schrieb ich einige x86-DOS-Assembler-Programme als Hilfe für die Batch-Datei-Programmierung. Die Programme sind sehr klein; etwa zwei oder drei hundert bytes .COM-version. Ich bin jetzt aktualisieren und neue Versionen dieser Programme; jedoch die .COM-oder .EXE-ausführbare Dateien laufen nicht in 64-bit Windows-Versionen. Ich muss wissen der einfachste Weg zu konvertieren, diese Programme so laufen Sie in 64-bit Windows. Ich weiß, dass DosBox kann das tun, aber ich brauche meine Programme in Win cmd.exe Batch-Dateien. Könnte jemand mir helfen? Vielen Dank im Voraus!
Es gibt keinen einfachen Weg. Die Umwandlung eines Programms von 16-bit auf 32-bit-code erfordert eine Neufassung. Sollte nicht allzu schwer sein, wenn es nur ein paar hundert bytes?
Ich benutze DosBox auf Windows 7 x64. Es ist nicht perfekt, aber die meisten Dinge einfach funktionieren.
Für einfache Programme, die keine direkte video-Ausgabe oder selten interrupt-services, können Sie versuchen, die "MS-DOS-Player für Win32 -, x64-Konsole".
OK. Ich verstehe das; aber was muss ich umschreiben? Könnten Sie mir eine Probe von dem, was ich tun, um dies zu erreichen? Vielen Dank!
Ich benutze DosBox auf Windows 7 x64. Es ist nicht perfekt, aber die meisten Dinge einfach funktionieren.
Für einfache Programme, die keine direkte video-Ausgabe oder selten interrupt-services, können Sie versuchen, die "MS-DOS-Player für Win32 -, x64-Konsole".
OK. Ich verstehe das; aber was muss ich umschreiben? Könnten Sie mir eine Probe von dem, was ich tun, um dies zu erreichen? Vielen Dank!
InformationsquelleAutor Aacini | 2012-05-10
Du musst angemeldet sein, um einen Kommentar abzugeben.
64-bit-Windows wird nicht zulassen, dass 16-bit Programme überhaupt. Sie müssen einen anderen Weg finden.
http://msdn.microsoft.com/en-us/library/bb756962.aspx
https://superuser.com/a/140956
Einem x86-emulator wurde in Javascript geschrieben, so dass emulation wäre überlebensfähig, aber ich vermute, es ist viel weniger Arbeit zu Hafen oder umschreiben der Programme. http://bellard.org/jslinux/
Sie ersetzen die 16-bit-Anweisungen für 32-bit-oder 64-bit Variante für einen start. Ich bin mir nicht sicher, wie Sie Sie ändern von COM, EXE. Es könnte einfacher sein, zu schreiben, die Programme, die in C oder einer anderen Sprache.
Sie könnten auch in der Lage sein, einen emulator zu finden, die Sie ändern können, um Sie für Ihre Zwecke anpassen, leider scheint es die meisten wollen, zu emulieren, die OS als auch. Hier ist eine Liste: thefreecountry.com/emulators/pc.shtml
Sie können Windows XP-Modus und teilen Sie den Datenträger, auf dem Sie Ihre Programme ausführen zu müssen. Sollten Sie das erstellen einer ramdisk für diesen Zweck mit Imdisk ltr-Daten.se/opencode.html/#ImDisk wenn Sie nicht möchten, zu teilen einer physischen Festplatte der virtuellen Maschine.
InformationsquelleAutor Mark Ransom