Commodore 64 Troubleshooting Guide
This guide provides detailed, component-level troubleshooting for the Commodore 64 home computer. It covers all major motherboard revisions (ASSY 250407, 250425, 250466, 250469, etc.) and notes differences between PAL and NTSC models where relevant. Common failure symptoms, diagnostic procedures and fixes are outlined for:
- Power-supply faults
- “Black-screen” (no-boot) scenarios
- Memory (RAM) issues
- Video (VIC-II) faults
- Audio (SID) faults
- PLA logic-array faults
- 6510 CPU faults
- Keyboard/joystick problems (often CIA related)
- Character ROM faults
Diagnostic techniques (chip substitution, piggy-backing, logic probing, thermal checks), voltage test points (+5 V, +12 V, +9 VAC) and critical signals (RESET, clock, chip-enable lines) are all explained.
Note: Disk drives (1541, 1571, etc.) and the Datasette are not covered here.
Diagnostic Tools & Techniques
editVisual Inspection
edit- Remove the lid; examine for burnt/cracked parts, corrosion, loose wires or cold solder joints – especially around the power jack and both joystick ports.
- Re-flow or re-solder any suspect joints to cure intermittent power or I/O issues.
Thermal Checks
edit- Gently touch (or IR-probe) chips after ~60 s of power-on.
- A too-hot-to-touch PLA or SID often indicates an internal short.
- Use freeze-spray/compressed air: if behaviour changes while cooling/heating, that IC is likely faulty.
Power & Signal Probing
edit- +5 V DC at multiple IC Vcc pins (e.g. 6510).
- 9 VAC between PSU DIN pins (and user-port pins 10 ↔ 11).
- +12 V DC (older boards) / ≈9 V DC (250469) at SID & VIC-II analogue Vdd.
- RESET: low for ≈½ s at power-on, then high (5 V).
- System clock: logic-level 1 MHz at 6510 φ2 pin.
- PLA chip-enable lines, CAS / RAS pulses to RAM, etc.
Chip Substitution
editSwap socketed chips one at a time with known-good parts:
- PLA (U17) – highest failure rate on bread-bin boards.
- VIC-II, SID, 6510, CIAs.
- Observe orientation (notch/pin 1) and always power-off before removal/insertion.
Piggy-back Testing
edit- Press a good logic or DRAM IC on top of each suspect chip (pins aligned).
- If symptoms change or machine boots, the underlying IC is bad.
- Warning : won’t help if the bad IC is shorted; never piggy-back MOS customs.
Minimal-Configuration Boot
editYou can power-up without the following chips:
- SID (U18) – no sound, otherwise normal BASIC screen.
- CIA U1 / U2 – boots but no blinking cursor (keyboard/IEC inactive).
- CD4066 switches (U16/U28) – paddles disabled, possible subtle colour shift.
Remove one at a time; if C64 suddenly boots, the removed IC was dragging the bus down.
Cartridge Diagnostics
edit- Any autostart game (e.g. *Jupiter Lander*) bypasses BASIC/KERNAL; if it runs, suspect those ROMs.
- Dead-Test Cartridge:
* Runs with all ROMs, SID and both CIAs removed – ideal for core-logic/RAM checks. * Coloured-border flash count = faulty RAM bit/chip. * If nothing at all after stripping to bare minimum ⇒ PLA, CPU, VIC-II or clock logic.
Power-Supply & Voltage Checks
editAlways verify PSU before blaming main-board silicon.
| Test Point | Expected Voltage | Purpose / Notes |
|---|---|---|
| Expansion Port pin 2 (+5 V) ↔ pin 1 (GND) | +5 V DC (±5 %) | Main logic rail |
| User Port pins 10 & 11 | ≈9 V AC (rms) | Drives SID/VIC analogue rails & 50/60 Hz TOD clock |
| SID Vdd (p 28 6581 / p 25 or 28 8580) | 12 V (*6581*) or 9 V (*8580*) | Analogue supply |
| VIC-II Vdd (p 13 6567/9) | 12 V (old) / 5 V (new HMOS) | Video-core supply |
| RESET (Expansion Port pin C) | Low → High | Must release to 5 V after power-up |
Common PSU Faults
edit- 5 V missing/high → no boot or chip death (>6 V destroys RAM/PLA quickly).
- 9 VAC missing → black screen, no colour/sound; check brick fuse & board fuse.
- Intermittent drop-outs via dirty power switch or cracked power-jack solder.
- Hum-bars / buzzing audio = dried-out PSU capacitors.
Never run a C64 on an unstable brick; modern replacements or crowbar protectors are highly recommended (≥1.5 A @ 5 V, ≥1 A @ 9 VAC).
“Black Screen” (No Boot) Flowchart
edit- Check PSU rails, RESET, and system clock first.
- Swap/feel VIC-II (dead clock = blank display).
- Replace/logic-probe PLA (statistically #1 cause).
- Swap CPU (6510) only after PLA & VIC-II ruled out.
- Test/replace KERNAL, BASIC, CHAR ROMs (cartridge shortcut).
- Diagnose RAM (Dead-Test flashes, hot chips, address-mux 74LS257 failures).
- Inspect secondary glue (74LS629 VCO, 4044 latch, 74LS373 bank-latch, 7406 IEC buffer).
- Remove SID/CIAs/4066 again if stuck.
RAM Failures
edit- Eight 4164 DRAMs (earlier boards) → each = one data bit.
- Two 41464 DRAMs (250466/250469) → 4-bit wide.
Symptoms
edit- Black screen (lower 16 KB failure).
- Wrong “BASIC bytes free”, garbage characters, freezes.
- Dead-Test coloured flashes pinpoint bit#.
- One DRAM hotter than neighbours.
Diagnosis / Fix
edit- Swap suspected chip, or socket & replace.
- If Dead-Test still flags after RAM swap, replace both 74LS257 multiplexers.
- Colour-RAM (2114) only affects on-screen colours, never causes black screen.
VIC-II (Video) Faults
edit| Model | Pal IC | NTSC IC | Supply(s) |
|---|---|---|---|
| Bread-bin | 6569 | 6567 | 5 V and 12 V |
| Short-board (250469) | 8565 | 8562 | 5 V only |
Typical video faults & causes
edit- Blank (no border) → VIC dead / no clock / no 12 V.
- Solid white/grey → VIC alive but no bus access.
- Rolling / distorted → wrong VIC for crystal, bad 8701 or 74LS629 chain.
- B&W only → bad modulator chroma, monitor PAL/NTSC mismatch.
- Jail-bars → design-limit, mitigated by decoupling-mods (not a “fault”).
Swap with same-type VIC to confirm. Never mix 12 V and 5 V variants without conversion.
SID (Audio) Faults
edit- 6581 (+12 V)—heat-prone; 8580 (+9 V)—cool HMOS. Not interchangeable w/o mods.
Symptoms
edit- Total silence → SID dead / missing analogue rail.
- One voice/noise/distortion → partial SID failure.
- C64 hangs only when SID installed → shorted SID on data-bus.
- POTX/POTY jitter → SID ADC or 4066 switches.
Repair
editNo internal fix – replace with same IC or modern clone (ARM-SID, Swinsid, FPGASID, etc.).
PLA (U17) Logic Chip
edit- Ceramic 906114-01 in bread-bins = hottest, most failure-prone IC in C64.
- SuperPLA (CSG 251715/252535) on 250469 seldom fails.
Failure Signs
edit- Black screen (no border) most common.
- Random coloured garbage, crashes after warm-up.
- Selective cartridge incompatibility.
Replace with modern cool-running GAL/FPGA-based drop-ins (PLAnkton, SuperPLA v3, RealPLA, etc.).
6510 CPU Faults
editRare, but possible (over-voltage, ESD). After PLA/VIC ruled out:
- Address lines static despite proper clock ⇒ dead CPU.
- Dead-Test cart shows nothing even with good PLA/VIC ⇒ suspect CPU.
- Replace with 6510 or 8500 (HMOS) matching clock.
Keyboard / CIA Issues
edit- CIA-1 (U1) scans keyboard & joysticks, controls tape motor.
- CIA-2 (U2) handles IEC/user-port & RESTORE NMI.
Symptoms
edit- No cursor blink / no keys → CIA-1 dead.
- Some rows/columns dead → CIA port bit, keyboard ribbon, or trace open.
- No RESTORE → CIA-2 or 556 timer.
- Joystick Port 2 shares CIA-1 port-A; Port 1 shares port-B. Same diagnostics apply.
Swap CIAs (identical), socket & replace as required.
Joystick Port Faults
edit- Trace breaks at DB-9, burnt SIP resistor networks or CIA-1 bit failure.
- Ground pin 8 often fractures causing *both* ports to mis-read.
- Paddle lines (POT X/Y) pass through 4066; a bad switch = no analogue read.
Continuity-test each DB-9 pin back to CIA; repair connector or replace CIA-1.
Character ROM & Other ROMs
edit| ROM | IC/Location | Boot symptom when bad |
|---|---|---|
| KERNAL (8 KB) | U4 | Black screen, no border |
| BASIC (8 KB) | U3 | Blank screen with border |
| CHAR (4 KB) | U5 | Legible layout but garbage glyphs |
| KERNAL + BASIC (16 KB) | U3 (250469) | Black screen, no border |
Swap with known-good mask ROMs or EPROM-adaptors (27C64/27C128, etc.). Cartridges that use their own code/font will boot fine even with bad on-board ROMs.
Final Notes
edit- Start with power checks.
- Use Dead-Test whenever possible – fastest path to RAM/CIA diagnosis.
- Statistically:
# PLA # RAM / 74LS257 muxes # CIA or SID # VIC-II or (rarely) 6510
- Always fit sockets on replacement parts and monitor brick PSU health.
Component reference and test points (deep dive)
editChip map
editThe main custom and memory ICs (Commodore service manual, boards 250407/250425/250469):
| Ref | Device | Function |
|---|---|---|
| U1, U2 | 6526 CIA | Keyboard/joystick/paddle + IRQ + serial (U1); user port + serial + NMI (U2) |
| U3 | 2364 (901226) | BASIC ROM |
| U4 | 2364 (901227) | KERNAL ROM |
| U5 | 2364 (901225) | Character ROM |
| U6 | 2114 | Colour RAM |
| U7 | 6510 | CPU (with the parallel port P0–P5 that banks the memory map) |
| (8× 4164) | DRAM | 64 KB main RAM |
| U17 | 906114 PLA | Address decode / ROM & I/O select |
| U18 | 6581 (or 8580) SID | Sound (audio out pin 27, audio in pin 26) |
| U19 | 6567 (NTSC) / 6569 (PAL) VIC-II | Video and the system clock |
Clock signals (where to probe)
edit- Master crystal: 14.31818 MHz (NTSC) or 17.734472 MHz (PAL) at the VIC-II, which divides it to make the dot and system clocks.
- Dot clock: 8.18 MHz (NTSC) / 7.88 MHz (PAL).
- System clock φ2: about 1.023 MHz (NTSC) / 0.985 MHz (PAL), generated by the VIC-II (U19) and fed to the 6510 and both CIAs. No φ2 means the VIC-II or the crystal is dead and nothing runs.[2]
PLA (U17) output selects — a scope short-cut
editThe 906114 PLA does the address decoding; probing its outputs shows at a glance whether the CPU is fetching ROM. Each output goes low when its area is selected:[1]
- pin 17 (F1) low = BASIC ROM selected
- pin 16 (F2) low = KERNAL ROM selected
- pin 15 (F3) low = Character ROM selected
- pin 12 (F5) low = any I/O device selected
A PLA showing no activity on these pins (or lines stuck high/low) is the classic no-boot / black-screen cause.
Symptom → suspect chip
edit| Symptom | First suspect(s) |
|---|---|
| Black screen, no border | PLA (U17) → VIC-II (U19) → CPU (U7) |
| Garbage / checkerboard border | A 4164 DRAM (the border colour/pattern hints the failed bit) |
| Border + cursor, no KERNAL banner | KERNAL ROM (U4) or the ROM/PLA select |
| Screen OK but no blinking cursor | CIA U1 |
| No sound | SID (U18) |
| Keyboard / joystick dead | CIA (U1 / U2) |
| Runs then crashes when warm | Overheating PLA or SID (feel/freeze-spray) |
Diagnostic cartridges
edit- Dead Test cartridge runs with all ROMs, the SID and both CIAs removed — the border-flash count identifies the faulty RAM bit.
- 586220 Diagnostic cartridge, used with the keyboard/user-port/serial/joystick loopback harness, tests every port and reports pass/fail — the definitive full-machine test.[1]
References
edit- ↑ 1.0 1.1 1.2 Commodore C64 Service Manual (Ray Carlsen / PortCommodore); C64 250407 Visual Parts Locator, OldSilicon; and Commodore 64 Chip Set. Source for the IC map, the PLA output-select pins (F1 pin 17 BASIC, F2 pin 16 KERNAL, F3 pin 15 character ROM, F5 pin 12 I/O) and the SID audio pins (27 out, 26 in).
- ↑ C64 clock rates per the C64-Wiki and the service manual.