Platforms

 

Commodore 128


Made in USA by Commodore in 1985
303
games
1
unreleased

Released games per year

8385878991939597990103050709111315171921 20510150

#
Can be launched in C64 mode slowing down the 8502 to 1 MHz for compatibility.
Basic V7.0 by Microsoft. In C64 mode, certain bits of the 128 specific hardware can still be accessed, such as the sound hardware. The C64 mode could also be used with the 8502 running at 2 MHz. However, video would go blank when running that fast, so it was limited in its uses. The included BASIC was greatly improved and had access to the new sprite hardware among many other graphics commands that would otherwise require POKEs and PEEKs. There was a built in machine code monitor that could be used to enter machine code and debug software. There was also a built-in sprite editor.

The 128D model was its direct successor, the external case contained a Commodore 1571 floppy disk unit and a built-in PSU.

The major advantages of the C128 is hardware that it did not ship with (note to follow about the 128D). The 1571 drive for double-sided 5.25" disks & 1581 drive for double-sided 3.5" disks. They read more than 11 times faster than C64 disk drives. More importantly, they read disks from many other computer systems, Kaypro, Kaypro II, Kaypro III, Kaypro IV, Osborne, MS-DOS, TRS-80, and others. This made it easy to run most CP/M software written for Z80 CPUs. But it made it possible to transfer any files from these other systems, not just CP/M files. These disk drives were intended as C128 peripherals, but they are completely backwards compatible to the Vic-20 and anything between. 3.5"disks for any Commodore (except PET). This means, one can transfer files from say, a TRS-80, to a C64, then to MS-DOS.

The C128D shipped with a built-in 1571 disk drive. It also came with 64k VRAM for the 80-column chip (hardware hack included). The C128D, 1571, and 1581 were not an afterthoughts, they were always intended.


Trivia:
Although never used (or thought of) when first sold, the C128 is capable of practical multitasking by using multiple CPU stack and zero page locations. And, parallel processing*; but, not in the way you might be thinking.

Bil Herd, main designer of the C128, was having difficulty getting the Z80 to interface with the new 80 column chip. A salesman talked him into using his company's 80-column chip, that was being designed for the Z8000 CPU. Herd asked, "Is this a super-set of the 6845?" (In simple terms, if the C128 sent 6845 data to the 80-column chip, would it respond exactly like a 6845?). The salesmen answered, "Yes". years later Herd lamented, "I should have asked, 'Do you know what that question means?'" The 80-column chip has no interrupt function like the 6845 does. Basically, the 6845 does the job it has been given then interrupts the CPU to say "I'm done". The VCD does the job it has been given and tells itself, "I'm done" (Which is of no help to _any_ external hardware waiting to send the next job. See IRQ explantion here). "You can simply look at a register", he was told far to late in the C128's design. So thereafter, when a person from that company came to Commodore, Herd arranged for employees to constantly pickup their phones forcing the question to be asked why. "We always could just check the phone to see if there's an inbound call". The chip's design had not even been finalized and would not be until 2 weeks before the C128 made its public debut. Herd had planned to use color graphics in bitmap mode though the 80-column chip, But lack of an interrupt function meant this was not possible. The wonderful sprite capability of the C128 is also unavailable to the 80-column chip. 16-color graphics mush be done in 80x25 text mode (160x50 using hackery). Graphics mode is 640x200, but 1-bit color. Given the 80-column chip is so troublesome, there is no good reason to use it for color games. A simple 64k VRAM upgrade does allow for an overlay grid of 60x100 'color cells' to use 16 colors in 640x200 graphics mode. This is a hack for the C128, but not as unofficial as one might think because the 128D shipped with 64k VRAM (the C128 hack was equivalent to the C128D). Another way to explain this is swapping the 1-bit palette to two other colors than black and white every 8 pixels of a scanline (and the 8 pixels below those in the next scanline). C128 gamers could pay for a hardware upgrade and wait for developers to use the troublesome spriteless graphics mode on an unpopular business oriented machine (it never was gonna happen). So, C128 color gaming graphics is all about running double speed in C64 mode or using C64 graphics and C128 sprites in C128 mode.

A C128 be seen in the Sci-Fi film, Crash and Burn (Robot Jox 2), where it is used as a terminal to operate a mech. This would be entirely an realistic use if the computer were plugged into anything (a network, a monitor, a source of power) and if there were mechs.

*The z80 and 8502 CPUs in the C128 use a tri-state bus system. Darned impressive since one of the famous major non-features of the 6502 (8502 is a 6502 variant) was the removal of tri-state bus compatibility (read "Get off the bus" section). While a tri-state bus allows for multiple CPUs to be used in a computer system, it quite specifically does this by running only one CPU at a time. The 80-column-z80 (CP/M) mode of the C128 is only mode that uses the tri-state bus. The user software and runs on the z80 while the 8502 handles the system hardware (keyboard, disk drives, etc). The bus constantly switches between the two CPUs; not parallel. The parallel part comes from 1541, 1571, 1581, and 8050 disk drives that each have their own RAM and contain their own 6502 CPUs. All these CPUs can be run in parallel while the C128 is running on it's own CPUs. The 1581 has 8K, The 8050 has 4K, the others have 2K. A total of 4 drives at once can be used on the C128. However, third party adapters intended for running BBSes or mass-copying of disks can be used to connect more than 4 drives for extended parallel processing.
#

tech info

resolution: 320 x 200 x 16 colors
memory: 128K RAM, 32K ROM
CPU: 8510, Z80
GFX: VIC II
sound: 6581 SID, 3 voices, 6 octaves

All Commodore systems

Commodore PET1977
VIC-201981
Commodore 641982
Commodore 16/Plus 41984
Amiga OCS1985
Commodore 1281985
Amiga AGA1992
Amiga CD321993