Code Who sets it - Description
0 - any - No error (duh)
1 - bootldr - Unknown exactly, something to do with checking the motherboard
2 - bootldr - Eeprom check failed
3 - bootldr - ??/not used
4 - bootldr - Ram check failed
5 - kernel - HDD not locked (retail bioses require the hd to be locked)
6 - kernel - Cannot unlock HDD
7 - kernel - HDD timeout
8 - kernel - No HDD found
9 - kernel - HDD parameters (PIO/DMA/or size {debug}, certain size minimum is required for debug)
10 - kernel - DVD timeout
11 - kernel - No DVD Founnd
12 - kernel - DVD parameters (PIO/DMA)
13 - kernel - Dashboard launch fail (due to missing/bad key, or anything else that would prevent it from running) and the dashboard didn't specify why it failed.
14 - dashboard - Error loading dashboard (dashboard generic error)
15 - - ??/not used
16 - dashboard - Other files to do with dashboard / dashboard settings (specific dashboard error)
17 - - ??/not used
18 - - ??/not used
19 - - ??/not used
20 - kernel - The dashboard was attempted to load and failed; It was a cold boot, and the dashboard didn't specify why it failed, but it (for some reason) needed to be noted that the dvd passed the challenge/response authentication
21 - anywhere - This error says that the machine was booted to display a error, basically someone told the machine to reboot (or launch a xbe) with this flag, and the error code just means its been rebooted by the flag
http://www.xbox-scene.com/articles/errorcodes.php