Sad Mac Error Codes: Difference between revisions
No edit summary |
No edit summary |
||
| (2 intermediate revisions by the same user not shown) | |||
| Line 407: | Line 407: | ||
* '''1C00''' — FPU overflow | * '''1C00''' — FPU overflow | ||
* '''1D00''' — FPU signaling NaN | * '''1D00''' — FPU signaling NaN | ||
* '''1E00''' — | * '''1E00''' — PMMU configuration | ||
* '''1F00''' — PMMU illegal operation | * '''1F00''' — PMMU illegal operation | ||
* '''2000''' — PMMU access-level violation | * '''2000''' — PMMU access-level violation | ||
| Line 413: | Line 413: | ||
== Test Manager (Serial Diagnostic Mode) == | == Test Manager (Serial Diagnostic Mode) == | ||
Every Macintosh from the [[Macintosh SE|SE]] onwards exposes a hidden Test Manager over the modem-port | : ''Main article: [[Diagnostic Serial Console]]'' | ||
Every Macintosh from the [[Macintosh SE|SE]] onwards exposes a hidden Test Manager over the modem-port SCC. Connect a null modem cable from the modem port to a host running a serial terminal at 9600 8N1, then send a {{code|*}} to interrupt whatever the machine is doing and enter Test Manager. The trap {{code|_TestManager}} (defined in the same ROMs) provides the same interface programmatically. | |||
Once inside, single-character commands followed by hex arguments and a {{code|*R}} (return / run) drive any test in the table. The two most useful for board-level diagnosis are: | Once inside, single-character commands followed by hex arguments and a {{code|*R}} (return / run) drive any test in the table. The two most useful for board-level diagnosis are: | ||
| Line 420: | Line 422: | ||
* '''Per-ROM checksum''' — {{code|*T000400010000}} on a IIcx/IIci/SE/30 will (because test 04 also covers the four-chip ROM array on those machines) return {{code|R<class><result>0000}} where the result narrows the failure to one of the four physical ROM chips ({{code|0001}}, {{code|0002}}, {{code|0004}}, {{code|0008}}). | * '''Per-ROM checksum''' — {{code|*T000400010000}} on a IIcx/IIci/SE/30 will (because test 04 also covers the four-chip ROM array on those machines) return {{code|R<class><result>0000}} where the result narrows the failure to one of the four physical ROM chips ({{code|0001}}, {{code|0002}}, {{code|0004}}, {{code|0008}}). | ||
The same interface is used by Apple's internal | The same interface is used by Apple's internal MacTest / MacTest Pro / Apple Personal Diagnostics suites. Note that some test commands (notably the full SCSI test) will hang a machine that has a non-functional SCSI chip — be ready to power-cycle. | ||
== Chimes of Death == | == Chimes of Death == | ||
| Line 432: | Line 434: | ||
! Family !! Chime !! Notes | ! Family !! Chime !! Notes | ||
|- | |- | ||
| 128K, 512K, 512Ke, Plus || ''(none)'' || Silent Sad Mac; the original | | 128K, 512K, 512Ke, Plus || ''(none)'' || Silent Sad Mac; the original Andy Hertzfeld 600 Hz square-wave startup-beep generator is the only sound these machines emit, and it never plays on failure. | ||
|- | |- | ||
| SE, SE/30 || Synthesised guitar arpeggio, upward major || First model family to play a death chime; produced by the | | SE, SE/30 || Synthesised guitar arpeggio, upward major || First model family to play a death chime; produced by the Apple Sound Chip | ||
|- | |- | ||
| Macintosh II || Upward major arpeggio with a sharp attack || Distinctive among the II family for its short, percussive opening | | Macintosh II || Upward major arpeggio with a sharp attack || Distinctive among the II family for its short, percussive opening | ||
| Line 454: | Line 456: | ||
| PCI Power Macs (7500, 7600, 8500, 9500, beige G3, G3 AIO, PowerBook 2400/3400/G3) || Popping and glass-shattering || These machines do not display a Sad Mac icon — chime only | | PCI Power Macs (7500, 7600, 8500, 9500, beige G3, G3 AIO, PowerBook 2400/3400/G3) || Popping and glass-shattering || These machines do not display a Sad Mac icon — chime only | ||
|- | |- | ||
| iMac (1998) and later || ''(no chime — beep codes only)'' || See | | iMac (1998) and later || ''(no chime — beep codes only)'' || See Mac Beep Codes for the post-Sad-Mac diagnostic indicator scheme | ||
|} | |} | ||
Stephen Hackett's [https://512pixels.net/2021/04/mac-chimes-of-death/ 512 Pixels] page hosts high-quality recordings of each variant. The decoder gadget on this wiki can play each chime in your browser via the Web Audio API for direct A/B comparison without leaving the page. | |||
=== Slow chimes (24-bit-ROM cadence) === | === Slow chimes (24-bit-ROM cadence) === | ||
| Line 469: | Line 471: | ||
A common [[Macintosh SE/30|SE/30]] failure mode is known as '''Simasimac''' (Japanese ''shima-shima'' "stripes" + Mac), in which the screen shows alternating vertical stripes at power-on with '''no chime''' and '''no Sad Mac'''. Because the CPU never reaches the point of checksumming ROM and drawing the failure screen, this is not technically a Sad Mac fault at all — it is a more upstream failure. | A common [[Macintosh SE/30|SE/30]] failure mode is known as '''Simasimac''' (Japanese ''shima-shima'' "stripes" + Mac), in which the screen shows alternating vertical stripes at power-on with '''no chime''' and '''no Sad Mac'''. Because the CPU never reaches the point of checksumming ROM and drawing the failure screen, this is not technically a Sad Mac fault at all — it is a more upstream failure. | ||
The cause is almost always corroded traces and via stitching from leaking surface-mount | The cause is almost always corroded traces and via stitching from leaking surface-mount electrolytic capacitors on the logic board, particularly around the [[Glue Logic|GLU]] ASIC and the ROM SIMM socket. Common diagnostic steps: | ||
# Remove the logic board and inspect under good light — even small green/black halos around capacitor pads are evidence of leakage. | # Remove the logic board and inspect under good light — even small green/black halos around capacitor pads are evidence of leakage. | ||
| Line 475: | Line 477: | ||
# Recap with quality polymer or tantalum replacements; the original wet-electrolytic capacitors are at end-of-life on every SE/30 still in existence. | # Recap with quality polymer or tantalum replacements; the original wet-electrolytic capacitors are at end-of-life on every SE/30 still in existence. | ||
# Reseat the ROM SIMM with contacts cleaned with isopropanol and a fibreglass pen. | # Reseat the ROM SIMM with contacts cleaned with isopropanol and a fibreglass pen. | ||
# Check continuity from the | # Check continuity from the 68030 data lines through the GLU to the ROM SIMM socket. Lifted vias here are common. | ||
If the machine then chimes but produces a Sad Mac, treat it as a normal expanded-format diagnosis from that point. | If the machine then chimes but produces a Sad Mac, treat it as a normal expanded-format diagnosis from that point. | ||
For full procedure see [[Macintosh SE/30 Recap Guide]] and [[Macintosh SE/30 Troubleshooting]]. | For full procedure see [[Macintosh SE/30 Capacitor Replacement Guide|Macintosh SE/30 Recap Guide]] and [[Macintosh SE/30 Troubleshooting]]. | ||
== Deliberately Triggering a Sad Mac == | == Deliberately Triggering a Sad Mac == | ||
| Line 485: | Line 487: | ||
A Sad Mac can be generated on purpose for testing the display path or capturing a screenshot: | A Sad Mac can be generated on purpose for testing the display path or capturing a screenshot: | ||
* Press the | * Press the Programmer's Switch (NMI button) before the Happy Mac appears. This produces a Sad Mac with subcode '''000D''' ("NMI — normal indication"). On machines without a fitted programmer's switch (most never had one installed by default), {{code|Cmd-Power}} shortly after the startup chime produces the same effect. | ||
* On the | * On the PowerBook 540c and several other PowerBooks, {{code|Cmd-Power}} pressed before the boot screen plays the Chimes of Death (sometimes at a strange speed) without drawing a Sad Mac. | ||
These are not failure indications and should not be confused with a real diagnostic event. | These are not failure indications and should not be confused with a real diagnostic event. | ||
| Line 493: | Line 495: | ||
* '''Always cross-reference Sad Mac codes with physical inspection.''' On any compact Mac old enough to have wet-electrolytic SMD capacitors ([[Macintosh SE/30|SE/30]], [[Macintosh Classic II|Classic II]], [[Macintosh Color Classic|Color Classic]], [[Macintosh LC|LC family]], [[Macintosh Quadra 605|Quadra 605]], etc.), capacitor leakage is the single most common cause of any of the codes on this page and will produce false positives across multiple subsystems. | * '''Always cross-reference Sad Mac codes with physical inspection.''' On any compact Mac old enough to have wet-electrolytic SMD capacitors ([[Macintosh SE/30|SE/30]], [[Macintosh Classic II|Classic II]], [[Macintosh Color Classic|Color Classic]], [[Macintosh LC|LC family]], [[Macintosh Quadra 605|Quadra 605]], etc.), capacitor leakage is the single most common cause of any of the codes on this page and will produce false positives across multiple subsystems. | ||
* '''Use caution with bench diagnostics.''' Running the full SCSI test ({{code|*T008800010000}}) on a board with a damaged | * '''Use caution with bench diagnostics.''' Running the full SCSI test ({{code|*T008800010000}}) on a board with a damaged NCR 5380 can latch the bus and require a power cycle. Some tests can also write to PRAM — clear PRAM ({{code|Cmd-Opt-P-R}}) after extensive testing. | ||
* '''The codes are register dumps, not error names.''' If a published table contradicts what you're seeing, prefer first the value you can read off the machine, then the [[#Test Manager (Serial Diagnostic Mode)|Test Manager]] output over serial, and only then any third-party table. Apple's own | * '''The codes are register dumps, not error names.''' If a published table contradicts what you're seeing, prefer first the value you can read off the machine, then the [[#Test Manager (Serial Diagnostic Mode)|Test Manager]] output over serial, and only then any third-party table. Apple's own Developer Notes for the Portable are known to contain transcription errors that have propagated to most reference sites. | ||
* '''The format does not directly apply to [[New World ROM]] machines.''' The original [[iMac G3|iMac]] (1998) and later use audio beep codes ( | * '''The format does not directly apply to [[New World ROM]] machines.''' The original [[iMac G3|iMac]] (1998) and later use audio beep codes (Mac Beep Codes) rather than Sad Mac. PCI Power Macs sit in an awkward middle ground — they play the [[#By family|"glass shattering" Chime of Death]] but draw no icon. | ||
== See also == | == See also == | ||
* [[Macintosh SE/30 Troubleshooting]] | * [[Macintosh SE/30 Troubleshooting]] | ||
* [[Macintosh SE/30 Recap Guide]] | * [[Macintosh SE/30 Capacitor Replacement Guide|Macintosh SE/30 Recap Guide]] | ||
* [[Macintosh Quadra 605 Troubleshooting]] | * [[Macintosh Quadra 605 Troubleshooting]] | ||
* [[Macintosh Plus Troubleshooting]] | * [[Macintosh Plus Troubleshooting]] | ||
* [[Sad Mac Decoder]] — interactive lookup tool on this wiki | * [[Sad Mac Decoder]] — interactive lookup tool on this wiki | ||
* [[ | * [[Macintosh Old World ROM|Old World ROM]] | ||
== References == | == References == | ||
| Line 526: | Line 525: | ||
[[Category:Apple Troubleshooting Guides]] | [[Category:Apple Troubleshooting Guides]] | ||
[[Category:Troubleshooting Guides]] | [[Category:Troubleshooting Guides]] | ||