From a28d9c361f303c42061e318663b25e74928fb5ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Wed, 28 Aug 2019 17:21:42 +0200 Subject: [PATCH] Kernel 0.93+ --- .Floppies/A2OSX.BUILD.po | Bin 33553920 -> 33553920 bytes BIN/CSH.S.CORE.txt | 148 ++++++++++++++++++++++----------------- 2 files changed, 83 insertions(+), 65 deletions(-) diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 8da2ea9f8dca0b796c6b6c68248be26b63f671f6..0f8e5155ded585993c8e369ea83d0c47a5c8d24e 100644 GIT binary patch delta 12544 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 Pfz!ZWx(E2*y0rfT?<*3` delta 12497 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 L.CSH.KW +.5 >LDYA L.CSH.KW jsr CSH.LookupID - bcs .4 not an internal CSH keyword.... + bcs .6 not an internal CSH keyword.... txa >STA.G CSH.CmdSave @@ -87,10 +96,10 @@ CSH.Run.1 cmp #'}' End of block ? jsr CSH.KW.JMP bcs .9 - bra .7 + bra .8 -.4 jsr CSH.GetVar - bcs .5 +.6 jsr CSH.GetVar + bcs .7 jsr CSH.GetCharNB bcs .9 @@ -110,13 +119,13 @@ CSH.Run.1 cmp #'}' End of block ? cmp #';' bne .99 - bra .7 + bra .8 -.5 lda #0 no return value type check required +.7 lda #0 no return value type check required jsr CSH.FnEval X = function index bcs .9 -.7 jsr CSH.GetNextCharNB Skip ; +.8 jsr CSH.GetNextCharNB Skip ; bcs .9 cmp #C.CR @@ -127,15 +136,6 @@ CSH.Run.1 cmp #'}' End of block ? .99 lda #CSH.E.SYNTAX sec .9 rts - - - -.80 jsr CSH.GetNextChar - bcs .9 - cmp #C.CR - bne .80 - - jmp CSH.GetNextChar Skip CR *-------------------------------------- * Built in Keywords *-------------------------------------- @@ -329,10 +329,11 @@ CSH.TYPE stx ZPVarType lda ZPVarType jsr CSH.ExpEval - bcs .99 + lda ZPVarType jsr CSH.SetVarValue Update value to this var + bcs .99 jsr CSH.GetChar bcs .9 @@ -404,6 +405,7 @@ CSH.FnEval ldx ZPPtr1 inc ZPPtr1+1 .4 jsr CSH.ExpEval + bcs .9 lda (ZPPtr1) no more arg in fn definition @@ -413,21 +415,31 @@ CSH.FnEval ldx ZPPtr1 bcs .9 cmp #',' - bne .90 + bne .6 jsr CSH.GetNextCharNB Skip , lda (ZPPtr1) bne .3 Another ARG.... - bra .9 + bra .9 extra args....error + +.6 cmp #')' + bne .90 + + lda (ZPPtr1) + eor #CSH.T.VARIADIC + beq .8 + + bra .90 missing arg .7 jsr CSH.GetCharNB bcs .90 + cmp #')' bne .90 - jsr CSH.GetNextChar Skip ) +.8 jsr CSH.GetNextCharNB Skip ) plx restore X = function index @@ -446,13 +458,15 @@ CSH.FnEval ldx ZPPtr1 .91 lda #CSH.E.TMISMATCH sec -.9 plx +.9 plx Discard function index + + plx stx ZPPtr2 plx stx ZPPtr1+1 plx stx ZPPtr1 - plx + .99 rts *-------------------------------------- * Input: @@ -465,12 +479,12 @@ CSH.ExpEval ldx ZPPtr1 phx ldx ZPPtr1+1 phx - ldx ZPPtr2 + ldx ZPPtr2 local : VarType phx - ldx ZPPtr2+1 One local : BOP1 + ldx ZPPtr2+1 local : BOP1 phx - - sta ZPPtr2 save Type + + sta ZPPtr2 .10 lda #$ff sta ZPPtr2+1 Reset BOP1 @@ -481,14 +495,16 @@ CSH.ExpEval ldx ZPPtr1 .20 jsr CSH.IsLetter Fnc or Var ? bcs .2 - lda ZPPtr2 var type jsr CSH.GetVar bcs .1 + ldx ZPPtr2 var type jsr CSH.GetVarValue Get value on stack + bcs .99 bra .11 -.1 jsr CSH.FnEval X = function index +.1 lda ZPPtr2 var type + jsr CSH.FnEval X = function index bcs .99 bra .11 @@ -747,8 +763,8 @@ CSH.AddVar sta ZPVarType .1 ldy #2 lda ZPVarType - >PUSHA Push Var Type On stack... - + sta ZPVarData + and #CSH.Q.PPPOINTER bne .2 Pointer, always 2 bytes @@ -761,19 +777,17 @@ CSH.AddVar sta ZPVarType lda #0 >PUSHYA DataLen - >PUSHW pStack + >PUSHW ZPVarData >PUSHW ZPVarID >LDA.G CSH.hSymbols >SYSCALL SListAddData bcs .9 - >LDYA ZPVarType + >LDYA ZPVarID .9 rts *-------------------------------------- -CSH.GetVar sta ZPVarType - >DEBUG - >PUSHW ZPFileBufPtr +CSH.GetVar >PUSHW ZPFileBufPtr >LDA.G CSH.hSymbols >SYSCALL SListLookup bcs .9 @@ -787,37 +801,32 @@ CSH.GetVar sta ZPVarType bcc .1 inc ZPFileBufPtr+1 - -.1 ldx ZPVarType - cpx ZPVarData - bne .99 - clc - rts - -.99 lda #CSH.E.TMISMATCH - sec +.1 .9 CSH.GetVar.RTS rts *-------------------------------------- -* Input : ZPFileBufPtr, A = Var Type -* Output : Value on Stack +* Input : ZPFileBufPtr, X = Var Type (or 0) +* Output : Value on Stack, X = Var Type *-------------------------------------- -CSH.GetVarValue sta ZPVarType +CSH.GetVarValue stx ZPVarType .1 >PUSHWI 0 >PUSHWI 6 >PUSHWI ZPVarData - >PUSHWI ZPVarID + >PUSHW ZPVarID >LDA.G CSH.hSymbols >SYSCALL SListGetData bcs CSH.GetVar.RTS - + CSH.PushValueOnStack ldx ZPVarType + beq .1 + cpx ZPVarData bne .99 +.1 ldx ZPVarData ldy CSH.TSIZE,x .2 lda ZPVarData,y @@ -827,14 +836,15 @@ CSH.PushValueOnStack clc rts - - + .99 lda #CSH.E.TMISMATCH sec .9 rts *-------------------------------------- CSH.SetVarValue cmp ZPVarType bne .9 + + sta ZPVarData tax ldy CSH.TSIZE,x Byte count to transfer @@ -847,7 +857,15 @@ CSH.SetVarValue cmp ZPVarType dey bne .1 - clc + >PUSHBI 0 + ldx ZPVarType + lda CSH.TSIZE,x + inc +1 including TYPE + >PUSHA + >PUSHWI ZPVarData + >PUSHW ZPVarID + >LDA.G CSH.hSymbols + >SYSCALL SListSetData rts .9 lda #CSH.E.TMISMATCH