Sad Mac Error Code Decoding - Identification of Bad RAM?

chrisrueckert

New Tinkerer
Jan 10, 2023
10
1
3
So my Portable was re-capped and now boots with this sad Mac error:

00000003
0000FF00

Following the instructions in this thread I followed the diagnostics checks by connecting the Portable's modem port to another Mac and ran Zterm with the following commands and results in an attempt to identify which RAM chip is defective:

---
1. First 256k

*S
*A
*4
*0 0000000
*1 0003FFFF
*T 000600010000
*R

Result:
*ERROR**ERROR**T
001000000000*R

2. 256k - 512k

*S
*A
*4
*0 00040000
*1 0007FFFF
*T 000600010000
*R


Result:
*ERROR**ERROR**T
001000000000*R

3. 512k - 768k

*S
*A
*4
*0 00080000
*1 000BFFFF
*T000600010000
*R

Result
000000000000*R

4. 768k - 1024k

*S
*A
*4
*0 000C0000
*1 000FFFFE
*T 000600010000
*R

Result:
*ERROR**ERROR**T
001000000000*R

---

What is the conclusion of these results? How can I now conclude which RAM chips need to be replaces? I hope I wrote the HEX numbers correctly to test the respective RAM ranges.
 

SuperSVGA

Tinkerer
Mar 26, 2022
64
34
18
Assuming you're on the M5120, you're currently testing 8 chips at a time. You may need to test smaller ranges.


Here is a table of memory ranges for the 32 RAM chips. Note the repeating values because B through E are for the low byte and F through J for the high byte.
1234
B00000000 - 0000FFFF00010000 - 0001FFFF00020000 - 0002FFFF00030000 - 0003FFFF
C00040000 - 0004FFFF00050000 - 0005FFFF00060000 - 0006FFFF00070000 - 0007FFFF
D00080000 - 0008FFFF00090000 - 0009FFFF000A0000 - 000AFFFF000B0000 - 000BFFFF
E000C0000 - 000CFFFF000D0000 - 000DFFFF000E0000 - 000EFFFF000F0000 - 000FFFFF
F00000000 - 0000FFFF00010000 - 0001FFFF00020000 - 0002FFFF00030000 - 0003FFFF
G00040000 - 0004FFFF00050000 - 0005FFFF00060000 - 0006FFFF00070000 - 0007FFFF
H00080000 - 0008FFFF00090000 - 0009FFFF000A0000 - 000AFFFF000B0000 - 000BFFFF
J000C0000 - 000CFFFF000D0000 - 000DFFFF000E0000 - 000EFFFF000F0000 - 000FFFFF


If you end up seeing the same data bit bad across multiple chips but not all of them (looks like bit 4), you may have a bad trace in the RAM area for that data line.
 

chrisrueckert

New Tinkerer
Jan 10, 2023
10
1
3
Thanks. How can I test chip 1B and 1F? If I understood it right, the test command would look the same for both, wouldn't it?

*S
*A
*4
*0 00000000
*1 0000FFFF
*T 000600010000
*R

Edit: And more importantly: How could I distinguish which one might be defective?
 
Last edited:

SuperSVGA

Tinkerer
Mar 26, 2022
64
34
18
Since they are 8-bit chips on a 16-bit bus, the two chips will be in the same address range.

The error result it gives should be the bad bits. Convert the first four characters of the result from hexadecimal to binary, and the 1s will represent bad bits, starting from bit 0 on the right.