Fixing a Macintosh Classic with memory issues

hans23

6502
Hello there,

I have a Macintosh Classic that had many different faults, and I'm now at one that I'm not completely sure how to make progress with: The machine has the RAM expansion board with two 1MB SIMMs, so I should have 4MB in total. The system only shows 2MB however. I have tried different SIMMs but the result was identical. Given that the board had some corrosion issues, it is not impossible that there is a broken trace that causes this, but I have checked a couple of things:

My first thought was that A21 would not be connected to the RAM subsystem, causing the lower 2MB to be mirrored to the upper 4MB (assuming that the RAM sizing algorithm works by probing possible RAM locations). I have, however, traced A21 from the CPU to UH6 (74LS174) and can see activity both on the input pin to the latch and also on its output to UL1 (CASPAL)

1768760195823.png

I believe that this means that the problem is either in UL1, or there is something else that I'm missing.

I've also used the ROM diagnostics to check whether I can see writes to the DRAM at 0x00100000 be mirrored at 0x00300000, and that is indeed the case. I had pondered whether I'd be able to capture writes made with the ROM diagnostics at the outputs of UH6, but given that there is a lot of activity on A21, that seems to be difficult and also of limited utility.

If the GALPAL is really gone, I might be able to do Adrian Black's conversion to 4MB on the Motherboard, but I don't have the required RAM chips at hand and before I go that route, I would like to be sure that the PAL is really the issue. Does anyone have any suggestion how I could verify that to be the case?

Thanks!
Hans
 
So probabaly a broken trace somewhere
I would agree, but all traces in the relevant areas are intact. There are a couple things that make me doubt the "broken trace" idea: The machine is working with 2MB without any problems. The address lines are going to UH6 (74LS174) and they show activity there. I also see activity on the output side of that chip on all address lines. Using the ROM diagnostics, I can write to memory in the 2MB that are recognized and see the values mirrored in the 2-4MB address space. I have desoldered the CASPAL so that I can try validating that it works, but I'm not quite sure what to make of pins 6 and 7 which go to the BBU. They are probably inputs and it is not unlikely that the PAL is completely combinatorical, but I'm a little bit out of my depth at this point and am looking for specific knowledge and advice how to continue.
 
You have nobody nearby who has another ram card for a test ? You will be able to troubleshoot if the issue is in the Logic board or ram card.
 
I’ll summarize my findings here again; maybe someone will have an idea:

The system only detects 2 MB when the RAM expansion with 3 MB installed is plugged in, regardless of whether the jumper on the expansion card is set to “SIMM installed” or “No SIMM installed”.

If I remove the SIMMs, the system only starts when the jumper is set to “No SIMM installed”.

If I insert a defective SIMM into one of the SIMM slots, I get a memory error and the system does not start.

The CASPAL, which distributes the CAS signal to the different RAM banks depending on A19, A20, and A21, appears to be working correctly.

When I set the jumper to “No SIMM installed”, I see no CAS signals on the SIMM sockets. When it is set to “SIMM installed”, I see continuous accesses.

Somehow this doesn’t add up:

If a defective SIMM is inserted into the socket, the system doesn’t start at all. From this I conclude that the memory test runs successfully with the non-defective SIMMs and therefore should also detect 4 MB.

On the Macintosh Classic, the video memory is located at the upper end of the detected main memory. Errors are therefore quite easy to see: if a bit doesn’t get through, it results in a vertical line. What doesn’t make sense, however, is that accesses by the video controller to main memory are indicated by a separate signal. This signal is evaluated by the CASPAL and selects the correct RAM bank. When the “SIMM installed” jumper is set, this RAM bank is always in the SIMMs. The SIMMs are therefore being used, are mapped to the upper end of main memory, and are working. Nevertheless, the system only detects 2 MB.

I also know that the RAMs soldered onto the expansion card work, because the system also starts with 2 MB even without the SIMMs installed.
 
Back
Top