diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 8dba6763..45bee884 100644 Binary files a/.Floppies/A2OSX.BUILD.po and b/.Floppies/A2OSX.BUILD.po differ diff --git a/BIN/SH.S.CMD.txt b/BIN/SH.S.CMD.txt index e352e553..69360137 100644 --- a/BIN/SH.S.CMD.txt +++ b/BIN/SH.S.CMD.txt @@ -246,9 +246,6 @@ CMD.SET.1 rts -.8 clc -.9 rts - .99 jmp CMD.E.CSYN CMD.SET.YA >PUSHYA @@ -864,8 +861,7 @@ CMD.FOR.LIST >LDYA ZPArgVBufPtr phy pha - >LDYA ZPInputBufPtr - jsr CORE.StkPushYA Push CmdPtr AFTER FOR + jsr CORE.StkPushInputBufPtr Push CmdPtr AFTER FOR pla ply @@ -909,8 +905,7 @@ CMD.FOR.EXEC jsr CORE.ArgV.NextChar skip "`" CMD.FOR.PUSH pha save hFILE/hPIPE - >LDYA ZPInputBufPtr - jsr CORE.StkPushYA Push CmdPtr AFTER FOR + jsr CORE.StkPushInputBufPtr Push CmdPtr AFTER FOR pla @@ -971,15 +966,7 @@ CMD.NEXT.LIST lda (pData),y Y = StkPtr lda (pData) sec sbc #6 - tay - - lda (pData),y - sta ZPInputBufPtr - dey - lda (pData),y - sta ZPInputBufPtr+1 - clc - rts + jmp CMD.NEXT.FILEEXEC.LOOPY .1 lda (pData) tay @@ -1000,16 +987,7 @@ CMD.NEXT.LIST lda (pData),y Y = StkPtr .9 rts *-------------------------------------- CMD.NEXT.LIST.TOKEN - lda (pData) - dec skip FOR - dec skip SUB TOKEN - - tay - lda (pData),y - phy - >SYSCALL GetMemPtr hVARNAME - >STYA ZPVarNamePtr - ply + jsr CMD.NEXT.GetVarNamePtr dey skip hLIST dey @@ -1071,12 +1049,13 @@ CMD.NEXT.FILEEXEC bpl CMD.NEXT.FILEEXEC.POP jsr CMD.NEXT.LINE - bcs .9 + bcs CMD.NEXT.FILEEXEC.9 bpl CMD.NEXT.FILEEXEC.POP end of file/pipe lda (pData) sec sbc #4 +CMD.NEXT.FILEEXEC.LOOPY tay lda (pData),y @@ -1085,7 +1064,8 @@ CMD.NEXT.FILEEXEC lda (pData),y sta ZPInputBufPtr+1 clc -.9 rts +CMD.NEXT.FILEEXEC.9 + rts CMD.NEXT.FILEEXEC.POP lda (pData) @@ -1106,21 +1086,14 @@ CMD.NEXT.FILEEXEC.POP * clc rts *-------------------------------------- -CMD.NEXT.LINE lda (pData) - dec skip FOR - dec skip SUB TOKEN - - tay - lda (pData),y - phy - >SYSCALL GetMemPtr hVARNAME - >STYA ZPVarNamePtr +CMD.NEXT.LINE jsr CMD.NEXT.GetVarNamePtr >PUSHWI 256 >PUSHW ZPCLBuf - ply + dey lda (pData),y hFILE/hPIPE + >SYSCALL fgets bcs CMD.NEXT.END @@ -1140,6 +1113,19 @@ CMD.NEXT.END jsr CMD.SET.UNSET CMD.NEXT.LINE.RTS rts *-------------------------------------- +CMD.NEXT.GetVarNamePtr + lda (pData) + dec skip FOR + dec skip SUB TOKEN + + tay + lda (pData),y + phy + >SYSCALL GetMemPtr hVARNAME + >STYA ZPVarNamePtr + ply + rts +*-------------------------------------- CMD.WHILE CMD.IF jsr CORE.StkGetCtx diff --git a/BIN/SH.S.CORE.txt b/BIN/SH.S.CORE.txt index bd81423e..83392652 100644 --- a/BIN/SH.S.CORE.txt +++ b/BIN/SH.S.CORE.txt @@ -31,8 +31,9 @@ CORE.Load.YAX stx M32.ACC X = Code to Execute bcs .9 >LDYA ZPInputBuf jsr CORE.StkPushYA - >LDYA ZPInputBufPtr - jsr CORE.StkPushYA + + jsr CORE.StkPushInputBufPtr + ldy #S.PS.ARGC lda (pPS),y jsr CORE.StkPush old ARGC @@ -674,6 +675,9 @@ CORE.StkPushYAX phx bcs CORE.StkPushYA.9 bra CORE.StkPush.1 *-------------------------------------- +CORE.StkPushInputBufPtr + >LDYA ZPInputBufPtr +*-------------------------------------- CORE.StkPushYA phy jsr CORE.StkPush bcc CORE.StkPush.1