On Wed, Sep 7, 2016 at 8:35 AM, Noel Chiappa <jnc at mercury.lcs.mit.edu> wrote:
From: Ethan
Dicks
What's happening now . is when I change one
location .. it
echoes across multiple locations...
...
1) Depositing any value is echoed 000020 later.
...
Does this sound like a dodgy CPU, dodgy RAM or both?
It could be either. One possible cause of the symptoms you're seeing is that
address line A04 on the bus is being held to one value (high or low) by
something on the bus, so that whether the CPU tries to set it to 0 or 1, it
has no effect. Also, of course, there could be some fault in the CPU, so that
when it tries to do something with address 0, it gets 020 (or vice versa).
And similarly for the memory.
I'd try to write a small (two instruction) loop that sets that address line
high/low (e.g.:
5037 CLR @#1020
1020
775 BR .-4
and look and see if that address bit is flickering on/off on the UA11 (it will
be on, but dully; constant assertion is bright on, constant de-assertion is
full off). If so, the problem is almost certainly in the memory; if not, it
could be either.
Once I get the console ODT to show up again, I will try that.
Something appears to have died while I was powered-on and testing last
night and now, the run light goes off right away after hitting boot,
and I don't see the address lines or the data lines flickering.
2) Setting D10
in location 000000 results in D10 set in all the
locations
Sorry, didn't follow that? Did you mean that if you store 02000 in location
0, all other locations now report the 02000 bit set?
Only 04000, but, yes. If I set that bit in location 0, or other
locations, it gets set in all locations. If I clear that bit, it
clears.
I won't be able to enter 5037 / 1020 / 775... it will read back as
1037 / 1020 / 775 based on my previous work (depositing 1020 will
"turn" 5037 to 1037...)
-ethan