Hacker News new | ask | show | jobs
by retrac 1878 days ago
There are no doubt some systems still running under emulation doing the same thing as they were 40 years ago. The software might even be maintained. But the truth for decades now. CP/M is dead. Long live CP/M!

It's just hobbyists now. One hacker ported his game to a Kaypro under CP/M a couple years ago: http://www.chrisfenton.com/dd9-kaypro-edition/

Much of the focus is on porting CP/M to whatever new or old Z80 system someone has built or found. Speaking of which... CP/Mish is an attempt to bring all the free software CP/M tools together. It is to CP/M as Linux is to UNIX, or FreeDOS is to MS-DOS. A mostly complete, improved, libre reimplementation: https://github.com/davidgiven/cpmish

RunCPM is a CP/M Z80 virtual machine under modern OSes for development etc. https://github.com/MockbaTheBorg/RunCPM

In terms of recent new programs, here are some pointers if you wanted to write something yourself:

Also written by the maintainer of the CP/Mish project (and not CP/M specific) is Cowgol. Alpha quality. But it's a self-hosted Pascal/Ada-like language with compiler. Runs on 8-bit systems, at least theoretically. It is written, of course, entirely in Cowgol: https://github.com/davidgiven/cowgol

Millfork is another new language which targets CP/M systems, among others. It's a whole-program optimizing cross-compiler for a language somewhat lower level than C, with properties that make it very nice to compile for 8-bit systems like no recursion, and no automatic promotion to 16-bit integers in type handling: https://github.com/KarolS/millfork

There's some work on a Z80 target for FreePascal. I don't think there's CP/M specific support, so there's a project idea: https://wiki.freepascal.org/Z80

SDCC supports the platform with C surprisingly well. I wouldn't call it rock-solid but compared to the above toys it is an industrial quality compiler for the Z80. In fact, C seems to be the most common actual language for hobbyist and the little remaining serious Z80 development, probably ahead of assembly. If it just reads and writes the terminal and can fit in about 60 KB, then a port is probably straightforward.

1 comments

Even TI runs a Z80 emulator on its calculators these days.