Retro CP/M (with the CX16 and otherwise)

Feel free to talk about any other retro stuff here including Commodore, Sinclair, Atari, Amstrad, Apple... the list goes on!
BruceMcF
Posts: 1336
Joined: Fri Jul 03, 2020 4:27 am

Retro CP/M (with the CX16 and otherwise)

Post by BruceMcF »



5 hours ago, TomXP411 said:




Now the big question.... why not just put VERA directly on a Z80 board?  A VERA daughterboard for RC2014 should be simple to build, and then we could have a stand-alone "Commander ZX80", which could run at 20Mhz and not need any fancy interface logic to work with the CX16. 



 



No reason not to. Regarding the "Approach 3", the point of that approach is typically that you are using both modes, and an expansion card is cheaper than a whole new system ... which would certainly be the case.

It's nothing I would be in the market for, but it would be beneficial for the "Approach 3" type expansion board, since there would then be more Z80 code targeting Vera.

 

BruceMcF
Posts: 1336
Joined: Fri Jul 03, 2020 4:27 am

Retro CP/M (with the CX16 and otherwise)

Post by BruceMcF »


Why CP/M?

When CP/M has perioidically come up in the Facebook group, there is an argument about WHETHER one should be interested in CP/M on the CX16. That's the kind of argument I have no interest in engaging with. Do if you want to, don't if you don't want to, people who do want to "explaining" to people who don't why "they are wrong" or people who don't want to "explaining" to people why "they are wrong" is not a conversation I have the slightest interest in. I have been talking on the internet for nearly 40 years now (since before html had pictures), and I have seen hundreds of versions of the same conversation without yet seeing a point to it.

However, there is the other version of the question, which is curiosity. "But why are YOU interested in CP/M?"

Some may be interested in CP/M primarily for nostalgia. They used CP/M heavily "back in the day" and it doesn't really feel "retro" to them without a bit of PIP and SAVE action.

Now, I have some nostalgia for my little CP/M tablet, the Epson Geneva, with it's cute little built in answering-machine-tape drive and the micro printer I used to write letters home when I was in Grenada in the peace corps. But that is more nostalgia for the Geneva than nostalgia for CP/M ... I spent very little time IN the OS, and most of my time in Wordstar. A Wordstar-alike word processor is about as far as a CX16 system could go toward hitting that nostalgia unless someone made LCD tablet style case (with flip up LCD) for a CX16e board.

Rather, what I would find fun about CP/M are all of the retro programming languages it supports "out of the box", which no porting required (though sometimes with some tinkering with the terminal settings).

Consider Hjalfi's little demo of his Amstrad NC200 running CP/M off the 3.5" floppy disk: https://youtu.be/FGWshrMZcCc

With a good CP/M 2.2 with a reasonable sized Transient Program Area, you get multiple interpreted and multiple compiled Basics, m-code, p-code and native Pascals, Small C, BDS-C, Mix-C, fig Forth, DX Forth, Camel Forth (among others), Cowgol, J (APL for ASCII keyboards), Fortran, Cobol ... the list literally goes on. You might not have C++ or TCL or Perl or Python or Lua, but you have a whole bucketload of 8-bit era languages that could be hosted in a disk-oriented 8bit 64K address space system.

So if that kind of playground for old 8bit era languages sounds like fun to you, you can empathize with why I find the idea of CP/M interesting even though I am not particularly excited by the idea of doing a whole bunch of Z80 assembly language programming.

And if not ... well, I am not saying that the majority of audience for the CX16 "ought" to be interested in it. Just like those who are interested in the CX16 for whatever reason and would ALSO have a nostalgia itch scratched by a CP/M extension is a niche within a niche ... a subniche ... this interest area is ALSO a subniche, and that's fine with me.

This is why if a good cheap CP/M 2.2 expansion card is developed, I am not going to much worry about which approach it takes, I'll just buy it and stop scribbling down design notes for a dirt-cheap CP/M internal userport board.

SlithyMatt
Posts: 913
Joined: Tue Apr 28, 2020 2:45 am

Retro CP/M (with the CX16 and otherwise)

Post by SlithyMatt »


I think the thing that perplexes me about it is why people want to do it with the X16 when there are other retro homebrew computers out there that primarily use a Z80. None of the legacy CP/M software is going to take advantage of the VERA, they are just going to be text mode, which can be accomplished with anything. This isn't the old days when you really only have one computer, like a C128 or Apple II, when it made sense to have an add on system to support non-native software.

Yuki
Posts: 126
Joined: Mon Apr 27, 2020 1:50 am

Retro CP/M (with the CX16 and otherwise)

Post by Yuki »


Even on the TI-83+, or even the Game Boy, which both have a Z80 or similar, don't think anyone thought of porting CP/M on these things. But eh, if you find a way, nothing's gonna keep you from doing this.

Perifractic
Posts: 511
Joined: Sat Apr 25, 2020 4:53 pm

Retro CP/M (with the CX16 and otherwise)

Post by Perifractic »

I'm a CP/M fan. I used it heavily back in the day on our Amstrad PCW. I have a PCW now as you probably have seen.

I also installed CP/M on the ZX Spectrum Next, along with some PCW software.

And if it's an option I'll do the same on the X16.

Why? Because if it's possible to run a language I used in 1986 on 3 machines in 2020, two of them brand new, and one not even a clone but a completely new brand, then that is incredible to me.

(And also of course, nostalgia.)
BruceMcF
Posts: 1336
Joined: Fri Jul 03, 2020 4:27 am

Retro CP/M (with the CX16 and otherwise)

Post by BruceMcF »



On 7/12/2020 at 10:00 PM, SlithyMatt said:




I think the thing that perplexes me about it is why people want to do it with the X16 when there are other retro homebrew computers out there that primarily use a Z80. None of the legacy CP/M software is going to take advantage of the VERA, they are just going to be text mode, which can be accomplished with anything. This isn't the old days when you really only have one computer, like a C128 or Apple II, when it made sense to have an add on system to support non-native software.



Though other than my C64's in storage at home (fingers crossed at least one of them still works), I really am going to have the one retro computer. Working on one continent with (under normal circumstances) most of my summer vacation time in another doesn't really lend itself to hauling around multiple retro computers in my carry-on luggage.

As far as "taking advantage of Vera", I doubt that I am going to be doing much sophisticated graphical programming of the CX16 in any event, so no big difference there.

John Chow Seymour
Posts: 143
Joined: Sun Jul 05, 2020 3:27 pm

Retro CP/M (with the CX16 and otherwise)

Post by John Chow Seymour »



On 7/12/2020 at 2:24 AM, BruceMcF said:




However, there is the other version of the question, which is curiosity. "But why are YOU interested in CP/M?"



 


On 7/13/2020 at 12:53 AM, Perifractic said:




Why? Because if it's possible to run a language I used in 1986 on 3 machines in 2020, two of them brand new, and one not even a clone but a completely new brand, then that is incredible to me.



I've often wondered about CP/M; I've never used it, so I guess I never knew what I was missing, and it was really nice to hear people who like it describe what it is they like about it.  Thank you for taking the time to share your thoughts about it, even if it might never end up on the X16. In particular, I had no idea about all those supported languages; neat.

BruceMcF
Posts: 1336
Joined: Fri Jul 03, 2020 4:27 am

Retro CP/M (with the CX16 and otherwise)

Post by BruceMcF »


Another thing to tag into here is where to get CP/M itself.

As old as it is, CP/M itself has NOT been released under what would be considered a true open source license. Rather, specific permission to distribute free of charge has been granted to The Unofficial CP/M Web Site [UCWS]: http://www.gaby.de/cpm/ ... see especially the Digital Research binaries and source code pages: http://www.gaby.de/cpm/binary.html ... and http://www.gaby.de/cpm/source.html

What this means is that while people can GO TO the UCWS to get the original CP/M and then implement their own BIOS to port it to their own system ... the resulting operating system cannot be DISTRIBUTED without violating the license terms. As you may imagine, some emulators get around this by the age old "ignore the license terms" technique, but for those who respect the terms of software licenses, this can lead to cumbersome work-arounds.

However, due to the work of David Given of Zurich, Switzerland, in both aggregating open source alternatives and writing essential workalikes that had no open source alternatives, there is a working "CP/M 2.2 alike" operating system available, called "CPMish", which may be distributed under the GPLv2. The ZSDOS clone of the Basic Disk Operating System (BDOS) is under the GPLv2 ... most of the rest appears to be under a range of less restrictive licenses (public domain, BDS 2 clause, zlib, expat, etc.) for which complying with the GPLv2 for ZSDOS complies with all the rest as well.

All of this may be found in source code at github at: https://github.com/davidgiven/cpmish

So with CPMish, a complete CP/M 2.2 clone can be put together in the classic style, by implementing a CP/M BIOS ... and then the aggregate can be distributed in any way that complies with the GPLv2 (or later, as the GPLv2 has a "later version at your option" clause).

{Final note: raising the issues of licensing will attract different people, some of whom have very strong views regarding the differences of different open source licenses ... so I will also note that if someone wanted a distribution less encumbered than the GPL, they could combine the parts of CPMish under less restrictive licenses with instructions to download the Digital Research original sources from the Unofficial CP/M web site.}

Raongodz
Posts: 6
Joined: Mon Jun 29, 2020 7:57 pm

Retro CP/M (with the CX16 and otherwise)

Post by Raongodz »


I'd be down for a Commander zx80 project! Or should it be Commander Z16?



MP/M would be my preferred option built on an eZ80 based system.  But right now I am thinking GSX for VERA would be pretty cool. 

 

Raongodz
Posts: 6
Joined: Mon Jun 29, 2020 7:57 pm

Retro CP/M (with the CX16 and otherwise)

Post by Raongodz »



On 7/21/2020 at 3:59 AM, BruceMcF said:




As old as it is, CP/M itself has NOT been released under what would be considered a true open source license.



The ZINC projet also seem to be rewriting bits of CPM to make them GNU (although not 100% sure of current project state or activity).

Post Reply