A2osX/SYS/KERNEL.S.ERRORX.txt

150 lines
2.9 KiB
Plaintext
Raw Normal View History

2020-05-17 17:34:32 +00:00
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.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
2020-05-21 12:55:49 +00:00
.DA #MLI.E.BADBUF
2020-05-17 17:34:32 +00:00
*--------------------------------------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 #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 "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"
2020-05-21 12:55:49 +00:00
.AT "Bad Buffer"
2020-05-17 17:34:32 +00:00
*--------------------------------------
.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 "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