From 1ae5277b45c1282ae72e4fa497cb71c2f94244e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Wed, 12 Jul 2017 17:25:23 +0200 Subject: [PATCH] Kernel version 0.9 : SHELL, enhancement in Batch mode....(Cont.) --- .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 | 109 ++++++++++++++++++++++++++++++++++++--- SBIN/SHELL.S.txt | 35 +++++++++---- 5 files changed, 127 insertions(+), 17 deletions(-) diff --git a/.Floppies/A2OSX.BOOT.po b/.Floppies/A2OSX.BOOT.po index 51dcb739d001d76903906b845383097272cada26..ea32dabb7405e224b4d935fef811ca549e37a35f 100644 GIT binary patch delta 2915 zcmZvee@q-z9>CvQcBd4Iu(Z_;tnzqEf!%d~lvcZoEiSXWg>4rWVSv_CGkS^Er13}Y zPQ62AQzbE28e!jonkD2&%VSKt!vKkAnVN0^gShI#a%{K5I08|k(R&JVC7&s~zz=cp} z4_I=Q_5uiiftph;YnDtc=f3V@BkfDMkrlX^<=llZ7hHmY(lu~-Jin=OA#p?#=S`I* z^BH9;F$aw)Kow>OsNLD-Ztq%*&qP51*s@S;)-0Lg zD(}n1n&%vZ>*)%0MtZ{8+!+oS!80bHH~SD8*1}AWb(faUsr-CS<>k{0?&^pH-Ag8b zd6YD92h{mZrj~Q}c5|)a&h{`j4>M1YIxZCGxtZmhE6X*wn>+jh$*AZ2r}LYC zIw6QnftW)xoK^p`3P0_!|Kvxsm?}--4FAU z8Uc4k+R4-}ZW3mcOj24~hID5k>MgYbxS=J?al026J9COu)2OdTm{|$T*0Kc5025fv z=u`D?f%*bDf+#xNW*$F`+V>h0kEQUtL!*j7J9(_@sDn;zT1flwgG!OlL@D z7JjQ>>Qt?)1Y->`~hq~4HiYQ<-y zUNSD1kup0kGxVKu<uA!vx@-|pyU|m9L8x#$%dV~j?;9~~XEgWrv8$E*_ zFO%kpOFsQ1y^phQWu3@OIMN5nFdZT{sURAth8VR!jFC7 zqmX*T_spPY+=)JLplFSaXaptzAF;7+d7D}>rPiLKk}@|9)u?8beu>8WFEJblz$SQ0 z_#~j^RnrWs`-#Wr$y}3VbR1irjt_W`+nxpk8`Iz#dGo?m>J6#C$S$RaDz;}8T}q*N za4ep{@r!bY(m-FhG)rXz9iZ$0D;7Ffs}0oC7qe^NmQ)+R8ojkavsc$1&Uocg^{0wq z?j8mC4OR#quA93dtN7$bGzzm%T)2Bmxb-Q?6H9&}OF;rlWvtSNv$JL)s$u zDcYayWyGf7YJ66HMNy}e>)M>26vYWFpH_=n zD-yWzZ)D?W`m9=1O^rE)W+nnhD zogKkYciZBT`Z+mLztG86yFI m&zm9tf0i|xXzs{$kd|YfBp=2X&wL84opfQHt+E&{-}Qg3)^wf# delta 2713 zcmZvedrVVT7{JfzP##-0?Y6{dV$7DkG%TS} zF@)%}x0owpm)Z>jMDS7*$o?Q3$#m94cO6T%n6Z^?MiYG8Z3fLY-OlahbqoFD_B-GG ze&6eyey84Of;XDLW-H{=K#q?Snh-yD8Kuc@qS(tbm*D)cNa??vWV~i^{RXRkF*o*6UUm@izm*Sg$DXt;SKv&~x zY_Kn+P8`AsD5Q;4HT$8gF3e_EiT#*~@5fABKUzVd)3Lp}s>S4*Jt0IpcKegmtv@gm zmrg67Fz2?`IqGIf;y6eFiP@66RITFvJk2f_@?ml|!`$RwUXa)@uFWtmsUEP#QH!^J z;YULB;Y|vO$58lXA;DW<88E-v?smVnaM+0 z#CWhqdUAU}fz95q)9tF8b4GlHb2u-}LDeH{6#X=zrFYe5F+(>RLnm@w=)+Vr?}|3J;BLXM1$Xjn1#;~l`QK{qQirJ;{VqKKXg3*p z7lE+|JyYFv(A%#=>6B7bHq&(k+mLCz%op zwB%Il*mTk0vG`UKO!84`Pw@0G$@$exw*_vj=rBxn7PzGg8(iT{#dxi^%Cd@+7Ram%N zh&8LRa9I#CIGNgmYkis7wFQ2-jwg9Cg7_y94WD@pSBclD5yU-?$qc^*X0^#R+&?%x zpV*%eix(!#Xwq|T(iHjtM{h4WYQ7zWAuw$2rVYnw!}Zba=HjuwYNxR@`!K^wTdzAtG*{ zvX#%g&TGd6iJOT+-YHsz4hr#ZVnezDmcs|ktqL)(qDq+ChCRO54}^o$ORD#I+s(b2 zeW1N41n%QEAKeqYA^xw3k!unZRWU^amk{jg_xech?MNM0EW9v^mR!EDK(PhMsf9(F zxZp3{j%~`{tk!$a`5<4k=hM2w=14OCD3dn#;aEO1Mn-?HgcVTvj6}~!MrVck5;Ua? z0;HnYS5Yz*N#gVHu7BOeBUDPUS$Lg}wA88TGx&giu4Cn&I8nIF`!gzKPFtZb&Er8X zicJY;6aJwc_$fct56q_<2ELTKyoV-(Pc|T;z?XY_EtR3!A z;Omne*#Wal#d&xbN(VIKIvhU?$3bdc!`vu|eG^ylFdUB`hRc8j^>tQTW6i=Kx`7AL z9qAxqrk4Zph27|OIOoC=6Bt}Cz3UjuktM?rYv%szh}Zu(P_@iC5x*6aIC)&p+%+x; z%+NAmYK=`o5>ps-FMz@oF#7Kih$`YklFqn(-NB=LaK(H`fn;3YEX_5~Zgb!W^B>|N zSPd?uO2NP~pvGFcm;(fWa&R!NU(<`hn9p&bt#Z}ZEMf@-2A{|6kmbsfMq|wja~%}Q YQH|s4=+0@$q0Yca{$N&HU diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 0044b06f08bdca9d57182d902594bbead86ef5fa..29068bbff8d837c49c762ea37c7d6b18245403b4 100644 GIT binary patch delta 1422 zcmYLJacmP+7{7aKOKB;qu$g8;czfO2UT@dCc2&v%-44q(DRjtCnZz9afshczM2vBa zU35cIa9PXX7=m05nJd}CwM!hDKxXt0Zi#vj6U_`dV}gqgz2E|bi1^-$@h;!X@Atjm z_kHj3z3*f>Cd)Cs)<##31#By6+bnvbd~ApP2fDVRJ-MZw`v0;0NYfNYQL`xO_EWzQ zP`6n5SptOwv*5kZpg-L{eOwh{Vb=L?N)eLi73oPZ~* zx1$f(G4>)m!J2F%n`B#AkrN{#{|rCH{>pA-Z`NE3M1pg{+2F03%|UPApW1H&@33dX z_u0jD6b1JnZ7-xQ8MM`+NFfke=Ic;TXVIZuS(H%+vq(Lbe~?A6o$*PqS@}2wn5Msj z`bKrIfUL6AYt?xwhtvVA$RT~Dwg;!uKEaDV2TxTOk@qIkokQ>oR7BQw_;To+|04ve zl}8wW=u=9Z0jrn}Mz1Id7L<1VswW%vNk+=Nou>#^j}?$BPbo(j5U)>g*Atv&pEU2v z!lkv``Dv)zp&QBm>2A{wy?&omL`Jt&QI$i(nJhZ54itvM0CI(i|%$FF@oO_5J zWY4^DB8Q}mwQ%x=V1gUbq98%9@}Lep`bvh^-oVv+qdmfuN^4X>7!^#$%vpF;+0TI$K;)Fu98kdlUU@14UIJo7ITHac!HVU3kWb2glORFXoy4mdew2kHVVJ7%V~^qx zz;?eFG1gjDlUCpoLFVmg+DesF+FPXF*I3vqfG6pD%9ldvTs2Wp-HkK8j(d%-(K+PX zE%yrN{JW{%s7B4=oi}GlHfa52aOQKwv3}mM#dN9zc{z*ZDWlDdkqxe-G;0Zg^8}eb zLY9_@bzy4$4&2iN@=WSpZAot}9V`k)x%FpNP8i0uvH}hn|1Js|X}il0U4CU*Jz$$u z^+Xm)@GhfLFc#Lg!a&&YSRvg1iEgU~ZVT%xF!#acaR2Z48oA6ElHlI3UQPmBB;1Y%48?)ieKOqdHJbX}#*6(<+~YE%Q%XpN zfI$NWr1%CSWH!S%t0xI-G#GOgTocw;8l9#vdYJbd;XUv3o<81kV|Ts_-U;iENg7S6 zc(JBzMxHaeOl#7-S?cL|RV^Ung5_$d%A$t1@!*vF^KR9$H~i-)302EEoVkj~fRGzO zN;~rO`-geuY#cOK+MjP}O(pH(v&p6n&UNWc?X8=(CdYq^gPq`D0t_X}dX68Y?ZLKm zTiVmQ9)=hX?DW9ox|TF-Pm|XJyFBx>Bi)f6ukN9LqVex>-+S`qGHf<%c5Du83$Qt{ OEyU&;moK~J&;JE4P9Vwv delta 1135 zcmXX`e`p(J7{2>1X|t}iS(|F?*!JbSHpyM?(o33>*y)(M9|#$%_yZB?ZU|$8AqpzW zlpNaB5}aGEEw_wS&eN18qgqYy3{htR{`PcX(kRnc57kIMQKDQ?Lb zHL?`HT<@6W0nj=G5azbXM(Upbi|TD8SPhfRb`mT&L5~gmGTG~1ZBzg+?7|2m3*y@r zi+itZAKN9-`-NilZHxa=7(S<0keZ+af7PGaq0_Iu>0mdRt4+$ z`4;Pp2_Aws;&#`BeG`teT22JJfhuTa5$NE0R7*#}C{RVM5(Tk=m8jHW$i!1NPB`Pd zD%w81rOF#qgc=9PU^3~!kbH@1pPv-9_5olyCSMPLJ-d#PvnqX=a*FWn)H5s5`3S7= zFnt$GGFrC;o?=zex)1kW!@(sdvj3>lINekkFFF0L6QL@Bee{NQLu#%o76X9{aeS^s zIS;3Z{HK(xRAf(4*_c7yBr`9rIc^aDZi)8ePU27_@rdowr%Fm5Da+P~9d{02n#-;pa29>q+Mt@U}y9+hR>cqEtRcVg&%1fkV@uwKrPrJ7e+(H^R z2qH=N1E*7P2X8(MJ9(=E_mNxwB!eML@#ap#eK5$MU%x;e_`96Rypo2sVdYzx(xwMN zzFU^zQQquyByCQC8wRxp6W{^*Wo&Zx4dn_$;39Anv=FoscnG!;v@I%Ewkx0h2gt<1v;Y7A diff --git a/.Floppies/A2OSX.SRC.po b/.Floppies/A2OSX.SRC.po index c7e5d042334c70c75e952a085c75902aaf203329..0c117a1398368c483d296c1e7c3a792e2402edb8 100644 GIT binary patch delta 10749 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 L.TXTCMDS >STYA ZPPtr2 @@ -134,7 +142,11 @@ TXT.SetBufPtr ldy #BatchFilePtr sta ZPBufPtr+1 rts *-------------------------------------- -TXT.SavePtr rts +TXT.SavePtr ldx ZPBufPtr + stx CSH.SavePtr + ldx ZPBufPtr+1 + stx CSH.SavePtr+1 + rts *-------------------------------------- TXT.PushPtr rts *-------------------------------------- @@ -230,27 +242,108 @@ TXT.Exec.IF jsr TXT.GetCharNB jsr TXT.ExpEval bcs .99 - tax jsr TXT.GetCharNB - bcs .9 + bcs .99 cmp #')' bne .9 - txa + jsr TXT.GetNextCharNB + bcs .99 + cmp #'{' + bne .9 + + lda CSH.ACC + ora CSH.ACC+1 + ora CSH.ACC+2 + ora CSH.ACC+3 + beq .6 eval returned false, skip {{....}} + + jsr TXT.GetNextCharNB Skip '{' + lda #'}' Tell '}' is expected at the end of block + jsr TXT.PushSEP + bcs .99 + + + rts + +.6 ldx #1 expecting 1 '}' + +.7 jsr TXT.GetNextChar + bcs .9 + cmp #'{' + bne .71 + inx + bra .7 + +.71 cmp #'}' + bne .7 + dex + bne .7 clc rts - .9 lda #SYSMGR.ERRSYN sec .99 rts *-------------------------------------- -TXT.ExpEval lda #1 +TXT.PushSEP tax + ldy #CSH.SEPStack + lda (pData),y + cmp #CSH.SEPStack+CSH.Stack.MAX + beq .9 + + pha + inc + sta (pData),y + ply + txa + sta (pData),y clc rts + +.9 lda #SYSMGR.ERRSYN + sec + rts +*-------------------------------------- +TXT.PopSEP ldy #CSH.SEPStack + lda (pData),y + cmp #CSH.SEPStack + beq .9 + dec + sta (pData),y + clc + rts + +.9 lda #SYSMGR.ERRSYN + sec + rts +*-------------------------------------- +TXT.CheckSEP tax + ldy #CSH.SEPStack + lda (pData),y + cmp #CSH.SEPStack + beq .9 + tay + txa + cmp (pData),y + bne .9 + clc + rts + +.9 lda #SYSMGR.ERRSYN + sec + rts +*-------------------------------------- +TXT.ExpEval jsr TXT.GetNextCharNB + bcs .9 + + lda #1 + sta CSH.ACC + clc +.9 rts *-------------------------------------- MAN SAVE /A2OSX.SRC/SBIN/SHELL.S.TXT diff --git a/SBIN/SHELL.S.txt b/SBIN/SHELL.S.txt index 9f4c5ef8..c2ceb11f 100644 --- a/SBIN/SHELL.S.txt +++ b/SBIN/SHELL.S.txt @@ -21,6 +21,7 @@ ZPBufEnd .EQ ZPBIN+12 *-------------------------------------- CmdLine.MAX .EQ 127 VarLen.MAX .EQ 15 +CSH.Stack.MAX .EQ 15 *-------------------------------------- * File Header (16 Bytes) *-------------------------------------- @@ -103,6 +104,9 @@ CS.INIT jsr SetPWD ldy #bExitOnEOF lda #$FF sta (pData),y + + jsr TXT.Reset + clc .9 rts *-------------------------------------- @@ -226,20 +230,29 @@ CS.RUN.BATCH jsr TXT.Exec jsr CmdBuffer.Normalize lda (pData) - beq CS.RUN.BATCH Empty line + beq .8 Empty line....nothing to do.... >LDYA pData jsr Cmd.ExecYA - ldy #S.PS.RC + +.8 ldy #S.PS.RC sta (pPs),y clc rts -.9 ldy #bExitOnEOF - lda (pData),y - bne CS.RUN.EXIT +.9 cmp #MLI.ERR.EOF + bne .8 + + lda #0 + + ldy #S.PS.RC + sta (pPs),y + + ldy #bExitOnEOF + lda (pData),y + asl CS if bExitOnEOF + lda #0 - clc rts *-------------------------------------- CS.DOEVENT sec @@ -509,6 +522,9 @@ INTCMDS >PSTR "CD" >PSTR "TIME" .HS 00 TXTCMDS >PSTR "IF" + >PSTR "WHILE" + >PSTR "BREAK" + >PSTR "CONTINUE" .HS 00 *-------------------------------------- MSG.GREETINGS >PSTR "\r\nA2osX-Shell\r\n\r\n" @@ -527,10 +543,9 @@ CMD .BS 256 ARGS .BS 256 TIME .BS S.TIME STAT .BS S.STAT -hNEWPATH .BS 1 -hCmdLine .BS 1 -hFullPath .BS 1 bStartProc .BS 1 +CSH.ACC .BS 4 +CSH.ARG .BS 4 *-------------------------------------- .DUMMY .OR 0 @@ -549,6 +564,8 @@ CmdHistory.END .BS 1 hBatchFile .BS 1 BatchFilePtr .BS 2 BatchFileLen .BS 2 +CSH.SavePtr .BS 2 +CSH.SEPStack .BS CSH.Stack.MAX+1 DS.END .ED *-------------------------------------- MAN