'=========================================================================== ' Subject: PM GRAPHICS EXAMPLE Date: 03-19-99 (12:09) ' Author: Gunther Ilzig Code: PB ' Origin: 100775.2275@compuserve.com Packet: PM.ABC '=========================================================================== 'Program: LFB.BAS ' PB/DOS Protected Mode Application, using the ' Linear Frame Buffer above 1 MB. 'Compiler: PB 3.20 'Assembler: TASM 4.0 'Author: Gunther Ilzig ' CIS: 100775,2275 ' Internet: 100775.2275@compuserve.com 'Status: Freeware ' First published in the February Issue of ' BASICally Speaking, a monthly Journal for ' PowerBASIC programmers. For more information, ' point your browser to http://www.infoms.com or ' send a message to bsp@infoms.com. 'Note: Start the resulting EXE in a DOS Full Screen 'Load/Run under PowerBASIC to extract LFB.ZIP DEFINT A-Z: SHARED K,S,B&,Z&:V1 'Created by PostIt! 7.2 SUB V1:OPEN "O",1,"LFB.ZIP",4^6:Z&=15949:?STRING$(50,177); U"%up()%9%%%I-%_]\BKs-2>rBC#%%42%%%,%%%%qk%gSgfFx%$:GBT]ahnlyu+,% U"O>Ip>*$t3#jSbjFo+Y3d?I\cI$B3V-R9*rjH/L U"heWJ$fjb)G<&^#F#f;AknPaniVWE'r^tk.R1fP)S7oh+/KUA_iaK9]rq89);*6sLJ>:sU]uB%-^rVH-[Cv3a?$=,j:]XWIUnf.ep->:&-LH[8x(F^7LE?lCK=B U"Ys2)UYVq(AVRqq_dpsa:YB\Zl)knBA.AAi'#1jF- U"j'4;>,2QL+\O%c5MlEf;jWtYY])rgc)]>5LRX7=l,6#%_\lRl\$JN4Q4'xvbp,V U"'jSl(8$:0j;qLu/33L_m\=F,-?eL,&;P&/14&j%u9Il445\Eg[rV0Wp9bOCKMtkW,mq&&hc]<-KhU.+vis['[:%+Q7oCD'c)POD[Y=#lb+;A9m, U"9c/n?O6Z3XLK&U1]'6/f8nj/h32*PVHqo4:?:[F)+Md'R6Q)gB'X^-t6$I=+lPM U">;/rX5[iSw7pE-/%e2Rg#f+5X*W]GiFlb:O+;1Lg]M]ZaaQRErK_6u6bV]V9p\6 U"]aPdj3%Wh#V=qJvp]b4jS/ccfCHH.gW4 U":0q[1+b;jklHTNg(9#BC[Dk1FFAvADFW U"hYYf9^.G#Q/ki]7El3lHp]TSSEY/;%0D7;HA2[/fFOd/;f&J6m&:92>&PWAKjtC U"#)&IJQonJ$im;Tq#A'P*H?$nlR,q0S%.OkLOC;Wsb^ca53Tuk(^5Qbgi#pBU U".0FeE4tuVBezupr6U4zJR^wm_EpRjfTnkYnd,d1:=^1[Yk[)m\PjXjW-5u[#?)t U"W%albRec6>rQO^Z:0n7SGIgO&SmT37k6O^)NiuQZl6o5NXlTs+Pn[BE2'QNIpO5*DH>54QA7isJ+'FW&-x9ZaV=i-1d=eila3,LaG#.k_]=V.;(*tQJt/o=A U"niC.E5qCfF+a3X\)IEN_Y-ke\dG3:7'wHR(6td^.1W>Gq83o;D'>0qPhj?0[?C;'2T(&]'E'q U"R%&%Whh^:-4mw\oIOPMkET,(>UgJy2=or/GC2Fa'0MghJV=gQwB'cnMH'<111OK U")N?aL;WCBU=F<6m09gR]^]$4V1Tbp-Lf:A^UVLT&Y\>J6[]v- U"t;1v),Xl9iU1l'6P]ZdwN3fU'Bbg'QYrF.2HUT>a^Oh#uPeQ*iLpny6bGXHo'Ey U"P)1EJv^?JcL>SC1Ba=p\j[_o,kcpjZKR2Q0$[AR=U8cGq?2su4HY38wQTI#&'OL U"5I[;bfH9c/p6$YQLAQmgBAW9GLX&oH.FBwbEcFxT8)W*8JO4JV7o'Nl4463LyqU U"/'M?#vA-O?r.I2b]09n,%=jZY++oeFWF[lH*kx5Uf[iP)>A9e1R&o9>i-8?kkt0 U"skBID5A6,I;TU?i;m>%Fw-LZZ>^faX)'Ablr66c1w<_jtb_qeql:8fbxTR]R&Ej U"SbQ]7IF2p7Ds6Oa0dYs3d.kE[TaD_bmFlCt6]R5#in[Wd'jj4T7Uq'y/4e7p\:, U"OW%ZZejdJo(_JIRI5TYXY>$%dP[/c-#E7HOXr/pP3Xdj_9DjYX=1PM[d2W\].p: U"/PsccGr,6a=PwXV%esUBUZEI./Tbpr-Y2h,GMh?$r3q^i7gYB8c5Y/SHM586_lv U"+\P:WJ%wUb<'NIN?BP^b$bX^q/R+iR[J?yC,Ss%f%*dUBXOMU)'Z8,L%#p*m%_V U"y%Dp^$3GQ4\UUQOGrl_:7DSdBiRj+?;UBrfSIGn*'f%9.LS,:i:0_qvSoj'eahh U"9(d'eKtm7lhBi\IZ,.fq)tWpQ:\Keth/>V3LB/$_5bQ-i5jt7]-/>ua];uXb1wm U"]/CG9&Kln/MSDOM/2nC*nw U"OHCO42+(%DAKIhCs^gHPFEY]+7$j58yBCO0jM'*+H(*KeBfc'.z$dGNl-jE U"d2H;#W%Aa9CV[(4l0^5A^FkYb^YI%UT:;A1Eg%C\eG3]<'FhDjw.Y9T'1?GBC$P U"ZQ*Wc>)qs:4Wp%:E%TJ=K18s2'q(yd?->EOmejUZLWlA\jD/j1RN+vUnw6e1pFO U".6maQw'nO:Ww+XrlYi$F7D68/*,,VVY3ncAANV>V6U7uHb$fVIY*-sI+_H&(pGp,r&Ldr-q-j:E%9RLNykqOpLb\DoKXe#9 U"S&/1UBPajWW_l3LLi+)hIg'IID'2DD[N81QqyKDQ$tn6wC9/H-6(IS-*S$ U"eo=AKAgx3IIGfB#8uAmyYPc*t=-sszP/YPnoP;[xi^uDSL_8D)J%7MDC\%xoQf[A^cs:1t/_xm](WTGGm\co08H=sFMmnu;KJ#Hs#o+VSm/CLDjP U"Rh=k8cmH#-uJ6#;BF0t6:Q];b=p;-6C)e+hJN3Q_FUcFlK/k6*/oH U"0Y+_TaBFCQoO0q(rKH[QC-#JMeU7jm[wX(Sb^[+k9JL&u>A.P6V,bw_Wh;q?Uzf U"(oStRWBUp]9*fHe$D3bQ.&&C:I?tyf&d(o,GYrs/pE/3hK]O8N3.,T\'rWQU U",ibc\3CYyW(?T?Rml(#,Sn%Mn\-2%c8sxHeE](r0)bdc6JXq4C47k,Z[..E2Ous U"qb5_hyn&soiIYc7]7;wfNi%WZHO4wHC?0[zr1A(NDp5uSvH;zfN1,33nysY^Mb5 U"3(zN-bcPp(*j3K'fVC/dl$&&*)E6*Sh,ZWX3tA4(l$DwlKf#- U"uVAoJxwOuSJYR.sZ/iN)j+22UFb+^Hi/$=U:WOrJjo8W+WMKkb6z U"USU:'[grqR9bzoEX40N,Gd8e,3JP1mQeiNu3p9ubEpwitIfW^CITVU)k'nM+L3j U"z)kfR-I<+UL^i,xV9JexEiITZ>L7duf^I>N U"dSGsGI1lyXpTA3EE.on;W6q3SJ-dZ% U"K4(juRgL#=(G?XL-o?n3IsWZB>KhSwK'2>z%2x+m33NIMBth8(gX*f>FP],cH9J U"%;JJP/6Fi_W.&^>TQJu4:PJGa:yJpX,ReKCXLYXq0Q1^^gf*BnlUnYDVo4HwnP8 U"KeUD,ZEVKvp+->TYEbT]Ew%k_5Cis9pjNTA3dcC<]V9.Fi7.7%k.MA9MnmNCP/j U"6XZGY,V-a^HL+K#GTH5NS>p+.XML0=t#h(2jS_t79:>>qrdo.ptfP4fN:;YmS79 U"u$V;]ufQK1VO?G\8pjUuQ?W00MS9P(-sT\>GV43DbPx&byUeRW\z8uO/K7wTrZ: U"Om1K,4_4i5[B^aCy7)Um(A/%goe7#-)+DJdP/^47K8y&ww U"^i_N#$5jLB+CTCn4h3=:^+#Ta,s].tXbiacqj6r1u.vV_Wh&bEM8$,xkT$\(TM?hFhCDtB:e5 U"k'4C&bqO3:kN*89sbuCat2,N?4'g9S2ND'BG(rYlsMKvbS3]3=+S7R?f.'$>Tt3 U"t1JS&zniIL]L:+L3Y;?48BONX^Jm*Y);]]l&)bM^liVzp'zr,%le+Q4HwJoug3, U"\P8RXaL&n^YNA*gdNOxWG^Q3uRA\nHuI&iOu)kCQ_D#bXc1;1Q/Q$>*[eVx7A6$ U"KkV)R0LsKf3qR[Y#aAAMW)*;;=q,Qla)N00=.,=^KcGH) U"hMa6;;5hUh(dWpi;P;Y4/iR[8eoR9JAfGHS,C)c(WhH7+;XX7/L-y6v'oFOrJgA U"F:NFng0[bgY;^$G<%6DS6-,kKUB:#>1'3470aH6B/Jl][L=+,ihG$DO*.kUi;id U"Y4Y^hUy%noLAR6LFJRh/%>*d:6km[=w/tjd\E&&U>Jm>85BtYSAeOC4Iv/dAY=e U"[D<_VHDhXsg.NMo4YQalW9Z'(o:YBpzlK4YRBFM_L_a315NH>#pd+aaXf-/CNkZ U"JKsWgHX1])A4??n\,;%cu$8EDG$+kLfPX.Vf='g;(]s[fGG0,CT3Te>Jps2U9/dqGA$tj+oB U"%I&tCniJoFsZK_F]MB(?c7ZJnj2H7TEwvw$MxA*[:\2EOe:Em]i$3-LN[aW+9iU U"2tcRN-JKHz_)-spGEL&\[Z^s+uuYW_X&&aN6A8/H]L)DH_OMwlMaH=omIn$EMUp U"nvX#4THWIM$n(Sw98x6N_9Z9T-.gAzMUzPw'R:dj'rMufBH3b7N<3T[f2i#[jT: U"Z8nQvHS^d-rO&vBF-uB>:h+OMEf_QsHbk*z)K3Zr[:;;F7\>3a69rQ<]hPMM[S0 U"nfn4rU#3QpAhu0hDBR-OXmerG9L[PCy+pGxapfkT:iUPrjKbX?1YssII'W^uAhc U">Cyf2qSPQ=L8%Zo^tC7%xWW4^7$_CbI#_.+RP;cfLRS[5X+t1dlh_x?IjL#e0Hw U"vNb8cZF3b&^tQ3007qdYS(aVt+S5;Hm#=:9MUajGf?VBkGIRGP,#p)iH]H+7,RR U"]s_T(8#prm88GXwR,25#V'][v_s?ezDgoOn?$V*f=^Gu^(kL;)M4V#55wIZj#)[ U"%E+j)N;3+_Svg?QKv&StLtB4q>Ww_M;r6(j>>RJ_DdTcJ^8C7R;uG5PX_TDwa>] U"l^7Ll#YChbA_=J'?EHmkmKO4cNpS([EeAO-D,H[Kn\^mwF9wk U"(--PNp;_U'/ov_.f)AQDhUo#,C-^GdaasK%#26Ob8itQ)1Oi6*5hKYDS$BW+I?V U"f2le\P,SesBl;-03)GR25K5[k%U,NCWI6]M8DLsI094S0U;D?a%/%-D-JYNLe?_ U"ixJrH:40ED.,b*^/SpL-(OdO(GuZW/Swq=iiS%r_t,s&$hXPP/$Dm.JEYR$77s^Dr3Wk?anw1/b((=86ms%vk*C#o*2wb U"M[=QLjxCrbW4PQWh*IOZxhW)AN?\Qiq6&ccxYGJ5s:oI_&o,6'\-)B[79y17ozN U"4.sUH_+./h7lwqylWQfP:47'9d.Y_lghEEEogV^lvoFAj?:-bcOOhmniIt:v')U U":6zDwy_K8'VC?7k.#=04$mGt$FNFlRbLTJ>)\O4F&*DGvQ#^I?^G8;J&sI#6InOvv0\ny?c#]B.t(pS2w=3Ka0vFF'HwK436k4nS,z&wNYd3ioqMem&Iw8lb9OhY^ U"(23g]d9xZDD'u]'\1S-/vN,E\pE^.hC]1YDHGAd)J,ddfu=_UKF_'Z,1DHY^4]5 U"d>hGf/JFD8FT>/p>pszr.KLw1foR$p:.Iaccngkq6\-/PKYMTj+mtrBkcFA[Ieq U"aWd*xK3/8)t7G4SLI*:[t$oUj:kpT1e^Vs9=FED.T>fgRs+0sE<0TBbGo)MvFf6 U"Zw(p&[9ft_=XC9_\Tv]CCZmmOUJ^)Po]?G\/h4#?u15C/&fk2sdq6[Ae=^XqMQSfm==u$XmzK9>5xPRpm&jl U"RQmA5CDEHLUY=MdVbVtf,>H1(<]t7D4dL6+1E2H4jOdZ49#s:ZJciN3B[5fNZch U"GUECx%%qr'&.(IQAbH[J?'HS^o6PQKUL8]^h?q'fcql)?kZ?(jfT)OGh36pNX;' U"tPlVJ=4ccJZ7ad<5kB9.K,uqAFXHqyn+enfR\*Bz6&XN$9675MIAxpjrsAP7;9n U"Vh%I,6Fg8IIr577u)0qX$7O5Dz'$YK:;j;+W7ZEnvtDbT1T5?W2id'u]N,s[4vE U"SS<&;6uKZAUom1.W#zE::bM?$\lZ?RG>a<=QZGYA1+y/ex>'e;N+S(52(SOfbsD)U\rTxjOP*oCu+9 U"-%Q;P2'9Uzq9tVUe=&TaE;+nORmF*leLLQk5N_D8a*5pgZ34;A_oNZVbIB[vTk- U"T+c%7*7ZB,+y'H,tH&A#Wgh1IBSjdEjLZKqsNBK_[g&t*,JgHX'fy*s&VP&d^q^ U"aKqAHO7#q^7$??2k0g-/G;L+4NY71Vx*mCI]e\SDv3l*2NY+9IOGC4oLtXvi'CE U"JQ6uY',SZ.K-r'erYlp3sPb8RM^8Xh0Y^KjvA32oD.=V'g9gJj_D;W3t$b0TF+' U"uUI&YF#Uy>v[x&w:qK$5cP--_$nb./,9dlc+*%/]F.PER$fLrDYdqTZ3qj=8NmLUiKig'KQt-Cv5(BZZ$VU(CAQ5'uq[y&3PIxgLYSI_sInbk?MUT1$9 U"b:)T'x_O].PosmakAC9AtXAfL01un%aAf7EPc1FGEr.[tQ2r*zJxn-J\ULVqHbO U"1X;s&27LyAD;AXtBf>]GZdfZZV9non,[PUJ+2BFSZhKMU#dBA6WFi=\dQlP&+ab U"zL7?f\pp=SGeX#\^s8lvhr)mDddQ(x90WV+cd$pNpPrK8bWsp\LZxrVPB$Bd].D U"a$3'A7D_lvJ(wA(EbNL4s8%-&x%78cW%D[_IG2L2#m;6Bx$Q;==nhLK8cXgP4r, U"P4Ae.Nkk;/[N\6g:L*1B=\L.G+W4[3V\Fdh8JB).1pKGmc?UFL='nt;SAo,Czo*M0xUmV[zxvvHu:K2d[l58GGs1Bm2kTILR+q<=x3G[BVI+&>X=)Vcn#l U"h/gC>FIoULI2mBN$^-fYd&6^j3Ro2=M%s3[]7Q.S?.O?D78^QO(I[su&RUKVsbk U"U)lLF9Qa&S/JkcTe[i&2JO^1-&wPjX7sB6ebmkZ[I1._w[PsYwFKv-Y3[I^A=oQ U"*XcU[?+/q\6&H_/#nyrX<1]w2%up()%9%%%I-%%J/YJFU*i-1'7%%D)%%%,%%%% U"qk%gSns^h\x:,=[U5:bR=d;[y&'s7&-V-TW77GyeKOU-tSrmnK:;o*H#Ir+.8\j U"Y-T;\+;]v&FRgZ;tZF' U"E?02*rUZVzpK'rPgn3#B?3btJQYw:25uUm>R;b=)gJQu6Y3hdPMm,VR:XF-wYPd7ptp_\$OFYFF/TiCg0#S%m)gH_rBdcQpt U"MIbHCyT]3.PC?Z7tUFPki?-$KM[5TO*=Q,G^f<[cUHE[tk0;NWXc:xGuQ14($1\ U"6)>.q25r;Z^RTuiRQVQ?BeX2eNk U"#Y=a5mc*[dv?gUw;_;x(EA_hGzTtM->x%(up(%)9%%#%-%%_JYJmS0(LT#<%%d& U":%%/%%%%q%kgfx%rSfxOrf*NsOS.DT-PcYugg1fjTXl7E7k5A>KemXsRdmL74Y&#*aRcQ U";uDbFZx0p&'P8D#LDfZU0Mr&QAYT.]u64,4+Xw&dH]ud=NH>MT50jlpth(3/tYk U"/&uT-Gkqrbx5:b^?rt*X.B][>JeCITnddgjDFmc_nr8\09j\=^/Ajh U"NZkK0]Sv+>fPht%STsLYL[I6DKBj-)$jaNiBdf6+EZZ7P-0Df\vBmTFtVQvD4$k U"N^pY3_R*81V_>3+EbNCDAbBa(7Xoe%2UW/VLHVmM3kLrr#Y6XA4v]^npWu9K_]e3^j^Bf+Bk^ZZgoM?ELD U"Xfa+86c/*tPI6G,U'V9M5QxbS:L6hKl)kZ3)L't_uBhWF85HY;kU&zH^^[jlK4j U"-D4ln;kKl3E(t&tn%$]Bq+'%*J8d(j$a$sqO3KdP7%*9fGNSZT2rj.d(t^Rv./t U"Y?A>k>$bP5QaI20JR;9=rM:82(W$uPXO$-FJFr]-S0m?pGuO_YF1w:)VK(O7XnT U"aW(SsCulU0u8M>W<$VkI)fdp/(Fn3S>GzYu6MPneq87q4)dyzwW4E;yOTJfQ U"qaKOHR(kBJHAUl2)bpILiGYiiCjI.tli=qNWB+Kc/=Uh0weE[85'G^.b[x>4lP5n+>wKP2 U"K)P+Ekv](g>l^Xu5xnmuo[V(jl=C6-^+d,5jqY1F=)(gdV7g)?>X1(CqvX]&W]z U"[,IV5bI_M'nJ.ukUN&z3PV?6w.c][kE-:[33j]oTZbe,e'<8a8t)jf,Da-)Q)M- U"yCWGmQDs:d3mw8JDdeIMrCJHlwAJtGncN5.v\.;IW1#9VfXe*IGSn'XQP;-N;O; U"o5ZL7^M1SW(I>d<1N7e1;J?FHu/Y##FU^MI^:#>9'S.6EgXQ*'s9J-bch6jvs>W U"#-3jH_eAbxjmF:v[4jsZLE\h=(<)(PK[mEZXYqogt,E:/3m9-5:60e0UpIsTLI6 U"IE7-Ms$tYCq1>gC_n(m(SiMNJ0msa4HCgP+y0v U"W/^8vxhCe5DZKTbf]#$:[.>gr,.iG+zfN$7$c+e-cRDO:?A/E:G.E2*S9/DR?W3 U"L\JencoN6RPu&E=hgS&hXj#C2]=o%i1qiamZW=]-?lwL-auB2[3$$D.^wh$6O%: END SUB SUB V2 U"B2&->+V-(a?i#bd_=P-wOC/PS)pAn&MaD8hdQRLcSyKgqId%% U"ZvJF&'Q'$*HJ,4W2JO+q9yjV]yb)6;#Y4L,BNmY-,yvczQkJqA0;\:(8'.nZ&iTda_?Ue6+R)F:Vufice<(IWf U"9To>LQcv^e;F:m;Q%H[i[PFF',f3\/ZaxEeaO(w'G2tVExN*YdwY47sW[MJGj2u U"YpXlf+Y1?\2\+[5+32D+3-$jYrkl3B' U"hpOrCAg%Vznw#s6o'hy[bA[X?.D[MOXC<3oaML.T2,55mWW,NBwZ+EA^&ll%sWg U"FPA)&KM7jVWVqh<'1i&a2R:-(S$RA23/x=OKhhOuaJh-'q5tp#pg32dbW/aop1A U"+9+TQC_JeA]s+*]YbR2ZE,5l2k7ZzTw1M59[cn?)\_5qL,;n%_x\9br&4L*>J>l U"n=&4es9hA8H2-_Q8RXnCqDBV6o%v2oA2xj3qQGZ>G7,::v*CPzs)mNGYb(UHz(F U"6#?xnP=Tg7J_Hx6Q)hms%3:^^p40F2zX7gb?2BEBc]]2D*t.b]4*d8W?J>k)\:sh,qG_ U"aX%hmGc3B$OSaoRCFGVmJv0SO%,v=:%uoqOKvD&V9^bGe,i/=4]Z1'\1Du1df2B U"kUiBUR95H8l>Gi:moBaOqZIaQ5K:-hk0<8EqYYrcSJ(.r+V1R]X?BIjVc>['W6a U"iRcM_C)4j=N'wF97f>CCf5[pQ.>hVb*Bb1uA4?9sFp*E[g'hk1[SF[+rYekG)4_ U"Uyca,J11LOe$]6:s4u>,8Ve,9Vit%(C?7K1dXSMJVj_ui\S4tVT)cr)ZoTKHZBQ U"U^;k=xaOaik9>PTDKbd'af).U+fO$wyv9%c/Xl^PpxLV,LW<6ZBAkR'=ldl$4BJ U"cue4U?Gh&JoL3ls4&6Os\+51QAAx+]aGHZkon]C6UMX'd(:)*t'dvRTf?u_c4Ol U"\d4chJI:LuG5[$4T[=a?buUQe>jM?BFK/x3tFRqC)M?(e4<[&Jm]A>>iA4D-2W4 U"cCEftKQn%#[&iT=fl;j.cf-Ys$u[8h3m.ICH[K/Ex(Bd9i)cj U"q=kW/'k5]iQ&mi+i8mk7*7[X?G:,)=RvqwZF^jkAC0t9joHeYX*VPOc8dfixmV6 U"t%Wlbj(#&TO\D\GbTD#8r;YdlRW(\/r([FPk<#-\)SN%/X'ndu%QqP;qblP88(: U"Tv*z\e(kI:i^&Ad%8K=wV$9E^% U"pHVdM&8eV#hi8?Hncjim#[#^'J+;K2%>tTGq&dWR0)38VxPYYF-;4G1G)Bsl&7y U":7]lT+>lG=;)YKW=vSVLmUZ/QTxaCaY:Y[d=1o)I6s:p;sc;CBfjcb*(gA)O]G&O6Ls./9??GVmFlQ*c']N$hb,CUtBk[i7_Kl0+JcJ&V[k:lYtTuBEmaKlqA/U\bf6_8#hz U"L.wI9Lm2^P'oVbaRWW7s;kVB]Vp?p(9v0?/akX;gem\&SpEkG^>g19#Ii>*X2Di U"mV'TCXEBns.PN(OVn=Zuh/loW%l0M^jhMq5EQ/^Al^bLa8k U":XNx2&K_Nz:xU,'c,SHddD'#2T$VOXBL=s_E=0PIlLWN,Gy(*SPn1j4wGa[;Kb; U"d?X>iEG$2&wJV7N,?w;ftbg$QAF9cwD.mhfBnz U"$T)f&U:Tv2[6A03fd8x55:Kc=;&Zk5>eGLi3dRZlq2>x%90xWP$iLgLQ?1-EH4x U"f5U+[[F16WnIWbvD3lchSV)+/>-+Vv'8:)S6[51)p):*M5Gl)qWP<:yLnAm(7.U U"hhF/YH%GwD(6G)Lv4UAgGy%2/s%Ozr6s8%dp:ldV:Lccn1G&%/#TaJ2_J(i&e^a U"GHC]IF;GP^dV&^qhr^ioau&([vL&z-.Lwvk>F?1'y#0yl%u+93kic^Sxqo)pZ U"K?jq+j0PEqc^j3Pel;GP5KF#i6+v5[fLc>9gSg-/[6MFi6FY66C7(V2GW/2lli) U"]Qp:'[BaM3S,)HB\%-*Clct_iE0bGcJZ176=c+,LZ>?eh6//gPorbKA%_N\aEg5 U"mndn(>1Og^31M__Q:oV1NFadCgNtsYD(m*o-+O:42#auN%Vx3TSwc;>JaY/1XjQ5OuW]*s U"p]YEDjC;x*e)];dMI%D=f?]q>;f+n\^ALUt'l[V0:Dir(MThc9#;U$/[g\c)]s0 U"\hnH13Y<+89.D0AhtpX3pE4xDycab*_8sd>\Y3D:nnK;EGW'QdhYfP'jVWj5C6a U":dVo0&+:4=wd.D8L=t&oPt%+]UMcC<%/gD:5Ki\)oy&CMk^8PVt U"w(g-_iwBUVSXADwmepM0J/YPZ'hQ'MMlcnLJknQ)2ssf3#qSh;WCn5W-uPpp)LN U"76$u.h1&O>f:FB*].Bgr\xsgcZ+vR$._;l.[iXQ3rT'VrL7wtznar-karAOTZ:+ U"ZC].vhE%zr(S:.Frgnrc>:oG'h8_(LuAsH$^7]xqSr1tNspZw8+=*;VDC]ux^jo U"Kl*u.wXLM/LxKqRNDAO1aneE0vxNkRD4F3m74#$\ U"_D*oEQ3nh\=-/>A3Pw'0xynMb3%]mosgFSXz>%Pf3lLb6B>a0q=g[ES)\eqGpJ0 U"c1cAm$Umw/?o-5=Dnvs[iRbBB1=qtkhA[fCSii]H\)TVc5K*5y371Iy36-PV3FS U"kcj?kwHnifrk0dflZNp]jg>B^#q*'uU#V4&[YaY0M>K^;Y2rx_DC)^l]pi%K*[M U"tXknO's5cr^8=dPXZjwm>Od37FgkCenk6mlK+uu[E6n7)\f5QXqs/Y/:30W].L^3Vf>%cV>#k'Vm%Le0-VhVY?l?iFAuwg*8Xd*8N&hd6z.Z U"k)]fC>43#:evHu5ROpl3>p(F*H#x1kr$De[jIB(e2Khpw&u-(g'\Je+0AD$RCxA U"3>j<;H_kB3CYQNTl)Oi.kZYV7;eAo1WSGt&[w3[YOh,N?=9x/\[K9ukc>Ne2mRQ U"l;J)Td8_F+aohwu>I.cI>etw?^3Ju,T6ZkuZTVNw7t'l9G9qZ4R4Z[ji64l:Q1b U"H%7Kgb.kwi4T:p#-vifUw$GI% U"K2tLc<#DZ$-H<%+l$B$k'Y<$&nR30OpI4ovH:RA$iyP/%:(m3ln_O5PFE8J<-LB U"c_tZ,K+H]VdHj+?E'5<6,r*^hYiU1CN\Cp;($USKGK#u2:a4.#XDz+aU,.GXL*t U"9gWXxlEcC7vBe:#o:NQD_\)id=CE;%sAVDs;*B\#\x+l?;KcU1Xsi8+G2=:KQ_ZnK U"Di)txinc2?msdK;:N-X#aAa0gHG^7Bq#31b8,Du6Wl,qPrR(;e>v#$Q%bCjDl>f U">5^0/v)$-hQ$cIUOIe;<,VaQ[y>l9;zI(Z.yMq._q^CMmOA2HX9B963;#iao,=s U"g)?iJ=J;gs,W>DEvg;ip,(%$?h>6U[&EkmbQCL2HS[vdPp*vxHn=zWh<4&du%&% U"fi$2uxRPr.mAj_iHakB2a&j=uFQhg]3Ron\z0pn5dH&RYOk\P/ms:0[GIKKsD&9 U"j\,:t%a,dKoo2B/)j23pJ#2Xobm*-^ps$cQ--jXk45biPU6eSKxm>C7tmC+c*Y? U"&.rK3](]$lX:qMW]u;F7<3/&caS1A1IgPeWD:t2m_'1p0m1M+&i#ht2U#9.zLHe U"%z.04L(E>MGu,Z\Vdig\>Lk4j40?p&c/n#&G.,-b1(D7Mh*h+JWFfd9gcEdAtu\ U"m63nZFuN[mV?RrXL3$>4$,Gh.[uZfgG'x%up%()9%%%%-%2 U"%JYJP*GyM'8)%%&>+%%%/%%%%qkgf%xrSt%goryD.;x479dp4i0Ftdd/>dYLwC1 U"RX)$w4eh)#)T&(;7Z0O/2_(:\gK0ZERDC,j24-1WRVFaF_g*[iF3roX.dkUeiLw U"s*$YtsYR1k21GI4J9q=7JYhXq=M)H6Bi/1z&WEoqTM7qpuKZKP,EnWQ7jWVX=$e$4XM] U"R?-M_OEQN70xTUTJxER9-cSL8jcQ(p&qq65P U"Z?TcPk*6[ZDSWt]X53LBuhj[#H'0)?U:JU$(b;Ql-u:-l=78.xm+wLKcj8bqb]4 U"lpn?gTl)]J3X1S.pn:H*=3XF7p:Q,J3Ri=Fl4\5E-.#Tf5bV\[qBh^.B0.%I5zO U"ZAp&J?uF(M3)?&g$HLRrnaX5s5kwZ7IOA&AB]R^EhIvy&L\vyA%'jRhg\39BNxK U"V:NmTAQJ&d7TMqp4V2ed:2RerZ98NgfT2^AQwO;AV=;W+q\nSS>X]PD/_M-FemM U")jnI4W4:8KFMDcV>-Lv#SLg^vE>kit U"Dut+sVC(=8Z+35.']/G9N_7x$LItPeVi8_ID\gd#WlHN,1ryJ2D\xy8;:s+t5k- U"dD[WqI]7DB-Fv6x5=pf5'_EW2)[fchMHgl,dgg)#dJDL&xIHLirN/0Wy[JW=_/)k] U"J0:m8j%Mt=.XN?fC:fcc/J;Dj/+HQ9I+fEtEsgf:<+*/i0&0ZbnuSU2a U"7T4tp8Ym\HvhkxO7aT[3WEjHjB_=A$)II9C)lk#N28l0I[LmrXo&AC2r1*QNjgZ U"vd+E1L4,#2X4F^0i)9NK;u4gOPZ$3uVTaCm:NdSUsZns6T0_34T3:#3b<*nQX.l U"'5t:0cG_iZ2K)QSA[OSpG^kIiO0jcjQLQYxLqM>kQL*+ci]1mIHlT0wi&AeMA(, U"-*c['c*wm.-D.09k/XEiGu'S=(pO>J:ve%5=+=R5,?P2f?N70uZ/3?$lY0r9DY4 U">O)+3kOHds>o)K=497;2eYP>Y9tQiS\3)rBC%.%42%%%,%%%%%%%%%&%E%%%%%%%%%q%kgSg%fxup%&'9%%9%%%I-%% U"J/YJFU*i-1'7%%D)%%%,%%%%%%%%%&%%E%%%&gC%%%qkgS%nshu%p&'9%%9%%#% U"-%%_JYJmS0(LT#<%%d&:%%/%%%%%%%%%&%%E%%+%BE%%%qkg%fxrS%fxru%p&'9 U"%%9%%#%-%%DJYJ*iGyM8#)%%>%+%%/%%%%%%%%%%%%E%%(%E]%%%qkg%fxrS%tg U"ou%p*+%%%%%)[%)%S#%%%,%b%%%%% END SUB V2 CLOSE:IF S=74AND 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