This repo contains the source code for MS-DOS v1.25, v2.0 and v4.00, modified to be assembled with flat assembler and with optional changes for running on modern hardware.
To assemble the source code, create a floppy disk image and run using QEMU:
cd v1.25
.\run.bat
To build v1.25 with IBM hardware support (configured by default in this repo):
- set
IBM = 1
in IO.ASM instead ofSCP
, - set
IBM = TRUE
in STDDOS.ASM instead ofMSVER
, - set
IBMVER = TRUE
in COMMAND.ASM instead ofMSVER
, - set
HIGHMEM EQU FALSE
in COMMAND.ASM.
v1.25
- Added FASM build scripts.
- Added boot sector that loads IO.SYS and MSDOS.SYS and passes control to IO.SYS.
- Added IBM hardware support in IO.ASM: disk I/O via interrupt 13h, keyboard handling via interrupt 9h, time handling via interrupt 1Ah, text output via interrupt 10h.
All files within this repo are released under the MIT License as per the LICENSE file stored in the root of this repo.
This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.