NEW AUTO 3,1 *-------------------------------------- ERRORX.GetErrorMessage ldx #ERRORX.Messages stx ZPPtr1 ldx /ERRORX.Messages stx ZPPtr1+1 ldx #0 pha .1 pla cmp ERRORX.Codes,x beq .4 pha ldy #0 .2 iny lda (ZPPtr1),y bpl .2 tya sec adc ZPPtr1 sta ZPPtr1 bcc .3 inc ZPPtr1+1 .3 inx cpx #ERRORX.Count bne .1 pla .4 ldy #$ff sta CLRWRITEAUX .5 iny lda (ZPPtr1),y pha and #$7F sta (ZPPtr2),y pla bpl .5 iny lda #0 sta (ZPPtr2),y clc rts *--------------------------------------MLI ERRORX.Codes .DA #MLI.E.BADCALL .DA #MLI.E.IO .DA #MLI.E.NODEV .DA #MLI.E.WRTPROT .DA #MLI.E.DSKSWIT .DA #MLI.E.OFFLINE .DA #MLI.E.INVPATH .DA #MLI.E.PNOTFND .DA #MLI.E.VNOTFND .DA #MLI.E.FNOTFND .DA #MLI.E.DUPFILE .DA #MLI.E.VOLFULL .DA #MLI.E.DIRFULL .DA #MLI.E.UNSUPST .DA #MLI.E.EOF .DA #MLI.E.LOCKED .DA #MLI.E.OPEN .DA #MLI.E.BADBUF *--------------------------------------KERNEL .DA #E.OOM .DA #E.OOH .DA #E.INVH .DA #E.BUF .DA #E.BADPATH .DA #E.BADARG .DA #E.NSP .DA #E.SYN .DA #E.ENVF .DA #E.IBIN .DA #E.FTB .DA #E.INUM .DA #3 Ctrl-C *--------------------------------------PARSER .DA #E.CSYN .DA #E.ESYN .DA #E.STACKERROR .DA #E.STKOVERFLOW .DA #E.NOWHILE .DA #E.NOFOR .DA #E.NOIF .DA #E.BADFTYPE .DA #E.FUNDEF .DA #E.UNEXPEOF *-------------------------------------- ERRORX.Count .EQ *-ERRORX.Codes *-------------------------------------- ERRORX.Messages .AT "Bad MLI Call" .AT "I/O Error" .AT "No Device" .AT "Disk Write-Prot." .AT "Disk Switched" .AT "Offline Device" .AT "Invalid Path" .AT "Path Not Found" .AT "Vol Not Found" .AT "File Not Found" .AT "Dup. Filename" .AT "Vol Is Full" .AT "Dir Is Full" .AT "Unsupp. Storage" .AT "End Of File" .AT "File Locked" .AT "File Opened" .AT "Bad Buffer" *-------------------------------------- .AT "Out Of Memory" .AT "Out Of Handle" .AT "Invalid Handle" .AT "Buffer Overflow" .AT "Bad Path" .AT "Bad API Argument" .AT "No Such Process" .AT "Syntax Error" .AT "Env Is Full" .AT "Invalid BIN" .AT "File Too Big" .AT "Invalid Numerical" .AT "User Interrupt" *-------------------------------------- .AT "Cmd Syntax Error" .AT "Exp. Syntax Error" .AT "Stack Error" .AT "Stack Overflow" .AT "LOOP Without WHILE" .AT "NEXT Without FOR" .AT "FI/ELSE Without IF" .AT "Bad File Type" .AT "Undef. Function" .AT "Unexp. EOF" *-------------------------------------- .AT "Unknown Error" *-------------------------------------- MAN SAVE usr/src/sys/kernel.s.errorx LOAD usr/src/sys/kernel.s ASM