From 44b6d67670eaa894dcd7b6d8262fce823fe9d64b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Tue, 21 Feb 2017 18:01:30 +0100 Subject: [PATCH] Kernel version 0.9 : CP/LS Migration in progress --- A2OSX.BOOT.po | Bin 143360 -> 143360 bytes A2OSX.BUILD.po | Bin 0 -> 819200 bytes A2OSX.SRC.po | Bin 819200 -> 819200 bytes BIN/CP.S.txt | 5 +- BIN/LS.S.txt | 2 +- BIN/NSCUTIL.S.txt | 19 +++-- BIN/RM.S.txt | 2 +- BIN/X.CPMV.S.txt | 177 +++++++++++++++++++++++++++++------------- BIN/X.FILEENUM.S.txt | 6 +- README.md | 2 +- SYS/KERNEL.S.FILE.txt | 2 +- SYS/KERNEL.S.FIO.txt | 2 +- 12 files changed, 145 insertions(+), 72 deletions(-) create mode 100644 A2OSX.BUILD.po diff --git a/A2OSX.BOOT.po b/A2OSX.BOOT.po index b11340b572b772a00820f1e8b5278837652a1ff8..92f81f78bf63e5ec82de4c91c60966e98ea56710 100644 GIT binary patch delta 3035 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

eE$de%MM!Q5DU>8>Lvq(#68z$|vVu)(<3nn! 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 literal 0 HcmV?d00001 diff --git a/A2OSX.SRC.po b/A2OSX.SRC.po index 6bf0b0e6fb318163decf0b60129cebddb7c0b428..c4d378744866e001512806d67f0aa065c07daf04 100644 GIT binary patch delta 10679 zcmZ`)jzX0H@UkvuYK<(0rEl;2$$UuLV^$t$wtE?3E2RGUWXP0#Kz(j1u)h-c^Maw_>>sJsPUHK< zk##xuSB9o&td9t_8p9X*G*N8Imylrf^7{#+W$ zHK{-N`}a&PZ#E2TjjgeZw1(EUHCjij)))wOj6D0vxrD&+Pfa7_v$GP>j(?GxAPVWt z%=gxkNeCAC!L@)svQTm)?sAYWV%iu=5EnU15@+3nT$fOf5}a{P8<`m^X%B7bzv9Gg z*5WcoJWjO}A`L(1@u=Qk%fL8HNWVow4Odo^MDrY&ZQnwkl5neU6J) zHfh1;wSnukz=~LvueKT#Gt4}7&TMd4U~OAlBPepxpE%*}y@pcd??Z|^wJ)w>CDa$$J$mVsEA=C9aZ4#igL&qymGwxRlurm1#j zx%!w7d=45rY@S1$)cR(cZ;H!kx44a8iih)ed52zWcFxMvzxIGFA2dH@Oi*fbOLGV0 z6mSy!ZeQ5~jwwUdWp?Y-WFzw@OqoWbmss*V;4Oq@+VbE9+O^T0v0c0O?A>?wJ@*wB zQL;__^ync|CMC_8pV=Cl+izkr*g*UZ`9<`p0y)o9EQni|9x%FFmx8y14mdL0HhU>{ zqa`{HvQGAcUL02D)L6^7W9q|~HS}-mi-1}V!(C{j5RmWs>fgY1K0u=-)Rr>`s73D!!$Fz!q?&}bsv6}48ua9yxtO+EUOxfSGj zjJTSQE#r;lpw1UFs06hJXV4dlX;mQC;#hS78@q!|&VKG#vWgv$wNMbwm^}m3MWdv3 zNNPS0rT6shh=Kk536%E5tZ93!bs*By-?yx1FamM|61f|x)g!s41$0Biw7H-(!7!>1 z>IH&*C3u@@=NA?aSu%9^L8r;Rlpg-V;)*Uqdxg3{Sq{VD$RNlq$j;je+FZ&M;DT0l zh6iV3C_+{npHfL_jSp-qxJ$|g8apGM<*1n2j>5v7F%3-?L_XFI(5iGkB|Xd;U|T6v zN|KnSue$Xqsnori4ZjHOzN~T7?#?yz*xx0)sbVd)5@}ZL#bS=@*c{h`Hjne}ZXAp( z?i>uYbw;`|x-S_oqw*Vc8pF@iI2zTEk4$+}9I9K8-!$HT6)@r3=j7Bm{<# zvh-4_nxqo@W#idT>8AB2sbEeI4sv7u&>cT+PM41-n%+wfn55G5El4!Kj~;7O9rQ($ zRBY`xMz#$ylX?b*tiN^DIJZtR%givEyK6AU;$9v^M!6BtYS1Q~v9bXqhq7%$1FL6L zTw(Z$waHiFKxI2dU@v-o2Uk$JiYE%s)ko`yD{8++F!t~5>yLGHcZNZ}7RemfiNG!O z&E3-w3HQ!!0B01(hPJXv?5*F}AC8<#(?H(IM#qfNela=->Mk737K$Ho_XtyMZ0p=M z7y{c~L-P$rJZ0^J;ZT1#R#JNDrC__>P{Zg}ZxGCCK)w+L=I`fuZTz-^yF|`ShOmbI zfgSW%nq-fv-$e3(-k4Sij)Oem^8BZ8}Y>xqLJ7t~d-@C1rtfK`7D^+8zn? zMZ!CFvGlO0rG9y!B8ERJ7qNr|>JenD`vv47q_y56gm*Xf^hQEqu-%FcbmS9arMo|o zoaqz?d2VBlo}W34@!7UAcp*li?RN2dwULP2cVJ6!O|YSU*|Jz$FcMzg8R_bVDR}s3;E>TO|#BOUUCn8rARKe-YZNr59DLm>po5o$&$-)pRl!_%PLu*dGDvbV%byp zEhJ#>tOmyeV~nC#2F?fR8Ci1Ve;2fB%C;zBF_z%vhfsj)VOp3jIh(#`m;gib``B)K z#Be}+sB2r8`TJ2Zhh#2Le}F{HA?VK$rpjaV>U31)hqSLm_L39ywJ9c7Z)ReYwfRTF zNA{oa^GwpA>8P32e@O5-?tmvXxTe1Lc&+flrCm@HAfy1wW(5 z&X9ca%+PCX4)QEL{ISUuea?^$w&y3P^uh#{UK~~F7bw{K5}&6qTU)rNFM>f40`=u2 zU-g%q3!B-ie4Tn;Gsx(_Go&2%uaK4X*W)so>vh^X#pI0s20PW?3cdG$aGp+C8q1gRJns3J{v$(jU9SEuDbW0PV_E+Ld09UhZ^Sb^=y7?6 z!oh7DIUmbElVS9k2&2!D+VZcYY5&blTlxjvX_iW&Unb>wzcO5>Tb!kqV5BpQ1A2frBVy;}g&kYYZaW$BcRQy$ z1fi1?I$UHz@VeZ34eqpg*r|Z+K1Pc6cnPg9l3nF_C_tn&IiFxYC=d_^gOA|CagRIw>C-dZg9_G6OU(0g$Y%Y@bEFZG`w-2l%6nEOVwn0 zNgo+aRr@E8{eIo3G(2BA7{$uwfVMao!)>z?_=b6qf9K4Fjcn?NM0XXiul5GfZJ)=w z`yxGk+d?<-A+~BTmb>8Tm=7CU`f=E$J>f0;`6x>bGzPUmOCuAiatM_N0$Ds|VI^5@e1SyEm`6?6AI=2VkC zC|Bc`eLiw9cDJV1flwb7)+D)=;t3FJ3z&IPc6Tt`rN_SQT%w=YMq^H1hy(K$={}rS zH`%0=^SBRP=TFw_uBUUdB$s>fWSylAx<2&Yg;EY_WFB&o09UAqDRco>C@Npb6l$KR z&=RIlmtG<-#UaWvGCa`T3AW`E6l)p31e~p@>>7Ie2SfFsv>}7uPEb~$9atgX&Q?Nn z5F8x@PkG5=lpAa11Y@njN#v{+!u3dktc$p0UUsb+Pok_Pdhuwvn57qeV_7Fw-Fjm& zMOhFYWCt;=);G%!d6x)du5ONvIZZ?MHw-g3jp_OMVVS#jk$|ra5t_1U8|z-*q+MWNo`h#dm>nA4I1j8 zA@n$KMkZ0mu`N{{PO4tP^l4^i3_LmDG_tmf*kIeceMbsK+qOtUJ(#c36Y*}4uO`=n z?HU#$dJOWcM6J6OdsMy-Ips#N&&O-9QlAgpJGo`V?!v|g`Zj?(mLj7m913Ab)W<;C z#Y3)ew-IuJVBffi-^1rS>NV$HH0P+>#4?iikvs5+VHhfzU2d2_e&b}+`%$5sn*=pq zMVSXUX-O#_mA{#~h-R>QTRFs6QSQxxiW>-Qhm#VITvC^)yHI+1D51W^wvu%WY?^jC zS*it3ye&Pf*gQEf7C_sVIQ4;aJ|T_q4>5wsY3Xbh(c)jQ-(N{*38_BuU&-rJdz~=1 z@LUJtU$@ZGinIpx#x%II&}PSmD`~hQZL|7<%YX;x)4x=t)o15IUV+i{!Rkcy?6mcS z()Xm|Tt$FbjvS77(No#deRT61CJ&93%Z>DJZ9^#&LuzM-U)S}N0u$#goqGOdi9LszkXGia1GmeJ$vU%8G*Re=Q&AV!ZB z^DJJ7t?XeQXo94q!kYB?Nq^u%p4Eihm)d55~I|2`@RocVvPwI1zj6ScA=gH{j z0{J1?l($A z!F?X0MXvPou`tDbF}GE5%mxKfD1ECz=t;+n8nM?NU?s9)lg4dZ25>WkVS4tgsXRk& z#u3^Q+ILR+Y_fDH_FNgmofxgN#V|739nT_oAj8brno`T-E`VTOJy_dVV@mFqS0Gbs z``9B0WCq3g!#^L?4(?f&ybyT;byf1{vPfo#lN%8ywn-)3gHD)*&Rc_hIcvF#QU2nF zMo=$Kmh0|yG&UpM6o@C39WIR&Lt2lgPRYb;{~nMCdG4l%~| zD4whglxehl%<4{M+cU}*AtzRl=JbwbyCuoi*~gKSR4u_iFmd8rxrEx188MuBcvQq7 z7a>RBddS%}Rt};|#`Le$r@x{KH-?GKuQH~;0C`_M${VpJefrmpWy@eCj-j}Ba<=op zj_8qozDTjk?o_r2Dd}sc78FF2bhd~Zv7j`($RH!Z_C}rU{AzITpF9c>GXmQIPR~|8 z-xB3-VzYLT$MPW-%h@-Jb#NGayhrGvgX!+5GQ<~&8NnY6^gW>5%2SW+D2w>U*1)Pj zOUHhF9U=asmr=Kg+%?Qb=yxc3?z&xc-@&_c?*t_>PU z>JtR@Q5}OB=tT_>_|Xk8!Zq|frfV1s^@h44``LX=X$H>B2j`ujE3P%wEkOtf@)7&t zD(z(%I93ze$ci|PK|epn{(_%y5PLNFw$*oZ1ln6L`zk+Ww!tj?I33W^-8Cn1eAW|5 zuo}0KC%N|ODHbnSuFnGn(IFO5mZur;%xd6OuExT?yt!U_x`5|;r#XV!V1 z^`p=iME{GzN{G@UCZsF=l5p+Iy5dY9?%G#`YXv04EyqwHCSQIHx!Zq*E5%5=++v`< zZkPsSh6ZIJ8YGSa=xxM<#(4X8Y>vO@`nuo53F+HX>aGOxAJ`Z~e{}EvQRs)>e;eDQ z$~!`_cZFi;enfk8_rHfthWioq(S6C{6V&%d-H-5(ZiNrH6|8^Jt)MTroAe0(P?+H( zrWXrS#z8sF%`j8`E6&3H@kBEq)MEra1ADxm&{i$oV?M*^(D|Qo=l>JCvOY_7K4Lp8 z^wodiAdc>XAqVI8kgWkdq7vx52_+cNxXhBV?pY+@KQ20 z@6VbGHWlUdL}De=eLkQ6RGJUeOjdfwed&>edVe}rnywqUtCng_@pyW6LVb+2ZqhxX z`SyT0ejTa^$f>zZE)K<;Q7ap|17t*^z+xvDqLJ;Lpd$LD*D83>b&}!84s3EIn`Ac*_9E!S zZ;etamyFh>esFuq5P86vj@T0v z{55eD7BVRecGB;rQlzvloeS<_29r6W?$Sw&T?tkMrr7G#kzQ6uWSzsumCV5Ez>Y9g z@+iU&Q0}rx`1rwEKAz9aR6es17a7OMSuv3jSZ9x8BWonS&+JM=4d>7&_L@B=pKi3M zAC-1jPGm6)tun zQT;UQuAhX_e6S)kG=`DVAXaB1U!A!DVmKW0ID#{X4Y7=(Tp<2mDE>F||5;1Oa6ew0 zmXyx*fgN$7x;6t>;8CG2LzDBmMOn_%Mi$~j+}6HJAq%0QQ3ePJjkAblMf`5_R2w^u z>zTHl&oeJbU%JcejdpN6EEnM+rdRV|W6x!H%25#3eQ>ew>C&RKud9px`Ej#- zW)Ha?ESs4Gy(mK@M>kb37i8JOfCh$#&gr9tC(Rn^r>!T=b!31ZJZUb>+)CI(2mRR8 z8h^rkXF^?T!PhgJYctgNI!l^kX{AJzGKxieY_(W^b^pvuz{73`aOXTYUw+W`kv(_ezpXX8PfBAM37xn(g$u{igZT zcJS$EUWLQ>6BDpp&3^09?lnXHYj2Nlv=k=DE(-z#)8l(Ac?tDyoVtqJ`)9a=IdL~U zaj)fIseas#8pnM%!ycB`UxX?*tZWbRXE8P4$sG?#us1P&@LI8b%zegQ)`69ljc@uc zJ09ViTNcOg^~@YZHQJW1(t@BkcyFFl^bXO}wtN?F#D^}zCB{RSJTG1NrO9i`gQ2%i zm(Z)eG-aFf`QT#(^zfIaJo=qyE%V~fSxofII#UJBbV#M9@+s8+yrqmxrE8zJl$)l( z(93^yn+k#MTyOG3i#WZ#7}(|R&CI$S_y$`E7|&4zkZvnwE&9U~(V|S}$SfT?z7*it%z${B6~eARn^dYvZR? z1Ry?E&&mYipQa&_LuF!BLVheeve^YQJN;!?I_d_kn%fxYbU3Enl{iJMo}U98>^#e?JSvEvbr z1^FJfuir}$wxC6SFgc>f1p8W0jTJj|rL|@a${!FAFAS5v9;pJ39xdGeE}gY6XCtWv;sa6P48fjC;9PThs@ ztwKX*1eBi%kb|huR0c2aj4&EZk;83Wd z#0iju(8Q3zY-M|HX@M3}>@K9Z1zNhjLfhAc0!^W1D{a~GnzqpN%$juLu+rGn+<@el(AZOLFcj>NqkRL{MYsEq^gep( z8)xx}^|n*CiT9SuJ)P0D$efGEdb>`XDHNMpK-j6`Grz(omtgxT`y1~rAcG&s_EU!U z-W8tu+Y=glehwN_0V2UGrOg*!f9m-UF2N6dq2RXeS@ho#alkS6qV!> z?}DsioHy!wccE;gj{8y`Hip(Ifu`UQ zDu#bX1q=BEUFpMg=BDJn)cyk_2M^u<#fL|+=96)wfJ-R3nhW+toW6C#(X^b_4aiwc z1}zKhrREZthB$0N1mB{vV=V&W+h3zAFFSUeF)`C`}j2Zs6+NG?TVoe(vb z7a7XXSVwfver4rKWW1Qt-9YJ@`n#gTNL+@-khz>jq$}DvgMYcolu~Mur~rv^1sdz= zR|y!S(SsmARgEwpf+(w(6ra~vk`<5*q40JeEHtdS7m1aWzlxEUvB9NCuI2_-Ah`x~ z^+!`m6%uQKmgZA$*IsJ7dF5=j^1Uc~6=y76UW(*Prdd}5tL{=%33l#HA@iDfoaW2u z&~U1CFwry6-`o>VAkha*_IhG;2)2cO?s6rP0%(jzM{eNaE0A*?iJa3r$gw3_o5tQm zj-S)pl9xj?qn$|FfW~5pI1-ydnsXykDhaip>DdyA#g{|sqU;uCk;`4@L8ex=U}b}W zNFuTn{F2*1S1giJAYz+9jxmUoDpiiFM_npYhg0AneV7>9AY3 z!oG>eQce9miBPOF&=Z4FQ@#z9bas*-C-sYSrS0789n|bANG}!~=JvTtDs~cr1+Vu? zs^qGST?UMQ@y z4qU)m!yvUbPE{ju4~WQ%A*BuiA4!!Bw#ApCviRuW*3$Asdco+JI0S^!b&!d@u>99E z7o}mgCmnmqlpxr@pg%Yuikwj-V zDjFqIqEM*41LWl2NuDSco%kgAR1`{#gxg<@#Ji~dV`PO^ur=S!&0z-&-AK-R(h>7C zjzC66I}-!3y{WZGzLy#bNmhd__p?KVReV;Ctq+jnTESBA5K?LgJ#qLXlzAjR3@UAp zkSVQTZTz2fh#*GeFmC!1k5NZ3+Bp=9N0I5vbAu#53QU8&DFwp+73$nqNx=faS@0Ok z$h4}4=7w+sJy?+Aaq@DJ#@1_iVp^N-Yf%0hn_7_hNyb(miAUQaiEagw!H*>pOGW~fN@d7e#rKd<3*AOL=N#sz+?Pz z+8lnI*nUDHimeB(w@kKj;3uL>mb>&}lpmt4Tb)Krhd;^%v8& z{*sFR755Jgq5tE={OqEK(65Vll9eiO3jGFnX=1_R{uX#0za#xR!Jd327VR64hj_UzoUupNDwwWwXL#>;G{)S7v z$o{uk5(3d)CgATG0lE)(>gIpMj3lFyU@}V|bK^c?#w|XJNK_VFB*vBSW(Aw8d(gEr@O*a;ZTmGr4VP zKEC>g$dfw3jO|3OH#kG01I(~FId@ZPb39f*w5y`JCWWl|Fq$ry8#k~-kP5h2h0Ls_ zMKi@ys}7Pgs|9=QMZioWSf64ISOqPV(n3soC1hW8f!PDdUW|zc3ZlbSa)Ei|aFGW_ zBuiEh+1$jpTCn29suPm9ggQ}*iLY2=t{2PT$-H!i@r|v6(S9UfjQOz(Jt&Zv%ISTF z9yG9cYCKKLvD(v)=Ln1Bc6w7-crD(bgeDZ>EFSj=T1`iEqDH8}#qNHbUT#H!#(UmP zh-|49zT_W@9#QH;DK9crqI4xV%0?_zsH0`TKhVFcC)RhEjp?gVAfz<31ds#`s?q@O zwUam?oW|p;1dVaJa}yP?KYs;zeYM~uCWu6_#nd!gRuT@n%jpp9l+xXRb;C?^{JjJ5s1F)rDq|y+(UO*tS?1Px zBHAt_ViOe+gcm7<)wWA-4&!vm-^}tqe+!BD3{Krv_UPJ14)_cu3$|mm6DEJGH<&fH z9prmHgVlHi-#YD#*1eOw?K8OWl{C=#_$rmibu}l7Fd|(CT%G9wEOoL0TNfrqkSY~K zXXwZmcTrcb;j5deQnqe&;VesfW;jTjAAcl)q}^QCwOn*BIa6=2n)~L4$I(yry`{6| z8V0z0Xs~R9OtN*)T*-s5&&MwlGy=2<6ZOJpcsw9zk}<9;&UD!m>AInovxZpg;9z$I zNke#SuzL{6*YSLUv+#OQpk6arjfDHEJPfn+;sU4NUhq5n1`M60T5f#E^10dc(9t9D zMiI!IH;ooQ?MQw;ld4h@wDk@m!#+CH3GzT)il<8l?9D_^{}80y{<#6kK7e`W3l}SC z1dm1Hy+}TYLBPquUU1_O^H#hW)aq}cNi*0xjHFvZUoHJ`m`CFXi-zeajYgogVM{|x z_^^7xyNy#EV-y9qlfDn+{Ja2@&iGq;EfV$2vdmS4pg*)_Iv6W)pQGO zgjzy=g7{7gL2l~q`pM_3qIr) z$K6`Z8tC%@Gu*f?sK9<}X`^; z8mw&qDy5OU_FZ8)UN@ThLD|CfjNf*7CfKk5$JDEZ7g;x`5Ky=oqA&{r+6Z!t9RJ8b zKnB1-7)Djg&<}d0UCGc7Imo>PGz4%DWDk>#-LDP=_(L>{j}g=ZuH!U{B#U7X~7T^m8!yx-XRcuxbvL8}cy@&!9rdt?2-O^iQJ&7n1Z-rsyFw4#( zG&^&S^6b71W}L^!?Z>qCq;xw=eH{Q2a6cSD(s6d#(4XKJM3gg1Kka_^u|w4$F- zuhMriq0&jlmPb&!tQ@7MqjVRQ--B|-SPb0$#>Pe@-HqVvj36<257LOoP|9Kq#!2<*da1I1ZfDfn% z@Gn09ZyqN|fKM5#;jL5ou7^q;td#P9iLf)>81}9!6A86-N{}g11O-L#BfGs zLHlMG$?=0a^VOBeq=g2rCy{b3_INzrsVonY7x0!3)=R?b-V}AfW7gAVIZf-G5`k3a zr0^A)fs#UP&!*jB4u&$37>znXRBdhsP3oBSqoV~bJ99KsogjyoRUsL048H9Oos`h7^TJms`IzR! z@z1bD3%~_(7Bb0|$XI!6B#O_n-eT1I!*~P4jc9p`xZ7u;D(_o0d zbtvIOb{A!}?R3xOTRf9*$vi%5DVv|^0Wtz;LHBt^ySS9vdoi=O3fY&bkuU>hf$Ym? z2^c@5vvok*%i;jYfEtG?l)VD(CH-9h&wCqDt_Q<+JM6Kt5gEO6)MZzsjfNxHTshBZ zdlidQH8NJuWv!XXT05V$jrF#AjK!f@WSOa~}2Do7W?vO5br3aZC=UFYUgFvcZ z(jdtUSOh)CvYXNo_3R?|-KQ&PVP@)^=?zb{W+SsEzXh{iQSDQwyTScP0`P%0Pk8`2 z&{#CZ13lNkbwS>Q$Hwp1U6f2K4YFG$#UAMGQVR3;&FnpI3jCb0PB74}W)E3^SW}hnh~dnRRy(FcbiNMN#YtX7U%N2D+%pUT8T+vT(qBhEt9ak_ zpRVx>iOxo|)zm6v!&>wTtTd+h~NVJ%)`T7lAFCx;!}YPVe?uLuM)UJ8GZM#CMg8gofx3Xr04x~bfNMb0SDhswQMa5gD=~OTwz;sccy;DhW zXUSGdQ9l$9g{cx%P~8YT&yrKJEkmU=HwA8EKJmao+&sv&eVQUXT;J0Lu-kzQnHo9w zj%ku$*WRjda=4{+>wZR*j-TZUN)!$R>91>4Yy4<&J008T^QXtE>qg)ya!R{Ot&z diff --git a/BIN/CP.S.txt b/BIN/CP.S.txt index 90b918cd..04afe83d 100644 --- a/BIN/CP.S.txt +++ b/BIN/CP.S.txt @@ -10,9 +10,10 @@ AUTO 6 *-------------------------------------- .INB /A2OSX.DEV/INC/MACROS.I .INB /A2OSX.DEV/INC/A2OSX.I + .INB /A2OSX.DEV/INC/MLI.ERR.I *-------------------------------------- X.MAX.RECURSE .EQ 8 -X.DST.BASE.PATH .EQ 1 +X.COPY.TO.DEST .EQ 1 X.DELETE.SOURCE .EQ 0 *-------------------------------------- .INB BIN/X.CPMV.S @@ -47,6 +48,8 @@ hFilter .BS 1 hSrcFile .BS 1 hDstFile .BS 1 bPause .BS 1 +bCopy .BS 1 +CopyRC .BS 1 bContinue .BS 1 bRecurse .BS 1 bNoConfirm .BS 1 diff --git a/BIN/LS.S.txt b/BIN/LS.S.txt index 299ddc89..ac6a9411 100644 --- a/BIN/LS.S.txt +++ b/BIN/LS.S.txt @@ -12,7 +12,7 @@ AUTO 6 .INB /A2OSX.DEV/INC/A2OSX.I *-------------------------------------- X.MAX.RECURSE .EQ 8 -X.DST.BASE.PATH .EQ 0 +X.COPY.TO.DEST .EQ 0 X.DELETE.SOURCE .EQ 0 *-------------------------------------- MAX.COL .EQ 4 diff --git a/BIN/NSCUTIL.S.txt b/BIN/NSCUTIL.S.txt index 5c18f106..a178c9e6 100644 --- a/BIN/NSCUTIL.S.txt +++ b/BIN/NSCUTIL.S.txt @@ -10,6 +10,7 @@ AUTO 6 *-------------------------------------- .INB /A2OSX.DEV/INC/MACROS.I .INB /A2OSX.DEV/INC/A2OSX.I + .INB /A2OSX.DEV/INC/MLI.ERR.I *-------------------------------------- ZPPtr1 .EQ ZPBIN *-------------------------------------- @@ -40,11 +41,14 @@ L.MSG.READ.OK4 .DA MSG.READ.OK4 L.MSG.USAGE .DA MSG.USAGE .DA 0 *-------------------------------------- -CS.INIT >SYSCALL GetArgC +CS.INIT clc + rts +*-------------------------------------- +CS.RUN >SYSCALL GetArgC cmp #1 - bne CS.INIT.SET + bne CS.RUN.SET -CS.INIT.READ jsr NSC.Init +CS.RUN.READ jsr NSC.Init jsr NSC.Read ldx #7 @@ -58,7 +62,7 @@ CS.INIT.READ jsr NSC.Init >LDYA L.MSG.READ.KO >SYSCALL CPrintFYA - lda #DEVMGR.ERRNOHW + lda #MLI.ERR.NODEV sec rts @@ -71,7 +75,7 @@ CS.INIT.READ jsr NSC.Init sec we do not want to stay in memory rts -CS.INIT.SET lda #1 +CS.RUN.SET lda #1 >SYSCALL GetArgA >STYA ZPPtr1 @@ -143,8 +147,9 @@ CS.INIT.SET lda #1 sec rts *-------------------------------------- -CS.RUN -CS.DOEVENT +CS.DOEVENT sec + rts +*-------------------------------------- CS.QUIT clc rts *-------------------------------------- diff --git a/BIN/RM.S.txt b/BIN/RM.S.txt index dcc4fec0..ed4bdcba 100644 --- a/BIN/RM.S.txt +++ b/BIN/RM.S.txt @@ -12,7 +12,7 @@ AUTO 6 .INB /A2OSX.DEV/INC/A2OSX.I *-------------------------------------- X.MAX.RECURSE .EQ 8 -X.DST.BASE.PATH .EQ 0 +X.COPY.TO.DEST .EQ 0 X.DELETE.SOURCE .EQ 0 *-------------------------------------- ZPPtr1 .EQ ZPBIN diff --git a/BIN/X.CPMV.S.txt b/BIN/X.CPMV.S.txt index bdd54f6a..ded1af8e 100644 --- a/BIN/X.CPMV.S.txt +++ b/BIN/X.CPMV.S.txt @@ -5,6 +5,8 @@ INC 1 AUTO 6 .LIST OFF *-------------------------------------- +COPY.BUF.SIZE .EQ 4096 +*-------------------------------------- ZPPtr1 .EQ ZPBIN ZPPtr2 .EQ ZPBIN+2 *-------------------------------------- @@ -133,7 +135,14 @@ CS.RUN >SYSCALL GetC sta (pData),y bne .8 -.1 jsr GetNextEntry +.1 .DO X.COPY.TO.DEST=1 + ldy #bCopy + lda (pData),y + bpl .2 + jmp CS.RUN.Copy + .FIN + +.2 jsr GetNextEntry Ptr1=NAME, Ptr2=STAT bcs .9 ldy #hFilter @@ -217,27 +226,35 @@ CS.RUN.DIR ldy #bRecurse jsr CS.RUN.PrintDir bcs .9 - jsr CS.RUN.CopyDir - bcs .9 + .DO X.COPY.TO.DEST=1 + ldy #hDstBasePath + jsr CS.RUN.GetFilePath + + >LDYAI UsrBuf256 + >SYSCALL MKDirYA + jsr CS.RUN.PrintErr + bcs .9 + .FIN + >LDYA ZPPtr1 jmp EnterSubDirYA .8 clc rts -.9 jsr CS.RUN.PrintErr - rts +.9 rts *-------------------------------------- CS.RUN.FILE jsr CS.RUN.PrintFile bcs .9 - jsr CS.RUN.CopyFile + jsr CS.RUN.CopyStart bcs .9 + rts - .DO X.DELETE.SOURCE=1 - jsr CS.RUN.DelFile - bcs .9 - .FIN +* .DO X.DELETE.SOURCE=1 +* jsr CS.RUN.DelFile +* bcs .9 +* .FIN .9 jsr CS.RUN.PrintErr rts @@ -275,14 +292,11 @@ CS.RUN.PrintFile >SYSCALL CPrintFYA rts *-------------------------------------- -CS.RUN.CopyDir ldy #hDstBasePath - jsr CS.RUN.GetFilePath - - >LDYAI UsrBuf256 - >SYSCALL MKDirYA - rts + .DO X.COPY.TO.DEST=1 *-------------------------------------- -CS.RUN.CopyFile ldy #S.STAT.P.AUXTYPE +*-------------------------------------- +CS.RUN.CopyStart + ldy #S.STAT.P.AUXTYPE >PUSHB (ZPPtr2),y iny >PUSHB (ZPPtr2),y @@ -313,31 +327,106 @@ CS.RUN.CopyFile ldy #S.STAT.P.AUXTYPE >PUSHWI UsrBuf256 >SYSCALL FOpen - bcs .9 - - ldy #hDstFile - sta (pData),y + bcc .1 - - - - - - - - - ldy #hDstFile + pha + ldy #hSrcFile lda (pData),y >SYSCALL FCloseA + pla + sec + rts + +.1 ldy #hDstFile + sta (pData),y + ldy #bCopy + lda #$ff + sta (pData),y + clc +.9 rts +*-------------------------------------- +CS.RUN.Copy stz .90+1 + >PUSHWI COPY.BUF.SIZE + >PUSHBI 0 + >SYSCALL GetMem + bcs .9 + + >STYA ZPPtr1 + stx .90+1 + >PUSHW ZPPtr1 Dst Ptr + >PUSHWI COPY.BUF.SIZE Bytes To Read + ldy #hSrcFile + >PUSHB (pData),y + >SYSCALL FRead + bcc .1 + eor #MLI.ERR.EOF + beq .9 + +.1 >STYA ZPPtr2 + + >PUSHW ZPPtr1 Src Ptr + >PUSHW ZPPtr2 Bytes To Write + ldy #hDstFile + >PUSHB (pData),y + >SYSCALL FWrite + bcs .9 + + lda #'.' + >SYSCALL PutCA + rts + +.9 ldy #CopyRC + sta (pData),y + +.90 lda #$00 + beq CS.RUN.CopyEnd + >SYSCALL FreeMemA +*-------------------------------------- +CS.RUN.CopyEnd ldy #hDstFile + lda (pData),y + >SYSCALL FCloseA + ldy #hSrcFile lda (pData),y >SYSCALL FCloseA - + ldy #bCopy + lda #$0 + sta (pData),y + clc -.9 rts + ldy #CopyRC + lda (pData),y + beq CS.RUN.PrintErr + sec +*-------------------------------------- + .FIN +*-------------------------------------- +CS.RUN.PrintErr pha + php + bcs .1 + >LDYA L.MSG.OK + bra .8 + +.1 >PUSHA + >LDYA L.MSG.ERR + +.8 >SYSCALL CPrintFYA + bcs .9 + plp + bcc .81 + ldy #bContinue + lda (pData),y + eor #$80 + asl +.81 pla + rts + +.9 plx + plx + rts *-------------------------------------- .DO X.DELETE.SOURCE=1 *-------------------------------------- @@ -369,30 +458,6 @@ CS.RUN.GetBasePath >SYSCALL PStrCpy rts *-------------------------------------- -CS.RUN.PrintErr pha - php - bcs .1 - >LDYA L.MSG.OK - bra .8 - -.1 >PUSHA - >LDYA L.MSG.ERR - -.8 >SYSCALL CPrintFYA - bcs .9 - plp - bcc .81 - ldy #bContinue - lda (pData),y - eor #$80 - asl -.81 pla - rts - -.9 plx - plx - rts -*-------------------------------------- CS.DOEVENT sec rts *-------------------------------------- diff --git a/BIN/X.FILEENUM.S.txt b/BIN/X.FILEENUM.S.txt index 5727d221..89f76fb7 100644 --- a/BIN/X.FILEENUM.S.txt +++ b/BIN/X.FILEENUM.S.txt @@ -11,7 +11,7 @@ AUTO 6 * hSrcBasePath .BS 1 * hDstBasePath .BS 1 (optional) *-------------------------------------- - .DO X.DST.BASE.PATH=1 + .DO X.COPY.TO.DEST=1 InitDstDirYA >SYSCALL GetFullPathYA bcs .99 @@ -310,7 +310,7 @@ EnterSubDirYA >STYA ZPPtr2 save SUBDIR for StrCat lda #0 sta (pData),y - .DO X.DST.BASE.PATH=1 + .DO X.COPY.TO.DEST=1 ldy #hDstBasePath jsr EnterSubDirYA.1 .FIN @@ -363,7 +363,7 @@ LeaveSubDir ldy #index .8 clc rts *-------------------------------------- -BasePath.. .DO X.DST.BASE.PATH=1 +BasePath.. .DO X.COPY.TO.DEST=1 ldy #hDstBasePath jsr BasePath..1 .FIN diff --git a/README.md b/README.md index 0527ad86..e9937eb6 100644 --- a/README.md +++ b/README.md @@ -147,7 +147,7 @@ note : '$VAR' does NOT expand Variable | | | -N : Number all output lines | | | | | -S : Suppress repeated empty output lines | | | EDIT | Working | still missing : find/replace | 0.9 | -| NSCUTIL | Working | Tool for setting time in NSC/DL1216E | 0.8 | +| NSCUTIL | Working | Tool for setting time in NSC/DL1216E | 0.9 | | ARP | Working | dump ARP cache, setup a static ARP entry | 0.9 | | PING | Working | | 0.9 | | DNSINFO | Working | dump DNS cache, setup a static DNS entry | 0.9 | diff --git a/SYS/KERNEL.S.FILE.txt b/SYS/KERNEL.S.FILE.txt index 40254c81..181d26aa 100644 --- a/SYS/KERNEL.S.FILE.txt +++ b/SYS/KERNEL.S.FILE.txt @@ -53,7 +53,7 @@ K.FOpen jsr PFT.CheckPathSTK sta MLICALL.PARAMS+8,x dex bpl .1 - >DEBUG + >MLICALL MLICREATE bcc K.FOpen.10 K.FOpen.9 rts diff --git a/SYS/KERNEL.S.FIO.txt b/SYS/KERNEL.S.FIO.txt index 9dd9c1ee..da90b43a 100644 --- a/SYS/KERNEL.S.FIO.txt +++ b/SYS/KERNEL.S.FIO.txt @@ -1,6 +1,6 @@ PR#3 PREFIX /A2OSX.SRC -NEW +LOMEM $900 INC 1 AUTO 6 .LIST OFF