<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>
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
<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>