Diagnostic Serial Console
The Macintosh Plus, SE and SE/30 feature a built-in diagnostic console accessible via a serial connection, which can be used for detailed hardware troubleshooting. Originally designed for use with specialized Apple diagnostic tools, this diagnostic mode can also be accessed via a standard serial connection using software such as PuTTY or similar serial terminal programs. Adrian Black's spreadsheet on this topic provides the most useful breakdown of how to use the diagnostic console Macintosh Diagnostics / Test Manager
Connecting to the Diagnostic Console
[edit | edit source]Connect your Macintosh to another computer using a serial cable:
- Set your serial terminal (such as PuTTY) to the following:
- Baud Rate: 9600
- Data bits: 8
- Stop bits: 1
- Parity: None
- Once connected, restart your Macintosh while holding the interrupt switch or issuing an interrupt command to enter diagnostic mode.
Commands & Tests
[edit | edit source]Below are detailed descriptions and commands for running specific diagnostic tests:
Command | Test Description |
---|---|
*T |
Runs preprogrammed diagnostic tests. Use with specific codes to run targeted tests. |
*T0000 | No operation (null test) |
*T0001 | ROM Checksum – Verifies ROM integrity. Errors indicate corrupted or damaged ROM. |
*T0002 | Small RAM Chunk Test – Checks initial RAM area for immediate failures. |
*T0003 | Full RAM Test (Bank B) – Tests full Bank B RAM after small chunk passes. |
*T0004 | Full RAM Test (Bank A) – Checks the second RAM bank thoroughly. |
*T0005 | Address Line Test – Verifies RAM addressing and unique addressing capability. |
*T0006 | VIA1 Access Test – Checks the proper operation of VIA1 chip. |
*T0007 | VIA2 Access Test (Mac II only) – Checks VIA2 chip operation. |
*T0008 | Front Desk Bus Test – Verifies access to Front Desk Bus components. |
*T0008 | MMU Access Test – Tests access to the Memory Management Unit. |
*T0009 | NuBus Access Test – Ensures NuBus communication is functional. |
*T000A | SCSI Chip Test – Confirms proper operation of SCSI controller. |
*T000B | IWM Chip Test – Verifies floppy drive controller functionality. |
*T000C | SCC Chip Test – Tests Serial Communications Controller for proper operation. |
*T000D | Data Bus Test – Validates data bus functionality, identifying bit faults. |
Custom Non-Critical Tests
[edit | edit source]Non-critical tests use a different format:
Format: *TXXY
- XX = Hexadecimal test number
- Y = Number of repetitions
Example: *T841
runs test 0x84 once.
Hex Code | Test Description |
---|---|
80 | Video RAM Test – Tests VRAM operation (Macintosh II). |
81 | Video Interface Test – Checks functionality of video hardware interface. |
82 | VIA Test – Comprehensive VIA chips test. |
83 | SCSI General Test – Tests general SCSI functionality. |
84-86 | SCC (Serial Communications Controller) Tests – Checks serial communications. |
87 | SCSI General Test – General SCSI device communication test. |
88 | Sound Test – Verifies audio hardware function. |
Interpreting Response Codes
[edit | edit source]The console returns hexadecimal response codes:
Response Code | Meaning |
---|---|
020004030000 |
Test-specific failure indication (consult specific test for details). |
020004030000 |
Data Bus Error accessing RAM. |
0F000D | NMI button pressed during boot (normal indication). |
RAM Chip Identification (Subcode Explanation)
[edit | edit source]For memory tests, subcodes identify specific faulty chips:
Data Bit | Chip Location | Subcode Bits (Hexadecimal) |
---|---|---|
0 | F5 | 0001 |
1 | F6 | 0002 |
2 | F7 | 0004 |
3 | F8 | 0008 |
4 | F9 | 0010 |
5 | F10 | 0020 |
6 | F11 | 0040 |
7 | F12 | 0080 |
8 | G5 | 0100 |
9 | G6 | 0200 |
10 | G7 | 0400 |
11 | G8 | 0800 |
12 | G9 | 1000 |
13 | G10 | 2000 |
14 | G11 | 4000 |
15 | G12 | 8000 |
Important Notes
[edit | edit source]- Not all diagnostic tests work on every model; compatibility varies with ROM version.
- SE/30 and other 256k ROM Macs do not support certain diagnostic commands listed here.