IWH Software
My projects
Retro stuff
Random stuff
About me
Contact me
Admin login

BBC Model B

Many years ago I bought myself a BBC Model B Microcomputer from a car boot sale for the princely sum of £8.

It came with a disk drive, many blank 5 1/4 inch floppy disks, some clear plastic pocket things binded together in book form, a 9 inch green screen monitor, an assortment of cables, some disk drive cleaning fluid and disks, and several installed ROM's. When I got it home and tested it, it all seemed to work properly, except the disk drive, which kept giving random errors when accessing the disks.

After an hour or so's worth of playing with it, it was boxed up and put into storage with the rest of my collection, except the monitor, which was sold to a friend.

Fast forward to 2018, and Retropie with which, I can emulate all the classic systems from my childhood, with one notable exception... The BBC Micro!
It is possible to emulate the Beeb on a Raspberry Pi, but it's not easy to add it into Retropie.

For those of you not of a certain age living in the UK who are not familiar with the BBC Micro, here is it's Wikipedia page

Anyway, I needed to hear the Beeb's "BURR-BEEP" startup sound again.

So it's time to dig it out of storage, treat it to some new capacitors, and fire it up...

But first lets have a look around the machine...

Here is the back of the machine, on the left you can see the sockets for UHF out, video out, RGB out, RS423 serial port, and the cassette in/out connection, and on the right there is the analogue in port, and an optional port for Econet networking

This is the auxillary power output, usually for a floppy disc drive

These are the connections on the right underside of the machine for the floppy disc drives and a printer, and on the left you have the tube for co-processors such as a Z80, the 1MHz bus used for hard discs and sound synthesisers, which could be daisy chained together, and a user port, which is a bit like the GPIO pins on a Raspberry Pi

Above the keyboard with it's iconic red function keys is a strip of plastic which can be removed and cheat cards related to software can be installed, on the left you have the speaker, and on the right you have the text BRITISH BROADCASTING CORPORATION MICROCOMPUTER SYSTEM, with its owl logo. To the left of the keyboard is a cut-out referred to as the ashtray, which was for certain other upgrades. Underneath the keyboard are three LED's for the cassette motor, the BBC can control a suitable cassette recorder by its remote wire, you can control it from BASIC by using the commands MOTOR 1 and MOTOR 0. The Caps Lock which means the same as every other computer in the world, and the Shift Lock which stops text scrolling off the screen

Watford Electronics Disk Drive

Not much to say about the disk drive, other than it's a Watford Electronics switch-able 40/80 track double sided drive with a hand written serial number. And after a thorough cleaning it does appear to work. The drive plugs into the Beeb using the power and disk drive sockets underneath the machine. A generous amount of cable is attached to the drive.
This BBC uses the Watford Electronics Dual Disk Filing System (DDFS) which was supplied on a ROM chip which replaces the limited BBC DFS chip.

Manuals and documentation

Here are all the manuals and documentation I received with the machine, the manual for the BBC is getting a bit fragile now, but everything else is in good condition.

Recapping the Beeb's PSU

Do this before anything else. Seriously, you have been warned!

Like a lot of machines from that era, the capacitors will need replacing, otherwise they may go POP and release the magic smoke that powers all electronics.

The Beeb only needs three capacitors in the power supply replaced, the two RIFA X2 caps C1 and C2, and a normal electrolytic, C9.

As the beeb was designed to be internally expandable, it's a fairly easy job to access the capacitors and replace them, and the capacitors are available as kits online with varying degrees of quality.

Start by removing the four black screws and removing the top cover of the Beeb

Then remove the three silver screws that hold the power supply in, then the two nuts and bolts that hold the keyboard in, don't lose the washers.

Move the keyboard down an inch or so, now you can lift up the PSU and pull it forward, you may need to pull a couple of spade terminals off the main board to allow the PSU to be moved free of the case enough to be flipped over. In my Beeb I have a 12 ROM expansion board that covers two spade connectors and the power cable to the right side of the board, so i'd rather work on the PSU without taking apart the whole machine.

There are three screws that hold the PSU board to the metal frame, and two nuts and bolts with ground connections that need to be undone, you will find threadlock over some of them which will need cleaning off.

Then cut the cable ties that hold the wires together, I had three on mine, then squeeze the tabs on the power switch and pop it out of the metal frame, this is quite tricky and gets frustrating when the tabs you just popped out, pop straight back in again, but it can be done.

And with a bit of jiggling you can slide out the board and rotate it round to access the underside.

Now you can get a proper look at the capacitors and the solder side of the board. I've highlighted which capacitors you need to replace, and their solder joints.
Remember the electrolytic is polarized, so note down which way it's fitted, and make sure the replacement is fitted the same way.

The replacement capacitor values are...

C1: 0.1uF 250VAC X2 class capacitor
C2: 0.01uF 250VAC X2 class capacitor
C9: 220uF 10V electrolytic capacitor

Replace these capacitors one at a time, then reassemble everything, don't forget to tie the cables back into their original positions with the cable ties

Also, watch the keyboard LED's

If all went well you should hear the familiar startup sound and see the normal text on the screen

Connecting the Beeb to a modern TV

There are three video connectors on the back of the Beeb

UHF out: Which broadcasts RF on analogue CH36, this is the lowest quality video signal
Video out: Which is only a black and white video signal from a BNC socket, unless the machine is modified
RGB: This is the best quality video output, but requires you to buy or make a 6 pin DIN to SCART cable

I have made a RGB cable so that's what I'm using.

If you're using the Video Out socket the picture will be in black and white, but however on Issue 4 machines like mine, you can join the link S39 together to convert the Video out socket to colour, this is located to the left of the RF modulator, there is not a lot of room here so it may be easier to remove the board from the case. Other revision machines have different procedures to enable colour over the video out socket.

Making a cassette lead

Unless you have a way of writing disk images to the BBC's floppy disks, or a modern SD card storage solution, you will need to load software via the cassette interface. The latest version of Tapdancer has support for the BBC's UEF cassette image files, although it can't read them if they are zipped They can now be individually zipped to save a KB's.

The BBC's cassette port is a seven pin DIN style connector, although pins six and seven at the top are for motor control, so you can use a five pin DIN plug to get data into the Beeb.

Pins 2 (bottom) and 3 (left as looking at the back of the machine) are for tape input, 2 being ground and 3 being the input.

The issue here is the input is expecting a mono signal, and all modern devices are stereo. This means we will need to mix the stereo signal down to mono within the cable.

This is easily done with two 22ohm resistors, you may notice that cassette leads for other computers need higher resistance resistors, such as 100ohm, but our Beeb is a bit hard of hearing and needs a loud signal, I tried 100ohm, then 50 ohm before trying the 22ohm resistors, neither would work, the 50 ohm resistors would allow the Beeb to start loading, but it would always fail.

Using a 3.5mm TRS (3 pole) plug solder a 0.6w metal film 22ohm resistor to the left and right terminals, connect the other ends together and solder to the wire that goes to the input pin 3 in the DIN plug, then solder the ground wire between the two plugs (pin 2 in the DIN plug), you'll notice the resistors are small enough to fit inside of a standard jack plug, making a tidy cable. Insulate the signal pins from the case and screw or clip them all together.

Using Tapdancer on my Samsung Galaxy S9 the volume needs to be at maximum, it is recommended to put the phone into flight mode as radio noise can interfere with the signal, and you don't want a text message alert interrupting proceedings.

To start the Beeb loading from cassette press CTRL+Break to reset, then type...


The Beeb will respond with


Now press play on the virtual cassette in Tapdancer. When the Beeb has found a programme it will display

Name 00

Name is the title of the programme and 00 is the current block of data expressed as a hexadecimal number (00 - FF), this will increment slowly as the programme loads

If you see a message telling you to rewind the tape, then this means one of the data blocks failed to load, just rewind the tape a little and resume playing, the Beeb will wait until the failed data block arrives and try loading it again. This is different to other systems as the whole loading process isn't lost to an R Tape loading error, 0:1 You just need to rewind a bit and try again.

If all is well your programme will load...

It is normal to hear the Beeb occasionally beep and click while loading, the click is the motor relay stopping and starting the "cassette recorder"

Making a RGB SCART lead

Is it "a RGB lead" or "an RGB lead"? An RGB sounds better when spoken, but looks wrong when written.

Never mind, for this you will need

4 x 220Ω 0.6W metal film resistors
1 x 270Ω 0.6W metal film resistor
1 x 6-pin DIN plug
1 x SCART plug
6 core screened cable of suitable length

These are the pinouts looking at the back of the plugs.

You need the resistors as the Beeb outputs a 5 Volt TTL signal, this means each red, green, and blue signal is either on at 5V, or off at 0V. This gives a maximum of 16 colours. The SCART inputs expect a 1 Volt signal, so the resistors reduce the 5V, down to 1V. The SCART sense on pin 8 can take up to 12V, when a voltage is detected on this pin, the TV will change channel automatically. Later TV's would change screen format from 4:3 to 16:9 if a certain level of voltage was detected. The RGB sense only requires a small voltage, hence the resistor.

For my cable I cheated and used an existing SCART cable with a thin lead, and just cut off one end. I worked out which wires went to the required pins in the other SCART plug with a multimeter set to continuity mode, then soldered the resistors onto the pins in the DIN plug and soldered the wires onto the resistors

Once everything was insulated and assembled, it was tested and it worked first time

The resistors reduce the 5V signal from the BBC down to 1V which the SCART expects, it is actually a voltage divider

The 5V from the RGB port is connected to the SCART sense on pin 8, and also via a resistor, the RGB blanking on pin 16, which usually forces the TV into RGB mode. Some cheaper TV's don't handle this very well if the set is changed to a different input, or back to the tuner.

Here are some pictures of my BBC Model B

That's it so far, for more retro hardware check out my online museum here

© 2020 IWH Software (Ian Hill)