Apple Internal Diagnostic Routines
The Apple IIgs has a fairly extensive inbuilt diagnostic program that is easily accessed at power up by holding the Open-Apple & Option keys when turning on the power, or at any time when pressing Control – Open-Apple – Option – Reset.
1 ROM Checksum $FF/7CAE
2 RAM 1 — Moving Inversions $FF/776C
3 Softwitches and Status Reg. $FF/7A58
4 RAM Addressing $FF/7F54
5 Speed (Fast Processor Interface) $FF/7AF7
6 Serial Test $FF/7902
7 Clock $FF/7CFA
8 Battery RAM (BRAM) $FF/7DD3
9 Apple Desktop Bus $FF/7EC9
A Shadow Register $FF/7D5F
B Interrupts $FF/7B3C
A failure of any of these tests is indicated by an error code on the screen and a high pitched tone. While the tests are executing, the border color changes as the test cycles both internally, and to the next test sequence.
Some commentary about failures:
Test 1 – A ROM checksum failure would indicate that the onboard ROM chip has failed, and while this is pretty rare, anything is a possibility. But in actuality, if the ROM were to fail in such a manner it’s more likely that it would simply not work at power up. The fix here, get another ROM perhaps, but if you have one, you probably have a motherboard – swap the the whole thing, if you know that other one is good.
Test 5 – Speed Test, a failure here usually means the computer is unpredictable to not usable, as many peripherals depend in set speeds and other areas can run faster, part of the FPI function is to regulate processor speed, as it’s name implies, for what needs fast and what needs slow. If this is not working, .. you can see where that can lead.
Test 6 – Serial Test, these test the internal function of the serial port and should be done without anything hooked to either serial port. A failure here usually means you’re out of luck as the components are all soldered.
Test 7 – Clock, if the clock battery is bad this test will not fail, but rather if you have issues here it’s generally that the onboard RTC (Real Time Clock) circuit has ceased to function properly. Most of the time this results in a stuck clock. But I have seen a few where it fails yet software still works just fine.
Test 8 – BRAM, an error with Battery RAM usually means that the RAM area used has gone bad, but could also mean the contents are scrambled up. This can usually be cleared up by holding down Control – Closed-Apple – Reset, and then picking “Set System Standards – xxHz” where the 60 or 50 Hz option that is proper for your locality/electricity network. US, Tokyo, other parts of North America would be 60 Hz, and Europe, Australasia, Asia and the southern half of Japan are usually 50 Hz. NTSC TV is 60 Hz, PAL, SECAM are 50 Hz.
Test 9 – ADB, an Apple Desktop Bus failure could be attributed to the mouse, keyboard or other ADB peripheral plugged in as well. If you have this, try the tests with just the keyboard first, or another keyboard. If it persists you’ll probably be replacing the motherboard.
Test B – Interrupts, an interrupt at the level this test is concerned with is a type of asynchronous (meaning, one sided, on it’s own) signal internal to the functioning of the computer. The disk drive is ready to be used, or memory can be read now, or keyboard input is acknowledged. If there is a failure here you might not notice anything and be able to use the computer, but chances are good that any intense use will probably result in unwanted behavior.
Apple //e – Original Release (1982)
The original Apple //e has an inbuilt diagnostic routine that really doesn’t give you much in the way of usable information, just that “everything is okay” when it passes. Generally, if the machine comes on, it’s usually going to work. Otherwise a failure might just be IMU, MMU, etc. and that usually refers to one of the custom ICs. Generally, swapping that IC fixes the problem. A motherboard that passes all it’s tests will have KERNEL OK on the screen at the end.
Apple //e – Enhanced
The Enhanced //e added a little more to the diagnostic routine in the way of what information it gives at any particular failure, but is similar to the original //e except it can now tell you which RAM chip is bad, by putting zeros and 1s with asterisks as an indicator, and when the test terminates it will say “System OK” in the middle of the screen.
Apple //c – Original Release (1983)
The original //c has some very rudimentary looping test sequence in ROM that really doesn’t tell you much. If it runs a pattern with an alternating screen cycle, and clicks, and keeps doing it, usually … that machine is working. I know, really helpful there..
Apple //c – Enhanced (1985), and IIc Plus
The Enhanced //c,, with UniDisk 3.5″ support and further models of the //c as well as the IIc Plus all have a test sequence that is similar to the Enhanced Apple //e, and will tell you about a custom IC failure or the RAM.
General notes for the 8 bit Apple II’s
The newer Apple //e and //c motherboards use 4 bit deep RAM, instead of 1 bit RAM, and that means that the newer ones will have only TWO RAM chips in the case of the //e, and four for a //c or IIc Plus. The diagnostic routine will still tell you as if it had 8 chips onboard. If the failure is any of the first four, it’s the lower RAM chip in the bank in question, and the upper, would be the higher.
Apple //e and //c motherboards with soldered RAM can be tricky to remove them. The PCB construction is fairly fragile with respect to the through-holes and pulling out leads. A dirty trick with RAM is, if the RAM chip has failed “open”, it can be ‘repaired’ simply by piggy-backing a working chip on top of it. This is one way of quickly testing before actually replacing them. Just use a known good chip, with it’s leads squeezed together tightly, and place it on top of the suspect bad one. If the test continues to fail you either do not have the right one, or the RAM is failed in a closed/written state and will have to be removed.
Many failures can be attributed to connection issues and are solved by re-seating the socketed chips. One way I do this is just to take the palm of your hand and ‘mash’ down on all the exposed chips. You will hear creaking, cracking, screeching, sounds. Thats okay. Do that and then try it again.
Another failure is also the power supply connector. Simply removing and replacing the connector from the motherboard several times can be all that is needed. In the case of the IIgs, it may need to be cleaned as this type of connector is very susceptible to corrosion.
General notes for the Apple IIgs
In addition to as noted above with the power supply connector, another ‘popular’ IIgs problem is the metal shielding inside the lower half of the case actually starts to interfere with the operation of the computer. One of the first things I do when having issues with the IIgs may be to remove the motherboard from the case and run the whole thing on the table. Especially if I see traces of rust when opening the case. If this proves to be the issue, you can remove the metal or find a paper grocery bag and cut out a piece the size of the motherboard and place it into the case, poking through all the mount points and then return the motherboard to the case.
The Apple /// has some internal diagnostic tests that are run every time the computer is turned on, and can be somewhat cryptic, but the most popular one is that the computer will fail if the keyboard lightbulb is missing or blown. The Apple /// will also inform you about RAM and logic failures, but you will need some documentation to get to the root of the problem.
In addition, the general notes for the 8 bit Apple II’s can also be applied here with regards to loose or corroded connections on IC’s and the connectors.