From 4dbd36cb7b0db43e0f435479dcd9d18561b486fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Mon, 1 Apr 2019 16:24:01 +0100 Subject: [PATCH] Kernel 0.93 --- .Docs/Shell Developers Guide.md | 3 +- .Floppies/A2OSX.BUILD.po | Bin 33553920 -> 33553920 bytes BIN/SH.S.CMD.txt | 49 +++++++++----- BIN/SH.S.CORE.txt | 110 ++++++++++++++++++++++++++++---- BIN/SH.S.EXP.txt | 42 ++++++++++-- BIN/SH.S.IO.txt | 86 ------------------------- BIN/SH.S.txt | 80 ++++++++++------------- X.ERRORS.S.txt | 2 + 8 files changed, 199 insertions(+), 173 deletions(-) diff --git a/.Docs/Shell Developers Guide.md b/.Docs/Shell Developers Guide.md index db3ba34e..6184ec02 100644 --- a/.Docs/Shell Developers Guide.md +++ b/.Docs/Shell Developers Guide.md @@ -61,6 +61,7 @@ where [ exp ] and [ condition ] allow to detail operators.... | \ | Working | \+ signed int32 add
\- signed int32 sub
\*
/
mod | | \ | Working |[ -D direxists ]
[ -E fileordirexists ]
[ -F fileexists ]
[ -N $VAR variable is not empty ]
[ -Z $VAR variable is empty ]
[ string1 = string2 ]
[ string1 != string2 ]
[ string1 .< string2 ]
[ string1 <= string2 ]
[ string1 .> string2 ]
[ string1 >= string2 ]
[ int32 -eq int32 ]
[ int32 -ne int32 ]
[ int32 -lt int32 ]
[ int32 -le int32 ]
[ int32 -gt int32 ]
[ int32 -ge int32 ] | | BREAK | Working | Exit CASE of SWITCH | +| CALL | Working | CALL function ... | | CASE | Working | CASE | | CD | Working | CD path or relative path | | DATE | Working | | @@ -80,7 +81,7 @@ where [ exp ] and [ condition ] allow to detail operators.... | PUSHD | Working | Save actual working directory
PUSHD \ do also a CD to \ | | PWD | Working | Print Working Directory | | RD | Working | Delete an empty directory | -| READ | Working | -S : no echo (password)
-P : "prompt message" | +| READ | Working | -F : Undefine all functions
-S : no echo (password)
-P : "prompt message" | | REN | Working | Rename a file, directory or volume | | RETURN | In Progress | Exit function with return code | | SET | Working | -X : toggle debug mode
-C : toggle Control-C break mode | diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 83db7765ba96bb85b91791fce8faa3a012c700b7..ebf12b92378bf80472e64054d4614e520d1cf3a0 100644 GIT binary patch delta 495903 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 delta 410896 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 z)y08%gX4-9=jN-=DmL%W|NDc-##YA8Aqh!HLK2dYgd`*(2}wvo5|WUF zBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Ex zl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e& zNJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8 zAqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dY zgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo z5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjT zNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TX zBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{l zkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!H zLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*( z2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUF zBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Ex zl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e& zNJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8 zAqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dY zgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo z5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjT zNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TX zBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{l zkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!H zLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*( z2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUF zBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Ex zl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e& zNJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8 zAqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dY zgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo z5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjT zNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TX zBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{l zkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!H zLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*( z2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUF eBqSjTNk~Exl8}TXBq0e&NW%Y@gtt#Vw*P<6F*#%a diff --git a/BIN/SH.S.CMD.txt b/BIN/SH.S.CMD.txt index 9d852924..a3ec5831 100644 --- a/BIN/SH.S.CMD.txt +++ b/BIN/SH.S.CMD.txt @@ -228,17 +228,25 @@ CMD.SET.1 cmp #'C' bne .2 - >LDA.G bSET.C + ldy #bSET.C bra .5 .2 cmp #'X' + bne .3 + + ldy #bSET.X + bra .5 + +.3 cmp #'F' bne .99 - >LDA.G bSET.X + jsr CORE.FUNCRESET + bra .50 -.5 eor #$ff +.5 lda (pData),y + eor #$ff sta (pData),y - jsr CORE.ArgV.Next +.50 jsr CORE.ArgV.Next bne .1 clc rts @@ -564,18 +572,31 @@ CMD.FUNC lda (ZPArgVBufPtr) lda #$ff >STA.G bFuncMode clc - rts +.99 rts .9 jmp CMD.Exec.CSYN -.99 rts *-------------------------------------- -CMD.RETURN -.9 jmp CMD.Exec.CSYN +CMD.RETURN lda (ZPArgVBufPtr) + beq .8 no arg, exit 0 + + >LDYA ZPArgVBufPtr + >SYSCALL AToL + bcs .9 + + >PULLL M32.ACC + lda M32.ACC + +.8 pha + lda #$FF + >STA.G bExit + pla + clc +.9 rts *-------------------------------------- CMD.CALL >LDA.G hFuncList beq .9 - - >PUSHW ZPInputBufPtr + + >PUSHW ZPArgVBufPtr >LDA.G hFuncList >SYSCALL SListLookup bcs .9 @@ -589,13 +610,7 @@ CMD.CALL >LDA.G hFuncList >LDA.G hFuncList >SYSCALL SListGetData bcs .99 - txa - pha - >SYSCALL GetMemPtr - pla - >SYSCALL freemem - rts - + jmp CORE.CALL .9 lda #E.FUNDEF sec diff --git a/BIN/SH.S.CORE.txt b/BIN/SH.S.CORE.txt index 0007345d..7b3922a5 100644 --- a/BIN/SH.S.CORE.txt +++ b/BIN/SH.S.CORE.txt @@ -12,16 +12,17 @@ CORE.Init >LDYAI 256 .9 rts *-------------------------------------- -CORE.Quit >LDA.G hFuncList - beq .1 - - >SYSCALL SListFree - -.1 >LDA.G CORE.hArgVBuf - beq .9 +CORE.Quit >LDA.G CORE.hArgVBuf + beq CORE.FUNCRESET >SYSCALL FreeMem -.9 rts +CORE.FUNCRESET >LDA.G hFuncList + beq CORE.Quit.9 + + >SYSCALL SListFree + >STZ.G hFuncList + +CORE.Quit.9 rts *-------------------------------------- * http://heirloom.sourceforge.net/sh/sh.1.html *-------------------------------------- @@ -71,6 +72,9 @@ CORE.Run >LDYA ZPInputBufPtr Save Actual cmd for looping jsr CORE.GetCharNB bcc .11 + + jsr CORE.RETURN + bcs .9 jsr IO.Reset lda #0 @@ -227,11 +231,7 @@ CORE.ExecExtCmd >LDA.G CORE.CmdFile bpl .1 >LDYA ZPArgVBufPtr - >SYSCALL puts - >DEBUG - - >LDYA ZPArgVBufPtr - jsr IO.FILECALL.NOQUIT + jsr CORE.FCALL.NOQUIT bra CORE.ExecExtCmd.Exit .1 >PUSHB.G CORE.PSFlags @@ -565,6 +565,85 @@ CORE.IO.Open pha Open Mode lda #E.SYN sec rts +*-------------------------------------- +CORE.FCALL.QUIT sec + .HS 90 BCC +CORE.FCALL.NOQUIT + clc + + >STYA ZPPtr1 Filename + + lda #0 + ror + >STA.G bExitOnEOF + + >PUSHWI 0 Aux type + >PUSHBI S.FI.T.TXT + >PUSHBI O.RDONLY + + >LDYA ZPPtr1 + >SYSCALL LoadTxtFile + bcs CORE.CALL.9 + +CORE.CALL lda ZPInputBuf X=hBuf + jsr CORE.StkPush + bcs CORE.CALL.9 + + lda ZPInputBuf+1 + jsr CORE.StkPush + bcs CORE.CALL.9 + + lda ZPInputBufPtr + jsr CORE.StkPush + bcs CORE.CALL.9 + + lda ZPInputBufPtr+1 + jsr CORE.StkPush + bcs CORE.CALL.9 + + txa + jsr CORE.StkPush + bcs CORE.CALL.9 + + txa + >SYSCALL GetMemPtr + >STYA ZPInputBuf + >STYA ZPInputBufPtr + + lda #$C0 + jmp CORE.StkPush + +CORE.CALL.90 lda #E.STKOVERFLOW + sec +CORE.CALL.9 rts +*-------------------------------------- +CORE.RETURN jsr CORE.StkPull + bcs .90 + + cmp #$C0 + bne .90 + + jsr CORE.StkPull + >SYSCALL freemem + + jsr CORE.StkPull + sta ZPInputBufPtr+1 + + jsr CORE.StkPull + sta ZPInputBufPtr + + jsr CORE.StkPull + sta ZPInputBuf+1 + + jsr CORE.StkPull + sta ZPInputBuf + +* clc + rts + +.90 lda #E.STACKERROR + sec + rts *-------------------------------------- * Input Buffer *-------------------------------------- @@ -640,7 +719,7 @@ CORE.StkPushPtr bcs .1 .2 jsr CORE.StkPush bcs CORE.StkPullPtr.9 txa - bra CORE.StkPush + bra CORE.StkPush *-------------------------------------- CORE.StkPullPtr jsr CORE.StkPull bcs CORE.StkPullPtr.9 @@ -691,6 +770,8 @@ CORE.StkPush pha CORE.StkGetCtx jsr CORE.StkGet tax bcs .1 no context... + cmp #$C0 in a call... + beq .1 CS and #$80 get current.. lsr becomes parent @@ -699,6 +780,7 @@ CORE.StkGetCtx jsr CORE.StkGet .1 lda #$40 ...set Parent = true .2 >STA.G CORE.Test + txa rts *-------------------------------------- diff --git a/BIN/SH.S.EXP.txt b/BIN/SH.S.EXP.txt index 82cf6d54..132b0ae2 100644 --- a/BIN/SH.S.EXP.txt +++ b/BIN/SH.S.EXP.txt @@ -62,7 +62,11 @@ EXP.GET.OP >LDA.G CORE.Operator EXP.TEST lda (ZPArgVBufPtr) beq .9 - >LDYA L.EXP.BEGIN + lda #$ff + >STA.G CORE.TestArg True + >STA.G CORE.TestOp no op + +.10 >LDYA L.EXP.BEGIN jsr CORE.LookupArgVBuf bcs .9 @@ -125,7 +129,36 @@ EXP.TEST lda (ZPArgVBufPtr) ldy #1 lda (ZPArgVBufPtr),y bne .9 - clc + + jsr CORE.ArgV.Next + beq .82 + + >LDYA L.EXP.OP.LOGIC + jsr CORE.LookupArgVBuf + bcs .9 + + txa + >STA.G CORE.TestOp + >LDA.G CORE.Test + >STA.G CORE.TestArg + txa + bne .81 OR... + tay AND : stop if already false + bpl .88 + +.81 jsr CORE.ArgV.Next + beq .9 + + jmp .10 + +.82 >LDA.G CORE.TestOp + bmi .88 + + >LDA.G CORE.Test + >ORA.G CORE.TestArg + >STA.G CORE.Test + +.88 clc rts *-------------------------------------- EXP.TEST.UNARY jsr CORE.ArgV.Next @@ -265,11 +298,6 @@ EXP.TEST.BINARY.END clc rts *-------------------------------------- -EXP.OP.AND -EXP.OP.OR - clc - rts -*-------------------------------------- MAN SAVE USR/SRC/BIN/SH.S.EXP LOAD USR/SRC/BIN/SH.S diff --git a/BIN/SH.S.IO.txt b/BIN/SH.S.IO.txt index 1fd38dac..d6787a1f 100644 --- a/BIN/SH.S.IO.txt +++ b/BIN/SH.S.IO.txt @@ -3,97 +3,11 @@ PREFIX AUTO 4,1 .LIST OFF *-------------------------------------- -IO.Init lda #FILECALL.STACK - >STA.G FILECALL.STACK - rts -*-------------------------------------- IO.Reset jsr IO.Reset.In jsr IO.Reset.Out jsr IO.Reset.Err IO.Reset.9 rts *-------------------------------------- -IO.FILECALL.QUIT sec - .HS 90 BCC -IO.FILECALL.NOQUIT clc - - >STYA ZPPtr1 Filename - - lda #0 - ror - >STA.G bExitOnEOF - - >LDA.G FILECALL.STACK - cmp #FILECALL.STACK+FILECALL.STACK.MAX*3 - beq .90 - - >PUSHWI 0 Aux type - >PUSHBI S.FI.T.TXT - >PUSHBI O.RDONLY - - >LDYA ZPPtr1 - >SYSCALL LoadTxtFile - bcs .9 - - >LDA.G FILECALL.STACK - tay - - iny - lda ZPInputBufPtr+1 - sta (pData),y - iny - lda ZPInputBufPtr - sta (pData),y - iny - txa - sta (pData),y - - tya - >STA.G FILECALL.STACK - - txa - >SYSCALL GetMemPtr - >STYA ZPInputBuf - >STYA ZPInputBufPtr - - lda #$ff - >STA.G bBatchMode -* -* clc - rts - -.90 lda #E.STKOVERFLOW - sec -.9 rts -*-------------------------------------- -IO.FEXIT >LDA.G FILECALL.STACK - cmp #FILECALL.STACK - beq .90 - - tay - dey - lda (pData),y - tax hBuf - - dey - lda (pData),y - sta ZPInputBufPtr - - dey - lda (pData),y - sta ZPInputBufPtr+1 - - tya - >STA.G FILECALL.STACK - txa - >SYSCALL GetMemPtr - >STYA ZPInputBuf -* clc - rts - -.90 lda #E.STACKERROR - sec - rts -*-------------------------------------- IO.Pipe.In >LDA.G IO.hOut ldy #S.PS.hStdOut sta (pPS),y diff --git a/BIN/SH.S.txt b/BIN/SH.S.txt index fbd7c425..abf2f60d 100644 --- a/BIN/SH.S.txt +++ b/BIN/SH.S.txt @@ -7,9 +7,8 @@ AUTO 4,1 .TF BIN/SH *-------------------------------------- HISTORY.MAX .EQ 256 -CORE.STACK.MAX .EQ 64 +CORE.STACK.MAX .EQ 128 PUSHD.STACK.MAX .EQ 8 -FILECALL.STACK.MAX .EQ 8 *-------------------------------------- C.NOHUP .EQ 0 C.CD .EQ 1 @@ -188,8 +187,6 @@ J.EXP.OP.MATH .DA M32.Add .DA M32.Div .DA M32.Mod L.EXP.OP.LOGIC .DA EXP.OP.LOGIC -J.EXP.OP.LOGIC .DA EXP.OP.AND - .DA EXP.OP.OR L.HOME.PROFILE .DA HOME.PROFILE L.M32.Printf .DA M32.Printf L.ERR.Codes .DA ERR.Codes @@ -202,7 +199,6 @@ CS.INIT.RTS rts *-------------------------------------- CS.RUN jsr CL.Init jsr CORE.Init - jsr IO.Init ldy #S.PS.ARGC lda (pPS),y @@ -211,12 +207,15 @@ CS.RUN jsr CL.Init lda #1 >SYSCALL ArgV - jsr IO.FILECALL.QUIT Exec file an exit + jsr CORE.FCALL.QUIT Exec file an exit bcs CS.INIT.RTS lda #0 jsr CMD.SHIFTA Remove $0=/bin/sh + lda #$ff + >STA.G bBatchMode + bra CS.RUN.LOOP *-------------------------------------- .1 jsr CMD.CD.HOME @@ -235,7 +234,7 @@ CS.RUN jsr CL.Init bcs CS.RUN.LOOP no profile... >LDYA L.HOME.PROFILE - jsr IO.FILECALL.NOQUIT exec profile and continue + jsr CORE.FCALL.NOQUIT exec profile and continue * bcs CS.RUN.LOOP *-------------------------------------- @@ -300,15 +299,8 @@ CS.RUN.LOOP >SLEEP .9 rts *-------------------------------------- CS.RUN.INTERACTIVE - >LDA.G hInputBuf some commmands left in buffer - beq .10 - - lda (ZPInputBufPtr) + lda (pData) some commmands left in buffer bne .6 - - >LDA.G hInputBuf - >SYSCALL freemem - >STZ.G hInputBuf .10 jsr IO.Reset jsr CL.Reset @@ -339,10 +331,8 @@ CS.RUN.INTERACTIVE >LDYA ZPCLBuf >SYSCALL strdup bcs .8 - >STYA ZPInputBuf - >STYA ZPInputBufPtr - txa - >STA.G hInputBuf + + jsr CORE.CALL .6 jsr CORE.Run @@ -385,30 +375,30 @@ CS.RUN.READ jsr CL.RESET CS.RUN.READ.9 rts *-------------------------------------- CS.RUN.BATCH -* ldy #S.PS.hStdIn -* lda (pPS),y -* >SYSCALL feof -* bcs .2 unsupported + ldy #S.PS.hStdIn + lda (pPS),y + >SYSCALL feof + bcs .2 unsupported -* tay -* beq .2 + tay + beq .2 -* >SYSCALL GetChar -* bcs CS.RUN.READ.9 + >SYSCALL GetChar + bcs CS.RUN.READ.9 -* cmp #3 test Ctrl-c -* bne .1 + cmp #3 test Ctrl-c + bne .1 -* sec -* rts + sec + rts -*.1 cmp #19 test Ctrl-s -* bne .2 +.1 cmp #19 test Ctrl-s + bne .2 -* lda #$80 -* >STA.G bPause -* clc -* jmp CS.RUN.LOOP.END + lda #$80 + >STA.G bPause + clc + jmp CS.RUN.LOOP.END .2 >LDA.G bSET.X beq .5 @@ -436,7 +426,7 @@ CS.RUN.BATCH bne CS.RUN.LOOP.END pha - jsr IO.FEXIT + jsr CORE.RETURN >LDA.G bExitOnEOF >STA.G bExit @@ -494,12 +484,7 @@ CS.DOEVENT lda (pEvent) .9 sec rts *-------------------------------------- -CS.QUIT >LDA.G hInputBuf - beq .1 - - >SYSCALL FreeMem - -.1 jsr HIS.Quit +CS.QUIT jsr HIS.Quit jsr CL.Quit jsr CORE.Quit clc @@ -693,12 +678,9 @@ M32.Printf .AZ "%L" DS.START CORE.STACK .BS CORE.STACK.MAX+1 pData (0 = Stack Ptr) PUSHD.STACK .BS PUSHD.STACK.MAX+1 -FILECALL.STACK .BS FILECALL.STACK.MAX*3+1 hFuncList .BS 1 -hInputBuf .BS 1 - bReadMode .BS 1 bBatchMode .BS 1 bFuncMode .BS 1 @@ -726,10 +708,12 @@ CORE.IntCmd .BS 1 CORE.CmdFile .BS 1 CORE.hArgVBuf .BS 1 +CORE.PSFlags .BS 1 CORE.ArgIndex .BS 1 CORE.Test .BS 1 +CORE.TestOp .BS 1 +CORE.TestArg .BS 1 CORE.Operator .BS 1 -CORE.PSFlags .BS 1 HIS.hBuf .BS 1 HIS.Count .BS 1 diff --git a/X.ERRORS.S.txt b/X.ERRORS.S.txt index d5bd3e9f..c3cd2cdc 100644 --- a/X.ERRORS.S.txt +++ b/X.ERRORS.S.txt @@ -41,6 +41,7 @@ ERR.Codes .DA #MLI.E.IO .DA #E.NOFOR .DA #E.NOIF .DA #E.BADFTYPE + .DA #E.FUNDEF *-------------------------------------- ERR.Count .EQ *-ERR.Codes *-------------------------------------- @@ -82,6 +83,7 @@ ERR.Messages >PSTR "I/O Error" >PSTR "NEXT Without FOR" >PSTR "FI/ELSE Without IF" >PSTR "Bad File Type" + >PSTR "Undefined Function" *-------------------------------------- >PSTR "Unknown Error" *--------------------------------------