▲ | leeter 3 days ago | |||||||
Correct, there is a difference between MS-DOS and IBM-PC compatible and a DOS (ex: all the DOSes that existed for Amiga/Apple II/Commodore etc). There are many DOSes (and even MSDOSes, because yay early PC era incompatibilities!), but there is a very dubious list of things needed to be MS-DOS and IBM-PC compatible. You can probably do it if you're willing to setup a hypervisor and emulate some hardware. NGL one of my long term projects was/is something exactly like this but UEFI and secure boot. The idea being to use the VM extensions to create IBM-PC and DOS compatible environments. For anything using DPMI[1] I'd probably do the same trick as Win95 did and just replace it with my own implementation so it's not too overburdened with layers. [1] https://en.wikipedia.org/wiki/DOS_Protected_Mode_Interface | ||||||||
▲ | JdeBP 3 days ago | parent [-] | |||||||
A version of (say) FreeDOS that was layered on top of the EFI API instead of PC98 firmware interrupts would be quite interesting. That would be a major architectural change to most of the programs, of course. But one would have provided the EFI Shell with essentially a complete suite of MS-DOS (albeit not PC-DOS or DR-DOS) commands. That could probably be quite easily ported to (say) ARM whereas the original still has x86isms. On the other hand, did you see https://github.com/FlyGoat/csmwrap when it came up a few weeks ago? * https://news.ycombinator.com/item?id=44101828 There are already projects to provide replacements for the vanished Compatibility Support Module. | ||||||||
|