BBC B+ 128K: Fault after warming up.
-
- Posts: 143
- Joined: Sun Apr 10, 2016 2:47 pm
- Location: Oxford, UK.
- Contact:
BBC B+ 128K: Fault after warming up.
I've a BBC B+ 128K which when started from cold will run OK for about 30 seconds and then starts to get memory errors. Within a few minutes it won't get through the boot process properly and then the Mode 7 characters on screen scramble.
I've uploaded a couple of videos to YouTube...
Coolish... https://youtu.be/UWS_OcaYFwo
After a few minutes... https://youtu.be/iwNjTq8tOxA
At one point I was able to run a program, a simple count and print, which often got its values corrupted before crashing out usually with no such line on the goto statement.
I've reseated all the ROMS, which are the only socketed chips. None of the chips seem to be getting particularly warm.
I've tried a different power supply and keyboard and there're no changes to the symptoms.
It looks like noise on the data bus.
Any ideas?
I've uploaded a couple of videos to YouTube...
Coolish... https://youtu.be/UWS_OcaYFwo
After a few minutes... https://youtu.be/iwNjTq8tOxA
At one point I was able to run a program, a simple count and print, which often got its values corrupted before crashing out usually with no such line on the goto statement.
I've reseated all the ROMS, which are the only socketed chips. None of the chips seem to be getting particularly warm.
I've tried a different power supply and keyboard and there're no changes to the symptoms.
It looks like noise on the data bus.
Any ideas?
- DutchAcorn
- Posts: 2359
- Joined: Fri Mar 21, 2014 9:56 am
- Location: Maarn, Netherlands
- Contact:
Re: BBC B+ 128K: Fault after warming up.
It looks like an issue with the memory addressing. If it is really heat related you can use cooler spray to cool the memory (/addressing related) chips while the computer is on and see where it has effect.
You can also use a can of compressed air spray for this if you use the can upside down.
Btw it can also be the 6502, I have had a few 6502 heat related faults in the past.
You can also use a can of compressed air spray for this if you use the can upside down.
Btw it can also be the 6502, I have had a few 6502 heat related faults in the past.
Paul
- Hopper
- Posts: 52
- Joined: Sat Feb 23, 2019 1:13 pm
- Location: Denver, Colorado. or Glasgow UK
- Contact:
Re: BBC B+ 128K: Fault after warming up.
Defo not going to be a fault with a 6502 processor in a B+ ! No Sir.DutchAcorn wrote: ↑Wed Mar 06, 2019 5:17 amBtw it can also be the 6502, I have had a few 6502 heat related faults in the past.
Re: BBC B+ 128K: Fault after warming up.
He's referencing the fact that the B+ uses a 6512 processor, as opposed to a 6502.
BBC Model B 32K issue 7, Sidewise ROM board with 16K RAM
Archimedes 420/1 upgraded to 4MB RAM, ZIDEFS with 512MB CF card
RiscPC 600 under repair
Acorn System 1 home-made replica
Archimedes 420/1 upgraded to 4MB RAM, ZIDEFS with 512MB CF card
RiscPC 600 under repair
Acorn System 1 home-made replica
Re: BBC B+ 128K: Fault after warming up.
The B+ is fun to debug, with so many chips soldered in.stephen_usher wrote: ↑Tue Mar 05, 2019 9:50 pmI've a BBC B+ 128K which when started from cold will run OK for about 30 seconds and then starts to get memory errors. Within a few minutes it won't get through the boot process properly and then the Mode 7 characters on screen scramble.
I've uploaded a couple of videos to YouTube...
Coolish... https://youtu.be/UWS_OcaYFwo
After a few minutes... https://youtu.be/iwNjTq8tOxA
At one point I was able to run a program, a simple count and print, which often got its values corrupted before crashing out usually with no such line on the goto statement.
I've reseated all the ROMS, which are the only socketed chips. None of the chips seem to be getting particularly warm.
I've tried a different power supply and keyboard and there're no changes to the symptoms.
It looks like noise on the data bus.
Any ideas?

Do you see any difference in the onset of problems if you leave the case open, as opposed to closed? This would indicate a chip that's susceptible to failing when warm.
On a regular B, I'd suggest removing the System VIA to disable the keyboard (IC3 in a B, IC20 in a B+), but desoldering a 40-pin chip isn't something to do on a whim. But looking at the B+'s diagram, I see that the System VIA has its own dedicated reset circuit on pin 34, using a diode, resistor, and capacitor (D2, R17, and C3).
C3 pulls the reset pin to ground at first, but then the diode and resistor pull the line up to 5V shortly afterward. If you were to fit a low-value resistor in parallel to C3 (say 1k~10k) that would effectively bypass the capacitor and force the reset line low, so the System VIA would be in a constant reset state while the rest of the system boots. If you still see spurious characters being "typed" in, then it's not the fault of the keyboard or VIA.
Last edited by Kazzie on Wed Mar 06, 2019 10:52 am, edited 1 time in total.
BBC Model B 32K issue 7, Sidewise ROM board with 16K RAM
Archimedes 420/1 upgraded to 4MB RAM, ZIDEFS with 512MB CF card
RiscPC 600 under repair
Acorn System 1 home-made replica
Archimedes 420/1 upgraded to 4MB RAM, ZIDEFS with 512MB CF card
RiscPC 600 under repair
Acorn System 1 home-made replica
- DutchAcorn
- Posts: 2359
- Joined: Fri Mar 21, 2014 9:56 am
- Location: Maarn, Netherlands
- Contact:
Re: BBC B+ 128K: Fault after warming up.
My B+ had a shorted C3 when I first got it, but it would not boot with that short.
viewtopic.php?f=3&t=9375&p=113519#p166250
viewtopic.php?f=3&t=9375&p=113519#p166250
Paul
Re: BBC B+ 128K: Fault after warming up.
Ah, right. That rather shorts that idea, then.DutchAcorn wrote: ↑Wed Mar 06, 2019 11:56 amMy B+ had a shorted C3 when I first got it, but it would not boot with that short.
viewtopic.php?f=3&t=9375&p=113519#p166250
Last edited by Kazzie on Wed Mar 06, 2019 12:26 pm, edited 1 time in total.
BBC Model B 32K issue 7, Sidewise ROM board with 16K RAM
Archimedes 420/1 upgraded to 4MB RAM, ZIDEFS with 512MB CF card
RiscPC 600 under repair
Acorn System 1 home-made replica
Archimedes 420/1 upgraded to 4MB RAM, ZIDEFS with 512MB CF card
RiscPC 600 under repair
Acorn System 1 home-made replica
- 1024MAK
- Posts: 10566
- Joined: Mon Apr 18, 2011 5:46 pm
- Location: Looking forward to summer in Somerset, UK...
- Contact:
Re: BBC B+ 128K: Fault after warming up.
If a chip that has become heat sensitive is suspected, it’s worthwhile getting some freezer spray.
When the symptoms appear, try cooling any chips that you think may be suspects with the freezer spray (try not to spray anything else).
Mark
When the symptoms appear, try cooling any chips that you think may be suspects with the freezer spray (try not to spray anything else).
Mark
Last edited by 1024MAK on Wed Mar 06, 2019 9:36 pm, edited 1 time in total.
For a "Complete BBC Games Archive" visit www.bbcmicro.co.uk NOW!
BeebWiki - for answers to many questions...
Fault finding index • Acorn BBC Model B minimal configuration • Logic Levels for 5V TTL Systems
BeebWiki - for answers to many questions...
Fault finding index • Acorn BBC Model B minimal configuration • Logic Levels for 5V TTL Systems
-
- Posts: 143
- Joined: Sun Apr 10, 2016 2:47 pm
- Location: Oxford, UK.
- Contact:
Re: BBC B+ 128K: Fault after warming up.
Freeze spray ordered from RS so should arrive tomorrow. However, the machine, along with a BBC B and Master 128K are going for a little holiday tomorrow evening as someone wants to use them as props in a video so I'll have to do more research when they get back.
Re: BBC B+ 128K: Fault after warming up.
That's me!stephen_usher wrote: ↑Wed Mar 06, 2019 9:06 pmHowever, the machine, along with a BBC B and Master 128K are going for a little holiday tomorrow evening as someone wants to use them as props in a video
- daveejhitchins
- Posts: 6233
- Joined: Wed Jun 13, 2012 6:23 pm
- Location: Newton Aycliffe, County Durham
- Contact:
Re: BBC B+ 128K: Fault after warming up.
Oh, come on . . . You can't leave it with a "That's me!" - Details, man - details (Pleasepelago wrote: ↑Wed Mar 06, 2019 9:11 pmThat's me!stephen_usher wrote: ↑Wed Mar 06, 2019 9:06 pmHowever, the machine, along with a BBC B and Master 128K are going for a little holiday tomorrow evening as someone wants to use them as props in a video

Dave H

-
- Posts: 143
- Joined: Sun Apr 10, 2016 2:47 pm
- Location: Oxford, UK.
- Contact:
Re: BBC B+ 128K: Fault after warming up.
Unfortunately I still don't have the freeze spray. RS and the courier say that it was delivered to work last Thursday, as a separate package to the other things I ordered, but the receptionist says that there was only one package she signed for.
Anyway, I've re-ordered but the replacement won't get shipped until the 14th... Maybe I can play at the weekend?
Anyway, I've re-ordered but the replacement won't get shipped until the 14th... Maybe I can play at the weekend?
-
- Posts: 143
- Joined: Sun Apr 10, 2016 2:47 pm
- Location: Oxford, UK.
- Contact:
Re: BBC B+ 128K: Fault after warming up.
I got an oscilloscope today so I've been having a look at the B+ using that.
On the 6512 D5, D6 and D7 often show this trace as the processor crashes... That doesn't look a lot like valid data to me. (When the processor halts all the address and data lines go to ~0V.)
On the 6512 D5, D6 and D7 often show this trace as the processor crashes... That doesn't look a lot like valid data to me. (When the processor halts all the address and data lines go to ~0V.)
Re: BBC B+ 128K: Fault after warming up.
What happens to the SYNC (6512 pin 7) signal when it crashes? I assume this is staying low.
Last edited by hoglet on Thu Mar 14, 2019 8:17 pm, edited 1 time in total.
-
- Posts: 143
- Joined: Sun Apr 10, 2016 2:47 pm
- Location: Oxford, UK.
- Contact:
Re: BBC B+ 128K: Fault after warming up.
Yes, but very noisey (low voltage). The power supply 5V rail is clean, so it can't be that.
-
- Posts: 143
- Joined: Sun Apr 10, 2016 2:47 pm
- Location: Oxford, UK.
- Contact:
Re: BBC B+ 128K: Fault after warming up.
I've been using my 'scope on the memory, on IC64, IC65, IC66 and IC67 DRAMS both Din and Dout have quite a marked saw-tooth 2MHz noise, unlike IC68, IC69, IC70 and IC71.
-
- Posts: 143
- Joined: Sun Apr 10, 2016 2:47 pm
- Location: Oxford, UK.
- Contact:
Re: BBC B+ 128K: Fault after warming up.
Looking at the circuit diagram and tracing back the data lines from the RAM they only go to a couple of 74LS chips, one is a set of buffers to the processor memory data lines and the other is a set of flip-flops to interface the Teletext chip, and the video processor.
All the signals the other side of the 74LS chips are clean and they have no clock input which suggests that the 2MHz saw-tooth noise is coming from the video processor.
Of course, the question to be asked now are:
(a) Is the ~2V/2MHz noise likely to be causing the memory corruption and system instability?
(b) Is this noise potentially generated by the vidproc normal?
(c) Is the vidproc generating the noise and if so does that mean that it's faulty?
I'm guessing that this is the same video processor as used in the older BBC Model B, is this correct? If so then I can use a Model B as a reference.
All the signals the other side of the 74LS chips are clean and they have no clock input which suggests that the 2MHz saw-tooth noise is coming from the video processor.
Of course, the question to be asked now are:
(a) Is the ~2V/2MHz noise likely to be causing the memory corruption and system instability?
(b) Is this noise potentially generated by the vidproc normal?
(c) Is the vidproc generating the noise and if so does that mean that it's faulty?
I'm guessing that this is the same video processor as used in the older BBC Model B, is this correct? If so then I can use a Model B as a reference.
- 1024MAK
- Posts: 10566
- Joined: Mon Apr 18, 2011 5:46 pm
- Location: Looking forward to summer in Somerset, UK...
- Contact:
Re: BBC B+ 128K: Fault after warming up.
Write data to the DRAM only comes from the CPU.
The DRAMs (and other RAM, ROM/EPROM and IO devices) provide read data to the CPU and to the video system (videoproc/teletext chip).
When neither a read or a write is being performed, the data bus is undriven, so any voltage left on the data lines due to residual stray capacitance will decay slowly compared to an activity driven signal.
Note for simplicity of describing the operation, I have not detailed the various buffers etc.
Mark
The DRAMs (and other RAM, ROM/EPROM and IO devices) provide read data to the CPU and to the video system (videoproc/teletext chip).
When neither a read or a write is being performed, the data bus is undriven, so any voltage left on the data lines due to residual stray capacitance will decay slowly compared to an activity driven signal.
Note for simplicity of describing the operation, I have not detailed the various buffers etc.
Mark
Last edited by 1024MAK on Sun Mar 17, 2019 1:52 pm, edited 3 times in total.
For a "Complete BBC Games Archive" visit www.bbcmicro.co.uk NOW!
BeebWiki - for answers to many questions...
Fault finding index • Acorn BBC Model B minimal configuration • Logic Levels for 5V TTL Systems
BeebWiki - for answers to many questions...
Fault finding index • Acorn BBC Model B minimal configuration • Logic Levels for 5V TTL Systems
- 1024MAK
- Posts: 10566
- Joined: Mon Apr 18, 2011 5:46 pm
- Location: Looking forward to summer in Somerset, UK...
- Contact:
Re: BBC B+ 128K: Fault after warming up.
BBC B+ main RAM
IC49 (74LS245) transceiver connects the DRAM and the CPU (IC42). Which direction (read/write) depends on the R/W signal on pin 1 and enable /G being low (pin 19).
IC54 (74LS273) copies (reads) the data from the DRAM to the teletext chip IC59, SAA5050).
The videoproc IC53 also reads the data from the DRAM.
The DRAM chips (IC55, 56, 60, 61, 64, 65, 66 & 67) are controlled by /RAS, /CAS and /W.
/RAS and /CAS are used to strobe the row and column address into the DRAM (two lots of 8 bits of address making a total of 16 bits). Only after both row and column addresses been entered will the DRAM output data (assuming /W is high). A write to the DRAM takes place instead of a read if /W is low. For more/full details see the 4164 DRAM datasheet.
Mark
IC49 (74LS245) transceiver connects the DRAM and the CPU (IC42). Which direction (read/write) depends on the R/W signal on pin 1 and enable /G being low (pin 19).
IC54 (74LS273) copies (reads) the data from the DRAM to the teletext chip IC59, SAA5050).
The videoproc IC53 also reads the data from the DRAM.
The DRAM chips (IC55, 56, 60, 61, 64, 65, 66 & 67) are controlled by /RAS, /CAS and /W.
/RAS and /CAS are used to strobe the row and column address into the DRAM (two lots of 8 bits of address making a total of 16 bits). Only after both row and column addresses been entered will the DRAM output data (assuming /W is high). A write to the DRAM takes place instead of a read if /W is low. For more/full details see the 4164 DRAM datasheet.
Mark
For a "Complete BBC Games Archive" visit www.bbcmicro.co.uk NOW!
BeebWiki - for answers to many questions...
Fault finding index • Acorn BBC Model B minimal configuration • Logic Levels for 5V TTL Systems
BeebWiki - for answers to many questions...
Fault finding index • Acorn BBC Model B minimal configuration • Logic Levels for 5V TTL Systems
-
- Posts: 143
- Joined: Sun Apr 10, 2016 2:47 pm
- Location: Oxford, UK.
- Contact:
Re: BBC B+ 128K: Fault after warming up.
At last I obtained a freezer spray!
The results are converse to what I would have expected. Basically things get worse if cooled.
Specifically, if I cool the 74LS245N (IC49) then the machine stops working at all until I raise the temperature of the chip. It has no effect on the next door 74LS245.
Given that IC49 is a bi-directional buffer between the CPU data bus and the RAM/Video bus this could cause data corruption if it was going dodgy and would explain the fact that the screen interference stops as soon as the CPU halts.
The results are converse to what I would have expected. Basically things get worse if cooled.
Specifically, if I cool the 74LS245N (IC49) then the machine stops working at all until I raise the temperature of the chip. It has no effect on the next door 74LS245.
Given that IC49 is a bi-directional buffer between the CPU data bus and the RAM/Video bus this could cause data corruption if it was going dodgy and would explain the fact that the screen interference stops as soon as the CPU halts.
- 1024MAK
- Posts: 10566
- Joined: Mon Apr 18, 2011 5:46 pm
- Location: Looking forward to summer in Somerset, UK...
- Contact:
Re: BBC B+ 128K: Fault after warming up.
If the symptoms change when you cool a chip, change it!
The equivalent to IC49 in a BBC B often causes problems, especially when the machine warms up.
Silicon semiconductor devices should be good over the 0oC to 100oC range (note this is the temperature of the silicon die, not that of the plastic or ceramic package).
With a defective chip, logic goes out the window! So although sometimes cooling it when it is warm will restore normal-ish operation, it is not the case for some faults.
The other technique is to wait for the board to cool down, then blast any suspect chips with a hairdryer set to maximum heat. But it is difficult to localise the area that gets hot to single chips. If you have a soldering station with a hot gun, it is a bit easier.
Mark
The equivalent to IC49 in a BBC B often causes problems, especially when the machine warms up.
Silicon semiconductor devices should be good over the 0oC to 100oC range (note this is the temperature of the silicon die, not that of the plastic or ceramic package).
With a defective chip, logic goes out the window! So although sometimes cooling it when it is warm will restore normal-ish operation, it is not the case for some faults.
The other technique is to wait for the board to cool down, then blast any suspect chips with a hairdryer set to maximum heat. But it is difficult to localise the area that gets hot to single chips. If you have a soldering station with a hot gun, it is a bit easier.
Mark
Last edited by 1024MAK on Thu Mar 28, 2019 7:45 am, edited 1 time in total.
For a "Complete BBC Games Archive" visit www.bbcmicro.co.uk NOW!
BeebWiki - for answers to many questions...
Fault finding index • Acorn BBC Model B minimal configuration • Logic Levels for 5V TTL Systems
BeebWiki - for answers to many questions...
Fault finding index • Acorn BBC Model B minimal configuration • Logic Levels for 5V TTL Systems
-
- Posts: 143
- Joined: Sun Apr 10, 2016 2:47 pm
- Location: Oxford, UK.
- Contact:
Re: BBC B+ 128K: Fault after warming up.
IC49 has now been replaced but the fault persists, though the system is slightly more stable.
From the video corruption I'm wondering if the CPU is writing during the period that the video circuitry is trying to read memory and hence you're getting merged and corrupted data.
I'm guessing that the control line for this comes from IC49's pin 19 which is generated by IC48, a 74LS10. This in turn is controlled by IC40 (74LS20) and the 2MHz clock.
From the video corruption I'm wondering if the CPU is writing during the period that the video circuitry is trying to read memory and hence you're getting merged and corrupted data.
I'm guessing that the control line for this comes from IC49's pin 19 which is generated by IC48, a 74LS10. This in turn is controlled by IC40 (74LS20) and the 2MHz clock.
-
- Posts: 143
- Joined: Sun Apr 10, 2016 2:47 pm
- Location: Oxford, UK.
- Contact:
Re: BBC B+ 128K: Fault after warming up.
Hmm... Should the video processor pin 3 (CS) always be high?
Could the ULA be partly dead?
Could the ULA be partly dead?
- 1024MAK
- Posts: 10566
- Joined: Mon Apr 18, 2011 5:46 pm
- Location: Looking forward to summer in Somerset, UK...
- Contact:
Re: BBC B+ 128K: Fault after warming up.
Pin 3 will only go low when the address decoding circuit for the relevant I/O address on the CPU address lines is present. The rest of the time it is high which is the inactive state.
Remember the Videoproc is a slave device to the CPU in that it is a write only I/O device.
Mark
Remember the Videoproc is a slave device to the CPU in that it is a write only I/O device.
Mark
Last edited by 1024MAK on Fri Mar 29, 2019 10:29 pm, edited 1 time in total.
For a "Complete BBC Games Archive" visit www.bbcmicro.co.uk NOW!
BeebWiki - for answers to many questions...
Fault finding index • Acorn BBC Model B minimal configuration • Logic Levels for 5V TTL Systems
BeebWiki - for answers to many questions...
Fault finding index • Acorn BBC Model B minimal configuration • Logic Levels for 5V TTL Systems
-
- Posts: 143
- Joined: Sun Apr 10, 2016 2:47 pm
- Location: Oxford, UK.
- Contact:
Re: BBC B+ 128K: Fault after warming up.
Something seems to be not generating the signal to prevent the CPU accessing the memory at the same time as the video sub-system.
The voltage on IC40 pin 8 and hence IC48 pin 12 never ever change. IC40 pin 10 goes up and down, pin 9 is always high.
The voltage on IC40 pin 8 and hence IC48 pin 12 never ever change. IC40 pin 10 goes up and down, pin 9 is always high.
- 1024MAK
- Posts: 10566
- Joined: Mon Apr 18, 2011 5:46 pm
- Location: Looking forward to summer in Somerset, UK...
- Contact:
Re: BBC B+ 128K: Fault after warming up.
IC40 pin 8 should be low unless the CPU is trying to access the main RAM or the Videoproc.
IC48 pin 12 will be high. It will go low if the CPU is trying to access the main RAM or the Videoproc.
Mark
IC48 pin 12 will be high. It will go low if the CPU is trying to access the main RAM or the Videoproc.
Mark
For a "Complete BBC Games Archive" visit www.bbcmicro.co.uk NOW!
BeebWiki - for answers to many questions...
Fault finding index • Acorn BBC Model B minimal configuration • Logic Levels for 5V TTL Systems
BeebWiki - for answers to many questions...
Fault finding index • Acorn BBC Model B minimal configuration • Logic Levels for 5V TTL Systems
- 1024MAK
- Posts: 10566
- Joined: Mon Apr 18, 2011 5:46 pm
- Location: Looking forward to summer in Somerset, UK...
- Contact:
Re: BBC B+ 128K: Fault after warming up.
IC40 pin 10 is CPU address line A15. It goes low when the CPU tries to access main RAM for any address 0x000 to 0x7FFF.
IC40 pin 9 is /VIDPROC. It is normally high and only goes low when the CPU tries to write settings to the Videoproc.
Mark
IC40 pin 9 is /VIDPROC. It is normally high and only goes low when the CPU tries to write settings to the Videoproc.
Mark
For a "Complete BBC Games Archive" visit www.bbcmicro.co.uk NOW!
BeebWiki - for answers to many questions...
Fault finding index • Acorn BBC Model B minimal configuration • Logic Levels for 5V TTL Systems
BeebWiki - for answers to many questions...
Fault finding index • Acorn BBC Model B minimal configuration • Logic Levels for 5V TTL Systems
- 1024MAK
- Posts: 10566
- Joined: Mon Apr 18, 2011 5:46 pm
- Location: Looking forward to summer in Somerset, UK...
- Contact:
Re: BBC B+ 128K: Fault after warming up.
Can you test IC40 pins 8, 9, 10, 12 and 13 please. If you have a two channel ‘scope (or even better if you have a four channel ‘scope) test each input (pins 9, 10, 12 and 13) while monitoring the output (pin 8 ) with another channel.
Mark
Mark
Last edited by 1024MAK on Fri Mar 29, 2019 11:39 pm, edited 1 time in total.
For a "Complete BBC Games Archive" visit www.bbcmicro.co.uk NOW!
BeebWiki - for answers to many questions...
Fault finding index • Acorn BBC Model B minimal configuration • Logic Levels for 5V TTL Systems
BeebWiki - for answers to many questions...
Fault finding index • Acorn BBC Model B minimal configuration • Logic Levels for 5V TTL Systems
-
- Posts: 143
- Joined: Sun Apr 10, 2016 2:47 pm
- Location: Oxford, UK.
- Contact:
Re: BBC B+ 128K: Fault after warming up.
Pin 8 is always high, as are 9, 10 and 13. Pin 12 has pulses.
Oh, and I've noticed that the video processor is getting pretty warm. (It's a VC2069)
Oh, and I've noticed that the video processor is getting pretty warm. (It's a VC2069)
Last edited by stephen_usher on Sat Mar 30, 2019 12:24 pm, edited 1 time in total.