Commodore 64/128 Technical Details and Trivia
- a cartridge/expansion port that allows full 6510 bus access - 44-pin edge connector
- two control ports, typically for joysticks and paddles, but also fully compatible with Atari peripherals - 9-pin DE9M plug.
- a composite video and audio output socket - 8-pin round DIN. Earlier C64s used a 5-pin DIN
- a UHF TV output socket - standard RCA connector (PAL versions = UHF frequency 591 MHz/Ch 36, NTSC versions = VHF 174-230 MHz/Ch 3 or 4)
- a cassette interface running at 300 baud. Compatible with earlier PET "Datasette" units - 12-pin edge connector
- a "user port" for TTL-level RS232 signals. Can be used for modems, parallel printers and more - 24-pin edge connector
- a serial bus for CBM disk drives and parallel printers. Serial version of IEEE-488 - 6-pin DIN
- a power supply socket - requires 5V DC and 9V AC from external PSU - 7-pin female DIN.
Hover your mouse over the ports for a description
- the C64 'Version A' board (Assy no. 250407 - see immediate picture below) was the first to come with the 8-pin DIN video socket. All board versions prior to this had the 5-pin socket. The 8-pin socket provided seperate Y/V channels on top of the composite video and audio pins.
- the VIC-II (Video Interface Controller) chip was an enhanced version of the VIC-20's VIC chip - it's main improvement being the capability to create hardware sprites (256 of them, 8 per line up to a maximum of 21x24 pixels each), which were also called Movable Image Blocks (MIBs), MOBs (movable object blocks) or Movable Display Objects. Another improvement was 40-column text over the VIC chip's maximum 22 columns. It can address up to 16K of video RAM. With some tricks such as combining two multi-color modes with interlace, or forcing bad scan line at each raster line, it is possible to use up to 16 colours per attribute cell, or to increase the palette to 128 colours. However, since these modes all have major drawbacks (such as interlace flicker, extensive CPU- and VIC-cycle usage), they're mostly used for demos.
- the VIC-II came in a PAL-B version (MOS 6569R3), an NTSC-M version (MOS 6567), a PAL-N version (MOS 6572), and a PAL-M version (MOS 6573)
- the SID (Sound Interface Device) chip features three independent voice channels, four waveforms, and an envelope generator. The ill-fated C65/64DX prototypes even had two SID chips (for stereo output).
- For a Commodore cartridge to auto-start, 5 bytes must appear at a specific memory location: "CBM80" at $8004. The letters must have bit 7 set, so the actual PETSCII codes are 195,194,205,056, and 048 in decimal.
- The Commodore 128 came with two banks of 64K, of which a far greater proportion was available from BASIC. It implemented bank switching via the new MMU (memory manangement unit) chip.
- The 128 got an improved power supply over the C64's unreliable design. It was much larger and contianed cooling vents and a replaceable fuse.
- The Commodore 128 got a second graphics chip, called the VDC. This was a MOS 8563 (8568 in the 128D Cost-reduced model), and was used to provide the 80-column digital RGBi component video, compatible with IBM CGA monitors. Mono output is also possible on composite video output monitors, and it can also work in colour with standard televisions if they have a SCART socket.
- The C128D CR (Cost-reduced) had, among other things, the following differences over the C128 and C128D: Metal chassis in place of plastic, a modular switched-mode PSU, removable keyboard, and internal 1571 floppy drive. On the motherboard, Commodore consolidated some of the components to save production costs, and replaced the 8563 VDC with the better 8568 which got 64K dedicated video RAM, whereas the older 8563 only got 16K. It also got the MOS 8580 SID replacing the 6581 SID. The cooling fan was removed as well.
- The C64's companion floppy disk drive, the CBM 1541 (aka VIC-1541) was actually slower than its predecessor, the VIC-1540, used for the VIC-20. This was due to a timing conflict between the 1540 and the C64's VIC-II video chip, thus making the 1540 incompatible with the C64. The solution was the 1541, in which the drive was slowed down slightly.
Hover your mouse over the circuit board for a description of the components
Note: the above board is an early version (ASSY 250407, aka Version 'A') board - preceding versions include 326106 and 326298-01.
Component details reproduced with friendly permission from Sothius' Home, www.sothius.com (shame you closed your site, Sothius, it was great! Ed)
Hover your mouse over the circuit board for a description of the components
Note: the above board is a late version (ASSY 250469) board.
Component details reproduced with friendly permission from Sothius' Home, www.sothius.com
- The C64 was called the VIC-30 during development. There were prototypes made of a VIC-40, which was a 40-column-capable VIC-20, but this new 'VIC-1' as it was going to be marketed, was never released because of the launch of the VIC-30 (C64) shortly after its development. There was also a VIC-10, which was a cut-down VIC-30 (later renamed the MAX) and only sold in Japan.
- 33% of C64's manufactured around launch time were found to be defective.
- the C64 eventually supported hard disks of up to 30 Mb !
- the C64's RAM could be expanded to a massive 576K (bank-switched) with the use of the CBM 1750 RAM expansion.
- the C64 was the first Commodore machine to include support for hardware sprites in order to make movement/scrolling of graphics more smooth. The VIC II chip is capable of handling 256 sprites simultaneously, 8 per line.
- the CBM 1551 floppy disk drive (available for the C16 and Plus/4 computers) was never made available to the C64. It is unknown whether Commodore planned to make a cartridge port adapter that allowed the faster parallel disk I/O features of this drive on the C64. These plans were cancelled because of the CBM 1570/1571 with it's serial burst-mode, in connection with the C128, making parallel transfer obsolete.
- Some early versions of the Commodore 64 were housed in off-white cases, the same as the VIC-20.
- The Commodore 128 was not the first Commodore computer to make use of two general purpose microprocessors (the 8502 and Z80). The Commodore SuperPET had two also - a MOS 6502 and a MOS 6809, and there was also an optional expansion card to add another processor to the B-series (MOS 6509 and Intel 8088).
- The C64 and C128 computers feature a "TOD" (Time Of Day). This clock is provided by the 6526 Complex Interface Adapter (CIA) chip, and can be used to time things without fear of interruption by servicing the screen and I/O devices.
- The C64 kernel version number is stored at memory location $FF80 (65408).
- When Commodore acquired MOS Technologies, the original designers and manufacturers of the 6502 microprocessor, they renamed it to CSG (Commodore Semiconductor Group) over the course of months and even years after the acquisition.
- Commodore produced a 64 in a PET case! It was called the Educator 64 (model number CBM 4064) or PET64. Initially they tried to sell the Educator 64 in the standard C64 case, but administrators and teachers disliked the "homey" look. Thus, it was squeezed into a PET case and it sold better.
- The C128 user manual left three commands undocumented (depending upon the version of user manual you have). They all produce an "unimplemented command" error. These were "OFF" (which is valid when used with the KEY command, e.g. KEY OFF), "QUIT", and "RREG" (which reads the internal registers after a SYS command).
- The C128 boots up using the Zilog Z80 CPU, which is used to show the operating mode menu.
- The SID chip which is known for generating great synthesized audio on the C64 contains timers that are also used to read the joystick ports' "Paddle input" pins, so if your SID chip is acting up it can also impact your joystick!
- Why do so many games need the joystick to be plugged into Port B rather than Port A? This is due to a hardware-sharing anomaly. The C64's CIA (Complex Interface Adapter) chip was also used for handling the keyboard and other housekeeping tasks, including the reading and decoding of Port A's signals, whilst the PIA (Peripheral Interface Adapter) chip is used to read and decode Port B's signals. This dual-use on Port A led to some problems. For instance, the left direction switch of Port A was wired to the same input as the CTRL key on the keyboard, and when it was used it would cause scrolling in BASIC programs to slow down. Due to the way keyboard scanning was handled, holding down the trigger would cause random characters to be generated. As a result, many C64 games required the joystick to be plugged into Port B which was handled by the PIA, which was generally unused during games.
- ESCOM, who are known to have bought the rights to Commodore and Amiga and rebadged and sold the A4000, A1200 and A600 for a few more years after the demise of Commodore, also continued to build Commodore 64Cs and sold them in Eastern Europe during this time.