0

With assembly, you could make calls to BIOS directly from MS-DOS. You could make system calls to the kernel directly in Win95, via accessing their static addresses in memory. It was magic. (It was also quite terrible from the perspective of an OS developer, but that's beside the point).

So, is there any VM that can emulate all that these days? Without crashing, that is.

Ele
  • 1
  • 1
  • Any HW virtualization can run the guest in real mode so you can boot DOS in it. For development of bare-metal stuff like bootloaders, Bochs is one of the best; it has a built-in debugger that knows what mode the CPU is in and understands segmentation (unlike GDB-remote connected to QEMU), and can dump the GDT and page tables to make sure the data in memory means what you intended. – Peter Cordes Jul 05 '23 at 00:59
  • If you're just looking to run DOS stuff (including 386 protected mode with DOS extenders I think), DOSBox is designed to be compatible even with the variety of weird stuff some games did. But Bochs is probably the most faithful x86-PC emulator, as a design goal. – Peter Cordes Jul 05 '23 at 02:52
  • 2
    @PeterCordes DOSBox-X cares about fidelity, DOSBox the original mostly cares about vintage games. – ecm Jul 05 '23 at 04:54
  • What about VirtualBox, VmWare, etc? – Ele Jul 05 '23 at 19:15
  • Actually apart from fidelity, it'd be necessary for file sharing to be possible between the emulated system and the host. VirtualBox and VmWare do not provide that for MS-DOS. I don't know much about Bochs, but hopefully it does. – Ele Jul 05 '23 at 19:19
  • MS Virtual PC (2004, or 2007 if you take DOS guest additions from 2004) is the only VM I've discovered that provides file-sharing for MS-DOS. I wonder how good is it with hardware emulation? – Ele Jul 05 '23 at 19:21

0 Answers0