BBC Micro B+ Troubleshooting Guide
This guide documents fault diagnosis for the BBC Micro Model B+ and B+128. Many faults are shared with the Model B, with B+-specific failure modes — shadow RAM, sideways workspace RAM, the WD1770 floppy controller, and the relocated sideways ROM sockets — called out separately.
Reference Documents
- Acorn BBC Microcomputer Service Manual (October 1985), Sections 1 and 2.[1]
- Advanced User Guide for the BBC Microcomputer (Bray, Dickens, Holmes, 1982).
- BBC Microcomputer Advanced Reference Manual (Acorn, 1984).
Initial Diagnosis Workflow
A healthy B+ on first power-on should:
- Beep (1 kHz, 0.1 s) within 50 ms of mains application.
- Display the Acorn-style banner with build-date string, total free user memory, and the language prompt within 1 s.
- Drop into the BASIC II prompt (>) on a 32 K shadow-screen MODE 7 display.
- Respond to keyboard input within 1 character cell of typing.
If any of these does not happen, stop and diagnose at that stage. Don't blindly press Break multiple times — repeated breaks can mask a CPU fault by re-running the boot ROM after a partial failure.
Power-On Symptoms
No power LED, no beep, dead
- PSU fuse blown — the in-line 250 mA T (slow-blow) fuse on the live mains feed has popped. A blown fuse usually means C1 or C2 (RIFA mains-suppression caps) have failed short. Do not just replace the fuse and re-power — investigate the PSU first. Smell-test the unit; a fishy / acrid smell confirms RIFA failure.[2]
- Mains lead fault — uncommon but possible; verify continuity on all three cores.
- Astec PSU module dead — measure +5 V, +12 V, −5 V at the four-pin Molex; if any rail is absent or low, the PSU itself needs service. Recap the secondary side first; replace the 7805 / 7905 regulator only if recapping doesn't restore the rail.
Power LED on, no beep, no display
- CPU clock not running — scope the 2 MHz clock pin (Φ2) at the 6512A; should show a clean 50 % square wave at 2 MHz. If absent, suspect the System ULA (IC15) or the 16 MHz crystal X1.
- MOS ROM dead — pull IC51 (HN613256 MOS) and verify the chip with a programmer. The MOS is on a 32 K EPROM mask in the B+; replacement EPROMs can be programmed from the freely available MOS 2.00 image.
- DRAM fault — a single dead 4164 will prevent MOS boot. Diagnose by pulling DRAMs one at a time and probing for the standard 6502 reset sequence on the address bus.
- Reset line stuck — measure pin 40 of the 6512A; should idle high. A stuck-low reset usually traces to the System ULA or a failed reset capacitor.
Power LED on, beep, no display, no banner
- Video ULA dead — IC6 generates the video bitstream. No output indicates ULA failure; ULAs are unobtainable as new parts and donor B+ boards are scarce.
- CRTC fault — HD6845 (IC2) failure produces no sync signals. Scope HSYNC / VSYNC on the video DIN socket; if both absent, suspect the 6845.
- Composite output dead but UHF works — the composite output buffer transistor (TR1) has failed. Replace with any small-signal NPN equivalent (BC548 family).
Banner displays but garbled
- Shadow RAM fault — the B+'s 20 K shadow screen RAM is separate from main DRAM. A bit fault in shadow RAM produces vertical bars or skewed glyphs in MODE 0–6 but a clean MODE 7 (because MODE 7 uses character cells from teletext ROM, not framebuffer pixels). Reseat the shadow RAM ICs (IC57–IC59); replace if reseating doesn't fix it.
- Main DRAM fault — bit fault in main RAM corrupts both user program and (on B+) MODE 7. Diagnose by running the MOS self-test (Ctrl + Break + R if available) or simply by writing values via *FX and reading them back.
- ROM mis-checksum — *HELP at the prompt should list MOS, BASIC, DFS, and any sideways ROMs. Missing entries indicate a sideways ROM not being recognised — usually a bent socket pin or backwards insertion.
Floppy Disc Diagnosis (WD1770)
The B+ ships with the WD1770 as standard. Common faults:
- No disc activity at all — verify 5 V and 12 V at the floppy edge connector; verify the 34-pin ribbon is the right way round (red stripe to pin 1, which is on the side of the connector marked with a triangle on the B+ PCB).
- Drive spins, no head movement — WD1770 stepping logic failure. Read the WD1770 status register via *FX or a short BASIC program — a stuck busy bit indicates the controller itself has died.[3]
- "Disk fault 18" or similar — DFS read error. Could be the disk itself, head alignment, or a failing 8 MHz oscillator feeding the WD1770. The B+ uses a separate 8 MHz crystal X3 for the floppy controller.
- Reads single-density only — DFS 2.10 ROM corruption or a WD1770 with a degraded density-select line.
Sideways ROM Diagnosis
The B+ has five sideways ROM sockets (vs four on the Model B), relocated to the top-left corner of the board adjacent to the keyboard cable. Numbered 4–8 left-to-right.
- ROM not in *HELP listing — either the ROM is bad, the socket is dirty (clean with deoxidising contact cleaner and reseat), or the ROM is in a socket that requires a specific MOS configuration.
- B+128 won't recognise the additional 64 K sideways RAM — sockets 4 and 6 must be populated with the 32 K static RAM modules (HM6264 family) — confirm both are seated. The B+128 firmware tests both banks at boot; a missing or dead RAM module shows up as a reduced free memory figure in the boot banner.[4]
Keyboard Diagnosis
The B+ keyboard is essentially the same as a late Model B — 73 keys plus the Break-Reset key. Common faults:
- Single key not responding — corroded or worn key switch. Most B+ keyboards use SMK or Futaba switches; both can be cleaned by disassembling the switch on the bench and lightly polishing the contact dimples.
- Whole column dead — broken trace on the keyboard PCB, or a dead column-drive line from the System VIA (IC3). Trace with a logic probe.
- Whole row dead — IC1 (74LS151) row-mux failure on the keyboard PCB.
- Ghost keys — diodes on the keyboard matrix have failed (rare). Replace with 1N4148 equivalents.
- No keys respond, banner present — System VIA dead, ribbon cable broken, or the keyboard ROM (IC2) has died. Swap the keyboard with a known-good Model B keyboard for triage (the cable is identical).
Refer to the keyboard schematic for matrix pin assignments.
Cassette / Tape Diagnosis
- Tape won't load — verify the motor relay clicks when *MOTOR 1 is issued. If not, suspect the motor relay drive transistor.
- Loads at 1200 baud but not 300 — the ACIA (68B54) baud-rate divider may need adjustment; or the saved tape itself may be at 1200 baud.
- Random load errors — failing cassette input opamp on the main board; or a worn tape head on the cassette deck (most B+ machines were used with budget cassette decks where this happens regularly).
Serial / Parallel / 1 MHz Bus
- Centronics not printing — User VIA (IC69) bit failure, or a bad printer cable. The B+ Centronics port is on a 26-way IDC connector (different from the Model B's pin-out at the latched output stage).
- RS-423 not communicating — ACIA or the MAX232-equivalent line driver dead. Verify the RTS/CTS lines at the DIN socket.
- 1 MHz Bus add-on not recognised — buffering chip IC11 (74LS245) has failed; or a stuck address-decode line on the page-select logic.
- Tube not recognised — Tube ULA failure or an absent / bad Tube ROM in one of the sideways sockets.
Common Field Symptoms
- Smell of fish on power-up — RIFA X2 cap (C1 / C2) venting. Power off immediately at the wall.
- Random reboots when warm — PSU electrolytics aged, particularly C9 (primary bulk). Recap the PSU first.
- MOS self-test passes but disc reads fail — WD1770 8 MHz clock fault; check crystal X3 and the surrounding oscillator network.
- Keyboard inputs occasional ghost characters — failing diode in the keyboard matrix, or a flaky ribbon cable.
- Screen flickers in MODE 7 only — SAA5050 teletext IC clock fault; verify the 6 MHz line feeding the chip.
- B+128 boots as B+64 (only 64 K free) — additional sideways RAM banks not detected; reseat the HM6264 modules.
- *HELP shows DFS but no disc activity at all — WD1770 itself dead, or the 8 MHz crystal X3 has fractured.
- Screen rolls vertically — vertical sync issue from the 6845 CRTC; clock fault or a dead 6845.
Diagnostic Workflow Summary
- Power on; observe LED, beep, banner.
- If no power: check PSU rails; suspect RIFA caps and C9.
- If power but no beep: scope CPU clock; suspect ULA / DRAM / MOS.
- If banner garbled: pull DRAM and shadow RAM; reseat ROMs.
- If banner OK but no floppy: check WD1770 8 MHz clock; verify floppy cable orientation.
- If banner OK but no keys: System VIA and keyboard ROM checks; swap keyboard with known-good unit.
- If banner OK but B+128 reports B+64 memory: re-seat sideways RAM modules in sockets 4 and 6.
- Always recap PSU before chasing intermittent boot failures on a 40-year-old machine.