Tony Duell wrote:
Having done that sort of thing many, many times,
all I'll say at this
point is that man-made faults are the worst to trace. Remind me to tell
you sometime the story of the Epson QX10 graphics board that gave garbled
displays after srolling, even though :
All the components on the board were working correctly
There wwre no bad connections, broken tracks, dry joints
The links were set correctly
There were no missing components
Go on, then... ;-)
OK, here's the explanation (and why I think it was a man-made fault).
I bought a pair of QX10s at a radio rally, one working, the other for
spares. Of course I had to find out what was wrong with the second one...
The problem, as I mentioned was that the display was corrupted after a
screen scroll.. And the fault was clearly on the graphics board.
So I looked at that. It contains a 7220 graphics processor, 16 DRAMs, a
bit of TTL, and a gate array (early versions had more TTL + charcter
generator EPROM in place of this, alas mine are the later version)
Now the DRAMs can eitehr be 4116s (giving 16K*16 video RAM) or 4164s
(giving 64K*16). There are some links on the board that you set depending
on which RAMs are installed, 3 of them select the signals on the 3 pins
that are different between 4116s and 4164s : Pin 1 is either -5V or not
connected; Pin 8 is either +12V or +5V, and pin 9 is either +5V or an
address line. They were all set correctly.
And the board basically worked. The display at boot-up was sane.
Suspecting a RAM problem, I put in a complete new set of 4164s -- no
change. And I tried the other socketed parts -- the 7220 and the gate
array, in the working machine -- they were fine too. And all the TTL
checked out. Oh yes, the power lines were fine too.
After a lot of thinking, I spotted it. Pin 9 on the DRAMs was a power
line on 4116s, and had decoupling capacitors on it. 8 (or maybe 16) 0.1uF
disk ceramics to ground. Needless to say, when 4164s were fitted, and it
bacame an address line, the poor little TTL chip that was driving it
hadn't a hope of switching it fast enough with that sort of capacitive
load. At boot up, this extra address line was always low (I think,
anyway, it didn't have to switch), so everything was fine, after
scrolling, it had to switch during the memory cycle, couldn't manage it,
and thus the memory was not addressed correctly
After removing the 'extra' capacitors, it worked fine. Be warned that
these were not shown in the technical manual I have (which is why it took
me so long to realise what was going on).
My guess is that originally the board had been fitted with 4116s. Either
one had failed, or the owner had wanted more video memory, and had done
the conversion to 4164s, but hadn't removed the caps. The board behaved
oddly, the machine was offloaded to me at the rally...
-tony