
For a while now I have been wanting to get my JavaScript CP/M emulator working.
Z80 CPU emulation was working great, and *parts* of CP/M were working. You could run Microsoft BASIC and load and execute Star Trek, for example.
But even with a ton of debugging, BDOS references, and the slop-making-plagiarism-machine, it just would crash on doing anything more advanced than that, such as compiling C programs using Hi-Tech C.
Hair-pulling no longer, it works! You can even play Rogue.

I did have to “cheat”, of course.
Once I knew I could have DOSBox running in a web browser, it was just a case of finding a working and capable CP/M that ran on DOS.
You should remember at this point that DOS and CP/M have a “history”, but also most of the people who wanted to run CP/M on an x86 machine had DRDOS and CP/M86 right there.
Fortunately, there is an amazing and compact CP/M80 emulator called MyZ80 and not only does it do what I need to bundle the compilers etc that I want, it allows import and export of files to the host OS, which *should* allow me to pass in and out files from my online IDE. Maybe.
So that is the next job, but for now I am happy to get this far.
I will leave the old CP/M emulator available in /old/ as I do like how you can select your own disks, but I think getting the ability to run more software is a fair exchange.
Original article by retrogamecoders.com


