drogon wrote:
I'm thinking that a RAM (or board) fault like this would likely cause the whole system to crash
I too was struck by that thought. In particular, how is it possible for the KIM firmware to successfully return from a subroutine??
But I gather from the lead post that the problem can't exactly be described as bad bits in RAM. Instead, it appears that address line A3 is stuck high or stuck low inside RAM chip U-9. (Perhaps a bond wire has broken off, but the reason isn't important.) The CPU can
ask for access to 1024 different bits but the chip responds by accessing only 512 of the bits, because address line A3 is being ignored. Or, as blogmywiki put it,
blogmywiki wrote:
If I load 00 into the first 16 memory locations, then load 08 into location 0000, location 0008 becomes 08. If I load 08 into location 0001, location 0009 becomes 08. Trying this with other values suggests loading any value with an 8 in it (binary 1000) adds 8 to the value held in memory location 8 places later.
This implies a degree of tolerance. Subroutines can successfully execute as long as they aren't nested more than four levels (8 bytes) deep! But if it had been A0 that failed then the system would be DOA.
blogmywiki wrote:
I'm very reluctant to try to replace a faulty chip for fear of messing up a piece of vintage hardware, so I am interested to learn more about connecting external modern RAM.
Hmmmm. Well, it's fairly straightforward to add external RAM using the Expansion Connector. But in order to inhibit the on-board RAM I suspect (I need to verify this) it'll be necessary to cut one or two traces on the PCB. If so then your "vintage hardware" will no longer be pristine. And it's already compromised anyway due to the RAM problem, so my feeling is you may as well replace U-9. But the decision is yours.
How are your construction skills? If you do build a board that attaches to the Expansion Connector then I'd suggest making it bigger than the RAM requires. Then later you could use the extra space to put in a 65C22 or some other goodies!
-- Jeff
_________________
In 1988 my 65C02 got six new registers and 44 new full-speed instructions!
https://laughtonelectronics.com/Arcana/ ... mmary.html