@L}5 _$% l0$)$$Hȱ$ UhL" `e$$%`$%`  R@P!( L(1   Y I`  d  Ld M * @  $ % CC$$)%1 Udߥ$9%: !0 S$% DD˙`  }J)Lr d M * @  $ % CC$$)%1 Udߥ$9%: !0 S$%} DD˙`  }J)Lr J  ((  p L ()   J}L= ( L 0q A    IB JC;? D W } LL  ` W )LA!  ߰")-݆ p" } $G@LL 08`Q")<2Q0 -G$Ș݆ UL# ; p8(()(0ʥ)NQ` }$GȘ݆LU )L ݆ L GȘ ݆LL )W>Z   HH)H }p h  hyhy D L> L JJ    ! LA*` BF }7'8  M HN H` 8 Z  \LdJJ!"! GFE@F (!L }EE !E^ ^ E E7EȩEdE/EȩE  D } .L }  ;F d  ;?F7F? ( .   Z D LL d } . D  L    p  E` , d)  D L) 0BM݊L݉} ML  N݆ L NLML [ TEqEHȱEqEh 0Gȹ G} HLL GɛL  LFREE SECTORS G) *Gȩ GȽG GȌ*jj >G} C8jJ3j2CD( C202C ԠBX` N 1? l LlD:RAMDISK}.COMLu L1 L ;LHL  T`  `1  ɐ     `TU  } L ? .  t`GBJ ~DEHI B V0dV!}QDEHI VF9 ,0 ,0 s0hhL  L` H hDHEh"}DEL8HI4 0 HI,0 0  9 .G VLO#},0 L4*IJ`llD1:AUTORUN.SYSNEED MEM.SAV TO LOAD THIS FILE.D1:MEM.SAV J y08 B|DEHI$} V0 0`B;DEL`?<0LV`@ʆ v s? F0Ξ05: [ BDEHI%} VY8 B V  @  /DE `E:D1:DUP.SYSERROR-SAVING USER MEMORY ON DISKTYPE Y TO &}STILL RUN DOS B;DE J  (` 9 V⪍ ઍ  -'}LLu ÝDEHILV 9 .l 9 .l  `` s$B BH(}I|DE V BLV nB,DE JLV B V BLVDEIʩ BꭝLu  } 3E:}DISK OPERATING SYSTEM II VERSION COPYRIGHT 1984 ATARI CORP.A. DISK DIRECTORY I. FORMAT DISKB. RUN CARTRIDG*}E J. DUPLICATE DISKC. COPY FILE K. BINARY SAVED. DELETE FILE(S) L. BINARY LOADE. RENAME FILE M. RUN AT ADDRES+}SF. LOCK FILE N. CREATE MEM.SAVG. UNLOCK FILE O. DUPLICATE FILEH. WRITE DOS FILES P. FORMAT SINGLEL !N',}#"&))9(&*)/h)''-&؆莟R'S  vL/ˢ L }Insert DOS 2.0s, type Y Λx -}DEfHI 1莏#q! @ y0ɛ8A0,' ȅ 1 1ild! 1L!NO SUCH ITEMSELECT.} ITEM OR FOR MENU! 0 .z:*{}.|{ 1 0 0JB 18L%|DL/}%DIRECTORY--SEARCH SPEC,LIST FILE?[# 0 0 &|D3" 1L!NOT A DISK FILEN !B 1L!E# 1 !BD0}ED:}:1BJ|DE 1DEBHI 1 h0ߢ 0.1}  0?詛 1 y0YЛ 1 ;#L" ;#L! BL1TYPE "Y" TO DELETE...DELETE FILE SPEC2}COPY--FROM, TO?OPTION NOT ALLOWED736 FREE SECTORS COPYING---D1:DIRECK.COMl# 0|D .L/%#3}##JB|DE 1BHID#E 1#0: B 1L!#͑### B 1#c$0SY4}S1}:## # # .#Ƚ# # 𩛙## 1,#PD#ELJ- <.BJD#E 5}1 1HH 0hh|DL%1}:̳# L% #D#EL% 1 0 . .0O% 1L!WILD CARDS NOT A6}LLOWED IN DESTINATION 0 <.|K}N 2 FORMAT. t* 5) 1L!`) 0NΞ 0 L1) 1 L!BAD LOAD FILELOAD FROM WHAT FILE?) 0 ?}0#B 1L!WHAT FILE TO LOCK?) 0 0$B 1L!WHAT FILE TO UNLOCK?DUP DISK-SOURCE,DEST DRIVES?TYPE "Y" IF OK TO US@}E PROGRAM AREACAUTION: A "Y" INVALIDATES MEM.SAV.FE! +L1   `*  70 2 2A} 0.* 1 y0 0)INSERT BOTH DISKS, TYPE RETURN^, 1 y038逍 N, 1L! ,B}C, t*  Lx+, 0 ^, 1 y0 , ,0,0 ,L+ ,I0 ,Vǭ0C}Ξ, 0 }, 1 y0C,ШC, 0K'!" H H 'h h Lx+!EF 5L1L!D,I,HhD}` NOT ENOUGH ROOMINSERT SOURCE DISK,TYPE RETURNINSERT DESTINATION DISK,TYPE RETURNE}`  `8 rL1`-* 1P* 1 y0Y`hhL!NAME OF FILE TO MOVE?- 0 0|DL% <.F},^ 1 70 0 .@L# .BJ 1  DEHIB V L1 ,} 1 70,L.  G}JB|,#P#DE 1 HI BDEHHII 1 B 1 ,^ 1 70,0La- B V,#PH},^ 1 70 0L#L!-* 1P* 1 y0Yj383}mm ݭI}}`8}``|* ? ɛ,`|:-)| / 1L!`DESTINATION CANT BE DOJ}S.SYS0 0H{ 24Δ 28/L!/) 2 Π 2 0 ξK}hAΞB,0 J 1 BDEHI,HÝDE 1HIHIDELSAVE-GIVE L}FILE,START,END(,INIT,RUN)O S0 1`BDEPHI V` S0H 1 L!M}0 0 1L~0`PLEASE TYPE 1 LETTER,0`hhL! 70 1L0L<1 ,;ɛ7,"ɛ:ݦ1ݥN}A"D|ݤD|ȩ:|ȩ|ɛ,,(/+.ީ1 1,ɛ`轤{NAMEO} TOO LONG B VL!` L1I H1EΝDL1|mDiE` V0`8d/8 i:222 1 LP}!ERROR- 138ɛ+,' 20*.. өr2 1``2TOO MANY DIGITSINVALID HEXAQ}DECIMAL PARAMETER800 0 8 00`,0'D800 H,ɛh`2L1NEED D1 THRU D8uR} ECIMAL PARAMETER800 0 8 00`,0'D800 H,ɛh`2L1NEED D1 THRU D8u(*KLD8p``p8<<<>~>QRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRE|T}倢􀀀||䀢쀀|ZRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRCV$raw.largeU},ine#ircle"oxBV0arms4ext&ont&ill2aysBV(orz6ert&our4xture$ef4xtBV"rush3et#lr%raseV}5ndo6iewBV2ainbw3ave+oala-icro-agniBVHIJ FGLKBV򀔀#olor#olorW}#olorBV(ue"lack,uminanceBUUV$efine4ext-ode0arametersBV$ir(gt7dtX}B8904.2%&, _\^](ʔF D  $6J^r88y}eѥ8 5?>څ؅٩ۦ۽=ֽ=פڦ㹨= = ޥ8ް eݩ@8ڨ⹨= =ޥ8ް z}L]=eܦ܅݅ ;L]=܅݅ BG  Lx=ڥA hhLvDJPV\bhmsy~``?, EDHI|}񥀅󥁅ȱ! C?量 L]>88 /? /?}} /?L>0L> /? W?L>󅀥􅁠 /? C?L> W?L4> 8H韝I BLV~} 5ܑ懥ɾ`hhL?恥ɟ8```(ϥJJ ?녱}LLi\} i i(ii(i`ee`\]^_` 5 ? E΅υJ0.}1  @ {?L@xK2, K!8i) EL0@ ,HL0@ GA|@HA}@ 4 ? H {? @ =` } ? ; {? E EL0@ E i,Х i/@ @ @@$`ƕ敥`敥ƕ ?ɿƔ攥8Ω攥(}Ɣ ?ɟiΩ$г @LA @L@ @LA @L@A@@@/A;A5AAA乽,{,`u, 710u, u,` ~8O0.1 7 W}A셮u, 7 1KɛKK `A&x  ޢ WA A `A E}3x d cH Cv,u, EhLB`Ä `1)&&&i%`ei8弅}彅`8弅彅8巅帅`8巅帅ei`eiei`ee8}8偅`&&8庅`澤Kɛ` LBĦ Cť妾 Bʦ}ؤ Cˤ˱Eä9C# B sB  ;LC @ E ?< 4HH IChhLC`d8dH h} 8 H h` F 5 rKp)) )N)))Ʃ):)Ne)f)g) J F 7=E} \ H DxD M/  E H E ELDi8 D ELD8iLD悥LDƂ + 7 } + +`` E E` E E 4 :8E:9E LEMЈ,L_H Ԧ',},,,Цҽ,樦h@H ԍЩ h@LE` 5)10@ԩE E, }L E$` EЩ ԩo:/` EЦ"Kx:K$}*K2K]P ~_ }aLH` E 'F G E =` FLF 2GF3GF ; )J L2J ; ;ƌ ;ƍ` &GLBG GLB}G G8LBG GiLBG ;L;i`i`FFFFFF GF )Jō 8卅 8嗅Ō 8包} 8喅ő JLGJ=e ŝ8坅ee ŝ8坅e ;ƜL2JxK*},6K`i)LE bK$HcK%H HL4ҥ 7 EL&H挥ň攥`ƌ`ƌʼnƔ``}Ŋƕ$#``捥ŋ敤$$`ƍ` AHLgH AHLH THLgH THLH꽛-, C,, C,,, C,,},`-10@ԩ]Eԩ:/, EР$-$,, ,`GLLɠ7HJJe}ih)) ӥ)ӨJ9KJ1` BLVH Ih JBKEDKLV E, ,x !𥓅 }4ILE擥 ELIƓ ELI؅i(LiL```"lack2ust}2ed /rng$rk /rng2ed$rk ,ave#ob "lue5lt "lue-ed "lue$rk "lue"lue 'ry/liv 'rn-ed 'rn}$ark 'rn/rng 'rn/range?0 UD:PICTURES.PIC    #  @@ }AHTHgHHHHHH'*Ȅ %( 0 c*#7+*0"`(*@@ xA@dEIn X;---------------------------xX;THE BBK ARTISTX;X;by: Barry Kolbe andX; Bryan SchappelX; X;-- }-------------------------X;PASSPASS PASS>D:BBKART2.M65X; MLO MHICU }RSP;;main pos"CLRP;;color #,HUEN;;color hue6LUMN;;color lumn@ TMP1J TMP2TRTM;;plyr margi }ns^LFM;;rt-lf-up-dnh UPMr DNM| PTX PTYY40;;2 bytesDTX;;delta x,y DTY PLTCLR }CRSN;;curs #CRX;;curs xCRY;;curs yDRX;;dr to x,y DRY ICX ICY ACX AC }Y CNTR ENPT&ORX;;SAVE PTXY0 ORY: CRSAVD INDRN IND2X IND3b DLIXl DLIDX }v MENU?FILEXT;;file type SAVEX SAVEY SAVX2 DIR_NMDIR_FLGDIR_CNTX;X;Ko }ala Uncomp VariablesX; SCR SCR2 BUF SCRBOT  COUNT TYPE  ODD* DATA4 UNIQUE }>X;HX;Text Plotter VariablesRX;\:XP_LOSCRBOTf:XP_HISCRBOTp:YP_LOODDz:YP_HIDATA X_LO X_ }HI Y_LO Y_HIC_POSUNIQUEX;X;Fill Routine variablesX;COLOVER XP YP COLORX } COLORY XPSTOR YPSTORCOUNTNEW$COUNTOLD.I_CHARCOLOVER8:COLCNTXPB:BITNUMYPL:R }OWCNTXPSTORV:BYTENUMYPSTOR`X;jX;Rubberband StufftX;~ TOPX TOPY BOTX BOTYTXT_NUM }PLT_TMPMAXLEN;;max input lenX;X;Circle/Ellipse StuffX;SINV;;sine valueVC;;vert flagHC };;horz flagPF;;plot flag DF;;dir flarINDX;;sine indexQUAD;;quadrant(CX;;scrn xpos2CY; };scrn ypos< MRAF MRBP XCENZ YCENd XRADn YRADxX;X;More Text Mode StuffX; T_DIR }NCOL NROW TEXT? KPX KPY REFLAG R_QUADPC_MODE PCX PCY ACL A }CH EFLG" BYT, KP6 KQ@IJ ENDZPG TEI^X;hMYSET ;;char setrTXSET%;;'text set'|P }MB ;;player/missPLR0$;;player 0DLISTS);;GR7+ dlistSCREEN;;GR7+ screenSCREEN2a;;GR7+ copyR }EALSZ\;;GR7+ Real SizeGR8*;;GR8 lineGR0SCR;;GR0 screenCOMBUFK_HEADCOMBUFX;(*X; }P_START!BEGINX;MY_DEF ===;;/ 8=p=`=& =`=p=8;;\0 ===: ===;;+D == }=N ===<;;BLKX <=<==b ===;;|l ===v === === ===۔ = }==ARR_DAT ==>=~ >===X;5TITLE AQRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRREA/ A| }ˠ|A/ A|젠|A/ AZRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRCAX; }X;Menu TextX;6L1 =ADraw &%Nlarge&%Line &%Circle&%Box A= 6L2 =AParms &%Text &%Font &%Fill &%Rays A= }6L3 =AHorz &%Vert &%Four &%Txture&%DefTxtA= 6L4 =ABrush &%SetClr&%Erase &%Undo &%View A=*6L5 =ARainb }w&%Save &%Koala &%Micro &%Magni A=4dCRSLIN =A A==A &% A= =A &% A= =A &% - &% A==A &% A==A &% A= =A &% }A= =A A=>9CRCRS =A򠴠&%Color 0 &%Color 1 &%Color 2 A=H:COLLIN =A Hue Black 00 &% Luminance 00 A= }RGR3 ===U=U\ ====f2TXT_P1 =A Define TextMode Parameters A=p3TXT_PRM =ADir: &%Hgt: }08 &%Wdt: 08 A=z7XY_LINE A X: 000 Y: 000 PTN: 00 REFL: - ATXT_DIR _=\=^=]GR7CLR (===F= }MENCLR = ===DLICLR =D=DLITXT == H_CLR CLR_OFF = ==CRS_OFF == === } =$M_CRS 6=J=^=r= ==TXT_OFF <=D=L=T \=d=l=t=|  ==== == X;$ X;G }raphics 7+ pattern data. X;8 M_GR7 ==B  ==U=UL  ===V  D=D==`  ==f=fj  w=w==t  }"="="="~  ===  === USR_DF1 3=3==   X; ==  ==U=U  ===  = }="="  "="==  ===  D=D==  ==f=f  === USR_DF2 3=3==   X;( X;Fill } 'patterns'2 X;< SH_CLR ===;;00 00F  ===;;55 55P  ===;;AA AAZ  ===;;FF FFd  === };;44 11n  ===;;88 22x  ===;;CC 22  ===;;66 99  ===;;77 DD  ===;;BB EE  = }==;;22 44  ===;;22 CC  ===;;CC 99  ===;;11 66  ===;;99 DD  ===;;88 DD } USR_DF3 ===;;33 33 X; A2I @== =` I2A  =@==` P_M ==?== == REF_DAT A-HVF }A" X;, X;Menu Display List6 X;@ DLISTM p=p=p=BJ TITLET  ===p=O;;1^  GR8h  B=4L1=5L1r  O=4GR8=5 }GR8|  B=4L2=5L2  O=4GR8=5GR8  B=4L3=5L3  O=4GR8=5GR8  B=4L4=5L4  O=4GR8=5GR8  B=4L5=5L5  }=4GR8=5GR8;;2  p=O=4GR8=5GR8  B=4CRSLIN=5CRSLIN  =4GR8=5GR8;;3  p=O=4GR8=5GR8  B=4COLLIN=5COL }LIN  O=4GR8=5GR8  0=O=4GR8=5GR8  B=4CRCRS=5CRCRS  O=4GR8=5GR8=&  0  O=4GR8=5GR8=H;;4:  GR3D } H=4GR3=5GR3N  p=N;;txt_offX M_GR7b =Nl M_GR7v =N M_GR7 =N M_GR7 =N M_GR7  }=N M_GR7 =N M_GR7 =N M_GR7  =4GR8=5GR8;;5  A DLISTM X; X;Enlarge Screen Display Li }st X;* GR3DL  =p=p=N4 REALSZ>  ====H  ====R  ====\  ====pf  Hp GR0 }SCRz  ====  ====  ====  ====B XY_LINE  A GR3DL X; X;Display List } For Text Parms X; DL_TXT p=p=p=p=p  p=O=4GR8=5GR8  B=4TXT_P1=5TXT_P1  O=4GR8=5GR8 p=O GR0 }SCR ====$ =. p=O=4GR8=5GR88 BB TXT_PRML O=4GR8=5GR8V A=4DL_TXT=5DL_TXT`X;jX;Incl }ude Other I/OtX;~>D:BBKART3.M65X;X;GR7+ ModificationsX;DL_MOD =B XY_LINE A DLISTSX;X; }Command TableX;COM_TAB DRAWM;;0 draw mode NLARGE;;1 Enlarge LINE;;2 rubber line  ELLIPS;;3 ellipses RB }OX;;4 Rubber Box TEXT_P;;5 Set Text( PLT_TEXT;;6 Draw Text2 AFONT;;7 Load Font< FILL;;8 FillF RRAYS;;9 Rubber } RaysP REFH;;10 horzrZ REFV;;11 vertrd REFB;;12 fourrn TEXTURE;;13 Choose Txtx TXT_DEF;;14 Make Txt CRSCHC };;15 get cursor SETCLR;;16 set colors ERASE;;17 Erase Scrn UNDO;;18 Undo VIEW_PIC;;19 see pic RAINBW;;20 }load pic ASAV;;21 save pic AKOALA;;22 get koala AMICRO;;23 get micro AMAGNI;;24 get magniX;X;Include Su }pport FilesX;>D:BBKART4.M65>D:BBKART5.M65X;*"X;Start of Program,X;*6 BEGIN-@ CLRSCRJ COPY12T M }AKESET^Q>ph PDLISTSrPDLISTS|Q> PDLISTSQ>NPDLISTS Q>4SCREENPDLISTS Q>5SCREENP }DLISTS$>Q>DR1PDLISTS90HDR1$>DR_1.1QDL_MOD9PDLISTS90& IDR_1.10Q>N:PDLI }STSeDQ>4SCREEN NPDLISTSfXQ>5SCREEN bPDLISTSglX;vX;other stuffX; YTABLE PMSETQ> }$>CLR_ZPP90 ICLR_ZPQ> PNCOL PNROWX; #TXT_NUM PUT_DEF X;Q>  %>4IVBI* $>5IVBI }4 SETVBV> MENUDLH UNINVRX;\X;Main Loop - MENUfX;pSTCURQSTICK0zR> FCRSRTR>  FCRSLFR> F }CRSUPR>  FCRSDN QSTRIG0 HSTCUR BUCKET MENUDL SETTRG WAIT16 !STCURCRSDNQCURSP,$O> }.R>8 DDOUDB;LS>VDOUDPCURSP` UNINVj SWTCt !STCUR~CRSUPQCURSP;S> IDOUD,O> !DO }UDCRSRT#CURSP QCURSPR> HRTOKQ>RTOK!DOUDCRSLF"CURSP  QCURSP IRTOKQ>( HRTOK2X;<X };Show menu ChoiceFX;PUNINVINVERT L1=Z QCURSPdT?nT?xT?>%>UN1QL19L> PL1921 }IUN1:X;X;wait a secX; WAITQ> PRTCLOKWT1QRTCLOKFWT1":,X;6X;Click and wait@X;JSWTC C }LICKTX;^X;wait somehX;rWAIT16$>| WT2 WAIT0IWT2:X;BUCKET CLICK SETTRG F_ROVL QCURSP }T?> QCOM_TAB9PCOM_JSRQCOM_TAB9PCOM_JSRCOM_JSR  !WAIT16&X;0X;Immed. Mode Vertical }Blank:X;D IVBIQ>N PDLIDXX PATRACTb%>lVBI_LPQCOLOR08v PCOLPF081 IVBI_LP QMENU? HX_VBI $CRSN } QM_CRS9 PHPOSP0X_VBI!SYSVBVX;"X;Display List Interrupt - MENUX;DLI5 &DLIX &WSYNC  $DLIDX(> }  FDLIGR3*(>4 HDLI_NRM>Q>H PCOLBKR FDLI_OUT\DLI_NRMQDLICLR9f PCOLPF2p QDLITXT9z PCOLPF1 HDLI_O }UTDLIGR3$>DLI1QGR7CLR9 PCOLPF090 IDLI1 QH_CLR PCOLPM0 $TXT_NUM QTXT_OFF9 PHPOSP0DLI_OU }T#DLIDX $DLIX79X;$ DLI25.Q>8 PWSYNCB PCOLPF2LQ> V PCOLPF1`7j9tX;~X;fix triggerX;SE }TTRGQSTRIG0 FSETTRGQ> PSTRIG0 !WAIT16X; X;clickerX; CLICKQ> PCONSOL:X; X;Install GR7+ }Display ListX;SCRNDL COPY12(SCRNDL2Q>5DLISTS2PSDLSTL< Q>4DLISTSF PSDLSTLPSCRNDL3Q>@Z PNMIENd Q>4 }DLI2n PVDSLSTx Q>5DLI2PVDSLSTQ> PNMIEN CLRPM%>SCR_CLQGR7CLR8 PCOLOR081 ISCR_CLQ }>  PPCOLR0 #MENU? !WAITX;X;clr pm areaX;" CLRPM$>,A6CL3PPLR09@2JHCL3T:^X;hX;set up pm }rX;|PMSET CLRPM PHPOSP0 Q>5PMB PPMBASEQ> PGPRIORQ>: PSDMCTLQ> PPCOLR0Q> PGRACTL }:X; X;def plrX;DEFPLR CLRPM& PSIZEP00 $CRSN: QOFSET9D>N%>xX'CRYbDF1QPLYTAB9l PPLR08v2 }3)>}HDF1 $CRSNQ>PLFMPUPM QRTT9PRTM QDNT9PDNMQ>PCRXQ>] PPTYQ>P P }PTX*(>4HDF2>Q>~HPCRXRQ>_\PPTYfHDF3p DF2(>zHDF3Q>aPPTYQ>PUPM DF3QCRX PHPO }SP0 !DO_XYPX; X;clr scrnX;CLRSCRQ>5SCREENPMHI Q>4SCREENPMLO$>;;30 pges CL2Q>$?.CL4P }@MLO783BHCL4L#MHIV0`ICL2j:tX;~X;draw modeX;DRAWM SCRNDL DEFPLRMV1 MOVCRS QSTRIG0 F }GOTIT MV2 WAIT CK_OPTHMV1:GOTIT PLTCRS!MV2X; X;plot cursX;PLTCRSQCRSN( T?;;x22>< QC }RSTAB9F PPJSRPQCRSTAB9Z PPJSRd THEPLTn SPTXYx PJSR  !RPTXYX; PCR1#PTX THEPLT#PTY } THEPLT"PTX THEPLT"PTY PCR0:X;PCR2 ADPTY !DRAWITX;PCR3 ADPTX !DRAWIT"X;,PCR4 A }DPTX6QPTY@;JS>TPDRY^ !DRAWIThX;rPCR5 ADPTX|QPTY,O>PDRY !DRAWITX; PCR6#PTX#PT }X THEPLT#PTX#PTX !THEPLTX;ADPTXQPTX , O> PDRX& QPTY0 PDRY: :D X;N ADPTYQPTYX ,b O> }l PDRYv QPTX PDRX : X; X;jmp table X; CRSTAB PCR0 PCR1 PCR2 PCR3 PCR4 PCR5 PCR6 } PCR0!X; !X;draw rout!X; !DRAWIT SPTXY*!QDRY4!RPTY>! DYMINH!;R!SPTY\!PDTYf!Q>p!PICYz! HXVEC! YMI }NQPTY!;!SDRY!PDTY!Q>!PICY! XVECQDRX!RPTX! DXMIN!;!SPTX!PDTX!Q>"PICX" HVCST" XMINQ }PTX$";."SDRX8"PDTXB"Q>L"PICXV" VCSTQ>`"PACYj"PACXt"QDTX~"RDTY"DYMX" PCNTR" PENPT"V?"PACY"! }DRZ" YMXQDTY" PCNTR" PENPT"V?"PACX" DRZQCNTR#FDZ6 # DZ1QACY#,#ODTY(#EDZ22#PACY<# RENPTF#DDZ3 }P#QACYZ#;d# DZ2SENPTn#PACYx#QPTY#,#OICY#PPTY# DZ3QACX#,#ODTX#EDZ4#PACX# RENPT#DDZ5#QAC }X#;# DZ4SENPT$PACX$QPTX$,"$OICX,$PPTX6$DZ5 THEPLT@$ "CNTRJ$HDZ1T$DZ6!RPTXY^$X;h$X;move dr crsr$X };|$MOVCRSQSTICK0$$>$M2RSTCKP9$FM1$0$IM2$$>$QCH$R>,$ FMOV_UPP$M3.1RSTKEY9$FM1$0$ IM3 }.1% QCONSOL%R>% FCHC_CLR&%:0%CHC_CLRQPCOLR0:%,D%O>N%M>X% PPCOLR0b% !SWTCl%X;v%M1A%T?%>% QSTJMP9 }% PMJMP%QSTJMP9% PMJMP% MJMP %MJUMP DO_XYP% !F_ROVL%X;%MOV_UPP#TXT_NUM% QTXT_NUM%R>& }HMV_UPP &Q>& PTXT_NUM &MV_UPP PUT_DEF*& SWTC4& !MJUMP>& X; move rtH& RT#PTXR&QPTX\&RRTMf& ERTNOp&#CRXz& }QCRX& PHPOSP0&:& RTNO"PTX&:&X;& LF"PTX&QPTX&RLFM& FLFNO&"CRX&QCRX& PHPOSP0&:' LFNO#PTX' }:'X;$' UP"PTY.'QPTY8'RUPMB' FUPNOL'$>V'"CRY`'%CRYj'UP1QPLR08t' PPLR08~'3'0'IUP1':' UPNO#PTY }':'X;' DN#PTY'QPTY'RDNM' EDNNO'$>'#CRY(%CRY (DN1QPLR08( PPLR08(1((02(IDN1<(:F( DNN }O"PTYP(:Z( RU RTd(!UPn( RD RTx(!DN( LU LF(!UP( LD LF(!DN(X;(X;Setup XY_LINE(X;(DO_XYP$REFLAG }( QREF_DAT9(PXY_LINE#( QTXT_NUM( NUM_ICD(PXY_LINE)'XY_LINE)QPTX) NUM_ICD")PXY_LINE ,)'XY_L }INE6)QKQ@)PXY_LINEJ)QPTYT) NUM_ICD^)PXY_LINEh)'XY_LINEr)QKQ|)PXY_LINE):)X;)X;Menu dlist })X;)MENUDLQ>5DLISTM)PSDLSTL) Q>4DLISTM) PSDLSTL)Q>@) PNMIEN) Q>4DLI) PVDSLST) Q>5DLI*PVDSLST }*Q>* PNMIEN&*Q>:0* PSDMCTL:*%>D*MEN_CLQMENCLR8N* PCOLOR08X*1b* IMEN_CLl* CLRPMv* PMENU?* PPCOLR0* PSI }ZEP0*%>*DEF_P0Q>* PPLR08* QP_M8* PPLR08*1* IDEF_P0*DLIDFTQ>*PDLITXT*PDLITXT*T?+ }PDLITXT + QCRSAV+ PCRSN +:*+X;4+X;plot routine>+X;H+PLOTTR%PTYR+)>\+ EPLOT_OUTf+ QYLO8p+PMLOz+ QYHI8+PM }HI+QPTX+R>+ EPLOT_OUT+5+V?+V?+,+OMLO+PMLO+QMHI+O>+PMHI,7,M>,>$,QPTY.,M>8,T?B, }PPLT_TMPL,QPTXV,M>`, LPLT_TMPj,?t, QCOLORX8~,?, QBMSK29, MCOLORS8, PTMP1, QBMSK19,%>, M@MLO7, LTMP1 }, P@MLO7, PLOT_OUT:,X;, X;close2,X;-CLOSE2$> -Q> - PICCOM9- !CIOV(-X;2- X;open 2<-X;F-OPENF5;;4/8/6P- } CLOSE2Z-7d-$> n- PAUX19x-Q>- PICCOM9- Q>5FNAM- PICBAH9- Q>4FNAM- PICBAL9-Q>- PAUX29- !CIOV-X;- }X;curs choice-X;-CRSCHC SETTRG-Q>. PDLITXT.T?.PDLITXT".CDQSTICK0,.R>6.FCA@.R> J.FCBT. QSTRI }G0^.HCDh. QCRSNr. PCRSAV|. DLIDFT. !SWTC.X;. CA#CRSN. QCRSN.R>.HCE.Q>.X;. CEPCRSN. SWTC.! }CD.X;. CB"CRSN/ QCRSN/ICF/Q>&/X;0/ CFPCRSN:/ SWTCD/!CDN/X;X/X;set up y plot tableb/X;l/YTABLEQ>5 }SCREEN( v/ PTMP2/Q>4SCREEN( / PTMP1/$>/ YT1QTMP1/,/O>(/ PYLO9/ PTMP1/ QTMP2/O>/ PTMP2/ P }YHI9/20(> 0HYT10: 0X;*0X;save ptx,y40X;>0SPTXYQPTXH0PORXR0QPTY\0PORYf0:p0X;z0X;res. ptxy0X;0RPT }XYQORX0PPTX0QORY0PPTY0:0X;0X;Luminance Tables0X;0LUMTAB A0002040608A0 A101214A0X;0X;Color Names }1X;1HUETAB ABlack 00A1 ARust 01A$1 ARed-Orng 02A.1 ADrk-Orng 03A81 ARed 04AB1 ADrk-Lave 05AL1 A }Cob-Blue 06AV1 AUlt-Blue 07A`1 AMed-Blue 08Aj1 ADrk-Blue 09At1 ABlue-Gry 10A~1 AOliv-Grn 11A1 AMed-Grn 12A1 A }Dark-Grn 13A1 AOrng-Grn 14A1 AOrange 15A1X;1X;Bitmasks for PLOTTR1X;1BMSK1 ?===1BMSK2 =0= = }1COLORS =U==1X;1X;Filename Buffer2X; 2FNAM AD:PICTURES.PICA2 EOL2X;(2X;Stick Move Positions22X;<2 }STCKP = == F2 == = P2X;Z2X;Keys Codes=Stick Movesd2X;n2STKEY ===x2X;2X;Offset to Cursor Def'ns2 }X;2OFSET == ==2 ==#2X;2X;Player Margins2X;2RTT ===2 ===2DNT ===2 }===2X;2X;Cursor Def'ns3X;3PLYTAB  = == = 3 ===="3 ====,3 ====63 = }= =@=@3 =@= ==J3 ====T3 ====^3X;h3X;Stick move Command Tabler3X;|3 STJMP RT3 LF }3 UP3 DN3 RU3 RD3 LU3 LD3X;3X;Make Char set copies3X;3MAKESETQ>3%>'3M_LP1PGR88414 IM_L }P143&4 'INDR04 'IND2:4 'IND3D4 Q>5MYSETN4 PINDRX4 PCHBASb4 Q>5TXSETl4 PIND2v4 Q>5CHRSET4 PIND34X;4$ }>4MOVE_CHQ@IND374 P@INDR74 P@IND27434 HMOVE_CH4 #INDR4 #IND24 #IND3404 IMOVE_CH5%> 5 CH }_LPQ>5PMYSET(8 5Q>*5PMYSET0845 QARR_DAT8>5PMYSET8H51R5 ICH_LP\5%>7f5CH_LP2QMY_DEF8p5PMYSET08 }z515 ICH_LP25:5X;5TEXT_BUF EOL55 MYBUF(5 YLO5 YHI5 BUFA5 BUFB5 BUFC5 BUFD }5I6 ENDPRG 6EI6X;$6X;Add Run Address.6X;86B6 P_STARTL65 BUFA5 BUFB5 BUFC5 BUFD N dX;------------------------nX;SYSTEM EQUATES FILE FORxX;ATARI HOME COMPUTERSX;------------------------X; X;}DISK I/OX;DSKINVS SIOVYDDEVICDUNIT;;D: UNITDCOMND;;D: commandDSTATSDBUFLO};;sector bufferDBUFHIDTIMLODBYTLODBYTHI DSECLO ;;sector #"DSECHI ,X;6X;CI}O ROUTINES@X;JCIOVV;;CIO vectorTICCOMB;;command^ICBALD;;buffer addressh ICBAHErICBLLH;;buffer  }len| ICBLHI AUX1J AUX2K RUNADINITADX;X;SCREEN HANDLER/INTERRUPTSX;VDSLST;;DL!}I vectorVBREAK;;BRK vectorVKEYBD;;keyboard vecSRTIMR+;;key repeatSDMCTL/;;DMA controlSDLSTL"}0;;display listPCOLR0PCOLR1PCOLR2&PCOLR30COLOR0:COLOR1DCOLOR2NCOLOR#}3XCOLOR4bCHBAS;;char setlSETVBV\vSYSVBV_XITVBVb NMIENԔVCOUNT ԞCHBASE $} WSYNC Բ CHACTCHACTLCRSINHCHRSET;;ROM charactersX; X;MISC.X;CONSOL;;conso%}le keys RTCLOK  CH MEMLO SHFLOK*WARMSVt4COLDSVw> LBUFFH EOLRX;\X;Device &}VectorsfX;pHATABSzEDITRVSCRENVKEYBDV PRINTV0CASETV@X;X;PAGE ZERO LOCATIONS'}X; CASINI TRAMSZ WARMST BOOT?  DOSVEC  DOSINI  POKMSK BRKKEY SOUNDRA$ (}CRITICB. ATRACTM8 KEYDEFyB LMARGNRL RMARGNSV ROWCRST` COLCRSUj SAVMSCXt RAMTOPj~X;X;FL)}OATING POINTX; FR0Ԧ FREڰ FR1 FR2 FRX EEXP NSIGN ESIGNFCHRFLG DIGRT*} CIX  INBUFF RADFLG AFP( FASC2 IFP< FPIF ZFR0DP ZF1FZ FSUB`d FA+}DDfn FMULx FDIV(ۂPLYEVL@݌ FMOVEݖ EXPݠ EXP10ݪ LOG޴ LOG10޾X;X;STICK, PAD,}DLES, TRIGGERSX;PADDL0pPADDL1qPADDL2rPADDL3sSTICK0xSTICK1yPTRIG0|"PTRI-}G1},PTRIG2~6PTRIG3@STRIG0JSTRIG1TX;^X;AUDIO CONTROLhX;r AUDF1| AUDC1҆ AUDF2.}Ґ AUDC2Қ AUDF3Ҥ AUDC3Ү AUDF4Ҹ AUDC4AUDCTL SKCTLX;X;P/M GRAPHICSX;/}PMBASEGPRIORoHPOSP0HPOSP1HPOSP2&HPOSP30 M0PF: M1PFD M2PFN M3P0}FXHPOSM0bHPOSM1lHPOSM2vHPOSM3Ѐ P0PFЊ P1PFД P2PFО P3PFШSIZEP0в1}SIZEP1 мSIZEP2 SIZEP3  M0PL M1PL  M2PL  M3PL SIZEM ;;missile sizeP0PL2} ;;player/pf  P1PL  P2PL  P3PL*COLPM04COLPM1>COLPM2HCOLPM3RCOLPF0\CO3}LPF1fCOLPF2pCOLPF3zDMACTLԄ COLBKЎGRACTLИHITCLRТGRAFP0 ЬGRAFP1жGR4}AFP2GRAFP3 GRAFMzDMACTLԄ COLBKЎGRACTLИHITCLRТGRAFP0 ЬGRAFP1жGR#EdX;save#D:BBKART3.M65n#X;------------------------------xX;BBK Artist - Support FilesX;X;by: Bryan SchappelX6};#X;------------------------------X;X;Un-Invert MacroX; INVERT Q>4  %>5 $>  UN_VERTX;7}X;Display List for SAVEingX;"SDLIST p=p=p=p=p, p=O=4GR8=5GR86 B@ SAVMSGJ O=4GR8=5GR8=pT O=8}4GR8=5GR8^ B=4SVMS2=5SVMS2h O=4GR8=5GR8r p=0=O| GR0SCR ==== = A SDLISTX;9}X;Display List for LOADingX;LDLIST p=p=p=p=O GR8 B=4LODMSG=5LODMSG O=4GR8=5GR8 0=B GR0S:}CR ==== ==0=O GR8& B=4LODMEN=5LODMEN0 O=4GR8=5GR8: AD LDLISTNX;XX;Display List ;}for TXT_DEFbX;lTXTDL p=p=p=pv O=4GR8=5GR8 B=4TXTREM=5TXTREM O=4GR8=5GR8 0 O=4GR8=5GR8 <}B=4SVMS2=5SVMS2 O=4GR8=5GR8 p=O GR0SCR ==== = A TXTDLX;X;Erase Pic? Displ=}ay List X;ERASDL p=p=p=p  p=p=p=p* O=4GR8=5GR84 B=4ERASEM=5ERASEM> O=4GR8=5GR8H 0R O=4G>}R8=5GR8\ B=4YESNO=5YESNOf O=4GR8=5GR8p Az ERASDLX;X;Text for IOBBKX;2SAVMSG =ASave File &%Fo?}rmat:Koala FileA=1SVMS2 =AEnter Data &%RETURN to ExitA=X;2LODMSG =ALoad File &%Format: A=@}2LODMEN =AMore &%Load &%Exit A=2TXTREM =ATexture Define &%Pick 4 ColorsA=2ERASEM =A EraseA} Your Picture A=1YESNO =ANo &%Yes A=FNTNM AChar Font AKOLNM AKoala FileAMICB}NM AMicroPaintAMAGNM AMagniPrintAX;$PFNT A.FNTA=EOL.PKOL A.PICA=EOL8PMIC A.MICA=EOLBPMAG A.MPA=EC}OLLX;V"X;Filename Extensions Addresses`X;jEXTLO 4PFNTt 4PKOL=4PMIC=4PMAG~EXTHI 5PFNT 5PKOL=5PMIC=5PMAD}GX;X;File Format AddressesX;FORMLO 4FNTNM 4KOLNM=4MICNM 4MAGNMFORMHI 5FNTNM 5KOLNM=5MICNM E} 5MAGNMDIR_TAB = =FREE_TXT AE SECAL_TEXT =A Filespec:A T_TEXT =A Texture:AX_TEXT =A F} Text:AX;(INS_TAB L_TEXT2 T_TEXT< X_TEXTFX;PX;Load picture addressZX;dLOAD_ADR CHARSETn KOALAPICxG} MICROPIC MAGNIPICX;X;Perform a SaveX; ASAVQ> PFILEXT Q>4SDLIST PSDLSTL Q>5SDLISTPSDLSTLH} SETNARX; GETFNM QMYBUF R>EOL FSAV_LV" ADDEXT,Q>6 OPENF@ COMSAVJSAV_LV CLOSE2T !MENUI}DL^X;hX;Add File ExtensionrX;|ADDEXT$FILEXT QEXTLO9 PINDR QEXTHI9 PINDR$>%>FIND_EOLQMJ}YBUF9 PFNAM9 R>EOL FGOT_EOL2 HFIND_EOLGOT_EOLQ@INDR7 PFNAM9 R>EOL FEXT_DN&203: HGOT_K}EOLD EXT_DN:NX;XX;Get a key from the OSbX;lGET_KEYQ%v5Q$5:X; X;Put type of LOAD in messageXL};LOAD_MSG$FILEXT QFORMLO9 PINDR QFORMHI9 PINDR%> LO_LPQ@INDR7PLODMSG8 1 ILO_LP  Q>4M}LDLIST* PSDLSTL4 Q>5LDLIST>PSDLSTLH SETNARR CLOSE2\Q>f !OPENFpX;zX;Erase the Graphics 0 ScrnX;N}CLRGR0Q>>CLR_G0PGR0SCR92 HCLR_G0:X;X;Input a FilenameX;GETFNM%> INS_PRM%> X;O} X;Input Routine X;$ INPUT'MAXLEN. $> 8 Q> B INP_CL PUT_CHRL 2V (> ` HINP_CLj $>;;length=0t GET_FN&SAP}VEX~ Q> _ PUTC_X GET_KEY $SAVEX R>EOL;;EOL? FINDONE R>~ HINEXT (> FGET_FN Q> PUTC_X Q}0 PUTC_X !GET_FN X; INEXT%TEXT?( HIG_CHR2 M>< R> F DGET_FNP R>`Z FGET_FNd R>{n EGET_FNx IG_CHR}R(MAXLEN FGET_FN PMYBUF9 PUTC_X 2 HGET_FN X; INDONEPMYBUF9 Q> PTEXT? Q> !PUTC_X X; X;S}Convert ATASCII to ICODE X; ASC2IC BITER LA2I9" $SAVX2, :6 X;@ X;Internal to ASCJ X;T IC2ASC BITER^ LI2A9T}h $SAVX2r :| X; X;Ready the bits X; BITER5 U? U? U? U? M> &SAVX2 > 7 M> : X; X;Add a U}'*' to MYBUF X;& DOSTARQ> *0 PMYBUF: Q>EOLD PMYBUFN !ADDEXTX X;b X;Load a Fontl X;v AFONTQ> LOAD_STPV}FILEXT CLRGR0 DOSTAR !GO_LOAD X; X;Load a Koala X; AKOALAQ> HLOAD_ST X; X;Load a Micro PainterW} X; AMICROQ> HLOAD_ST X; X;Load a Magni Print X;* AMAGNIQ>4 HLOAD_ST> X;H X;Perform Dir/Stick of LoadRX} X;\ GO_LOAD LOAD_MSGf Q>p PDIR_NMz PDIR_FLG DIR_IN LOAD_1 DIR_PAGE LOAD_2QSTRIG0 FGOT_LOAD QSTIY}CK0 R> FLOAD_2 R> HLOAD_RT "DIR_NM IDIR_G1 Q> PDIR_NM HDIR_G1LOAD_RTR> HLOAD_2$ #DIRZ}_NM. QDIR_NM8R>B HDIR_G1LQ>V PDIR_NM`DIR_G1 DIR_INj SWTCt !LOAD_2~X;GOT_LOADQDIR_NMR> H[}DIR_1? !CLOSE2DIR_1?R> FLOAD_IT !LOAD_1X;DIR_ININVERT LODMEN=  $DIR_NM QDIR_TAB9>%> \}DIRUNLQLODMEN9L> PLODMEN9(221< IDIRUNLF:PX;ZX;Transfer Control to thedX;proper LOAD routinenX;x]}LOAD_IT GETFN_S QMYBUF R>EOL HDO_LOAD:DO_LOAD ADDEXTQ> OPENF GBD_LD1 QFILEXTT?>QLO^}AD_ADR9PLOADJSRQLOAD_ADR9PLOADJSRLOADJSR "BD_LD1 CLOSE2, !MENUDL6X;@X;Read a Directory _}PageJX;TDIR_PAGEQ>^ PDIR_CNTh PIND3r Q>5GR0SCR| PIND3 QDIR_FLG FREAD_D:READ_D CLRGR0READ_`}DIR$> Q> PICCOM9 Q>4MYBUF PICBAL9 Q>5MYBUF PICBAH9Q> PICBLL9Q> PICBLH9 CIOV& ISTILa}L_OK0 #DIR_FLG::DSTILL_OK%>NCHK_FREQMYBUF8XRFREE_TXT8b HNOT_FREEl1v ICHK_FRE #DIR_FLGNOT_FREEb}%>SHO_NAMQMYBUF8 ASC2IC P@IND373)>  HSHO_NAMUP_DIRQIND3,O> PIND3 DINC_CNT #IND3c} INC_CNT#DIR_CNT QDIR_CNT R>* FDIR_LV14 !READ_DIR> DIR_LV1:HX;RX;Load a Character set\X;fCHARSETd}$> pQ>z PICCOM9Q> PICBAL9 PICBLL9Q> PICBLH9 Q>5TXSET PICBAH9 CIOV !CLOSE2X;X;Gete} a byte from the file.X;GET_BYTE$> Q> PICCOM9Q>$ PICBLL9. PICBLH98 !CIOVBX;LX;Get a byte for Kf}oalapicVX;`KOL_GETB'SAVEYj GET_BYTEt GKOL_CL~ %SAVEY: KOL_CL77:X;X;Load a Micro Painter Picg}X;MICROPIC GRAB_UNC GMIC_ERR GET_BYTE GMIC_ERRPGR7CLR%> MIC_LP KOL_GETB GMIC_ERR PGR7CLRq}-B%DOS SYSB*)DUP SYSBESBBKART OBJBBBKART1 M65BBBKART2 M65B5BBKART3 M65B5BBKART4 M65B:BBKART5 M65B<<DISKMENDBASB+xPOLARPLTBAS8(32)>< HMIC_LPFMIC_ERR!CLOSE2PX;Z X;Load a Koala Format PicturedX;nKOALAPIC CLRSCRx Q>4SCREENPSCRr} PSCR2PBUF PSCRBOT Q>5SCREEN PSCR PSCR2 PBUF,O>PSCRBOT%>KOL_HDR KOL_Gs}ETB PMYBUF83)>" HKOL_HDR,%>6KOL_CRQMYBUF 8@ PGR7CLR8J1T IKOL_CR^ QMYBUFh PTYPEr HDE_COMt}|X; GRAB_UNC !CLOSE2X;DE_COM%>'ODDX;U_LOOP1'COUNT 'UNIQUE KOL_GETB,U? UUNIQUu}EV? PCOUNT HCK_UNQ KOL_GETB& PCOUNT0 KOL_GETB: PCOUNTDX;NCK_UNQQUNIQUEX FU_LOOP3bX;lU_LOOv}P2 KOL_GETBv P@BUF7 $TYPE(> HU_L2.2 INCOBP2 !U_L2.3U_L2.2 INCOBPU_L2.3"COUNT HU_LOOP2 QCw}OUNT FU_LOOP1 "COUNT IU_LOOP2X;U_LOOP3 KOL_GETB  PDATAU_L3.2QDATA  P@BUF7* $TYPE4(>> Hx}U_L3.3H INCOBP2R !U_L3.4\X;fU_L3.3 INCOBPpU_L3.4"COUNTz HU_L3.2 QCOUNT FU_LOOP1 "COUNT IUy}_L3.2X;X;KoalaPic SubroutinesX;INCOBPQBUF,O>PPBUF QBUFO> PBUFQBUF RSCRBOT$ z}HU_RETURN. QBUF8RSCRBOTB HU_RETURNLX;VCKODDQODD` HCK_DONEj#ODDt QSCR2~,O>(PBUF QSCR2{}O> PBUF QSCRBOT,O>( PSCRBOTQSCRBOTO>PSCRBOT #SCR2  HU_RETURN #SCR2 |}U_RETURN:(X;2CK_DONE"ODD< QSCR2FPBUFP PSCRBOTZ QSCR2d PBUFn,xO>PSCRBOTQSCR,O>}}(> QSCRO> RBUF HU_RETURN(BUF HU_RETURNBACK_MAIN77:X;INCOBP2#BUF" HU_IOB2.2,~} #BUF6U_IOB2.2QSCR@,JO>T>^QSCRh (BUFr HU_RETURN|RBUF HU_RETURNFBACK_MAINX;!X;Loa}d a MagniPrint mode 24/14X;MAGNIPIC GET_BYTE GMAG_ERRR> FGOT_14R> FGOT_14 MAG_ERR:GOT_14%>}MAG_TR KOL_GETB1 IMAG_TR&X;0%>:MAG_CLR KOL_GETBD PGR7CLR8N3X)>b HMAG_CLRl%>vMAG_TR2 K}OL_GETB1 HMAG_TR2%>NMAG_TR3 KOL_GETB1 IMAG_TR3X;X;Load an Uncompacted ScreenX;GRAB_UNC$> }Q> PICCOM9 Q>4SCREEN PICBAL9  Q>5SCREEN PICBAH9 Q>* PICBLL94Q>> PICBLH9H !CIOVRX;\X;Let u}ser move until FIRE!fX;pROVERQSTRIG0z FROVED MOVCRS WAIT CK_OPT HROVERQ> ROVED6 SETTRG8}:X;"X;Locate the color under CursorX;LOCATE$PTY QYLO9PMLO QYHI9$PMHI.QPTX85BM>L>V7`}V?jV?t?~AN>> Q@MLO7 LOC_SHF0 GLOC_SHDV?V? !LOC_SHFLOC_SHDM>:X;X;Perform a So}lid FillX; FILL SCRNDL SETC_0F_ROV ROVER( HF_ROVL2X;< MY_FILLF !F_ROVPF_ROVLQ>ZPCHd:nX;x}X;Fill RoutineX;MY_FILLQ> PCOUNTNEW%>QPTX PBUFA8 PXPSTORPXPQPTY PBUFB8 PYPSTORP}YP 'COUNTOLD F_LOCATE PCOLOVER $TXT_NUM"(>, EPRELOOP6 RCOLORX@ HPRELOOPJ:TX;^PRELOOP F_PLOTh}F_LOOPQBUFA8rPXP| QBUFB8PYPX; QCONSOLR> HF_LOOP0 !F_RET0X;F_LOOP0#XPQXPR> EF}_LOOP1 F_LOCATE HF_LOOP1 F_KEEP X; F_LOOP1"XP& "XP0 QXP: R>D FF_LOOP2N F_LOCATEX HF_LOOP2b }F_KEEPl X;v F_LOOP2#XP #YP QYP R> EF_LOOP3 F_LOCATE HF_LOOP3 F_KEEP X; F_LOOP3"YP "YP }QYP R> FF_LOOP4! F_LOCATE ! HF_LOOP4! F_KEEP !X;*!F_LOOP4"COUNTOLD4! FF_DONELP>!3H! !F_LOOPR!X;\!F_D}ONELP%COUNTNEWf! FF_RET0p!X;z! 'COUNTOLD!X;!F_TRANSQBUFD8! PBUFB8! QBUFC8! PBUFA8!1! HF_TRANS!%>!Q>}! PCOUNTNEW! !F_LOOP!X;!F_KEEP F_PLOT" #COUNTNEW" FF_RET2" %COUNTNEW$"QXP." PBUFC88"QYPB" PBUFD8L" %}SAVEYV":`"X;j"F_LOCATE F_POSt" LOCATE~" %SAVEY" RCOLOVER":"X;"F_POS'SAVEY"QXP"PPTX"QYP"PPTY":}"X;"F_PLOT F_POS" PLOTTR# %SAVEY #:#X;#F_RET0QYPSTOR(#PPTY2# QXPSTOR<#PPTXF#:P#X;Z#F_RET2 F_RET0d}#7n#7x#:#X;#!X;These are the screen copiers#X;#COPY12Q>4SCREEN#PSCR# Q>5SCREEN# PSCR#Q>4SCREEN2# P}SCR2#Q>5SCREEN2# PSCR2#X;#MOVE_SC$>$%>$MOVE_ITQ@SCR7$ P@SCR27"$3,$ HMOVE_IT6$ #SCR@$ #SCR2}J$0T$ IMOVE_IT^$:h$X;r$X;Copy screen 2 to 1|$X;$COPY21Q>4SCREEN$ PSCR2$ Q>5SCREEN$ PSCR2$Q>4SCREEN2$P}SCR$Q>5SCREEN2$ PSCR$ HMOVE_SC$X;$!X;Erase a 'figure' from screen$X;$ERASE_FIGQREFLAG%R>% DERAS_FG}% ERAS_FG&% QTOPY0%5:% QBOTYD%5N%Q>X%;b% SBOTYl% PBOTYv%Q>%;% STOPY% PTOPY% ERAS_FG%7% PBOTY%7}% PTOPY%:%X;%ERAS_FGQTOPY% RBOTY% EER_OTHER&? & QBOTY&; & STOPY*& !ER_GOTC4&X;>&ER_OTHER%BOTYH& QTOP}YR&;\& SBOTYf&X;p& ER_GOTC,z&O>&>&(>& DER_GETY1&$>&ER_GETY1)>& FER_GETY&1&ER_GETYQYHI8& PIN}DR& QYLO8& PINDR&;& S>4SCREEN' PIND2' QINDR' S>5SCREEN$' PIND2.' QIND28',B'O>4SCREEN2L' PIND2V' }QIND2`'O>5SCREEN2j' PIND2t'X;~'ERASE_1%>''ERASE_2Q@IND27' P@INDR7'1' IERASE_2' QIND2','O>(' P}IND2' DER_UPLO' #IND2'ER_UPLOQINDR',(O>( ( PINDR(DER_RELOOP( #INDR((ER_RELOOP02((><( HERASE_1}F(:P(X;Z(X;Do a rubber-band lined(X;n(LINE SCRNDLx( SETC_0(LINE_SV COPY12(LINE_LP ROVER( HLINE_X( MOVPB}(LINE_LP2 CK_MOVE( HLINE_MV( CK_OPT( HLINE_TR(LINE_X COPY21( !F_ROVL(X;(LINE_TRQSTRIG0( HLINE_LP2) } SETTRG) !LINE_SV)LINE_MV MOVCRS") MOVPT,) QBOTX6)PDRX@) QBOTYJ)PDRYT) DRAWIT^) !LINE_TRh)X;r)X;Choose Fi}ll Pattern|)X;)TEXTUREQ> ) PH_CLR) QSTRIG0) FTXR_LV) QSTICK0)R>) HTXR_LF) %TXT_NUM)3))>) HTXR_SE}T)%>) FTXR_SET*X;*TXR_LFR> * HTEXTURE&* %TXT_NUM0*1:* ITXR_SETD*%>N*TXR_SET'TXT_NUMX* PUT_DEFb* SW}TCl* !TEXTUREv*TXR_LVVH_CLR*:*X;* X;Install 'Pattern' in COLORX*X;*PUT_DEFQTXT_NUM*T?*T?*?*$>*TXR}_LPQSH_CLR8* PCOLORX9*3*2+(> + HTXR_LP+: +X;*+X;Define a Texture4+X;>+TXT_DEF CLRPMH+ Q>4TXTDLR+ PSDLST}L\+ Q>5TXTDLf+PSDLSTLp+Q>9z+ PSDMCTL+X;+%>+ INS_PRM+%>+ INPUT+ QMYBUF+ R>EOL+ HTXT_TRY+ TXT_}OUT:+TXT_TRY%>+TXT_TYQMYBUF8+ R>EOL+ FTXT_OUT,M>,;,S> 0$, GTXT_OUT.,R>8, ETXT_OUTB, PMYBUF8L,3V,})>`, HTXT_TYj,%>t, MAKE_DAT~,PUSR_DF1, PUSR_DF1,%>, MAKE_DAT, PUSR_DF2,PUSR_DF2,%>,TXT_D}CQMYBUF8, PUSR_DF38,1, ITXT_DC, !PUT_DEF,X;-X;Make two Binary #'s into -X;Gr. 7+ data-X;-MAKE_DATQMYBUF8(}-T?2-T?<-LMYBUF8F- PPLT_TMPP-T?Z-T?d-T?n-T?x- LPLT_TMP-:-X;-X;Insert prompt into INLINE-X;-INS_PRMQI}NS_TAB8- PIND2-QINS_TAB8- PIND2-Q>- PPC_MODE- CLRGR0- PTEXT?-?.INS_PLPQ@IND27. 'ROWCRS. PU}T_CHR".3,.)> 6. HINS_PLP@.:J.X;T.X;Allow user to view picture^.X;h.VIEW_PIC SCRNDL2r. SETTRG|.VIEW_LPQSTRIG0}. HVIEW_LP. !SWTC.X;.X;Rainbow a Color.X;.RAINBW SCRNDL2. SETTRG. $CLRP. HRAIN_IT.$>. RAIN_IT0. R}AIN_LPC. PWSYNC/ PCOLPF09/3/ QSTRIG0&/ HRAIN_LP0/ !SWTC:/X;D/X;Un Invert RoutineN/X;X/UN_VERTPIND3b/ 'IND3}l/%>v/UN_VLQ@IND37/M>/ P@IND37/3/0/ HUN_VL/:/X;/X;Erase Pic routine/X;/ERASE UNDO/ SETNAR/} Q>4ERASDL/ PSDLSTL0 Q>5ERASDL 0PSDLSTL0Q> 0 PPLT_TMP*0 ERAS_SET40ERASE_TRQSTRIG0>0FERASE_FIRH0 QSTICK}0R0 %PLT_TMP\0R> f0 HERASE_RTp01z0 IERASE_ST0%>0 HERASE_ST0ERASE_RTR>0 HERASE_TR030)>0 HERASE_ST0}%>0ERASE_ST'PLT_TMP0 ERAS_SET0 SWTC0 !ERASE_TR0ERASE_FIRQPLT_TMP1 FNO_ERASE1 CLRSCR1NO_ERASE!CLIC}K$1X;.1ERAS_SETINVERT YESNO= 81$>B1 QPLT_TMPL1 FGO_ERV1$>`1 GO_ER%> j1GO_EQYESNO9t1L>~1 PYESNO9121}11 IGO_E1:1X;1X;Undo Routine1X;1 UNDO$>1 Q>4SCREEN1 PINDR1 Q>5SCREEN1 PINDR2Q>4SCREEN2 2 PIND2}2Q>5SCREEN22 PIND2(2%>22UNDO1Q@INDR7<25F2 Q@IND27P2 P@INDR7Z27d2 P@IND27n23x2 HUNDO12 #INDR2 #IND2}202 IUNDO12:2X;2X;Set narrow play field2X;2SETNAR CLRPM2Q>92 PSDMCTL2:2X;3X;Get Color3X;3G}ETCOL$CLRP"3FST1,3063 QGR7CLR9@3!ST2J3ST1QGR7CLRT3ST25^3M>h3 PLUMNr37|3V?3V?3V?3V?3M>3 PHUEN}3 PUTHUE3 !PUTLUM3X;3X;Select Color3X;3SLTCOLQHUEN3T?3T?4T?4T?4 LLUMN&4 $CLRP04FST3:40D4 PGR7CL}R9N4:X4ST3PGR7CLRb4:l4X;v4X;Put Luminance4X;4PUTLUM$LUMN4%>#4 QLUMTAB94 PCOLLIN84QLUMTAB94PCO}LLIN84:4X;4X;Put Hue (Color)4X;4PUTHUEQHUEN4T?5 PTMP1 5T?5T? 5,*5 OTMP145,>5 OHUENH5>R5%>\5HU}2QHUETAB9f5 PCOLLIN8p52z535)>5HHU25:5X;5X;Set Colors (One at a Time)5X;5SETCLR SETTRG5Q>5 PDLITX}T5T?5PDLITXT5X;5 CLRSHO6CCHQSTRIG06 FCLSET6 QSTICK0$6R>.6 FCOLRT86R> B6HCCHL6 FCOLLFV6X;`6CO}LRT%CLRPj63t6)>~6HDOC6%>6 DOC'CLRP6 CLRSHO6 SWTC6!CCH6X;6COLLF%CLRP616IDOC6%>6HDOC6}X;7X;Show Color Register 7X;7CLRSHOINVERT CRCRS=(7 $CLRP(7 QCLR_OFF927><7%>F7UNC1QCRCRS9P7L>Z7 PCRCR}S9d72n71x7 IUNC17 !GETCOL7X;7X;Register Picked, set color7X;7CLSET SWTC7 SETTRG7CLSETLQSTRIG07 HCLSTK}7 SETTRG7 !DLIDFT7CLSTKQSTICK07R> 7HCL78 $HUEN808 IHUEK"8$>,8 HHUEK68X;@8 CL7R>J8 HCL14T8 $HUE}N^82h8(>r8 HHUEK|8$>8HUEK&HUEN8 !CLSHO8X;8 CL14R>8 HCL138 %LUMN83838)>8 HLUMK8%>8 FLU}MK8X;9 CL13R> 9 HCLSETL9 %LUMN&91091:9 ILUMKD9%>N9LUMK'LUMNX9CLSHO SLTCOLb9 GETCOLl9 SWTCv9 !CLSETL}9X;9X;Get a Filename from the9X;Directory screen. If they9X;choose a zero filename or9X;the FREE SECTORS, MYBUF is}9"X;set to an EOL. Thus aborting.9X;9GETFN_SQ>9PDIR_NM;;cursor pos9 DIR_CR;;show cursor9 SETTRG9DR_CRQSTI}CK09R>;;right?: HDR_11 : #DIR_NM: QDIR_NM :R>*: HDR_OK4:Q>>: FDR_OKH:X;R: DR_11R> \: HDR_14f: "DIR_NMp:} IDR_OK2z:Q>: HDR_OK:X;: DR_14R>: HDR_13: QDIR_NM:;:S>: IDR_OK:,:O>: !DR_OK:X;: DR_13R> }; HDR_TR; QDIR_NM;,$;O>.;R>8; DDR_OKB;;L;S>V;X;`;DR_OKPDIR_NMj;DR_OK2 DIR_CRt; SWTC~;DR_TRQSTRIG}0; FDR_TRY; CK_OPT; FDR_EOL; !DR_CR;X;;X;Get name from screen;X;;DR_TRY DR_OFF;%>;DR_GTQ@INDR7;M}>; IC2ASC<PMYBUF8 <R> < FDR_SV<3(<)> 2< HDR_GT<<X;F<DR_SVQ>EOLP<PMYBUF8Z<%>d<DR_CKQ@INDR7n}<M>x< IC2ASC<RFREE_TXT8< HDR_NO<3<)> < HDR_CK<DR_EOLQ>EOL< PMYBUF< DR_NO:<X;<X;Get screen off}set<X;<DR_OFFQDIR_NM< T?;;*2= T?;;*4= T?;;*8= T?;;*16"= PINDR,= Q>5GR0SCR6= PINDR@=:J=X;T=X;Highlight a fi}lename^=X;h=DIR_CRINVERT GR0SCR=r= DR_OFF|=%>=DIR_CLQ@INDR7=L>= P@INDR7=1= IDIR_CL=:=X;= X;Pu}t a character to the scrn=X;with an X+11 offset.=X;= PUTC_X5=A=,>O> > PROWCRS>7&>X;0>X;Put a char to the s}creen.:>X;This is for GRAPHICS 8!!D>X;N> PUT_CHR5X>&PCXb>'PCYl> :GET_OFFv> QROWCRS> PIND3> Q>5GR0SCR> PIND3}>%>>$>> QINDR>,> OPC_MODE> PINDR>:PC_LPQ@INDR7> NI_CHAR> P@IND36> QIND3?, ?O> ? PIND3 }?3*?)>4? H:PC_LP>?7H?$PCXR?%PCY\?: PINDR>:PC_LPQ@INDR7> NI_CHAR> P@IND36> QIND3?, ?O> ? PIND3 -dX;save#D:BBKART4.M65n#X;------------------------------xX;More Subroutines for theX;X;BBK ArtistX;by: Bryan} SchappelX;#X;------------------------------X;X;Make a Rubberband BoxX;RBOX SCRNDL SETC_0BOX_SV C}OPY12BOX_LP ROVER HBOX_X MOVPBBOX_LP2 CK_MOVE HBOX_MV" CK_OPT, HBOX_TR6BOX_X COPY21@ !F_ROVLJ}X;TBOX_TRQSTRIG0^ HBOX_LP2h SETTRGr !BOX_SV|BOX_MV MOVCRS MOVPTX; QTOPXPDRX QBOTYPDRY} DRAWIT;;line 1 QBOTXPDRX QTOPYPDRY DRAWIT;;line 2 QBOTYPPTY QBOTXPDRX& QBOTY0PDRY: }DRAWIT;;line 3D QBOTXNPPTXX QTOPYbPPTYl QBOTXvPDRX QBOTYPDRY DRAWIT;;line 4 QTOPXPPTX QTO}PYPPTY !BOX_TRX;X;Do Rubberband RaysX;RRAYS SCRNDL SETC_0 COPY12  ROVER HRAY_X  MOVPB*}RAY_SV COPY124RAY_LP2 CK_MOVE> HRAY_MVH CK_OPTR HRAY_TR\RAY_X COPY21f !F_ROVLpX;zRAY_TRQSTRIG0 H}RAY_LP2 !RAY_SVRAY_MV MOVCRS MOVPT QBOTXPDRX QBOTYPDRY DRAWIT !RAY_TRX;X;Move Current }X,Y to TOPX,YX;MOVPTQPTX PTOPXQPTY$ PTOPY. ERASE_FIG8 !THEPLTBX;LX;Move Start X,Y to BOTX,YVX;`}MOVPBQPTXj PBOTXtQPTY~ PBOTY:X;!X;This checks keys/stick for aX;movement.X;CK_MOVEQSTICK0R>} HCK_MVOQCHR> CK_MVO:X;X;These are the Reflection X;Routines.X; REFHQ>( HREFR2 REFVQ>< H}REFRF REFBQ>PREFRRREFLAGZ HREFCdQ>nX;xREFC5;;save new# QREFLAG FREFNT?T? T?;;*8?75} HREFWQ> HREFQ REFWQ>REFQPL38 REFN7 PREFLAG FREFO"T?,T?6T?@?JQ>T PL38^ RE}FO:hX;rX;This is the REFLECTED PLOT| X;Routine. It uses REFLAG to"X;see how to reflect the point.X;THEPLT PLO}TTR $REFLAGFREFO;;X=00HTRV;;X<>1X;X;HorizontalX; KPTXY SETHZT PLOTTR !GPTXYX; X;Ve}rtical&X;0TRV0:HTRB;;X<>2DTV1 KPTXYN TV2Q>X;bSPTYlPPTYv PLOTTR !GPTXYX;X;Four Quadrant Re}flectionX;TRB TV1;;X=3QPTX5QPTY5 SETHZT PLOTTR TV27PPTY 7PPTX :*X;4X;Set} up a Horizontal Refl.>X;HSETHZTQ>R;\SPTXfPPTXp:zX;X;Store PTX and PTYX;KPTXYQPTXPKPXQP}TYPKPY:X;X;Restore PTX and PTYX;GPTXYQKPXPPTXQKPY PPTY : X;$ X;This sets up Cursor #0. }X;8 SETC_0QCRSNB PCRSAVL SETC_02Q>V PCRSN` !DEFPLRj X;t X;Rubberband Ellipse/Circle~ X; ELLIPS SCRNDL }SETC_0 ELL_SAV SETC_02 COPY12 ELL_LP ROVER HELL_X QPTX PXCEN QPTY PYCEN CLRPM ELL_LP2 CK_}MOVE HELL_MV CK_OPT HELL_TR ELL_X COPY21( !F_ROVL2 X;< ELL_TRQSTRIG0F HELL_LP2P SETTRGZ !ELL_SAVd }X;n ELL_MV MOVCRSx QPTX 5;;save Xpos PCX QPTY 5;;save Ypos PCY X; X;Find Radius X; QCX ; SXC}EN EMC3 QXCEN ; SCX MC3PXRAD" R>?, DMZ16 Q>>@ HMC3J MZ1;T QCY^ SYCENh EMC4r QYCEN| ; SCY} MC4PYRAD QYCEN , OYRAD R> DYR_GT Q> YR_GTPBOTY QYCEN ; SYRAD R> DYR_ER Q> Y}R_ERPTOPY&  ERASE_FIG0 QYRAD: R>?D DMZ2N Q>>X PYRADb MZ2Q>l PINDXv PPF PDF Q> PQUAD CST$QU}AD QCVT9 PVC QCHT9 PHC %INDX $YRAD QSINES8 MULT $VC HYAD PMRA QYCEN ;* SMRA4 EYLES}> DNXTH YAD,R OYCEN\ YLESPCYf Q>@p ;z SINDX ? $XRAD QSINES8 MULT $HC HXAD PMRA QXCEN }; SMRA EXLES NXTQ> PPF !CST1XAD, OXCEN$ XLESPCX.$PF8HCDRBQCXLPPTXVQCY`PPTYj T}HEPLTt#PF~ !CST1 CDRQCXPDRXQCYPDRY DRAWITQDRXPPTXQDRYPPTY CST1QDFFID1 "IN}DX ICST4 "DF #INDX !CST2( ID1#INDX2 QINDX<R>AF HCST4P#DFZ "INDXdCST2"QUADn ICST4x CST37}PPTY7PPTX !ELL_TR CST4!CSTX;CVT ===CHT ===X;MULTPSINV&MRAQ>PMR}B$> MU2VSINVDMU1",,OMRA6 MU1W?@WMRBJ0TIMU2^:hX;rX;Sine Table|X;SINES == ==} =&=,=2=8 >=D=J=P=V \=b=h=m=s y=~=== ==== ==== ====} ==== ==== ==== ==== ==== X;X;Test OPTION Key&X;}0CK_OPTQCONSOL:R>D:NX;XX;Koala Compact RoutinebX;lCOMSAV$>vKSSQKDATA9 PK_HEAD90IKSS$>}KSSAQGR7CLR9PK_HEAD 90 IKSSAX;$>  Q>5K_HEAD PICBAH9 Q>4K_HEAD PICBAL9 Q> PICBLL9 }Q>* PICBLH94X;> Q>5SCREENHPMHIR Q>4SCREEN\PMLOf Q>5COMBUFp PTMP2z Q>4COMBUF PTMP1Q>PACL}PACH PEFLGX; CACQMLOPKPQMHI PKPX;X;Get type of DataX;%> 'UNIQUE Q@MLO7$PBYT.}38 Q@MLO7BRBYTLFCABVQ>` PUNIQUEj"BYTt CAB%>~ Q@MLO7 $UNIQUE HUNIQRBYT HEDUN CAD CMI}DCAB QUNIQUE FEDUN HUDUNX; UNIQRBYT FUDUNPBYT !CADX; UDUN;(QMLO2S><PMLOFQMHIP}S>ZPMHId EDUNQMLOnPKQxQMHI PKQX;X;Figure out how manyX;QKQ;SKPPACL QKQ }SKPPACHQACHFPAX; LONGQ> LUNIQUE" TMI,QACH6 TMI@QACLJ PB TMIT!PD^ PAQACLh GL}ONGr LUNIQUE|!PBX;PDQUNIQUE HDIFFQBYT TMI GETP2 !CKENDX; DIFFQKPPMLO QKPP}MHIX; DIF2%> Q@MLO7 TMI&"ACL0QACL:R>D HDIFF3N"ACHXDIFF3QACLb HMORElQACHv FWDONE M}ORE CMI !DIF2WDONE GETP2CKENDQEFLG HFINIS!CACX; FINIS$>  QTMP1; S>4K_HEAD PICBLL9P}COMBUF  QTMP2  S>5K_HEAD PICBLH9 PCOMBUF* FINIQ> 4$> > PICCOM9H !CIOVRX;\WRITQ>4SCREENfPS}CRp Q>5SCREENz PSCR Q>4COMBUF PSCR2 Q>5COMBUF PSCR2 MOVE_SCQ>PK_HEAD FFINIX;X;}Increment TMP1X;TMIP@TMP17 #TMP1HTT #TMP2 TTQTMP2$R>5COMBUF . ETOBIG8:B TOBIG7L7V !WRI}T`X;jX;Increment MEM PNTRtX;~ CMI#MLOHCM1#MHIQMHIR>5SCREEN HCM1Q> PEFLG;:C}M1,:X;X;Get 2nd Pointer X; GETP2QKQPMLO( QKQ2PMHI<:FX;PX;Koala HeaderZX;dKDATA ==}==n =====(==x ======== ====X;PX;Koala HeaderZX;dKDATA ==Qd"X;-----------------------------nX;xX;The Enlarge RoutineX;for the BBK ArtistX;X;by: Bryan SchappelX;}"X;-----------------------------X;"X;This routine will REFRESH theX;screen and the actual sizeX;'slider'.X;}REFRESH$TOPY QTOPXV?V? RR_QUAD FR_ADD1" PR_QUAD, CLR_TOP6 QR_QUAD@R_ADD1PSCRJ,T OYLO9^PMLOh} QYHI9rO>|PMHI Q>5REALSZ PSCR Q>4GR0SCR PSCR2 Q>5GR0SCR PSCR2$>;;20 linesREF_LP%> }REF_L2Q@MLO7 P@SCR7 P@SCR271 IREF_L2 QSCR2,O> & PSCR20QMLO:,DO>(NPMLOXQMHIbO>l}PMHIvQSCR,O>(PSCR QSCRO> PSCR0 IREF_LP:X;#X;This gets the X,Y of the point }X;to plot.X;GET_XYQTOPX ,OCRX PPTX* QTOPY4,>OCRYHPPTYR:\X;f X;This erases the GR7+ SliderpX };zCLR_TOPQ>?CLR_T1PREALSZ8PREALSZ8PREALSZ8PREALSZ83 HCLR_T1:X;X;This is t }he EnlargerX;NLARGE COPY12 CLR_TOP SCRNDL3Q> PTOPX$ PTOPY. PR_QUAD8Q>BPCRXLV?VPCRY`  }Q>4GR3DLj PSDLSTLt Q>5GR3DL~PSDLSTLQ>  PPCOLR0Q> PSIZEP0 LGPLR REFRESH !NL_R1NL_LOOP }QSTICK0$>NL_1RSTCKP9 FNL_MV0 INL_1 $>QCHR>,( FNL_UPP2NL_2RSTKEY9< FNL_MVF0P INL_2 }Z QCONSOLdR>n HNL_TRx QPCOLR0,O>M> PPCOLR0 SWTC !NL_LOOPNL_UPP MOV_UPP !NL_LOOPX;} NL_MVAT?> QNL_TAB9PNL_JMPQNL_TAB9PNL_JMP"NL_JMP , F_ROVL6NL_R1 GET_XY@ DO_X}YPJX;TNL_OK REFRESH^ LGPLRhNL_TR CK_OPTr HNL_T|:NL_TQSTRIG0 HNL_WAIT GET_XY THEPLT REFRE}SHNL_WAIT WAIT WAIT !NL_LOOPX; X;This draws the large playerX;LGPLR CLRPMQCRXT?T?,&O>},0 PHPOSP0:QCRYDT?NT?XT?b,lO>/v?Q>@ DO_PLRQ> DO_PLRQ>@X;DO_PLR$>DO_PL2P}PLR0830 IDO_PL2:X;X;Move Nlarge Up X;NL_UP"CRY  INLUL*#CRY4 QTOPY> FNLULH "TOPYR NLUL:\}X;fX;Move Nlarge DownpX;zNL_DN#CRYQCRYR> DNLUL"CRY GET_XYQPTYR> FNLUL #TOPY H}NLULX;X;Move Nlarge LeftX; NL_LF"CRX INLUL #CRX$ QTOPX. FNLUL8 ;B S>L PTOPXV Q>` PCRXj HN}LULt X;~ X;Move Nlarge Right X; NL_RT#CRX QCRX R>( DNLUL "CRX GET_XY QPTX R> FNLUL QTOPX} , O> PTOPX Q>$ PCRX( HNLUL2 X;< X;Move Up/RightF X;P NL_D1 NL_UPZ !NL_RTd X;n X;Move Up/Leftx X;} NL_D2 NL_UP !NL_LF X; X;Move Down/Right X; NL_D3 NL_DN !NL_RT X; X;Move Down/Left X; NL_D4 NL_}DN !NL_LF X; X;Movement Table X; NL_TAB NL_RT" NL_LF, NL_UP6 NL_DN@ NL_D1J NL_D3T NL_D2^ NL}_D4h X;r X;Show Text Direction| X; ST_DIR%T_DIR QTXT_DIR8 PTXT_PRM : X; X;Invert Text Parameter X; }T_UNINVERT TXT_PRM= $DIR_NM QDIR_TAB9 > %> TUN_1QTXT_PRM9 L> PTXT_PRM9 2& 10 ITUN_1: :D X};N !X;Set Parameters for Text ModeX X;b TEXT_P SETNARl Q>4DL_TXTv PSDLSTL Q>5DL_TXT PSDLSTL %> INS_P}RM ST_DIR Q> PPC_MODE PDIR_NM INVERT TXT_PRM= TEXT_P2%>;;20 chars #TEXT? INPUT QMYBUF R}>EOL FTEXT_P2 %> TEXT_P3QMYBUF8* PTEXT_BUF84 1> ITEXT_P3H X;R X;Get Rotation\ X;f T_UNp GT_DIRQSTRI}G0z FG_N1 QSTICK0 $> R>;;right? FG_GIR R> ;;left? HG_14 $> HG_GIR G_14R>;;up? HG_13 $>} HG_GIR G_13R>  HGT_DIR$>G_GIR&T_DIR$ ST_DIR. HGT_DIR8X;BG_N1#DIR_NM;;#2L G_NUMV #DIR_N }M`X;jX;Get a NumbertX;~G_NUM T_UN SETTRGQ> PINDR %>NROW$> QDIR_NMR> HG_NZ1$!}>G_NZ'INDR%> Q@INDR7 ?G_NMLQSTRIG0 FGT_NUM( QSTICK02 R>;;up?< HGN_13F3P)>dZ DG_SHOd%"}>n HG_SHOxX; GN_13R>  HG_NML1)> EG_SHO%>cX; G_SHOC5 NUM_ICDPTXT_PRM9C P#}TXT_PRM9 &SAVEX SWTC $SAVEX"7,?6 !G_NML@ GT_NUMCJ%>T P@INDR7^:hX;rX;Get Offset of current char|$}X;into Users Character Set.X;Return addr in INDR.X;:GET_OFF%> 'I_CHAR 'INDR ASC2ICR>I:GM%} "I_CHARM> :GMPINDR TINDR UINDR TINDR UINDR TINDR& UINDR0 QINDR:,D O>5TXSETN P&}INDRX:bX;lX;This Calculates the X,YvX;of a rotated Point.X;ROTATE$T_DIR;;orient HRT_1, QTOPX O'}:XP_LO PX_LO Q:XP_HIO> PX_HI; QTOPY S:YP_LO PY_LO Q> S:YP_HI  PY_HI*:4X;> RT_10H H(}RT_2R;\ QTOPXf S:YP_LOp PX_LOzQ> S:YP_HI PX_HI; QTOPY S:XP_LO PY_LOQ> S:XP_HI PY_HI)}:X; RT_20 HRT_3; QTOPX S:XP_LO$ PX_LO.Q>8 S:XP_HIB PX_HIL,V QTOPY` O:YP_LOj PY_LOt Q*}:YP_HI~O> PY_HI:X; RT_3, QTOPX O:YP_LO PX_LO Q:YP_HIO> PX_HI, QTOPY O:XP_LO  P+}Y_LO Q:XP_HIO>( PY_HI2:<X;F!X;Multiply Routine (TEXT ONLY)PX;Z:T_MULPMLOd'MHInQ>x PIND2 PIND,}2 T_MUL,QMLO OIND2 PIND2Q> OIND2 PIND20 HT_MUL; QIND2S> PIND2 QIND2-}S>" PIND2,;6 QIND2@SMHIJ PIND2T?^ QIND2hS>r PIND2|>:X;X;Get the 'bit' to plot..}X;:GETBIT&COUNT 'COUNT&BUFQ> PBUF$> :ROL_LP,UBUF UBUF0 H:ROL_LP%>&/} :Y_LOOP30;:QBUFD SCOUNTNPBUFX QBUFbS>l PBUFv I:Y_LOOP&BUF:X;X;This is The MAIN TE0}XT DRAW X;LOOP.X;TEXT_DRAWQ> PC_POSX;T_MAIN#C_POS %C_POSQTEXT_BUF8 R>EOL HNOT_TEOL  :;1};later!X;  NOT_TEOL :GET_OFF;;CSET off* QNCOL4 P:COLCNT>:T_DEC":COLCNTH $:COLCNTR(>\ FT_MAINf %NCOLp2} :GETBITz ':BITNUM QNCOL $C_POS %:COLCNT :T_MUL ':XP_LO &:XP_HIQ> P:ROWCNT:T_INC#:ROWCNT3} $:ROWCNT (NROW F:T_DEC %NROW :GETBIT ':BYTENUM %:BYTENUM$Q@INDR7;;get byte.NI_CHAR;;make inverse84}%:BITNUM;;get bit #BMB_MASK8;;mask it offLFNO_PLTT;;if 0, no plot.V QNROW`$>j %:ROWCNTt :T_MUL~ ':YP_LO5} &:YP_HI ROTATE $X_LO %Y_LO QX_HI HNO_PLTT QY_HI HNO_PLTT'PTY&PTX THEPLTNO_PLTT!:T_6}INCX; X;Bit mask TableX;B_MASK ===( = =@=2X;<!X;This allows the user to plotFX;their choosen7} text.PX;ZPLT_TEXT SCRNDLd SETC_0nPT_ROV ROVERx HPT_LEVQPTX PTOPX5;;save X CoordQPTY5;;save Y8} Coord PTOPY TEXT_DRAW7PPTY7PPTX !PT_ROV PT_LEV:X;X;This makes a binary # into X;INTERNAL 9}CODE 3 byte chars."X;, X;EXIT:6X; A=ones digit@X; Y=tens DigitJX; KQ=hundredsTX;^NUM_ICD%>h'KQr:} NUM_HR>d| DNUM_T;S>d#KQ HNUM_H NUM_T5QKQL>PKQ7NUM_T1R>  DNUM_O;S> 3;} HNUM_T1 NUM_OL>&50C:L>D?N7X:bX;UM_T5QKQL>PKQ7NUM_T1R>  DNUM_O;S> 37:;QAANDENSTASECMASECSIFILSIQNEXSEFBYSECNUBY"=}  00-- DISKMEND -- by Justin Wilder, Sep">}t 1985g6-@1;@@,;,;@,;,96.NE6-A@Q6-A(]@g A%-A6"?}A""!% {+AA:(@Z(@ diskmend commands{(@"@}($(@ret GET NEXT SECTOR@(@ SECTOR # + 1\(@ SECTOR # - 1z(@"A}rEDISPLAY SECTOR(@2k(@dIRECTORY LIST@(@uNDELETE/CLOSE FILE`(@tRACE SECTOR CHAINk"B}(@<j(@ mODIFY LINKS>(@cHANGE SECTOR BYTES_(@wRITE SECTOR TO DSKj(@FY(@"C} pRINT SCREEN>(@hELP (COMMAND MENU)Y(@ qUIT DISKMENDP.'*( ĠҠ ."D}Z0A@dS +AA@(ŠҠ FILE I(,S A n + APx"E}1 &A(6-%A('6.Y1 A ! 6-6-6.N! A 0+Ap1 &A(6-%A"F}('6.Y1 A # 6-%6-6.N# A 0-A) !6-&A(6.Y) A + 6-"G}&6-&A(!6.N+ A 4H@04PA 6-6-4DA@4UA"H}4TA@ 4QA A/AAH9 B=+@ )!A4MA "I} 4W A  @"4CA ,4RA@6$ A06-A:,6-$6.N@;  )!1( "J}ңԠƠ 1 TO ; @J0 6-6-4N! AP0- Get SectorT AP @^a+A"K}A3( DENSITY SECTORL(BYTE# HEX CHARa-- Print Sector SRr-%A'@|# >$6-?:A"L}6<, # =!A`* Ai2(٠ :6-%=$8"A`)"A$-( à 56"M}-%8$. @#( Ԡ +6-%.$/ A0/( =  Ԡ = 74( Š = F:A"N},  = F:A,7$6-?:AA<&,$-+6-A`6---- Directory List?AA?("O}%ţ ͠ ' 6-% AP'( SECTOR ;-A!A3@(F:, +(16-"P}; @p ( @@7-%@%@B(>:F:,,F p( F:%@,%AV$F:%@,"Q}l@@&4(F:%,%AV$F:%@,F@@3O6-F:,[!A'b(Dl A )!@c("R}A"!@)(*$!@$P:'@,$(-O/(6-% /F:@, @A`!Ag6-"S} @* ( PUSH TO CONTINUE* @&DAi6-?:Ai,"(6-2 AD-- Drive Status0h"T}6.SINGLE6-A (6-A(76-F:AF,C!A'O6-A@^6.ENHANCEDh A:(!@16-AV"U}(6.DOUBLEDBAp@'Aq@d1 AB-- Read SectorN1!(ΧԠĠ '6-1 @"V}X$bGAi!ArAS3As@G-- Disk Access SRl6-?:A<<,$v2B:,!@"W}7<,4$) AP26.=:, 6- $* 6--@B:,*-- Hex to DecG6-@:7,,%!@G* @X="X}6-$@%&@HG A;!@d* @q16-$@%&@U; A@26-6 ' $"Y}   $K(̠ԡ%A 7AAA AK @ AP-- Change BytesLA"Z}@ !-@L(&MOVE CURSOR, CHANGE LINE, PUSH -)(!OR ENTER COMMAND OR SECTOR NUMBER-@B:, @"[}$AA*6-6-@!@ @E6.7@, AP+6.7@,E )!%A A *-"\}%@*B:, @A O6.7@,+7@<@,4 EA!%@:7@,,O A+ AP"]}* AV+A!% )  A 4Y6-) @* A049 APA@d9-- Wri"^}te sector to disk>/+( WRITE SECTOR  TO DISK (Y/N)/H, 0Y"(SECTOR NOT WRITTEN, ApRVAp@"_}'AqA(1 A5L(ˠŠҡV Ap\(SECTOR WRITTENfAA$pa+"`}AA# A C6-F:%,%AV$F:%@,I6-a(} ҠzQ(FILE  ,-%@%"a}@7(>:F:,,; Q( START SECTOR=% 6- A A0%6-%aF:A,(7( FILE # MISMATCH @"b} SECTOR Q( CHECK PREV SEC LINKSW6-a @A P' "(END6-6-' @I(( FILE S"c}IZE ERROR9( SECTORS INSTEAD OF ?6-I @/F:A %,&@/(PARTIAL SECTOR?F:@,!@"d}5( PUSH TO CONTINUE? @$ (,!F:@,!@5$( A ^)( FILE NUMBER or TO AB"e}ORT-7 A0@6-A:,^ )!@cAs6-P:'@,"6-%AaD6-@$+&$@,%A!"f}N APWF:, i( NO FILE# s A ,)6-F:%@,%AV$F:%@,,$1 APA@ 1"g}-- Modify LinksS1 @)!AY* Ai)")!A#I(ϠӠϠS @9&( NEW NEXT SECTOR #"h} or *94Apg A06-A:,D @)!AY* Ai))!A#](ĠҠg"i} A@$ 6-.C( NEW FILE # or #*496-F:A,C A8D A06-A:,& )!@c:("j}ĠŠD ApBD6-P:'AV,,A%&AV$DA%@$%L A  @VY "k}A3"AAD6-@@&@ $N:F:@,,Y(Ǡ`C'6-F:@,%AV$F:@,&;"l}-%@$C-j-6.>:F:%,,3-6.>:@:,&A(,t3`*2{)4|A`~'6.>:@:,%@2,"m}3_'6.. 67,. 3 )AA A) @-#( ҠӠԠ- Ap"n}Q+A@d# A )6-I(ǯ FILE Q6.B: 6-6- A# A0:F:A"o},"A0O 6- A-A%$@;A%E APO A@ 6. A@ 6-%"p}AD 6- A$6-P:'AV,6%&AV$D%@P @:, AP(7( COPY TO ANOTHER"q} DISK :(@6-F6-P @))104,141,254,2,104,170,104,72,24,105**253,133,214,138,105,3,133,215,142,72''3,"r}169,11,141,66,3,104,160,254,132 %%216,48,2,177,214,72,74,74,74,74&&160,1,132,217,16,3,104,41,15,201%%10,144,2,105,"s}6,105,48,32,86,228())198,217,16,238,169,32,32,86,228,2302**216,48,247,164,216,192,8,144,210,160<((0,152,72,177,214,2"t}01,155,208,2,169F((46,32,86,228,104,168,200,192,8,144P**236,142,254,2,96,104,104,104,170,189Z%%251,3,72,41,3,133,213"u},104,74,74d))133,203,189,252,3,133,212,189,253,3n))133,204,96,104,133,213,169,83,141,2x((3,32,83,228,136,132,212,96,"v}104,104$$141,9,3,104,141,8,3,104,141,11##3,104,141,10,3,169,49,141,0,3##169,7,141,6,3,32,89,228,172,3""3,136,"w}132,212,132,213,96,ENDD:DISKMEND.BAS##3,104,141,10,3,169,49,141,0,3##169,7,141,6,3,32,89,228,172,3""3,136, -VWWXNURIFRAMTODLISADDRESNUMBEIOCADRHADRLNUMHNUMLDABQWERTZ&y} &z} A0%6&{}-@'-@%6-76-+-@0?P7 A%(" O:,!6-" @2) &|}6-$6-E:,$)6-G:,$$?<;"/,%AA&+@%,;6-@F##/%AA&+@&}}%,P   Ape""ĠǠΠf""ĠǠΠg""ĠǠ&~}Πh""ĠǠΠh((AUTO SCALING...&6-4-@P-@0?P\ A&}%b!h6-   Ann*160-310 IS 'AS IS' SUBROUTINE SUPPLIED BY Ԡ TO SAVE A&} GR.24 SCREEN TO DISK.16-@6-@ 12*@$$-AA.*F:,2 &}6-F:A,$AV%%6-F:A`,%AV$F:Aa, 6-6-&%@6-@$'6-A2%'&}%@%@6-P:'AV,6-&$AV%@%@6-P:'AV,6-&AV&}$"%@%@ ,6-?:C:hhhLV,<,6'@$@*"49 SECOND SCREEN DUMP"J.@.&}@@P:T8((@>:@',A>:@,8-%@9^06.>:,!67A,.067@&},.hI6-?:A6<:@',K>:A,>:,F I$rq%2A@@9-@&}A= _2qAdAU|66-F:B2y,"@,6-%@6 A&}"@ A`"@ A0 F:Ad,@(A6- Apj!`;@I,&};@I,;@I,;@I,;@I,;@ ,;A,;Ai,j+@$;%6-F:@,%F:@,$AV;6&}-%@@$A@ #A`!-@Ah%"<67B:,%@,.>:,@ --@@a")A5%&}-  +@1AADCA @U-((ŠҧӠҠҡ&}=%(NUMBER OF FORMULA'S TO ENTER)=!@Ap-@b(#(}٠κ&(&}b(7INPUT FORMULA AS R=IN TERMS OF 'D' WHERE 'D'=THETA( FORMULA #  A%!AY=67B:,&}%@,.:RETURNC(}U-@c(A%f(o(CONT-AB@&+AB&}@'AY@4+ m(U(J}PLEASE CHOOSE |1] AUTOMATIC SCALING (ABS. BOUNDS) |2] MANUAL SETTING.Ym"@&}A`&"((ABSOLUTE ENDPOINTS"0c 6.D:(c(OINPUT TITLE OF SAVED SCREEN (IF SAVED) IN FORM&}AT (8 CHARACTERS MAX): 4 6. D:SCREEN.MPD-67B:,%@,.#"@- A0NW +@$A@X&}1A@XCA M@W @ X9"@ Ap# Ap/6-A09 @0b"&}@!,Au@U3/AAAgE,AA@UW/AuAga A0u-@@6-A0%&} @0l Apv 6- $w6-@$+'@,$x6-'@$y6-'@$C-@ A&}%,B:,!@9C6.7@<@9,u6-6-+&@,) A- ?,AAQ/AA&}c,A@2u/AA{6-@6-@)6.3 A?6-@M6.W A&}c6-@q6.{ Aw6-6-@06.ABS.ENDPOINTS:: AC6.=:,^6-+@&B:,,'@&}j6-@t Aw$ 6-?:C:,<<