From 3cf8399ffb2317735ab4d5447c5b995e98f4934f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Mon, 10 Jul 2017 17:50:32 +0200 Subject: [PATCH] Kernel version 0.9 : SHELL, enhancement in Batch mode.... --- .Floppies/A2OSX.BOOT.po | Bin 143360 -> 143360 bytes .Floppies/A2OSX.BUILD.po | Bin 819200 -> 819200 bytes .Floppies/A2OSX.SRC.po | Bin 819200 -> 819200 bytes SBIN/SHELL.S.TXT.txt | 123 ++++++++++++++++++++++++++------------- SBIN/SHELL.S.txt | 51 +++++++++++----- 5 files changed, 120 insertions(+), 54 deletions(-) diff --git a/.Floppies/A2OSX.BOOT.po b/.Floppies/A2OSX.BOOT.po index e698a6365445adb1a6fe3bf87c328ba2bc6a71a1..b0f6222521f42c52039cfcba17b0c29958965cfb 100644 GIT binary patch delta 3524 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 diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 3096e12cbcc2f1de0a70f1e569064aa97909894d..35d34ae6fdd058d72ed4ce27457d3aa01a32c969 100644 GIT binary patch delta 1164 zcmXX^ZEO=|9KU|VMarCWa^=ddog4_PwRbn?)Uru zfB(1V|HyJwmZREkyX_uod-&=e`>cblxZ1S=D0Nj#`$Nq8h^zH5zcP@zKj@v9>YZS( z9oosbK4s|F3$Mcuo1a5l_&)w6ejoo1&+vA>iZ=x_Xol{G4)Z7Y8veHTdtZC&YU};h zU%b0oUA~o;o4yPD7d*qjex$wunQ5K1dT`V0fQ#f<^&l~P>&<#c=%LyO(;E7ea~X7W zAcKx6qZy=}&aGz=m&ut1j~NISdqo)--PjbsM+CKv+S84H0*F4YXQ*WtbgQD z?lE`c+$k2Ue7qSraisuO@T~ywMpwx+^G+(Iz(v5SpMYutzM-JO0Gvby-VrEOwyRkz z1VPW%$woNghU!)_;F@#WF*QrTfM23*r`m=@GGu66Vc;UNkPfY7-DA0D$kh;Dr$b|@ zgz=RiXdGNe#=jELZ^${-0?AT9i7b-N#=`1bgwbTP3ac`Canuw(GKGO zP+Udu!Z|Z2|8>F)4wU+sY=;w1!c=T1sxpPB75~8$4DaRZrl9XR>Cg{pU_1ONYSbMy z7U2;O-W~!^uqGY|f%BjxjH|=oMM7T*gJ@kWEIL$)bRnrP({s|qpNE0ZaWAMxEDsig zpdLrUU?YAI1}Y6c9|28|_mi8<{TL_eptT%-Ef$^>-~-}`b_DE3W>D|8+&3)W zG)2Zg^Q@IDi_~{%otq}^7r|zB34bDj1EibEHUI}nx;JwSePLsW+b^fYG0%P`)uu9w z#Pjw7%>}K$^^mcP8lEi~o;RGza8Ax3c~19KU<=(xgjf$y&|Q)joN0NqTSXHBlSiD2j@M3RR&Dq;mTr8xG$PQO3wI z*AP%-xwXA?OgRs`EhWXf6xJ2e4?-Ea$?R3|OJo`tNI!IXXmQno^Ldiphd;mH|Nndb zZ}(S}jG|=BX`lBulnJjK_ci@=*UB>?php7Ke_`qjiuNR^I}{}0PbaIZlU4fq>3k!2 zks{wDEW$V95Os5iOLHUKIM-lrv0JRgTY@F7iAT99?kBd&TuS-UcKW-t#iY{BWFz@i z>J)c|qbMjL<2^{N+qBzTp^XnPge+@z>2sC)B@~t6ks&j(d>B@v(0Bm{Yg{m(a#8L2 z5a@k=D{a1_FIdR+OpL`Vl#2A(5`t6695YT~t#J(-a~Dp>YpCZgn^zG$i)zTd4abHS z6W<`%LfSzV#OY~GV!@NyW31WRQS3el>){fId$`8xa~5*WN9CNn)Gj#C@;G7a*XCJ} z8oa{azQVh{o6ephtylS_7BqcuGp;0Bc?SdSXBH&q1;8A%@kFhF)BErv(ZjL+3pDs= zo(El8fCqa5g_R`Sji1;<7#zT0j(|P~L}lE@0NbwZGmthVfEUM47%CocxgS$luZePQaaF*W*4r09hr6nkTeqjj@8hRX7AA>X5a~XrG zW!&5?i+7l-YZh-GKkv6so8Tzi$~cjtvjbmCXrGASQQFeVBKR8I6}6{_!JC*~90r-l zz9{((8FwKYZxOp}X}=7ERH!D{BW^MwVbd>&9-nsda*!zgx6B(GeLRlR`gO+Gi3Nr#H0kCGa+G zXKWO}JWlt1g(4@mh@vNz8EG+blA0Mcs2v>nXq)7M?q9a(OcBRRZO7|QK%cEBC8RX% zNhd=BVn^vD34v{boG2lOI>i09+5Qv%nki*_Vk6nnyOD*OWIyEo5mTkBxK>Hpu~xT7 z!E?0NM$p#8ED-3IwZV5m-?5;|oVdZLOqm!1;*m_RzEDE)4W<%O8EomcrP?;HGUTq> zT83z!D7%3*DrAQpx>#0Go0L$|+0%+ykO;f@0I>|O0;gQPp9Qq{LJ!Cla^P~#b5?5| k^1ziaXwikbr%?A6>b^qVU#NE#>VZN%Sg3bjt{>R=9}{fM4*&oF diff --git a/.Floppies/A2OSX.SRC.po b/.Floppies/A2OSX.SRC.po index 8235e970e1e56a83d91c9659d91e0aaf5aec14c9..604640984be657a7ee931c5aafe8d38cad1664b6 100644 GIT binary patch delta 8024 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 delta 7005 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 diff --git a/SBIN/SHELL.S.TXT.txt b/SBIN/SHELL.S.TXT.txt index 7c25a034..2ae65a62 100644 --- a/SBIN/SHELL.S.TXT.txt +++ b/SBIN/SHELL.S.TXT.txt @@ -5,47 +5,39 @@ INC 1 AUTO 6 .LIST OFF *-------------------------------------- -TXT.OpenFileYA pha - >PUSHWI 0 Aux type - >PUSHBI 4 S.FILEINFO.TYPE.TXT - >PUSHBI SYS.FOpen.R+SYS.FOpen.T - pla - - >PUSHYA - >SYSCALL FOpen +TXT.Exec jsr TXT.GetBuffer + jsr TXT.GetChar bcs .9 - ldy #hInputFile - sta (pData),y -.9 rts -*-------------------------------------- -TXT.ReadFile >PUSHWI UsrBuf256+1 - >PUSHWI 127 - ldy #hInputFile - lda (pData),y - >PUSHA - >SYSCALL FRead - bcs .9 - - tya - beq .10 - - lda UsrBuf256,y Y,A=Bytes read - cmp #$0D +.11 cmp #' ' bne .10 - - dey -.10 tya - sta (pData) + jsr TXT.GetNextChar + bcc .11 + bcs .9 + +.10 ldy #0 + + cmp #$0D beq .2 - -.1 lda UsrBuf256,y - sta (pData),y - dey + +.1 iny + sta (pData),y + + cpy #CmdLine.MAX + beq .2 + + jsr TXT.GetNextChar + bcs .3 + cmp #$0D bne .1 -.2 ldy #bEcho +.2 jsr TXT.GetNextChar Skip CR + +.3 tya + sta (pData) + + ldy #bEcho lda (pData),y beq .8 @@ -55,15 +47,68 @@ TXT.ReadFile >PUSHWI UsrBuf256+1 .8 clc .9 rts *-------------------------------------- -TXT.CloseFile ldy #hInputFile +TXT.GetBuffer ldy #hBatchFile lda (pData),y - beq .9 + >SYSCALL GetMemPtrA + >STYA ZPBufBase - >SYSCALL FCloseA + ldy #BatchFileLen + lda (pData),y + clc + adc ZPBufBase + sta ZPBufEnd -.9 lda #0 - ldy #hInputFile + iny + lda (pData),y + adc ZPBufBase+1 + sta ZPBufEnd+1 + +TXT.SetBufPtr ldy #BatchFilePtr + lda (pData),y + clc + adc ZPBufBase + sta ZPBufPtr + + iny + lda (pData),y + adc ZPBufBase+1 + sta ZPBufPtr+1 + rts +*-------------------------------------- +TXT.PushPtr +*-------------------------------------- +TXT.GetNextChar phy + ldy #BatchFilePtr + lda (pData),y + inc sta (pData),y + bne .1 + + iny + lda (pData),y + inc + sta (pData),y + +.1 ply + + inc ZPBufPtr + bne TXT.GetChar + inc ZPBufPtr+1 + +TXT.GetChar lda ZPBufPtr + eor ZPBufEnd + bne .1 + + lda ZPBufPtr+1 + eor ZPBufEnd+1 + bne .1 + + lda #MLI.ERR.EOF + sec + rts + +.1 lda (ZPBufPtr) + clc rts *-------------------------------------- MAN diff --git a/SBIN/SHELL.S.txt b/SBIN/SHELL.S.txt index 5e875285..03ce39e9 100644 --- a/SBIN/SHELL.S.txt +++ b/SBIN/SHELL.S.txt @@ -15,6 +15,9 @@ AUTO 6 ZPPTR1 .EQ ZPBIN ZPPTR2 .EQ ZPBIN+2 ZPPTR3 .EQ ZPBIN+4 +ZPBufBase .EQ ZPBIN+8 +ZPBufPtr .EQ ZPBIN+10 +ZPBufEnd .EQ ZPBIN+12 *-------------------------------------- CmdLine.MAX .EQ 127 VarLen.MAX .EQ 15 @@ -74,11 +77,27 @@ CS.INIT jsr SetPWD beq CS.INIT.INTERACTIVE no arg, continue starting interactive + >PUSHWI 0 Aux type + >PUSHBI 4 S.FILEINFO.TYPE.TXT + >PUSHBI SYS.FOpen.R + lda #1 >SYSCALL GetArgA - jsr TXT.OpenFileYA + >PUSHYA + >SYSCALL LoadFile bcs .9 + phy + ldy #BatchFileLen+1 + sta (pData),y + dey + pla + sta (pData),y + + txa + ldy #hBatchFile + sta (pData),y + ldy #bExitOnEOF lda #$FF sta (pData),y @@ -114,7 +133,7 @@ CS.RUN ldy #bPause jsr ERR.Print bcs CS.RUN.EXIT.RTS -.11 ldy #hInputFile batch mode ? +.11 ldy #hBatchFile batch mode ? lda (pData),y beq .10 @@ -200,15 +219,13 @@ CS.RUN.READ lda #0 plp rts *-------------------------------------- -CS.RUN.BATCH jsr TXT.ReadFile +CS.RUN.BATCH jsr TXT.Exec bcs .9 jsr CmdBuffer.Normalize lda (pData) beq CS.RUN.BATCH Empty line -* jsr HIS.Add - >LDYA pData jsr Cmd.ExecYA ldy #S.PS.RC @@ -216,8 +233,7 @@ CS.RUN.BATCH jsr TXT.ReadFile clc rts -.9 jsr TXT.CloseFile - ldy #bExitOnEOF +.9 ldy #bExitOnEOF lda (pData),y bne CS.RUN.EXIT @@ -228,14 +244,13 @@ CS.DOEVENT sec rts *-------------------------------------- CS.CHARIN tax - ldy #hInputFile Batch mode ? + ldy #hBatchFile Batch mode ? lda (pData),y beq .10 * Batch Mode cpx #3 test Ctrl-c bne .12 - jsr TXT.CloseFile ldy #bExitOnEOF lda (pData),y ldy #bExit @@ -367,10 +382,10 @@ CS.CHARIN.CTRL cpx #13 CR *-------------------------------------- CS.QUIT jsr HIS.Quit - ldy #hInputFile + ldy #hBatchFile lda (pData),y beq .1 - >SYSCALL FCloseA + >SYSCALL FreeMemA .1 .8 clc @@ -391,10 +406,15 @@ PrintPrompt >LDYA L.ENV.PS1 >SYSCALL ExpandPStrYA phx >PUSHYA - pla - >SYSCALL FreeMemA >LDYA L.MSG.PROMPT >SYSCALL PPrintFYA + plx + php + pha + txa + >SYSCALL FreeMemA + pla + plp .9 rts *-------------------------------------- * Remove extra SPACE & comment @@ -507,7 +527,6 @@ hNEWPATH .BS 1 hCmdLine .BS 1 Cmd.Exec.Mode .BS 1 hFullPath .BS 1 -hTextFile .BS 1 *-------------------------------------- .DUMMY .OR 0 @@ -523,7 +542,9 @@ bExitOnEOF .BS 1 hCmdHistory .BS 1 CmdHistory.IDX .BS 1 CmdHistory.END .BS 1 -hInputFile .BS 1 +hBatchFile .BS 1 +BatchFilePtr .BS 2 +BatchFileLen .BS 2 DS.END .ED *--------------------------------------