filed on [rose]fugue6>doc>MPcodes.bravo7. MP Code SummaryThere are two types of Maintenance Panel codes: progress codes and error codes. Progress codesare placed in the Maintenance Panel at various stages of initialization. Error codes are trapswhich freeze or blink the error number in the maintenance panel. All errors except the 9000-range errors are fatal.All MP codes less than 9000 are generated by non-Lisp programs implemented directly inmicrocode or in Mesa, a high-level programming language in use at Xerox. MP codes from 9000to 9999 are generated by an error in the Lisp system code.Summary of MP code rangesBlank MP to 0099: Pre-boot diagnostics0300-0399 Boot diagnostics0600-0699 Memory diagnostics0400-0499 Utility (Real time clock, etc.) diagnostics0700-0799 Disk diagnostics (written in microcode)0900-0999 Pilot OS1000-1199 Disk Fault Analysis (10MB)1300-1499 Disk Fault Analysis (42MB)1600-1799 Disk Fault Analysis (29MB)8888-8888 MP lamp test9000-9999 LispBoot-time errors0096Insufficient real memory (<1MByte) for Lisp0149Usually right after power-on. Disk not ready. Safe and effective to 0-boot from this state. 0200-0299 Booting phase 2 (Initial microcode)0200normal booting phase 20201CP error in reading from boot device0202null Mesa germ installed in physical volume0203broken rigid disk boot chain (possibly intermittent)0204Illegal IOP port command0205CP Trap (CS parity or double-bit memory error)0206null diagnostic microcode in physical volume0207null Pilot/Mesa emulator microcode in physical volume0208null Mesa germ installed in physical volume0217Inconsistent Virtual Memory. Requires re-installation or try another partition.0500-0502 Domino progress codes0500StartDominoDomino has started0501InitReadTODDomino starting to read the TOD clock0502InitReadTODdoneReading of TOD clock completed (next MP number from Lisp)0505-0599 Domino error codes0505CSParityCS parity error detected0506BurdockCPDisabledBurdock attempted to use EtherKludge0507CPBurdockDisabledCP attempted to use EtherKludge0508IOPBreakAn IOP break with no IOP kernel0509IllegalIOPIntrIllegal IOP interrupt bpN `q>-"ZCra W;pN_ U_ T3] R OV N#\ L: Fs E p& C B @~5 >1 =v ;$ :n$ 8$ 7f 5 2s 1Up+ /] .M ,s- +Ep )$ (=+ &4 %5 #. "-, 5 %+ P s p   %  9 s p $ x  p L )=)X20510BadMapEntryIncorrect vm Map entry in IOP access.0511NoCPDmaCompleteCP Dma operation failed to complete0512NoCPDmaChannelCP Dma channel not specified0513ReadCPPortDeadCP not responding to Read CPPort0514WriteCPPortDeadCP not responding to Write CPPort0520StackOverflowA task's stack has overflowed0565InvToneCmdInvalid keyboard tone generator comnd0570InvProcCmdInvalid cmd value in Processor CSB0571UnImplCmdUnimplemented cmd in Processor CSB0572SetTODErrorThe Time-Of-Day could not be set0576LSEPCtlOVRLSEP Control CSB overrun0580NoValidCommandInvalid floppy IOCB command0581UnImplFloppyCmdUnimplemented floppy IOCB cmd0582InvalidEscapeCmdInvalid Escape floppy cmd0583CommandTrackFloppy track register is not correct0584TrackToBigFloppy track number is too large0585BadDmaChannelCouldn't program Floppy Dma0586NoDmaEndCount1External Dma End Count not set0587NoDmaEndCount2Internal Dma End Count not set0900-0999 Pilot codes0915Pilot breakpoint. If 0915 occurs during the installation of the software, the problemcould be a bad page on the rigid disk, the system cannot read the floppy disk, or a hardwarefailure. Try running ALAG. If ALAG passes and Media Scan shows no new bad pages, the floppydisk (software installation) is suspect.0937Trying to find out the time and date. Will hang in this state if no time server isresponding, and the time has not been set on the machine since power-up. Time can be set fromwithin Interlisp (with SETTIME), by 2-booting the Installation Utility floppy, or by 5-booting theEI Fixed Disk Diagnostics floppy.)0981Trying to discover Ethernet pup host number. Will hang in this state if non-Lisp codetries to perform Pup operations and no Pup ID Server responds.9000-9299 Interlisp-D microcode error detectedMost 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 9004 see description of code 9304.9001CSParErrControl store parity error9002StackErrhardware stack overflow9003IBEmptyErrinstruction fetch unit empty error9004VirtAddrErrAttempt to reference virtual address >22 bits9005EmuMemErrdouble bit memory error or non-existent memory9013NegPcErrorinconsistent PC at FnCall9014applyUfnarg to apply not integer9016notFreeTrapstack allocation error9024Page fault in the page fault handler.9048ReFOvr page fault under page fault9049Ghost context switch9051BadUfnTable9120MiscErropcode no such register9121MiscErropcode bad 2nd byte9127PcNegErrorinconsistent PC at Punt9136CycleMaskbad caller9129M1Locmicrocode error9130M2Locmicrocode error9131M3Locmicrocode error9300-9399 Lisp system code error (call to \MP.ERROR)Nfp b N% `# _  ]  \! Z  Y % W " U" Ty  R  Qq  O Ni L $ Ka  I  HY  F  BIs @pV ?A\ =\ <8( :S 90^ 7b 6(" 4V 3 > 0s. -pa +] ( ' %| " # - "s.   k   c% " [  S  K   C  ; 3s4 f =-^q3These codes generally indicate an error state in Lisp system code that cannot be handled in thebreak package. Most are "should never happen" cases that indicate a serious error; but some (inparticular, 9305 and 9318) may be much less serious. If possible, use TeleRaid to find out moreinformation (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 anothermachine, several of these codes you can convert into a Lisp break if the state of the system isreasonably consistent and the error occurred under user code (rather than, say, the garbagecollector): type ^B to the TeleRaid server. Summary of TeleRaid server commands:^Battempt to enter Break. If error is in a special system context, will change cursor to"CANT", indicating refusal to enter break.^Dperform Hard Resetsclear stack, flush all non-restartable processes.^Ncontinue from error. This is usually not possible, except for code 9318, or when you got a9915 error by typing ^C while the Raid interrupt was enabled.^Pdisplay Pup host number (in decimal) in maintenance panel.9302Invalid Vmem: attempt to boot an image that is not a valid Lisp sysout, or which isinconsistent from having some, but not all, of its dirty pages written. Can happen if you bootinstead of calling LOGOUT. Usually caught sooner as code 0217.9303No place for IOCB page at startup; should never happen.9304Map out of bounds: attempt to use a pointer larger than the virtual address space of themachine. Usually means garbage was fetched from somewhere that should have contained apointer. This usually appears as code 9004 instead.9305Invalid address: attempt to use a pointer that does not refer to an existing (allocated) partof virtual memory. Usually means garbage was fetched from somewhere that should havecontained a pointer. This error can often be converted to a break with the ^B TeleRaidcommand.9306Invalid virtual page. Usually caught sooner, as a 9004.9307Unavailable page on real page chain: inconsistent state in page fault handler.9308Loop in \SELECTREALPAGE: inconsistent state in page fault handler.9309Attempt to allocate already existing page (from call to \NEWPAGE).9310\DONEWPAGE failed to allocate new map page9311Locked page occupies a file page needed to lock another: bad state in virtual memorysystem.9312Arg to CLOCK0 not an integer box.9313Fault on resident page: processor took a page fault for a page that appears to be resident.9314PageFault on stack: shouldn't happen, as stack is resident.9318Error 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 generallya 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 afterentering the TeleRaid server; Lisp will go ahead and attempt to enter a the break anyway, fromwhich (if it succeeds) you might be able to glean more information about the problem.9400-9899 unassigned9900-9924 Attempt to call Raid or Alto O.S.The only one that is likely to ever occur is 9915, call to RAID. Note that if you have the Raidinterrupt enabled (by default on ^C), you will get a 9915 error by typing that interruptcharacter.9905NOOPSUBR9906\BACKGROUNDSUBRNfp bN_ `` _` ]^ \Y Z_ Y[ Wsp Ty% QqspW O* LspD Isp[ HY= EQsp: BIS @_ ?A? =7 <8X :W 904 7] 6(U 4W 3  18 0N .B -B +* *T ( '! %|[ #; "sY f kZ ] c^ U s + p` CX   3 d =,^49907\CHECKBCPLPASSWORD9908DISKPARTITION9909DSPBOUT9910\DSPRATE9911\GATHERSTATS9912\GETPACKETBUFFER9913\LISPFINISH9914\MOREVMEMFILE9915RAID9916\READRAWPBI9917\WRITERAWPBI9918SETSCREENCOLOR9919SHOWDISPLAY9920\PUPLEVEL1STATE9921\WRITESTATS9922\CONTEXTSWITCH9923\COPYSYS0SUBR9924\WRITEMAPNfp b ` _ ] \ Z Y W U Ty R Qq O Ni L Ka I HY HsCLASSIC CLASSIC TIMESROMAN CLASSIC  j/] MPcodes.bravoSANNELLAMarch 30, 1984 9:36 AM