On 7/15/06, Jules Richardson <julesrichardsonuk at yahoo.co.uk> wrote:
Swapping RAM banks doesn't help, either.
OK... that means either the RAM is OK or the zero-page sockets are bad
or the problem is somewhere else.
CPU reset and clock(s) seem OK on the 'scope.
There looks to be activity on
the various RAM /CS lines, too.
That's a good sign.
One strange thing: I pulled the character generator
ROM, expecting that doing
so would either give me a completely white or completely black screen. It
doesn't - I get some white blocks and some black blocks at random on the
display. I admit to not yet understanding what the PET's doing with its
display circuitry, but I had expected that having no ROM there would result in
every character having the same value, so regardless of what happened to be in
the video RAM at power-up I'd get the same character at every screen location.
In the PET, unlike, say, the C-64, reverse video is done in
*hardware*. If the high-bit is set in video RAM, the video circutry
inverts the values fetched from the chargen ROM. The only thing in
the CHARGEN ROM is a "normal video" copy of the character set (as
opposed to the C-64 and ilk that have a full 256-char character set in
ROM).
The symptom you are describing is perfectly typical. The test,
honestly, isn't all that revealing. If you see the random garbage
characters at power-on, then you are probably accessing the CHARGEN
ROM just fine. The CPU can't see that one (it's not mapped anywhere
for the 6502), just the video circuit.
I would say that it's possible you have a corrupt/dead ROM (yes, it
happens), bad ROM or RAM sockets, or possible you swapped bad RAM for
bad RAM. It's also possible that one or more of the TTL glue chips is
bad or you could even have a shorted or corroded trace somewhere in a
critical path.
Given a recent 2001 repair on the cbm-hackers list, I'd recommend
pulling the board and going over it visually. Look for any repair
areas where it's more likely that something is awry. It's a 2-layer
board - you might even consider holding it over a light and seeing if
there are any obviously cracked traces or other mechanical damage.
In any case, I'd say one of the first things to consider replacing
would be the zero page sockets. After that, if you can find a
compatible pinout or make a pinswabber, check the contents of the
ROMs. I wouldn't worry about bit-for-bit comparisons on a first pass
- just see that you can read them at all. When I had a ROM failure in
my 2001-32K (U.S. 3032), the ROM just plain didn't read out. Totally
dead. Chances are, if it reads at all, the contents are fine.
-ethan