Skip to content

Reference Error codes seen

pappadf edited this page Sep 15, 2026 · 2 revisions

Reference: error codes seen

Added 15 September 2026 — VrOpen returned 8 = EIO. Seen when /chosen bootpath names the SWIM3 floppy (/bandit/gc/swim3): the veneer builds ARC nodes for it, derives the path multi(0)other(0)other(0) — it has no SWIM3 case and falls through to "other" — and then the open fails with 8. On the ARC status ordering (ESUCCESS, E2BIG, EACCES, EAGAIN, EBADF, EBUSY, EFAULT, EINVAL, EIO, …) that is EIO, not ENODEV. The ordering is corroborated by this project's own wall 22, where VrOpen returned d = 13 = ENODEV.

The distinction matters: the device is found and the I/O fails, even though Open Firmware reads the same drive correctly with read-blocks. See the boot floppy plan §4.

This page owns: every failure this project has met, with what it actually turned out to mean on this machine.

A lookup table for "I have seen this message, what now". The meanings here are what each turned out to be in practice, which is not always what the message says.


Open Firmware

What you see What it meant
DEFAULT CATCH!, code=FFF00300 a data access fault in Forth — usually dump on memory the firmware has not claimed. Use alloc-mem
DEFAULT CATCH!, code=FFF00600 alignment — often a Forth word given the wrong stack
<word>, unknown word the serial input dropped the head of your line. The FIFO holds about sixteen characters; type in chunks
Program complete - please reboot the loaded program returned. The veneer or the loader exited; nothing NT-level ran
can't find device an Open Firmware path that does not resolve

The loader

What you see What it meant
Bare hex ids (0000232e) BlInitResources failed — no message table, so ids print raw. The first failure is that, not what the ids say
9006 / 9011 / 9040 "computer disk hardware configuration problem" / "could not access disk partition tables" — in practice: a BlOpen failed, usually raw opens returning the whole disk
9004 / 9017 / 9038 "<winnt root>\system32\ntoskrnl.exe is missing or corrupt" — often the same cause as above
The 'osloader' parameter does not point to a valid file argv is missing a named entry. The value may be present; the lookup is by name
\WINNT\SYSTEM32\CONFIG\SYSTEM is missing or corrupt the hive failed structural validation. A header can be perfect and the file still short. Here the file was damaged after being written — a HAL DMA bug landing one file's data on NT's cached FAT page (STORY.md wall 50)

The NT boot chain

Bugchecks

Code Name On this machine
0x1E with P1 0x80000002 KMODE_EXCEPTION_NOT_HANDLED / STATUS_DATATYPE_MISALIGNMENT a misaligned access — almost always the compiler folding byte accesses into a wide one
0x50 PAGE_FAULT_IN_NONPAGED_AREA P1 is the referenced address, munged. Once: a corrupted TOC register
0x0A IRQL_NOT_LESS_OR_EQUAL a bad pointer; once, a KDPC that wanted 8-byte alignment
0x09 IRQL_NOT_GREATER_OR_EQUAL calling a driver's callback at the wrong IRQL
0x7B INACCESSIBLE_BOOT_DEVICE the boot device symbolic link was never created — firmware, not NT
0x4C FATAL_UNHANDLED_HARD_ERROR P1 carries the real status

Decoding a bugcheck

NT status codes

Code Name Seen as
0xC0000034 STATUS_OBJECT_NAME_NOT_FOUND "fatal error while initializing your computer's video"\Device\Video0 was never created
0xC0000102 STATUS_FILE_CORRUPT_ERROR a driver whose cluster chain is shorter than its recorded size. Long blamed on a truncated capture; the cause was the HAL's IoMapTransfer handing the SCSI chip a run spanning non-contiguous pages, so one file's data landed on the cached FAT page (wall 50)
0xC000026C unable to load device driver as above, reported through bugcheck 0x4C
0xC0000143 missing system file win32k could not load a display driver. The name it prints, DISPLAY_DRIVER.DLL, is a placeholder — no such file exists. Either no \Device\Video0 was created, or InstalledDisplayDrivers names one that cannot start (wall 51)
0xC0000221 STATUS_IMAGE_CHECKSUM_MISMATCH a driver whose PE checksum does not match its contents — what you get for patching a .SYS on disk without recomputing it

Setup

What you see What it meant
The hardware menu lists only IBM/Motorola machines the OEM TXTSETUP.SIF patch was not applied before go
"The file haleagle.dll was not copied correctly" the CD directory record's length does not match the HAL. Re-run mkoem.py
"Setup did not find a keyboard" no ADB driver — or, once, a drive-letter bug wearing a disguise
"No valid system partitions" Setup asks the firmware for one; it does not look. SYSTEMPARTITION was unset
"…video" (0, 0xC0000034) the miniport failed, or its resource claim was rejected

A pattern worth noticing

Read down that last column and a theme emerges: on this machine the message very often names the symptom rather than the cause. "Could not access disk partition tables" was a firmware workaround applied to the wrong media. "Setup did not find a keyboard" was drive letters. A page fault in a Matrox driver was our own stack-frame bug.

The habit that pays is to treat the message as where NT noticed, not as what is wrong.


Next

Clone this wiki locally