Commodore 128
Hardware
Here are the C128 components (in square brackets the IC type which is on the newer motherboards):
- MOS 8502 CPU, running at 1 or 2MHz
- Z80 CPU
- 128KB RAM system, controlled by the MOS 8722 MMU (Memory Management Unit)
- MOS 8564 (NTSC) / MOS 8566 (PAL) Video Interface Controller, VIC-IIe
- MOS 8563 Video Display Controller, VDC - for the 80 columns screen
- MOS 6581 [8580] sound interface device, SID
- Two MOS 6526 complex interface adapters, CIA
The CPU and VIC-IIe are fully compatible to the C64 CPU and VIC. Additional, the C128 has the same SID and CIA ICs. The VDC is a very special IC, it took the development team the most headaches. Read why on the C128 story page.
This is the motherboard of my C128.
And here are the I/O-ports, from left to right as seen on the picture:
- Game ports - there are two game ports, were you can connect joystick, mouse, light pen and paddles.
- Reset button
- Power switch
- Power connector
- Expansion port - here you can insert game-modules and other expansions
- Cassette - you can connect a cassette drive for storing data
- Serial - the serial bus of the C128. For diskette drives and printers.
- Video/Audio - here you can connect the C128 to a video monitor and/or to a Hi-Fi-System
- here would be the TV channel selector, but it is not available on the European version
- Antenna output for connecting the C128 to the TV
- RGBI connector - here you connect the RGB display, for the 80 columns display
- User port - a free programmable I/O-port for other peripherals, RS-232-port
You see, compared with a current PC, the C128 has fantastic features: Dual CPU, dual graphics adapter and three integrated operating systems: C64 mode, C128 mode and CP/M mode, using the Z80 CPU. The VDC features 80x25 characters, 640x200 graphic resolution, while each 8x8 field can have a separate foreground color out of 16, and the whole screen can have a background color out of 16. This is better than the PC's CGA standard. Did you know that you could connect a PC CGA display to the RGBI port? (Works only with the NTSC-C128 because CGA runs with 60Hz). With machine language it's also possible to display graphics on the VDC, but not with BASIC. Of course you can display graphics on the normal Video port, exactly like the C64.
Additional to the C64 the C128 has a numerical keypad, and the keyboard layout can be switched between US ASCII and country-specific mode. In C128 mode you can program using BASIC 7.0, a much improved BASIC compared to the C64 BASIC V2. There are separate cursor keys, function keys which are assigned with common commands, a scroll lock key, ESC, ALT and CONTROL keys and a HELP key, which will display the faulty BASIC line when an error occurs.
But let's see now the C128 startup screen. It's displayed on the TV and Video output when the 40/80 DISPLAY key is not locked.
And now the 80 columns startup screen. It's displayed on the RGBI output when the 40/80 DISPLAY key is locked. The picture is shown in the same scale as the normal startup screen. To view a better quality picture click on it.
You see, this mode looks more professional. It is used by word processing and other software, also GEOS 128 uses this mode for higher resolution. Only one screen can be active, the other screen will be freezed. But you can switch around by pressing ESC X keys (not with 40/80 DISPLAY key, this one only defines which screen will be active on startup, RESET or RUN/STOP - RESTORE).
The BASIC 7.0 has BIG innovations compared to the BASIC V2 of the C64. Now everything we missed on the C64 is included. You can easily program hires graphics, sprites and sound without one POKE command. There is even a built-in SPRITE editor. There are powerful disk drive commands and you can easily renumber your BASIC program. You can program IF-THEN-ELSE and DO-LOOP with WHILE or UNTIL. For debugging you can TRACE the running program.