Amiga Boot-Up Self Diagnostics


Every time you boot-up your Amiga it starts self diagnostics and the screen changes its color several times until it glows in bright white. But why is that?

During the boot-up, the Amiga goes through a system test. This is a complicated set of routines. The Amiga shows the test results to the user with the help of different colors. If the final color is white, everything went as it should.

This article shows you which tests are performed, which colors can appear, why they may appear and what a blinking LED on the Amiga keyboard has to do with it.

Amiga Boot-Up Self Diagnostics Routine

The Amiga performs a set of complicated routines at boot-up. It starts checking the most basic hardware components, loads and checks the software, and eventually checks for additional devices. At several points in this sequence the screen color changes. If an error occurs at any point, the sequence stops. The color than changes depending on the error. The user can then infer from the screen color what went wrong.

This process makes sure that the Amiga is working as intended. It is also a very clever way to indicate possible errors. The only downside is, that the user has to know what the color means. In case of an error, at least.

The Steps of the Diagnostics Routine

The following sequence shows the self diagnostics routines that the Amiga performs at startup. The sequence is only complete if no error occurs. The screen colors listed here all indicate positive check results, except for the last one.

Step #ActionScreen Color
1Clear all chips of old dataOff
2Disable DMA and interrupts during the test.Off
3Clear the screenOff
4Check Hardware (especially if the 68000 is functioning)Off
5Change Screen colorBlack
6Checksum Test on all ROMsBlack
7Change Screen colorDark Gray
8Begin the System StartupDark Gray
9Check RAM at $C0000 and move SYS_BASE hereDark Gray
10Test all of the Chip RAMDark Gray
11Change Screen ColorLight Gray
12Check that Software is coming in okLight Gray
13Change screen colorWhite
14Set up the Chip RAM to receive dataWhite
15Link the ROM libraries so that connected devices and peripherals can be identifiedWhite
16Check for additional Memory and link it if foundWhite
17Turn DMA and Interrupts back onWhite
18Start a default taskWhite
19Check if there are additional CPUs on the system, accelerators or a math co-processorWhite
20Check to see if the additional CPUs are okWhite
21If an error occurs, do a System RestartOff (due to restart)
Amiga Boot-Up Self Diagnostics Routine

Of course, the last step if the check of additional CPUs is ok. Also note that there may no additional devices to check in the first place.

As you can see, the Amiga performs several color changes on the screen in order to inform about its status. These color codes and the meanings of the colors are described next.

Amiga Self Diagnostics Colour Codes

The OK Sequence

If every test of the boot-up routine passes you should see the following color sequence flashing on your screen.

ColorMeaning
DARK GRAYHardware Tests passed
LIGHT GRAYSoftware Tests passed
WHITEBoot-Up Self Diagnosis passed all Tests
Colors of a functioning Amiga Self Diagnosis Routine

Now your Amiga is ready to go and you will most likely see the legendary hand with a disk image.

Most sources on the web only list these three colors and corresponding meanings for a ok sequence. Please not, that in reality the software tests will be performed after the screen turns LIGHT GRAY.

The Error Codes

If anything goes wrong during the boot-up diagnostics, the color sequence will show any of the following colors. Furthermore the boot-up process will not continue.

ColorError
MEDIUM GREENRAM Chip not found or damaged
REDBad Kickstart-ROM
YELLOWCPU Crash or bad Zorro expansion card
BLUECustom Chip Problem (Denise, Paula or Agnus)
LIGHT GREENCIA (*) Problem
LIGHT GRAYDefective CIA (*)
BLACK WHITE STRIPESCPU, ROM or CIA (*) Problem
BLACKNo Video output
Error Description of the different Color Codes

(*) CIA is the Complex Interface Adapter, an I/O Port controller and Time-of-Day clock

Please note that Light Grey is also listed here. If the systems stops and the screen stays Light Gray, then there is a problem with the CIA.

Some sources also list CYAN as an indicator for a Kickstart error. This is only the case if the Kickstart revision is in the range of 0.x .

Amiga Keyboard Processor Diagnostics

Surprisingly the Amiga Keyboard contains a processor of its own. It has 2K of ROM, 64 Bytes of RAM and four 8 Bit I/O Ports. It also has a so called “Watchdog” timer. It will simply reset the keyboard’s processor if it stops scanning the keyboard for more than 50 milliseconds.

The Keyboard self-test starts as soon as the keyboard is plugged in. In a normal configuration this will be immediately at power on. But there is the possibility that the keyboard is connected to the computer after power on. In this case the Keyboard self-test is immediately started when the connection is established.

Amiga Keyboard Self-Test Routine

The keyboard self-test consists of four steps:

  1. Do a Checksum on all ROMs
  2. Check all RAM
  3. Check Watchdog Timer
  4. Check Computer-Keyboard Synchronization

The synchronization is done by clocking out 1 bit from the keyboard until a handshake pulse from the computer is received. After receiving the pulse, the keyboard sends its self-test results to the computer. The results of a failing test can also be sent without waiting for a handshake pulse.

Amiga Keyboard Self-Test Error Codes

Like the Amiga itself, the keyboard communicates its errors through visual signals. If an error occurs, the LED of the CAPS-LOCK key will blink in one of the following sequences.

Blink CodeError
One blinkKeyboard ROM check failed
Two blinksKeyboard RAM check failed
Three blinksWatchdog timer test failed
Four blinksA short exists in the Keyboard
Keyboard Blink Code Error Descriptions

If one of this errors occurs, you may only have the choice the plug in another keyboard. These are all hardware errors of some sort.

Guru Mediation Errors

There is another type of error. If the system crashes at any time, a Guru Mediation Error appears. You can compare this to the Windows “Bluescreen of Death” or the Unix “Kernel Panic”. As these errors are not related to the boot-up sequence per se, we will not go into much detail here.

For reference make a note that there may be hardware related Guru Mediation Errors as well as Software errors of several kinds. If you get a Guru Mediation Error you have to look up the error code to find out what happened. In this case it is not a color but a hexadecimal number.

Conclusion

So if you still have an old Amiga around and get into trouble while booting it, this codes may hopefully help. Unfortunately won’t most of errors not go away through rebooting or software updates. Most of the time you will have to change hardware of some sort in order to get your Amiga booting again.

This article is a compilation of the information I found about this topic in the web, especially here, here and here (links open external sites in new tabs). Be aware though that not all information on the linked sites is correct and I tried to compile only the correct bits.

Marco Lieblang

Professional Programmer since 2003, passionate Programmer since the mid 90's. Developing in many languages from C/C++ to Java, C#, Python and some more. And I also may know a bit about Assembly Languages and Retro Systems.

Recent Posts