From 47bd2c8ed79dbe8fedf55179e7f4975f61a33771 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Mon, 22 Jan 2018 07:34:59 +0000 Subject: [PATCH] Kernel 0.9.1 : ASM & SLIST API --- .Floppies/A2OSX.BUILD.po | Bin 819200 -> 819200 bytes .Floppies/A2OSX.SRC.po | Bin 819200 -> 819200 bytes BIN/ASM.S.DIR.txt | 6 ++-- BIN/ASM.S.EXP.txt | 10 +++--- BIN/ASM.S.SRC.txt | 55 +++++++++------------------- BIN/ASM.S.SYM.txt | 75 ++++++++++++++++++++++++++++++++------- BIN/ASM.S.txt | 4 ++- SYS/KERNEL.S.MEM.txt | 14 ++++---- SYS/KERNEL.S.SLIST.txt | 36 +++++++++---------- 9 files changed, 114 insertions(+), 86 deletions(-) diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 1519a972a6773dd6ad7a0d9bb265d1b1699e9362..4249487f418ec2477c0f6405921978ba77747cb2 100644 GIT binary patch delta 15240 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 delta 14490 zcmZ{L34Bvk_WylJFFcwS(mhERQqsLNytXW@tfdQEODnA?t_`$6rBH0k0B&hyaV-{| z@nQ$HcE+VjF`$AQ?h8fK>gcE_P;jfLOlQ>5VMh6X@4Gii!;inrC&@eaZ1*z6po$ zRy#{CsUrG+XI?UdlE=(oi|4|Nm*uC7GP4U-8K)K6$YKrj1Wtdfn49v8S1+lM;-?KE zBsm0ZiJa|tlWzNoRmLT`RikGUVj;w94^Qq*ej@pIXWxW@3ExaOGa*ci(Z*^G6aFw^ z+k`z6PHB}|jrJ$4iWN2*$6j=1T!bU)y#FRSCOH}%2ORG>1|6py5h+nAF)48=)|4-u za~&0qMUIOdmpfbzZ|d-WdsF*TzexRp^)?#gM}C#+on;^EWbZW^uX8_}=FPFMPw&X; zEAQ9r4H;b_dye#{cE#h9+O{9D)Y>OGccs~T)9u}t*vWw&Qc!E(l3}-IdJUG^x%U2y zm2=IWk1MPeM_bqW@%ltBsSD zoA<3ThM1?vr+8QP4rt-WwSHIcQLWuVdXH(^;&v<9X(M)T&QMaHeaO}~zJHD#tkVT+ z_%W?NAKa|yMq{S3iLJWPXtQD1(UrL82xicb_$Wrf1-0P=8hhYIV^Q?YIYW_Lhq>E$ z;HY*VA&1Pru%R1`b|*%xe;s`2+wSY({JT`2$zODLyRy3p9NvCp@Zdm5|Ie0Mh^Dhaw{fid z9Y@bY1$g%T+xd~U^Y7Z;!J$xlc8+)Sw!dp_Aw6Cw-<~t{3;Y;mKa=7$mLE>3?aS&n zcR9O_dyd?9RJ#Q$0iu0fj(4PeeYV%twxTbkf26%X+q<~!^1f93yneiQLED9WY518s z-aD(UtS`Mk%FSmp$sUuce}j_QHsOtN{W1J8X;hmWNa!2aZ*GgVFU;|dvX4vk8rwoK zWvpt?V+FOnA8A9>{%ETA2QKstR__aYLQcmq`vp1P&$fM}iCBH5aS!uTxN~m+A0n*% zmgf-Vp{MQTPVZB-?MJnp$F!ZtwVeofqQ_{BnD*#HpEVE;(H;Dw`(JF1$C#6N4!LJU z*R<_NdPvvw?MJ$Y*mjT6G4?C%1|a09Hh4?_j~#}d?%HnB6;g2EEA2O(%>L#vIumQO z{$F~W_tj{FJvI6#|J`-=;NYH<_tmhZn~Vd7KJA`O#-;dTb(@USlnVCXCS!75MTYkz zw!-Q5kF|sN{6yP(y5L)5$JLKM^bhXmL#O#?Prz||1^a1}(L2h&-B|BtW1~9>kh1}D zv0Z7{xaOUN4A_Uv15SkKxy&|dskNWT^wx0*CL#2pSYNv}%Uj)M?wbLY>@4rxHfo=c zfde}s#CdYJ0D8!4jFw^a~{*2$2I4G<_$m8|BrCpM%z13 z2(>{HpF{in~XSE!xYmpc^Fr}amI?R1V9j3m^I@CT_hq3RvTI`v1Ec8}mx(Rp-!E}DXCSucW#rbkn3&k|s zPiWXaS?$NP_LExgar`>2wSS@E6wGQL(AvM$yi>XjK`~0lG4bl)@ z{e=c$NUr`;gKTa0zxgf;>6*IzNNv~DJx98K#dGa0yS+CVr}zjw;8fY)ew(pHxo4Yk z{=;_|4g2SBGwxIFHXG(gwKg?*mNu*)qh41!on`YD67`M!Gdqm0@X_)6?lPv%P$KrH z^&20oVFr`ocTlJ9OAFb3Vo}sf3Mwe)Vprq3`VQypYR_ac`emgAW!b`#yPc&aM14ic zdO1CZB)kgEC6yjAl!LG8nxaKDGg8XRNX%Fkx%-zvg=kio9Ds~nX7mwdS;-4p-Ev1}YWsn?x445z~0StJxWQZy3vF8>`cRk@HvzIUz$ z+7GeN_xY0Ov-v>GhW-uYqz^HNLdITjP|K8$#JtqM3kLOLF{{y^=(CzzeYYgT@65PB4fqmPl!8RaEQiaeKAl{c)ZuWD^3*5mA`jan8CU|c;xI@hk; zK+BK1e!SH@HaL zw}id-zmS-WQ=Ir6mv9mFd;SfHALL9=W03v>9|=ROEuO~P|0!qsFFBVV%ff<=uLnZh2YvsM)GI9c2lc&P6qLajRojl zfFvv)YzPY9ZZrXWv5AU~Iv%{L=7u$`IvY*GQ1n10-b~@`%qFE6clAM1NNzGE6 zc{|vHHX6l}#?tVdY`;kOcxflylTJ)Ipz~~yN2n93@+K(Gd|fVvtsYA)Sz16Y*C*$M zT%MFGAT%FxmWc{0+Dv28Op^ivlYIiE5SZc@uoMX1Nv6U8?*%^I3h++#^QzN8=P7f# zh*;W8HqlN~FPtUU)1UlIMN$TqQcnizP5GmR2ue?a6ekd&zmNUJ3;fmkH3} zPQqFG2UjC8T@GFymV{mb2J@ACsbos8Dki3@`11yjLnE{n1~HS-SL<7>YK}Wz z#i(^PYafT5x90zZwF$acH(-+yx)$DsUn4jiDFqsdYz}sFBcUzeiEIs;adtj2t&?-k zC-e_|&g*@19+oyXD4lM89;h1?9G#f)wfq~W_;qkWp5oU-IO>KV_0Fof#B^gozZ)!} zZG89fqa)IDu8ZnTVgc1nQvGJBK97uv*(#8tqYJRQ8M+d0Vb3^d!l+v%LT=mtUkAOc zF4FR_JStENRoA;Tp=sYocj~rzfjYkDIdWSxIk*qZC zmBXF9&|IPH>!6ls<<#AZ;hTGMLaZz-lYX=BVfv_&6gQXGJlE>go~-Q_)~_dY9u_Hk zKKu9)n&n;~>ywFumV+E$f!dDmhjeH9rpBgau0~JG#??!k8j-;lf>q?$_{zZfUgc_T zspm(8vwGv|a$>3i7f(~b=!HBOi)4Ydg{alC?x+EsUWAXt#mNK+<7bk7+6-4Uha_A~ zcoNTjjK-SiCB#GWmJsK}Kvs`4STAMYKT0i*%b+X#a(K?q9e7SmS4dwc5qc#C$6m!| zA+57%J#^HFS`ch5wx9>c;!-x@F={bbmoaw_wb<*4bJ7l>Wd^h?ms%zhx&lJUE7|@Y zYF8Sh(A8WhZX{jBEi^LoV>l#N>tplMn@I4CDpzgxC8uGbFs+3Jz9|bxRP(T!wW_GP z`X*v)A)V~q+i9#Jsg>=1j3&C*kt|P6PL8L_)zac|*|T^w!o~5>gr~1Y^|R&8_-^bjZO5!z;uTM{Ul<#xLtamPr|n0Cx>#u zErj05W8A^9{Qq6v`0YW4=F~I^J4=d)?JgY_R(dzNkA(h_I15D2@h1_r48~G-(R5`8 ztJp;?qwkgbq!Tu^KeLuybb@uKEY0r|W9t2)G|zf~J->@)DqZZlUTRYwyr-AOD&4HN zms*qK{sMonBY3{U#8J!rfd@kUs}y~RUDylJhlS`Py6B@^)HbC@WJZo4w29fdB=RxR z*@U(5QSwOSI|*{+ykLG&JWX_TUK`J3r#LXEhc+wPS=m+L7%nZYnYXyKTJNrSf1CIrb3H*5Y#+(h zJ*Txz_=K&3aT0qpQ`cq~l`PGQfUAY%oFHLi!q17wAToU!Qz*fekRh*6A3YgH|`nnl3xn#_@ z0%d}OsAzP#qo(gfa2zN@(C&(;Kt~>lK-bH&g%H5{o6!F9IHH1#Koi{J)+5Myd2ohc zBjTSzM7WWcNmMk(tuA!uKVsDMlk^uA=+Ahz{F`S7ZUX$Wx96URqdOKyiYuLjp)(f1 z$R%UY4vT?n(_zvbhHhA7Vc17gOv2F!*EcmIx8}jdZ`|hZu#wAns5*Ew#qO!})CvkDQbhI1wAj%0VKBCa! z=4otrn-GcaRu754!&1@XVk?qJw7DD}fzsK87FQNHDjHqB$dPDn&k;wDtBa45;%>iY z>VOZSDeyrgceJZO4kk*+wW=-}`H7F{j}Y(%D_qtFL+qGl;N#v;(_a?=64qT%)J zkDP#zTW*js=zCjQH%NXGF+up}7Z2ktu--ocOXz`#Esr-h`f{TAbIx117_DG&Wl1Sf z^C62{H`ByG|2Rohs^carJUo8TIE&cAr)Y#Sh1EVqV@4K0@6wnJ0ad3&q9C`eskdTGz6AoctNn*-uZ=^bs>4Y@NxHpQe@wG{!pE(9feI zCb6^G@#koaQp~XyQ-XfjcajwOfPxFlVJ$K(Qyw6pa}?h}iw;?j#XKlOdyEh<c8d!@& zPt2f5Cz9BuTrj2_jWBmhZZ@BCw8g{b zDX4s9(I(5PK756OB3uU|fV2{R#x$@KaAn%n;Nb~iO77-HS4*p>xqb!CPXu}l+n$4oxzN zMPEEDamcxt&?4(xsNUCe^XQD%Hln#kV@$?h%l14&vz6=g6j9vN0eTg*MPwgs(|NLAxEY$358?#jksmq{3!W#I}kFdAkOi*A{3RyngJGS`{5 zh{lK9aHrKn{`eiiCB_xlhR>>Yv4d6t+{)vcXU2eO%4`kj>MN3H1TY19#ZrU5Z|EI#Tj+ z$~-8xW4FE?i~n-oX4g@URA6801p z0DHxx-?}~xuGoES=y@75Y5%bGeFpUKXA$T%b*KTfGGcyi*u0C234NYV0OG7d0{a&rgZ{ z?Yv(6&KWpFfRVGXY9a>xpur7mq+-Cq>uPEA1&~A<44utQ{%540NMkSs+bU!j#f_*V zcGTd*p*q4Kt~W=5ByOk7s$qDqO3b4SL5pDu1*={O5o$6Z%Z3?zWkNVi@q%|W$nj$g z!|S8PMR>VY$(*mzk#S}yAXI{^>TiF_5$Ng_#@hlB(j3#J&m!QUE6TojP7WZzmLAmhLl z?l26?C@I|bFrcJ@!NpQNQk*Jg9_Z0bEAioR6H@yJN zrl}Hg`6P6jgd8zXmoRdROAQh^LlVR@$KK3f3a~dTm;&e(`5jYdOXwAYB%o(1!A}XT zQg{+t=7-iCXyVYC3+$5kc`W`lYKxmMv9dr8mSZfjLIBCSP!3j#LA6Q%Y3zlp?KPT| zy(kzpaJD*_0vy#qpXDNnqs4fLzW6*ix&%)9aI^$W;g|Y?n~RS1GC7JIPA})9SNKLX zj9w|{&bRwj7&X@dI~tQmRxUBSxKkWp;rd+?p-aJKTgL8ug<2=nN!>tIJy*Tlr<%Xh zTM-ys$z>WOs;&lIqG}cB) z^bV+qYUkTrW)=OOg;=)9g(}=!ilU=(xu?~&6n}I;?*#vt4g>E@w=B5W(^$WT(Cwgw z-^KTr>;^1YE38*CH`he+PFsYpey&H)7 zvxt?iLq@4<+6h)3F|gjpS?`xS@c~H(^t(XMe2`uI7R|tgXxm#zJb&S)|9T$N$q#YU zNK}(HfQpIq>Tpsg4Bfjili4GWjLTUb$_5J8UGW59cgpvc+w>NwZ}|2?b3 z-&=Uf>(>CBW1bYQUFy~^)5w^oe4g=`6VubuE3`@bFw2PjKF|0tIcG=2Fi9F4=;y+x(f zrHdAqmhgt}RcPZGs(`4k$xy!z5{Cd@hrgjuov3dL#i4KccGIYXI%Ny~j!4+bI>esq zqnRt-9&W3mvcx&u*x`V&ccig*1IFHy#`>kP_x;8`@EQA?H1;8ze+b4t8g7htQp1h? zJz(r(Y3!4Lu}`J3BhuJseq*2ej2#umGLNw%hiHcTID~;@9*%h}VrMO?sV3@xV6&bu z3?FJ2moi02f+vL_O8YTi_>$wL{9e-X<@r^Hf9+$#y{73K!8DD_5Bdi5drix?!qwtp z4_+=cHm$F3Ugl~+PB{f!n7-ph7GSZ3SHK6}rg5Ww5S}_tv!id*aWnoQ{X(%iEe)x3pi`>(RDyqz-=pK)>3-!j1M3!aoR*0ji|K?@@<4&!|_n=6qvN zB_1^~=((n%ibPH_>P-NTj(9DnPDXs28cF1oAZBR^7 z>x`IbK@_e5WzF%2Gb@O~74Z7mA09dz3ug)|<{I%A2YDo+g#D+V z#$Q^hYxFgV-0!kr3jCN8Oo8ILe#PoMqv#3e2cowCw$jSkn)i_cDzM@>tK~BCl{GI6 za+O3@22T^~S#_=u_v^wSF-}<&EQn>SK36c4uVYQHBq$dJOJe;NGyA7BTDh22eL(FI zm+;kEBJqTTb?JW32h^?L&wKL>$!i7AHJqn8z|-RAso3`kHHI+b=f>Y2o*JUubBtcU zz?yRI%g(aq`g&&(QB&pnyfpDX&z?^BOXQMutJiM#z5cGKo`b&|tC(F`UQOaM*!I8B z7`K`w-omNbQhvOUkIK>I123U(C#qAjPLQnlznSsBc8e`TE~ne!#{ zM8RyHTGrg;Mtdk3r%1*E=|JHytvWA|FIlHb)@jm#={oC0`d=-GzmM1qkW1#7 zl6jV3jxN%f#UCz}m-4@txs9l^C3CT4E)mR@(qYU}vwk~SCiq6p(fOF78qXrCC%2xY aTThPIdUE8}lj_!!qqd$5efXs5{{IKiVm%N5 diff --git a/.Floppies/A2OSX.SRC.po b/.Floppies/A2OSX.SRC.po index 42de2cec515c0c638dda51a8428b33963b6ef320..58c1efdbd63900b1d6b82d16d8b7399b76772dcf 100644 GIT binary patch delta 1740 zcmZ`(T~ixX7=EFg?!r!>2n3QXw2)Y+%1Zc5Xp0RE)Cd%6z$tVDmSibV%107v(yFip zX-dbhRz0q@>NsPD8858k49s}p^wxjSOFw2h{sFH#HMji{91MBYB{udCCLMS?#y&}9nQNI@~YY1%*Z!0ashsY_#N2K z$VJlib)^xcjzVKbTh$dmIJydr=#>@S(>R57zg;JRLIWJ#xn>JCPhc||)s+C0oy^q( zjW7B@I>kGFAUzEBO0FG5*y%hhi1jn(WfLZ@*Ty+QIf#mozC5HqSHET=&azJ8<`^x) zkL-`pgWvCw$Y3}!x_3@^Qm{87h^0q71TH9M@y-I?)};8FBjXXQ%qNn;Sd4lnh1-R7 z4*K(yP+L$+A597M&N47SIt0dIEUkN5fRy8J_j9x?Be>csz?ff3gH#EY0X`sA*mgL< zNF>wfB6=WJgONKjtdYRLgD zeP&LLkArlCBin!+WrX!6;Y$rRq3Gd5d9f5%b)^-^^X%j?P})q+?6lByloN;4q}rQK zYU3a_;+$#sqlLjF^_fBw=ew z)0K80ortdMqW}CZxYswK+|R_Obn_jQa0n^_mikkw3D;Z{zRfuS6JURzbk3Ey)^i%IZf;fd#+G{&4hrpl@9t%zh#6C;A ztDlbiCRCH!S3&X7A07+U*b7_2T(6nE262E39OMFhP^yOrG$+{2N+ z!G3*cI27&=_l2N*_`jM*p3z)<-qgGWC9m6}BbMlfQ9AaWP+u{|B)pMVaDgk3K^n(t z*y3WMCh(Makt=$WOATu=gej z7la4b;FlR%esl0HvKN2iNBR(2y;*DDRnY@3svWGu)M1 z+!b7q9b~M%%@*Xa{60_q2X+WPv_jzji2gV!bQOF|gHu9f=#I@;eHZrWd0L6zoqB@7Ap6r{}Aqx>|eq!L?6IEx4o?R Tq+okj+}(f3-f7XJORK8K+v9!34`LV3bOY(O=wR*1r-KOVJ%pXi$EOY0sRGQ} zm(N5HarzK(#*FuSyw?m!umB-vS*89wPDWe^lgkPdXdTGMXE8o##CImOV*E&MQake9 z;~W{K&x`geEadSR70T)w2wafIhr{C&_ZHAui|lVTPV%U7RrAi!T}!uBJMoluHI{+C zkcg{8@}QC&QI>r2R1m~+z}_TSX-9?T|C8F^wc0>WBvY!~jU6JDphI~T=zYVXsbE+Q zbaaBf`u~XR1tOsa^kgam4hJKOs4dfDcfpMap`o_G^Z^B3nRQcr2Ab z?$P4O1PFET@-IhQq23LqjbJRc%Ve9UaU~Lu&OuW>tHwrpb9iOt%KECBSdT^(C8oq= zSq@E(0eKN=#RkY;qAlb4Vl1tCd_Wp8=xPGluQAGzb0e%5LrS`TE)t&t!2|mIavH>D z&W`?HLWK1wGm!-HXuF>OMa~ZO?m@|t!d*G z+A$Q5sB!>E2fNt`a+@}jp*7_~7xG6^xR5N~V=y%K78uA$42!40w1fg*W!L(&i&*H$ zX?OtA83S@WSbzxqW>FyoI!*w@bC_c5)(&I<(e;CD7Vf(9j5Ng?9S%WN*sQ`jpS?|8 zo(VY|!krLa13kJJh0>wI(1y*SHI8WRTeRWWXrZ=s>|d=TZ!qm|a_v5lCN%XSb(RW~ zre)__+MP$#LEIPEg#3R|hX}%yDc(8Fa<$bLxrev82S2!Hw5QLgblf)kU;UR3^>gVZ z5kvZxww4pCEKM=(^@p_4rZ8FW9LkzwvRux2ETOEir$H9*hH!}8P~$X&X{W|mN*Alx*=!nQfP>K*>z zCRbyTq;fWm8(`0vFFpVE>K2t~638tk@^+zLWS1HGSPMR(wPm01?Y)CB>8|$E6Y7%o zP_6loA)hi0_dsrE{=m7PUSHB.G SYM.hGlobals >PUSHW ZPLinePtr - >PUSHEA.G SYM.Value + >PUSHEA.G SYM.Global >SYSCALL SListLookup bcs .2 @@ -195,13 +195,13 @@ EXP.GetSymbol >PUSHB.G SYM.hGlobals >PUSHB.G SYM.hGlobals >PUSHW ZPLinePtr - >PUSHEA.G SYM.Value + >PUSHEA.G SYM.Global lda #6 - >STA.G SYM.Value+SYM.LEN + >STA.G SYM.Global+SYM.LEN lda #0 - >STA.G SYM.Value+SYM.F + >STA.G SYM.Global+SYM.F >SYSCALL SListAdd bcs .9 diff --git a/BIN/ASM.S.SRC.txt b/BIN/ASM.S.SRC.txt index 1b331693..7d6b0b37 100644 --- a/BIN/ASM.S.SRC.txt +++ b/BIN/ASM.S.SRC.txt @@ -69,21 +69,24 @@ SRC.ParseLine lda (ZPLineBuf) lda (pData),y bne .1 - stz SRC.GLabel.New + lda #0 + >STA.G SYM.bGlobalUpdate cpx #' ' no label...go scan dir/opcode beq .4 cpx #'.' local symbol? bne .2 - jsr SRC.ParseLine.SymL + jsr SYM.AddLocal + bra .3 .1 clc rts -.2 jsr SRC.ParseLine.SymG +.2 jsr SYM.AddGlobalPC + .3 bcs SRC.ParseLine.Err .4 jsr SRC.GetNextCharNB Scan for an Opcode... @@ -108,7 +111,7 @@ SRC.ParseLine lda (ZPLineBuf) .6 jsr SRC.ParseLine.OpCode bcs SRC.ParseLine.Err -SRC.ParseLine.Ok lda SRC.GLabel.New +SRC.ParseLine.Ok >LDA.G SYM.bGlobalUpdate bpl .8 ldy #ASM.PASS @@ -116,28 +119,20 @@ SRC.ParseLine.Ok lda SRC.GLabel.New bne .8 yes, nothing to do * --- Pass #1 - >LDYA L.SRC.GLabel.Flags - jsr SYM.SearchGlobal - bcs .1 if CS, not found, add - - lda SRC.FLabel.Flags - bit #$40 found symbol pending ? - bne .2 yes, update + jsr SYM.UpdateGlobal - bit #$1 found is .SE ? + bcs SRC.ParseLine.Inv if CS, not found ??? + + >LDA.G SYM.Global+SYM.F + bit #SYM.F.RESOLVED found symbol pending ? + bne .2 yes, update + + bit #SYM.F.RW found is .SE ? beq SRC.ParseLine.Redef no, redefine error -.2 ldx #0 update current symbol with -.3 lda SRC.GLabel.Flags flags & value - jsr SYM.AddByteGBlock - inx - cpx #5 - bne .3 +.2 jsr SYM.UpdateGlobal bra .8 -.1 >LDYA L.SRC.GLabel.Flags - jsr SYM.AddGToGBlockYA - bcs SRC.ParseLine.Err .8 clc rts @@ -178,24 +173,6 @@ SRC.ParseLine.SymR lda #ERR.RANGE sec rts *--------------------------------------- -SRC.ParseLine.SymG >PUSHB.G SYM.hGlobals - >PUSHW ZPLinePtr - >PUSHEA.G SYM.Value - - >SYSCALL SListAdd - bcs SRC.ParseLine.SymE - - adc ZPLinePtr - sta ZPLinePtr - bcc .1 - - inc ZPLinePtr+1 - -.1 - - clc - rts -*--------------------------------------- SRC.ParseLine.Dir >LDYA L.T.DIRECTIVES jsr SRC.GetKeyword diff --git a/BIN/ASM.S.SYM.txt b/BIN/ASM.S.SYM.txt index 256e4f12..558b8002 100644 --- a/BIN/ASM.S.SYM.txt +++ b/BIN/ASM.S.SYM.txt @@ -42,7 +42,69 @@ SYM.Dump >LDYA L.MSG.SYMBOLS clc rts *--------------------------------------- -SYM.AddPending +SYM.AddGlobalPC ldx #4 + + ldy #ASM.PC + +.1 lda (pData),y + pha + iny + dex + bne .1 + + ldx #4 + + ldy #SYM.Global+SYM.V+3 + +.2 pla + sta (pData),y + dey + dex + bne .2 + + >DEBUG +*--------------------------------------- +SYM.AddGlobal lda #SYM.F.RESOLVED + >STA.G SYM.Global+SYM.F + + lda #6 LEN+F+DWORD + >STA.G SYM.Global+SYM.LEN + + >PUSHB.G SYM.hGlobals + >PUSHW ZPLinePtr + >PUSHEA.G SYM.Global + + >SYSCALL SListAdd + bcs .9 + + adc ZPLinePtr + sta ZPLinePtr + bcc .1 + + inc ZPLinePtr+1 + clc + +.1 tya + >STA.G ASM.SYM.ID+1 + dey + txa + sta (pData),y +.9 rts +*--------------------------------------- +SYM.UpdateGlobal >PUSHB.G SYM.hGlobals + >PUSHW.G ASM.SYM.ID + >PUSHEA.G SYM.Global + + >SYSCALL SListUpdateByID + rts +*--------------------------------------- +SYM.AddLocal + clc + rts +*--------------------------------------- +SYM.GetLocal + clc + rts *--------------------------------------- SYM.AddPrivate clc @@ -60,17 +122,6 @@ SYM.LookupMacro clc rts *--------------------------------------- -SYM.UpdateGlobal - clc - rts -*--------------------------------------- -SYM.SearchLocal - clc - rts -*--------------------------------------- -SYM.SearchGlobal clc - rts -*--------------------------------------- MAN SAVE /A2OSX.BUILD/BIN/DEV/ASM.S.SYM LOAD /A2OSX.BUILD/BIN/DEV/ASM.S diff --git a/BIN/ASM.S.txt b/BIN/ASM.S.txt index c9e6b591..c26ac356 100644 --- a/BIN/ASM.S.txt +++ b/BIN/ASM.S.txt @@ -444,7 +444,9 @@ ASM.LOCAL.INVALID .BS 1 ASM.SYM.ID .BS 2 SYM.hGlobals .BS 1 -SYM.Value .BS 6 +SYM.bGlobalUpdate .BS 1 +SYM.Global .BS 6 +SYM.ID .BS 1 DS.END .ED *--------------------------------------- .DO DS.END-DS.START>$FF diff --git a/SYS/KERNEL.S.MEM.txt b/SYS/KERNEL.S.MEM.txt index 509debc3..a2aeca2e 100644 --- a/SYS/KERNEL.S.MEM.txt +++ b/SYS/KERNEL.S.MEM.txt @@ -561,6 +561,12 @@ MEM.GetKeyCharY sta CLRREADAUX sta SETREADAUX beq .9 + cmp #'.' + beq .8 + + cmp #'_' + beq .8 + cmp #'0' bcc .9 cmp #'9'+1 @@ -574,13 +580,7 @@ MEM.GetKeyCharY sta CLRREADAUX cmp #'a' bcc .9 cmp #'z'+1 - bcc .8 - - cmp #'.' - bne .9 - - cmp #'_' - bne .9 + bcs .9 .8 clc rts diff --git a/SYS/KERNEL.S.SLIST.txt b/SYS/KERNEL.S.SLIST.txt index 56dda4a6..2a1381c1 100644 --- a/SYS/KERNEL.S.SLIST.txt +++ b/SYS/KERNEL.S.SLIST.txt @@ -2,7 +2,7 @@ NEW PREFIX /A2OSX.BUILD AUTO 4,1 *-------------------------------------- -X.SLIST jmp (.1-SLIST.New,x) +X.SLIST jmp (.1-SYS.SListAdd,x) .1 .DA SLIST.Add .DA SLIST.Lookup .DA SLIST.GetByID @@ -10,22 +10,6 @@ X.SLIST jmp (.1-SLIST.New,x) .DA SLIST.New .DA SLIST.Free.A *-------------------------------------- -SLIST.New >LDYAI 160 40k Max before out of memory!!! - jsr K.GetMem0.YA - bcs .9 - >STYA ZPSListIndex - stx .8+1 - - >LDYAI 256 - jsr K.GetMem0.YA - bcs .9 - txa - sta (ZPSListIndex) - -.8 lda #$ff SELF MODIFIED - -.9 rts -*-------------------------------------- SLIST.Add jsr SLIST.Search bcc .9 Lookup succeeded...DUP @@ -157,7 +141,23 @@ SLIST.UpdateByID clc .9 rts *-------------------------------------- -SLIST.Free.A sta .8 +SLIST.New >LDYAI 160 40k Max before out of memory!!! + jsr K.GetMem0.YA + bcs .9 + >STYA ZPSListIndex + stx .8+1 + + >LDYAI 256 + jsr K.GetMem0.YA + bcs .9 + txa + sta (ZPSListIndex) + +.8 lda #$ff SELF MODIFIED + +.9 rts +*-------------------------------------- +SLIST.Free.A sta .8+1 jsr K.GetMemPtr.A >STYA .1+1