Now, you
mention that the ROM version is not what you'd expect. I assuem
this ROM versions is displayed on the CRT -- that is it somehow involves
reading the ROM. If the ROM was corrupted, then it moight report the
wrong version.
Yes, that did cross my mind too Tony. But the serial number on the ROM
doesn't correspond exactly to the serial number I've seen on the web for an
H/88 ROM chip so ...who knows. It's certainly a possibility though.
Using your logic probe, check the address and
(especially) the data lines
on that. Are any stuck high or low?
Well, A9 does seem to be at a steady voltage of about 4V whereas all the
other address lines are a wave. This is suspicious. I'll measure it again
just to make sure.
May be a problem, may not. 4V is a TTL high, of course, but it's not a
short to the 5V line (well, if the 5V line reads 4V, you have other
problems :-)). It's entirely possible that the code is running from an
area of ROM where A9 is always high, and accessing memory/I/O devives
where A9 is always high.
Is there any way you can get a dump of a
known-good disk cotroller ROM?
If so, eitehr burn it into an EPROM and replace your firmware ROM, or
compare it with a dump of your ROM.
Not currently. There may be a ROM dump out there someone. I haven't looked
It would be well worth trying to do this.
hard yet. I have bought an EPROM burner but
haven't used it yet. It might
allow me to compare or at least view the code. Bear in mind this is still a
steep learning curve for me. I'm not sure these modern EPROM burners can
read or burn the equivalent of old ROMS like this without some hardware mods
along with it, but I can investigate.
Reading a strange EPROM is a lot easier than programming it :-). Once you
get to +5V only EPROMs (anything after the 2716, basically [1]), then
they all read in much the same way. So it should be fairly easy to make
up an adapter to read, say, a 2716 in a programemr that will only do
2764s and larger. Making it program the 2716 is a bit harder.
[1] Yes, there wasa 2758 (I think), a sort-of half-good 2716. It's not at
all common, and I doubt you'll come across it
However, it's also quite easy to use a 2764 in place of a 2716 in the
actual machine. What I normally do is make an adapter that will plug into
the oriignal EPPROM socket and will tkae the 2764. Most pins just
connect across, you need to connect the higher address lines on the EPROM
to ground (do this on the adapter, of course). Then program the ROM image
into the first section of the larger EPROM, and it should work fine.
It seems that most of the evidence so far, does point to the ROM, although
not exclusively.
I sseem to remeber that one of the other people here said the error could
be caused by a number of things, one of which was that the shared memory
had not been released (in hardware) so the 53~68000 can access it. I
think that would be something quite easy to check (let me take another
look at the schematics). Of course why it's not being released could well
be due to problems with the ROM.
-tony