Amiga problems: screen colors and their meaning (errors)
When you boot up your Amiga you are always greeted with a series of flashing screen colors. On most days the screen will change from dark gray to a couple lighter shades then white before marching on. On bad days, it flicks over to an actual color of the rainbow, each with its own heart-stopping meaning.
What do those colors mean? And what is the Amiga doing during the boot-up process in the first place?
The following is a collection of ancient and excellent information compiled from various sources.
During boot-up, the Amiga is going through a series of system checks and routines.
- Clear all chips of old data
- Disable DMA and interrupts during the selftest.
- Clear the screen.
- Check the hardware ….checks to see if 68000 processor is working.
- Change screen color.
- Do a checksum test on all ROMS.
- Change screen color.
- Beginning of system startup.
- Check RAM at $C0000 and move SYSBASE there
- Test All CHIP RAM.
- Change screen color.
- Check that software is being executed.
- Change screen color.
- Setup CHIP RAM to receive data.
- Link the libraries
- Check for additional memory and link it (FAST RAM)
- Turn the DMA and interrupts back on.
- Start a default task.
- Check for 68010, 68020, 68881 or other processor upgrades (accellerator / math co processor).
- Check to see if there is an exception or processor error
- If so do a system reset.
During this system test the Amiga is sending vital information to the screen with colors. If the system checks out ok, you will see the following sequence that you have seen so many times.
DARK GRAY: The initial hardware tested OK. the 68000 is running and the registers are readable.
LIGHT GRAY: The software is coming in and seems OK.
WHITE: The initialization test have passed and the system is ready to boot.
The failure mode screen colors:
- Turquoise (0x0CC) (A1000 only): RAM failure in the Kickstart WCS
- Green (0x0F0) error in the lowest 256 bytes of Chip RAM. Possible causes, defective CIA-A IC or defective Agnus IC.
- Yellow (0xFE5) an unexpected processor exception before the appropriate system failure message was prepared. This could mean defective hardware or an attempt to access a RAM address where no RAM exists.
- Red (0xF00) invalid KickStart ROM checksum.
- Magenta (0xF0F) single-task or cold-start initialization failed.
These problems could be caused by a number of things such as a loose chip or board.
The red screen may be caused by a loose Kickstart chip that can be fixed by pressing down on the ROM to check it is fitted correctly. Another cause could be a connection problems between the chip and socket that can be solved by straightening an bent pins.
Alternatively, the green screen could be caused by a loose memory board, SIMM, or a loose RAM chip on the memory board. If reattaching these chips do not solve the problem, try them on another Amiga.
Another listing of screen color interpretations:
||Kickstart ROM error
||Two ICs in A1200, A3000, A4000
||Custom chip problem
||Denise Paula Agnus
||Above problems combined
||CIA (U7/U300) problem
||CIA (U7/U300) problem
||If not booting
||Hardware tested OK
||Software tested OK
||CIA (U8/U301) problem
||Stops at gray, CIA defective
||ROM or CIA
||R406 or R215 open R406=1 ohm R215=4.7 ohm
||Agnus or Denise defective
The keyboard also has its own processor, RAM, and ROM. It also has a selftest that performed on power up in the following sequence.
- Performs checksum on ROM’s
- Checks 64 bytes of RAM.
- The timer is tested.
- Performs handshake with computer and gives results of self-test.
If the keyboard does not pass the test, it will tell you through the blinking of the caps lock light.
If the Amiga caps lock key LED blinks repeatedly at boot up, another series of error messages must be consulted:
- One blink: keyboard ROM checksum error
- Two blinks: RAM failure
- Three blinks: watchdog timer failure
- Four blinks: A short between two lines or the special control keys.
- No Blinks: No Flashes = Main PCB faultREAD THIS (please). Don’t panic if your keyboard flashes once when you switch on. THIS IS PERFECTLY NORMAL. Every Amiga in the entire universe does this.
If something is wrong with your system, you may see the following:
- RED: Error was found in ROMS.
- GREEN: Error found in the CHIP RAM.
- BLUE: Error was found in the custom chips.
- YELLOW: If 68000 found an error before the error trapping software (GURU) was running.
It’s not always obvious why your Amiga guru’s. With the codes below, you can break the meaning down to its basic components and get to the bottom of things.
Probably all Amiga owners have seen the guru at one time or another. The guru meditation is what your Amiga does when the low level error trapping routines catch an error before the computer crashes. When the higher-level routines detect the error you are given a requestor saying: ‘Software Failure. Task held. Finish ALL disk activity’, with two gadgets saying retry and cancel. Retry usually does nothing and cancel causes a guru.
The proper term for the guru is an alert. The alerts give you some useful information about why the Amiga crashed and what program caused the program to crash.
FORMAT OF ALERT ERROR NUMBER: #DSGeCode.TADDRESS
D: This indicates whether or not the software failure is recoverable or not (with the current OS none are really). A zero means that it is recoverable and any non-zero value means that it isn’t.
S: This (together with D) indicates the subsystem that generated the alert. The various subsystems are (DS):
00 .. Processor or none
01 .. Exec.Library
02 .. Graphics.Library
03 .. Layers.Library
04 .. Intuition.Library
05 .. Math.Library
06 .. Clist.Library
07 .. DOS.Library
08 .. RAM.Library
09 .. Icon.Library
10 .. Audio.device
11 .. Console.device
12 .. GamePort.device
13 .. Keyboard.device
14 .. Trackdisk.device
15 .. Timer.device
20 .. CIA.resource
21 .. Disk.resource
22 .. Misc.resource
0A .. Expansion.Library
30 .. Bootstrap
31 .. Workbench
32 .. Diskcopy
Ge: This indicates the general error. Basically telling you what went wrong. The various defined General Errors are (Ge):
01 .. No memory
02 .. Make Library
03 .. Open Library
04 .. Open Device
05 .. Open Resident
06 .. I/O Error
07 .. No Signal
Code: This gives more detail as to what went wrong. The value that appears here depends on the subsystem and general error.
TAddress: This is the Address of the task that caused the guru (where applicable).
Quite often the processor with trap an error. The operating system will then display a guru. These errors will only contain two digits (the right-most two digits in ‘Code’) and their meanings are:
00000000 Reset (SP). /Technically, these shouldn’t occur, but
00000001 Reset (PC). /they do pop up occassionally
00000002 Bus Error (memory doesn’t exist)
00000003 Address error (usually odd address access) A program probably made a jump to somewhere it shouldn’t have
00000004 Illegal instruction
00000005 Divide by zero. A program has attempted to divide a number by zero (a mathematical impossibility).
00000006 CHK instruction (Check register against boundaries)
00000007 TRAPV instruction (Trap on overflow)
00000008 Privilege violation. A program in user mode attempted to execute a privileged Instruction.
00000009 Trace (debugging)
0000000A Op Code 1010 (unimplemented instruction)
0000000B Op Code 1111 (unimplemented instruction)
0000000A & 0B A & F Line Emulation. Used with some coprocessors. Usually program is out of control.
00000018 .. Spurious interrupt.
00000019 to 1F .. Auto-Vector Interrupts – These should not happen as the OS uses them to detect what is going on with the hardware, but as with all others they do appear sometimes.
00000020 to 2F .. Trap Vectors – Usually a program is out of control.
00000030 to 3F .. These are reserved by Motorola. Any program causing these is probably out of control.
00000040 to FF .. User Interrupt Vectors – Usually a program is out of control.
AmigaDos error messages
If you enter a command and comes back with an error message, typing WHY will display more
information about it. Use the FAULT command to display the error message that applies to a error
Typical AmigaDos error messages are:
||Insufficient free store .
||Free up some memory by quiting other programs
||Task table full
||Shutdown some programs
||Argument line invalid or too long
||Check command arguments using `?`
||File is not an object module
||Try setting ‘e’ or ‘s’ protection flag.
||Invalid resident library during load
||Object in use
||Exit program, unassign assign or close directory windows.
||Object already exists.
Cannot move the program as it exists elsewhere. Delete the original first
||Directory not found
||Retype directory name
||Object not found
||Retype file name
||Invalid window description
Re-enter correct window description for NEWCLI or NEWSHELL
||Packet request type unknown
||Stream name component invalid
||Invalid object lock
||Object not of required type
||Disk not validated
||Wait until disk is validated first.
||Ensure write tab is closed.
||Rename across devices attempted
||Use copy instead
||Directory not empty
||Must delete its contents first. Use DELETE ALL.
||Device (or volume) not mounted
||Check device name and reinsert disk
||Check position in file
||Comment too big
||Use shorter description in FILENOTE
||Delete some files or use a new disk.
||File is protected from deletion
||Enable Delete flag with Protect
||File is write protected
||Enable Write flag with Protect
||File is read protected
||Use PROTECT to set ‘r’ flag.
||Not a valid DOS disk.
||Disk is unformatted or a protected game disk
||No disk in drive
||Use correct device name or insert disk
||No more entries in directory
||Directory is full, delete files or move files into new sub-dirs.
You can use a Gotek to read floppy disk images for your Amiga, but it’s also possible to use Lotharek HxC. Below you can find the jumper settings for your Lotharek HxC:
If you need this Lotharek HxC information for an Acorn Risc PC / Archimedes, check out this link (in Dutch)
(just preserving your great information guys, thanks for this! it helps our retro computer community a lot)