From f0659a7051e41f486ca8cea146c13a11c451e9a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Fri, 14 Oct 2016 08:23:05 +0200 Subject: [PATCH] Kernel version 0.8 : Migration from LIBSTR/PStrOut to new Kernel Frintf --- A2OSX.BOOT.po | Bin 143360 -> 143360 bytes A2OSX.SRC.po | Bin 819200 -> 819200 bytes BIN/LS.S.txt | 2 +- INC/A2osX.I.txt | 27 ++++++------- SYS/KERNEL.S.DIR.txt | 88 ++++++++++++++++++++----------------------- 5 files changed, 56 insertions(+), 61 deletions(-) diff --git a/A2OSX.BOOT.po b/A2OSX.BOOT.po index 8af81521124bda710d81ef061529a9c73ce7d042..a65d17bbbc11eb7cb6db5abba33992eeaa1177d0 100644 GIT binary patch delta 1331 zcmY*ZZ%kWN6o03GUd#5ncEGSB1|C|;DhLSyEN*dyZKf_Ho5_rtOza1tok^D%m<$lx zWOnJWk3p{)=!c~~VOdGv()Suc1eRzFGK_8cw=L=8F}93Q!Vpb13{&wwAltkj&bjw@ z&pE$y&O7&c?r1%Cw2}4`upGU3Vj~Tr(Tg=afIC`gKdgaVblzbF68++!At$=%II|O$ zP))rVCXlcGJy?p~t>+X_gE~HW2t(+6W1)6XWXC;fdJz54Sf(Em>CD^gZy}(`>voL& z+vv;Q!r~zX#v*B)QWsX}uBmi(dI$y2TGH!8MxpbAj{R}ls|GEd&BqkGn~v+sM^w5_ zg>T%jW~b}W>85k(dqtoL17xOB`{v6tY(_t#8h>;_8VYQAqK>7DmT$(Pd)iK4Czlfs4Xt8-zV=W9- z6^6X%yO#ZM4E@paBI!talyn2i{`6fp3x%wr4ReKxuozFQW4@4{DWyC|=wFjh4wkJ0 zs~vuvDWCld`<|& zsu6FQd!qj?wh}F==lh&aZc(h>*uWBh8YVvLk0JeMW_Ns6u8xagMW=2>O1N?=Tt+cd zl7CWqk`%6)+-w4D8b9l^l8AiVo|v_DyCx-OT5`IkBxXix+s?$+ZFzw4o09VZ#&1bM zEl(J039n*|Cu+f~q}{hAE9OU%;A?IP0X0MQmyb`luu!vT$Un|!@? zcWb(W6u-|XvrbB5{63j?O5zUBZxeDy=C>%hX=xLRN!*MiLvh*4=!!{9Lb|HOcCNU@ zOrY1@4ozHobHm2PP}p6f`A6a=q;LY=cbnZerA`88?7D?@&`=m8c%pA?H?f-GYcsl@ zy&Uu0@3!Fj2s{HI5J&q)n&u)Zd7#bu3)Bw$do|d;WQbgZ| zWBHykIpt2tk)n*pr3v^>?i32x2DwcQ?L2b$Du74d_~xM}dhSANCQ00&Iut44@;b0V zl62a*2e)bA$~p*F_q+iD%37I&9`tC%3__IteHZzbg|Avw(;wt{48c;q>V`g{rhD@6 zs~OJgt&->1+I#2};jQ#scCrCXYP1IrjGFkWfXTO|g2n$oT9EtU`&~I!ctJaA!X4^V ztO}2c)cD_2{P-m$CBBBTA>We2i~?q vF~Eld-b!exCYxDeETQaghjr+hKLc3UJH92<vqFpxo)dIky#Wm`Q%JY6`8ruS`d5?$)8e&xwx&;p+<@*qNDB_&fkaA`40=C%Zh zsuHf6ww+NIS49WD59Z=>xEeZa6exWtThCc&Pc1Fv=tDX^S3!HqX_!R!d*j-ZHNm=? zUKUHU};lbJk*kiGq1tCCwj?WO3!Rgk=TIw&SkeyqcvTldCWzi)j8BhRhkGislGS| z-hQ+8GubmL3#(|VzqDahW}+tVs?4p(aBkHJt`SjU%ZRsJTK34;ORiskcHCwYR^+q0 zyIA52;u2|(gpRy#b|lh%Q`{s-Si$w5!gWFw9WvA0tm2tb;wHaoSQT+okjhAqaXuKc znF_z-O{QCh?K28Dr`YVX3OBE~_bX``uHV3TO0jKV{I0_5B80JnaFSAl=m1U)bo{6Y ziF8Ox2U;O96)qK$X}GxGL=N;5ZeHUfFgT7A8krXLcxPqrjq!A((x|e|C{mlQLK|)bSopwhN zrj<|<{pv8kkWzdEuGoGTYu-@96A@xu$|tr8U2dcO;Gx9+GF*@QBk)y&C~;ULfU=ecpDYd^2}0o$Xchy*=IuKQhY9vZ0*Tvq3C*?SXpx*EVu z^to#p42uIF_7{oN=p#VcT7-=S7~m<9x`j<#k&oPp-ac{~jG*GppTRJCxM>C>BK-X@ z^=fsbX)7DPRmK|l%1BcpFO?0yEW@A4w`F5Z>dUl_y?BvuHnO9(fFIKu8Qu~%MVkC3 z*Ph}l{%=+z$96j?89HVKWn|nWQV(mh@t^3_e2NF`#|Ew~9#BkyDfksTn4RY|(Tm#dJJz8)R>-w?iq5j44v_H!RN7)e zd464W&DMs{=IU6qbOF8RZbKy;=>YggsMNPM%Dey!KS2eUeuhe8I4CE$1MU~7gc?I2 z$Kw~%lK!D3ng4~nK-yx@%d4Wz%eQV|jkN>r zE^DA2;CuHQ-~dw8ED)(#EC{hIu zFjF*4K?=YeLv+YCT85FHt;vX%!DcfdMo~vM$ifU~Et!gxhGsh3X-F$=I#TMJBW$+Z z4861zt+e!+YH2Rd!MzZrs8eu-!+{ps9x%@$FDNiAFO@|LP1poB=@IF0(-4tsU}|Tw z8O5iYt_9D`(1UB!ZE1ck5{(5Knj(O+Aa#?bOr&mdd~+p$v$7#{0CSc$sRUc00Pt)L zVRL|~*+^Mdy+&HO-UZTfI+3!esa0OZSF;SFmL^v#Brgxq75jLp*4@Xilw`pnlnAAQ zQz#P_2^&NQ@Z@U_9x2erdtC9&^VPLgo+^nCtgrSK>0cYayrRmzN_yZ}D0G4n8&VR% zlD}>o#SVqSeUy3>LHV4C5Ivu3%~KOnPQ0d5;O1(L;d#g|`+_d8g5~+F8=QuBz4p^3TLW=p&RWssh_s;ZA4I^7R2Pu$_It z!&B>D>y=fPGR>ucY}skd?sP8dRuKi~9z=N8x>x%u+&9uqm=MU*PjW>S3s`?_6|muWyLS!TL5}dOeZp=xgA4kU6OHoVa})FY+`1Hw2Yf zdk|#3L7E3}<~-}08XMaR_=28sUzW@87Ny4Qw;45()&ZQ6$-Sc!;=7a(HP$h_M}4eE z$koHxVlo`1hiS+3fO8x^F!y~TyoTp2JI$G?&gTjo>)sP*!WC+V@qgr8?c;I zO%L%N$oqgA$b|u%raw+#JVkF91zJA*AB^pE9FwALg}y4o8CJkq(tj9d8i%zF6rUsJ z!?*~ZSBsx9?P6lxmss64Wc^r!e4;}>B?Am{S%o;QpXpOpDTp#mah!`l`sZwHtlRii zu|Opy;|e6fXJJ}r+7}F}TN#pBOA%uve)YZx8NQ~?*uH@pMXvLYi&mlj zB-K|1a<9cZ63Tl*(MT}X(9$e>g0aZL&KTqBoa<0ww2>&32~=(yc|;2JSp(~6JcTIq zG_{1a=vwfxM+9F%h2n-T)Hf%5zTvPY)Zc0I(W#jU^)1@9`Fm}wLA~dLgV-^{7vS9+ zBcaWnhNufz>}1&p&PXq$qM^37A`+{NG|_)bT)W>nHc^U65VhWQ5oS&=Ln+4V1yV2Hv|;$6Evdd_TKITA~tE7p7(v8 z_kEvp&U1QuZN0s=w}!O%O&&;}VsLT&n5Ye9;0xuTps+?u7m9b^%1_+NhitdCDc)f( ztLy=$pP<+o4+{+)?e$&H*=lMlf_yOK4DmtV1`lAbLvc%c576I$B>XJQt+3p@PkMzF zusY zf0T;yv{hEX03-q(M7))>Md#^3HPR!L)M&+qrsl3KkyfgmL(+~_Au$^30XPkbo3^zH zJY``hi#8pJZMBqSUOr$mkQix;fNU0t;b=rCmMa6TS|(R=_m4oNkqQ8uNm(Nifv*EP zjEK+-HMyCK5MM_+;+=raLh^Wv5ji@BH7z+yXwhhQidUK_TbgL8G*M^##kn1>>;`O( z)Ok0+n%T}-EfSN&xiYaqN0#n|`n)`eHZ07W-ChPvda`COEXXt7_1Iu% z@@YxTNf5f5w1ootKi`xRbpc6b&u+k(lR%@(f|BQqEmZm{qJ6c;Bt_X`rLPjXue@bw z;eLj;(t`_hr6l_`m|M79B8n_f9Ss^QAUR;UF1>ZC1^UC3fB7ru7==%L~M7YqNkK7 zIX|GzLiRdxbwF)Fj%t!Ms4gybSo@^i*%( z@nJk%2#w^`x3QKDOQ(T52$RPI<-bGBqu8M0#^r?!CP7^w|6Ou;3>ys0A^IolJ?Vl{ zSV^@PEIT~!a!-unboPCkV*CJ#&eD3 zoSA-1>ftzP9mB@56S8?|PcASIx0~kyKBaVK1KdZ-K-|aDK)I}q=ZgS0DX*%yPg3)q zmL@Z5&di_b(}goJDF3r$ZT07J?W!-x&={_SU&`2X^RZvugZ)~@o>#CJNX0>l{U)hs zZqBz7IO(s|eX_ZJrxe{2Z|L zioLm%;oM~V47MN-BF-+POS1xtmmHYEW@fGQPVB!-pMtY9xWxRJ?922S@%sE8-#TxA zmmWr5Qfj$Ro`xJbuUeu4MURt}S8yR}m|Ml{7j#|MW01#s1e)c^nh diff --git a/BIN/LS.S.txt b/BIN/LS.S.txt index e43044ae..33ceddee 100644 --- a/BIN/LS.S.txt +++ b/BIN/LS.S.txt @@ -372,7 +372,7 @@ PRODOS.FT.TXT >PSTRING "TXT" >PSTRING "ATK" >PSTRING "SYS" PRODOS.FT.DFLT >PSTRING "$ " -TIME.Format >PSTRING "%y-%b-%b %H:%M" +TIME.Format >PSTRING "%y-%b-%d %H:%M" TIME.Buffer .BS 16 HEXDIGIT .AS '0123456789ABCDEF' hFullPath .BS 1 diff --git a/INC/A2osX.I.txt b/INC/A2osX.I.txt index 32c22261..e7b47252 100644 --- a/INC/A2osX.I.txt +++ b/INC/A2osX.I.txt @@ -448,20 +448,20 @@ S.STAT.GID .EQ 6 WORD S.STAT.INO .EQ 8 QWORD S.STAT.NLINK .EQ 16 WORD S.STAT.SIZE .EQ 18 DWORD -S.STAT.ATIME .EQ 22 DWORD -S.STAT.MTIME .EQ 26 DWORD -S.STAT.CTIME .EQ 30 DWORD -S.STAT.BLOCKS .EQ 34 DWORD -S.STAT.BLKSIZE .EQ 38 WORD -S.STAT.PRODOS.TYPE .EQ 40 BYTE -S.STAT.PRODOS.AUXTYPE .EQ 41 WORD -S.STAT.PRODOS.SLOT .EQ 42 -S.STAT.PRODOS.DRIVE .EQ 43 -S.STAT.PRODOS.DEVSTATUS .EQ 44 -S.STAT.PRODOS.DEVCNFLCT .EQ 45 -S.STAT.PRODOS.DEVBLOCKS .EQ 46 +S.STAT.ATIME .EQ 22 S.TIME +S.STAT.MTIME .EQ 30 S.TIME +S.STAT.CTIME .EQ 38 S.TIME +S.STAT.BLOCKS .EQ 46 DWORD +S.STAT.BLKSIZE .EQ 50 WORD +S.STAT.PRODOS.TYPE .EQ 52 BYTE +S.STAT.PRODOS.AUXTYPE .EQ 53 WORD +S.STAT.PRODOS.SLOT .EQ 55 BYTE +S.STAT.PRODOS.DRIVE .EQ 56 BYTE +S.STAT.PRODOS.DEVSTATUS .EQ 57 BYTE +S.STAT.PRODOS.DEVCNFLCT .EQ 58 BYTE +S.STAT.PRODOS.DEVBLOCKS .EQ 59 BYTE * -S.STAT .EQ 48 +S.STAT .EQ 64 *-------------------------------------- * S.FILE for FOPEN,FREAD...... *-------------------------------------- @@ -524,3 +524,4 @@ S.MEMSTAT .EQ 24 *-------------------------------------- MAN SAVE INC/A2OSX.I + diff --git a/SYS/KERNEL.S.DIR.txt b/SYS/KERNEL.S.DIR.txt index 8c4690c0..df678e44 100644 --- a/SYS/KERNEL.S.DIR.txt +++ b/SYS/KERNEL.S.DIR.txt @@ -432,39 +432,32 @@ K.READDIRA.GetBuf >STYA ZPQuickPtr4 .9 rts *-------------------------------------- -K.READDIRA.ADD. lda #1 +K.READDIRA.ADD. ldx #1 filename="1." + .HS 2C bit abs +K.READDIRA.ADD.. + ldx #2 filename="2.." + txa jsr K.READDIRA.AddToBuf lda #'.' filename="1." - jsr K.READDIRA.AddToBuf + +.1 jsr K.READDIRA.AddToBuf + dex + bne .1 jsr K.READDIRA.ClrStat lda #$0F sta KrnBuf256+S.STAT.PRODOS.TYPE - ldy #$25 total_blocks - lda (ZPQuickPtr3),y - sta KrnBuf256+S.STAT.BLOCKS - iny - lda (ZPQuickPtr3),y - sta KrnBuf256+S.STAT.BLOCKS+1 +* ldy #$25 total_blocks +* lda (ZPQuickPtr3),y +* sta KrnBuf256+S.STAT.BLOCKS +* iny +* lda (ZPQuickPtr3),y +* sta KrnBuf256+S.STAT.BLOCKS+1 bra K.READDIRA.ADDSTAT *-------------------------------------- -K.READDIRA.ADD.. - lda #2 - jsr K.READDIRA.AddToBuf - lda #'.' filename="2.." - jsr K.READDIRA.AddToBuf - jsr K.READDIRA.AddToBuf - - jsr K.READDIRA.ClrStat - - lda #$0F - sta KrnBuf256+S.STAT.PRODOS.TYPE - - bra K.READDIRA.ADDSTAT -*-------------------------------------- K.READDIRA.ADDD jsr K.READDIRA.AddFNToBuf jsr K.READDIRA.ClrStat @@ -478,34 +471,21 @@ K.READDIRA.ADDF jsr K.READDIRA.AddFNToBuf jsr K.READDIRA.ClrStat - ldy #$10 type + ldx #ADDF.DST-ADDF.SRC +.1 ldy ADDF.SRC-1,x lda (ZPQuickPtr3),y - sta KrnBuf256+S.STAT.PRODOS.TYPE - - ldy #$13 blocks_used - lda (ZPQuickPtr3),y - sta KrnBuf256+S.STAT.BLOCKS - iny - lda (ZPQuickPtr3),y - sta KrnBuf256+S.STAT.BLOCKS+1 + ldy ADDF.DST-1,x + sta KrnBuf256,y + dex + bpl .1 - iny $15 EOF - lda (ZPQuickPtr3),y - sta KrnBuf256+S.STAT.SIZE - iny - lda (ZPQuickPtr3),y - sta KrnBuf256+S.STAT.SIZE+1 - iny - lda (ZPQuickPtr3),y - sta KrnBuf256+S.STAT.SIZE+2 - - ldy #$1F auxtype - lda (ZPQuickPtr3),y - sta KrnBuf256+S.STAT.PRODOS.AUXTYPE - iny - lda (ZPQuickPtr3),y - sta KrnBuf256+S.STAT.PRODOS.AUXTYPE+1 + >PUSHWI KrnBuf256+S.STAT.CTIME + lda #$18 creation Date/time + jsr K.READDIRA.ConvertTime + >PUSHWI KrnBuf256+S.STAT.MTIME + lda #$21 mod Date/time + jsr K.READDIRA.ConvertTime *-------------------------------------- K.READDIRA.AddStat ldy #S.STAT-1 @@ -553,6 +533,20 @@ K.READDIRA.AddToBuf inc ZPQuickPtr4+1 .8 rts *-------------------------------------- +K.READDIRA.ConvertTime + clc + adc ZPQuickPtr3 + tay + lda ZPQuickPtr3+1 + adc #0 + >PUSHYA + jmp K.PTime2Time +*-------------------------------------- +ADDF.SRC .HS 1013141516171f20 +ADDF.DST .DA #S.STAT.PRODOS.TYPE,#S.STAT.BLOCKS,#S.STAT.BLOCKS+1 + .DA #S.STAT.SIZE,#S.STAT.SIZE+1,#S.STAT.SIZE+2 + .DA #S.STAT.PRODOS.AUXTYPE,#S.STAT.PRODOS.AUXTYPE+1 +*-------------------------------------- * In : * A = hDIR *--------------------------------------