Maintenance Panel Error Code Summary for Xerox 1108 Interlisp-D There are two types of maintenance panel codes: progress codes and error codes. Progress codes are placed in the Maintenance Panel at various stages of initialization. Error codes are traps which freeze or blink the error number in the maintenance panel. All errors except the 9000-range errors are fatal. Summary of MP code ranges 0000-0499 boot-time diagnostics 0500-0699 IOP code 0700-0899 Pilot microcode 0900-0999 Pilot 1000-6999 tech-rep diagnostics 7000-8887 Star 8888-8888 MP lamp test 9000-9999 Lisp Boot-time errors 0096 Insufficient real memory (<1MByte) for lisp 0149 Usually right after power-on. Disk not ready. Safe and effective to 0-boot from this state. 0200-0299 Booting phase 2 (Initial microcode) 0200 normal booting phase 2 0201 CP error in reading from boot device 0202 null Mesa germ installed in physical volume 0203 broken rigid disk boot chain (possibly intermittent) 0204 Illegal IOP port command 0205 CP Trap (CS parity or double-bit memory error) 0206 null diagnostic microcode in physical volume 0207 null Pilot/Mesa emulator microcode in physical volume 0208 null Mesa germ installed in physical volume 0217 Inconsistent Virtual Memory. Requires re-installation or try another partition. 0500-0502 Domino progress codes 0500 StartDomino Domino has started 0501 InitReadTOD Domino starting to read the TOD clock 0502 InitReadTODdone Reading of TOD clock completed (next MP number from Lisp) 0505-0599 Domino error codes 0505 CSParity CS parity error detected 0506 BurdockCPDisabled Burdock attempted to use EtherKludge 0507 CPBurdockDisabled CP attempted to use EtherKludge 0508 IOPBreak An IOP break with no IOP kernel 0509 IllegalIOPIntr Illegal IOP interrupt 0510 BadMapEntry Incorrect vm Map entry in IOP access. 0511 NoCPDmaComplete CP Dma operation failed to complete 0512 NoCPDmaChannel CP Dma channel not specified 0513 ReadCPPortDead CP not responding to Read CPPort 0514 WriteCPPortDead CP not responding to Write CPPort 0520 StackOverflow A task's stack has overflowed 0565 InvToneCmd Invalid keyboard tone generator comnd 0570 InvProcCmd Invalid cmd value in Processor CSB 0571 UnImplCmd Unimplemented cmd in Processor CSB 0572 SetTODError The Time-Of-Day could not be set 0576 LSEPCtlOVR LSEP Control CSB overrun 0580 NoValidCommand Invalid floppy IOCB command 0581 UnImplFloppyCmd Unimplemented floppy IOCB cmd 0582 InvalidEscapeCmd Invalid Escape floppy cmd 0583 CommandTrack Floppy track register is not correct 0584 TrackToBig Floppy track number is too large 0585 BadDmaChannel Couldn't program Floppy Dma 0586 NoDmaEndCount1 External Dma End Count not set 0587 NoDmaEndCount2 Internal Dma End Count not set 0900-0999 Pilot codes 0915 Pilot breakpoint 0937 Trying to find out the time and date. Will hang in this state if no time server is responding, and the time has not been set on the machine since power-up. 0981 Trying to discover Ethernet pup host number. Will hang in this state if non-Lisp code tries to perform Pup operations and no Pup ID Server responds. 9000-9299 DLion Interlisp-D microcode error detected Most of these errors are indicative of some serious problem, probably hardware, and usually fatal (but try ^D if you can't TeleRaid). The main exception is 9004see description of code 9304. 9001 CSParErr Control store parity error 9002 StackErr hardware stack overflow 9003 IBEmptyErr instruction fetch unit empty error 9004 VirtAddrErr Attempt to reference virtual address >22 bits 9005 EmuMemErr double bit memory error or non-existent memory 9013 NegPcError inconsistent PC at FnCall 9014 applyUfn arg to apply not integer 9016 notFreeTrap stack allocation error 9024 Page fault in the page fault handler. 9048 ReFOvr page fault under page fault 9049 Ghost context switch 9051 BadUfnTable 9120 MiscErr opcode no such register 9121 MiscErr opcode bad 2nd byte 9127 PcNegError inconsistent PC at Punt 9136 CycleMask bad caller 9129 M1Loc microcode error 9130 M2Loc microcode error 9131 M3Loc microcode error 9300-9399 Lisp system code error (call to \MP.ERROR) These codes generally indicate an error state in Lisp system code that cannot be handled in the break package. Most are "should never happen" cases that indicate a serious error; but some (in particular, 9305 and 9318) may be much less serious. If possible, use TeleRaid to find out more information (press the Undo key to enter the TeleRaid server (cursor changes into "TeleRaid"), and run the TeleRaid user from another machine). Even if you can't TeleRaid from another machine, several of these codes you can convert into a Lisp break if the world is still mostly consistent and the error occurred under user code (rather than, say, the garbage collector): type ^B to the TeleRaid server. Summary of TeleRaid server commands: ^B attempt to enter Break. If error is in a special system context, will change cursor to "CANT", indicating refusal to enter break. ^D perform Hard Resetclear stack, flush all non-restartable processes. ^N continue from error. This is usually not possible, except for code 9318, or when you got a 9915 error by typing ^C while the Raid interrupt was enabled. ^P display Pup host number (in decimal) in maintenance panel. 9302 Invalid Vmem: attempt to boot an image that is not a valid Lisp sysout, or which is inconsistent from having some, but not all, of its dirty pages written. Can happen if you boot instead of calling LOGOUT. Usually caught sooner as code 217. 9303 "No place for IOCB page at startup"  should never happen. 9304 Map out of bounds: attempt to use a pointer larger than the virtual address space of the machine. Usually means garbage was fetched from somewhere that should have contained a pointer. This usually appears as code 9004 instead. 9305 Invalid address: attempt to use a pointer that does not refer to an existing (allocated) part of virtual memory. Usually means garbage was fetched from somewhere that should have contained a pointer. This error can often be converted to a break with the ^B TeleRaid command. 9306 Invalid virtual page. Usually caught sooner, as a 9004. 9307 "Unavailable page on real page chain": inconsistent state in page fault handler. 9308 "Loop in \SELECTREALPAGE": inconsistent state in page fault handler. 9309 Attempt to allocate already existing page (from call to \NEWPAGE). 9310 "\DONEWPAGE failed to allocate new map page" 9311 "Locked page occupies a file page needed to lock another": bad state in virtual memory system. 9312 Arg to CLOCK0 not an integer box. 9313 Fault on resident page: processor took a page fault for a page that appears to be resident. 9314 PageFault on stack: shouldn't happen, as stack is resident. 9318 Error in uninterruptable system code: an error that ordinarily would enter a break (e.g., a type test failure), but in a piece of code that should not be user-interruptable. This is generally a sign that some datum used by system code has been smashed, but this is not always fatal. Should you not have a wizard handy to diagnose the error with TeleRaid, you can type ^N after entering the TeleRaid server; Lisp will go ahead and attempt to enter a the break anyway, from which (if it succeeds) you might be able to glean more information about the problem. 9400-9899 unassigned 9900-9924 Attempt to call Raid or Alto O.S. (BCPL Subr). The only one that is likely to ever occur is 9915, call to RAID. Note that if you have the Raid interrupt enabled (by default on ^C), you will get a 9915 error by typing that interrupt character. 9905 NOOPSUBR 9906 \BACKGROUNDSUBR 9907 \CHECKBCPLPASSWORD 9908 DISKPARTITION 9909 DSPBOUT 9910 \DSPRATE 9911 \GATHERSTATS 9912 \GETPACKETBUFFER 9913 \LISPFINISH 9914 \MOREVMEMFILE 9915 RAID 9916 \READRAWPBI 9917 \WRITERAWPBI 9918 SETSCREENCOLOR 9919 SHOWDISPLAY 9920 \PUPLEVEL1STATE 9921 \WRITESTATS 9922 \CONTEXTSWITCH 9923 \COPYSYS0SUBR 9924 \WRITEMAP A TIMESROMAN  TIMESROMAN 4 TIMESROMAN  TIMESROMAN  TIMESROMAN  TIMESROMAN  TIMESROMAN  TIMESROMAN  TIMESROMAN  TIMESROMAN  TIMESROMAN  TIMESROMAN  TIMESROMAN  TIMESROMAN  TIMESROMAN  TIMESROMAN  TIMESROMAN  TIMESROMAN  TIMESROMAN  TIMESROMAN  TIMESROMAN  TIMESROMAN  TIMESROMAN $$0 TIMESROMAN  TIMESROMAN $$e TIMESROMAN 0$. TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$) TIMESROMAN  TIMESROMAN $$0 TIMESROMAN  TIMESROMAN $$9 TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$3 TIMESROMAN  TIMESROMAN $$1 TIMESROMAN  TIMESROMAN $$: TIMESROMAN  TIMESROMAN $$0 TIMESROMAN  TIMESROMAN $$V TIMESROMAN 00 TIMESROMAN $# TIMESROMAN  TIMESROMAN $6 TIMESROMAN  TIMESROMAN $3 TIMESROMAN  TIMESROMAN  TIMESROMAN  TIMESROMAN 00 TIMESROMAN $$& TIMESROMAN  TIMESROMAN $$; TIMESROMAN  TIMESROMAN $$6 TIMESROMAN  TIMESROMAN $$- TIMESROMAN  TIMESROMAN $$) TIMESROMAN  TIMESROMAN $$6 TIMESROMAN  TIMESROMAN $$8 TIMESROMAN  TIMESROMAN $$0 TIMESROMAN  TIMESROMAN $$4 TIMESROMAN  TIMESROMAN $$6 TIMESROMAN  TIMESROMAN $$0 TIMESROMAN  TIMESROMAN $$5 TIMESROMAN  TIMESROMAN $$2 TIMESROMAN  TIMESROMAN $$1 TIMESROMAN  TIMESROMAN $$2 TIMESROMAN  TIMESROMAN $$( TIMESROMAN  TIMESROMAN $$/ TIMESROMAN  TIMESROMAN $$2 TIMESROMAN  TIMESROMAN $$/ TIMESROMAN  TIMESROMAN $$6 TIMESROMAN  TIMESROMAN $$0 TIMESROMAN  TIMESROMAN $$. TIMESROMAN  TIMESROMAN $$2 TIMESROMAN  TIMESROMAN $$2 TIMESROMAN $$ TIMESROMAN 0 TIMESROMAN $$ TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN 05 TIMESROMAN 0 TIMESROMAN $$( TIMESROMAN  TIMESROMAN $$% TIMESROMAN  TIMESROMAN $$2 TIMESROMAN  TIMESROMAN $$> TIMESROMAN  TIMESROMAN $$= TIMESROMAN  TIMESROMAN $$) TIMESROMAN  TIMESROMAN $$& TIMESROMAN  TIMESROMAN $$' TIMESROMAN  TIMESROMAN $$* TIMESROMAN  TIMESROMAN $$' TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$' TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN 04 TIMESROMAN  TIMESROMAN $ TIMESROMAN $HH TIMESROMAN $HHH TIMESROMAN $HH TIMESROMAN $HH> TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$? TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN * TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN J TIMESROMAN  TIMESROMAN $$> TIMESROMAN  TIMESROMAN $$U TIMESROMAN  TIMESROMAN $$I TIMESROMAN  TIMESROMAN $$G TIMESROMAN  TIMESROMAN $$1 TIMESROMAN  TIMESROMAN $$c TIMESROMAN  TIMESROMAN $$& TIMESROMAN  TIMESROMAN $$` TIMESROMAN  TIMESROMAN $$@ TIMESROMAN  TIMESROMAN $$4 TIMESROMAN  TIMESROMAN 0 TIMESROMAN 08 TIMESROMAN  TIMESROMAN 0 TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN $$ TIMESROMAN  TIMESROMAN z