22 comments

[ 10.5 ms ] story [ 710 ms ] thread
Doesn't answer Why to start with cp/m?

Oh hang on, I know. The locoscript word processor booted in seconds, on 1980s hardware - just like everything else back then, in fact. Who'd have thought load times would go backwards after 40 years of Moore's law?

Jet Set Willy was one of the largest video games of its day and took roughly four and a half minutes to load from tape on the ZX Spectrum. I was telling our teenager about this the other day while she was waiting for GTA5 to load on the PS4. And waiting, and waiting... for about five and a half minutes.

I used to use WordStar on a CP/M machine well into the 1990s because at most its 5.25" disks kept you waiting for two or three seconds.

I've got a single-board Z80-based system where I still run wordstar and write (trivial) code in Turbo Pascal.

I had a lot of fun working my way through the infocom archive, especially playing the Hitchhikers guide, and writing my own simple four-room adventure game.

CP/M is basically dead, but there are enough retro-fans such as myself that it'll probably still live on for another fifty years.

The difference is your ZX was running flat out as fast as the hardware would allow. Your PS4 is a supercomputer hobbled by bad programming practices.
Well also, the Spectrum was pulling roughly 44kB of data at 1800bps and the PS4 is pulling in something mental like 24GB ;-)
In the mid 90's I remember one guy at the European Commission telling me that he still used Word 2.0 for similar reasons.
WordPerfect is still used by a lot of solicitor's offices. They have stuff on floppy going back to the 80s, when they were early adopters, and since That Big Firm There used WP, *you* used WP, so you could interoperate, and that meant that Other Big Firm used WP to interoperate with you, and so on.

Decades later you still need to pull stuff off those old floppies occasionally.

Locoscript (the WP that came bundled with Amstrad's PCW series of Z80 small office machines -- probably the best-selling CP/M boxes ever, first sold in 1985) didn't actually run under CP/M. Locoscript could read and write the same filesystem as CP/M 3.0, which you could also boot by flipping the 3" disk over, but it had its own i/o subsystem and ran on the bare metal. (At least the version that Amstrad licensed -- earlier, Locoscript was apparently sold as a horrifically expensive dedicated legal word processing package. The Amstrad version was a cut down cheap'n'cheerful port.)

Also, Locoscript 1.00 really was anything but fast: saving a document over about 20kb to floppy could easily take a minute or two, and if it exceeded the free disk space the WP would crash hard with a corrupted screen buffer ...!

(Source: a PCW8256 was my first real computer, back in the day.)

Fair! I don't remember a crash, but I always assumed the save speed was just a limitation of the floppy drive
They fixed that particular crash by version 1.04, which shipped with machines sold after the first couple of months on the market. And version 2.0, a for-money upgrade, was much faster at saving overall. (I never bought it, by that point I'd switched to Protext on CP/M and was trying to wrap my head around HiSoft C.)
We used to run an entire lab on these things, including one floating at 4000V inside a perspex cage, controlling part of a C14 accelerator.

My understanding was that although you would flip the disk to boot in to Locoscript, at root it was running on CP/M, albeit with the CCP replaced by Locoscript. It would seem odd for them to re-engineer CP/M functionality - though given that CP/M was rather incomplete as an OS, it would naturally have to touch some bare metal. I never really investigate to check that belief. Is there a reason that you think that it didn't use CP/M?

Actually, replacing the CCP but retaining the BIOS and BDOS makes perfect sense. However, this was completely obscured from the user ...
Vim opens really fast on my desktop. Small and powerful software still exists.
> Who'd have thought load times would go backwards after 40 years of Moore's law?

"Wirth's law is an adage on computer performance which states that software is getting slower more rapidly than hardware is becoming faster. ...Niklaus Wirth...discussed it in his 1995 article "A Plea for Lean Software". ...Wirth attributed the saying to Martin Reiser, who [in 1991] wrote: "The hope is that the progress in hardware will cure all software ills. However, a critical observer may observe that software manages to outgrow hardware in size and sluggishness." Other observers had noted this for some time before; indeed, the trend was becoming obvious as early as 1987."

https://en.wikipedia.org/wiki/Wirth%27s_law

This is a great page.

After a long time trying on Mac, I found running Microsoft SoftCard CP/M on the Virtual ][ Apple II emulator emulator worked best. The Virtual Kaypro at http://sims.durgadas.com/kaypro/kaypro.html (Java-based) works well also, but keeps you confined to a Kaypro's 9-inch diagonal screen.

I just use z80pack at https://www.autometer.de/unix4fun/z80pack/

Works fine, run it from Terminal, set the CP/M software to run on VT100.

I did find its better to do some stty work to so that some control characters pass through. Turbo uses ^Y for example, and that was being eaten by the terminal. ^Z is also something you don't want the shell to see.

    tty=`stty -g`

    function finish {
         echo "restoring terminal"
         stty "$tty"
    }

    trap finish EXIT

    stty susp undef
    stty dsusp undef
    stty discard undef
    stty lnext undef

    ./cpmsim
Make sure that you keep your terminal screen to 80x25 also.
The only downside to z80pack is that it doesn't also play Apple II games like Virtual ][ does...
Hey, it's Herb's site! Lots of great old computer information there, from someone who was an active hacker on this stuff when it was current tech.