8L2C)pJJJJ IH(ȱH:=IH[H`@HcH  $ +   I/H`JLNGȄBȄF aK  haaFF  mJm# KKJ UJ )J ۈ) ;J3ȱJFȱJGJKaȄM  aaNNJFLGJL L? &PRODOS `DaElH$?EGvѶK+`L HHLy XP LM ŠϠĠӠS)*+,+`F)) (*=GJFjJJA QE'+ '== `@ STSP8QSS8 m P o R(8RSQUIRTY*' @&PRODOS#B+# 8-SQUIRT.SYSTEM!6# *SQUIRT.SYSTEM+ +# 6)BASIC.SYS2(+# } *SQUIRT.HLPFW%%TXT.FILESI+#GRAPHICS+#+APLSOFT.FILES+#*FONTS' !##L| Ly Lv Ӡֲ㮬f"f"C# "&i01h+# )#M8 % ) L"g# )L"@, )7(P0 ( @A p 8 )# f" +#$#0 &$#0 %# )ȍX#f"P# )ɂH#*# ) %)0I0hx H( , %Щ ߜ)#j )f 8'  )ɀ  !"#$%&'())4,- U JNT) )#L# ) f"` #K)D/ #3 &#'#(# ## iL X"0#"0ӠĠŠŠҠ`#{% F%Z]``e-.!0SB}/BiBB}/ gF/0k) y! ʿ  L##  m# m# J LB Qר)ɨ] оȱ ̀𩠙 i ȴ O Ѻ G \ ɟU ʿ V@$ A ɛL e '8 Jm ʈ0 o 0堠خ YYZLYLY@뿭`d 8#@8` %MNЩUMߩ  L 5   8 0 8  `0 / X   / &; Pb 8 )0`ddd1&… (n&Dž (\%T&Ln()8= (J 8(&(& >((ʎ1΋&΋&&3223 ')Д )18&"m11 2H22h2舌&&12H)M0 h1020I20h2 (`L%12 `\(#L  98" :ȱ)ɀ  ) ( ` (Xp< @ ( )m ( (. (( M (i  ``) '(j21 & &!` (&&(i)&)( CdBdDdFdGE ) ) ))) ))&$ >(,&& … >(ŅL 'JJJJ`Ϡ(8`&  LdDž )Pi)) () ))&-&),&͉&) ))&0)У` )ɥ`HZJ)  )zh %J)֭)n)}11J  2 (8`rȱȱȱ0\aȱeek+ȱ+ȱ++ȱ++ȱ+ *+ + *`L@+ + * L) *Ș8e` ,$`ee` `+ H++ d+` w+ H+ d+`hh8`8`+++`}+`e`H)hJJ+0JJ)` (< ( < *? ( < (? ( < (? ( <*? * **? *? *? ( < *? ( <x0HH1HH "M,Z(") \i ᘏi᫫8(`hhh8k-<ʆ>Q=?BC8 é&'112`آ <B*IBGF08Lé'+8H <,``h(`@ڍL3HEVhEhH)IWHPHHHAHHHLaVEWLӿ``LKL`BLL ޥޥޥޥޥޥޥޥޥޥޥޥޥޥޥ(C)APPLE xLLM Mh@8nЍLޭ 0J @,,L=#P׽8H  ): e: y8鰕:Jjjj<)yאi8i;i(*=>hPם8`;Zx3Q`_^]ba`0h)ύh0HHHH " ׍hhhhhddhh .hh8`JIMJAYKERRY&MIKEhh@ihAiH(ؠȱ@JJJJq@)@ݔoȱ@Hȱ@Ah@@\e J) ހL JiB ހJ) @xNHHژHL(  ްʠx@BEOD  ް(`( C)CJJJlBJ,~@~@}J@` ߩ%S @ ~`E hhhߺ0 h߈ ߐ( ߐ ߐ   ޕ0 HϭߍLпllll8` Q)T 22D) ɺi )?  }   ސ `@Hȱ@IױHXATȱH ɯȩ׍̰5H)/@a)_ .0 : a8@`,뎰ڮЕ` } L ` r@>q)I38 kם`K8`@Nȱ@O@ eIiNȽבN)/ȩ/N`@Z VH:JjjjhA "'KI؍0JHi 뎣`ةC8` @)0 e/N0 *ڽ0 ti` <; 뮣ٝ٘ 0 W,0 .H hȑNWȮّNW8`ٍّN0NN` G8`F@ 0 $ LK8`X YI8`FHGH GF܌ עFܽܕF芝ܝ 밸XY Z܅I m[IHHyHȘI L`ܞ @@ @Ю׍q)mיqʈ@ȱ@ȱ@lmq)5qI0ܢܽ n'c* 7FG (ef Ld܅Ip mcIH`  k0no cqHlFmG 밳lm 밨e%܈b" T)Ia)܍p*܍c'ܮ( 4 䭐 $H %HFFHGHG 됬`R8` )` cHq` _9܅IHHqqЍq  @`8 ` ͫ% ΫQ8`܅I `n܍op L8D`F` EgH)HFȍlHGm %܍&܍ܢ8* J8` }L ܝ\)I 'ܝX`d8ipFnGo`d܅IH3H ( )ȱH`ά8ceHI dSBX0k }ٙiٙgFleʈ L`8m0`,0H hi MȽٍ0dGF8yאFG  }$0 *01 E8`100 < 0̩ 谾 }谹`12)1`0`Ȏi i ٞU`)8`` U _G *A)H ܝʈh٭0٭)ܝ٭*ܝ٥F٥G٭'ܝ٭(ܝ`)َ 8ʈ` 0ٝ)i `8`O 鍮 dMمFمG ; ή0FG뮣0 ٭٭ٽ8`H8`  , 8`  `ٽJJJJ`Hͮhk)&NjNjNjN. 1Eͮ d8٭ u'Nۙ۰ڙک `Z8` 1# ` . . .8۰*J۩ ٰ:`JJJJ9 d묣͸ dٍ0 u  `H8` `ٍyٍiB0H0FGy h0`FG `ϩBxEdD0C ް(`(8`ؑ@`M8`8@ؐʈI묤)8 La LةC8`؍)@ fi)8wJ ] ؅F LW) y+%J(^ FإGؐ,` JHIH I%FHGI ԭJjHIH@=IؙJJ ?9 -4HIHI`JKJK`FHIG ( Ȣ؝؈JL)eKM`)` J Jͽ $0 άJFȱJL8`GBJ 6 FإG`BH 6FإG`,H hHB؅F  ؅GxDE؍00C ް(`(8` d뀧J  ! dH   9ؙ` r@ }P8`K8`B8` j؈qJJJJح) ) )Ю ЪG.F $ ᭔ع+ؠ H  0h8` 䮣ٽ ٬ؠ@` ( j )8`)i п` H h)N$% LL L e L  pJ )@NJOK iKK IJ v JФ̭JjHFIH HIGxKE ް((H vhH h8`8@ȭ@L쬤8NNO 8 ؍JL`QʱLN0MOMEKP.MEKӱL-M O,up莿eNNO(`JNKOL / P L8 a ?ؑJ`L@ȱ@ `@Nȱ@O`؝}I轘ؐ` Gؽ؝ G  G؝؈` ` H 1h)N@ ; L  $ )dJ S ) iH h8` ) )حJjIHIH؊ PLJʱNLMO MІMEKݸP$MEK O,u PeNNO (` C  7 2JHIHI؊ aL-  ` ? H ع H ؙ؊IhHIhH a iع `  عiعi` )؍0CGHFHdBdFdGx ް(8hFhG`@4͔ L @Ai ׭2` . 0#ع؍0 <讣)`.@+ i 8` L )0 )p )@ f ) yʩ ؝j0lm 밫 }nolmFG w嬤؍؍؝ ؝ q) q )حk͸ d`H@h`h``N8`  ) ⬤Ȣ؝@ݼ@ʈL KIJHȢݼ ^魼)Jn 8  ؍ ؍ 2H8 ع)JJJJ Ȣ؝I؈ h(8H  h(8Hh(`ؑ@`@ȱ@ ` r@@8Wq ^鮣ٍٍٍHٍ8hqJJJJq2)q@` r%I -) 20@q)N8` @LL =@ ȹP8` i` ם0 B )( ȹ`8m8m@8` G8`F } r }P⭏)@N8`q)@J טyרםqq)׍q 밑 LȹL@ȅH@IL,0` rD }ﭩ: SH-)N 0 $q)@kP8` 2  dHqefe h`yٙ٭yٙ٩`H 1BFG 3%&N    ܮ `J HH hh` 0@ tL)lL S_Xܝ ݝ0ȩFG  0` ܅F݅G ` \ Sͬ 밽܅F݅G ` \) S$ L`LHH hFhG܍ݍ 8 `FHGH  hGhF`ݹܙ݊`@Bɼ>K@J5 V9X(K VXXK تKo`V8`no` "on VI9XX`)&HJJJh`OeNeO࿰ V9XГO`@ȭ@` ON <NJKO`?>х=d<<>=?ILBJ DքEdFCJJJJ֍nH}IC J֭֬։/)DI@+8`@Ae C!$|1OIIJK,-NOPQRSu' @   !"#$ Ԡͭ HB-9F 3"aɿ LLB Nϰ H  @h( L Lj  @`eLJCAB@=?<>=?<>CAB@?A` 1 L  <>`ڢF]PL8i m L   6< L  BLRAM' hLDL ֽ ְ& .Vӈ  JJJJH 8h Ei 8EX`'8`jӍWӥC)p> pӥCYӍY 轊( ( ӈBV ( ӭp0 \BkJ ՠ@iӦ> Ӑi'j:ZH i@ioZZH h ѐȭnWǥBJ Ӱ8XӦ>` Ր+>*L o % ԽYӍZӭoӝY 3Ѡ шNZ`rZLkӭZӍq8r7IZӐiZkӐk 8 ѹs ӭq ѹ| kн Z)*>>` @ $(,048<@DHLPTX\`dh 0ުlptx| 0($ p,&"op8`kkV꽌ɪɖxlӽ*kӽ-kәmMlӈ 꽌ɪ`8` ZԍsԍԍԍԥDEԌ8TԌ8WpԌqԠ 7I꽌ɪ꽌ɭ蠪:љVE:8`]ѾV]H)]ѾV]ҙ)]ѾT]ҙ)] >8hUD` ԝY`> Hh݌(`HCJJJJ)*h`8LխӅ:HhHh Ո թ թ ՘VYҪҦ>:Y)Ң`;R?AJ;<ȰY)Ң`Y?)Ң`ȐҰ ;HhHh=Ң`Hh `Hh`DEiȍ0֌18V%֌&8V֌֠)HV)hH)hHIhդD?DRIDQD)҅; ?JDQD]ՎՎՎ`MY pӭY)p  ӭp`C)`BFGV 8``L(/MY.WORK/BASIC.CLEAR 4L;8/` `ego f n(L L: (.CMDkdha+ # nrdcddpqt$q0c)crorcc0enib ` r )pqn  Эht X l)lhЏL2  9 X [ J  dgdshUj" !# wgjdg. wg'g%s wghg%s w h ɍ1Ɋɋɉɛ kʽ/`L2LY g Xȱl蝀igt 9 X   (L $ `dm &m &m &m &mlemmli`{g8s [t0{2H* Lh2  Xȱl i L `κºú` L(/MY.WORK/BASIC.CLEAR 4L;8/` `ego f n(L L: (.CMDkdha+ # nrdcddpqt$q0c)crorcc0enib ` r )pqn  Эht X l)lhЏL2  9 X [ J  dgdshUj" !# wgjdg. wg'g%s wghg%s w h ɍ1Ɋɋɉɛ kʽ/`L2LY g Xȱl蝀igt 9 X   (L $ `dm &m &m &m &mlemmli`{g8s [t0{2H* Lh2  Xȱl i L `κºú` \GQ H ?h8 S / ?8 V []bj \ ^e_f a  i  \ 2EL 0 8`0)H ""H"h8 ek)E/8`HZ; [:HZ"h+h`8h`/Ȁ򈘍` L   `H0H"hHHH HHH "hpHH"VHH; [*i)    +hhHH"""8h/ ʎ S` ?8 r 0 88`  Can't run next application.ProDOS Error = $ Please insert the disk: Accept: M Cancel: Esc  89LୂX΍Xo) o Ȅ ȄȄȄ  /  ǔ ʎL   Ő J [ LPL  Ɣ : Ȋ J [% Pȱ 0' [ȄȄ   0+! L}  L% ${w  $ ${k 0A ${w  $C${`  eᨢ&  *,-./0 9Li eɕ 0L&ɈB . L  " "80 L%ɛ |L J, L7 d /`),/ȱLQ0ٮԩ i i ȱLc  ȱr 1 @h  @VLFL#{  89L$L ff%L H / /蹁  /ȱ h ($ L/ L Ȁ  ([$0p (LlL XG% P :ҠǠŠŮŠԍL 80 L Ȁ `hhH% h)  L   L) r8`  ȑ)# i ȑ      d rL %L,  L,a0 ,` J  $i${ ȱ A d ,a0 J  $i${   d ҥ eᨢ`80 ` `e `e`Ԑ 8(H h${`ݲ` þ 䠭>d snَstdcɯϠ .î  WRTp P QL C=??>ȄȄȄ ɎLL ɪFɡɠ$F{ { V.E{!:ɠ ʘ鈱 ɠʎ{詠 ! %#  Ј␀鈈 LO @,% ; :ۭa b),ɛ:ɋ"Ɋ$p0# # L# X#` L1LɊ ɍ 8f`ɉ8{i{8` "L0 4{%">>,) )  ʊe%% $ > ).%# e!{L説{Jx,U(,T( #ʆ%   :L  `堛JAJAKà ʼ"i  Ȅ` ` hh6H7H|67 @ X % "$ȘH h%%$ "H $h%% iݰ  /h7h6LH >0 e()) $20I$ i $h`p` DKLG ASTARTUP$#   /ύXY k 6L?ò !`670! = ***)<JJH !h穖tp% !Z/݀!!' ! !5).莀/ ! ! ! ! !! !="  !!!!I򭨻LYL 8!9 詍`  !/ 13456789:;<=>?@ABCDEà РHڢ06h` v97L75v^a ?/( va?L0LLɍ$?`?a ɍɥAHڢ60hHڢ46h`,C bL ɍ b ,S0 @ lLޭBDEF޾ p ޾ p($ذ v (0 :( L?ԦʚLeةީa s  lL b,FLg,DL,C0$3 >@ Ɉ 3ɾꩈL(3ɾ;Ƀ :B94 l% bʽ  ՚,S` H $݅3`(l8L3LX>(Ƀ,`3,G0]ɾ g` H`پ_پ p _پ׾`>( p۾m׾) W)ʩ@`ɾ>(O仩 puȾ ɾ-O c־Jjjj廝-滝. `O>0O v POپھ p &H־Ǿh۰8L黭־Jjjj-廽.滭ɾ)Ⱦ8廰  OLӜ ΤLLX>(F껽껝껩`ѻ־ؾپھ׾` bɄ KDEF vLl v lL0 bKɍKL?`  vLl@3 @LtJ)s@J b  l`H? wh?,E30ɍФ3 E3HD F3 Ʉ%h3 bM E  lLthɍLL3`3,A0s0% Ipn DpnI:L ؅3ط03LB8C933LΞAAJL ةޘг uv $ 8LƞaЌ>?@`>?@`B68`R K  仐LK ҟ ҟ g KK`JJJJ8`轇K)` #hhLJپھ pHJh` D!hgtp `tp8nnitpiͬtso8pinii>j?kͲ>pIiͪͲ l - `>i>?Ek?!>Q>>>ͭͮ `` \>ͭ ͮ `e>>?ͯ?>?Emn(>e>ȱ>e?>Q>ؠ> ie>>?`;=:<:<=;`ͪm;>:8o>oȑ>ppȑ>> :op` DKpn͆ @p;톻=po:i>?Ek?>Q>> L> \/ e>>?ͯ?ޱ>ȥj>>m>` im8injkiljoS (ٻ)ڻ$I2 U)VJ T)`lٻ8`a HbIJhjǾȾɾ p٭b=aݻIe f`8` ^P־ǾҾ,G0C =W)_``\"׾پӾؾھ pD`־ǾY׾ؾOW)ݩȾɾʾ pD`8`W)CB) 綰5W) |)W)@! pZ}ȾȾ󰹩 p` ^־ǾҾ,G 8`׾ؾ  p ۥs׾tؾE` ^ ( wо(־Ǿ,G 8`_`W)H־Jjjjh-һ.ӻ p̭ӻһ L Ǿܻ໎Ỡ ..8һӻ ໍݻۭ (һ8໪ӻỨmȾȾmɾɾʾiʾ` Lpl8l:/,s̝sƬƀ#(ZZV4G_0=( A P FjL\5p-e9ABSAVERIFYBLOADELETEBYECATALOGOPENWRITEXECREATEFRESTORENAMEBRUNLOCKCHAIN#FLUSHREADPOSITIONOMONPR#PREFIXCLOSEAPPEND]uDg `wŬ-⭚شb\=<{KyQM@@ -!S    !C- !ABELSDFRV@@ !$(19@EüϠž(+@ABCDEFGHIKLMNPSV     T[fouu~ՠٯ* PWN*]ĿNTz @n6VC/+A>@I5gN Oz @n[Dz @nd0,~z @`$仫@v$⩔,C[B?I>孓`仫6VtCicQĿUKqtVt Nʮq$6,⨁ K6, VtI=v!gNVt Vt  lg~T٤   LiLMTRLLLLL03껀ֻ)Dֻ `-@ֻ8`껀 ԠŬLLGHSQUIRT Squirt can navigate directories with ease and minimum keystrokes. Squirt can launch system, binary and applesoft programs. Squirt can view text, source and mousetext screen files. Squirt can view bitmap fonts. Squirt can view hi-res and dbl-hi-res graphics screens. Squirt can automatically recognize the difference between a binary graphics file, a binary text file, a binary program file and a binary font. The maximum size of a binary file that can load at $800 is $B2FF (45823 bytes). When viewing a dbl-hi-res graphics screen, and the screen does not look right, press Ctrl-A to switch Main and Aux screen memories. A binary file that has text may be recognized as a graphics screen file if the start address is $2000 or $4000 and the file size is $1FF8 or $2000. To view as a text file, save the file with a different file.size. TXT.FILESu#' +#' '*SQUIRT.SRCK2`+# I+FINDER.SCRNx+# }#I/LOAD.DIALOG.BOX{j+# }%I*MASTERMIND~+# +ILOGO+# }(I*SQUIRT.HLP#W%%I* if a basic file is selected, then load Basic.system and make the file * name part of the auto launch feature in Basic.system * If a text file, src file or mousetext file is selected, then display it * if a system file is selected, then load it @$2000 and launch it * if a directory is selected, then enter it and display its contents * if a binary file is selected then special case scenarios. * if load address = $2000 or $4000 and file length = $2000, $1FF8 or $4000 * then view it as a graphic * ifJLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuv& load address < 7 or > 8 then load Basic.system and save * filename in autolaunch * if load address = 7 or 8, then move loader to $300, load file * and launch it * Zero Page used * $0.5 - Read Block Parm * $6.7 - Dir Block address ptr ($2000) * $8.9 - File list adr ($3000) * $14.18 - Page info ptrs * $80.85 - Open Parm * $A1.A1 - Close Parm * $E0 - file counter * $E1 - page counter * $E2 - temp usage in Txt file display * $E3.E4 - temp ptr * $E8.E9 - Txt file display ptrs * $EA - Graphics flag * $EB.EF - End of File Parm * $F8.FF - Read Parm ORG $2000 SHT MSB ON LDX #$F LDY #0 FROM EQU *+2 ]LP LDA L1001,Y TO EQU *+2 STA $1000,Y INY BNE ]LP INC FROM INC TO DEX BNE ]LP STX $38 LDA #$10 STA $39 JMP $E000 ; initialize applesoft L1001 EQU * ORG $1000 L1000 LDA $C082 ; make sure ROM is in and not Pdos8 STA $C001 LDY #$16 LDA #0 STA $E1 ]LP STA $BF58,Y DEY BNE ]LP LDA #$CE STA $BF58 LDA #1 STA $BF6F lda #reset STA $3F2 LDA # NOTEMPTY LDY #$50 ; gets header block # from the first files parent ptr LDA ($6),Y ; will be block #0000 if new directory and is empty STA $F00 ; blk # of subdirectory header INY LDA ($6),Y STA $F01 ; blk # of subdirectory header LDA #4 STA $F02 LDA #$20 STA $F03 LDA #$E STA $F04 LDA $BF30 STA $01 LDA #$27 : # of bytes per entry STA $19 L108B JSR L1251 ; reset ptr @$2000 after reading in a new block LDA $4 LDY $5 STA $14 STY $15 LDY #2 LDA ($06),Y STA $04 ; Read Blk - Blk # lo INY STY $00 LDA ($06),Y STA $05 ; Read Blk - Blk # hi INY STY $06 ; for reading Dir entries at $2004 LDA #$D ; # of entries per Dir block STA $18 LDA #$11 STA $1A L10B4 LDY #$10 LDA ($6),Y BNE L10BC ; branch if filetype is also 0? * filetype zero is a NON file JSR L11C6 BCS L10D0 ; always L10BC JSR L11BB ; display another file name BCS L10D0 ; branch if a deleted file or subdirectory header DEC $E0 ; no more than 57 files per page BMI L10E8 L10D0 DEC $18 ; # of entries in each dir block BNE L10B4 LDA $04 ; Block # lo for Read Blk ORA $05 ; Block # hi for Read Blk BEQ L10E8 ; no more forward links PREVPAGE JSR $BF00 HEX 80 ; Read Block DW $0000 BEQ L108B ; branch if no error L10E5 JMP L119F ; jump to error routine PRTPATH LDX #L12B0-L1274 JSR L1226 ; prints PATH: LDX #0 ]lp LDA $0281,X JSR L1231 ; print the prefix INX CPX $280 BCC ]lp JMP L121A L10E8 LDA #0 TAY STA ($8),Y LDA #$15 STA $25 JSR $FD8E LDA #$9A ; Clear line cursor is on JSR $FDED LDA #$20 STA $24 STA $57B LDX #L1294-L1274 ; print "Page #" JSR L1226 LDX $E1 INX LDA #0 JSR $ED24 LDA $E1 BEQ FWDARW LDA #0 STA $24 STA $57B LDX #L1292-L1274 ; Print "Page Bkwd" JSR L1226 FWDARW LDA $18 ; counter for 57 files listed BNE MORLTR LDA $04 ; check for last file of last directory block ORA $05 BNE MORLTR DEC $18 ; force a #$FF if last file of the dir MORLTR LDA $18 ; LC - letter counter BMI LC ; branch if end of directory * $18 will equal #$FF if at the root block of the subdirectory * save block #, ptr address and file # of the last file listed for * future reference * one page of these 5 byte ptrs in memory will allow up to 51 pages of * file listings for a total of 51x57=2907 files in one directory LDA #$20 STA $24 STA $57B LDX #L1294-L1274 ; Print "Page# " JSR L1226 LDX $E1 INX LDA #0 JSR $ED24 LDA #$43 STA $24 STA $57B LDX #L1290-L1274 ; Print "Page Fwd" JSR L1226 LDA $6 STA $16 LDA $7 STA $17 INC $E1 LDA $E1 ; page # ASL ASL CLC ADC $E1 ; multiply by 5 DEC $E1 TAY LDX #0 ]LP LDA $14,X STA $F00,Y INY INX CPX #5 BCC ]LP LC LDX #L128B-L1274 LDA #$16 JSR L1223 ; print "Press a letter or ESC" L10F8 JSR L123C ; get a key press CMP #$91 ; Ctrl-Q BNE CHKRT JSR $FB39 JMP $FF69 JSR $BF00 HEX 65 DW BYEPARM BYEPARM DFB 4 DS 6 CHKRT CMP #$95 BNE CHKLFT LDA $18 BMI L10F8 ; branch if end of directory INC $E1 JMP COMMON CHKLFT CMP #$88 ; left arrow BNE CHKESC LDA $E1 ; counter for # of pages BEQ L10F8 ; branch if at first page of listed files DEC $E1 RELOAD JSR RELOAD2 ; get correct ptrs from $4.7 and $18 JSR $BF00 HEX 80 DW $0000 BCC *+5 JMP L119F LDA $2002 ; check for more directory blocks STA $04 ; Read Blk - Blk # lo LDA $2003 STA $05 ; Read Blk - Blk # hi COMMON LDA #3 STA $22 LDA #$8C JSR $FDED LDA #0 ; this will leave the cursor on the 3rd line STA $22 LDA #$C1 STA $1D LDA #$38 STA $E0 LDA #0 STA $8 LDA #$30 STA $9 LDA #$11 STA $1A JMP L10D0 CHKESC CMP #$9B ; ESC BNE PROCLTR JSR L111B ; back up one directory RESETPG LDA #0 STA $E1 JMP L1056 ; display directory PROCLTR STA $1E ; holds keypress value JSR L1245 ; reset buffer ptrs ($8.9 - $3000) LDX $280 BNE *+5 LDA #$12 ; for volumes HEX 2C LDA #$15 ; for files STA $1A L1108 LDA ($08),Y ; ($8.9 - $3000) - Y is always 0 BNE L1111 BELL JSR $FBDD ; Bell JMP L10F8 ; branch to Get Kepress L1111 CMP $1E ; Keypress value BEQ L1151 ; found entry to match keypress JSR L125B ; increment $8.9 by 18 bytes BEQ L1108 ; always L111B LDX $280 ; backs up one directory BEQ RTN1 ]lp LDA $0280,X DEX CMP #$2F BNE ]lp STX $0280 ; X = 0 when at root prefix RTN1 RTS * comes here if a directory is selected L112E AND #$F STA $1B ; name length LDX $280 ; length of prefix BNE *+5 LDY #1 HEX 2C LDY #5 LDA #$2F ]lp STA $0281,X ; add name to prefix INX INY LDA ($08),Y DEC $1B BPL ]lp STX $280 JMP RESETPG * comes here if entry found * an entry has the following info * letter, storage type, file type, 2 byte load address, filename length * and filename for a total of $15 bytes per entry L1151 LDY #1 LDA ($08),Y BMI L112E ; negative means a directory LDX $280 BEQ L112E * default load address is $2000 for all files except games that start * with $07FD and $0800 * graphics, text and src files, system files and when Basic.system is loaded LDA #0 LDX #$20 STA $FA ; address to load at STX $FB * set filename ptr for OPEN call CLC LDA $8 ADC #5 ; skip past letter, storage type and STA $81 ; filename length and binary load adr LDA $9 ADC #0 STA $82 * $83.84 - default buffer for OPEN is set at $0A00 * large binary files at $BB00 LDA #0 STA $83 STA $EA LDA #$A STA $84 INY LDA ($08),Y ; filetype TAX CPX #6 ; binary file BEQ *+5 JMP CHKBAS JSR CHKFONT JSR OPENIT LDY #3 ; get load address LDA ($8),Y STA $FA ; lo byte INY LDA ($8),Y STA $FB ; hi byte ADJBIN CMP #7 ; in case a $07FD load adr is needed BCC RELY3 ; Load Basic.system first CMP #9 BCC MOVLDR CMP #$20 BEQ CHKLNGTH CMP #$40 ; graphics loaded at $4000 BNE YESBIN LDA #$20 STA $FB * a binary file that loads at $2000 or $4000 comes here CHKLNGTH LDA $ED ; File length BNE CHKF8 LDA $EE CMP #$20 BEQ SETMODE CMP #$40 BNE YESBIN LDA #$C0 STA $EA BNE RLY CHKF8 CMP #$F8 ; not a graphics file so let Bas.sys load the BNE YESBIN ; binary file LDA $EE CMP #$1F BNE YESBIN SETMODE LDA #$80 STA $EA RLY JMP L1189 * Loader can load big binary games as long as it * does not extend past $BAFF MOVLDR LDY #MOVEND-L1188 ]LP LDA L1188,Y STA $300,Y DEY BPL ]LP STY $FC LDA #$B2 STA $FD JSR $BF00 HEX CC DW $000B ; CLOSEPARM LDA #$BB ; set OPEN buffer to $BB00 STA $84 STA $C000 LDA #$15 JSR $FDED JSR $FE93 LDA #0 STA $38 LDA #3 STA $39 LDA #$F0 STA $31E JMP $E000 * load Basic.system @$2000, then put the basic * or binary file's name into the autoload at the beginning CHKBAS CPX #$FC ; bas file BEQ CLOSE JMP OPEYIT RELY3 BCC CLOSE-2 ; only $300 loads come here YESBIN ldy #$f ]LP lda ($83),y ; the OPEN buffer at $A00 or $BB00 asl ror $1D ror $1C dey bpl ]LP lda $1C ora $1D beq jptxt ; 16 hi-bit off ascii bytes lda $1C and $1D cmp #$FF ; 16 hi-bit on ascii bytes bne *+5 jptxt jmp VIEWTXT LDX #$FC CLOSE TXA PHA JSR $BF00 HEX CC DW $000B ; CLOSEPARM * copies the volumename to $2C0 to append Basic.sys to it LDX #2 ]LP LDA $280,X STA $2C0,X CMP #$2F BEQ FWD3 INX CPX $280 BCC ]LP LDA #$2F BCS *+5 ; always FWD3 STX $2C0 STA $2C1 LDY #0 ]LP INX LDA BS,Y STA $2C0,X INY CPY #9 BCC ]LP STX $2C0 LDA #0 STA $FA LDA #$20 STA $FB LDX $280 LDA #$2F STA $281,X INX LDY #0 ; the actual filename starts at 6 LDA ($81),Y STA $1D ]LP INY LDA ($81),Y ; then copy the filename STA $281,X INX DEC $1D BNE ]LP STX $280 LDA #$15 JSR $FDED LDY #$C0 LDA #2 STY $81 ; for OPEN call for Basic.system STA $82 PLA TAX OPEYIT JSR OPENIT CPX #$FF ; system file? BEQ L1189 CPX #$FC ; aplsoft file so open Basic.system BEQ L1189 CPX #6 ; no binary files should fall through BEQ L1189 CPX #$B0 ; src file BEQ VIEWTXT CPX #4 ; text file BNE RETURN VIEWTXT JMP TXTDSP RETURN JSR $BF00 HEX CC DW $000B JMP L10F8 ; back to keypress * This gets moved to $300 to open a very large binary file @$7FD or $800 L1188 JSR $BF00 HEX C8 DW $0080 ; OpenParm BCS CLOSE2 LDA $85 ; REFnum for large binary file STA $F9 * Only a binary file needs to be loaded from $300 * A system file is loaded at $2000, Basic files and some Binary files * load Basic.system first * text, src and mousetext screen files also come here * and binary graphics and binary text are also loaded here L1189 JSR $BF00 HEX CA ; Read in file DW $00F8 * NOTE: CloseParm should also be in zero page as it may get * overwritten by a loaded program CLOSE2 PHP JSR $BF00 HEX CC ; Close DW $000B PLP relay1 BCS relay3 CHKBIN CPX #6 BNE CHKSYS BIT $EA BMI VIEWGR BVS VIEWGR LDA $FD CMP #$28 ; chk if BS is loaded BNE *+5 JMP CHKBAS2+7 ; copy filename and launch BS JMP ($00FA) ; only binary files that are loaded using the $300 ; routine comes here (either $7FD or $800) VIEWGR JMP VIEWHGR relay3 JSR $FF58 ; forced RTS TSX LDA $100,X CMP #3 BNE relay2 ; carry will be set since nothing can load under $300 LDA #$15 STA $25 JSR $FD8E LDA #LDER-L1188+$300 LDY #" HEX 0D L128B ASC "Press a letter | prev Dir | " ASC " Show Bin Start Adr" HEX 20 L1290 ASC "Page Fwd -" HEX 3E L1292 ASC "<- Page Bkw" HEX 64 L1294 ASC "Page#" HEX 20 L12B0 ASC "Path:" HEX 20 L12B6 ASC "Sy" HEX 73 L12B9 ASC "Bi" HEX 6E L12BC HEX 9B,8F ASC "XY" HEX 8E,A0,18 L12BF ASC "Ba" HEX 73 L12C2 ASC "Tx" HEX 74 L12C5 ASC "Cm" HEX 64 L12C6 ASC "Sr" HEX 63 L12C8 ASC "I/O Error" HEX 0D L12D4 ASC "Path not found" HEX 8D L12E3 ASC "Press a key" HEX 2E BS ASC "BASIC.SYS" OpenParm DFB 03 DW $280 ; filename DW $2000 ; buffer DFB 01 OnlineParm DFB 02 HEX 00 DW $2000 GetPfxParm DFB 1 DW $280 VIEWHGR STA $C057 STA $C052 STA $C054 BVS L2100 NOTDBL STA $C050 JSR L123C ; wait for keypress STA $C051 JMP RELOAD * copy screen to Aux memory L2100 STA $C000 LDA #$80 STA $E0 LDA #$20 STA $43 STA $3D LDA #$3F STA $3F LDY #$FF STY $3E INY STY $3C STY $42 SEC ; copy from main to Aux JSR $C311 LSR $43 LDA #$5F STA $3F JSR $FE2C ; copy $4000 of main to $2000 of main BIT $C05E BIT $C050 L2120 EQU * JSR L123C CMP #$81 ; Ctrl-A BEQ L2135 BIT $C05F BIT $C051 STA $C001 L2132 JMP RELOAD L2135 BIT $E0 BMI L214D ROR $E0 JMP L2100 L214D STA $C000 LSR $E0 ; copy the AUX $2000 bytes LDA #$20 ; back to Main first STA $43 STA $3D LDA #$3F STA $3F LDY #$FF STY $3E INY STY $3C STY $42 CLC ; copy from Aux to Main JSR $C311 LDA #$20 STA $43 LDA #$5F STA $3F LDA #$40 STA $3D LDY #$FF STY $3E INY STY $3C STY $42 SEC ; copy from Main to Aux JSR $C311 JMP L2120 TXTDSP equ * STX $E7 ; filetype of $B0 or $04 LSR $1F JSR $FC58 LDA $85 ; Ref # STA READPARM2+1 STA SETMARKPARM+1 JSR READFILE STY FLAG LDA ($E8),Y ORA #$80 CMP #$8E BNE NORMAL JMP MOUSETEXT NORMAL LDA ($E8),Y BNE *+5 JMP PAUSE ORA #$80 CMP #$AA BNE *+4 LSR $1F CMP #$A1 BCS NOT_CTRL CMP #$A0 BCC YESCTRL BIT $1F BPL NOT_CTRL LSR $1F LDX #8 CPX $57B BCC NOT_CTRL STX $57B BCS NOT_CTRL ; always YESCTRL JSR CTRL BCC PRINT2 BCS NEXT_BYTE NOT_CTRL LDX $57B INX CPX $21 BCC PRNT2 CMP #$A0 BEQ PRINT2 XDECR DEX YDECR TYA BNE DECRY DEC $E9 DECRY DEY LDA ($E8),Y ORA #$80 CMP #$A0 BCC YDECR BNE XDECR DEX STX $57B INX LDA #$A0 ]LP JSR $FDED INX CPX $21 BCC ]LP PRINT2 JSR $FDED LDX $25 INX INX CPX $23 BCC NEXT_BYTE STY $E3 TXA JSR PAUSE LDY $E3 CLC BCC NEXT_BYTE PRNT2 JSR $FDED NEXT_BYTE INY BNE NORMAL INC $E9 LDA $E9 CMP $E2 BCC NORMAL DEC $E9 STY $E3 LDY $E9 DEY DEY STY $E4 LDY #$F0 ; move the last 16 bytes to the previous page in case ]LP LDA ($E8),Y ; when word-wrap searches backwards and the previous STA ($E3),Y ; block is no longer in memory, so can't find begining INY ; of the word BNE ]LP JSR READFILE JMP NORMAL PAUSE BNE PAGEBTM LDA $E5 ORA #$40 HEX 2C PAGEBTM LDA #0 STA $E5 LDA #$16 STA $25 JSR $FD8E LDA #TYPEINSTR LDY #@D3L;n;ıĉDDĻN3L;;|DĸāđDDn3L3đđđĻ̱ϕđđđđĹ;b36.#3L3Do;mDDDDđ3Y4DDĭřDD33nđDDđijDDDđDtCgl;l; DDnđđđDőDDD3CM3oDDDDĪĭꑫDDDn3N;ΑDDDDđ3D"Ghl2N LY3đDđđđĤˆDDDDđD3DDDՑՑՑԕđDD 0L;n;DDDı̅đDDG] &*",*J>MG1;DđđđđđđđđܐĹ;nDđđĐāđDDD3 DL*H3L;nđđDđđđ0n2*("H2L;@ĿĪĭ֑f;n;đđġĸāđDB7@D ;l;N;n;đđđDn;N;#(3H:|x];ΑՑՑՑԕݑ;n;đݧ֑ꑫĪ̑̑̓;n;lsn3L;l;n;n;n;n;n;;n;n;n;n;n3n;n;N*f/V,CsLO;n;n;n;nDn;n;N3;L0n3n;DĹāԑ␢DDDn;Ñ݂ݧڀЖȳij2n$3LM;n;đıĉDDđn3HL;;|DđđĐāđDDDn3nsđDD̰΅đđđ*D9;]"%#2L3Do;lDDDDDđ33N3DD둴ĕĭęDD3nDDDDđDĻ̑đtBvl;HA&_<;ND1DnđđđёDDD33DDDDЖꀫDDDnC3N;ΑDDDDDđ1D"Gsm2nlRG3 LLDDđđđĢĢġDDDDđ2Q3DDđ֑ꑫĪĭđDD4L;l;ΑDDDđđDDG] DL",* VqBD ;DđđđɉđđđđĹ;nDāԑDDD3(DH*#L;nđđDđđđ0n*,"H3z_k/WUWZUUUUUU%*Uzi_kuU/UuCu**" uUuU_/D"(**U_WuUuU}uu?UuW_)ujZUUU**$PUuUu!%/}W*Ui%i%V_*u~WZ}_i**Z**UU}UZUWu_~u?PU**Zj*}UZU"XiUu#"""B/UUUUUU~U)TZ%UU%UUUui_uuuW/WPu~}_k/U+WU}ZU}**UDD*H/"_UU+uu }UUUUUUUUuUzZUuu UUUUUUUUUUUU|UUzU_uUuWW%?k+UkUUZWUiz}/}}uU%uUiUUUUUUUUU~U_UUUUUUUUUUUU)_U/_UWuuU}}/?zZUUu~*/}W %kUWu_}_UUUUUU%UhUUUUUUUUUUzW~UUUUWU}iu>p__P$QW/?*j%**UWT|z_WUUUUV}Uz|uU*WUi}iUUUUz_Z}kUhD*uiAEUu}*"}P*W_UUuUT+""u_WUUU}/WWzu_W/WU)u***UUUU*ju}ZUU+_}UUi_j(TiuUW% (k_u_U?Uu}_*Z+%UUU*V*}"XA%WUWW_%WZ_}+UjU%jzi/u} U_)***UUZ}%UWUzUW*?U}*****U*ZH"DQUWUUV_"H"Hju/UUUUUU~UTZUZUU*UUUVpU_k_zu?ZUT}__k/WUkUUZU}}*_!H}@ !"Q /~+//}uUUUUUUUU/U%u%UUUUUUUUUUUU|WzW_uU_/?VHkUUZUUj%} j U*p*ijUiUUUUUUUWU~U}uUW}UUUUUUUUUUUU__UW_?u}}_UZUUu~_zi$ zU}Z_U_UUUUUUVUuU_})UUUU}UUUUzUU~UUUUuWu}ku>uU}j R_}%_*j*W*}ZWVU~"PW_W%_WUUUU_}?/)uU}uU%WUi}kUUUUZ_u~k*BZCE}* VzW%}__Uz>""Pu_WUUU}/}_Wu?_W_WUuU***UZUUUZZUuUUuWUUT_/* *AuUW?U"(W_Wuzk_Uu}**UUUU*"pi}UuUH"u%Wp}iUjZV*jpkWuV/*U**U*ZB_W_UWU_W uk%?UU%**VUUU }H"%ku+UD"""HR_Wu%UUUUUU~*TUVZU*VUUUiPuk_uuUz~ut?_i/WUkUk%UU}_j! @%}"H}PUZ}+?_~Z?UUUUUUUU~%/)/UUUUUUUUUUUUU_Wz_u_W}u}u_WD@UUP}UjV*uU}_ UVu)UVUUUUUUU?U}zzVTUUUUUUUUUUUUU_UUU_}u}_W%Uui_VZUu}UuUWUZ}Z=/_W_UUUuUU+U}u?UUUUUUUzUUVUUUUWWu}ku~U}kZ@U%u? h ZUZ}/U="__W%UUUU}?+ZUWUiWUjUUU_}UhUUUQE_W%*(~}U}UU>U""U_WUUU}%_}_k_W_WUU***VUUUUZzUUWuW%W|_** UAuW?U (*z?_WuUzi?u}Uu**}*UUU%U)"tUUWUu?u_!T%zj%UUUVpUW_~)U*U*jZA_WUUUW?/uk}UU_*VU}UjU"tQuWUV+""UzWu%VUUUUU~U_}?T%VU*%UU*%U*u_uuZ_?%~Wz_E?jU}/WUkW_}_U~WPUE~!D?_Uu+iuj)u VUUUUUUUUZjU_U_i/UUUUUUU%UUUUjUUZW_u_W_iZ/U*}E*QUUpUUV_}_}Zj}*ZU/_uUVUUUUUUWUU~*UjUUUUUUUUUUUUU_UUUu_UV*UuuUuZU} *%}u}*~uW}_W_UUUU}zUUj }UUUUUUUZ}uVUUUUUWZ~u}C$UU*u+j }U}i_kU"}}_W%UUUUuk?/UWUiWUUUiU_}ZZ@iZQUU?*JU?*"~u}U}U%u""}/_WuUU}u_}/U?_W_WU}*"**UUUU*}Uz}/kUWW%W~_Z*Zi%*UW=u@%"***P_Wuu}_kuu}U__)*V_UUU**"pV}u=uZ"H%V*UUUUV*?W/=%U*jZ**UU)UUUk/}PuC_WU}j**UUUiU)JzAUU H""H}ZW_u*jUUUUU~UUW_}%jU*U%*UU*U%UWu?_u_ZWuW_Uu/ jWUiW}uVu_j+u}$W_}}_}D"Ti_/+UiUV+pU)UWUUUUUUUU%kU~VUW}/UUUUUUUUUUUUiU}%W_u}UZU%**))uPUUpUUVU_VZTu_U*Wu%UVUUUUUUUU_}/}Z_+_UUUUUUUUUUUU}_UUUu%VuiuZU_W**jU%}*}PU_W_UUUU)U*u*UUUUZUUVVUUU}UkUVuZ}_ZJUUUZBP}Z}U_"|_}V_UUUUU%WUu/WUkWUUUUU}_**}UU_kpuuQ*?_+**h_u}U/U"D" |__WuUU}uW}%}_W_UW%"**UUUU*h%*tU/UuUUWUUV%/U=) **U _Wuu}_UWu_z~U_%)*iUUU%*}"tUU+_+UU/?VUVUUU~*WUV*ZV**ZU%*}_UU~_}uuV}W_WUU)UUUZW*Z*UU)U)!""H/WUuZVUUUUU~ZUWuU*UZiUUUUUVEu=_uuu)WW*Uu%tuWWUi_U/@V_/}}Z)u+%}*Z%}WWUUUUUUUUU?UVU_}}/UUUUUUUUUUUUAUU%_UW}W%uUuW_Z_UzWuVuUj_j W_}UUUUUUUUu}%W*U*U?uUUUUUUUUUU}uUu}_UUUu%__}uuAZ_W)_**hUU/ @uW_W_UUUUUuUuZUUUUUUZUUi}VUUUUukUV~_QJ}uWzW((z*}uU}Uj"@W_}UUUU_~/}U/WUkW?%UUUUUU%jZ*ZUizUQZWW_)**VZu}U/ "Ph}_WuU_}uWuWu_?_UuW%**VUUUU*iW!piuW_z_UW__WUV%(*)>*=(****UuW_WuUWUp}U%*Z*uWUU*j*"tU%W_+UO!"_VUVUUU~Z}ui*)U)*UU)ZW~__uUu}UPu~}/W_UU_UUU%*UW UD!""TU_kZVUUUUUUUU_)UiZ*VUUUV%_}_uu_)V_ZUzZu}zkuWWUiU*B?}}u@ @}_Uu_)*~_| _?_/WWUUUUUUUUU>UiU}UUUUUUUUUUUUAuU/_UW_}}Uu/UUzUUVWU~u @_}uWiUVUUUUUUu}_WZWU}uZUUUUUUUUUUUuUu}_UUUUWz*U~Tz_jP)_}_Uj/ZUU__PT}?_W_UUUU}uW}$* }_UuU*}Ui}UUUUUuuW*VzT/|QJ}UWz_)Tu?*WzV/AP"W_}UUUU_W}%u?U/WUkuUUUUUUU)*UWu@iz}UQZk**"*z}u}U/_+*@B~_Wu}_UW}__?_WUuWU*UVUUU%+"TA}_}U%/_W?%**jUi/V)?*U_U j%U}z_uUUUtWU}Z*VUUU**W"xU_UUW D"H"+__UUUUUU~UVhZVU*UU%ZV_uu_z u}}_W_UUuZVU}_***UUU)}E"""u}ZWZjUUZUUiUU*Z/iUiZ%UUZVU_uuU_iU%UU}zz?}_kUUWUi}UZ_B?}UPZOVZW_)+-U}*R*********T*5************@+Wj/j*/*?-Jz~//~Wxk"~**z/*K5+!Pj*`U?******/***R*}u/ ************}+zkj~/~k~?*K}UW4kzK?uR+??}^/>z}?5******kW>-z*t****/*****Rk*Jk****jTU^-W^+zk*k+Uj/!z~~?UR/xWjz+***K-zWk/uWK/>/+z?**+?****-zRT*_*~/5UKh+WkT@!*-j~/_/uP~BDR*j*>zjzkK}*zjzzk*jzR******~UUj jR?R? z~*UUD?+zt*k@@D@*?j*?/~-?/kkRWa}u*j/4-_R***RkWkRD zk-> +// *k/k?*+-**5KTU_>+-4*UUJU5R ?~j*//j_/k'}~zu**?UUET*++**?D*~*U"DD"T+***4*J*}R*-+*4-+**?j/z*/~K5Rtu*jz*RJU*kUU+RU@` BDzh}*//R5R**4******+***/*************W?j~RkUk"j**z~*>/?5x+Uu5k??*********^WJ-j*5************}**kj~*kWR~??kUW*+*Kk+-!RWkz~zR*******~*k/? ***/*****Wk*Kk+***j4?_%j +z*kk/KkWu/?Rjz****K?z~Rkkz+z**??*****j/>zT-?z`~W?/@!*~-~>*5R~@D/j*>z*zk/uz//zjzu**z/UU5***~*U*?~-~*+/z>z?/TRDR?tzu*TDU@(zj*~~}kkWkRWu}u**?TU~-+**RU5Dkz~*/kz*~~?-J*TUK?a*?/k+**UUUU-** kj*/~zu/~'z}u**?*UUUU+Uk/~ $z~jPJzBDD*_+*****JW*} R*R**T-**TR?~j/k*U~?~5h*jk*jz>/J-*+U-$ ? t/t/ DB~}_/+}+Wz********z5*R/+*********** //j~*~u}_?D`z*z>*^}u5/K`/T_U5K??*******j*JW*R~z+************-+*tj~zj*k*}/+*?>//*"+*U~5*//!}>//~*4*****T?z~4?-?*******/?*Jk+***j*5_?5UK>~WA/kW5~z_J~jjz****t?z}?U *+z+z**?*****~jKz_R~xj/kR?WA**?j**KjBDB~j*>z>z?~W*}jzt*jz?*UU5*****~ ?>*k*zz>z>/KUQAU?/ju->DD +zj//zk/kR~uRWa*u*j?KUkR4***U}/D4>}/?$/???*TRTRKz+}URKUJUU-J-J~jj//~Rjz/z}u*j?zUUKR**/4/4RD }*P~/DDDzj5*****JW+-z *J***U***4*~/zj///~R_/aj}>k*jW~z5R*~U $/j!z DD/>R*}jUkz~z-*******RU*k?x*+*********** /jj~z+/+*Rj B**z>*^Kk+?W >?*A?-?_*******k*jU*W_ ************-+*tk****kzz*/?~*5R?J/*+*5~/UU~*~***-k/kj4***+/~-j5*Uk***j/***/?*^k+***jz)z_?5k ?zU/***z?5%D~/ktjz+***j?}U~*+zj**-T***~>z>z>*} z~*jRkRDA?*>k+z^ tBDDj~j**z*~+~W*zjzt*j?/UUU*****~z /j/?R/kzzz >zUU@UJ(?z*u}>UU}j/??/}kW!*u*jzKU5/+***5?%$/jz~PUkj'B~W_*5U**J/k}?zJ*4-TU+RU**z~/uj//?z~}/~4zu**?*TUKR**jKzj$ z*T"DDD uU*****JW*-**-*U*T-+*J-+*k}j///~z~UU/t~}_>k*j/>/T-jU?~~`A $Dp}>Wu?_?*Tz-********^*t4**z+*******+***J*z~jjz*z~5/5H%**?z^*>/J*?Wk/4uz~R?K********~-JWjU************U?*tk**>*kz-t/T*+*/!W/*(+*5//UUT-++W_zk5jz*****R/?*Jz(**j***/>*_k+***t*hz^W+kz +zT?*/?zj~BD`?+jz+***~z}u*jzj**-****j*U~z?*>*?/~Uz~*~-kk-DQ/+*>k+z?%uB$D j*+z*z~+?W*-jzt**/?UUU-****5R~// /uz>Rz*K*z/TU**U-_-?*5}*EUU~*j/?~kW5*uz*~4UK4**R/%D_/??*+/~"DhWk_R+***JWu}+}5*U*JU5**}uj//+~?/~hzt*j?*KRUU****z>U" *Uj/BDBD(*~z~K**R**JW**k4/Kz5*+*U-**5*+*~}j//~/~/U/>*_j**z+/K*t_?Wz(!/('">jk*WTP*U~z-********k*JK/~?+*************zj+?/>U-+-?~W z**?*^~^//*/k?K**********45~j-***********R+*5k****kzU-kKWz//**+*tzzUUK*?*+/+'~?jz*****-~/k_-z****>/^k_******tz^~+/jU~*~/KP/>*4/*+JDD>_*z****/k?zuzk*j-****4jKU5~W? // zzkxk~UDj/?+*?"uB$Dtj*+z>z+?/*jzt*j/UTU-***RkWU" +z?R*??*~zakzW*-J*5}U-/+z+P U@EP4-jWj//?z*j/K*u**j+U5*+***kW!D j}~Rk*?* DD -kKRJ***Juz^z+UT*UU**Kxkz+j//+~/_>//_?hzt*jz>-4U*z*jRKPTU*+P*"DDDj}z~//J*****JW*R*k!R+R******J*j*?-j//W?}R/+*//k~*>*k>*k z WjzUti/"++~?R}5R~*5z********zt(J?z*+5************z**j~?*5U~/t~U*R/_*J/j@R4?+******z/?_UT}~U+**********"+*5k***zkzkR~*W***t?}k/T*j/~kktzjz*****//j-4*jz****>>+_****/zk^W_/zk/zUk/+z/?+^zDD*z**>*~zk_Wuz5?zk*~U+****~/U*J-+?P/~ z~*}~?UDQ~/?+zkuRDT 5j*+z*k/WWRt}t**/UTU*4***+zW$*>k *~zt*RJ*P+}U-WT-+RUUUU@-t/j*/kz~j+*u**k/UTU**RUzu$ kz~k/+$Dz~xU*JR**JW4z5-*U+**UTPz_~j/+/z5~/~_?it*j?*-*U*U-~*RDDD>/t//J*******R*4U*R*UU***J*a*Rj//Wj?}K*jR*z~'?Wzkz~*>/jk}/Uz?W **j/ |j?R>K}_/j}j5}z*********J-**~54************z+zj~*++z/RW*R+/JzT/ z z/??K******z?zj*~z**/W***********R?z5k****jz/kJR~J*z**t?KkWAU**+jtUj/+z-jz*****//k*/KU /**+?*>+?*****zRK/ (~/ @k-kz*K+RTDDxz*z>*>/~zk?*/}zk*~R******~?U+* 5?(? z~/zkK- D??+zk*jBKEBKz_j*?zj~R?j/R/Rh}t**zTUT****-R$z?>P/? R/k>-UUU**zAz?}kU?5R -TURUU j*/k//??/jzu**+RTTU*~/**U}*D /j/~~WkGDD"~}~4*****JWJz/T*T-**5U*_j/zjR//?tt*j?*kUJ**TUUU***U" DD"+Rj/WJ*******RKU~+**R4-5**UJ*h/kRj//kR?**~Rk~R*/?R~**z~*>?/+R~TzU/)z>~R~~*>Ģ萌ο萌̳̳̳̳̳̿萌̳̳̳̿萌ȣ̣ēƑ목ڀ̳տєĀđđđāđĐđđıՀԀͳ̰̳̳πՀЗĢԕ腄Ѐο腄̳̳̳̳̳̳̳ĕı̿腄đđđ恀̳̳腄̻̻̻̻̻̻̻̻̻̻̻̻ȣ̲á몪̓Ƒij葁đđāđĐđđđ߀ׯ׏Ԁճ̳̳̀ЖĢđ³밀̳̳̳̳̳̳̳̳̳̳̳Ѐο밀̳̳̳̿밀āđđđ̳̳̱밀đđđđđđđđđđđđȣ̣暼恫ꪀ̛ēij̳듄đđđđĐđđđՕկՏ̪̳̳ԀՀĢγ萌̳̳̳̳̳̳̳̳̳̳̳տ萌͵dz̿萌̀Đ晦̳̳̳̳̱̳̀̓萌ȣȣ̙ƕڌ́ijij̳̳̰̳̳̳ՊՕկՀЫԳ̳̳տĢγ년̳̿년䀀đę̟ĕ̳̿년̀ę時ꀀĕđğ년̳̳̳̳̳̳̳̳̳̳̳̳ȢȣƑ恫̀̀đij™時𕧞𕊀ާާп̀γ谀󀀀̳̿谀̳đѕ̳̳̿̕谀́đꀀ谀đđđđđđđđđđđđđřđĀ̳̀³̰̳̳󀀀𫀀̳̳̳̳̳‘đꅄγ腄Օ̳̿腄ıđđ̳̳̿腄ȢȲ̲đđđđđāđǐֳ̳̿賔āđđđāđĐăЕՀԥՀժ̳³̰̳̳̳̳̳̳̳̳̳谀γ谀ę摀đ̱ο谀돀̳̳̳̿谀đđđđđđđđđđđđȣȣđđđđ몗̵ֳ̳̿赔ĀđđđāđĐijՀեՀՀՅԳ̰̳̳̏ݿئ怀晀ئđđđđđЁئđƙƙ䁀Ǎң՜ꪪئđđđđđꀀתЀĀ뭫ئ怀Ꙣئđđđđđ̰ئđƑ䁀̳̳⯣ޜ뀀♢ئđđđđđ ԯ믁ꀀהЀр뭀РЀԀئ懀ꈪئđđđđđئ怢đƙƙ䁀̳̳գތߪ뀀昦đđđđđ׊ԀЀ怀뭀ЀЀئꩦ̳ئđđđđđ怀̳̳̳Հ恀ئđƙƙ䁀̳̳̳đđđđđ怀׊ꅁꭀ􀊀٦􀊀⅀ئ􀊀đđđđđ所̳̳̳Շئ􀊀ęƙƁȳ̴ʫ˜⍀􀦀Յđđđđđ̳̳̳̳̳̳̳Āπ꽀߀υ怀뭀怀ƀƀ٦ן򈠈ئđđđđāؿ怢đđđđāê̢̳Ԍխ怀怀ƙ晟Ā׀Հ⅀怀뭀ЀЀ怀Ԁئ樆ئęđƁՀئđđđđā☀怪ՀՀՀՀʅԀƙ柁Ā怀怀怄뭀ЀԀ怀杴̳̳Ȟئđđđđđ׀ئ怢đƙƙ䁀г̢̳Ձئđđđđđ᪞ҀՀĀ뭁ހƀƀ뭀Ԁ$" <@;"0D;"a"""x"8D@3 2LnD3|p]D:n "a"!"""a"?#"@dt~G`|~CdL***L""""@3***3@""a"p p"D8n; !on;DL3L3L3L3L3L3L3L3L3L3L3L3L3L"`~"L3L3 "|#L`;"B@t~p ""0D;DDD8D}dtDtwDD1 "` |" " ""UU?UU?`D ""L3""LD@""H@3;""3QU>UDGL";d ** H""AI`H""D""" D0""D `$" _|@p??`;"0@@;"a""~"p""DL"@3h;D8Dg?]0n"a"!"0H"a"? dtD|/*DL***@3"""L***3L""""p""D;n;`|5jn8nDL"`>"" L3L3""|#@;"~Uu?pU~~?""30DsD?xDnd?DtgDD! " 9~ p0 """PUUU?UU`""L3L3L3L3L3L3L3L3L3L3L3L3L3L"" @ @!D~2""B;""0TTUcU| "8F**0pL""cG`C""D ""L3 ""D> n@/rwH?`n;" @n """ `"n3 ""2Lh;D9D?/_NDn0 "a"!"3 "a"?#p"2dtDpDdL(** 3 ""2L(**L""""p"3D;n;@@yon@LDDDDDDDDDDDD3"`"3L""| B8""xUu~""0Dc8Dt8DWdDtWDD1 "" @ts@x"" ""UUU UUA GF1" BL3L3L3L3L3L3L3L3L3L3L3L3L3L ""8D@||?0""Bl;"" @TU>UDG" ***3L""x`@""D""3L""D 8n/`HcOn;n"(nA"""!""n@3"""Lh;9D?__DD3H"a" """?#p"d?Dx`W*DdH***L"@3***H""""p?"|0Da;;0`" 0"h DDDDDDDDDDDDD3@"`"L3 "|""U@@""0DCtDt8DdDtDD1 """0ASv~ """" UUUacUU|2"!B@""@@"n "" UU`U|0 "n @(*3L"""3DD""" L3L3"0D ;n;g``[`c@}n n"n@"a"a"!"nL"""@3D9D?_CDD3""a"~""@L ""?#p"dDDDd****@3 2L****L """"p?"|Dl;0'Apx";n@DDDD@DDDDDDDD2H"`>"$p2"|"H""U~G`H""0DdDt8Dd8dtDE1 0"""3@\y?L"""LUTU>UDGG"#H@**** ""|jpc| "n@""LPU1UDqG""n@@ "B q@ ""2Dn"""L3L3 b";DF ;;g@o;}4^nn"a"a"!x"@hL""| 3DD9D'X|wx@*3 """"L*L2"""?#p" dDD@xW3**** 3L3L3L(*** L "`""""p?"|hns@@x??U";n@G|DxaOD?D|D0 L"`~"3QL"|"3@""2@UpT|? ""@OC|D?~Eytd|E0 0"""vq|H"" ""@TTUcU|" L****@@@"" xqy| ""nD""@UeU@|@""Dn3H| "B|@""0D"""p";D*@3LH `8o@_sUq?1 \D@3"""!x"L2""~!" tD9D?w|DdL *2"""" *H3""a"~#p"Lxn~O`;D3L0"`"""""| h;n gz":n0DODDD8!HtDtDD1 "``G?L"|"2@""0UUe?`?L ""@DDDDDDDDDdDDD2 2""aD6D|pC"" 28"ATUU>UDGC"; x3****L~@""01~a|p ""D""3TEUDL""Dl3L "B~""0D8"""""x";D3L3L3L`"n@ @?s`D;2"""!x" 3 ""#"Ld?9G8~DdL**L"""3 *""a"|!p"@Dn;!cU n;D@3L3L3L3L3L3 0L3L3L3L3L3L2"`?"""|# h;n"B@@/*"n0D_DDD8D9DtDt?DD1 "`?@PN@""0@"" UU?~ "" DDDDDDDDD4DDD3""@CAs""L0;""UPUcU|H"; 2(***L@""2?~ ""D"""3UL""D0L "H"0D;"""""x":D`DD~?<~B{p~?PDXD|DDDDDw"ffvh/V;~O}~rwD|D|G@|DDfDD|OxDD" "!H_`q |:I.fPUU@DDDDUUDD|ODGD"w]W@ppyu]w "fffffffffffffDD`fDD]wD ?~@D&B\rr :H.:8: H""r "&`DD3"DDDD&* *p/(`pfDD`DDA BppDD@7D **,*"`BADAa|UUUf>ADwa<AD"DDf+"bfDDD!f`D~}@g|p~]wD]@D|D|@?DDw `DD]w (('|_}? |"wdDD|O@|D D|OD@" "" PUy "rH.dAUUDDD`UUUD?D@DGD"@w]W|,Tuw@ DDfffDDPwD|`x3DBNrr :xH.:89|H!"q "&fDD` DD&DDd* *| D D`fffffffffffffDDAx ~@DD]D** ' @8x`DDw`PUfAD`}_ID"DDD@DD d`Dv  {3a=t_O]wD@]@D|D|CDDv fDDf]w""HV|x~_}| ~ "p@@D|O@D@ @@D|O~DG"""H D_} ":I.@ UUUfDDfUUU@@D?D@DD"\w]W@u@`"""""""""""""DDdDDD`|ppxD&BGrr:"H.:8; H""s "&&DD&*X'fDDDfDa* **8"*`DDfffffffffffff@DDa?"?DD ]DDf***$ "H`fDD!wUED`AOD""@DDdDD"``Dw]  0 w`]wDv]D|D|G@D@Dp]DDDD`]x"~y}|}o_r "  D|ODDfdDD|O~DGD" |"?Z":I.UUU`DDTUU`DDDDD"]wX@0UU]f"""""""""""""DD@DD@DJ?pAD&BKrr:"H.:x? H""w "DhtX"`DDD`pD( **q >xDYD `DDd0?DD`]DD`**' DD!w]UxDD@``D""DDfff@D">y`DPw]`{e{ptw DvD|D|O@|D@Da]@DDDD"H|p~|_}|w r ""PDD|O?DDdDD|OxDGDd" ""H|@AO| ":I.PUUUffPUUUA fDDDDDDDf ]W  |1D]wf""""""""""""ADffDDAD p`ADfBIrr :"H.:x> H" "~ bDDxx@CADDatD***< cDYD>UUUUUDD&'~fDDpDD** "`DD!p]UDD GpgD "t@D`fD@Q"dD\\G={M}}#t ]DpD|D|G@|DD fDaADDf""a``~_}m? rr"TDD@DD`AA D?D|OxDGDa" "HH* rH.UUUUfffUUUUdDDDDDDD`p]DT&` FxDPwfrh|~z x'||<~h/"Kz"AD"f@DADx**`~DDfrp|~||' ~~|gq/ "kzbDDH~p DDAwD***p*>xDYD`PUUUUDD|`DDpDD(*+DD!`]@DDapsDD "w@|DD@A"9ff]W}~n}|qu"]@`D|D|C@|DDfDDxGDf""Hap_}? r: 'Uf@D@DDfTDD|ODGD""`H@Hg]w"'fDDDDDDa]wD@!pxDwfBprr :H.:8:gH""r "@DDf@x@ DIDDb**? @~`cDDf"""""""""""""DD<@@DD>wD****"|`pDY@UUU IDDbhcDD@ DD*+"@ DD!F `@DDq?xsDD "wD|DDDDDA"Affff]";|~;"PD|D|C@|DD`DD|ODD`" x"@||Ur:I.`UUfDDDfUUDD|ODGD""w]D`2p]w""ffffffffffffDDDD]wD`@UU~Dt&Bxrr :H.:8:CH""r "`DD`DDDD( **~`DDf"""""""""""""DD`DDwD(*r*8x DYGA&UUU``AD`@DD"DDf*+8d@DD!f>`DD xx@DwD|DDDDD"=ˢ΁Շժժժժժբ™逊ժժժժժժĈĈĈօիۅՃͮ߿݀ժժժժժՊÉɀժժժժժժՂ׻Ĉۻןت€Ժ͂쀀ԮŀՂꅀժժժժժժŊ‰ժժժժժժݾݪĠĩ˻ˣѻԻαٰɁâŹ땀բժ‰ӃкՈߢŢ ժժ_‰ժժՂljӪ콏ڌժժ‰¯ߡժժժժ߻ǡƉʀ߿߾ժժժժق‰ժժժժՀվժըתժժժժժҍ򏀠ժժժժժբ׾߯գߦРժժժժժբ‰ɀժժժժժժŊĈĈЂ򨀀ЊՇתŀժժժժժՊ‰ɀժժժժժժՀܻ͏󘡩َУѪժՊߎժժժժժժŊ‰ݪԪժժժݻ絀Ѻ۰əʁЂтԢ‰ժЂݻݻݻݻݻݻݻ݀ժժ՚?‰ԪժժԂ扙кտݓࡄҔΜ̾ժժժժ‰ժժժժЪ߾Ջ€ќվժժժժՖ’‰ЪժժժժՀԀ ݮկժժժѡժժժժժ‰ժժժժժբՇׯŀժժժժժբ‰πժժժժժժՂĈĈĈҜ׺ժՂվ녀ժժժժժՊ‰ɀժժժժժՀԺĈŀգր߫ԪժժժĊŪժ‰ժժժժ߯İٲə۪ŢĊĪѪ԰‰ըϻݻݻݻݻݻݻݻժժբ‰ҪժժՊ̉ԪǑđ쯓ȣЪժժպې‰ժժժՊݻɖٔժժժժݲߧ‰ЪժժժժĀժתտժժժժժΉժժժժժբØϰ恀͂Փ԰ݸժժժժժբ‰ɀժժժժժժՂʆͰՄĀʁժժժѫݺ׫ժժժժժՊр‰ɀժծժժժժջ߈ݻȊժհ򁀀ѪѪѪժժ‰Ш֪٪ժժժՀ߾͈ݻəЪŨժ‰Հ߿ݻݻݻݻݻݻݻ݀ժժ߂‰תժժꁀԊԎӈ߷ı܆ƚժժժժ‰ժժժժŀʠժժժժ‰ԪժժժժݻձȠժժժժժÉժժժժժՂݫŏ怀䶩Ղ݉ժժժժժբ‰ɀժժժժժժݻĈѡ𐜊Ā濺ժժժժժՊр‰ɀժժժժժժĀ柂齾嘪ĩˣϪъŪժժբՀŪŪĪժժ‰ɐתתժժժк'‰Ջ𯅀ԊըՠܪŀϺժժ‰۪ժժՎՊԊߺѴĔĀժժժժ‰䜊ժժժժӊԪ緀ժժժժծ‰ԪժժժժՀ򺜀ժժժժժɇժժժժժՀςƨ怀ճԮפժժժժժՂ‰ɀժժժժժժՂǻ݋л뚉㊉߫պժȿ߾ժժժժժժՊ‰ɐժպժժժժŀ߈ݻݩȘ潝敀ӪբאըըŪՂբ‰ɐպժժժժտLjݛĈĈĈĈĈĀ/‰Ղ퀀Рՠ٪ۃЪժժպ‰ժժժՊъ߿DZɆȌ޽Ԫժժժ㞽‰ㅪժժժժ߮Ԫժժ߽ ջժժժժպÀ‰邂ժժժժժՈվ߿ߍʑ׿Шժժժժժՠ鏂ժժժժժՊҀտ怀۩ՀՇ劀ժժժժժՊÉɀժժժժժժՊݛݻĈ׫ߋժժժתՂԪժժժժՊ‰ɀժիժժժժĀϻ۴ݝѿրيρժԢ݀ЊըĊŪժ‰ɔՎժժժՊ׺߯ĈĈĈĈĈĈĈث_‰ՠծŊтתĀĪժժժ‰ժժժժŪ 塘ɐƢȃݮժժժժ՚ʙ‰ժժժժ߯󇪅ժը𾌀ĪժժժժժПΉժժժժժՊԇמժժժժժՠ򍙓ـЪժժժժժՂĈĈʂŁպ怀۪է߻ШժժժժժՊ‰ɀժժժժժժՊл݃ػի׎Պժժܯժժժժժժň‰ժծժժժժՂݺꟈݻ֛׵Ѣ‰ӢѢѢѨժ‰Ղՠתՠш݃ժժ_ڂ‰ժժljꁆ׿﫫ݾ޾Ԫժժ~ނ‰ժժժժԪհČЦǫ꧀ժժժժՉ‰®ժժժժߺժժվՊȻժժժժժӉӉժժժժժՈԻŠ̃ձקժժժժժՠ‰ـԪժժժժժՂAPLSOFT.FILESu#' +#'  'TESTB-#*TEST29-#*(TEST.HLPh:#0TEST39#TEST49#TEST.HLLP #  "Hello World"1(4)"BLOAD TEST2":(768@2" :,, e`TEST files These files test that Squirt works properly when running an applesoft program and have the disk commands work and correct prefix set, and a binary file that imitates a large game that loads at $7FD or $800. Note on binary files: Binary files with a start address of $2000 or $4000 and have a file size of $1FF8 or $2000, will be viewed as a hi-res image. Binary files with a start address of $2000 and have a file size of $4000 will be viewed as a dbl-hi-res image. Binary files that have the first 16 bytes of the program all either have, their hi-bit set or hi-bit clear, will show up as a text file. Binary files that have a load address of other than $7FD or $800 will be launched by Basic.system. Binary files that start with $7FD/$800 can only be loaded with a max size of $B2FF (45823 bytes) Binary files are checked in the order they are listed here. So a binary file that really is a text file, that has a starting address of $2000 and a file size of $2000 will X" :,, e` X" :,, e`show up as garbage on the graphics screen. Save the file size as $1FFF or $2001 to show up as text. 0 ! <)i/ , /  eF ` :%s :,ʩɍ0) q LƍPlease insert boot disk and press to try again,OR Press to boot Basic.system.ح 0* )i/  ! -)&i/     (L H :,ɍɛ) L    (L  :L<  ( SQUIRT.SYS BASIC.SYSBASIC.SYSTEM not fou "nd, reboot and try again.Squirt.sys was not found. Choose one:Insert a Boot disk and press to try againPress to launch Basic.sysPress 5, 6 or 7 to boot that Slot#:@0<$%SQUIRT Squirt can navigate directories with ease and minimum keystrokes. Squirt can launch system, binary and applesoft programs. Squirt can view text, source and mousetext screen files. Squirt can view bitmap fonts. Squirt can view hi-res and dbl-hi-res graphics screens. Squirt can automatically recognize the difference between a binary graphics file, a binary text file, a binary program file and a binary font. The maximum size of a binary file that can load at $800 is $B2FF (45823 bytes). When viewing a dbl-hi-res graphics screen, and the screen does not look right, press Ctrl-A to switch Main and Aux screen memories. A binary file that has text may be recognized as a graphics screen file if the start address is $2000 or $4000 and the file size is $1FF8 or $2000. To view as a text file, save the file with a different file.size. JSR L1210 ; HOME and print SQUIRT JSR PRTPATH ; prints PATH followed by the prefix JMP RELOAD INCRY2 CLC INY BNE RETINY INC $E9 LDA $E9 CMP $E2 BCC RETINY JSR READFILE RETINY LDA ($E8),Y RTS TYPEINSTR ASC " Use " HEX 9B,8F,4A,8E ASC " for line down | " HEX 8F,41,4A,8E ASC " for page down | " HEX 8F,41,4B,8E,98 ASC " document top | ESC to directory" HEX 00 READFILE EQU * JSR $BF00 HEX CA DW READPARM2 BCS RTN3 LDA READPARM2+7 CMP #2 BCS MORTXT ADC #$20 STA $E9 LDA READPALFONTSu#' !#' = ',STANDARD.FNT)!#`o'(BOLD.FNT,!#`o'-MOUSETEXT.FNT/!#cr')SMALL.FNT2!#`z'*NIBBLE.FNT5!#`z'(FLOW.FNT8!#`z''APL.FNT;!#`z')ASCII.FNT>!#`z''BAR.FNTA!#`z'*BLIPPO.FNTD!#`z')BLOCK.FNTG!#`z',BROADWAY.FNTJ!#`z'>>< (&20 *, **>> "2*&" " >>  ">> "8""> """"""< >> ""*:<"">""""""""""""">>><2"<""">""" ""  ">"6**"""""&*2""""""""""""*,"" "" ">""""""""""""""**6"""""""> >>> >00000>"(* <"<"""<< <"""<"><$""< """"  "" 6***""""""""""<""< :< $"""2,"""""**6"""""< >>8  80,*** 333666 >< 33 33 >>      3?3 ?  0  33333  30?30033333>00?003333?3 333333>03    0 30 3;;333?33333333333333???3333>333?333 0000033333?3??333333333333333333333|33333>00? 33333333333 3333??333 33333 ?0 ? 0 3?+- 0>3>3333300>333>3?><>33>03333  33 3??33333333333>33>003>0<3333>333 33??33 3333>0? ?     ? 333666 >< 33 33 >>      3?3 ?  0  33333  30?30033333>00?003333?3 333333>03    0 30 lj3A@ ?_owy{___[Y@y{*I**I $&?~ ? HHH~\H@@H\~HHH?*U*U*U*UU*U*U*U*?@@@@@@@@@@@>>@@LL@@.0 0>3>3333300>333>3?><>33>03333  33 3??33333333333>33>003>0<3333>333 33??33 3333>0? ?     ?>> ($ , *,**>> 2**& " >>""""> > ""> """""< >>"":<"">""""""""""">>>"2"<"">""" "" ">"6**"""&*2""""""""""*,"""< ">""""""""""**6""""">  >>> >0000>"13w6<""<""<< <""< <$"< """  2 " 6**""""""""<""< :$"""<"""**6 ""< >0 >   ,***>>< (&20 *, **>> "2*&" " >>  ">> """> """"""<  >> ""*:<"">""""""""""""">>><2"<""">""" ""  ">"6**"""""&*2""""""""""""*,"" "" ">""""""""""""""**6""""""""> >>> >00000>"46 <"<"""<< <"""<"><$""< """"  "" 6***""""""""""<""< :< $"""2,"""""**6"""">>8  80,8888866$$~$~$>> >B%$R! *,88888"6">~~`p83;?73  ?30 ?30038<63?00?0333?3 333333>0 ~~ < <~b033?3333333333333333;33333?333? ?00003333?3?33333337;3333333333337;3333303? 33333333333 33333?333 33333 ?0 ?8p`xx``xx>790>3>3333300>333>3?633>03333 00000333 >kkcc33333333333>003>063333333 cckk>3 3333>0? ?𘘜866>>>  >>"">> ""    " >>  ">> "8""> """"""< >> >  ,,>"""""<<<>"">   >""""">>"""**"$$<**""""""*** *<< "":<"">""$$$$$$$$$$$>$ $>>$ "2"<""">"""8 "  "$>"6*""""""&*2"""""""$$"""*,"" "" ">*"""""""""""""**"""""">"">>>>00000>U*U*U*U*>>< (&20 *, **>> "2*&" " >>  ">> "8""> """"""< >> ""*:<"">""""""""""""">>><2"<""">""" ""  ">"6**"""""&*2""""""""""""*,"" "" ">""""""""""""""**6"""""""> >>> >00000>"=? <"<"""<< <"""<"><$""< """"  "" 6***""""""""""<""< :< $"""2,"""""**6"""""< >>8  80,***>>< (&20 *, **>> "2*&" " >>  ">> "8""> """"""< >> ""*:<"">""""""""""""">>><2"<""">""" ""  ">"6**"""""&*2""""""""""""*,"" "" ">""""""""""""""**6"""""""> >>> >00000>"@B <"<"""<< <"""<"><$""< """"  "" 6***""""""""""<""< :< $"""2,"""""**6"""""< >>8  80,***$$$< (#21*>*>> "2*&" >" ">"  " 0($~ p>" """">"""""""< "00>> " !-3>">""w"""""""""""?"  "??""r""w"">""w>**>p #"c  g"?c6**""ws&*2""w""""""""""*,"""w1 #Iw"""""w""""c""**6"c""cw"">""> "CE.&"&""` ,2"2l"><$,22, &""w  0 "2 # ***+&""#"""&&l22, `&< $g""2lw""c***6ccg""< >$> >>> >(>   *.8 8*>>*>> >"2*&">>" >>>" > ">"""> >> ">>">"">>" >"">"">>""> ">>> 8 8 >" 8>"**:>>"">""">$$<$$>>>>$$$$$>>>>>>>2"">""">""">> """>"  ">>******.*****:>""""">>"">>"""*2>>""> ">"> ">>"""""">""" ******>"">>""""">>  >>> > >>"">FH>>"">>> >"">>">><$>"> >>""""">****>"""">""">>"">>""> >>> >"""">" ****>""""> >>>   >666>>>8"08.$ )=. 888 -?- ?88>08'''''>98?88>88???88<''>8''9999>80880>>89"*:<''?''''''''''''''???>7''>'''?'''>>888899''''?'??''''''/7'''''''''''''/.''''89>''''''''''' ''''??''' 99333> 08>??80 >88888>>6>IK8<:4''>>88>99>'?>.99>0'''888:''>/''''''''''''>99>887>8>9999>''' '''/#:1999>8?8? 8 8't(BYTE.FNTN!#`z',COLOSSAL.FNTQ!#`z',CONTRACT.FNTT!#`z')COUNT.FNTW!#`z ',CYRILLIC.FNTZ!#`z '-ESPERANTO.FNT]!#`z!'(FACE.FNT`!#`z!'.SCIENTIFIC.FNTc!#`{'*FROGS1.FNTf!#`z#'*FROGS2.FNTi!#`z$')GIANT.FNTl!#`z%'*GOTHIC.FNTo!#`z%')GRAPH.FNTr!#`z%'66$""""">> >G%tRq  .     > >>@ ? ?? >>>>~B@x<$<?!###?!##??!#?!!###????!9##?!!?!### 001! ##??IIIKKK')))++3?!!!##??!!??!!)+/?!!?##??00?? !!!###?!!##"AAIIKK! !!!!!? ?? @< <6cMO> >">>""">>> >""">>">><>""> >>""""  IIII>"""">""">>"">>""> >">> >><$$$$<"""AIII"""""> >>>66$6???? ??0? '<:9 *.  88888*>* ??  >>`p833333<630000?38???0>0?8<63?00??0?33??0 ?33??3>0> p88p>>>>8?3 ?3??33?33??33??333????????;3?333??33?? ??3;;3??cwkcccc337?;33?333??3??##+.?3?;3?0??? 33333?33333 ccckkwc33 33333 ?? ??8p` ?PR 00>3>3333300>333>3633>03333 00003333 ?[[[[333333333>33>003063333>333 mmmm~3 3333>0? ? 8(>>< ("" $,*>*>> 2*&  >>8">> <">"""< >> "*:<">""""<<""">>><2"<"">"" """">"6*"""&*2""""""*,""< >"""""""""*6"""">> >SU<"<"<< <"<4 8$"< ""  **""""<"< :8""<""*""""> 8  >*>*> 6$??? ' 9 #21'7'  -?-  >>@ >7/''' ?9889???<='''?''''99>890880>>>> 988#+7>?99?99'''''''''''>>>'7''''?'''88888:''''''??+++++''''''''''''''''''>`'''''#<1>''''''''' 55555?'''''''''>?8 ?<< @888888VX 9996'''''88>999'>.>99>8'''88888:'''''?+++''''''''''>999>8.# 1>.'''''' 555?''''999>8??8<  <88& ? $$< ("".22. *, ******~@ > """ " >> ">> """>""""""< ? > >>> "$$>"">">BB>"""< >?!>>***>"BBbRJFB$ZbRJFB>>"  "<((((*&"6**"""""">""""""""""""""****"""">"""""******>""**.**"  ">> 8$$$8(&8$8($Y[ <""""<(($>"">** ">  <$$$&6***""">"""""""""**"">"""****>""*.*""8  80,666< (#21 *>*>> "2*&" >"  >"  "> """>"""""""<  00>> " >"> <"">"""""""""""""">>>"2""""">""">>"  ">"6**"""""&*2""""""""">>"" "" ">"""""""""""""2,>8>> > *>"""*\^&"&"" ,2"2,">,22, &"""  0 "" " ****&""""""&&>>&< """2,"""""2,>8>>> p@0p pppxxp``<<C`@@`x|C<?C<gg< >>00  33333  30?30030333?00?003333?3 333333>03     0 30 3;;333?33333333333333???3;33333?333 0000033333?3??333333333333333333333?p3333>00? 33333333333 3333??333 33333 ?0 ? 00 3_a 0>3>3333300>333>3?><>33>03333  3333 3??33333333333>33>003>03333>333 33??33 3333>0? ?     6UUUUUU6>>**>>xpppU*U*U*Uk?qqd"UA]"A""A 888x@`px|~>I~|xp`@$w$'$d$'"A"w s >""6cA  *  *cH$"""""""" >>"">I6Iss>"""$$""6>>"" :*" *2:bd?LR"RL"A.q >>T( ""~@< 0@ ***x #bI***"AI*>&&&&> >>>>||>""">"A A%$IJThu$R"T: ($"PI P " DPReh5 xxpp0000aass37?w'Ogsxs````?v&@p|?* ??  >>`p833333<630000?38???0>0?8<63?00??0?33??0 ?33??3>0> p88p>>>>8?3 ?3??33?33??33??333????????;3?333??33?? ??3;;3??7?+####337?;33?333??3??##+.?3?;3?0??? 33333?33333 ####+7733 33333 ?? ??8p` ?km 00>3>3333300>333>3633>03333 00003333 ++++333333333>33>003063333>333 5555>3 3333>0? ? 8(666< (#21 *>*>> "2*&" >"  >"  "> """>"""""""<  00>> " "*6< ">"A"!!""" !!! """"=#> 0"""!@> H>@ "!  ! B=**+**A&*+**"EEE"""%B@0L?"""!@>>@>@?B<B%$$$$2MDDD(:JJJ*B% R!B%$$XA>> > *np&"&"" ,2"2,">,22, &"""  0 "" " ****&""""""&&,22, &< """2,""""***6"""""< >> PPPPPPPP}@_PPPPP}PPPPP_@   00 ""@" ~!"$(0??0($"@`px|~~|xp`@??AAAAAA>"""">IIIIIAA! uBqpB"JdRy@G$LgRy@~~~~B"zDbApG$yObAp>AUMUA> @@@@@@@@~ "@@@@@@@@*II*qsUkUkUkUUkUkUkUkUkUUkUkUkUUkUUkUkUkUkUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU@@@@@@@>AAA>L+GRAPHER.FNTv!#`z''/SCIENTIFIC2.FNTy!#`z')GREEK.FNT|!#`z,',KATAKANA.FNT!#`z,''MAX.FNT!#`z,'*MIRROR.FNT!#`z-'+NEWYORK.FNT!#'+OPTICAL.FNT!#`z.'+OUTLINE.FNT!#`z/'&PF.FNT!#`{'+PINBALL.FNT!#`z0'-PINOCCHIO.FNT!#`z0')PUDGY.FNT!#`z1'PPPPPPPP}@_PPPPP}PPPPP_@   00 ""@`px|~?>AUMUA>?0($"I*~ "@@" ~!"$(0?AAAAAA>"""">IIIIIAA*I! uBqpB"JdRy@B"zDbAp>AAA>~~~~ @@@@@@@@@@@@@@@uwUkUkUkUUkUkUkUkUkUUkUkUkUUkUUkUkUkUkUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU@@@@@@@6>>**>>*  *$$U*U*U*Uppp>A]E]A><<""|<""( x >T""6***""I***>>  .@< 0LR"RL >"A" >>x@@@@@@@ppppppA""AUUUUUUUx"UA]"00@ >xz!??>???????888~BBBBB~?~|xp`@@`||`@~BBB~@`px|~<$$$<<?!!!!!?">"""">!!!? ***(~ < (&20 *, **>> """ " >> ">> """>""""""< >> ">c""""?""?""?>k>?""">""""  "c6**"""&*2""""""""?!!?""?""?6c"""""k*"">> >00000>"{}.<&( <*(6$ 0($ $1"$*$ "8$ $$ #)-*8  80, 8 > > >  >" >>>>$>> > >** >> (  >"" >>>>$$$$>><$"  <> >> & > ">$8""$  <$*0 >*** > >>> >*$$$"><>    >**>  "> >>8>$>> > >> """"  **" >"""">>""   ~<$*0 >*** > >>> >*$$$"><>    >**>  "> >>8>$>> > >> """"  **" >"""">>""   ```````p8p00xxx0px@` |~sqpppp x8xpp008  ??????3333333s@`p000000 @X ^`p`x@~|p8p`xx 0@8@@0< <<<>>>>~|<<<|llLL @```@`px||xpppp 3#008`pxXXXP@?gG@p00  >@` >>>?@@```p@```@@``ppxXlfb666>>( <bd&F($*>*>> @"&*2"(>" >" " $~> <"  <"">""""""" >>00""*6, "">"""<""<""<" "<"""""<> < >> < " &""""">""">>D8"$(0($" >"6**"""""2*&"""""""<""< """*$<""<($"" ">""""""""""""""**6""""""""> >< <@ <<*8  |&& ,2"""" "$(4"|****,2"""""",22, &&,2  <| """&""""***6""""">> 88 ( @>?\\w8wcs??^wwwww    ( ABb"BBb"6&"B"BaI"""""A0 [>?~~# YBB" *.ABAB""" 3cw;w?0c  U">B>>q>**A>A>>"*" " +##""*">?~c?Q?y>BB!" *:AA @"*" "*"""*   c d1"BB"B""B*2""C""B "" *"" b$ bnw?<wwkcw=w@>>w7kw<;? ?! L+ Ď`80>> >(>!!  2, 00*>*> >"""""> (>> >>> < >""> << >>"">> >"">>""> 08( $"""">"">""""""$$$>>>82">""">""" "  ">"6*""""""&*2"""""""0($" 6"" """*"""""">""""""""***""""""> > 8888866$$~$~$>> >B%$R! *,88888"6">~~`p83;?73  ?30 ?30038<63?00?0333?3 333333>0 ~~ < <~b0>c]]A]Uw?a]!]]a?>c]uu]c>1m]]m1>c]q}]c>>c]q>c}u]c>wU]A]UUwAwwApPPPW]c>gU--Ug}AAUU]UUwwUYUMUUw>c]UU]c>?a]]a=>c]]UMc>?a]]a-Ug~C}#^_a?AwwUUUU]c>wUUUU*wUU]UUAcU**UcwUU*A_(zA8p`xx``xx>0>3>3333300>333>3?633>03333 00000333 >kkcc33333333333>003>063333333 cckk>3 3333>0? ?𘘜8//**#21?-*( ?!!?  ?? >>0p 00 0 ?)%#??"19)/&!%%???''%%%??$$$???%%% ??666v6cA666666Ac6YY>A]Q<> <??%%%:?!!!??!!!??%%%!???!!)???!??! ???  ?? ???????!!!???!).??:'%%=??? 8 ???!2!<8!1)%#!???!!!80!!!???  @@@@@@ """>>??""""""??>*** >? > RRR~>??<== @@}=??"??>><<>><>"""~~""""""~~>>$.**:?? >>0 >>>" 4" FH022**&&>AAAA>"""**"( ( "( "*(  **** *""* * * ( *"* * ( "* **"*"( ((**   (""*" *" (( "" * ** ("("**"** "" "*"*""*"""*""* " *"" " "( *"""*"""""*"""""*** * *((*"* ("( " (( ("(( *( "( *"" "**" ""*"* " ("( (( *""*"""**"""( (((  """ 66$>+89#21:;6>> >"666">39???30<03?????03>333?31?3??3?>33>03?$ $>> $ >60<< "*6<?!?!333;;3333337773?3?3??3?33;3;;3?377773377'3;???--!33;3'?937>26&>3;?>33377>#<1??-- ?;;;;;3;; 33!--?333??33;;3?07?? .&? *373>33>00>3;3>>#?3>7733>03?3?3338888;;377>>*"66?##77>2&>33?>33?60?7?'9?><<8;;;3??3366"*>>66666;;3?07??9'?"666< (#21   *>*>>> "2*&" >"  >"  "> """>"""""""<  >>>> < " "*6<>>>666>>>>>>>>>>>>>>>>>>..>66>>>66>>>>8>>>>6>>>66626>>>6&>>>>>>>>>:6.>>>>8>>>>>>>>>>>>>>""">>>>>>>>>>>>>0 >> *.>>>>> ,>>><>><<>>, >666 00000>2> >*"">666>>>>><>>, ><8 > <666><"""""*>>>>66>< ><> t)ROMAN.FNT!#`z1'*SHADOW.FNT!#`z1'*SKINNY.FNT!#`z2')SLANT.FNT!#`z2'+SPECIAL.FNT!#`z3'+STENCIL.FNT!#`z3'(STOP.FNT!#`z3'+STRANGE.FNT!#`z4',SUPERSUB.FNT!#`z4'(THIN.FNT!#`z4'+TORONTO.FNT!#`z5'.UPSIDEDOWN.FNT!#`z6'+WESTERN.FNT!#`z6'$$$< (#21*>*>> "2*&" >" ">"  ">" """">"""""""< "00>> " !-3>">""w"""""""""""?"  "??""r""w"">""w>**>c  g"?c6**""w#&*2""w"""""""!!!)."""w1 #Iw"""""w""""c""**6"c""cw"">""> "&"&""` ,2"2l"><,22, &""w  0 "2 # ***+&""#"""&&l22, `&< g""2lg""c***6ccg""< >$> oooogog[[I[?[?[Io? _?7Ig?=\o7|ݽoowo-;_?+-goo? ogooos_Aooc??_ow{}|_#==-5>Aokoooo?_3=_g{?_3=?S?>Aook=hog?}_0?>A?}_1=>A?!<_owws_#=_#=>A_#=>1?_`ogogogogs?{}{w?_A_A{to_ow{|oQ^owss"*6<wo[]_Q]L_1=_!=@_3 }};A_1-===@?}_A}??}oa}}|^3 }%;A===?!==_Dwwww_@? oommfq==]oi]=}}}}}}_@;-1====;55-===_3====AoQ]Oa}}|_3=5-=A_1=_i]=_!]^ =A?wwwwws======A=====;_o=====5;=;_ooW;==[oooog?0_ow{?_C{{{{_A}{wo_?_Q_____Ao_? ooog                                  > """"""""">        ****       """"**""  $$$ $H~$>> >G%tRq  . *"*>@ 8DD""p($!!!> 0 " $8DD>"8Dd"8D!8$DBB1xx8D2!DD">"~?p@ H$!8TRB"LLJ*)8DD""8DD>8DD"*1^8DD> 8D ~DD"""DD""" DD"**B$!DB"~@`? @< <*&"\"#"@@ <"""<0H""<&!@   >*$"""^0$8D">"D""D"*"D"<>>< (&20 *, **>> "2*&" " >>  ">> "8""> """"""< >> ""*:<"">""""""""""""">>><2"<""">""" ""  ">"6**"""""&*2""""""""""""*,"" "" ">""""""""""""""**6"""""""> >>> >00000>">,""<< <""<"><$"< """""****"""""""""<""< :< ,"""****""""< >> 664 &20"$ "">6 "2"&" " 66  "66 "0""6 """"""4 66 ""*:4""6"""""""""""""66642"4"""6""" """6"6"""""""&"2"""""""""""""$"""" ">""""""""""""""""6"""""""6 666 6000006"6$""44 4""4"64$"4 """""****"""""""""4""4 24 $"""****""""4 66 wwwwwwww 6677> 75:+;<>> 00*6*>00>1)%#! ?? ?? ""?!!!!""$ $ $  6.""> !!<<!!!?????<9"!!!/!!!8!  !?!%%%%%!!!!!!!!!!! !!!!!<   ><!!!!!!>!!! %%))"""""??<<00> >!!!&!!!>> .!!!>> >!!& !!!! ! !%%%%!!!!!!!!!!>!!!. > !!!!"""))))6""!! ? ?77$$~$~$$ 66$>+89#21:;6>> >"666">39???30<03?????03>333?31?3??3?>33>03?$ $>> $ >60<< "*6<?!?!333;;3333337773?3?3??3?33;3;;3?377773377'3;???--!33;3'?937>26&>3;?>33377>#<1??-- ?;;;;;3;; 33!--?333??33;;3?07?? .&? *373>33>00>3;3>>#?3>7733>03?3?3338888;;377>>*"66?##77>2&>33?>33?60?7?'9?><<8;;;3??3366"*>>66666;;3?07??9'?"  >>8">> <">"""< *>*>> 2*&  >>8">> <">"""< *>*>> 2*&">""""<<""">>><2"<"">"" """">"6*"""&*2""""""*,""< >"""""""""*6"""">>">""""<<""">>><2"<"">"" """">"6*"""&*2""""""*,""< >"""""""""*6"""">> ,4                                    6f8???<???cccc3? 0  n  6>66*0333<3033 3"6cf3fc0wc6c6cc cccc300;>?~  300633? Ycccc0gcccc ccc6- >>37>33cc3?c6> n? 330 > Uc?c??s0koc?c?> cck   3333333k333333k63 >?~ch6;30?0330 ycccc0c{c{c` cck6  >33?33k333333k3   c6>3;*3303333 ?ccf3fc3cs66cc c6c 0 333333k333303k636n?0 >6c ?~>>>33k3> > >c>? ?303L+ Ď0666( <12# *>*>>  "&*2"> >  ""  "" >""">""""  <""00>>  "<6*"""">""""""""""""">>>""2"""">""">>"  ">"""**6"""2*&""""""""",*"""" """ ">""""""""""""6**""""""""""> > *&"&"",2"2, >" ,22,"""& " 0 " " ****"""&"""&& ,22,& <,2""""""6***""" <""">> >>< (&20 *, **>> "2*&" """>>" ">8> "8"">"""""""< >> ""*:<"">""$$$$$$$$$$$>$$>>$<"2"<""">"""8 "  "$<"6**"""""&*2"""""""$$"""*,"" "" ">*""""""<""""""**6""""""">"">>&&> >20002>"> ($$88$<8($$8 $$$$ $ ****$$$$$$$$$4 8 $$$$8"""""**""$$$8 >>  )WHITE.FNT!#`z6'/EDUCATIONAL.FNT!#`z*'*HEIGHT.FNT!#`z*')GAMES.FNT!#`z)'*NORMAL.FNT!#`z)'*NINETY.FNT!#`z)')FANCY.FNT!#`z)',GRAPHICS.FNT!#`z('GRAPHIC.FNT!#`z(')GAME2.SET!#@(' 3333?333?3 ??>< (&20 *, **>> "2*&" " >>  ">> "8""> """"""< >> ""*:<"">""""""""""""">>><2"<""">""" ""  ">"6**"""""&*2""""""""""""*,"" "" ">""""""""""""""**6"""""""> >>> >00000>">"">  h$2"AAA"">>&>>#}EEF|*]"*c]>?~**xx@@ !""   ???????>>>><><>&6 620 .:>,   0 0*>>*>> >> 0 >2:.&> >"8>>>>08">>>>>> ">8<>">>>0 >">>">>">>0   >>>> 00 >2>>::><6">>""<$<<$>>"">2""2>>>>>>>"2"><""">>""" ">"22">>"6>**"""""&.:2"">"""">>">>""*:>,>">2">"<">>>"""""">"""6""""**>""66""""6>>0 >>>>>> 0 >>0000>>6">>.,>"">>">< <>""><>>><<$<>"<<>"""""26" >****>$$$$>"">>"><>">< >&<><>,"""6""**>"66"""6 >> >> 00 .:$6,6,6>>> >(>   *.8 8*>>*>> >"2*&">>" >>>" > ">"""> >> ">>">"">>" >"">"">>""> ">>> 8 8 >" 8>"**:>>"">""">$$<$$>>>>$$$$$>>>>>>>2"">""">""">> """>"  ">>******.*****:>""""">>"">>"""*2>>""> ">"> ">>"""""">""" ******>"">>""""">>  >>> > >>"">*]**w**"AA]]AA>>kII]kAA ~>kU>?8>kU>'@|r***>IIwUUA>]c>"A*w"cpx|~??~|><~??~<>>>*U*U*U*UU*U*U*U* "]MU"  "]E]"???????>>< (&20 *, **>> "2*&" " >>  ">> "8""> """"""< >> ""*:<"">""""""""""""">>><2"<""">""" ""  ">"6**"""""&*2""""""""""""*,"" "" ">""""""""""""""**6"""""""> >>> >00000>"><$$88<$<($$8 $$$$ $ ****$$$$$$$$$04 < <$$$$8""""**""$$$8 >> >>>>>666>>>("0(*$ )-.  ((( --- 78(>0( %%%%%>)(?((.((??/((< %%>( %%)))).(0( (0>> ( ) "*:<?%%=%%'%%%%%%%%%%%???>5%%>'%%=%%'>>8((())'% %'?'==%%%''%-5%%'%%%%%%%%%%-.%%'%()>'%%%%%'%%%% '%%%==''% )9'%&> 0( >?? (0 >(((((>*6>8,*4%%>>8(.))>%=>.  ))> %%'8((*% '>-%%'%%%'%%%%%>)).(87 >(69)))>'%% '%%-#*19)).(?( ?  ( ( }}}}}}??"< .$ 21 *. 0  (< ( ?  1)% (    !&9<& !!&" . !!!2,!(0>>  ""*5-" ""2.!&"&&"%"#%%" """1)!*"  $0 ! !"**!!#%*2"!,%%% "& %)),"& !  $!""!!%" !)%%+1!!$$""> !<< 04440"  .>"%&$ &)1. "$!&8"&" "$**"""*%&" . &"  (."! !%))$""2,!>$ "(">>> >(>   *.8 8*>>*>> >"2*&">>" >>>" > ">"""> >> ">>">"">>" >"">"">>""> ">>> 8 8 >" 8>"**:>>"">""">$$<$$>>>>$$$$$>>>>>>>2"">""">""">> """>"  ">>******.*****:>""""">>"">>"""*2>>""> ">"> ">>"""""">""" ******>"">>""""">>  >>> > >>"">>>6>>I**xxxU*U*U*U**U*U*U*U"AAA">>@  @@@@@@@@@ "]MU"  "]E]"???????< ("">>>""""" >"  >"  "> """>"""""""<  6>6>>>>>>""">AAAAA>cAAc> 0`@@`0  @@ AUIc]A>"""A~ ~ *II*6>>**>>*  *$$U*U*U*U>>A]E]A><<""|<""( x >T""6***""I***>>  .@< 0LR"RLA""A"A" "UA]"ppx@@@@@@@?cI>Ic>>UUUUUUU~|"AAA"00@ >L???????? pp~|I*]*6wAw6?~|xp`@?*II*@`px|~"#$%&'()#$%&'()!""123hi there, you dummyRM2+6 STA $E8 LDY #0 TYA STA ($E8),Y ; to make sure there is a zero at the MORTXT CLC ; end of the text file LDY #$20 STY $E9 INY INY STY $E2 LDY #0 STY $E8 RTN3 RTS READPARM2 EQU * DFB 4 DS 1 DW $2000 DW $200 ; read in only 1 block DS 2 ; returns actual # of bytes read SETMARKPARM EQU * DFB 2 DS 1 DS 3 RETRN LDX #6 RTS CHKFONT LDX #3 LDY #0 LDA ($81),Y ; where filename is for OPEN TAY ]LP LDA ($81),Y ORA #$80 CMP FNT,X BNE RETRN DEY DEX BPL ]LP LDY #$10 ]LP LDA ($81),Y STA $300,Y DEY BPL ]LP PLA PLA LDA $36 PHA LDA $37 PHA LDA #START STA $36 LDA # Ie f`8` P־ǾҾ,G0C ж=W)_`ZV"׾پӾؾھ pD`Y׾ؾOW)Ⱦɾʾ pD`8`W)CB) 5W) )W)@! pZ}ȾȾ󰹩 p` ־ǾҾ,G 8`׾ؾ ж p ධۥs׾tؾE` ( о(־Ǿ,G 8`_`W)H־JjjjhZ[ p̭ зLKǾ  . .8   ۭ (8 mȾȾmɾɾʾiʾ` Lpl8l:/0sНsƬƀ#(ZZV4G_0=( A P FjL\5p-e9ABSAVERIFYBLOADELETEBYECATALOGOPENWRITEXECREATEFRESTORENAMEBRUNLOCKCHAIN#FLUSHREADPOSITIONOMONPR#PREFIXCLOSEAPPEND Hѫ5 FڬB :hQ|Q@@ -!S    !C- !ABELSDFRV@@ !$(19@EӱüϠž(+@ABCDEFGHIKLMNPSV     T[fouu~ՠٯ* PWN*]ĿNTz @n6VC/+A>@I5gN Oz @n[Dz @nd0,~z @`$仫@v$⩔,C[B?I>孓`仫6VtCicQĿUKqtVt Nʮq$6,⨁ K6, VtI=v!gNVt Vt  lg~Tһ   LiLMTRLLLLL[^)o `\o8` ԠŬLL