' +JJJJ ?\>m0M='+l> /+l   d]@ŵLҦ]]L L}BBL] 鷎귭෍ᷩ췩緈JJJJx Lȿ L8ᷭ緍췩 緍i 8 `巬 췌`x (`(8`I`B` ``>J>J>VU)?`8'x0|&HhHh VY)'&Y)xꪽ)' `Hh`V0^*^*>&` aI꽌ɪVɭ&Y&&Y& 꽌ɪ\8`&&꽌ɪɖ'*&%&,E'зЮ꽌ɪФ`+*xS&x'8*3Ixix&& 8  '  & x)*++`FG8`0($ p,&"_]` L/浍굺L  !"#$%&'()*+,-./0123456789:;<=>?  1#"""  (9"1 ( ,.(0# 2  /#0/#0 *?'#07#00/0/'#07#0:"4<*55/**5/*%5/)1/)1/)1/)'#0/#0*5/*75/**5/*:5//#0/#0'#07#0:::*::'#07#0EB H  @H !D)"E` @ $ C ` DQ &J80^݌Hh ü ü݌ ռ ռ ռA ļD ļ? ļAEDE?HJ>h Լ ռ ռ ռ`HJ>݌h Hh݌`HIHHHHhHH݌hHhHh݌H6 VDP (ED Z $0x8x D- ܸDD# H8`?E Vk *f???0xE Hh D#-EEE8` D ܸx D - ܸx8`-0ݩ?ʥD EEE`   vLDcpq` [` ~  LӜu`".Q`pNФbptťܥm2<(-Py0\|e<6e<g< JJJJj귍hI  aUL@ kU8  L  Q^R(jQ0l^l\  wUuW ԧ H h@ [_ /QSIRb_L`LLLL`ª`LQLYLeLXLeLee ўQH\(h0L& Ꝥ$`( R \ZLl8 ўR HH\`\Z[YS6`LxQɿu3'RͲʎRʎ]]]ɍuL͟ɍ}RLRɍg^H8 ^hZLɍR LͲɊRR% QLܤͲ Z@ -^ ş\[Z QY\[Z8`l6Lş_Ȍb_Ͳ] )Y h( ֭ͲLɍ [LLĦ__ ^ 9 LҦ3 9 a   0LjLY u< (_9 ˭ɠuɠK_9 ?LˆʎõĵL õ ĵµ aµ`` L̦µ_bJLuLz`  ȟ QlXJ̥KlV  ȟ QlV eօ3L e3L &RL &QL d L4 Ne)n `@-eff L f`L . tQLѤ LҦL` OPu d L Ne)noon 8ɍ` ^f\õL ^NR  RΩLҦ)\Z ʽ LHv 3h`0h8` [L NС õ`A@` ŵL^L iõ`  \ 濭0 \  ȟ Q ^\lZl^?cqH şch`fhjõĵ@OAP`u@`@&`QR`E Ls  @DAE@u`8` %@ @A@`@`@A`Mµ ) LЦ`8@AWc@8@-@HAȑ@hHȑ@ȑ@hHȑ@Ȋ@ch8&ȑ@Hȑ@Ah@LHȑ@ȑ@ htphso`hMhL`9V8U897T6S67`INILOASAVRUCHAIDELETLOCUNLOCCLOSREAEXEWRITPOSITIOOPEAPPENRENAMCATALOMONOMOPRINMAXFILEFINBSAVBLOABRUVERIF!pppp p p p p`" t""#x"p0p@p@@@p@!y q q p@  LANGUAGE NOT AVAILABLRANGE ERROWRITE PROTECTEEND OF DATFILE NOT FOUNVOLUME MISMATCI/O ERRODISK FULFILE LOCKESYNTAX ERRONO BUFFERS AVAILABLFILE TYPE MISMATCPROGRAM TOO LARGNOT DIRECT COMMANč$3>L[dmx- ( W Ϡ-@跻~!Wo*9~~~~ɬƬ~_ j ʪHɪH`Lc (L ܫ㵮赎 ɱ^_ J QL_Ls贩紎 DǴҵԵƴѵӵµȴ 7 ַ :ŵƴѵǴҵȴµ納贍﵎ٵ്ᵭⳍڵL^ѵ-I `  4 ò-յ!  8صٵ紭ﵝ 7L (0+BC  7L HH`LgL{0 HH` õL H hBL BH [ h`Lo õ ڬL B ڬ LʬH hB@ յյ [L (ȴ) ȴ 7L L ( L (ȴL{ƴѵ洩ƴǴҵ 7 ^* B0 HȱBh ӵԵ 8 L8 ݲ` ܫ  / / ED B / / ]ƴS0Jȴ ȴ)  紅D贅E B ƴ  / 0L Ν `HD٤DEEhiHLGh ` ŵBѵ-` ѵB-` ܫ XI볩쳢8 DH E𳈈췍Ȍ X0 · JLǵBȵC`,յp` 䯩 R-յյ`յ0` K R-յյ`ɵʵӵԵ` 4 K ( ѵҵLBȱBL8` DBHBH : ַ޵BȭߵBhhӵԵ RBܵmڵ޵ȱBݵm۵ߵ` 䯩LR˵̵ֵ׵`êĪLR E( 8` R` ELRŪƪ`췌 յյI뷭鷭귭ⵍ㵍跬ª 뷰` Lf ݵܵߵ޵ ^`8ܵ i B8` 4L ֵȱB׵ ܯ䵍൭嵍 ` DȑB׵Bֵ  ַ յյ`굎뵎쵬 뵎쵌``õĵBCõĵ`µµ`L õBĵCصص Qƴ0"Bƴ 󮜳` 0۰ϬBƴ8`i#`ЗLw!0>ﵭ` m ﳐ 7i볍 8 ЉLw`H h ݲL~ `浍국䵍뵩嵠Jm赍嵊mjnnn浈m浍浭m䵍䵐`"L ŵ8ŵH ~(` d ֠z# u`z#?      Ȯ àԠ àԠ àԠàԠϠ àԠ ϶Ѷ ϶Ϡ ϠЮӠ ؠJMPLERR L LRW6PLPV DECIOB+9;msbbuffer` DECIOB+5;sector j DECTEMP t BNELRW4~ RTS * .DA#0,#0,#0 IOB.DA#1,#$60,#2,#0! .DA#34,#15;track,sector .DADCT .DA$8000;BUFFER .DA#0,#0 .DA#0;commandcoblocks/trk)CLCROLROL;*4(4sctrs/blk) ADC#3STAIOB+5;logicalsectorINYINYINY;bufferaddr+0300STYIOB+9 LRW4LDA#IOB/256  LDY#IOB PHP;savestatus$ SEI. JSR$BD00 8 BCCLRW6 B 1=rd HBNELRW3RINY;Y:=2(\LRW3STYIOB+12;diskcmd1=rd2=wr!fLDAODATA2+1;lsbofbufferpSTAIOB+8zLDYODATA2;msbofbuffer!LDA#4;4sectorsperblock STATEMP LDAODATA1+1;lsbofblock'AND#3;modulo4(4JSRLRW2ACCESSDISKCLCBCCLCONT**'LRW2DECODATA1+1;decrementblockLDAODATA1+1;blocklsb RORROR;divideby4 AND#$1F;maxblockis128*STAIOB+4;togettrack 4LDY#1&>LDAODATA0+1;r/wflag0=wrT1CMP#$80+BRKKEY :BEQLHLTDBNELCONTN*XLEMITLDAODATA0bORA#$80;HIBITforCOUTlJSRCAPITULATE vJSRCOUTJMPLCONTLCHKLDAKBDCMP#$80+BRKKEYBEQLHLT;exitBNEL01CONTINUE*LRWJSRCAPITULATE-1BMILKEY1SEC!SBC#$0;$20forUpperCaseLKEY1STAKEYDATACMP#BRKKEYBEQLHLT;exitonctrlABNELCONT*LQTLDA#0STAKEYDATA-1 LDAKBDPHA AND#$80STAKEYDATALDAKBDSTRB &PLA0LQP#3;?TERMINAL? BEQLQT"CMP#4;R/W? ,BEQLRW6*@LERRJSRBELLJLHLTLDA$C000;HALT68K8TJMP$3D0;DOS^* hLKEYJSRCAPITULATEKILL68KrJSRKEYIN6|ULCASEAND#$7F;convertlowercasetoUPPERCASECMP#$60;'a'TNOP;wait LCONT!CRSTF1LDA$C000;RAISERESET LDA#0STAOPFLAGNOP*L01LDAOPFLAG;FLAGCMP#0;flag=0isnopBEQLCHK;breakcheckCMP#1;EMITCODE?BEQLEMITCMP#2;KEY? BEQLKEYCMWARMJMPLGOCOLDSTRTLDA#START68/256 STA$806 LDA#START68 STA$807LGOLDYSLOT(STYCRST1+12STYLHLT+1<INYFSTYCRSTF1+1 PINY ZINYdSTYCINT2+1 nCINT2LDA$C000;CLEARINTS xCRST1LDA$C000;LOWERRESE`ODATA2.BS4$jSTART68.EQ*NOOFFSETFORQ-68tTEMP.EQ$40;A3L~BRKKEY.EQ2;^bKBD.EQ$C000KBDSTRB.EQ$C010BELL.EQ$FF3ACOUT.EQ$FDEDKEYIN.EQ$FD0C*SLOT.EQ$1CFF.OR$1D00 STARTNOPJMPCOLDSTRT1 **V.2008/14/84rhn.*MODIFIEDJUNE10,1984BYJAMESA.HINDS'*MODIFIED11/13/84JAHFORMCMILL+*68000I/OASSIST*$.OR$1C00.OPFLAG.BS2"8.BS1;UNUSEDBYTEOFKEYDATABKEYDATA.BS1LODATA0.BS2VODATA1.BS2  ĠȮĠ؍Ġύ̠ƺðΠ϶ύ W$` "TO START FORTH, JUST 'EXEC'"A`"THE PROPER TEXT FILE."U`(4);"CATALOG"dRTSn*xKEYCODEMOVEQ#2,D0L2BSR.SL1MOVE.WKEYDATA,D0RTS*QTERMCODEMOVEQ#3,D0 BRA.SL2**RWCODEMOVE(A3)+,OTDATA0MOVE(A3)+,OTDATA1MOVE(A3)+,OTDATA2MOVEQ#4,D0 BRA.SL1**"*,OVE.W#$36B8,6JMP$367C* CRCODEMOVEQ#$0D,D0BSR.SEMITCODEMOVEQ#$0A,D0(*2EMITCODEMOVE.BD0,OTDATA0<MOVEQ#1,D0AL1LEAOPFLAG,A0CMOVE.BD0,(A0)TOOPFLAGF.1TST.B(A0)OPFLAGPBMI.SCAPITULATE ZBNE.1AG.BS2*1~KEYDATA.BS2*1OTDATA0.BS2*1OTDATA1.BS2*1OTDATA2.BS2*2*STARTLEA$36E6,A0MOVE.W#EMITCODE,(A0)+MOVE.W#KEYCODE,(A0)+MOVE.W#QTERMCODE,(A0)+MOVE.W#CRCODE,(A0)+MOVE.W#RWCODE,(A0)+M**11/20/83RHN *NTRAP0.*MODIFIEDJUNE10,1984BYJAMESA.HINDS0*TRAPERRORS,SAVEREGS,ANDREQUESTAHALT*$*MOD11/13/84JAHFORQ68.*8*B* L*68KFIGFORTHI/OROUTINESV*8/20/83rhn`*j.OR$1C00tOPFL  " `Hh`h``SIR'+`PLL 'NȌ+Ȍ$WE%P :L  )`08пH)hɂЧ  L*ɂЙ  jj)Ȍ @)**iȌx LJ(@``  HALTITZ PLARESTOREd RTSMCM+ISFINIn *1984BYJAMESA.HINDS'*MODIFIED11/13/84JAHFORMCMILL+*68000I/OASSIST*$.OR$1C00.OPFLAG.BS2"8.BS1;UNUSEDBYTEOFKEYDATABKEYDATA.BS1LODATA0.BS2VODATA1.BS2de .DA#0,#0,#$60,#2 DCT.DA#0,#1,#$EF,#$D8 * CAPITULATE" PHAREQUESTTOSHUTOFF68000 LDA#$80ASK68KTO STAOPFLAGSAVESTATE .1LDAOPFLAG( BNE.1WAITTILLMCM+2 *SAVESSTATE < LDASLOT F STA.2+1P .2LDA$C000#@'%'$%'#@C'%'$%'#@(%"##@( %"##@(,%$2(0#@RO(8%#d$2#t$2#@SPAC(D%&%#@-DU(V%$F @$F#@TRAVERS(g%$2$ " $ $(0 @$2$ #@LATES({%&$$#@LF(% "#@CF(%%"#@NF(% " (#@PF(%%( "&%.HL&%0FIRS'%4LIMI' %6US'%8PRE'$%:DICTLIMI'/%<BKSPEMI':%>EMITSU'K%@KEYSU'Z%B?TERMSU'i%DCRSU'w%FR/WSU'%HB/BU'%JB/SC'%LC/'%N1'%%"#@2'%%"#@HER'%&\$#@ALLO'%&\$VB%% BKSPKE%%S&%R&%TI&% WIDT&&% WARNIN&0%FENC&<%D&J%VOC-LIN&W%BL&a%I&p%OU&{%SC&%OFFSE&%CONTEX&% CURREN&%"STAT&%$BAS&%&DP&%(FL&%*CS&%,R#@EMI$%0Rn0n@N:\0]NЃKE$%"0nBN7:\0]NЉ?TERMINA%%>0nDN7:\0]NC%0%T=|0nFN:\0]NЅ(VAR%M%p7 :\0]NЇ(CONST%f%7:\0]N(USER%x%0N7:\0]N(USERCONSTANT%%0U7:\0]N(NEST%%? 8M:\0]NЁ%%%%%%%%D:\0]NOVE#$7+:\0]NDRO$$"TK:\0]NSWA$$4 H@&:\0]NЃDU$+$H7:\0]N+$@$X0[0P:\0]NTOGGL$Q$p00[:\0]NЁ$e$0SP:\0]NC$|$0[<:\0]NЁ$$0[:\0]NFIL$$020[`Q:\0]NC$$0[RK:\0]NC$%" "#0S:\0]NЃSP"#7 :\0]NЃSP##6n:\0]NЃRP##0>n:\0]N;#(#B8_:\0]NЅLEAV#;#T?W:\0]N>#J#f?:\0]NR#_#v7:\0]NЁ#o#7:\0]N0#~#JSWS:\0]N0##JS[S:\0]NЃMA##0So6`MI##0Sl`D## ѓ:\0]NDMINU##':\0]NU!" 2 H@&:\0]NM""$0':\0]NM""82 H@&:\0]NЁ"1"N06:\0]NЁ"H"`0+H6:\0]N*"Z"x20Ӂ6:\0]NЁ"q"0S:\0]NЁ""0S:\0]NЅMINU""DS:\0]NS->""0H':\0]NЃAN""0S:\0]NO""0S:\0]NЃXO"":\0]N(FIND !2[0S4H6CIRCC?f.8D@FDfdXC6A77<` 4C2R< f6:\0]NЇENCLOS!!~00SB`RA0g70g 0gRA`SfRA7`7`7RA7:\0]NЅCMOV!r!Ɛ"H02[0[n `Q` ` Q:\0]NU!!0 oLI 7:\0]NЇEXECUT :[0]NBRANC  .:\0]NЇ0BRANC # BJ[gTL:\0]N(LOOP 6 ZRW0/WnTLXO`:\0]NЇ(+LOOP O ~0WJ@j0/Wl`ڇ(/LOOP r 0W0/Wb`(DO /:\0]NЅDIGI 20@0e* @ o @m@Am @*m@ Al67<`6     L߅ 8` A6040H0R0.0V16N6|p ap pAJkzfNupa08Nup`111p` " |ԅa`M܂_ۄbۆ|ۈۉH!!Nh!Yxpa xN`/x/xLXNsNq@H@Nh!!!B8` xN`L@F!Nu` -LN  START,4.1CLR.BOPFLAG BRA.S.1&RESTARTMOVE.LSVB+64,A00MOVEA0,USP:MOVEM.LSVB,D0-D7/A0-A7;MOVED0,SRDMOVE.LSVB+68,4NRTSX*b.OR$1E40lSVB.BS72vSVA.BS72SROUTINESV*8/20/83rhn`*j.OR$1C00tOPFLMOVE.LSVA+64,2(A7)MOVEM.LSVA,A0-A7/D0-D7ADDQ.L#4,A7RTENOP*CAPITULATEMOVESR,D0MOVEM.LD0-D7/A0-A7,SVB)MOVEUSP,A0ASSUMESSUPERVISORSTATEMOVE.LA0,SVB+64$MOVE.L4,SVB+68SAVERESETADDRMOVE.L#RE.OR$1C806L3MOVEM.LD0-D7/A0-A7,SVA@MOVE.L2(A7),SVA+64JMOVE.L6(A7),SVA+68TMOVEUSP,A0^MOVE.LA0,SVA+80hSUBQ.W#4,SVA+64rMOVEQ#5,D0;STOPPER|BSR.SL1;WAITMOVEA.LSVA+80,A0MOVEA0,USPMOVE.LSVA+68,6(A7)7 ,$ #@DUM7%&$(J(J$ "$2) 7J$7J7%3 X%R&$#@L/CR8%' @($ @  , #@48:%%R'% *- X#@LIS8_%%R$F*SCR # 3%R&$8B% 7J&$5F*$F @7J%3(^*R%R ,$ $ %< @#R X#@FLUS8y%%% %4$ X#@COP8%8$2460nHN:\0]NORIGI6%6+ORIGI7 %7"#@DR7%%&$#@DE7*%*#@7:%#t#$2#d#@17F%%"#@NO7W%##@27d%$F"#@27q%%"#@DUMPHEA7%%2$F$F " 7J$ 2  (0 @ ? ,7J$% X%R% 3*:#@DUMPLIN7%$F 2# @&v$V#@LIS5%*%R$F&$*SCR #3 % %R#%3(^#&$5h X%R#@INDE6%%R'$2 %R#%3(^%#5h%< @#R X#@COL6B6|0|61/*R#@0K% )+#@IMMEDIAT0%( @$n#@[COMPILE0%,#%)$ ((#@0%,#%)$ .#@FORGE0%&$&$" )0$F&R$C.%&$$F# (0%) "# (0 )#@INTERPRE.%, @&$(0 @ (( ,( / ,',&$' @. ,$ ./ ,#@VOCABULAR/"%. (&$(('&l$(&l$N.'&$#@FORT/s/:WDEFINITION/%&$&$#@QUI/%%&v$)#.%R+F/.&$# @ * #@-k%)L)&$&$-t) &\$V)%#@!COD-%-t)((($(#@CONSTAN."% %.*#@VARIABL.=% %p.*#@USE.S% %.*#@*R* ?5|#&$&v$/#@ID-%+  _$$F(($ "+$2!+*> "*R(^#@CREAT-6%'F$' 0"(0%), @$ (-< 5|(^'$F$"%"# @'$F$F'$ $'!%$2$%''$F$&8$#''$F $n'%" $n((&$$''( ,&,$&$"$2!|' "+&$V$ "#d#'$"''#t!#@(NUMBER+%'$F#d$&$ @,$2&$!$ (J&$!#&$' @%&$V#t ,#t#@NUMBE,3%%%(J$F'$ -($$F#d" &$,>$F$&" @$F$ ."%)% ,$ #t @##@-FIN,%&+'&$$!$F# @ $ $F#t%""#d" ,($F  $ @#R$ &% ,$F#$%#'$% X$ #@QUER*%&,$ P*%&$#@+>%&v$ @*%&v$V%&$&v$'%""# @)L#t$ ,#t$ #@ERAS+Z%%$#@BLANK+%&$#@HOL+% '$V'$$#@PA+%' D"#@WOR+%&v$ @ &v$4% &$#@DECIMA)%  &$#@(;CODE*%#t((($#@COUN*%$F'$2$#@TYP*6%(n @$ "$2 #$% X ,$ #@-TRAILIN*K%$F% $ $ "%"$&" @#R ,%" X#@(."*t%#*>$F' "#t"#d*R#@EXPEC*%$ "$ % $F&$$ @ $ 'V$$ #($#@!CS(%# &$#@?ERRO(%$2 @- ,$ #@?COM)%&$# )#@?EXE),%&$ )#@?PAIR)D%" )#@?CS)[%# &$" )#@?LOADIN)q%&v$# )#@COMPIL)%)4#t$F'#d$(#@)%%&$#@)% &$#@SMUDG)%(  $n#@HE)ĠȮĠ؍Ġύ̠ƺΠ϶ύĠȮĠ؍Ġύ̠ƺΠ϶ύĠȮĠ؍Ġύ̠ƺ°Π϶ύ ĠȮĠ؍Ġύ̠ƺİΠ϶ύ #@9%$F99#@L9%&$8#@DE: %$F9 $F(J 7J'9T7J9t X9#@+:%%&$V:#@-:E% &$V:#@ KųೳŪŪųųij  !"#$%&'()*+,-./0123456789:;%"$4^84#@XBU8%4#@SFORGE9 %/)0#@TEX9%'''++'+''!#@LIN9-%$F8B(<  )&$5F$ #@-MOV9M%9T'!4^#@R9l%+'$29t#@H9%9T+''$F+$!#@9%%949#@Er9%9T'  $4^#@Spr9%8B$ "'% 8B7J"$F9T$2'9t X9