Output of
info lilo (also in man lilo)
CODE
BOOT ERRORS
The boot process takes place in two stages. The first stage loader is
a single sector, and is loaded by the BIOS or by the loader in the MBR.
It loads the multi-sector second stage loader, but is very space lim-
ited. When the first stage loader gets control, it types the letter
"L"; when it is ready to transfer control to the second stage loader it
types the letter "I". If any error occurs, like a disk read error, it
will put out a hexadecimil error code, and then it will re-try the
operation. All hex error codes are BIOS return values, except for the
lilo-generated 40, 99 and 9A. A partial list of error codes follows:
00 no error
01 invalid disk command
0A bad sector flag
0B bad track flag
20 controller failure
40 seek failure (BIOS)
40 cylinder>1023 (LILO)
99 invalid second stage index sector (LILO)
9A no second stage loader signature (LILO)
AA drive not ready
FF sense operation failed
Error code 40 is generated by the BIOS, or by LILO during the conver-
sion of a linear (24-bit) disk address to a geometric (C:H:S) address.
On older systems which do not support lba32 (32-bit) addressing, this
error may also be generated. Errors 99 and 9A usually mean the map
file (-m or map=) is not readable, likely because LILO was not re-run
after some system change, or there is a geometry mis-match between what
LILO used (lilo -v3 to display) and what is actually being used by the
BIOS (one of the lilo diagnostic disks, available in the source distri-
bution, may be needed to diagnose this problem).
When the second stage loader has received control from the first stage,
it prints the letter "L", and when it has initialized itself, including
verifying the "Descriptor Table" - the list of kernels/others to boot -
it will print the letter "O", to form the full word "LILO", in upper-
case.
Boot first CD>F1>rescue>Install linux bootloader.