'=========================================================================== ' Subject: SCREEN 13 PAGE FLIPPING Date: 10-17-96 (09:38) ' Author: Douglas H. Lusher Code: QB, PDS ' Origin: FidoNet QUIK_BAS Echo Packet: GRAPHICS.ABC '=========================================================================== 'This code allows animation by "page flipping" in SCREEN 13. 'SCREEN 13, of course, has only one page, so this page 'flipping effect is achieved by creating pages in main 'memory and copying them quickly to display memory. The 'system works by assigning each page an integer variable name 'and assigning to this variable the segment at which the page 'starts. This is the value that will be passed to many of the 'asm routines that I've written for various purposes. For example: DEFINT A-Z:DIM SHARED K,S,B&,Z&:V1 'Created by PostIt! 7.2 SUB V1:OPEN "O",1,"SCREEN13.ZIP",4^6:Z&=6799:?STRING$(50,177); U"%up()#9%%O[-%L(mvF+E=VP))%%%z0%%%.%%%%ij%rtVS#gfx\h%,>\.[5KTuIx U")p__BAq>[U2Mni(sY:]=Ge:SfSs9SaK75<*pmqds%1?874p,L2r3IV1'qu2,,,W U"F^k,]>G3_ko.$4ac5hg#E,Hc;_?6U.iRl$l*q=]:d,#JP3VY.Zvf?b U"rr^*I65W9^&8FDb_04G/(w8>p9&HE)*m;-b5AF0;Pn&?9RR>R=#]6NartA%PoBe U"mIff^\F&MT\gNT$q&Z(%ievbLQB#ZZPZZW>+LFR+.IsYELfG3;O3)Bq9Ay[>l?8 U"ma$8(VwJ/pwS(./B=aNLVE:ja6B];?y&'m&[75MwXifVAQm$*ed%DJ9INegS&lu U"dL3)6lZ_&&EM1m?EAMf\O6^wSg92HB.X-A:Pn<0(Eb3)CE'uPOZpAfdpQvCqsb- U"k8ewc+SO4;ThiJ2n3'U7;fUz=S,N61C2Bxu%reKeoZq.5gD:\E#8&8M\g?fP+AM U",E3pGOI3h:K1l%AzhSms*%To?G[BF]hX^gpXe;Ujfohqo]5(;_XSOehC#9r=XNO U"jjaP*+:Mca4ElU02wk_m]wVQ)I6/H=b36Z>ZCc'_ux3M.20uZZc5xW2;i]Y&Z1ax.IWV-3op7pXQ/;LR8:nl,>1$wesa>/(mb2uPzBe86H:?qaxVps U"T4CYW[>O0GhePpcUWwAOf[Hd&P?.Dv>z(nuG:ffDo,YE39)c9sa?by;6M1oif2i U"BHSWb*:r,#6FXRD\cR.5]Be7N/[6Db9V]\x=bX\LS:J*f8Q0Km2L+hf6LG[PaV# U"56nB6NJ5vF4[e-1q;xx#mRyK$*0/nrLq.9fJIPK/2UpU2vPVrVxCqo1q6dHl$o< U"T1vWV#GtmIE],Jzw\x:9B+yOb6azT(pM4aP/qb-HPq#CV(KbBxaTM+XJEFAO&]] U"Rd[cL0=]%vV65XT&do2uIMVlB>P+/Y]&u*gN&u%p()9%%%%-=%G'v.F%>k-f6*% U"(%N6%%%.%%%%ijr%tWSgRfx6&;<>[kO5w-xEx09T\1S5R#Kl8C<&3)83I#/&bfQ U"z8^]0(g/PrWKG>/8 U"m)dj*qcg7G>+U1CN3V;7w+TU>*uu8Cy&$g5C#]X:Yii9-HQJ5w-_$TlaMeIQYE<]8TBe<2p8ujcFYOLY===M9^N06Zm]qFi-IY U":alcjL]kd*Gu0+VN>;vk>ig=fT-m\j,>D&:enTjL U"dW9NqQKmY9>(1A:b32.DU/^=$wYfH_*aH6UZLd&7?7$?<]ZW[wC)g]u4qbx\;CZ U"&'Cgvp$:_f$2?K#?+O%FymRWlSE7[y<&Z2Hq[3:B>CDjB##Tq/^Ydb?SD9f9>9v U"Z$T9JA/n)g4Q_2zr.Jpur>*\(1 U">HfFGkFJ'):m05p?8VeA+7s,XQg4M58/,GC=wE%/;uWd4)2f,pTB2vPy8OQDa\+ U"w=a(trBr.6jIU4eyITOOTJ1P=o%rSK/i*/l4(d?'Nf7zDLc[w7I>8KoJyxup.&. U"kiv8y$7?-x%/52&CS&op*LUe(nB+,VhEoEV%cwDWDE$zo&B6=;v(:yAX\I#Csco U"-,PcuF>SpY^wDbS%+r^.S,IV[rYX//N;wFQg])0gE[W^[6.OTcQxO#zEsygEQ?. U"G-+:Z]+E0\7-42s';w;RJQzdR,el].c,>/&gDF/#,jrWmDpF.R4r3/n4Bm^2ivu U"0UZU-)g/8//AKijI\[*rh9H95-(=2,<:YmA1&_8RTKNb&G)R_:KhkTGc3>UMr7s U"l?U9;b/KndA>rGIy_mhhV-NYqoR8x??vV#UiC]9Ammc4nNTS^mk,$H2p$H/)bH' U"8t#qWt=qKa,+q_Nq\5^xx.;XHfl:<0X)BUI,,$h3k*U_7o$2\7&^HIv.g#w+\/R U"hY)$\rUDu,%Ek6Mgj^Chj$eNt6p:bKRbXSwM&L?WU00cI%\7K^JX^^0)yOdFcYv U"f^:vE9kWT\sx7BWu#hBP3Gz-d$b5xKTep3JZwX&M>l03RW/:],sT/F0iJe8q#IP U"iw.#;&m[q(f/-(iyaOcZLX?heZnHV9se^=P/Vtdt\d7ZyZ?t-qhL7GmYV>M U"ZC$^0>nuYJ;_'PX[MLqJ:.S%ICbd&vqoB^Fa\e2:)(ua?&bGtJ[%[rFJE_CN'8K U"gsF:_JpA4fJel[UlJMd%^H3R3*2&Nt0vM2nN+(6m.lSHP\+i\q3mb< U"eg4Ph\;Z2hB[GWxa/u[UjH2L%(k#MG=%+7WFMl1kq_bz<19cFAs&imP>8qzLbT3 U"$)m45s;N/>?=f^Lo?+:15xizjY>cdDSh#3daQ3^O_G6\HO5e+dr?086gR(hR#1l U")u-Xd,q]]3<#;MJ7V,d[#rMmEJLY^#g^LB=&S2AFba^Ch:FN'suI]?\^%LxA2Xk U"dm/pArq.SkgOyV.k6A8ieW/,S7S>+Xx'u%p()9%%%%-7%1'vFF^cN&_x&%(%M&% U"%%1%%%%xhw%jjsV%XStg.oz^$%mHv9GUx$hOlAzYA7IjP-vid]j2MvKgt7sw0LG1D(rNH2.Z=Apa]cD$0eTo[?Xg*r<#r U":2'(IvRSfxu/iddf&OSvs2C3[+&PbwIt.T0OZ27%%r9%%%1%%%%xh%wjjs%VXSvRqgff)LGx U"z5m#NnD==_8IR]/4A'KB$\x3zMR+=.e(h.wo(RL0YR*_FsT(9s5hAbqGXQN3RBn U"gj?=v+Ga=EA3M:S'OR<;i7u;/x#6Ag&pDj,:#Ldk>U'ZNZbalvWbDo1TH,Zxhl; U"YiHvmlltlls$$uGl2puD8%JI4A8XRu.McRKkq:B09I[+6V$PgusfLvYaf)=])P1 U"u3SM/OOb%)C-;R6:;9iWQ.&-,,e+4a*L<:VY?%U?+r4X:;ULG+;I'TQ&99CiKI])]Qk2YLi+#iVULFfX/+OqSm+',e'T6,TJ,ubeF.PRoO U"8))keF.aW'88$q:9Q0W'$hOzi,LXujhZ\%S+&w.1&QXeW)(8B]73IBo'LeX]U'I U":bn5PvxZ$xO65TsTp*F\$WYl77;qa6Q4>INU)l.IiWT$Z5o2MbIW4xFdLZ#p2NS U"AOg5]\1GhAl>LwlFo.3J(ZJKm+X-BTc\atEn$jnb,*+k\B<4LuHfJB9j\YWG9'W U"f72&4ckQ,zPLc0^qZ:]q:ZBgCn;ka-+P?em0NP)fxDnwh9>A3f/TrLM0Ktdz=ub U"^f/r'$vBJd(A&2NYi]njQc*fMc>Sr6%kW8jS8hQW4mfQPQnfuPSf6JW;,G5TC+J U"N>xnE-G4gvKrOg5PWG*2;VB-g1#?;0EgQW*Kj&:GOx-:3*4LibN4ANKi(acW3$j U"acrY\X/fXTtp.,G*HlZv$XOL#^;0&AoH?m[adXwp;[cgr>Voj>V_)[=xkK0JrJS U"8k0k7;Bv#:_1R76r_x8A2YTIHTIxL).__agTI&MTOtgPZa5p?,^3rs9L'l.Yx#i U"sijy#U=]Ta/#6jcE)T[9^'$/n9HrI:a:NAC:;YrAVG&Ao$3p+p)>Ym1geX9HTC: U"io$g\,ph:w3(P(YlG$D,pIY1),p>:9HJ:/in$S)&7;jMmDT;:9HS:0s&\cL>DT5 U"ELw'hChrr_R9?&RKUrr=*A+?R&^CF?Wtk-JG,P],L8Cly6dmgGYboW?$w\8+A;U U"wvsRG)DM97.ce7EN7fnXNg8#^J5IzP4D/XvDni4\UG+IBu?$wz#4I81z;A,^mlJZd?-31p%cpB(S#N#epmjsZxpYA4+(qGV:b)^;ss47mRc\/1B?SPq=w8PX+f U"/5/CLW#U(v?x6&:RUVzZ02)1)\Z.fz[N)9AlI(s*k,4H^JN0c+2nuRqWCbdwmCq U"R5x$6*Nxh>z%VMx\v,UfYs]*-=a_)=;K4GQhkLV,^Nkr\J;_68GkR^jcHR'GU;A U"o2oGC]eFFG;B5eB(;S63GAU^*;((C6p^?D$ev'G/^Pl_%S,OwGkkqd#_[W%k,dY U"k&[;CZ6zkgzB%<\ejlGwi,rfk6=lRDkfE_;46W(#/fZ,8^;Ld6>#qE U"_,0s^d_ep56x90R$kBHZeM6VLknB=[9RV'G+^$oG>otGLG]6LD?EiK,XklH^eA6 U"T$^tW<,0GSn?[;Ri#kL;lR8?oF$GSAKoN6fj]tk,PN^;[K,-6&s]4?RV&kvX-,d U"]V[7U(]#^?,_$ew:UR'7:.Za$jEs$JGlNQh.RH4-BqJ8y-c:z-]M+TGOTMEc66_ U"d6$C2f5dT)D3VjY<;Tm\Gu-XI)Crrjj,itw4,?i>' U"+337yi.H(Tr]0>Y6h9AXshS8yIOnV=eLAqMzX9,HanMNsH\$OivpC8'I.*wpusK U">[]+obgp/t9p:Salmzqa1\(Gb_.J,jmXvoXE&#D^C(Dpo8;7jz3&Q/Fmd+gR&5S U"URtBiEgbW-6Nmoi]fikc;$5S\,rWLGO#bLxOoMVtYB$-E>nbod=of)#&8g?G=r( U"d?)d[+r-\E.g8>ZDg;6i&g0hYn:6f_h(,qx'XbXsH_J..DgETS;gJ\g&igPSIEU U".sF2T&^fUp[^#Eh8Xi'X\\8)oq\af4_Fdg30h.>YtDi;BD649oOa')ZeV8FRKZ&BPlR#*q69T\Ep'npf,aPU4,&:b U"t'z3ZObSoV:b'^rbya3,-P2;eh+oHOE7uyguX-96q#o$]Yd+ttz3gNlnhCV;^ES U"dHMVgXTUzWD]NoH2Y:PP%C,9ZVmpK.6gVAJu\=c>\zFM U",]B,X\&$XqN3zGIF_n'+sPY%YP^p9DuKb62DkpcUDB^TDv':ZnOs9F:CS?2qF-v U"NbyQtAT3]iiv\\Nh:9zP1v#EvBjo]l-.C/l5o/(6TV9(v%:d_BQD>o(&tP/Bhtt U"c43M()w^'#.Ba<.OpDYQW^oPLsr4?cjbS'H_mSbzf8t;%K_DWArZ-(&Z;QS\*&' U"\vam^eB2F6BEu^a^1y25:6-tJ\\%7#iwipDxtK%G7o\X2pk^\p^:dJ5(=?SANY4 U"BCeweRf0*XM5)/7h&I?:InwJYNIOmLz]'o:_/n>*kDE;>qbELPoYo3'pK2sSxM= U"y8;BO0c<8+\op)x8--qj&jt;9:-GpKo4.2$jzP'(m#(] U"E(SD]/XD)#]$-rU#+nRj^O]D; U"OTYfRM5\3dokQoJsmO.XRS/)f4;91942q<6OpcQ9PPB;fhvM^^&SDmOO9L'dd%u U"%p&'9%%9%%%%-%L](vF+oEVP)%)%%z%0%%.%%%%%%%%%&%%E%%%%%%%%%ijr%tV U"Sg%fxup%&'9%%9%%%m-%G'#vF%>=kf6*.%%N6%%%.%%%%%%%%%&%%E%%%'P)%%% U"ijrt%WSgf%xup&%'9%9%%%%-7%1'vFF^cN&_x&%(%M&%%%1%%%%%%%%%&%E[%%% U"4%/%%x%hwjj%sVXS%tgou%p&'9%%9%%#%-%(B'vF*?hT>Z[2%%r%9%%1%%%%%%% U"%%%%%E%%%%]1%%%xhw%jjsV%XSvq%gup*%+%%%%%)%)+%[%%(%f>%%%%% END SUB CLOSE:IF S=68AND 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