Date : Tue, 13 Sep 2005 17:28:19 +0100
From : Richard Gellman <splodge@...>
Subject: Re: 2nd processor fault finding
Rob wrote:
> Hi All,
>
> OK I was lucky enough to pick up a 6502 second processor off ebay. It
> came as a board only; no PSU or cables.
>
> My problem is I can;t get it to work... I've made a ribbon by cutting
> down an old 40 conductor IDE cable, but when the board is connected to
> the beeb, it locks up.. (specifically, a B presents no display and a
> constant beeb, and a Master boots up fine, but locks up with no
> keyboard input accepted.)
>
> I've tried it with the 2P powered on and off. I've even swapped the
> tube ULA and swapped it with the one on a Master internal 6502, and it
> worked in there. The odd thing is I get the same symptoms with the
> tube ULA removed from the board, when my reading of the circuit
> diagram indicates that nothing on the ribbon connects anywhere else!
> The ribbon alone connected to a beeb doesn't affect it at all, which I
> would have thought it would if it were a problem with the cable. I'm
> presuming I only need a straight through cable..?
>
> Any clues anybody, or shall I get back onto the seller - he did
> advertise it as working.
>
> Rob.
Yes, the cable should be straight through. Its interesting to note the
lack of keyboard response - since the TUBE connector shares no lines
with the slow peripheral bus (of which the keyboard shares with other
devices). If this is a definite fault, I would investigate the BBC
Master circuit board as well.
It is correct that the ribbon cable should connect to the TUBE ULA only.
To clarify, a BBC with a 2nd processor is basically two computers
talking to one chip. The I/O Processor sits on one side (The BBC Main
unit) and the 2nd processor on the other. The 2nd processor lets the BBC
micro know it wants to do I/O stuff by transferring data "across" the
TUBE. This works by the 2nd processor writing to its side of the TUBE,
at which point the TUBE ULA notifies (either by IRQ, or by I/O Processor
polling, depending on mode) the other side of available data, which then
reads it from its connector.
This has the interesting result that the TUBE ULA has two sets of buses,
one for each processor. As you'd expect, this means the ribbon cable
from the BBC micro connects only to the TUBE ULA.
The 2nd processor will need to be powered, as the TUBE bus does not
contain enough power to drive all the chips (CPU, TUBE ULA, TubeOS ROM,
RAM, Logic) on the 2nd processor board. Other things that may be
contributing to the problem:
Badly connected/faulty logic chips - These do more than address
decoding. The 2nd processor has a curious habit of copying itself to
itself until it attempts to access the TUBE ULA. To explain, the logic
means that initially reads come from the TubeOS ROM, and writes go to
RAM. On the first read of the TUBE ULA, reads come from RAM. The upshot
of this is that you can replace the TubeOS ROM in its entirety with your
own code (though few people ever did).
The RAM chips - many! These are obviously essential to operation,
specifically those for the high end of RAM, where the TubeOS is copied.
TubeOS ROM.
I'd check both the 2nd processor board in its entirety, and the BBC's
mainboard around the TUBE connector, for any pin damage, track damage,
short circuits, etc.
-- Richard