From c5c2d41ae380aa36a15019f2b5ebcc904c8b51ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Fri, 14 Sep 2018 15:08:30 +0200 Subject: [PATCH] Kernel 0.9.2 --- .Floppies/A2OSX.BUILD.po | Bin 819200 -> 819200 bytes .Floppies/A2OSX.SRC.po | Bin 819200 -> 819200 bytes SBIN/GETTY.S.txt | 108 +++++++++++++++++++-------------------- SBIN/SHELL.S.CL.txt | 2 +- SBIN/SHELL.S.CMD.txt | 35 +++++++------ SBIN/SHELL.S.txt | 2 +- 6 files changed, 72 insertions(+), 75 deletions(-) diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 4fe9f66c25a56f6965edb51e307c055f51c97852..15826c060f24dd8a309b9da09c6dd5c9ec5d3459 100644 GIT binary patch delta 1733 zcmaJ>e{54#6n^iv-MWslGGr^um}ed9`fGjLtJ@08#%5p^9WX^Bf?(NLfM|j&BJ7uY zQ`W#jVhf3H_y@jJnd|KIb;ycQCNzLNg608A`TDOu zXP%kx=(Jz9P1&;Sd3Lis$8NIQ?4Q^^wVkw`v0ZZ|_#q22s>dvl%1ajHq(A5HThI#H z#MfC-bNU*qKSQcd6nY?wAF-k(YG7f0^nn$1A-XEs>OhrqJ{M7sNzJw(wS=o zZRB!r0;uD=<2^Tq@tzx8)L8$;La8e8 zyg=b#!YozEzmvtRkH!v<2an-GIKC%D1;&z&(HTc_{S{t|M*i6a+IhLSJ}FcmGKbV> zuI|4YHo;H<1lM4QH+rxXeM`R@X2eZWr#uUGGU7UDW(GU@LDI{r`Vqzh?T#%l#rRXC zffu}c7THpQQIrD1(c4r0PYowX23N7Gn@}2jQAM*WEV4Gr&H9!6-KH|Rtj~w zy|9c|79_tCu zJaTcVQ0Ej^a=GDMFw_dbJH%S(wu?(R9q3EMGSC-`B_zWxSrZ<7lBF#9)$eT-jMjY{yeuNt}Wbh;W{D;#J1Q+;02 zUXuw8+)Y~KVlv<)6ii%Tf4o4cljIj`zg<_~Ia=fHZeJFd;wa6KJdn8hILNjSIBMOw~{nWq}s_ z8~i0-YciXbnbw-Trp=}rzOWJ5Xo_!WM5gq=JC-y!-_nSdJ##-F49A0J(&Tz+I*}VR z;iW&7n*-DN{)rF@4r4ng-~qFJh@27-7Wa{*3MhjD;?tWDlS+{vLnxK6Z9=&lPr<)X zYD`#@yq145@s2qjK@(AoTT=$M1eCKROzfP1!u|LtS4zlEK^0LXqihz`c&6k$<6&iM z3V*x_<(N;w@b`u^fsQB%)#8BS#`l1inxHXBJG6;t<#qROLYYzBn`nyGwX|$&Nn5!M zmNxhALK9Kl%c?2*fC1@z8&v%p)QzdhQnWFedqO=y0`q(^wJ)ae#Zr8+R9{T%i>3Ku Jy8c-D=wJPG#rFUJ delta 1767 zcmaJ>eM}Q)7{7a=LP4aUNL64D1xmlK9tu?=6h*BYb2w+5+jJdD!jdga5*Ot|%9Liq zC2KYD*vB7dr^J$yU2ztT!;xlNIL+cM+048_tU%Bi&2E`vIyT+=9&w4uvRv{!_dM_K z`S?BWhtJ3Qe5|ljlWZ?pmUZSe&GkOrGdWa;L9Z*KCMmF&Fqy~dBk$|F5Ox+kb}q|0 zbSE-&Cqn17b(UxMP;MPX32+<63hxyjVo$JPHo`{PFIkZ-XDiuib{+d8dz&pU8eV>U z`Nkp-n``{A^zYKIO&3h_j9SxI#v`WBj31Y}%VfuxBZtXlw*Sv}sqD?NGiCLbddnF3 zjB^T0mo;IbtY9@+oz`Nj&AP&R)^g5r*&0kwsO~;$l4T6{$}jxSi}GWMG$%sFAIzLN2AdRX|~tZIMJO5Q;n0| zH+*4z-T7jkicXA*Ym}W>DMjKM>5u4yGXLbnsmahe9ElO{1}9YW;+(1ee?gKOxh?sr zIr_Oeb2Zg!ByC;TIP}4C^ex>PV}w0ohcq9$7~y4TX8POvK+KSm>P8q3blaMMat7v! zMT*ERHqDk6D64a9fn@P@1qFGu?TyC*VS_OlS zKrXRZzBMZM!=Oblg*#veBNTc=G>kLCVhl^V<-3RJC_PH*CFwTy>b<0RdkE@wFdlwy zRK^kfTdHcpE)}r>^X{G|;^rJ2cP`|LAT1>I7DU=%phM-I)P5XPF8{gC&0mSkop`Ah zhq_5nQ?QO33Q*v`EDaJS{Eu;vU*uYTE?A9S>&f zV1jS^PL`g-%}*yJG)+#ElO$M05>yN(#7qhK9%4|ZELo-#$|4oAfIxCZn@Ys@1F^Jt zsG7MVcrM`scw_e3SMyy#nH1Ye8ZIEangaC>VY4qUvL6Nx0GzN1HE_f#RQu8(*D0)o zT)W^T5mwQxcrc|}xXTCyk>{7dz*c}ko3N1YipsjI9yRqrJH)uUai2J-8-K0-*pHv|IvUr(L!S9R89yrak25*hx zaS=Jrz$|yA0+sf;(7d!$Ka+Tj=s#YC>ghPQr3yK*dZ!Axu)0u%#!K!pftg+}PmSV} zsDWA4BD2qg%S<4RoFWZe=7y`0Sx1#AnoGL-F0bB;DF+tE+=x!qzA7QTSF8!7$2@2S zO=of|H=#&QCfloTOmrs#cxxcDh+OAHF!nS`)#vA<^^}{UC=;~6wZdD4`G!ivONM5{ zK0~`<8&}eREc80Az5yAyjs~>;h2IN7HykpO3!EW7Qu0Cu{2NH|Wx-#CfvGSG4PrYK z!UDIYG5ibu4I8{05AJdF3~|&1<$m7HW$Z>wr-8gW;dUYi3PDw%Dn1=QQ+YUJ-FbL2 zd~Hw;Q%9f7iJQvy5Q4Ha+Z2>X$!__^pNJC`$-&n|Wl=8~`L$S6Qh`4Cl>9oyjqFBC z&F5k8d!3fAjmk>W>Y(iM^6T)gCZtzch4=8aLD}oV>wSArcG{HmpqHnEGLK?!qZzty zKblHwX=!fJZf=I!#@H)KGqitKQs1uRhCErJ^ Y;~IZ_oPx# diff --git a/.Floppies/A2OSX.SRC.po b/.Floppies/A2OSX.SRC.po index fe8c9a931172b966c99f8cbb6dfce73a2a1354df..7986a22b4a3ca660e0253b0441e6fa897385af25 100644 GIT binary patch delta 5727 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 DvCf_7 delta 5637 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 R=P$vq7txevWNe1E?SHi3i@X2; diff --git a/SBIN/GETTY.S.txt b/SBIN/GETTY.S.txt index 59a88156..ad83ed6b 100644 --- a/SBIN/GETTY.S.txt +++ b/SBIN/GETTY.S.txt @@ -35,7 +35,7 @@ L.MSG.USAGE .DA MSG.USAGE L.MSG.GREETINGS .DA MSG.GREETINGS L.TELNETOPTS .DA TELNETOPTS L.TELNETOPT.TTYPE .DA TELNETOPT.TTYPE -L.TELNETOPT.LINEMODE .DA TELNETOPT.LINEMODE +L.TELNETOPT.LMODE .DA TELNETOPT.LMODE L.ENV.TERM .DA ENV.TERM L.MSG.DEBUG .DA MSG.DEBUG .DA 0 End Of Reloc Table @@ -79,68 +79,66 @@ CS.INIT ldy #S.PS.ARGC sec .9 rts *-------------------------------------- -CS.RUN >PUSHWI TELNETOPTS.LEN +CS.RUN >LDYA L.ENV.TERM + >SYSCALL UnSetEnv + + >PUSHWI TELNETOPTS.LEN >PUSHW L.TELNETOPTS ldy #S.PS.hStdOut lda (pPs),y >SYSCALL write - bcs CS.RUN.8 + bcs CS.RUN.9 >PUSHWI K.VER >PUSHBI 2 >LDYA L.MSG.GREETINGS >SYSCALL printf - bcs CS.RUN.8 unable to send greetings...reset.. + bcs CS.RUN.9 unable to send greetings...reset.. jsr Init.Timeout -CS.RUN.LOOP - >SLEEP +CS.RUN.LOOP >SLEEP + + >SYSCALL GetChar + bcs .1 -.1 >SYSCALL GetChar - bcs .2 cmp #IAC beq CS.RUN.IACMODE >SYSCALL PutChar - bcc .8 + bcc .2 + bra CS.RUN.8 -.2 jsr Wait.Timeout +.1 jsr Wait.Timeout bcc CS.RUN.LOOP - -.8 lda #2 +.2 lda #2 >SYSCALL GetArg - >SYSCALL ExecPS + >SYSCALL ExecPSNewEnv -CS.RUN.8 clc +CS.RUN.8 +CS.RUN.9 clc rts *-------------------------------------- -CS.RUN.IACMODE jsr PrintHEX - - >SLEEP Wait for IAC VERB (or SB) +CS.RUN.IACMODE >SLEEP Wait for IAC CMD (or SB) >SYSCALL GetChar bcs CS.RUN.IACMODE - jsr PrintHEX - >STA.G IAC.CMD -.1 >SLEEP Wait for IAC OPT +.1 >SLEEP Wait for IAC SUBCMD >SYSCALL GetChar bcs .1 - jsr PrintHEX - >STA.G IAC.SUBCMD tax >LDA.G IAC.CMD cmp #SB - beq CS.RUN.IACSB + beq CS.RUN.IAC.SB *-------------------------------------- -CS.RUN.IACVERB cmp #WILL +CS.RUN.IAC.CMD cmp #WILL bne .8 cpx #TELOPT.TTYPE @@ -153,8 +151,8 @@ CS.RUN.IACVERB cmp #WILL .2 cpx #TELOPT.LINEMODE bne .8 - >PUSHWI TELNETOPT.LINEMODE.LEN - >PUSHW L.TELNETOPT.LINEMODE + >PUSHWI TELNETOPT.LMODE.LEN + >PUSHW L.TELNETOPT.LMODE .7 ldy #S.PS.hStdOut lda (pPs),y @@ -162,46 +160,42 @@ CS.RUN.IACVERB cmp #WILL .8 jmp CS.RUN.LOOP *-------------------------------------- -CS.RUN.IACSB -.1 >SLEEP +CS.RUN.IAC.SB +.1 >SLEEP Wait for IAC SB.IS or SEND >SYSCALL GetChar bcs .1 - - jsr PrintHEX - >STA.G IAC.SB - lda #0 - sta (pData) reset IAC.SB.DATA + >STA.G IAC.SB.CMD + + >STZ.G IAC.SB.LEN .2 >SLEEP >SYSCALL GetChar bcs .2 - jsr PrintHEX cmp #IAC beq .4 end of DATA, go wait SE pha - ldy #IAC.SB.DATA-1 - -.3 iny - lda (pData),y - bne .3 + >LDA.G IAC.SB.LEN + clc + adc #IAC.SB.DATA + tay pla sta (pData),y iny lda #0 sta (pData),y + + >INC.G IAC.SB.LEN bra .2 .4 >SLEEP >SYSCALL GetChar bcs .4 - jsr PrintHEX - cmp #SE bne .8 @@ -209,7 +203,7 @@ CS.RUN.IACSB cmp #TELOPT.TTYPE bne .8 - >LDA.G IAC.SB + >LDA.G IAC.SB.CMD cmp #SB.IS bne .8 @@ -249,13 +243,13 @@ Wait.TimeOut sec clc .9 rts *-------------------------------------- -PrintHEX pha - >PUSHA - >PUSHBI 1 - >LDYA L.MSG.DEBUG - >SYSCALL printf - pla - rts +*PrintHEX pha +* >PUSHA +* >PUSHBI 1 +* >LDYA L.MSG.DEBUG +* >SYSCALL printf +* pla +* rts *-------------------------------------- CS.END MSG.USAGE .AZ "Usage : GETTY " @@ -270,22 +264,24 @@ TELNETOPTS .DA #IAC,#WILL,#TELOPT.BINARY .DA #IAC,#DO,#TELOPT.TTYPE .DA #IAC,#DO,#TELOPT.LINEMODE TELNETOPTS.LEN .EQ *-TELNETOPTS +*-------------------------------------- TELNETOPT.TTYPE .DA #IAC,#SB,#TELOPT.TTYPE,#SB.SEND,#IAC,#SE TELNETOPT.TTYPE.LEN .EQ *-TELNETOPT.TTYPE -TELNETOPT.LINEMODE - .DA #IAC,#SB,#TELOPT.LINEMODE,#SB.SEND,#0,#IAC,#SE -TELNETOPT.LINEMODE.LEN +*-------------------------------------- +TELNETOPT.LMODE .DA #IAC,#SB,#TELOPT.LINEMODE,#SB.SEND,#0,#IAC,#SE +TELNETOPT.LMODE.LEN .EQ *-TELNETOPT.LMODE ENV.TERM .AZ "TERM" *-------------------------------------- .DUMMY .OR 0 DS.START -IAC.SB.DATA .BS 64 -IAC.CMD .BS 1 -IAC.SUBCMD .BS 1 -IAC.SB .BS 1 hDEV .BS 1 TimeOut .BS 1 +IAC.CMD .BS 1 +IAC.SUBCMD .BS 1 +IAC.SB.CMD .BS 1 +IAC.SB.LEN .BS 1 +IAC.SB.DATA .BS 32 DS.END .ED MAN SAVE /A2OSX.SRC/SBIN/GETTY.S diff --git a/SBIN/SHELL.S.CL.txt b/SBIN/SHELL.S.CL.txt index eabd35cf..f17029bf 100644 --- a/SBIN/SHELL.S.CL.txt +++ b/SBIN/SHELL.S.CL.txt @@ -35,7 +35,7 @@ CL.CHARIN tax sta (pData),y Y=bEscMode txa - ldx #EscChars.count-1 + ldx #EscChars.Cnt-1 .17 cmp EscChars,x beq .18 diff --git a/SBIN/SHELL.S.CMD.txt b/SBIN/SHELL.S.CMD.txt index fa228e22..d46f5b43 100644 --- a/SBIN/SHELL.S.CMD.txt +++ b/SBIN/SHELL.S.CMD.txt @@ -389,10 +389,8 @@ Cmd.Exec.SET lda (ZPPTR2) >PUSHW ZPPTR2 Push value >PUSHW ZPPTR1 Push name + jsr Cmd.Exec.SET.PRINT - >PUSHBI 4 - >LDYA L.MSG.PRINTENV - >SYSCALL printf bcs .9 ldy #$ff @@ -412,22 +410,20 @@ Cmd.Exec.SET lda (ZPPTR2) .8 clc .9 jmp Cmd.Exec.Done - - -Cmd.Exec.SETVAR ldy #0 - - lda (ZPPTR2),y - iny - cmp #'=' string is '=value' ? +*-------------------------------------- +Cmd.Exec.SETVAR cmp #'=' string is '=value' ? beq .99 syntax error -.1 lda (ZPPTR2),y - iny + ldy #0 + +.1 iny + lda (ZPPTR2),y beq .3 no =, GetEnv cmp #'=' ARGS contains =, PutEnv bne .1 + iny lda (ZPPTR2),y beq .2 "VAR=" go UnsetEnv @@ -435,8 +431,10 @@ Cmd.Exec.SETVAR ldy #0 >SYSCALL PutEnv jmp Cmd.Exec.Done -.2 dey String is "VAR=", Remove endig '=' +.2 dey String is "VAR=", Remove ending '=' + lda #0 sta (ZPPTR2),y + >LDYA ZPPTR2 String is "VAR"... >SYSCALL UnsetEnv jmp Cmd.Exec.Done @@ -449,16 +447,19 @@ Cmd.Exec.SETVAR ldy #0 >PUSHYA push value >PUSHW ZPPTR2 push name - >LDYA L.MSG.PRINTENV - - >PUSHBI 4 - >SYSCALL printf + jsr Cmd.Exec.SET.PRINT .8 clc .9 jmp Cmd.Exec.Done .99 jmp Cmd.Exec.ERRSYN *-------------------------------------- +Cmd.Exec.SET.PRINT + >PUSHBI 4 + >LDYA L.MSG.PRINTENV + >SYSCALL printf + rts +*-------------------------------------- Cmd.Exec.DATE sec .HS 90 bcc Cmd.Exec.TIME clc diff --git a/SBIN/SHELL.S.txt b/SBIN/SHELL.S.txt index 3456aa75..01cf46e6 100644 --- a/SBIN/SHELL.S.txt +++ b/SBIN/SHELL.S.txt @@ -370,8 +370,8 @@ FMT.TIME .AZ "%H:%M:%S (%I:%M:%S%p)" .INB /A2OSX.SRC/SBIN/SHELL.C.CSH .INB /A2OSX.SRC/X.ERRORS.S *-------------------------------------- -EscChars.Count .EQ 4 EscChars .AS 'DBAC' +EscChars.Cnt .EQ *-EscChars *-------------------------------------- .DUMMY .OR 0