First post, by mattnz
Hi all,
I started out wanting to write a 8086/8088 .OBJ file unit test framework, but got side tracked by the ability to run MS-DOS command line programs on my Apple Silicon Mac. I've concentrated on getting Borland development tools working, so the following runs successfully in your command shell/terminal: Turbo Assembler 3.2, Turbo Linker 3.0.1, Turbo Librarian 3.0, Turbo Pascal 5.5 & 6.0, and a program from Fabrice Bellard called INFOEXE.
[user@host ~]# xt run TASM.EXETurbo Assembler Version 3.2 Copyright (c) 1988, 1992 Borland InternationalSyntax: TASM [options] source [,object] [,listing] [,xref]/a,/s Alphabetic or Source-code segment ordering/c Generate cross-reference in listing/dSYM[=VAL] Define symbol SYM = 0, or = value VAL/e,/r Emulated or Real floating-point instructions/h,/? Display this help screen/iPATH Search PATH for include files/jCMD Jam in an assembler directive CMD (eg. /jIDEAL)/kh# Hash table capacity # symbols...[user@host ~]# xt run TASM.EXE MORE.ASMTurbo Assembler Version 3.2 Copyright (c) 1988, 1992 Borland InternationalAssembling file: MORE.ASMError messages: NoneWarning messages: NonePasses: 1Remaining memory: 795k[user@host ~]#
The CPU emulation is rock solid due to it passing Single Step Test suite's 2.5 million tests - 10,000 per opcode (thanks to Daniel Balsom/MartyPC).
If others find it useful that's great. Pull requests welcome, as are suggestions on other MS-DOS command line programs people want to run.
XT - Run MS-DOS command line programs on Windows, Mac or Linux. Intel or ARM.
https://github.com/electricbolt/XT