After three articles about the different incarnations of the Commodore 64, it’s now time to talk about Commodore’s flagship 8-bit-computer, the amazing Commodore 128. Some may notice that I have completely skipped the C16/116/Plus4 series, but since I only want to write about the computers I own myself and those have never found a way into my collection, I’ll just suggest the respective Wikipedia articles instead. There are three different C128 models: the standard C128 you see in the top right image, the C128D with its integrated 1571 floppy and detached keyboard and the C128DCR, which is basically the same, but with a part metal case and some inner modifications. But this first of two articles is mainly about the original C128, which was introduced in January 1985 at the Consumer Electronics Show in Las Vegas, three years after the debut of the C64 and a breakneck development time of only five months.
The Commodore 128 was especially remarkable because it was actually three computers in one: it’s a fully-compatible Commodore 64, a Commodore 128 with the improved Basic V7 and a 40 and 80 column display with enhanced graphic capability, and a CP/M compatible machine with a separate Z80 processor. Despite having been literally hacked together until the last minute to make the deadline for the CES, it was an amazing computer and could have been a complete successor to the C64 if the 8-bit-era would have continued a little bit longer. With its CP/M compatibility and a more professional look it was clearly geared towards the business market and software developers, so it was not as successful as the C64 – but Commodore was still able to sell between five and six million of them. But despite a huge software market, CP/M was rapidly being succeeded by MS-DOS in 1985 and with the coming of the 16-bit home computers Commodore’s own Amiga and its competitor, the Atari ST and even the only recently introduced Apple Macintosh, the C128 was really the last shining example of the 8-bit era.
I was fortunate to have acquired a second-hand C128D in the mid-1990s primarily as a replacement for my broken 1541-II drive, but it was really the Commodore computer I had always dreamed of when I had the C64. The BASIC was extremely powerful (no more poking and peeking!), the CP/M side was able read all our old discs and run the programs from the Kaypro 2x we earlier had – and of course the keyboard was much better than on the C64. In 2003 I was able to find another C128D together with the “flat” C128 you see in the above photo from Ebay for a very low price. Because I already had two C128D and three C64, I decided to give the C128 to a good friend who never had a Commodore computer, so I don’t have this particular one anymore – but before I sent it off, I took lots of photos, some of which I’ve used here in this article. The C128 you see in these photos is actually a German version with additional umlaut characters printed in light gray on the keys for a second character set which you could switch into with the repurposed CAPSLOCK key, sporting the additional inscription ASCII/DIN.
The inner hardware of the C128 and C128D was basically identical save for the integrated floppy drive – not counting the later metal-case version of the C128D, which had a newer mainboard. The two CPUs were the 8502, an improved version of the C64’s 6510 able to run at 2 MHz, and the Zilog Z80 to make the computer CP/M compatible. Most of the other chips including the SID were repurposed from the C64. There were 128 kilobytes of RAM, almost all of which was available under the powerful new BASIC 7.0. The C128 also had two separate graphics chips: the basically unmodified VIC-II from the C64 and the new VDC (Video Display Controller) which was not only able to output a 80×25 text screen, but also resolutions of up to 640×200 pixels (and unofficially even 640×400 interlaced and others). The C128 had two separate video outputs, because the 80-column screen had to be output in RGB instead of the simpler composite or component signal. Some Commodore monitors like the 1084 were able to connect both at the same time, providing a switch to change inputs. But it was also possible to connect two separate monitors and some software was even able to use them simultaneously – something which no other computer at that time could do. [Note: I borrowed the photo of the mainboard from Wikipedia here under the CC-By-2.5-Attribution license. This was taken by Bill Bertram, all other photos in this article were taken by myself.]
The C128 was also the first of Commodore’s 8-bit machines which sported the ambitious inscription Personal Computer. It was also used for the newly-designed C64-II, whose case was modeled after the C128, but it makes even more sense on the 128-kilobyte machine and was entirely justified. What made the C128 truly a real PC is the vastly improved keyboard, which now had a number pad and many other keys like escape, tab, alt and four seperate cursor keys. For the sake of compatibility, these keys had to be spread around the original C64 keyboard, but nevertheless the keyboard was what made the C128 a really grown-up computer.
Despite the powerful new possibilities, the C128 never fully caught on with the software and game industry. Some programs including the powerful GEOS operating system were ported and improved for the C128 mode, but largely the C128 was ignored in favour of the C64. There was also not much CP/M software specially made for the C128 and what software was available soon became obsolete with the rising of the IBM-PC. Another problem was that the Z80 of the C128 ran only with 2 MHz instead of the maximum possible 4 and most software was only working much slower on it than on dedicated CP/M computers. What the C128 really was for most people was an improved and modernized C64 with some additional goodies, namely the better BASIC and CP/M. Luckily Commodore did not make the same mistake as with the C16/C116/Plus/4 line and give up C64 compatibility – this may have saved the C128 from a quick demise.
When a C128 is switched on, the first thing the computer does is check if a disc is inserted into drive 8 and tries to boot from it. This can start a C128 program, but this feature, which can also be invoked by typing in the BOOT command under BASIC 7.0, is mainly used to boot into the CP/M system. If there is no drive connected or no disk in the drive, the computer will go straight into BASIC 7.0 and display the well-known READY. message like almost all Commodore 8-bit machines. The screen is, however, not tinted in the usual blue tones like the C64, but has an equally pleasant green scheme instead. If you switch to the 80 column screen with the dedicated 40/80 key, you get bright blue letters on a black background instead. Surprisingly, there is no mention of the C128 in the welcome message – it says only COMMODORE BASIC V7.0 122356 BYTES FREE followed by not one, but two copyright messages from Commodore and Microsoft, from whom the programming language was originally licensed in 1977. The first copyright message is actually dated 1986 because at some point the ROM was slightly modified – the C128 and my two C128Ds both display 1986 and I’ve never seen one with a 1985 message.
If you want to have your C64 back on your C128, you can either type in GO64 under BASIC 7.0 or just hold down the Commodore key when you switch on the computer or do a reset. There is a ARE YOU SURE? question after the BASIC command because it deletes everything in the RAM – but then you have your nice, blue COMMODORE 64 BASIC V2 screen exactly like on the original C64. The compatibility is extremely high and very close to one hundred percent. Just about all C64 software also works on the C128 in C64 mode, only in very rare circumstances minor problems can occur. Especially games work perfectly and even hardware programming like fastloaders and other tricks are on the whole unproblematic. The C128 does not emulate a C64, it is a C64 with all the chips, ports and software of the original. If you have a C128, you also have a C64, it’s as simple as that.
While you can start the C128 and C64 modes without additional help, you need a disk drive and a system floppy disk to use the Z80 side of the computer. All C128 models were sold with a set of CP/M boot and utility disks to run the third operating system of the computer. The CP/M supplied by Commodore is a variant called CP/M Plus in the version 3.0, but there are many different versions floating around even today. I’m not sure if it is possible to boot other CP/M systems on the C128 – I tried it with a boot disk from the Kaypro 2X and it didn’t work, so specially adapted versions of CP/M are needed. What you can do is run almost all CP/M-80 software (compiled for the Z80 processor) on the C128 in both 40 and 80 column mode, but only the latter makes sense with the majority of the software unless you always want to scroll the screen with the cursor keys. The Wordstar, Supercalc and Dbase versions I still had from the Kaypro certainly worked fine, although the software is noticeably slower because the Z80 CPU of the C128 only runs with an effective 2 instead of the usual 4 MHz.
Together with the C128, a new disk drive was also introduced to take advantage of the new burst mode on the serial port. The 1571 was to be the successor of the C64’s 1541 and had two read/write heads capable of accessing both sides of a floppy disk at the same time, so there was no need for flipping disks anymore. The new drive was also needed to read and write the MFM format of the CP/M world, which the 1541 was incapable of . You were still able to connect a 1541 to a C128, but it ran only at its original speed and was not able to function well with CP/M. There was also the short-lived 1570 with only a single read/write head, which was produced because Commodore was not able to buy enough double-sided drive electronics to meet the high demand. The 1570 was simply put into a cream-coloured case similar to that of the original 1541, while the 1571 was completely redesigned to match the new C128 case. Both drives still had no external power unit, this was only coming later with the new 1541-II introduced in 1988. There was also supposed to be a 1572 double-disk drive, but this was probably abandoned because Commodore had something better in store: in 1987 the 1581, a 3,5″ drive for the C128 and C64, was released. It had a capacity of 800 kilobytes, which was huge compared to the 340kb of the 1571, making it the fastest and most useful of all Commodore drives ever produced.
The C128 was sold with an extensive manual over 350 pages long. It contained a complete reference of BASIC 7.0 and the C64’s BASIC 2.0 including some, but not all parts of the original C64 manual. A separate manual for CP/M with a thorough introduction to the system was also provided. Like the manuals of the previous Commodore computers, these are surprisingly well-written, but the C128 BASIC 7.0 section is only a reference and does not provide any programming examples. This was probably because Commodore saw the C128 not as a learning computer, but as a professional business machine.
Despite some limitations and its reputation of being a cobbled-together frankenputer, the C128 was the crowning achievement of Commodore’s 8-bit range and proved to be the ideal companion for the C64 until 1989 when its production was finally discontinued. It was heavily marketed as a professional office computer, one particular advertisement even compared it to its competitors from Apple and IBM.
But even at the beginning of the 1990s, when the Amiga had already completely taken over from the C64 and C128, both computers were still sold in many shops particularly in Europe, although by then the original C128 had been discontinued in favour of the C128D. Today you can still get a C128 for a reasonable price on Ebay, although it has become much rarer now than the C64.
If you want to find out more about the C128’s creation, have a look around the website C128.com, which is run by the computer’s lead developer Bil Herd. He also recently wrote a fascinating guest post for Hackday.com and a compilation of his postings on a usenet group from the early 1990s can be read on Fab’s Commodore Page.
The coming second part of the C128 article will be about the C128D and C128DCR and a little more personal because I want to write about how I came to get both of these machines.