Last weekend I started the first of a four-part course teaching children to program on the BBC Micro. Of course, when dealing with 40 year old hardware being used all day, something could go wrong. A couple of minor things did fail, so this post is about what happened and how I solved them.
The Setup
I had two BBC Micro Bs and two BBC Master 128s setup so that the children could program on them. What was encouraging was that there were more girls than boys signed-up for the course.
The two Master 128s worked flawlessly, but the two Bs both had different issues. So, let’s dive into them.
Noise
After a while, the beige BBC B started making a lot of random noise from the speaker. I know that this is an issue 7 motherboard inside, so does not need the 1 MHz bus noise patch. What I suspected is more likely is a power supply issue, as this is one of the parts that uses the -5v line.
I temporarily hooked up a regulated USB power supply to the BBC instead of the normal PSU to test my theory.
When trying this, the noise was gone, which means it is highly likely the problem is in the power supply. I went through the pain of opening it up again.
This is the schematic of the low voltage side.
Based on this, we know that C18 and C21 are the capacitors for the -5v line. These are circled in the photo below.
With them removed, let’s test them on the Peak ESR70.
Well… This capacitor is so bad that the meter can’t even detect there is any component there. The same was true of the other one. This explains a lot. It means that the -5v would not have been smoothed out and would be very noisy coming out of the PSU, which is translated to noise we can hear in the audio circuit.
Of course, I was out of stock of the 100uF replacements, so had to order some more. Once they came, I popped them right into place.
Did it work? Well, there isn’t much to show, but yes! The usual boo-beep noise was heard, and the speaker was quiet. I can that a win!
Disc Failure?
The second problem was on the black BBC, and unfortunately, I didn’t get a photo of this, but it is down to my own stupidity.
This BBC had a GoFloppy drive connected, just like all the other machines. A GoFloppy drive is something I designed, which uses the FlashFloppy firmware to emulate a floppy drive using images on an SD card.
This BBC Micro would regularly say the following:
Drive fault 10 at 00/C1
Now, error 10 on the DFS system means “Drive not ready”. Which is really weird, and I was trying to figure out what hardware problem would cause this. Then I remembered that there was something different about this BBC compared to the rest. All the others used a Western Digital 1770 based floppy controller, whereas this machine used an original Intel 8271 floppy controller. The BBC Micro was designed originally around an 8271 controller and since the 1770 was quite compatible, but added new features, upgrade boards based on the 1770 came out later on.
Then it suddenly clicked in my head. The 8271 requires the Index signal to work correctly, but the FlashFloppy has this disabled by default. To fix this, it is a simple case of going into the FF.CFG file and making the following change:
index-suppression = no
From that point onwards, everything with that machine worked correctly.
Leave a Reply