'=========================================================================== ' Subject: DEVELOPING ASSEMBLY ROUTINES Date: 07-01-97 (20:11) ' Author: Andras Hoeffken Code: QB, QBasic, PDS ' Origin: FidoNet QUIK_BAS Echo Packet: ASMCODE.ABC '=========================================================================== DEFINT A-Z:DIM SHARED K,S,B&,Z&:V1 'Created by PostIt! 7.2 SUB V1:OPEN "O",1,"EXTASM.ZIP",4^6:Z&=12218:?STRING$(50,177); U"%up()%9%%%%-%%%RC>SS:ckJ*%%%p2%%%0%%%%fx%ryjx%ySgfLx\%<+x[m5]ws U":x2ptwH'R*<5;(\$z.F)t;tP\>T*4>hWDPkFpdW8#hWP.p3qaWd3\jOYbrbH_bQ U"Pb)>>#8-vLXc,-K/.8/.4lbJTm?xsP.v#>P=<1DC(18ofj+z<'33sBn+8pO'=[ U"_-T>=Ff1acQqp9K,OJK7D*:0[UKC:qZ1.VXl(##<+f)hTj#4L>qKWoZ(-H<4h+xuN3v4>HNI#EE;Z334;ly=x%mRr>IjN+ U"cs_$HscALelHMc2UA8BkBoWiQ8VDUUrG\x^jmL1fE'd_dC=9XRcg#jc]5QPbj]V U"mlpCM)RLp1lCw%JQ-#aoRAjsmv1d-cpK,^d(_t7$,X]S=;Zp3\w;YVa5^;Hw-/T U"Y2i4jZ?1A0Pm.#v%?dNdZo/KT&.&-SjGCi#K838joG,(#vG$v_h U"AAEAI*MbD$/%-feDAp0DAd;dPAisdVaiT#:y/J>SG4of2YkG':lSr/'sB$j?Iq/h_m_/UCrih4tR6v U"r?uFIIu>oinlvq=1\xFrce(pihNh;_%,aEXKtl+Bbf6nOotJ+WNT3Dqb5%RArcA U"/CUPOCDjYMfBQkGm3#o4<,ma0ejc;Gi,aI_U$^QGv\0csx9TVF_w6K4&::ZkTkV U"rdOGE\wXs:b[:H'x+LLP7P.FerVD1=ToXz0mqTi3o3oN8fp0xU/z3tjVmC^ZLVt U"q(:t89b,[s-FxFq=AL&&4=bg9x<+v1MJYg=)/o_5_E9s\P+..ri:B%X4Ha%ME[V U"uMk.hF(5twLLR&rehM?c:RFdTn*3gVzh=Yw-S6tllg$PZD5t43&=Bi3f($CF/bc U"ca&Uvgg\l2USqaz//9aLMgmT/lF^Pl(5)OXA*rU)>nihZEKD'LkNN0$hVXO?^D/ U"dtcK=U&7z+%v3(d5eMIH?hKiLAsYy\nD9DwvT94,6]fSNibT=#)?bb)2HU1N$xm U">-Ou7&?>W]Czl^r>Vch&]y2Df\#d2A8=T U"_&BZ=/_N%VfQ1V^\ab>I-Cxup%()9%%%%-%%%%C>Oi7B\'q*%%&^5%%%/%%%%fx U"ry%xySfR][.'7vxT]L5M6U?x)P^XKZcr/].8mGU4._Bo_h*1ooFXIBC3*gs+3Da U"LB5grrMq&.I$e2>ToZaijaLkKe''P*LD/3C;,tD:[ka^8csb.0bg U"Ww?#0?hG+4,a;Fi;DkaKB2FRbmKg.tEg)]<>B.mui(cI8piu<*hP U"T:c8lJ0+:4s2-bbNeAuvs;l0h]$DSZEH^[c'vAs;m8bZ:ib11d8IN,/QB\IXT'tIBdkQDg\WF;UI6hA:]=U26F+HB'I]3 U"I\4e&7O0-yQoI.QdyG#YnQ^3(oTHZ3%C5yJU?UJM3[)TjR03[3 U"T/gs3f#0F5M7vUarj*-ot3Z5D-Mt7;mT,w.gXWG8?Am3vkF$p#*QD-$U30fO:eC U"-rKcsO$.#eJH#Dr;DAOMPCWmPhs\gK5g7A2u.qg3(_)nDPZcUH;h=P#(^YTXQo; U"ldt?06Y&yGW+u/#/nDM1[I\kQ(08^^;\7b&An#hg[g'N?<;J3t;.d U"&ls%I?8yDBBFT?DX7dIxSC6R,cakk^&V\(uWJ(p/2RJD*9DxW1&mbqpxGVk_*Sq U"rG'_b2?PQ,]7zZ7uR2\8sb:uh7(1e<%83jj:\EstM4.J2Y.yOz41CE4978_K.+P U"(#.Gy'V*D]Yb/l2pyF:aFi:Cj5dNi0dEP^M$Q1?:jKe&b>c6Wb#=T==F[>76DRy U"mziNQp<4VKztL+e5x=',m67),a5[y36lm+H8?A*WAOJeo3\pSLfsvxsE)dcal:ojm/LDj'26N)ur$CgY^nEl&K0aq> U"=bA'mR:.r\F80f-^OOV4$0:Sv:YmHOTpeMpm\,Om3RgU[S=g%$Sgi50d^'2EOYk U":QUGX\\xfF&l-7kGes)g&/o6o]lOsVoWiVFS\)N$(\2yGFGPKE79%V/(-Thz&oJUDv<,z(JoAqJ%q;_r)yEMDVd];ks8W U"Wst\>bFW-d6xfImmCR2bEvkK8tg)y_2Xqrn;o&7ulQD\,sVqv?is3,'LJze#Gz7 U"5:3=0v\C_sp'M7'XcEn,LL3XcY0e\\)b'wQ:v)tS$Sh1LNZNa-nX U"rs%WV]VKrVu_G$8MUxQMOF1q$SqV_X(U7sgIk&vE4$r;c:-y6y3vZo,'Lc&n2XW U"%2VXiJg;Ut7?Wf=7K6f##:O/<;>'v,up%()9%%%%-%%%%C>(vo^8%.'%%%t'%%% U"/%%%%fxry%xySt#goZ$*H:8vs5#$6?0R?5#qFCI&w74:::,Syu0jIp/JWYLg6^-%-=RmD_K U"U\1W)q):Lb-LEwYtO-Jsy2X9;S/hWqT8VEg(poXH6EB[VA?IiD5V U">WaNFmchI_P$Ay^D$mtXq]#A,'?A4G7mDicT,(C&B0UMOAeLC3zT&Xf1Te5oh%> U"lB^W3R_,Q$Rdu2P):7O7f13e3P7ZSWSE7'kw_fDktK,4^;$h$VmXs9klat8DxuLu( U"r19):-co$oHr%p0^xq,yw[&2xdO28&^6Hr;oJXNi2F2+94#L-)02uFl0IM/>(x;PrmDeTNZ_:tl*Vdq\x)q7nFBk&q=Om?p-Clp2ApAF--5wSN U"'3eMdZtQ4kuVZlDsBB&ebkAAU,3Pq:Tm[D+zw&u%p()9%%%%-%%%%C+>Qzc)*,* U"%%%F/%%%0%%%%zxj%wyxy%Sqng3fe,q^9&9#NHlhl/,;'m[uo#C&V/zwDXqGL9I U"+UBY+4VlQ+,*q91)]HC[K=FHRQYhk79Sb),wn80L=;[^wbc/S>#t1ACx:;awLY* U"[rxNV17YSEd7g$3LbF66Gp7ZLfnKFgf6LF_uwHuGd^XZ2%%;%'Np*YJ)86jEM(V=;ef=]G&=0U=uo0jCGNw-w^b%tq6*Bi\bBdF#5Cf:t#-OM U"]5T>EiI*J'6wTA-jQBg[PSr&Y;Vwh:>]_%dT7mF$iC8BNO65PE]-6P^pAnwFi=' U"u/UB-lUH;4c\V'R?T\v].9<'9ZfkEiH&S\DdBJIL:(&a,L%d=8F\=SI]Dr^^O=5 U"s,:R/Wwk0g0lb:81Wy:3*J#7v\emftw$j84h2SX_Tb%_i3J^$REKOIqiPW*3;8t U"-k(-q5Edt7LyiTj%Brrce(fxO$Eq>XlmTUiV;Q;L)CMUceLl),u9\eE0;/)]Vpx U"L$?9sQL$KB?/_[wXMQ6/-7;MIVlN<%);:rUqd6J06:XFLr6Sd(/g+*]=\aF#+\r U"k2l72jA;gncdwvPzh3*#1eSs)#b-WDdePMQE<0UL+5xJY]s$82G$yp5RciJl-^Q U"3Ga=,^C+%Swhzxh-aot;'^sqYSi#pg^>3qrz:riJ'3,iJsQ7f*6^q6_d9bgSJYS8ZihW/EJS\&$L_j*]8 U"XM4;,GXA=l6()xHXSq_0(:h?*UZ0MB8Z*<_R=E<8rlfK&Y,L%iN,,bO5KBGpkND U"uZH95Q3&x7upxLKNJl9&Q+UsM5xN]eUUCs,*IXW>/3GBRKUj=k#$:1 U"EDEF2Ctmbhb[^B1PrNe^l#*aC$/9h2:a5(y19qsezZQX=-D\L4E^$E.tUvT4?42 U"VfxNnj_3&9fw0?ghaAOS1C#65#YH1H]PKS/9K1'k5(xI8+n(1,A1)Yy#V?qTlEY U"8t[_iMA?Fs^=Fl/*Y-1^#r]^0a&\VNl\#OS62c#<')L/Z;Xr$q_VYe^S2jiDbC^ U"\C8]UeC/5,GU:j=dGfgcgKM=$VVhqHybqj7W'=DO>#R5#6t^bqFgYZ?bD^Xb72( U"$(rp?U)hK.xm>t3_$x/L'blLUB4v,q46GohFn5[enFSRA=OTTJxHdG_Ec&:Il$8I1e?f4ZU#A,-oJ#$cEn6c7qQk+[.DO U"A'Img^:%q682L%mML=;HS,qsN&;4M\Q,-r.x%cGBv$8uTuF-iZ.PwS$S0t6,Ihs U"Cz6_Zelkm[RnTTN&/:Q'.[MSO[M'L5co(2x%%up(%)9%%%%-%%[%C>g_1d U"bE#4%%?%?%%0%%%%z%xjwy%xySvRqgfg2JKbzki#n5nHT*&ING%3]R;MOOp.1rZ U".S&VfW'cKSurTcfDIjW2o_-[O\MhXbT1Wj.RzP*HE[SY(]MAf6*e;:=d/-M=1nE U"/'%/9:(pVr#9eU9yo%QR$nk)i\Y6wSNEh U"+EVmT8A-r91^]kkjgAH]dW'iBJq3h[.qh5F8^FrmFV+)x(j%Gs0]N3R9kA+&7.G U"(Ge>GLA^n3-2AOqE#F'?k5^F^Fr7m*+)D(X]$qv_.A,BA+IkW5Y5kX5Z5G^mFV; U"$rAn&3->j#SE8WYo>*_HBAY3^;ATk45kFm.FwQyOGD_IW=P1$8.EHEFBAK3a#k? U"ka;+kG1Ff_P&WMs;^8_NADC3[A:Dq>A$d$nAA3I.h,]%6wmF U"3[*mRCfj,1.[:0Wk]FARm-h:Ku;?']9WrLoTJ__6_HAQ$AZA(O+jC>UVi]%WDNl U"Gucw0(+A\Wa,Bk_aG$Y43Z<0\uux$xTwx,3D8TNa0n$WaIWutm'lD=_;7kIf4]w U"IJm3'WZhO>wIgE$rMshW^0uIn/OIRnpZ-3lf,ic,JyZseq]yN U"$jyhHNYF:hjlI2v%*j\lUM?vDK,\hWT.>TzRS2T,H&yR'sT_w=Jln^Oj,;9?/_c U"]+)Q4jzO8#QYbjDi,a3)]F=gTF)(6%pmre%ynEN_K#vKcB%LFhcDMDE'+k'ufV7 U";XiIXn9*7mKL,\f6($Pz/'CU'?7LJIw2Lvr^Rmo2m\j#k U".Rwu>MY(Tu3<&vjfNwj(6PFQ:,QosIJTf1PAGVDbruN\?X:/wIyL-%0lK)xwB02 U"?e\SI?S)CB]Kfd\$:?k3f9wCdr;.r$CL&EE3SWGsbxLZ#BjY0W9wD[a U"a.V?ANQ0Q/jLW5Q5%]].mB.aV7VB6$huo>0R%&j62VD?R4q?]7Iu0T[:Bt9GqYh U"iwaI%3B^BcaLAHWVmab$oTP_28,vQy#_323,wBKUHm+>yKv(XiNLF9/MoptMUk:\[U[6dAGv6> U"v1Iz%^bMIRt8n;9H7BYCk^h&g=mP,\jo7?Xdj6\^3'hN4rB9wxvnK1uvc3-(l<= U"]7uR-[MskNc\DtL;YJorL]N8)hhp7#26]H59T%9$iNMt2h4p?QCNxWh89[A1[*: U"9jkdd+E\O8:zjIsRWaS^p:*:IknP*((AkL%,gEf#^EsJYAN#;^X125:G*BMa'g$KiMvTkWcZ(*U54#.$ssD'RHC#uKonhWJEX U"[u+7]ITGRN.l< U"lS60faqN8%=C$M(TR)]=MX'&ausV:ZBc\.>Oxjfa%0.hO<:;KRGxnn=fuY[r0gw U"n938(1A1c_^O#?#0g$,iPV-E#8^T7LMYPmX.AKrsX(J5?pKEyeg+IaqcC(pESN\ U"Qb#cJ:Tj#>S*^Xe8B+G-:kKK^XeXjgn_Z-a785fK0'D*cc,V;r9O.'>25b$HH0A9G>8#nflEbElU\SXh4;N^mXDUP/fVLr)8]X\pPP0rdpU'-qUSNf0pjT U"5t]ERuAf;,P6]n0bnkgqNkiR=dJHATW9iv-.jb$6f2PaU=,/wm7,E.eCOBiNp^=%ZHR.bGSd?.mA5pc;b:DVe(eAm]-NG7bnO5?0tl4 U"4ZFR^bbEu2et6WqS.0mUqPiE#pt7SMRemxj5W3b8h+Zs4pHC-ZxCKbX1Z.e\m>U U"kNlWt6:;[1v,5oM.UAG+#G$?VpN$%4UXJL0-eG>?,R/Ov.BJi0%&Pex2#lFN4Y<;J)lEg]i-1/vyL6v U"vXls+pYF5/hK_KL^aRWP3ht%2&Vu%N)U3NWO<%B5D3wqtIn4#lp)FdgQ[$u;pZt U"rMbSbTGYn'l$wkhFa3lbmd%P&]ZIClpmgvfjR?wKMUDqIJsDvlJcW)[,v#tcT0# U"9]?O>AC>h.W/:Z4rZA4jZu'u?xv.rfMrRfvFQ*ui*j1*4Z;;ddCUZPiaR3Rh^=K U"+CIGoGtGD=.>:ipW2Urxf[6Z5w%'QCnT'8kR[BQ5Xz1=30h;QL U"1EZD%KvpSP4jtj2L^i7*0Lt9=y'lW>lUMD+3tW[?=7P$jIm5>\0xvjqY#8.M:>aOi#8bwkTdbKY9'far9D6]-\v[nNDGLjPc9Dvt3^s/W U"-YdJ7w\P($KECx#8NXXQF\gc4N,#sUo#UMP%CLdlR8di9&CSTjn#G8GWmK>K8nU U"-_5nI#\A8wq U"v3>CusBHZrVTlh6nAz-+l_]:3/1XJ0q4<=Cv[qrV&9M&)<8Xp1'NQ9lzccU3)7Z U"aJui$[/rRgT;*N''[R0o(PZOO/yqdZ&7VSW-H,z;fNy12u*FRYD9?h-200-cj9] U"dY/'u/[abK,:bToGR&EZFg9FgLz)6r%26V_< U"6[E_A*qVc.%uPuQMKA]VVvn^r-QNc/^Q*rIR((^WT=Y0k:9O^VCn&h U"vnnh[i-=[TVPtqr.42%,*6-'T:Bq_tTNom9l.s<_P0W3%,tT+W7&tAM+V//l&lU U"P^Z9P)W1F;?*LxBnSQ/q^:2V:Vr?1Sdoi U"p>Pl1Sq8;KZQa*FgATq.hFgM+-F2he\]^pVrpsnh9Vw'1#,)08jOtd:-M*;'O>'Bu;f0=cp\F/1# U"\08cSCP#NNPO_q:*g&Q4M-MMZ?z'$:Q)cl[jrJ4JG$'uDup%()9%%%%-%%%%C>R U"U?n2&+%%%&^%%%%-%%%%fxry%Sgfy7prBQ[vmQG[RNSJap-U\'^'7/-SrMg(^hn U"/5t>xj#e&*,2noiGUv3v?z.%%%8:%%%/%%%%wj%firj U".Sy'yVD'h>]T]7vt=9x<;;P4_M'&fEHTWGZ*t/LsoPeS-$*ZPg0<:ci*T9IvpJx U"1wWh>W_i-d;(1e*(GQ$#jh#\hSxH'gZH:hlNs00C^,NLbq\_Am?fhFuchNS=[>G= U"DdWF.8hP1Xu9ppWLOg?EZfX/Q*ws<2Nc]7XzdTVneZrj7qwN*;Yq\4^d#.=goir U"P9W''DoaMm3jF*\y[nr)-*r#uLlW+$0''*ttGtfq%+OGpzuF?PrRVzC0]E<;Dz& U"7k8%\Jh)K()Fp.kStzo:M=43EIfkA9ECcb$x\_-kt(&8-8vo8,> U"/A+ow2p)AEag_Yj5?ia>(^t7H)0x'>bUS\'^l1=Yt/[Gy]5>3%8wvrfP_lIz;A^ U",tLi1+M>'x8fQifb*qj8P4(-mgvzDB/GX%ZYJo95p[y'RhOU$jZi,J\N*VxOfEK U"7^[3mU?J\*HMJj6c<1q,jbk2<_xra9N++]L_;i50t5#fU-8PcU'Kq(B],'xQdw2 U"6k6XAF-oMp=^)sd:>P^gHNzu4Te-zr4OhWpI(9XCv0qV*Qoo'/g,S,v,pO[.3EiN.pe/d_l\Y/zP%su_V#%IN9Wn U"-/i'u#iZPueTG)/8IKe,33vp[_>wD(4P]MEYjxBDIGQ3BArY5z4):hp5x:5LfnUbCa,W^W9,/F=aC/pJN.KBH U"79>Ytwwc9OM*^rjb/KLuG&;L^;XXBVFYV)6eZTZbKLm3Cj(WiK U"qMvT1mmudTG89>Z+P]tR9mF;+Kur$%bs5D>/N7(_J]:$bTH)AHfh,=:,j9w'?>G U"etNn#ChH8ezgdE[wN5yfIy=hLiw_f$e.2s>LH[fwR<%S2\dbGBUBq$Rl3Yp4RJf U"/t6T71pHTNG..nnvJl^'f/0mk(&u%98X'/tECI>QCLwWW2]J:=UGWRcOPYR0bDC U"^.d$5n81D%rRkL^gB-+xkbCkGhZkN#k&rCi U"uv\fcb4Q_235j1^5K>*ECmgO:Orpi$u0al8;k0n,',d?BS6M*l3\d5TeIlb&R^p U"O-AWXFDr#rIt'3sP#)URU]I0.Uq+=]MM8AD*&El^l0:?(>F$FjxU U"jY\LWlGtl-yOOqQ8EATKMDkR5.O15glQC=e/1V,wYWe1domj:_Ag2WM9dIE]Zf] U"])>8Xm1>5r5Y//6C-1BqTEA.ALJMgCygsNihD*aF]GmHt[KIRco;E$9dGxV16$365AVgZ=67y??kf U"xuT()RBsZuasBY9/y/Ae'CEHW_zTjZHd>c-kW,>oaXa&-Ydt\El[K0L)w)9X3II U"CWn#=&Z\J,F60d*;n[^Pmu7dv,ev'Y-Za:\u2_N-BUq;I_,'IwOgh;4()S15T3]VOEWC5A5:u U"A)]?vUY>R/*>#S1(s_V;Fh.lUlJwS8On)*n#OVylZk;-/[>>8J2\m-YcAFjZtJZ U"^6C/+RyO($-0mEcK%)ktCxue^c[QuAuCkFtH6Zu)qIVJL6)'%D6P9J$rB^-EJ&A U"g:AvF?bn$Ucsim9A/dJ3n^JCm^b^VTsvbpmO*tRR+djX3x>y[bk1DLbAU>c45N$ U"/IVwm3[m?ZRgkJWMb$)+-j6PxYI/]TlN?rW73)2vCGo7Y<$AfNtE_I+EkZ,%-,9 U"I0jo6-=b1p(ZhdZ_55kI+^?C=f]L.UFT[+H-X0%VlGV5+jULcWRmBW=pNS7&iM- U"n&X[4TjMPM6(n?s%r14rR8Y(C#+b>B2eUo-m)=_JoKxL:i*#?ETJ4%o;xM=xEpG U"Y0gZ6R;%2<]G,/iwau6>JYh'u*\-\.j%qErp1kM,9I3J^XZ:CxUaEA=AR)$&]'B U"D:uK%\]),Je%lnQ's?4rjNgo^UFb70R8BdK'S7Bh-,\. U"3'0AWC/:zu-M??#E++4W9UM7$$pVPFK0J_$rW^n4?;3at>4IEGYkg6^pCD]hR0J U"rn+>iZUb+Cv4u%p&'9%%9%%%%-%%[%C>SeSckJ%*%%p%2%%0%%%%%%%%%&%%E%% U"%%%%%%%fxr%yjxy%Sgfx%up&'%9%9%%%%-%%%%C>Oi7B\'q*%%&^5%%%/%%%%%% U"%%%&%E%7%%s*%%%fx%ryxy%Sf][%up&'%9%9%%%%-%%%%C>(vo^8%.'%%%t'%%% U"/%%%%%%%%%%%E%%%%?1%%%fx%ryxy%Stgo%up&'%9%9%%%%-%%%%C>BQzc*&,*% U"%%F/%%%0%%%%%%%%%%%E%%%%p3%%%zx%jwyx%ySqn%gup&%'9%9%%%%-%%%%CO> U"g1d+bE4%(%??%%%0%%%%%%%%%%%E[%%%J%8%%z%xjwy%xySv%qgup%&'9%%9%%% U"%-%%%%C>U?3n2+%.%%^%%%%-%%%%%%%%%&%%E%%%'?H%%%fxry%Sgfy%up&'%9% U"9%%%%-%7>niGZUvv?&z.%%%8:%%%/%%%%%%%%%&%E%%%%mI%%%wj%firj.Sy'y% U"up*+%%%%%%,%,%&X&%%%#S%%%%% END SUB V2 CLOSE:IF S=27AND B&=Z&THEN?" :) Ok!"ELSE?" :( Bad! SUB U(A$):FOR A=1TO LEN(A$):C=ASC(MID$(A$,A))-37:IF C<0THEN C=91+C*32 IF K<4THEN K=C+243ELSE?#1,CHR$(C+(K MOD 3)*86);:K=K\3:B&=B&+1 S=(S+C)AND 255:NEXT:LOCATE,1:?STRING$(B&*50\Z&,219);:END SUB