The BOOT_nnnn.COD file appears to have the following format (YAR51HW0 example):
Code:
00000 - 001FF header
00200 - 201FF CP0x00
20200 - 203FF CP list (IDs and sizes)
20400 - 243FF CP0x03
24400 - 283FF CP0x04
.....
90400 - 943FF CP0x1F
The "nnnn" characters in the filename correspond to the checksum word at the end of CP00. Each CP also contains this word at byte offset 0x04.
header:
Code:
Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
00000000 01 00 00 00 00 00 00 00 00 00 02 00 00 00 00 00
^^^^^^^^^^^
size of CP00 = 0x20000
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
........
000001F0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
CP list:
Code:
Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
00020200 01 03 00 00 00 00 00 00 00 40 00 00 00 00 00 00
^^ ^^^^^
CP ID size in bytes = 0x4000
00020210 01 04 00 00 00 00 00 00 00 40 00 00 00 00 00 00
00020220 01 05 00 00 00 00 00 00 00 40 00 00 00 00 00 00
........
000203B0 01 1E 00 00 00 00 00 00 00 40 00 00 00 00 00 00
000203C0 01 1F 00 00 00 00 00 00 00 40 00 00 00 00 00 00
000203D0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000203E0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
000203F0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
end of CP00:
Code:
Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
000201F0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF CD 6C
^^^^^
checksum