[HN Gopher] Running CP/M on the C128
       ___________________________________________________________________
        
       Running CP/M on the C128
        
       Author : celso
       Score  : 88 points
       Date   : 2024-03-04 10:08 UTC (1 days ago)
        
 (HTM) web link (celso.io)
 (TXT) w3m dump (celso.io)
        
       | toadi wrote:
       | In my teens I actually ran CP/M on my C128 which could also be a
       | C64(this mostly for games)
        
         | pantulis wrote:
         | I remember Commodore using the CP/M capability to position the
         | C128 as a more serious C64.
        
           | vidarh wrote:
           | And it didn't work very well. It didn't sell much, CP/M was
           | dying at that time and the CP/M support in the C128 was not
           | great. "Half my class" at school had C64's, but I only ever
           | knew one person whose family got a C128. I really wanted one
           | when they were introduced, but ended up with an Amiga a
           | couple of years later instead.
        
             | vidarh wrote:
             | Too late to edit but will correct myself slightly because
             | the above might mislead: The C128 _did sell well for a 1980
             | 's 8-bit home computer_ - about 2.5 million sold made it
             | one of the best selling 8-bit computers ever.
             | 
             | It just didn't sell well _for Commodore_ compared to the
             | Commodore 64 and the Amiga. As a replacement for the
             | Commodore 64, it was a sales disappointment. Most other
             | manufacturers would have been thrilled with a failure like
             | that, however.
             | 
             | That said, perhaps more accurate would be to say that using
             | CP/M to position the C128 that was didn't help much - even
             | of the people who bought a C128, most never used CP/M.
             | Though to some it might have been what allowed them to
             | convince parents it was a "serious computer".
        
       | jopsiHr wrote:
       | CP/M on floppy came with my C128.
        
       | weinzierl wrote:
       | _" I had a brief encounter with CP/M when I was 14 or 15 years
       | old; I can't remember exactly. At the time, I was in high school
       | in Aveiro, and the local computer shop, which I visited daily on
       | my way to the train station, just to stare at the window, the
       | same way a pilgrim would visit and contemplate at a shrine, had
       | two beautiful machines on display: the brand-new Amiga 1000 and a
       | C128D."_
       | 
       | This hit me with so much nostalgia. Different parts of the world
       | - same experience.
        
         | forinti wrote:
         | I would spend my vacations with my grandparents in Uruguay in
         | the 1980s and 1990s. The shops had all sorts of micros, from
         | Amigas to Coleco Adams.
         | 
         | There was a small Amiga shop on 18 de Julio Avenue and I once
         | took a friend from Brazil there and he was mesmerised; I
         | couldn't get us out of there. I remember the owner was called
         | Juan; he was a nice chap and we talked all afternoon.
        
       | krylon wrote:
       | I had a C128 as a kid, but I almost exclusively booted into C64
       | mode to play games. I _did_ have a CP /M floppy, but I only
       | booted it once or twice, had no clue what to do with it, and
       | forgot about it quickly.
        
         | ryandrake wrote:
         | Same here. I had this vague notion that CP/M was something that
         | grownups would use to do SeriousBusiness, but I had no idea
         | what kind of applications it could be used for. Booted it once
         | or twice and didn't see anything interesting. My C128 usage was
         | about 80% games 20% learning how to program, so if they had
         | built in some kind of programming language to their CP/M
         | ecosystem I would have probably gotten more into it.
        
         | TMWNN wrote:
         | >I had a C128 as a kid, but I almost exclusively booted into
         | C64 mode to play games.
         | 
         | 95% of C128s spent 95% of their time in C64 mode.
         | 
         | >I did have a CP/M floppy, but I only booted it once or twice,
         | had no clue what to do with it, and forgot about it quickly.
         | 
         | If 1% of C128 users ever used the bundled CP/M disk for more
         | than what you did--boot it to see what it's like--I'd be
         | surprised. 1985 was just too late to expect people to buy a new
         | computer to run CP/M.
        
       | NikkiA wrote:
       | TBH Commodore made a mistake cancelling the C900 and releasing
       | the C128, IMO.
        
         | pgrote wrote:
         | I was unfamiliar with that model. UNIX machine. Here is more
         | info:
         | 
         | https://en.wikipedia.org/wiki/Commodore_900
        
           | mgkimsal wrote:
           | Wow. That could have been something! Might have been a
           | commercial flop, but it would have exposed a lot of young
           | folks to some useful ideas a decade or two before they
           | otherwise would have been exposed.
        
           | celso wrote:
           | Funny enough, a few years later Commodore offered a port of
           | Unix System V that ran on the Amiga 3000, I actually played
           | with it in my University.
           | 
           | https://en.wikipedia.org/wiki/Amiga_Unix
        
             | phicoh wrote:
             | They had an interesting hack to connect to a high-res
             | monitor. Timing wise they had to stick to the standard TV
             | timing otherwise regular Amiga software would not work. So
             | they created a hack where the Amiga would send 4 screens of
             | pixels that would then assembled and sent to a high-res
             | monitor. Screen refresh rate was very slow though.
        
           | cstross wrote:
           | Oh wow, it ran MWC Coherent!
           | 
           | I still have a (printed on dead trees!) manual for Coherent
           | 3.2 (286 version, circa 1990-91) kicking around. Ran
           | multiuser (login via tty or virtual terminals on the console)
           | in 640Mb of RAM, off a 10Mb fully installed setup. If I
           | remember correctly you were limited to 64Kb code & 64Kb data
           | per process, though ... (Coherent 4.0 removed the addressing
           | limit).
        
         | fulafel wrote:
         | Interestingly all 3 of C900, C128 and the Amiga are/were to be
         | ~1985 machines (maybe 86 for the C900). I'd think from the
         | specs (memory, CPU power, multitasking OS, hard drive as
         | standard for the C900 etc) point of view the C900 was competing
         | more with the Amiga than the C64-compatible 128k machine that
         | didn't have architectural prospects of addressign more memory
         | later.
        
         | cmrdporcupine wrote:
         | I believe much of the team that was working on the S900 left
         | Commodore with Jack Tramiel, and were involved with the design
         | of the Atari ST.
         | 
         | In particular Shiraz Shivji, who was the main designer of the
         | ST, was part of the S900 project.
         | 
         | Pretty sure the S900 was effectively dead before the C128
         | project was even started.
         | 
         | And in any case the S900 was a monochrome business computer,
         | aimed at the productivity market -- a segment Commodore later
         | targeted with PC compatibles instead.
         | 
         | The C128 was targeted at consumers who wanted to run C64 games.
        
       | jim_lawless wrote:
       | We had a pretty active CP/M community in the 80's when the C128
       | was released. Most of the time I spent in CP/M mode was either
       | running Turbo Pascal or MEX ( the Modem EXecutive ... a
       | telecommunications program. ) We had some CP/M bulletin board
       | systems in the area with downloadable software and source code.
       | This was where I first used archivers such as Gary Novosielski's
       | LU / Library Utilty ... which was kind of like tar. It stored
       | archives in files ending in the extension ".LBR". Versions of ARC
       | were also used at the time. There were stand-alone versions of
       | LZW and Huffman compressors ( Crunch and Squeeze, respectively )
       | which were often used in conjunction with LU in the same manner
       | that gzip is often used with tar archives.
       | 
       | The posted article mentions how slow C128 CP/M when compared to
       | comparable machines, but I really didn't notice. It ran quickly
       | enough for my needs.
        
         | EvanAnderson wrote:
         | There's a nice discussion re: the performance of CP/M on the
         | 128 here:
         | https://retrocomputing.stackexchange.com/questions/2361/why-...
        
       | KingOfCoders wrote:
       | I think I've read somewhere you could use the 6502 from the Z80
       | side, it would be interesting to run 6502 code while in Z80 CPM.
        
         | celso wrote:
         | Well, kind of.
         | 
         | The Z80 and the 6502 (well, 8502 actually) CPUs share the same
         | bus, and so there can only be one CPU running at one point in
         | time. However afaik in CP/M and Z80 mode there are some I/O
         | functions for the keyboard etc that halt the Z80, switch to the
         | 8502, do what they do, and then switch back.
         | 
         | I'm not sure if you can somehow programmatically switch from
         | the Z80 to the 8502 and back, though. I suspect not.
        
         | vidarh wrote:
         | You can, but not at the same time. The data and address bus is
         | shared. IO is done by the 8502 (the 6502 variant) when in Z80
         | mode, but only one CPU is executing code at the same time - the
         | other one is halted. It was a shame they didn't sort that out.
         | I don't know enough about the Z80 to know how practical sharing
         | the bus would be, the way the VIC and 6510 in the C64 does, but
         | almost "anything" would've be better than the arrangement where
         | either one is totally stopped.
         | 
         | (If you have a floppy, though, the 6502 in the disk drive would
         | still be available, and run in parallel, but the disk drive was
         | both severely memory constrained and of course limited to the
         | serial bus.
        
       | DrNosferatu wrote:
       | Looking for exactly the same for the MSX!
       | 
       | - Any pointers?
       | 
       | PS: Great post, by the way - I was also a "kid pilgrim" to the
       | computer store. ;)
        
       | nobleach wrote:
       | While I had a friend who had a 128, we never thought to boot up
       | that CP/M disk on his shelf. I had a Apple ][+ with a Z80
       | daughter card, and a Pascal compiler... so I would have been
       | interested if I had only known (I was 12 and not reading the
       | right computer magazines). Years later I have tried all of this
       | through Commodore emulation. It was fun for a bit and definitely
       | felt nostalgic.
        
       | Projectiboga wrote:
       | I had a card to run CP/M on my Franklin (apple ][+ clone] it was
       | to use WordStar I never used it. A computer store clerk in
       | December 1982 basically said, "you should wait for the C64", but
       | we just plowed ahead and got the Apple clone. It was easier in
       | college as I could write my paper, take my 5.25 over to the big
       | 24-7 study room at Rutgers, called the roost and they had a small
       | computer print lab. I got a 3.5 disc and could use an Apple 11c
       | the had with both disk types to move the doc over. Then I'd take
       | my 3.5 disk over to a Mac and typeset my paper. For 86-89 that
       | really felt modern. I just used AppleWrite or whatever knockoff
       | name Franklin called it, and a couple of times when I had a
       | longish paper I just spit it into two docs, I think the limit was
       | under 15 pages. I wish I had gotten info on how to get going with
       | CP/M there as I've heard Dos and Windows are based on it.
        
         | nradov wrote:
         | MS-DOS was inspired by CP/M to an extent, but not directly
         | based on it. The device handling, BIOS functions, and command
         | line were similar.
         | 
         | When IBM first developed the PC they needed an OS. At first
         | they tried to license CP/M from Digital Research since it
         | already existed with many applications available. But when DR
         | fumbled the business negotiations, Microsoft stepped in and
         | offered IBM favorable terms for MS-DOS. It wasn't exactly
         | compatible with CP/M, but close enough that the transition was
         | easy for users and developers.
        
           | phicoh wrote:
           | You left out the part where Microsoft offered to IBM to
           | create an operating system and then bought
           | https://en.wikipedia.org/wiki/86-DOS which was written
           | because Digital Research didn't release CP/M for the 8086
           | soon enough.
        
             | nradov wrote:
             | I left out a lot of parts to keep the comment short. Whole
             | books have been written about those events. _Accidental
             | Empires_ has one perspective on the story, although I
             | wouldn 't take it as completely accurate.
             | 
             | https://www.cringely.com/2013/02/28/accidental-empires-
             | chapt...
        
           | stevekemp wrote:
           | Some things were identical, for example .com files were
           | loaded at 0x0100 which meant that before the start of the
           | loaded program there was space for the FCB:
           | 
           | https://en.wikipedia.org/wiki/File_Control_Block
           | 
           | This block would contain the command-line arguments, and have
           | space for working with files (via FindFirst and FindNext),
           | using the same globbing patterns as CP/M supported.
           | 
           | Of course things changed when MS-DOS got support for
           | subdirectories, and later int21 functions expanded filesystem
           | support. Later still .exe files became more dominant as they
           | could be larger than 64k (minus PSP).
        
       | hnlmorg wrote:
       | CP/M was also available for the Amstrad CPC machines too. I still
       | have my disks somewhere.
        
       | nickdothutton wrote:
       | CP/M was the first serious OS I used. By serious I mean one with
       | the full set of office tools (Supercalc, WordStar, dBase) and
       | languages like BCPL, Pascal, C (BDS). I think this had a
       | significant effect on my views on what can be achieved in a small
       | system with scarce resources.
        
       ___________________________________________________________________
       (page generated 2024-03-05 23:02 UTC)