From 88484b578bef63bb9eff6cedc8546bc94ab82bad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Tue, 18 Aug 2020 21:56:50 +0200 Subject: [PATCH] Kernel 0.94 --- .Floppies/A2OSX.BUILD.po | Bin 33553920 -> 33553920 bytes .Floppies/A2OSX.TEST.po | Bin 819200 -> 819200 bytes INC/NET.TELNET.I.txt | 82 +++++++++++++++++++-------------------- SBIN/GETTY.S.txt | 34 ++++++++-------- SYS/KERNEL.S.FS.txt | 10 ++++- SYS/KERNEL.S.PS.txt | 15 +++---- SYS/KERNEL.S.TERMX.txt | 16 ++++---- 7 files changed, 81 insertions(+), 76 deletions(-) diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 4e8398a88993b5632985cbbb217c8a1a1bd76006..2aa2e24c06a78fc0f14d01fb42b89b38c6230b8e 100644 GIT binary patch delta 15778 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 E0PebVDgXcg delta 15307 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 diff --git a/.Floppies/A2OSX.TEST.po b/.Floppies/A2OSX.TEST.po index 08efad71239a0fb59b37fbe98f51137b57b2f421..226f0199e2a3b2413f8dbfc9d8bb01e78efaa1b1 100644 GIT binary patch delta 5981 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 delta 5970 zcmZu#ZERat89w*;`a12>)os%xn^M=N=@PfANmI2=40LrIC$?h8clJ%1uKY3mu`(zt zMJh!M6s9g*hJ*&GI2|7re`t}I@YHrOQUwZSVzet`V%>mlKLS}Rh)kD_4NAc)@A58sjaj?sfd ziDD)hEAB5^sT@M+P7JL_s29=IYT0a=)0P(zdw|hv*~}2ER)4EcA`KzTX>!?YjnnQZ z+STGvW?YdFT7A()yCs&*#{FG1Xl174`EI+v4+du|{;vK(xqdK+(bYmeZ@Jyr*g&Wi zqJw4J&0z3c-T$OPKHON zefh#zkvcMLOC=rI<`G7Ux9m^GJaC~EO>)DAYsi%FHP@iox&j>b!IQ-!kJ)jAMVp&bVwaqaAT zpv}R26U$ZBAxJio+^mWc&_N{kuq2@yboS-tm-0 z8$wczKOi5v=3~(-MMzEXpu3sY;17mxYPaL>${Q$v>MOZKawtgrDUD5q)Qpq_a9avw z3qXZf0RW1QWEC&YYB)MKqlLzq5?8qrG7w^3oMk{J~ajZNB0v|$aRsi|UB>#u8(C+S`^FGY?{VO9ne zjR^oX?PSrGE#^mDc^CtlhB`E6n(jV4i?ZNJLrZ8~j_tsTX~cndL+~8cn*4R=@&&$~ zaH{bM&4)@tZRIb%-xGLA0FG*2paK9*P1=A0nQXUnLVOrpMZ~r*GpW}1<4BgOCJ_=n z&7DjAi3tETEuGVzDatu!=8c0;kiEPhPS2DDPg;gTrmV(7KA{=tU`t~mNloyij7z9{ zw2*RloADH+QV^-gj7j_q4_xv{NdRhvEdZGbsQ^Gz0}2ab3H3l>hbMB%n{h_dQBrIu zl2@&t!I9^vYO<3^)bcePgv10um}X4`riXH7znPhm6)`Soel*L^A@pz6Yl0_zL9gvg z=Ou^!Z@dV-*3;B$g6F8cIhoGoct4iB#;c#sNvvIGZJdcqpc?~_*_V_0SCIF>t1pr7**;qmy2`if)%}YFlhKzLwzF ztY~xnx;QrXu#4moX@Qt~*xl|esq#j=HJcburbdgg;ld;nHHvj~KxYy-yfWua|5rHP zh@-juL@^~%p8Y9^-<8|KU|ZW&&mkOoTrjKfbUPIve|qrZRN6TsPxZ3 zZbjOz?o?`m2TjAC9Kc&g5|bI&_hax6BYqyQK)dc`PieF9jN?_N$y*Yrma6(Mrdnv3 ze%-Tbh&&MVZ*-?j%piZ2kOUjIXR{;e?asT7ei;IMM2OF?UZ7o>^X6rMHePG-gydGC zUjg1W!Q(pv@M^*zj3JBI#=W`3SZc_5ebIjp)9@2|m=Cfs7m2NbS0I{(%(Nr`Sv+EU zS5yF?{U|9m-efhNxcVE|k51BE(A@>~HU0=@UC`!d{UKu|W*fICfv0iL$hg%%;@W(^ z1@B#t(z6&W!m=>^K+1}DUy=e(!zj}ma17W&uAku+^bCDT;5_z$)D(}41^%WeC#K#m zZvPUx?&D$-(c+7bGk@{*Tr9Ns#32Th6u=D;8vr^PDib~#?fy_1R2F*yL>@iQEzL{W zO#rB<60q_5#Bk32imNX`-MdBI=u3sKkMJrK{~-Q30TF%GRjv@-{;nOa-uxHdY^92pORSf%&yUjd4(47~efYc%@4Ywup%|@(^hBav zM&s6D0?-)pI&;i<(Wk1eb*UpoB;_unWA_evPP@#*hB;}`_;|9E+zw<}N_7_1nw-7{ zH(5o3534(U7}(sravI;jqjyRo0H=`!plVbB0P_3Woy9+Ymc|Nua|$+a*Pp%!A$EDX zrdr=%Xe;s2!>4-<+!OmkxO;nen-%Wyjl}) zZPFDt+Z1m znMC&lSf?t$1fbFUx@6Wh2$0E7@0LlqiMK7C$PG;tMpFeL`&nN*x*s1;67hEiMGywJ7)mfJ(~WSf~Q73eu)RZAP>zF2llE7wY@7U0MOK6g$S|f=bBqS@pBE=h%F=a zOMwWRxyu31%w29Qz;#-HJ20o;n7a}P(d$h${7T@)#;P%lZ)-Elftlr&ndKET%PUVW I-}B7>0lXO$<^TWy diff --git a/INC/NET.TELNET.I.txt b/INC/NET.TELNET.I.txt index e6af6b76..ae516a73 100644 --- a/INC/NET.TELNET.I.txt +++ b/INC/NET.TELNET.I.txt @@ -18,47 +18,47 @@ DO .EQ 253 $FD DONT .EQ 254 $FE IAC .EQ 255 $FF *-------------------------------------- -TELOPT.BINARY .EQ 0 8-bit data path -TELOPT.ECHO .EQ 1 echo -TELOPT.RCP .EQ 2 prepare to reconnect -TELOPT.SGA .EQ 3 suppress go ahead -TELOPT.NAMS .EQ 4 approximate message size -TELOPT.STATUS .EQ 5 give status -TELOPT.TM .EQ 6 timing mark -TELOPT.RCTE .EQ 7 remote controlled transmission and echo -TELOPT.NAOL .EQ 8 negotiate about output line width -TELOPT.NAOP .EQ 9 negotiate about output page size -TELOPT.NAOCRD .EQ 10 negotiate about CR disposition -TELOPT.NAOHTS .EQ 11 negotiate about horizontal tabstops -TELOPT.NAOHTD .EQ 12 negotiate about horizontal tab disposition -TELOPT.NAOFFD .EQ 13 negotiate about formfeed disposition -TELOPT.NAOVTS .EQ 14 negotiate about vertical tab stops -TELOPT.NAOVTD .EQ 15 negotiate about vertical tab disposition -TELOPT.NAOLFD .EQ 16 negotiate about output LF disposition -TELOPT.XASCII .EQ 17 extended ascii character set -TELOPT.LOGOUT .EQ 18 force logout -TELOPT.BM .EQ 19 byte macro -TELOPT.DET .EQ 20 data entry terminal -TELOPT.SUPDUP .EQ 21 supdup protocol -TELOPT.SUPDUPOUTPUT .EQ 22 supdup output -TELOPT.SNDLOC .EQ 23 send location -TELOPT.TTYPE .EQ 24 terminal type -TELOPT.EOR .EQ 25 end or record -TELOPT.TUID .EQ 26 TACACS user identification -TELOPT.OUTMRK .EQ 27 output marking -TELOPT.TTYLOC .EQ 28 terminal location number -TELOPT.3270REGIME .EQ 29 3270 regime -TELOPT.X3PAD .EQ 30 X.3 PAD -TELOPT.NAWS .EQ 31 window size -TELOPT.TSPEED .EQ 32 terminal speed -TELOPT.LFLOW .EQ 33 remote flow control -TELOPT.LINEMODE .EQ 34 Linemode option -TELOPT.XDISPLOC .EQ 35 X Display Location -TELOPT.OLDENVIRON .EQ 36 Old - Environment variables -TELOPT.AUTHENTICATION .EQ 37 Authenticate -TELOPT.ENCRYPT .EQ 38 Encryption option -TELOPT.NEWENVIRON .EQ 39 New - Environment variables -TELOPT.EXOPL .EQ 255 extended-options-list +TN.O.BINARY .EQ 0 8-bit data path +TN.O.ECHO .EQ 1 echo +TN.O.RCP .EQ 2 prepare to reconnect +TN.O.SGA .EQ 3 suppress go ahead +TN.O.NAMS .EQ 4 approximate message size +TN.O.STATUS .EQ 5 give status +TN.O.TM .EQ 6 timing mark +TN.O.RCTE .EQ 7 remote controlled transmission and echo +TN.O.NAOL .EQ 8 negotiate about output line width +TN.O.NAOP .EQ 9 negotiate about output page size +TN.O.NAOCRD .EQ 10 negotiate about CR disposition +TN.O.NAOHTS .EQ 11 negotiate about horizontal tabstops +TN.O.NAOHTD .EQ 12 negotiate about horizontal tab disposition +TN.O.NAOFFD .EQ 13 negotiate about formfeed disposition +TN.O.NAOVTS .EQ 14 negotiate about vertical tab stops +TN.O.NAOVTD .EQ 15 negotiate about vertical tab disposition +TN.O.NAOLFD .EQ 16 negotiate about output LF disposition +TN.O.XASCII .EQ 17 extended ascii character set +TN.O.LOGOUT .EQ 18 force logout +TN.O.BM .EQ 19 byte macro +TN.O.DET .EQ 20 data entry terminal +TN.O.SUPDUP .EQ 21 supdup protocol +TN.O.SUPDUPOUT .EQ 22 supdup output +TN.O.SNDLOC .EQ 23 send location +TN.O.TTYPE .EQ 24 terminal type +TN.O.EOR .EQ 25 end or record +TN.O.TUID .EQ 26 TACACS user identification +TN.O.OUTMRK .EQ 27 output marking +TN.O.TTYLOC .EQ 28 terminal location number +TN.O.3270REGIME .EQ 29 3270 regime +TN.O.X3PAD .EQ 30 X.3 PAD +TN.O.NAWS .EQ 31 window size +TN.O.TSPEED .EQ 32 terminal speed +TN.O.LFLOW .EQ 33 remote flow control +TN.O.LINEMODE .EQ 34 Linemode option +TN.O.XDISPLOC .EQ 35 X Display Location +TN.O.OLDENV .EQ 36 Old - Environment variables +TN.O.AUTH .EQ 37 Authenticate +TN.O.ENCRYPT .EQ 38 Encryption option +TN.O.NEWENV .EQ 39 New - Environment variables +TN.O.EXOPL .EQ 255 extended-options-list *-------------------------------------- MAN SAVE INC/NET.TELNET.I diff --git a/SBIN/GETTY.S.txt b/SBIN/GETTY.S.txt index 2120895c..03c39b98 100644 --- a/SBIN/GETTY.S.txt +++ b/SBIN/GETTY.S.txt @@ -3,11 +3,11 @@ NEW .LIST OFF .OP 65C02 .OR $2000 - .TF SBIN/GETTY + .TF sbin/getty *-------------------------------------- - .INB INC/MACROS.I - .INB INC/A2OSX.I - .INB INC/NET.TELNET.I + .INB inc/macros.i + .INB inc/a2osx.i + .INB inc/net.telnet.i *-------------------------------------- TIMEOUT.MAX .EQ 40 4 sec. IAC.BUF.MAX .EQ 32 @@ -198,14 +198,14 @@ CS.RUN.IACMODE >SYSCALL GetChar Wait for IAC CMD (or SB) CS.RUN.IAC.CMD cmp #WILL bne .8 - cpx #TELOPT.TTYPE + cpx #TN.O.TTYPE bne .2 >PUSHWI TELNETOPT.TTYPE.LEN >PUSHW L.TELNETOPT.TTYPE bra .7 -.2 cpx #TELOPT.LINEMODE +.2 cpx #TN.O.LINEMODE bne .8 >PUSHWI TELNETOPT.LMODE.LEN @@ -240,7 +240,7 @@ CS.RUN.IAC.SB >SYSCALL GetChar Wait for IAC SB.IS or SEND bne .8 lda IAC.SUBCMD - cmp #TELOPT.TTYPE + cmp #TN.O.TTYPE bne .8 lda IAC.SB.CMD cmp #SB.IS @@ -315,19 +315,19 @@ MSG.GREETINGS .AZ "\r\nA2osX-GeTTY %d.%d on %s\r\n" MSG.USAGE .AS "Usage : GETTY \r\n" .AZ " -E : Exit on disconnect\r\n" *-------------------------------------- -TELNETOPTS .DA #IAC,#WILL,#TELOPT.BINARY - .DA #IAC,#WILL,#TELOPT.ECHO - .DA #IAC,#WILL,#TELOPT.SGA - .DA #IAC,#DO,#TELOPT.SGA -* .DA #IAC,#DO,#TELOPT.NAWS - .DA #IAC,#DO,#TELOPT.TTYPE - .DA #IAC,#DO,#TELOPT.LINEMODE +TELNETOPTS .DA #IAC,#WILL,#TN.O.BINARY + .DA #IAC,#WILL,#TN.O.ECHO + .DA #IAC,#WILL,#TN.O.SGA + .DA #IAC,#DO,#TN.O.SGA +* .DA #IAC,#DO,#TN.O.NAWS + .DA #IAC,#DO,#TN.O.TTYPE + .DA #IAC,#DO,#TN.O.LINEMODE TELNETOPTS.LEN .EQ *-TELNETOPTS *-------------------------------------- -TELNETOPT.TTYPE .DA #IAC,#SB,#TELOPT.TTYPE,#SB.SEND,#IAC,#SE +TELNETOPT.TTYPE .DA #IAC,#SB,#TN.O.TTYPE,#SB.SEND,#IAC,#SE TELNETOPT.TTYPE.LEN .EQ *-TELNETOPT.TTYPE *-------------------------------------- -TELNETOPT.LMODE .DA #IAC,#SB,#TELOPT.LINEMODE,#SB.SEND,#0,#IAC,#SE +TELNETOPT.LMODE .DA #IAC,#SB,#TN.O.LINEMODE,#SB.SEND,#0,#IAC,#SE TELNETOPT.LMODE.LEN .EQ *-TELNETOPT.LMODE ENV.TERM .AZ "TERM" *-------------------------------------- @@ -337,5 +337,5 @@ DS.START IAC.SB.DATA .BS IAC.BUF.MAX DS.END .ED MAN -SAVE USR/SRC/SBIN/GETTY.S +SAVE usr/src/sbin/getty.s ASM diff --git a/SYS/KERNEL.S.FS.txt b/SYS/KERNEL.S.FS.txt index 40d85aa3..9b9b5e32 100644 --- a/SYS/KERNEL.S.FS.txt +++ b/SYS/KERNEL.S.FS.txt @@ -157,10 +157,18 @@ IO.MLI.OPEN >LDYAI 1024 get a ProDOS IOBUF .9 FS.OPEN.RTS rts *-------------------------------------- +FS.STAT.I >PUSHYA + >PUSHWI K.S.STAT + jsr PFT.CheckPath2 + bcs .9 + jsr FS.Stat.203 + +.9 >RET 4 +*-------------------------------------- FS.Stat bit CORE.FSID bmi FS.Stat.FX - >MLICALL MLIGETFILEINFO +FS.Stat.203 >MLICALL MLIGETFILEINFO bcs FS.OPEN.RTS jsr FS.ClrStat diff --git a/SYS/KERNEL.S.PS.txt b/SYS/KERNEL.S.PS.txt index 03a71ed0..1a2904a0 100644 --- a/SYS/KERNEL.S.PS.txt +++ b/SYS/KERNEL.S.PS.txt @@ -323,9 +323,8 @@ PS.Load ldy #$ff cmp #'/' bne .1 - >PUSHW PS.ArgV found /, some path specified, no search - >PUSHWI K.S.STAT - >SYSCALL2 stat + >LDYA PS.ArgV found /, some path specified, no search + jsr FS.STAT.I bcc .6 REAL path in K.Buf256 .99 rts @@ -396,9 +395,8 @@ PS.Load.SCRIPT ldx #$ff sta K.Buf256-1,x K.Buf256 = "${ROOT}BIN/SHELL\0" -.5 >PUSHWI K.Buf256 - >PUSHWI K.S.STAT - >SYSCALL2 stat +.5 >LDYAI K.Buf256 + jsr FS.STAT.I bcs PS.Load.RTS lda K.S.STAT+S.STAT.P.TYPE @@ -947,9 +945,8 @@ ENV.Search.4 lda $ffff,y Self Modified, Append Filename... inx bra ENV.Search.4 -ENV.Search.5 >PUSHWI K.Buf256 - >PUSHWI K.S.STAT - >SYSCALL2 stat +ENV.Search.5 >LDYAI K.Buf256 + jsr FS.STAT.I bcs ENV.Search.1 Failed...retry next path... lda K.S.STAT+S.STAT.P.TYPE diff --git a/SYS/KERNEL.S.TERMX.txt b/SYS/KERNEL.S.TERMX.txt index 42a95666..18747545 100644 --- a/SYS/KERNEL.S.TERMX.txt +++ b/SYS/KERNEL.S.TERMX.txt @@ -801,7 +801,7 @@ TERMX.IAC ldy #S.DCB.TTY.INBUFFER COUT.IAC.SB ldy #S.DCB.TTY.INBUFFER+2 lda (ZPDCBPtr),y Get SUBCMD in A - cmp #TELOPT.TTYPE + cmp #TN.O.TTYPE bne COUT.IAC.SB.9 iny lda (ZPDCBPtr),y @@ -1414,22 +1414,22 @@ KeyRemapped .HS 080A0B15 Left,Down,Up,Right KeyRemapped.Cnt .EQ *-KeyRemapped KeyRemapped.Tbl .HS 44424143 esc[D,esc[B,esc[A,esc[C *-------------------------------------- -WILLDO .DA #TELOPT.BINARY,#TELOPT.SGA,#TELOPT.ECHO +WILLDO .DA #TN.O.BINARY,#TN.O.SGA,#TN.O.ECHO WILLDO.CNT .EQ *-WILLDO -WILLDONT .DA #TELOPT.TSPEED,#TELOPT.LINEMODE,#TELOPT.STATUS +WILLDONT .DA #TN.O.TSPEED,#TN.O.LINEMODE,#TN.O.STATUS WILLDONT.CNT .EQ *-WILLDONT -DOWILL .DA #TELOPT.BINARY,#TELOPT.SGA,#TELOPT.TTYPE,#TELOPT.NAWS +DOWILL .DA #TN.O.BINARY,#TN.O.SGA,#TN.O.TTYPE,#TN.O.NAWS DOWILL.CNT .EQ *-DOWILL -DOWONT .DA #TELOPT.ECHO,#TELOPT.NEWENVIRON,#TELOPT.XDISPLOC - .DA #TELOPT.TSPEED,#TELOPT.LFLOW,#TELOPT.AUTHENTICATION +DOWONT .DA #TN.O.ECHO,#TN.O.NEWENV,#TN.O.XDISPLOC + .DA #TN.O.TSPEED,#TN.O.LFLOW,#TN.O.AUTH DOWONT.CNT .EQ *-DOWONT *-------------------------------------- -SB.IS.TTYPE .DA #IAC,#SB,#TELOPT.TTYPE,#SB.IS +SB.IS.TTYPE .DA #IAC,#SB,#TN.O.TTYPE,#SB.IS ENQ.String .AS "vt100" ENQ.String.Len .EQ *-ENQ.String .DA #IAC,#SE SB.IS.TTYPE.LEN .EQ *-SB.IS.TTYPE -SB.IS.NAWS .DA #IAC,#SB,#TELOPT.NAWS,#SB.IS +SB.IS.NAWS .DA #IAC,#SB,#TN.O.NAWS,#SB.IS .DA 80 .DA 24 .DA #IAC,#SE