Commodore 128: Difference between revisions
Automated comprehensive page creation by RetroTechCollection bot ย |
Automated comprehensive page creation by RetroTechCollection bot |
||
| Line 3: | Line 3: | ||
{{Infobox computer | {{Infobox computer | ||
|name=Commodore 128 | |name=Commodore 128 | ||
|image= | |logo=|image=|caption=|developer=Commodore Business Machines | ||
|caption= | |manufacturer=Commodore Business Machines (CBM) | ||
| | |family=Commodore 8-bit family | ||
|type=8-bit home computer | |type=8-bit home computer | ||
| | |generation=Third generation | ||
|discontinued=1989 | |releasedate=January 1985 at the CES in Las Vegas<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref> | ||
| | |lifespan=Four-year production run<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref> | ||
| | |price=$300 ($925 in 2023 dollars)<ref>{{cite web |url=https://www.commodore.ca/commodore-products/commodore-128-the-most-versatile-8-bit-computer-ever-made/ |title=Commodore 128 โ The Most Versatile 8-Bit Computer Ever Made |publisher=Commodore.ca |date=2025 |access-date=2025-06-09}}</ref> | ||
|cpu= | |discontinued=1989<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref> | ||
|memory=128 KB RAM in two 64 KB banks | |unitssold=Approximately 2.5 million<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref> to 1.756 million<ref>{{cite web |url=https://commodore.international/2021/07/05/how-many-c64-and-c128-were-actually-sold/ |title=How many c64 (and c128) were actually sold? |publisher=Commodore International Historical Society |date=2021-07-05 |access-date=2025-06-09}}</ref> | ||
|graphics=VDC | |media=Cartridge, Cassette tape, Floppy disk | ||
|os=BASIC 7.0<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>, CP/M<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>, C64 mode | |||
|power=External power supply | |||
|cpu=8502 microprocessor<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref> @ 1.02 or 2.04 MHz<ref>{{cite web |url=https://www.c64-wiki.com/wiki/Commodore_128 |title=Commodore 128 - C64-Wiki |publisher=C64-Wiki |date=2019-10-27 |access-date=2025-06-09}}</ref>; Zilog Z80<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref> @ 4 MHz<ref>{{cite web |url=https://www.c64-wiki.com/wiki/Commodore_128 |title=Commodore 128 - C64-Wiki |publisher=C64-Wiki |date=2019-10-27 |access-date=2025-06-09}}</ref> | |||
|memory=128 KB of RAM in two 64 KB banks<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref> | |||
|graphics=VIC-IIe<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>, VDC (80-column color CGA-compatible display)<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref> | |||
|sound=SID 6581/8580 | |sound=SID 6581/8580 | ||
| | |input=Improved keyboard including a numeric keypad and function keys<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref> | ||
|predecessor=Commodore 64 | |controllers=Joystick, Mouse (1351) | ||
|successor= | |predecessor=Commodore 64<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref> | ||
|successor=Amiga series | |||
|related=C128D, C128DCR | |||
}} | }} | ||
The '''Commodore 128''', also known as the '''C128''', ''' | The '''Commodore 128''', also known as the '''C128''', '''CBM 128''', or '''C=128''', is the last 8-bit home computer that was commercially released by Commodore Business Machines (CBM)<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. Introduced in January 1985 at the CES in Las Vegas<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>, it appeared three years after its predecessor, the Commodore 64, the bestselling computer of the 1980s<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. Approximately 2.5 million C128s were sold during its four-year production run<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>, though more recent analysis suggests 1.756 million total unit sales<ref>{{cite web |url=https://commodore.international/2021/07/05/how-many-c64-and-c128-were-actually-sold/ |title=How many c64 (and c128) were actually sold? |publisher=Commodore International Historical Society |date=2021-07-05 |access-date=2025-06-09}}</ref>. | ||
The C128 is a significantly expanded successor to the C64, with nearly full compatibility. | The C128 represents the world's first mass market multi-processor computer<ref>{{cite web |url=https://www.commodore.ca/commodore-products/commodore-128-the-most-versatile-8-bit-computer-ever-made/ |title=Commodore 128 โ The Most Versatile 8-Bit Computer Ever Made |publisher=Commodore.ca |date=2025 |access-date=2025-06-09}}</ref>, featuring two processors: an MOS 6502 variant and a Z80<ref>{{cite web |url=https://www.c64-wiki.com/wiki/Commodore_128 |title=Commodore 128 - C64-Wiki |publisher=C64-Wiki |date=2019-10-27 |access-date=2025-06-09}}</ref>. The C128 is a significantly expanded successor to the C64, with nearly full compatibility<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>, offering 99% compatibility with existing C64 programs<ref>{{cite web |url=https://www.c64-wiki.com/wiki/Commodore_128 |title=Commodore 128 - C64-Wiki |publisher=C64-Wiki |date=2019-10-27 |access-date=2025-06-09}}</ref>. | ||
ย | |||
== History and Development == | == History and Development == | ||
The development of the Commodore 128 began in earnest | The development of the Commodore 128 began in earnest during the summer of 1984, when Bil Herd was appointed lead designer on the C128 project in an effort to get a new machine ready for show at CES in Las Vegas, the 2nd week of January 1985<ref>{{cite web |url=https://www.commodore.ca/commodore-products/commodore-128-the-most-versatile-8-bit-computer-ever-made/ |title=Commodore 128 โ The Most Versatile 8-Bit Computer Ever Made |publisher=Commodore.ca |date=2025 |access-date=2025-06-09}}</ref>. This gave the development team an incredibly tight deadline of approximately five months to complete the project. | ||
The primary hardware designer of the C128 was Bil Herd, who had worked on the Plus/4. Other hardware engineers were Dave Haynie and Frank Palaia, while the IC design work was done by Dave DiOrio. The main Commodore system software was developed by Fred Bowen and Terry Ryan, while the CP/M subsystem was developed by Von Ertwine. | The primary hardware designer of the C128 was Bil Herd, who had worked on the Plus/4<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. Other hardware engineers were Dave Haynie and Frank Palaia, while the IC design work was done by Dave DiOrio<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. The main Commodore system software was developed by Fred Bowen and Terry Ryan, while the CP/M subsystem was developed by Von Ertwine<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. | ||
The team | The development team, known internally as the "C128 Animals"<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>, faced significant challenges. The team had an opportunity to slam out one last 8 bit computer, providing they accepted the fact that whatever they did had to be completed in 5 monthsโฆ in time for the 1985 Consumer Electronics Show (CES) in Las Vegas<ref>{{cite web |url=https://hackaday.com/2013/12/09/guest-post-the-real-story-of-hacking-together-the-commodore-c128/ |title=Guest Post: The Real Story Of Hacking Together The Commodore C128 |publisher=Hackaday |date=2016-06-30 |access-date=2025-06-09}}</ref>. | ||
Bil Herd got the top job as 128 lead Engineer because of his vocal criticism of the new management team's lack of vision: "No one dreamed that C64 compatibility was possible so, no one thought along those lines. I had decided to make the next machine compatible with something instead of yet another incompatible CBM machine"<ref>{{cite web |url=https://www.commodore.ca/commodore-products/commodore-128-the-most-versatile-8-bit-computer-ever-made/ |title=Commodore 128 โ The Most Versatile 8-Bit Computer Ever Made |publisher=Commodore.ca |date=2025 |access-date=2025-06-09}}</ref>. | |||
Initially, the design goals of the C128 did not include 100% compatibility with the C64. Some form of compatibility was always intended after Herd was approached at the Plus/4's introduction by a woman who was disappointed that the educational software package she had written for the C64 would not run on Commodore's new computer, but when Commodore's marketing department learned of this, they independently announced total compatibility<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. | |||
== Architecture and Processor == | == Architecture and Processor == | ||
Instead of the single 6510 microprocessor of the C64, the C128 incorporates a two-CPU design. | The Commodore 128 features a revolutionary dual-processor architecture that was unprecedented in the home computer market. Instead of the single 6510 microprocessor of the C64, the C128 incorporates a two-CPU design<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. | ||
The | The primary processor is the then-new 8502 microprocessor, which is completely backward-compatible with the C64's 6510, but can run at double the speed if desired<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. The 8502 operates at about 1.02 or 2.04 MHz memory clock<ref>{{cite web |url=https://www.c64-wiki.com/wiki/Commodore_128 |title=Commodore 128 - C64-Wiki |publisher=C64-Wiki |date=2019-10-27 |access-date=2025-06-09}}</ref>, providing significantly improved performance over the C64's 1 MHz operation. | ||
The secondary processor is a Zilog Z80 CPU which allows the C128 to run CP/M, as an alternative to the usual Commodore BASIC environment<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. The Z80 runs at 4 MHz (running at an effective 2 MHz because of wait states to allow the VIC-II video chip access to the system bus)<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. | |||
Herd gave the reason for the 128's inclusion of a Z80 processor as ensuring this "100% compatibility" claim, since supporting the C64's Z80 cartridge would have meant the C128 supplying additional power to the cartridge port<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. | |||
ย | |||
The system includes a MOS Technology 8722 Memory Management Unit that controls 8502/Z80 processor selection and ROM/RAM banking<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. | |||
== Memory and Storage == | == Memory and Storage == | ||
The | The C128 features a substantial memory upgrade over its predecessor. Memory was enlarged to 128 KB of RAM in two 64 KB banks<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. From this, 38,911 or 122,365 Bytes are free for use under BASIC<ref>{{cite web |url=https://www.c64-wiki.com/wiki/Commodore_128 |title=Commodore 128 - C64-Wiki |publisher=C64-Wiki |date=2019-10-27 |access-date=2025-06-09}}</ref>. | ||
The C128's | The C128's RAM is expandable from the standard 128 KB to 256, 512 or even 1,024 KB, either by using commercial memory expansion modules, or by making one based on schematics available on the internet<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. Commodore's RAM Expansion Units use an external 8726 DMA controller to transfer data between the C128's RAM and the RAM in the expansion unit<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. | ||
The C128's complex architecture includes four differently accessed kinds of RAM (128 KB main RAM, 16โ64 KB VDC video RAM, 2 kNibbles VIC-II Color RAM, 2-KB floppy-drive RAM on C128Ds, 0, 128 or 512 KB REU RAM)<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. | |||
== Display and Graphics == | == Display and Graphics == | ||
A | The C128 features a sophisticated dual-video system that was revolutionary for its time. A separate graphics chip provided 80-column color video output in addition to the original C64 modes<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. | ||
A new chip, the VDC, provides the C128 with an 80-column color CGA-compatible display (also called RGBI for red-green-blue plus intensity)<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. The 128's 80 column display mode would produce 640ร200 which was better than the CGA mode that IBM PC's could produce even in the early 1990's!<ref>{{cite web |url=https://www.commodore.ca/commodore-products/commodore-128-the-most-versatile-8-bit-computer-ever-made/ |title=Commodore 128 โ The Most Versatile 8-Bit Computer Ever Made |publisher=Commodore.ca |date=2025 |access-date=2025-06-09}}</ref> | |||
The VIC-II or VIC-8564 for the 40 character mode has the ability for 25 (rows) ร 40 (columns) characters (singlecolor and multicolor) in text mode | The VIC-II or VIC-8564 for the 40 character mode has the ability for 25 (rows) ร 40 (columns) characters (singlecolor and multicolor) in text mode or in graphic mode (HiRes) 320ร200 pixel in 16 colors, 16 frame colors and 16 background colors or Multicolor mode (4 colors) 160ร200 pixel, as well as 8 Sprites (singlecolor or multicolor, 24ร21) displaying<ref>{{cite web |url=https://www.c64-wiki.com/wiki/Commodore_128 |title=Commodore 128 - C64-Wiki |publisher=C64-Wiki |date=2019-10-27 |access-date=2025-06-09}}</ref>. | ||
VDC | Unlike earlier MOS video chips such as the popular VIC-II, the VDC had dedicated video memory, 16 kilobytes (16,384 bytes; upgradable to 64 kilobytes, 65,536 bytes) in the original or "flat" C128 and 64 kilobytes in the C128DCR<ref>{{cite web |url=https://en.wikipedia.org/wiki/MOS_Technology_8563 |title=MOS Technology 8563 - Wikipedia |publisher=Wikipedia |date=2023-08-23 |access-date=2025-06-09}}</ref>. | ||
== Audio Capabilities == | == Audio Capabilities == | ||
The | The C128 retains the beloved SID (Sound Interface Device) chip from the C64, providing the same exceptional audio capabilities that made Commodore computers famous for their sound quality. The C128 used the same SID sound chip from the C64<ref>{{cite web |url=https://sites.google.com/site/jamesskingdom/Home/computers-exposed/commodore-128 |title=James S' Kingdom - Commodore 128 |publisher=James S' Kingdom |date=2025 |access-date=2025-06-09}}</ref>. | ||
The SID chip provides three-voice synthesis with multiple waveforms, filters, and envelope control, enabling complex musical compositions and sound effects that were unmatched by competing systems of the era. | |||
== Input/Output and Expansion == | == Input/Output and Expansion == | ||
The C128 | The C128 is housed in a redesigned case with an improved keyboard including a numeric keypad and function keys<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. The keyboard features 92 keys (QWERTY/QWERTZ), which are multiple reserved, with numeric keypad<ref>{{cite web |url=https://www.c64-wiki.com/wiki/Commodore_128 |title=Commodore 128 - C64-Wiki |publisher=C64-Wiki |date=2019-10-27 |access-date=2025-06-09}}</ref>. | ||
The C128's keyboard includes four cursor keys, Alt, Tab keys and a numeric keypad. None of these were present on the C64 which had only two cursor keys, requiring the use of the Shift key to move the cursor up or left<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. | |||
The | The system includes comprehensive I/O capabilities: Game port (Control port) 1 and 2 with 9 pin Sub-D connectors for connecting joysticks, light pen, mouse or paddles; RGBI connector (9 pin, output only) for connecting an RGB or monochrome monitor in 80 char mode; Userport (RS-232 or Centronics; 24 pin; I/O), which can be used for connecting a modem or printer interface<ref>{{cite web |url=https://www.c64-wiki.com/wiki/Commodore_128 |title=Commodore 128 - C64-Wiki |publisher=C64-Wiki |date=2019-10-27 |access-date=2025-06-09}}</ref>. | ||
== Operating System and Software == | == Operating System and Software == | ||
The C64's Commodore BASIC 2.0 was replaced with BASIC 7.0, which includes structured programming commands from the Plus/4's BASIC 3.5, as well as keywords designed specifically to take advantage of the machine's capabilities. | The C64's Commodore BASIC 2.0 was replaced with BASIC 7.0, which includes structured programming commands from the Plus/4's BASIC 3.5, as well as keywords designed specifically to take advantage of the machine's capabilities<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. A sprite editor and machine language monitor were added. The screen-editor part of the Kernal was further improved to support an insert mode and other features accessed through ESC-key combinations, as well as a rudimentary windowing feature, and was relocated to a separate ROM<ref>{{cite web |url=https://en.wikipedia.org/wiki/Commodore_128 |title=Commodore 128 - Wikipedia |publisher=Wikipedia |date=2025-06-06 |access-date=2025-06-09}}</ref>. | ||
ย | |||
ย | |||
ย | |||
ย | |||
ย | |||
ย | |||
ย | |||
ย | |||
ย | |||
ย | |||
ย | |||
ย | |||
ย | |||
ย | |||
ย | |||
ย | |||
The | The C128 operates in three distinct modes: | ||
1. **C128 Mode**: Native mode | |||
== References == | == References == | ||
Revision as of 20:21, 9 June 2025
| Specifications | |
|---|---|
| Developer | Commodore Business Machines |
| Manufacturer | Commodore Business Machines (CBM) |
| Type | 8-bit home computer |
| Discontinued | 1989[1] |
| Intro price | $300 ($925 in 2023 dollars)[2] |
| CPU | 8502 microprocessor[3] @ 1.02 or 2.04 MHz[4]; Zilog Z80[5] @ 4 MHz[6] |
| Memory | 128 KB of RAM in two 64 KB banks[7] |
| Storage | โ |
| Display | โ |
| Sound | SID 6581/8580 |
| OS / Firmware | BASIC 7.0[8], CP/M[9], C64 mode |
| Predecessor | Commodore 64[10] |
| Successor | Amiga series |
The Commodore 128, also known as the C128, CBM 128, or C=128, is the last 8-bit home computer that was commercially released by Commodore Business Machines (CBM)[11]. Introduced in January 1985 at the CES in Las Vegas[12], it appeared three years after its predecessor, the Commodore 64, the bestselling computer of the 1980s[13]. Approximately 2.5 million C128s were sold during its four-year production run[14], though more recent analysis suggests 1.756 million total unit sales[15].
The C128 represents the world's first mass market multi-processor computer[16], featuring two processors: an MOS 6502 variant and a Z80[17]. The C128 is a significantly expanded successor to the C64, with nearly full compatibility[18], offering 99% compatibility with existing C64 programs[19].
History and Development
The development of the Commodore 128 began in earnest during the summer of 1984, when Bil Herd was appointed lead designer on the C128 project in an effort to get a new machine ready for show at CES in Las Vegas, the 2nd week of January 1985[20]. This gave the development team an incredibly tight deadline of approximately five months to complete the project.
The primary hardware designer of the C128 was Bil Herd, who had worked on the Plus/4[21]. Other hardware engineers were Dave Haynie and Frank Palaia, while the IC design work was done by Dave DiOrio[22]. The main Commodore system software was developed by Fred Bowen and Terry Ryan, while the CP/M subsystem was developed by Von Ertwine[23].
The development team, known internally as the "C128 Animals"[24], faced significant challenges. The team had an opportunity to slam out one last 8 bit computer, providing they accepted the fact that whatever they did had to be completed in 5 monthsโฆ in time for the 1985 Consumer Electronics Show (CES) in Las Vegas[25].
Bil Herd got the top job as 128 lead Engineer because of his vocal criticism of the new management team's lack of vision: "No one dreamed that C64 compatibility was possible so, no one thought along those lines. I had decided to make the next machine compatible with something instead of yet another incompatible CBM machine"[26].
Initially, the design goals of the C128 did not include 100% compatibility with the C64. Some form of compatibility was always intended after Herd was approached at the Plus/4's introduction by a woman who was disappointed that the educational software package she had written for the C64 would not run on Commodore's new computer, but when Commodore's marketing department learned of this, they independently announced total compatibility[27].
Architecture and Processor
The Commodore 128 features a revolutionary dual-processor architecture that was unprecedented in the home computer market. Instead of the single 6510 microprocessor of the C64, the C128 incorporates a two-CPU design[28].
The primary processor is the then-new 8502 microprocessor, which is completely backward-compatible with the C64's 6510, but can run at double the speed if desired[29]. The 8502 operates at about 1.02 or 2.04 MHz memory clock[30], providing significantly improved performance over the C64's 1 MHz operation.
The secondary processor is a Zilog Z80 CPU which allows the C128 to run CP/M, as an alternative to the usual Commodore BASIC environment[31]. The Z80 runs at 4 MHz (running at an effective 2 MHz because of wait states to allow the VIC-II video chip access to the system bus)[32].
Herd gave the reason for the 128's inclusion of a Z80 processor as ensuring this "100% compatibility" claim, since supporting the C64's Z80 cartridge would have meant the C128 supplying additional power to the cartridge port[33].
The system includes a MOS Technology 8722 Memory Management Unit that controls 8502/Z80 processor selection and ROM/RAM banking[34].
Memory and Storage
The C128 features a substantial memory upgrade over its predecessor. Memory was enlarged to 128 KB of RAM in two 64 KB banks[35]. From this, 38,911 or 122,365 Bytes are free for use under BASIC[36].
The C128's RAM is expandable from the standard 128 KB to 256, 512 or even 1,024 KB, either by using commercial memory expansion modules, or by making one based on schematics available on the internet[37]. Commodore's RAM Expansion Units use an external 8726 DMA controller to transfer data between the C128's RAM and the RAM in the expansion unit[38].
The C128's complex architecture includes four differently accessed kinds of RAM (128 KB main RAM, 16โ64 KB VDC video RAM, 2 kNibbles VIC-II Color RAM, 2-KB floppy-drive RAM on C128Ds, 0, 128 or 512 KB REU RAM)[39].
Display and Graphics
The C128 features a sophisticated dual-video system that was revolutionary for its time. A separate graphics chip provided 80-column color video output in addition to the original C64 modes[40].
A new chip, the VDC, provides the C128 with an 80-column color CGA-compatible display (also called RGBI for red-green-blue plus intensity)[41]. The 128's 80 column display mode would produce 640ร200 which was better than the CGA mode that IBM PC's could produce even in the early 1990's![42]
The VIC-II or VIC-8564 for the 40 character mode has the ability for 25 (rows) ร 40 (columns) characters (singlecolor and multicolor) in text mode or in graphic mode (HiRes) 320ร200 pixel in 16 colors, 16 frame colors and 16 background colors or Multicolor mode (4 colors) 160ร200 pixel, as well as 8 Sprites (singlecolor or multicolor, 24ร21) displaying[43].
Unlike earlier MOS video chips such as the popular VIC-II, the VDC had dedicated video memory, 16 kilobytes (16,384 bytes; upgradable to 64 kilobytes, 65,536 bytes) in the original or "flat" C128 and 64 kilobytes in the C128DCR[44].
Audio Capabilities
The C128 retains the beloved SID (Sound Interface Device) chip from the C64, providing the same exceptional audio capabilities that made Commodore computers famous for their sound quality. The C128 used the same SID sound chip from the C64[45].
The SID chip provides three-voice synthesis with multiple waveforms, filters, and envelope control, enabling complex musical compositions and sound effects that were unmatched by competing systems of the era.
Input/Output and Expansion
The C128 is housed in a redesigned case with an improved keyboard including a numeric keypad and function keys[46]. The keyboard features 92 keys (QWERTY/QWERTZ), which are multiple reserved, with numeric keypad[47].
The C128's keyboard includes four cursor keys, Alt, Tab keys and a numeric keypad. None of these were present on the C64 which had only two cursor keys, requiring the use of the Shift key to move the cursor up or left[48].
The system includes comprehensive I/O capabilities: Game port (Control port) 1 and 2 with 9 pin Sub-D connectors for connecting joysticks, light pen, mouse or paddles; RGBI connector (9 pin, output only) for connecting an RGB or monochrome monitor in 80 char mode; Userport (RS-232 or Centronics; 24 pin; I/O), which can be used for connecting a modem or printer interface[49].
Operating System and Software
The C64's Commodore BASIC 2.0 was replaced with BASIC 7.0, which includes structured programming commands from the Plus/4's BASIC 3.5, as well as keywords designed specifically to take advantage of the machine's capabilities[50]. A sprite editor and machine language monitor were added. The screen-editor part of the Kernal was further improved to support an insert mode and other features accessed through ESC-key combinations, as well as a rudimentary windowing feature, and was relocated to a separate ROM[51].
The C128 operates in three distinct modes: 1. **C128 Mode**: Native mode
References
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 โ The Most Versatile 8-Bit Computer Ever Made, Commodore.ca, 2025โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - C64-Wiki, C64-Wiki, 2019-10-27โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - C64-Wiki, C64-Wiki, 2019-10-27โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ How many c64 (and c128) were actually sold?, Commodore International Historical Society, 2021-07-05โlink(accessed 2025-06-09)
- โ Commodore 128 โ The Most Versatile 8-Bit Computer Ever Made, Commodore.ca, 2025โlink(accessed 2025-06-09)
- โ Commodore 128 - C64-Wiki, C64-Wiki, 2019-10-27โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - C64-Wiki, C64-Wiki, 2019-10-27โlink(accessed 2025-06-09)
- โ Commodore 128 โ The Most Versatile 8-Bit Computer Ever Made, Commodore.ca, 2025โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Guest Post: The Real Story Of Hacking Together The Commodore C128, Hackaday, 2016-06-30โlink(accessed 2025-06-09)
- โ Commodore 128 โ The Most Versatile 8-Bit Computer Ever Made, Commodore.ca, 2025โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - C64-Wiki, C64-Wiki, 2019-10-27โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - C64-Wiki, C64-Wiki, 2019-10-27โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 โ The Most Versatile 8-Bit Computer Ever Made, Commodore.ca, 2025โlink(accessed 2025-06-09)
- โ Commodore 128 - C64-Wiki, C64-Wiki, 2019-10-27โlink(accessed 2025-06-09)
- โ MOS Technology 8563 - Wikipedia, Wikipedia, 2023-08-23โlink(accessed 2025-06-09)
- โ James S' Kingdom - Commodore 128, James S' Kingdom, 2025โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - C64-Wiki, C64-Wiki, 2019-10-27โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - C64-Wiki, C64-Wiki, 2019-10-27โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)
- โ Commodore 128 - Wikipedia, Wikipedia, 2025-06-06โlink(accessed 2025-06-09)