ML }  X c0C)HCCH Mhhݩh `eCDiCD`  RyHP   * 1H0芢@) Y0.Ș`#(PMR\ \b Pgi 0  % @ / ՠ`d   0DDԝLȀ}N@  )?HI Y0`HIJH) * J j * hJJJ )HJ h i     } YS S0 i`΢ϣ߳H J3xj2h} 1 |9 ӭ45(420 * (0241өX.`  R *i)Lvw  ~*P}E 5 LN(G E  r s k rsrL ( E LO(0d( L iE0O +)$IC  H S8 }q p h   j 8no CDLQ CFl M  LO Ri)Llk2'")*F }$F$F$F$F$ 5 )ШF/Șl]kpqС,LQ/A! Ti)Zlk@ ܬ/i)(")")k }$F$F$F 5$/L /lF@jj(LNkle$$%8(k()` R 8 ELO Ri)^>jf | NrC s } ) vw5g   enfo Glvw LQ@iLm>j FL ~Jjjjii p qEh }jlrs`LQ:$ȱ$@+[_#{ 8  Խut! ai 8   E I   ] C } H h    ˰ 8  N   Lm E  ,  [ `LQ ,/ 8 ~/  Ơ? ѩ}/  [ /Lj0?MoLn FjMqLp NklLOLQnLoMlNLO R"(+}ըHH`Q R!!  % !   / .   FȑF! /GF \H"+0+* }! F tLQnm: J~nTF1F  *n+)5! n (, n)1JJJn(n*o} I ,0  ci a oF? @ , 8,0 ʩ0H Eh   i}  D ]DmmFLQvtu`*&!*@h ] 0 ^0` c 0l$$%}()()%*&J%H,@hH hH@,h $% 8i8$(%)0hhH ]h`() c 0H c 0 h}`hhh&JJ ](ll  LQ0  /qnoHH 9 9 H H  I9  9 } Nd EH  Q8 o n  FnoL HII/ Ih8`h`Lnon`no`u F }E VEhLO/luF l0BF/lɜɛ׽hE N  b VFL FREE SECTORS C} H) *Fh ):FȽ F FC IH' 0 d  i:Fȩ/F.l`CD/08HDIC}IHȰ/F`ȱ$>.+.i ȱ$:刄H !A \ Hȱ$*?ȝ 2. ? [_{ ,0}-:) 0$:>WI  IТ,LQH  0hLd ~ t u`C ?( 0(C.` E } R =! .ti S0N EE D XC )0')AY  )ע ? 0E088FG \o}n  (HhLcL3 iJ i Lqp 0=rspnqopqlk`jZj0  j FL`H}FhȑFȽlFi0 h FFLFpvqwgneofLF pq7  G0i 0 FJJh1FqȱFpȱFk`B!}08`hEE D 8. =D}tui( TʩL`b!)    cȌaȌd b`aab}H8 hdaHcd8 cH hHH  \h hc` =Hh I8ih( t  ( t(!` L\}CJfCJfCJfCDfC` a  HII  INdh  `h  `n)8jHniPoijIjFIjFIjh` a } I 38  8H0 I  ' H LQ8j Y  8j NdY  &I &I &IHeH.p!}Iiq  `!.莿 2Jjj }.m Ȉ!m FG` ɩLQ z "} e Hi04 \ Ȍ  8 i h !`I0 `C Y8.`DOS SYS#} I  ` ~ݩ.C/`ba.m۩mѤC9 `C L] H  ,- '0 l $}, BLVDE`D1:AUTORUN.SYS8hhJ ȱHȱIȱBȱDȱEeeHHLV)  %}1*  ,,p-  0 I &  '0   Lw)l, 0  I&LD1:MEM.SAV&}E:D1:DUP.SYSPAC*.*FA*.*E:D1:DUP.SYSPAC*.*FA*.*E:D1:DUP.}J)1CD2:DOS.SYS n  * \*`آ R'S )ɀ@  U))% BError lo(}ading MEM.SAV or memory!  0* b*c*d*e* R Hd*JSDd*J-=e* 0c*ʈд =}MYDOS 4)}.50 -- Copyright 1988,˛Disks 1D- 2S- 3S- 6S- D: = D1: ~= =1-8.Dir of D1:-D8: *. Dir of D:A. *}Disk Directory K. Save MemoryB. Run Cartridge L. Load MemoryC. Copy File(s) M. Run at AddressD. Delete File(s) N. L+}oad MEM.SAVE. Rename File(s) O. Change Config.F. Lock File(s) P. Set DensityG. Unlock File(s) Q. Make DirectoryH. Wr,}ite DOS Files R. Pick DirectoryI. Initialize Disk S. Set RAMdisk #J. Duplicate Disk V. Set Verify Flag  ?莼-}( 0  =Select Item ( for menu):@  =ɛL)1L,*L,:W@ ,,L=No such item!.}L*, -L*, BNeed new file name! BNo drive or director0}ies allowed in new name!Lock Unlock Delete Lock which file?â-#Unlock which file?ɢ-$((H @ AQ/wDel1}ete what file?Ѣ-!((H @ ANJ =Answer 'Y' or 'N'h `B L?;(( ~=( ~= =? =Y ?Lj.H @ AhR ?2}R)L*,LM/L-Lz-File to rename, new name? @ A(9', ȱ:>0{ ПFull directory name?Z"L.Dire3}ctory to be used as 'D:'? @ A(5)L.(I: ȱޝL*, BInvalid directory!L?( 4}(0Li-File source, destination? '( @C۩2ڭ82ܭC B9'0 @(ߍeލd(DЍ( ? 9'5} A rBȱޙ':>Ȍ(C0J* .B :'ȱ/.* #,ɛȝ:' ߰ A L?,(0L*, '6}ut(:'3?&' .'Ƚ:'?&'  .ى'Q?''(#( ~= =-->' ~=7}Q =YR_o (J(  0?B݌''BK)`''utz0( >(L0L*,L?nDisk to FORMAT:8} YA B(UTލ1 =(Press for Enhanced Dns)Type to Format Drive 2: =AIYZNj[R VL9}?L*,D2:DUP.SYSDrive to write DOS files to? YAH1:*K)2J) Z wB hpJ) 2<2U:}TC٩1ة۩کL;Source, Destination (Sectors)? YA)((9'( SA)((((( @(0% =Inser;}t both disks, type = A( A((/( B(( BDrives not compatible!J(j(9'Hi''<}h(ɛy BInvalid options! @-&& @)׍&&(&&&۩ک&&&&8* <4&&&& <4=}8*8(ܭ(ݥ2C, BNot enough memory! ک&&`(Mh  & =L?&i &>}&&&mm   =  &((&թԥԍ(Ս(((( ( ((C2((?}ՠԍ((,(0"( (( =m(m( & &("L*,  ( AL4,(, =Insert DES@}TINATION disk, press =Nͼ J) b( 0K) ?((ԭ(խ( ( (((L4Drive, new density:A} YA9'ɛ BDrive unchanged.(ު90٨Ȍ(SD  ABL)xԌҭHӭ@ @ ʎӆ@B}ӭ@@ :  $ӹ @hөԥX` Aˠ =RAM disk present? =NL#8 =xlC}on or E type RAMdisk? =Aό  L   M A, A6: ' =No extra memory available!L#8L7 & & D}& =Use default config for 0)ȩ ~= =K? =NL7 =Size(K)? ? @FjFjFjFj: =Page seqE}uence? ? @o* =RAM disk drive no? = 09) `8 -8**H***) 9 Ȋ)h9 @@ʊ F}H'h(#''/'(ɛ ? @(@: 3 ʽ' L7 =Duplicated sequence number!L7 =Wrong numbG}er of entries!L7K큅쀄 =Verify WRITEs? ; =NumberH} of File Buffers? ? @  6 Lw),R( ';L*,Drive number or : =ɛLC99L60Ȍ( =Remove I}drive? =Y =Is drive configurable? =YЂ =High capacity drive? =Yy =Is drive double sided? =Y ; =TracksJ}/side? ? @#0M P( ; =Step rate? =4/ ; ';L*, =Drive size (in sectors)? ? @H(K}h *;L*,RAM disk drive no? 8L*,Verify WRITEs? ;L*, =WNPy`(`(  LABSAVE:filename,start,end(,init(L},run)) @TUH @Cp` 2< @؆8օڊ BInvalid START-END range!۩ @  @M} hԄՠAμȌZ wB04*  0$ڍXۍY֍T׍U,0LBLB #CL?ֆ׌`Load MEM.SAV from whaN}t file? 0#L*,L?Load from what file?) @TU&̩Z wB &0&-&а&𨭼INIZ'O}RV0II BNO CARTRIDGE!Ԇխ  )L?Run from what address? ?ɛ @P} BAddress must be 1-4 hex digits! BHILV n=`hh =HH` =0{a Hɛ n= n=h` nQ}=L*, = = pHH =hh`K: p `(((( i ɀ((L?(`(B'(0!HH''^R}>I^>(`^>DH(`(HI`(o5 ~= =( B( >@A (J wB0x((HHIIDDES}E B ?(CɈK(٢A ~= =( BL>(B^>((ڤ ܝHݝI VL_>L?(" B !B J) T} B(L& R XY( ?&:0H&((& ( .( & ( .(ʩ(U}`ލD&ߍEBIʎH( V0`ԩ ؠ@ȱ@ȱ)@ BError -- 139&`$8f 3AԄձG/ V}$<68i/(Ԧ`H&եԦ&&eԅheԅԊe(iL*@&&&&ԅL*@B ? 3A?*(ɛ:W}./2SX(0ȱ/.ɛ(ލ9'ި0#:Ȱ :ފ :ȱ: : CAD CAޥX}`(eޅީe߅`(` @L\A @TUȪ: BFile name not allowed!: )  i( =0+L Y}TUD BNot a disk file!(0` =Insert SOURCE disk, press =,(pӮ(A(O  1B AB1BZ} ` % 1(L/ b(de BJKO L?O` B((*(([}(`ȱޙ((:>Ȍ(`D:`OS.SYS,DOS.SYShh =L*,  VLJ C C,pLiLF#Խ٩Յ׆ \} LB`((:>Ȍ(`D:`OS.SYS,DOS.SYShh =L*,  VLJ C C,pLiLF#Խ٩Յ׆ 3إ  ^ _UVyz yzآWDԆ膲jxY  X^}ZZZ ԭ @ E : 1 ) )ر  pL 걍ޡ뱍ߡ L Lb \UV_}  x^_ Xhhl L3  =l01!/L\ BLVԅ` ɛ T``}dҩҩҎ` 1 :  Ohh`#.= O#ɛ`{hhLp&&&&Պԅ戥La} O#ɛ"򄉩 ذ ٰ ` {hhLpȦL膄 থԥբ `A O QԤɛb}:  (#$ й` ԅՅ Ԡ` hhԍՍxZZZXHc}W(l ԅՅT v #ɛ TTT` Q\ থԥբ ` Od}Ԣ `5ȱ  '# $ ɤei`#I#` ʥ#9e}ԥբL` ʥL ʥ ᤠ蹥$ʈ` ʥ إL L ,$Y%` ʥ ȩ ʥ 楠$`A9` ʥ Of}44)Ii8L|8囅ԥLeԥiթeԅԅiՅ Ƅ` ʥ إ 楩)$` ʥ L OԢ L` Og}ԢL`(9L OԄ p ؠ#)#$ŭ0* ,$豁$)$%T h}#LVʆ ئ#)#` #譃#`$#襄#`5JJJJ{Ȧ5Ԫ{i}Ȧ` '#`Wh@؎hhh8hXLJnml +?<ƳI? Lbh)H(j}WL3W* ɜ#hhhhXLJl^ O P8 8 ׭ԭ 8 k}9dz `I b0 Թ L /ϳ` /ӳ`H****)h)`l}T` : 8`(v  pL[~$Ƈ p ڨˤ  !L[ɜ𩤇#ɛ    ڨL[#m}ɛ ` !`>` B#DE(HI: ɤ V0`hhLET ./`I!0n}ԥLݳ׳ 㳅``L4L7@`ɀɁ ILɂ I@LɃo}@оɄдɅ𰥷@a { LŸE``ZZL8HZhZʎp}ȱ` ԅՅ :A F SO = : 1 4 ꙥ  5 gLV?q}L` L@ZZZLL @L  'Ll @HȱhL󫥡/`d󭺳9hr}L󫭺9hLĄxZZZZZZպH(hs}xZZZZZZX@ 0Э Li it}i i`^` #%=ș#ȄI `#$򩛙% 򬥰LY ԅՅ u}œ#Œ擥œŒ똑`L`T`T  TLY )! )!hhHv}h`; ߬ UD 1 :  !LS ѭLS   ԅՅ 4 45 ɤ L 򬩛) Y ) LLE :w}5 ߬ hhhh`Q  pL` ./0 v  & "𩛝" ԅՅ`ԥL8嶅ԥx}L` `׳Թݳ X8 񤉹ͥi` 1" O`#81$ $y}4 LLpԝ׳՝ݳԝ㳘LE 1׳ݳ㳑鳝׳ݳLEL 1 O`#ɛ ,z}K 턀, 8Ȅ =iiɸ#Z`KĀ ঢ#{}ԥ #ʈ$#5敥ԥբ `  LWD  w0NO EL w Nԭ|}O ְ w ˰ 0LH EhɈ/ ঠ#  #ʈ$#0 LYLN BDE}}HILV䥖8唅啅ii`NO`NO`N`O`LwL E JKBSDE V0~}`hhL HSUhD` 1 Ohh`#,ɛS젥hhLS`D ԅՅ ԅՅŕEŔ; }NO w0+NO w0NO w0 0LEH EhLQDRN*CGLSBT-=FPH.E-񣝣dL!ѭf1W٤} )8OU !Aa!Aa>^  P0p@pppB B Bֲ}Al쀀|||||}|$)3!}|||||| @@ ` @`~}}Ҵ #4ALZhw$ 0 5 $ 3 & / !8930 DP : AXYSPBRK POINT FOUND~,.0123456}789ABCDEFGHIJKLMNOPQRSTUVWXYZFIND #,X)Y,)LOAD ATBREAK KEY ABORNO DEVICE HANDLETRUNCATED RECORDEVICE TIMEOUDEVICE NAWRITE} PROTECTEFUNCTION NOT DONDISK FULFILE NUM MISMATCBAD FILE NAMFILE LOCKEDIRECTORY FULFILE NOT FOUNFILE NOT BINARNO SE}T BRK POININVALID OPCODBRK POINT SEADR RANGE ERROADCANDASLBCCBCSBEQBITBMIBNEBPLBVCBVSCLCCLDCLICLVCMPCPXCPYDECDEXDEYEOR}INCINXINYJMPJSRLDALDXLDYLSRNOPORAPHAPHPPLAPLPROLRORRTIRTSSBCSECSEDSEISTASTXSTYTAXTAYTSXTXATXSTYA???ieum}yaq)%5-=9!1 $,}0PpXʈIEUM]YAQLl JFVN^  Hh(*&6.>jfvn~@`8x} !$'*-033333333666999<<<} R?ee  ?    D ;""<"" ' "> "   Щ`8 }#. `:G" $ # % 8$ $ % % $ % Q  #L<# #!  #0 #L#  #0 w#}) w#`ii`ii`ii`& "! '?>  #=  # '?> #= } #`D` >ii`A4 >ii`#4 'G '?> D= E l$5) 0ȭ( ȭ' >}ii`' ( ) ( i( ) i) L|$ح( )' ( JJJJ( ' 0' `$4 $ $ " >ii`5}` ! & `$4 % $ " >ii`& ȱ! `(4$5 $ Q% ",Xȑ)ȑ >ii`6}`(4$5 $ Q% "),ȑYȑ >ii`$4 % $ ",Xȑ >ii`$4 % $ ",Yȑ >}ii`$4 '?> D= EI急8倅L!&eiii8吅呅 '?> 5= 6 '?>} 7= 8 >ii`$4 $ $ ",Xȑ >ii`$4 $ Q% ",Yȑ >ii`(4$5 % }Q% ") >ii`* , + - 5 > R?ee  ?, * - + U'8, , - - L}2'`` '8吅呅 '?> (= ) '?> *= + '?> (= ) '( >ii}`}~ ' `.( '`" # :G B/ 0 (0 B V䥊`0BDE(HI} V ;Т   ʽ  '$ R?ȑii # 0L( #" i}" # i# L-(labeling now onlabeling now off. . (( 2`. (( 2` B/ `0 f-1 2  ,} C`0 f- + * QS L3CL *0 f- JDLA)iiŁŀLE)8倅偅$ % $ i}$ % i% 8倅偅0BDE$ H% I V JDLA) ',LE)8倅偅$ % $ i$ % i% e}e M,2 1 3 4 Lu)eeYʼnXň M,Lu)0BDE$ H% I V JDLA)LE)Load Ra}nge = $ - $oad oncatenate kip uit2 '?> *= *1 '?> *= *4 '?> *= *3 '?> *= }**( > *( 2`entry point = $init point = $ -T+1 0=0 f-1 '?> i+= }j+2 '?> g+= h+X+( >`l+1 0<0 f-1 '?> += +2 '?> += +p+( >`6,(} 2`virtual addressing set#\,( 2`load range beyond buffer, skipping,( 2 Q`L1 2 ȑ}0BDE}DD}EEHI V JD 8--( 2`not binary load file. uit oadfile loaded at} virtual $0000ii}H}I`0B1D E0 HI V`appended file1 A2 : }-( 23 $ 4 % 0 f-1 3 2 4 $ 1 % 2 `9  ?9 5 6 7 8 c.9 9 L. c.5 i5 6} i6 7 i7 8 i8 9 ֠ȱ8倅偅 "/`5 6 7 8 R@1  Y}`5 6 7 8 P1  Y`# of sectors = init address = $boot continuation = $} '?= .> .ȱii '?= /> / '?= /> / '?= /> / '?= /> /.}( >.( >/( >`9 5 : 6 7 8 Lt0 R?00000( 2`5 }6 U ?00 9 : 5 R?ee0( 2`7 8 c.5 i5 6 i6 6 05 }0!7 i7 8 i8 9 ƭ: : Lt0`address below bufferinvalid sector number9 5 : 6 7 8 L1 R?}00000( 2`5 6 U ?00 9 : 5 R?ee0(} 2`7 8 .5 i5 6 i6 6 05 0!7 i7 8 i8 9 ƭ: : L1` (P6DS; < [2i2(} 2`; 2( 2`< BfD2EJ V JD [2`2( 2` B V`P:output sent only to screenoutp}ut sent to paperoutput sent to disk B(DE%HI V` B [2l virtual addressing off  R?8倅}偅 ',`2( 2`free memory $addr range $ - $8 '?> 13= 23 '?> /3}= 03"3( 2 '?> A3= B3 '?> C3= D3 '?> I3= J3 '?> K3= L343( 2`code buffer zeroed}恦XY L43( 2`labeler compression onlabeler compression offf4f4N4(} 2`f474( 2`+find listing option reset 44( 2`D:CODEBUST.HLPno help file} Help Screen}@BĝD4EJ V 4( 2@ B V` BD4E&HI V@B(DE&HI V0(ɠ >L}K5 QL-5TTACH OOT HANGE ISPLAY NTER IND ELP IST EMORY PEN EAD END NOPENIRTUAL RITE ERO EIT LABELE}RLIST FOUND-1 LIST FOUND DISP FOUNDET UT COMPRESSV (addr) S (D,P,S)E filename O filenameR filename } % filenameB (max # of sectors)D [addr] (# of bytes)C hex or char stringL [addr] (# of instructions)F (F,A) (he}x or char pattern)G (hex sec #) (# of sec) (buff addr)P (hex sec #) (# of sec) (buff addr)W filename lo-addr hi-addr [run-}addr] [init-addr] (alt-adr)(optional), < * , X - /required>[ * , x - /optional]Valid place holders are * , X - }BD5E9HI V`gathering referencesverifying internalassigning labelsF G :G +C/ ` 9 kC EC I: kC E}C C)8( 2 C kC C D C 8" # ) 2` : ; 

R?J R?P }(= ) '?> *= +;? '?> A= B:F}:F}:FiE/ʈ` ? B(DE%HI V< &} B(DE%HI V JDL?; & B(DE%HI V JDL?``%( `詛(` = JJJJ> = )}= = ii@=  ` ?B :/B B D B C E D ` ?E )E D E E C )D B D D }8E E D D L?` B L?? eiB ` @  @`F L6@A} @ ޽'" @` N@`@ 9B C B :/B B B C @Ȍ@LS@ @`'" L@}@ @`end of buffer reached݀5@򥒅ii ?A @`iiYXЧ}@( 2`4=#- U'`8  "`  "` LB > R?ee T'}" ZB` B`need source string for changeneed address and string for changeA( 2`"A( 2` 5B }C B :/B B B C LB tB`' " tB`HH U'hh`   𩛙}  BD EJ V/ 0 ` JD B ` B V`   𩛙 0BD EJ V/ 0` JD C`0} B V`   𩛙 @BD EJ V/ 0` JD kC`@ B V`D:CODEBUST.TMPPBvDCEJ V} / JD C`P B V`@B(DE(HI V`D:CODEBUST.TMP,LW0 Cɛ P BԝDCE V JD`}@!BD E V JD`I/O error number iiإ)i0HDJJJJi0GDi0FD5D( 2`}            }             ???A}DCANDASLBCCBCSBEQBITBMIBNEBPLBRKBVCBVSCLCCLDCLICLVCMPCPXCPYDECDEXDEYEORINCINXINYJMPJSRLDALDXLDYLSRNOPORAPHAPHPPLAPLPROLRORRTI}RTSSBCSECSEDSEISTASTXSTYTAXTAYTSXTXATXSTYA ##%## ####('(((-(*!$!! }!!+)&)) )/)0201620102018070  43  5 } ,,,",,,.,, 620102018070  43  5 6 Codebuster is a delightful toolfor the experienced ATARI hacker. Itis a disassembler that will load anyDOS file into a }buffer and displaythe contents as ASCII, hex, or6502 instructions. It will write outthis same file as a binary load file.}More than one file may be loaded intothe buffer and then rewritten out asone combined file. It will read boot files, but} it won't write out boot files.Press to go on to the nextpage or enter a 'Q' to exit HELP.The next few screen}s contain theformats of the commands availablein this program. All of the commandsare entered through the standard OSinpu}t routines and thus must befollowed by pressing the key.The commands are entered as singlecharacters followed by th}e requiredand/or optional positionalparameters. All addresses must beentered in hex (hhhh). All othernumbers will be in d}ecimal (dddd).Codebuster does not check for validhex or decimal numbers.Here are all the commands available:ttach,} oot, hange, isplay, nter,ind, elp, ist, emory, pen, ead,end, nopen, irtual, rite, eit,ero, labels, comp}ress, lister options, et utPlace holders * , -Filenames do not need the "D:".ttach labels to the disassemb}ly.AThis will turn on the label attachinglogic. Entering the command a secondtime will turn it off. However thelabels }must first be ntered.Read the oot file.B ddddThe decimal number is the max numberof sectors to load. If none iss}pecified all the sectors in the bootfile will be loaded.hange memoryC hhhh hhhhhhhhhhhhhhhhhhhhhhhorC hhhh 'abScef}gh...'Change the contents of memory at hhhhto the hex string or the ASCIIstring. Remember you will be changinga virtual }address which should relateto a section of code in the codebuffer. You can change memoryanywhere in the machine so becare}ful. Using a place holder in theaddress will change memory at thelast found address.isplay the contents of memory.D} hhhh ddddDisplay memory at address hhhh forthe next dddd bytes. This will be avirtual memory address unless a isenter}ed to turn off virtualaddressing. If only a 'D' is enteredthe next default number of bytes willbe displayed. A place holde}r may beused for the address to change thedefault number of bytes withoutchanging the address.nter the label file.}E filename.extEnter the standard named DOS file tobe used to build a table for thelabel attacher. Each entry must havea }$ to start the hex value.LABEL = $hhhh ;commentsorLABEL EQU $hhhh ;commentsThe labels will be placed at the endof }the program moving the user codebuffer up in memory. If you werelooking at some code it will be over-written and the virtu}al addressingwill be incorrect.ind a stringF (F,A) hhhhhhhhhhhhhhhhhhhhorF (F,A) 'abcdefghijThe second F tells c}odebuster to findthe first occurance in the codebuffer. If it is not specified thenext occurance will be searched for.The} A requests codebuster to start atthe front of the buffer and find ALLoccurances of the string. When theend of the buffer }is reached amessage is printed and the findpointer is reset to the front of thebuffer.et sectors from the diskG hhh}h dddd hhhhGet dddd sectors starting with sectorhhhh (first hhhh) and put them atvirtual address (second hhhh). If noadd}ress is given put sectors atbottom of code buffer. If no count ofsectors is given get 1. If no sectoris given get the firs}t sector.ist machine language code.L hhhh ddddList machine language code beginningat hex hhhh for the next ddddin}structions. If the number ofinstructions is entered it becomesthe new default. The standard defaultis a full screen (21). }If only an 'L'is entered the next default number ofinstructions will be listed. A placeholder may be used in the addressf}ield to change the default withoutchanging the address.Display the emory location and thesize of the user code buffer}.MThis probably is of little use to youbut it helped me during developmentand I didn't have the heart to takeit out.}pen the listing disk file.O filename.extThis is the file where all output canbe sent with the end command. Thefil}e must be opened before issuinga isplay or ist command with sendpointing to the disk. Once it is openyou may leave it op}en and end theoutput to the screen or the disk.When you are done you must close(nopen) the file before output canbe sen}t to another file. Many otherscreen messages will go to this filelike the boot file record and binaryload file load ranges }.ut sectors to the diskP hhhh dddd hhhhPut dddd sectors starting at sectorhhhh (first hhhh) from the virtualaddres }s (second hhhh). If no addressis given put sectors from the bottomof the code buffer. If no count ofsectors is given put 1 }. If no sectoris given put to the first sector.ead a binary load file into memory.R filename.extAs each block of b }inary load file isencountered the program will promptyou for a response. This allows youto skip, load, or concantenatecer }tain portions of a binary file. Arange that is loaded is placed at thebottom of the buffer. If you load asecond load range} it will overwritethe first and the virtual addressingwill be set to that of the secondload range.You may also concan}tenate a loadrange if it will fit in the buffer.A concantenated load rangewill be placed in the bufferaccording to the vi}rtual addresssetting.For example if the front of thebuffer was set to virtual address$5000 and you tried to concantenate}a load range of $4000 Codebusterwould not allow you to because thatwould place the load range belowthe buffer in the prog}ram area.The address could also be to high.That is beyond the top of free RAM.end output to screen, printer, diskS }Dend output to the open disk file.S Pend output to the printer.S Send output to the screen only.This cancels }end printer and enddisk.Output can be sent to the printer andthe disk at the same time.This entire help file may be} printedby ending it to the printer.nopen the listing disk file.UThis file must be closed in order tosave anythi}ng written to it beforeleaving CODEBUSTER. If you leave withan eit it will close this file foryou, but if you just system} reset thefile will be lost. Sorry about thesilly name. I needed the "C" for thechange function.Set irtual addressin}g.V hhhhIf a "V" is entered by its selfvirtual addressing will be turned offand you will be looking at realaddresses. }If an address is enteredthe start of the code buffer can bereferenced by the address you gave.It is like relocating code }inmemory. The program starts up withvirtual turned off, or in real mode.rite binary fileW filename.ext lo-addr hi-a}ddr run-addr init-addr alt-addrThis command will create a binaryload file from the code buffer. Youmust specify the st}art and end of theblock of memory to write. You mayspecify an alternate address(changing the virtual address will dothe s}ame thing). Either run and orinit addresses may be specified.Place holding characters may be usedon run-addr and init-addr}.eit the CODEBUSTER.XThis will close the listing file andreturn you to DOS.ero out the user code buffer.Z}This will zero out all of theaddresses specified in the emorycommand. When looking at a section ofcode the zeros will he }lp identifywhere the code ends. invoke the internal label processor% filename.extThe input file is an assembly lis!}tingfrom CODEBUSTER. Create the file bypening a listing file, listing somecode and nopening the listing file.Then give "}the label processorthe file name The labeler willgather up all references and then verify which ones are internal andconv#}ert all internal addresses tolabels. All undefined opcodes areconverted to AMAC DB commands. Toggle the compress opti$}on@This will place MEDIT tab charactersin and shorten the the output fromthe labeler. It is a space savingfeature.%}Lister options list found address - 1 list found address display found addressWhen "finding" ASCII or hex strings&}these options determine how to tellyou where the string is. The addessmay be displayed or listed. Listingminus one will al'}low you to see theinstruction that is associated withimmediate values or addresses ininstructions. Listing or displayingt(}he address found allows you to seeASCII strings or assemblerinstructions.This program is public domain andtherefore f)}ree for the giving and getting. My best wishes to allfellow hackers.Don't forget - Who ya gonna call .... *} `````````````` `` `Ҡ` `` `````````````` xCodebuster is a delightful tool for the experienced ATARI hacker. It is a disassembler that will load any DOS file into a buf,}fer and display the contents as ASCII, hex, or 6502 instructions. It will write out this same file as a binary load file. Mor-}e than one file may be loaded into the buffer and then rewritten out as one combined file.It will read boot files, but it wo.}n't write out boot files.Press 'RETURN' to go on to the next page or enter a 'Q' to exit HELP.The next few screens cont/}ain the formats of the commands available in this program. All of the commands are entered through the standard OS input rout0}ines and thus must be followed by pressing the 'RETURN' key. The commands are entered as single characters followed by the re1}quired and/or optional positional parameters. All addresses must be entered in hex (hhhh). All other numbers will be in decim2}al (dddd). Codebuster does not check for valid hex or decimal numbers.Here are all the commands available: (A)ttac3}h, (B)oot, (C)hange, (D)isplay, (E)nter (F)ind, (H)elp, (L)ist, (M)emory, (O)pen, (R)ead (S)end, (U)nopen, (V)irtua4}l, (W)rite, e(X)it (Z)ero, (%)labels, (@)compress, (-=+)lister options (G)et (P)utPlace holders * , -Filenam5}es do not need the "D:".(A)ttach labels to the disassembly.AThis will turn on the label attaching logic. Entering the6} command a second time will turn it off. However the labels must first be (E)ntered.Read the (B)oot file.B ddddThe de7}cimal number is the max number of sectors to load. If none is specified all the sectors in the boot file will be loaded.(8}C)hange memoryC hhhh hhhhhhhhhhhhhhhhhhhhhhhorC hhhh 'abScefgh...'Change the contents of memory at hhhh to the hex stri9}ng or the ASCII string. Remember you will be changing a virtual address which should relate to a section of code in the code :}buffer. You can change memory anywhere in the machine so be careful. Using a place holder in the address will change memory a;}t the last found address.(D)isplay the contents of memory.D hhhh ddddDisplay memory at address hhhh for the next dddd<} bytes. This will be a virtual memory address unless a (V) is entered to turn off virtual addressing. If only a 'D' is entere=}d the next default number of bytes will be displayed. A place holder may be used for the address to change the default number>} of bytes without changing the address.(E)nter the label file.E filename.extEnter the standard named DOS file to be u?}sed to build a table for the label attacher. Each entry must have a $ to start the hex value.LABEL = $hhhh ;comments or @}LABEL EQU $hhhh ;commentsThe labels will be placed at the end of the program moving the user code buffer up in memory. If A}you were looking at some code it will be over-written and the virtual addressing will be incorrect.(F)ind a stringF (F,B}A) hhhhhhhhhhhhhhhhhhhh or F (F,A) 'abcdefghijThe second F tells codebuster to find the first occurance in the code buffer.C} If it is not specified the next occurance will be searched for. The A requests codebuster to start at the front of the buffeD}r and find ALL occurances of the string. When the end of the buffer is reached a message is printed and the find pointer is rE}eset to the front of the buffer.(G)et sectors from the diskG hhhh dddd hhhhGet dddd sectors starting with sector hhhh F}(first hhhh) and put them at virtual address (second hhhh). If no address is given put sectors at bottom of code buffer. If nG}o count of sectors is given get 1. If no sector is given get the first sector.(L)ist machine language code.L hhhh ddddH}List machine language code beginning at hex hhhh for the next dddd instructions. If the number of instructions is entered itI} becomes the new default. The standard default is a full screen (21). If only an 'L' is entered the next default number of inJ}structions will be listed. A place holder may be used in the address field to change the default without changing the addressK}.Display the (M)emory location and the size of the user code buffer.MThis probably is of little use to you but it heL}lped me during development and I didn't have the heart to take it out.(O)pen the listing disk file.O filename.extThisM} is the file where all output can be sent with the (S)end command. The file must be opened before issuing a (D)isplay or (L)iN}st command with send pointing to the disk. Once it is open you may leave it open and (S)end the output to the screen or the dO}isk. When you are done you must close/(U)nopen the file before output can be sent to another file. Many other screen messagesP} will go to this file like the boot file record and binary load file load ranges.(P)ut sectors to the diskP hhhh dddd hhQ}hhPut dddd sectors starting at sector hhhh (first hhhh) from the virtual address (second hhhh). If no address is given put R}sectors from the bottom of the code buffer. If no count of sectors is given put 1. If no sector is given put to the first secS}tor.(R)ead a binary load file into memory.R filename.extAs each block of binary load file is encountered the program T}will prompt you for a response. This allows you to skip, load, or concantenate certain portions of a binary file. A range thaU}t is loaded is placed at the bottom of the buffer. If you load a second load range it will overwrite the first and the virtuaV}l addressing will be set to that of the second load range.You may also concantenate a load range if it will fit in the buW}ffer. A concantenated load range will be placed in the buffer according to the virtual address setting.For example if the fX}ront of the buffer was set to virtual address $5000 and you tried to concantenate a load range of $4000 Codebuster would not Y}allow you to because that would place the load range below the buffer in the program area. The address could also be to high.Z} That is beyond the top of free RAM.(S)end output to screen, printer, diskS D(S)end output to the open disk file.S[} P(S)end output to the printer.S S(S)end output to the screen only. This cancels (S)end printer and (S)end disk.Out\}put can be sent to the printer and the disk at the same time.This entire help file may be printed by (S)ending it to the pr]}inter.(U)nopen the listing disk file.UThis file must be closed in order to save anything written to it before leaving^} CODEBUSTER. If you leave with an e(X)it it will close this file for you, but if you just system reset the file will be lost._} Sorry about the silly name. I needed the "C" for the change function.Set (V)irtual addressing.V hhhhIf a "V" is ente`}red by its self virtual addressing will be turned off and you will be looking at real addresses. If an address is entered thea} start of the code buffer can be referenced by the address you gave. It is like relocating code in memory. The program startb}s up with virtual turned off, or in real mode.(W)rite binary fileW filename.ext lo-addr hi-addr run-addr init-addr alc}t-addrThis command will create a binary load file from the code buffer. You must specify the start and end of the block of d}memory to write. You may specify an alternate address (changing the virtual address will do the same thing). Either run and oe}r init addresses may be specified. Place holding characters may be used on run-addr and init-addr.e(X)it the CODEBUSTER.f}XThis will close the listing file and return you to DOS.(Z)ero out the user code buffer.ZThis will zero out all ofq}F#DOS SYSF6'DUP SYSF0]DEBUG COMFDEBUG DOCFQCODEBUSTCOMFGCODEBUSTHLPFH+CODEHELPDOCF7}SUPRDEBGCOMFBSYNASSEMCOMFdQUICKASMCOMFbZDISKDISSCOMFOMEDIT F AMAC F|MEDITCM BAS the addresses specified in the (M)emory command. When looking at a section of code the zeros will help identify where the cor}de ends.(%) invoke the internal label processor% filename.extThe input file is an assembly listing from CODEBUSTER. Cs}reate the file by (O)pening a listing file, listing some code and (U)nopening the listing file. Then give the label processort} the file name The labeler will gather up all references and then verify which ones are internal and convert all internal addu}resses to labels. All undefined opcodes are converted to AMAC DB commands.(@) Toggle the compress option@This will plv}ace MEDIT tab characters in and shorten the the output from the labeler. It is a space saving feature.Lister options(-)w} list found address - 1(=) list found address(+) display found addressWhen "finding" ASCII or hex strings these options x}determine how to tell you where the string is. The addess may be displayed or listed. Listing minus one will allow you to seey} the instruction that is associated with immediate values or addresses in instructions. Listing or displaying the address fouz}nd allows you to see ASCII strings or assembler instructions.This program is public domain and therefore free for the giv{}ing and getting. My best wishes to all fellow hackers.Don't forget - Who ya gonna call .... ***********|}*** * * * CODEBUSTER * * * ************** ***********h@G7&-(@/@˄ͩTΩ̢XˑPQRS`@V7V`pp~88<~ 0~ p@ y MODNP}MTLAKLJSIUHCGZFKE*DOC=B@A<@>?B>?=Hex.Podaj liczbe: P }B gPB DE J g RXeP͊' 6ԭ - pԭ 멛 p}`BTT冀 phhhh 멛 p0Uŏ1Ő0101  ԢM})Ң B g ҩ<Ӎө2ҢL0 冀 p L****))`PBDE(HILgDE}M p`JiBDEHIK gH0BDEHI g BLg@ ` @}` @`D1:*.*@SɊ!L 0 LX LL` ` ɛ`ɛLH) ph`}H IȊJJJJ Ih`)i0:i`HʠՄȊ J ӕh`80`$-PH($}0: AGL```8 6  ԅՅ`P 6 멹ꥄ  pԥ U: p}  4 p p pU: p  ɛ. p: piiLI冀 pL0冀 p}L0n 6 륂 L0(} 6 yT%   67  L pL0 6 멛 pԥ } U ԩ U? p  Ԡ  eiL 6 멹ꥄ } pԥ U p y~ ƂƃL p ꦀLˢ 6 Ѣ 6  Q 6HԽ}I 6ꥅԩ 멛 pL0 6  6  ԍՍѢ 6  QL-@ #@9#@%#C}# ##@##(@'C(((@,(@)!@$C!}! !@!@*8@&C88 8@.8/1/0@@}51/0/1/0@7/@6/  @3@2  @@4 @}@ @++@+@"+++@-++_ 6 멹}ꥄ ꩛ pԥ U  4 p p p 񪽅} e=U' p p ɛ. p' pU? p? p? pLJ)) eJJJ) eUL#Ɔ}  4 p p pUL  4 p pUL#PL HDɀ$8包8包iiL#}iiee䄀 p p p儀 p$ԥ 릋儀 p}eiL 6BDEHIJ g0>BDE(HI g0 6UiU&} pL B gL0 pI 01L0䥏01L0 pI  L0䥕 L0 > 6 멛 p  }LOEN DL0䆀 LO L}  A L #ȹ(ȹ$ ʊi,X) L),}Y L,X L, Y)Ș$ 0rp XL LLO}   ŗŘ$ŗŘJ 6Lv恆Ff8}ԅԥՅեIȥԑ ȥԑȥՑ p pqL[ 6Ѣ 6 DEb 6 yTN} r 6ԭ  6ԭ 멛 pL0# 6  = p$/$ pԅ 4 p p} 4 p p pL0 멛 pL04 6R L) WWG 6! _ 6}} yA BL) k 6 yAB p w 6  ԍlՍq 6  ԅՅ p}   " 6 ԭ   6ii i  i ƛƚФL0$} 6WL( 6  ԅՅ2 6  ԅՅ9 6  ԅՅUeeō CŌ:; } 捥ŚԥśL0䥂eeƃƂʈ  ƃƂƍƌ}ƛƚL0w䍟L 6 Ӣ 6  ԅƌՅ 6  L 6 4} p p p⩛ p + ĉ󥂅ԥՄ p 뤜Șeeōł pL00}BG  LL``` 8ԥ`0 ` `d 'Ԇխɛ}ɛ0 :'8`ʠ0 Lr0 0`yBԥyG`` `d 'ԆխɛLR'SP0 P  ٦ d ^} P *Lκ : > A,ʆ ƭ ~ LlLo ՜L > ȝ㥌ݥő }L㣩 <0i詁膐  8襹;Ŕ}啰qƴ `kLo <I0 ȝ襌` Q f *`;\ : RORnfjv~SBCSTA}STXSTYXMC,*mȭm 8 & J򤑭ɛƑLԫ8fL+ }DEHIB V  LLh H)` LLʜL   }8譓鐜 Ŕ啰2͎88}ƵƴŲ峐 Ƶƴ    ` 󫭌}L i `˅̅L٦ i `˅̅` i `ˍ̍` i `˅إ̅L >`Lʜ v }쥕&Hȥeȥehe`oLo  &щĆei`e `}` >Υͥͅ΅V t t t ^,ͅ΅ ^ͥͥ 8L` } …L Ү CP    ee  L@) @`5 Ү C 짠8嫑ȥ}LP@0  ` ``Lʜ i <ʩV >ݩ ,  ŀ`8`HH BHI hh`"  0 `0L JC, } ` ˍ̍L 'L8` `LhLʜ ,  `ˍ̍, `ˍ̍} IL L@ +L SC썄퍅 IL S7C0 8}譃 'LLkLhL'H " / <੢DE}hJKBLL BL `ୂDEHIBLੀDEHI B }DEHI BL V0`Lh8cͅ@ Lȱ@ֱ@ `System confused@}SynAssemb}ler (c) SYNAPSE SOFTWAREadapted by Steve Hales from theS-C Assembler II Ver/4.0 @ --- Symbol table ---@*** @ erro}r@Source program: $@ Symbol table: $@Memory protected@Memory full@Syntax@Label not found@Bad instruction@Out of range@Dup}licate label@Bad address@Undefined label@Bad symbol@Local out of range@No normal label@Nested include file@Ok.@ Source leng}th: $@Synapse monitor@Can't hide@Can't merge@@@@File type mismatch@Break abort@@Nonexistent device@@@@@@@@Device time-out@De}vice NAK@@@@@Device done@@@@@@@@@@@@@@@@Drive number@@Disk full@@@File name@@File locked@@Directory full@File not found@JJJ}J)`ؤ 3 'بJ jɢ )JA S)ܘ) JJJ Ȉ` \H v )Ȑhݹ߷ީ&*}i? 'ܢې  `0 vؐ 5Ș vLv `8ܤ٪eؐ` T0 "T3 } T3  T; "D3 D"D3 D"D3 "D3 &1!YMJ,),#($YX$$#]#)i#$S#$S[[i$$)|}mi)S4i#bZH&bTDThDt(ntJrtttrDh2"&&rr&HDD hhޢY p`\Lslp@L})Iؙ L,lHҥҩM hh hh \ ͸Lֺhhh٥ 5 3HHت؆مذH}H +  = v0` 5ؘ8 8LLAXYPS湥Ŵ` [ + :K }) / v `JJJIeH= hHJJJJ h)i0:i0,HH  hh`*LwL㺩@0}ीLƭL?:;Їڥ``` `Ѹ / v ( v) ` EH 2؄h8}`` `qRu`DLw Eb `lƭ EL ɹhh0H(}X`h`y P* * : V 20չI0iŀ IL &&}I0 i` ɻHȻHڠ`RW   S0ii `Lhҩ0Ҡ `RT}VS-+M` ro ep  Dd fhrLdZljjmBhNooozhPg$v'v*v-vh2h:hPhajjjjajlmm}l;e9e q`pqoroqeuppppp>q[qX/oZ2prpnpp poMSANRPJBO.6 "$):#&ile%dit2un!ssembly}3etup)/error<<</utofmemory<<<.oroom7ipeall<<<&ilemodified<<3ave#ontinue<&ileexists<<2eplace}!bort<&   D0:QA.SETNONAMED0:;q>qD0:Xq]qD0:P:uqwqD0:qqD0:*.*qhrqgr98!&300+*-=}~-=,oad<3ave<.ew<$ir<0rn</bj<1uit<7smode<2un<-emhi<3avesetup<1asm<}"ʔF``Lwd@` ```A `?`pppB@`A ````ddo;prvwvwLvL?wL!w}L`wLvLIvLGvLvL0vL9vL|wLwLwLwLwLwH 9vhJJJJ) i`(e`H Gvhe`8}Ƒ8(ƕ`8`` `XY GvLIv褙 v< Ie Gv}䛐`ȽwwwLGvH Svh v v褚 ]v0 v v w wƗLw8eȦ v褚 vLuv} w d w wI`Ł* w䖐論 dLw`䖰`hhhh``H w0 wLwIh`FMGVB}GNFvwwxxx v%uȑΤȄŅĢ ) Vi}ȕ󅦅0r +y $;iiؠ 7{ 7{$<b _Lqx$I0@ 'd}…Lqxp @ zLIx 'di v$ꃑʈ`a{E`e橩$ ʥ˰+`@B䃝}D僝EAHI dL) `i ɛ` ,{L:z:$@<>    y`0L{z}0  yXYNԩ@l yɛ' y'  z0 * yI`! yɛ ,{ {} A`ߝمjjj y { Lz FƢ z80 e y {`Lz $P  }e`$p&` z` zĥ z zeąeŅ`0$p2`G A:8`_A[`H @{hJJJJ) i }`)Ƨ$Pʆ |@$[ 8 ĥȱɛ dįI(!}!"&` m情ĭiŠȑđH`)Ӧ$ O{)`0@  $dLxy |0 |0"} |0ݨ |0Ѩ浹ĵ |0 |Į`i ɛ)hi . d毥` vĥ v%Ĉ#}銠%` ĥυ`Ɔ$pL}L}$ʥ˰ zL }ƁP$#)cE@<)Ș $d xyL} B$}HI), d0ܩ d0ե) |Ču} d0 d0 Ȅ 7{櫦` y `8 JfJfeũ%}` }Q)ټ(Ķ$P )ąȱą`iĐ8ЭЩ 8` yALz y&}Lz }$P }@)` }LzLz@Ĉ ĥąŅ` yNAGA'}郅Ž:i@ą))?űąıąɛ LzLzL}08eąĥ)?ĢJ0ܩǥA };$P(}1 Lz Ld@LzLd) Lz "ee y  yL8弅彅Lw`J yL,)} L5II I   y M]Y)0Lz )L)) y51<)  yL*}Lz`Lz y`)"Lzڥ ) yť)0)040)3iF 'L€$0+} Lz)  $0`i7O$PS8媅嫅8ƥi3 LzFf ,}00 Lzie;00膯 |` y$P  7{ 7{ })**|&" #~ ~$-}0/  ˀɛ yL$P { H @ {h` ܁L ՃHԃH` y_A6ƶ2A)C E`HL y y .}ĦLzB$H  LzLzʥ񆴢 |' y@жDf$ d | y Ћ/}L灥 ` 700P3.@$ ȥ` 7{L7{ LzLz Lz y@@Lz@ *d@ $dLx0}y$`Lz hh$`)PI@) 7!))pJJJJ))` Lz |8ȥ` 7091}* z?#  |ȹ` Lz LzLz恟ꂦ'B#omplete&ailure;фeuiaqm}y%5)!1-=9 2}$,0PpXʈEUIAQM]YLl JFVN^  Hh(*&6.>jfvn~@`8x3}xAAABBBBBBBBBBCCCCCCCDDDDEEEEIIIIJJLLLLNOOOPPPPRRRRSSSSSSSTTTTTTDNSCCEIMNPRVVLLLLMPPEEETNOQXCNNNMSDDDSO4}PRRHHLLOOTTBEEETTTAASXXYCDLCSQTIELKCSCDIVPXYCXYADRUTLCXYPRAXYRPTAGAPAPLRISCCDIAXYXYXASA !"#$,/2678@DEFHIQ5}V[`aijklmrwxy$$  4,  6}󀀀䀀򀀀7}쀀耀倀8}倀瀀#"@ 0ass,ineD0:xփ 'Õ)-1LL-Lv9}'ȭ(ɩ8``d d` {L0(e`Hhui`8H dh ( Ȅ)*:})`H hJJJJ) )`H 詛ȢȠʩ Jʠ 6 h` | d d ;}d dLۈ)?<#' " Lۈ Lۈ`I`Lۈ`I `Lۈ()?Q` L0dɛ@ L? J J<}HH hh?` Y8e` 6  68墨壪 eƅʥeDžeƅ̥eDž`ޥ¥å8…ƥ=}ÅX[$00eƅޥeDžߥޥߐ8eƅޥeDž߭`ޭ`ߐeÅe ‘` -dl ‘>}İ‘ץ`لڢȠ 6 YȘ FLLFȠ 6ąŪ¥ÐĤ`ɛ?}٦ܽٽڽӖݠ? ݰٙ閈%&@Ӗ`? 詛閤݆8eمi8eمi Ӱ @}ְ֦ܥٝڝݝӖ轧ȽɐeƝeǝ޹閑و`х҅Ѕ܅ˠɛ Lʠ 6 J Ƞ 68A}܅٥ڥ YȘ FLʥ˰" Y8ӖeL8ӖL뽦ȽB}ɰ8`8}Җi˰-ԖӖ YҖ`ȭɰ8`ʽӖԖC}ɛ8eiܘIӖ` - WL8}Ӗi` ¥ (`hhL$ - $ aD} (`%`?䚰8` - ܥL - ahhhh - E}L|HH)JJJ` hh`8ʪ˨`%,Q,`0T:`ʽW `8Y `9& XѤȩ ] ]XF}Q J)ȄL: ‹ 獩]Ě :8܅¥8ª8ªŦG} ⽧ӖL)e88ǩ  0 0 0H} ?i(j%$pFƐ Fǐʆ%EĚ :L`,`EЄ'( = -I} ‹ 8 ְ 8 6LTA[a{M`M`?,` ' Ѓ?H閝閘hJ}ɛ,` А ְL ڈ,`0 [  L Õ޽ĕ L l 6 -L -Ƞ 6 K}ʥˢ ܥѐц ‹L? -Ԡ 6 6Ӆ`Lv -נ 6 6օ`Lv - d0EʝD˝E8ʝHL}˝I d%ʅ˅HIe̥e L L'd 8 d DE8HI dL -֦פ 6ӦM}L`Ӡ ԑР ԑhhL$` 8 䑢 6  68 -8ݐ 9eЅi8嬪N}奰e楥eeee 6 6 ʠ 6 ɛ إŦO}姐L‹ 8 䑩Р ԑƭ  6ee $0/8娅¥婅 Ċֆׄ8娅¥婅 ĊӆԄLL‹Ѕۅ` - P}8Ѕ & t`? 獐Ѕ,` Z` `L6 tleӅօ   ? -eЅi J Q} ‹( eЅӥ( eЅ֥`Щꖝ> Ӱ ְ` 6 3 TLЩ ?R}` 8 Ԡ 6Ӆ L‹ M``H` h`` 6 ƏL I`Е0Е0 d*>)`KQ 8S} ڈ d+H |h)*+޽| ޽lP ``I``Ъ)JJJ8j]``` d0$P -T}Ѡ 6$pݐݰ)ɛ#썖:)a{I ݍ8eمِʥˠ $LH  6 6hLv`L U} | 4)*` TTtt6?󔰔XX򓁓%%tt֍֍.@͒3+&reeV}8B,o)ns,ineI#ol)ns/vr,5op  ~ bkhdrwycvrcbkyf**KKiW}i)I)iեԍՍ8ԝL՝M8ֽeօԥeׅՠiԥi Dнѽҽ8LԥX}Mզѥ D`~%ґ 7 @`) T) M҅ȱ҅׈ LY}HMhL Dשֆ8֑ 7L/ґ 7L`i(`T) M҅ȱ҅׈ LL%T % 8 % & & 1Q + R, ,- 1Q - .SR N B V B%KHI'DK[}E V Ql 0BD&EJ VLb&BDSE%HI VLb&QDSEHI VLb&DSEHI V\}Lb&DTE HI V0PDEHI V07D&E HI V0&S&S&T&T&T B VS ]}R`R`1@D1:DISKDIS.CUS& \`)I 'ƊL&)I)ILb,,, D^})ƀ-٩?U Rʩ0R F BGHIDGE V Q!R1 2_}ϩ BHHIDHE V Q!RFG%L BVHHIXDHE VBHIDRE VL+`}SL%*䅓M F BHHIǝDHE V Q!RɛL) +Lq)!R + !RLq),Lc(ɛLq)a}ʽ!R0$!R 0!R0!RLq)0Lq)8ѥLq) FARTARLQ)ͽ!R +Lq)!R + !RLq)ɛLq)ʽb}!R͐*!R ͐!R͐!RLq)͐Lq)8幥庰Lq)ѥLq) FARTAR8幥庰ߢ BIHc}IDIE VL( BIHIDIE VL( BJIHILDIE V Q®HD0@!R +800!R ++ d} 0!R +0!R + …L+ BIHIDIE VL)MLr'텓K BIHIDIE V Qe}!R +L*!R + !RL*,k͠0!R0!R ͠!R +QʩTˢ FR Nk}Ff8姥娐T?eUeeeТ 1E R=R R$R FR NLS-dʩTˢ l}FR N` F _G D  E 1E KL.Bd 8F8 _G F桽B)`JJJJJ) KFm}ƯL:. Lx. [/ NL-ϕϥ D 8FL-L-ϥ 8FRL E Q8`ʩTˢ FR Nn}Ff8姥娐e FT9T 1E R=R R$R?eUeee F Fo}R NL.5ʩTˢ FR N`ALARʈ q/`B)00lR`ARR`#R$R FR` 'G p} C GR` C GR` C,RXR GR` C,RYR GR` C GR`q} C,RXR GR` C,RYR GR`(R C)R GR`(R C,Rr}XR)R GR`(R C)R,RYR GR`///////040V0x000LINZBSx CASINIx RAMLO x s} TRAMSZTSTDATWARMSTBOOT DOSVECx DOSINIx APPMHIx POKMSKBRKKEYRTCLOKx x BUFADRx ICCOMTDSKFMSx DSt}KUTLx PTIMOTPBPNT PBUFSZPTEMP ICHIDZICDNOZICCOMZICSTAZICBALZICBAHZICPTLZICPTHZICBLLZICBLHZICAX1ZICAX2ZICSPRZx ICIDNOCu}IOCHRSTATUSCHKSUMBUFRLOBUFRHIBFENLOBFENHICRETRYDRETRYBUFRFLRECVDNXMTDONCHKSNTNOCKSMBPTR FTYPE FEOF FREQ SOUNDRCRITICFMSZPGv}x x x x x x CKEY CASSBTDSTAT ATRACTDRKMSKCOLRSHTMPCHRHOLD1 LMARGNRMARGNROWCRSCOLCRSx DINDEXSAVMSw}Cx OLDROWOLDCOLx OLDCHROLDADRx NEWROWNEWCOLx LOGCOLADRESSx MLTTMPx SAVADRx RAMTOPBUFCNTBUFSTRx x} BITMSKSHFAMTROWAC x COLAC x ENDPT x DELTARDELTACx ROWINCCOLINCSWPFLGHOLDCHINSDATCOUNTRx VDSLSTx VPRy}CEDx VINTERx VBREAKx VKEYBDx VSERINx VSERORx VSEROCx VTIMR1x VTIMR2x VTIMR4x VIMIRQxz} CDTMV1x CDTMV2x CDTMV3x CDTMV4x CDTMV5x VVBLKIx VVBLKDx CDTMA1x CDTMA2x CDTMF3SRTIMRC{}DTMF4INTEMPCDTMF5SDMCTLSDLSTLSDLSTHSSKCTLx LPENH LPENV x x x x CDEVICCCOMNDCAUX1 CAUX2 TEMP ERRFLGDFLAGS|}DBSECTBOOTADx COLDSTx DSKTIMLINBUFx x x x x x x x x x x x x x }} x x x x x x x x x x x x x x x x x x x! x" x# ~} x$ x% x& x' GPRIORPADDL0PADDL1PADDL2PADDL3PADDL4PADDL5PADDL6PADDL7STICK0STICK1STICK2STICK3PTRIG0PTRIG1PTRIG2PTR}IG3PTRIG4PTRIG5PTRGI6PTRIG7STRIG0STRIG1STRIG2STRIG3CSTAT WMODE BLIM x x x x x TXTROWTXTCOLx TINDEXTX}TMSCx TXTOLDx x x x x TMPX1 HOLD3 SUBTMPHOLD2 DMASK TMPLBTESCFLGTABMAPx x x x x x} x x x x x x x x LOGMAPx x x INVFLGFILFLGTMPROWTMPCOLx SCRFLGHOLD4 HOLD5 }SHFLOKBOTSCRPCOLR0PCOLR1PCOLR2PCOLR3COLOR0COLOR1COLOR2COLOR3COLOR4x x x x x x x x x x } x x x x x x x x x x x x x GLBABSx x x RAMSIZMEMTOPx MEML}O x x DVSTATx x x CBAUDLCBAUDHCRSINHKEYDELCH1 CHACT CHBAS x x x x x CHAR ATACHRCH } FILDATDSPFLGSSFLAGDDEVICDUNIT DCOMNDDSTATSDBUFLODBUFHIDTIMLODUNUSEDBYTLODBYTHIDAUX1 DAUX2 TIMER1x ADDCORCASFLGTIMER2x} TEMP1 x TEMP2 TEMP3 SAVIO TIMFLGSTACKPTSTAT HATABSx x x x x x x x x x x x} x x x x x x x x x x x x x x x x x x x x }x! x" x# x$ x% ICHID ICDNO ICCOM ICSTA ICBAL ICBAH ICPTL ICPTH ICBLL ICBLH ICAX1 ICAX2 ICSPR x x x } M0PF M1PF M2PF M3PF P0PF P1PF P2PF P3PF M0PL M1PL M2PL M3PL P0PL P1PL P2PL P3PL TRIG0 TRIG1 TRIG2 TRIG3 HPOS}P0HPOSP1HPOSP2HPOSP3HPOSM0HPOSM1HPOSM2HPOSM3SIZEP0SIZEP1SIZEP2SIZEP3SIZEM GRAFP0GRAFP1GRAFP2GRAFP3GRAFM COLPM0COLPM1COLPM2COL}PM3COLPF0COLPF1COLPF2COLPF3COLBK PRIOR VDELAYGRACTLHITCLRCONSOLPOT0 POT1 POT2 POT3 POT4 POT5 POT6 POT7 ALLPOTKBCODERA}NDOMPOTGO x SERIN IRQST SKSTATAUDF1 AUDC1 AUDF2 AUDC2 AUDF3 AUDC3 AUDF4 AUDC4 AUDCTLSTIMERSKRES x x SEROUTIRQEN S}KCTL DMACTLCHACTLDLISTLDLISTHHSCROLVSCROLx PMBASEx CHBASEWSYNC VCOUNTPENH PENV NMIEN NMIST EDITRVx x x }x x x x x x x x x x x x SCRENVx x x x x x x x } x x x x x x x KEYBDVx x x x x x x x x x x x x } x x PRINTVx x x x x x x x x x x x x x x CASETVx x } x x x x x x x x x x x x x DISKIVx x DSKINVx x CIOV x} x SIOV x x SETVBVx x SYSVBVx x XITVBVx x SIOINVx x SENDEVx x INTINVx} x CIOINVx x BLKBDVx x WARMSVx x COLDSVx x RBLOKVx x CSOPIVx x VCTABL}ADCANDASLBCCBCSBEQBITBMIBNEBPLBRKBVCBVSCLCCLDCLICLVCMPCPXCPYDECDEXDEYEORINCINXINYJMPJSRLDALDXLDYLSRNOPORAPHAPHPPLAPLPROLRORRT}IRTSSBCSECSEDSEISTASTXSTYTAXTAYTSXTXATXSTYA hhnhhhh)hhVwtwwww}GGbkGbSGb#G}Gb/GGbzqzSz&D _Y\_Y\Y_Y\Y_Y\2Y_Y\;5;5>P5A;5>}55>,55>88JMe8JJJ6.$H&80LJH6..$HH&80LJ6.$}HH&80LJ6.$TH&80LJ&$6$...$HHH&8002LJJL$6..}$HH&80LJ$6..$HH&80LJH 3D Dh rD` Dh 1E`ÅĠeåiĈeŅåeƅ`-7},,,,,襳Łإŀ 0 F`8`DZ)xȱÅǠ8DžåĈ) R`+RH}ԩ h E`?UiiŀȱŁ8?UFf`8嫥嬐Ʃ8`H FTTTh TYTT`}$R F`Hԥ hHȱ)Rʈ0RLyELZRh`ʠȱR)R`R:}0R𘝛R` D)xȱÅǠ8DžåĈ `8(ii?eUeȥ` #R}υ`ʩT F RLaFR $R蹙 F,RʩR N F`ʅȱʝR`HJJJJ FRh) F}R`i0:i`ZAR`T`Ά͘JffFͤ`)Ɇ Ʉ )Ɂ``S R;R$R F`}ee` BKHIÝDKE V`JJJJ F蹿) F  G% 0 G` BH}IDE V`b} ˠқ Copyright 1982 Ralph Jones How many DISK DRIVES? 7}} (F)ile, (S)ector or (M)emory input? -} Enter INPUT filespec >} Enter OUTPU}T filespec (NO extender)} Enter sector list in HEXmn for single sector mn,pq }for sequence to end list F} Enter program start address in HEXstrt L}} Enter start, end addresses in HEX ssss,eeee OK ERROR-NO ENTRY @} }̠ɯϠҡPress to start over<} Insert diskand press =} } Insert diskand press `} Insert disk in Drive 1and disk in Drive 2 } and press A} śPress to run againW} Ԡˠ̛} Insert another disk and press 'CREATING LABELS... l Q _G8孥宰}8``8孥宰 L`;7iiſ8`}ƗƘ`8`8?]8凅刅 PLhMLhM8LMBHI V}LM VLMŋ VLM VLM8勅包iiȑii8凅刅_Y}HI8廥弰 HIiDiE V}H}I8HILL8?]jI*`8孥宰 N`}`8?]8凅刅8逥i8ȩɐXȤ FAR9T Pȍ ɍ R}ii SiiL$N Q _G8?]jI*`S ELO  P P8TT }O wOLrO}H}I wO0<,BJuDOE V R0LeOLqO wOLqO wO B V`LQ}P: BDEHI V`LPR.μR: 0RRȹS' LPȹS'#SHȽRS}h'SȩSS! BDREHI V E BHIDSE V0M B V0CͳT* B}hKHIjDKE V Q P`LQ BDREJ VLQ` BFJHIHDJE V Q`} BJHIDJE V Q`B HI!DRE V`M …` PF6 B VB}JDRE VLQLQȅɥ…8?]` BJHIDJE VLQ $QSJJJJ }FQS蹿) FQS㩛QSQSR N`HI B V`}}Link file pseudo>*** LINK ***Origin set pseudo>*** ORG } ***Assembly end pseudo>*** .END $2075 ***Comment insertion flag>***1***Line number flag>******;System equa}tes used;End of system equatesDefine Byte pseudo>***.BYTE ***;External reference equates;End of external references;Zero}-page equates;End of zero-page equates***Max file size (hex)>***@***Files/disk+1 (hex)>****** @%eferences;Zeron&0LL:Dr@( d@ ` @}>*p+9*i+-6-<5KA9~,88I9E:K:P:FILENAME IS }ˠҠ//6K Q*CL+CRf*CU+CD<,CBBT,CEBc,CBFn,CEF,CBL,CEL,CC.-DLd-DB-DAj.DR_.DF.BC/}BDc0BM1BP1BW2BRU2MSU3MC2PL}2WL3IH6IT3OC16SB66SF;6SRB@6SRFE6SRVBJ6SRVFO6RL}6LMĞ6RM4EXITq4ABORT}7REOPEN 7CTS6KMIKE LORENZEN'SMEMORY FULCURSOR AT ENLINE TOO LONINPUT EOUSING DEFAULTILLEGAL DEV:FILE.EXNEW FILNUMB}ER TOO BIDELIMITER ERROUNRECOGNIZED COMMANNOT COMPLETFILE LOCKEEDITOR IS CONFUSEBREAK KEY ABORSEARCH FAILECANNOT - PR}EVIOUS I/O ERROCANNOT FIND MARKED BLOCCANNOT FIND FILVERIFY (REPLACE,SKIP,QUIT)MARGIN VALUE ERROI/O ERROR }"-?N[v'''''''''((((((((((((}WARNING - LIMITED FREE SPACESOURCE FILE SIZE FREE SPACE TO AB}ORT, TO IGNORE}EDITOR CANNOT RUN - NO FREE IOCB'S TO RETURN TO DOS} PROGRAM-TEXT EDITOR } Version 1.0 For Dos 2.0 Copyright 1981, ATARIL* *LL* *Ƣ` *L\* *$} =` , *Lt* * =`ŏ *L* *`$0B *;$0;ɛ$ ƒ h8埆 ++Wƒ ++N}論L< 9ɛ,O0.* *;L* *;ōL+埆eL'+ƒ ++`Ə`Ɛ` ` ;8塅} 2;Le+ Q;`L+ +Ƣ` +$ =` , q+ =`L<ɛ ,O0M#Gš 8卅񄒩}.撄+ 2: ,e = 9L , 2: ,`ō%e ; 2;Ɛ` : :LO,}` : :`,OL<,L7 T,$0 3 3Ln,`6ɛ 9ō卦Ɛ𥩅Ȅ`$0  :*L,}ɛ j+L,` ƵOL<ɛ$0 ,ŵ+ɛ 5L, +L, *ŵ *L!-` 7- =` ,!ȱ9Mɛ}ɛ :LL-L:L< q-$ =` $L<$0L- :*$@ '.; j+LCIɛ,O0  :*L:ƒ ++L: :* , '.} , q+LCI` - $ =`LCIe$0(ɛ :*L:š印 j+= L.L:*Lj+3ɛ% *; : :LT. ;O` }:LX. :` :* <8` q-L_.`ɛ$0L,ɛ -L}.` : =4` f>ii8¥ >}…Å |=LGL0…Å |=8ą}8ąŅ :LU0eąeŅ |=eąeŅ f:LU0 :}…Å…Å f:`L< : = f> >…Å |=(x…Å |=}eąeŅƜƛ8ąŅꥩ |=`ƃƂeąeŅ}eąeŅ |=eąeŅeąeŅ f:` C3 1L2 1 1L2 =8}ii `hh` BCLOL< N2LNO7/ 2CPDNE` , 1 ;PBJ oB }L< B9P ; P0 P 3L72 J-L6B&HvH ,Ȅ B9hhO 6L+ 1L2 C3 ,L3PBJN}K V0MDNE B =GņŇ> A @Nv&ۮPȝHI VĄ 6B L ? , J-Lp3L<,,OPL<$L< T, ;P ;O} P  @O0 Pۥ f*`,OL< ,Lp4OPPХѱɛ PPłŃ L3 <,P}v&)DEȝHI B oB O OL< J-PPPP PЪ` 2=OP 9B < x5L5 2=,OL3H}H n, 3hhO! m5OO,$ 2CP! &B VBO,$ 2C!$ 2CP &B VBO$ 2C,$ 2CP &B <P 9B,P}LFD 1A \ 9B`D&E JB V M=ǩD fBl PP 9B <P 9B <$ 2C!P &BLVB} H B9hɛb$0>HɛOBHH膵 ,hhhL5H :* 5hHŒhhL5 :ɛ ;O :L< j+$` B9CL}HO 5hih =`L@L@L@L@@L@AL@ B99MO𵅛 eͻL ,6M06M`LPȄ , B9 g< i =`P} q-L|9L7ȅɅ8 s?ȅ¥Ʌåiĥi`L<ΦϥΥϐ`L}<8婅媅ś圐L<`8ũ媩ń兩` ȥL>Lk?ȥɩĩũƩǥȍ}Pɍ Pč Pō Pƍ PǍ POf ?H^hHPȭ Pɭ Pĭ Pŭ Pƭ P ? {?/ȍPɍ Pč Pō Pƍ PǍ P}ȱO {?`8`hL^? {?L>łŃॄȥLm?ņŇLm?ɛ` :ąŅ 2:}ƜƛL? ; -; ,L?`̩ͥCeʩLi˩CL >L*@ s?*J J`L<$0 T,HH 3 3hhL!@ }?$0HPu g7 < `BP V0 @=N ȩ8Q 0L%L0/O$! 2CP! &B VBOO$, 2C!P &B VBO$! C LEO$, C饟OO $, C,}PLGO 2CPJ &B0VI*H֝DOEB oB08 9BOɐOO OO)O(O )92k} &H 0J(& U &" G)Hme PI Q Rueƅ Q 5`Le$ Last error occurred on Page 123} Total LOST references were xâgĢxŢgƢxgpeqeres,> Mͅ΍k酯х}Ӎj҅ԍjۅ Gqe0.neoeqe!re ^,lUYe ,>ÆĆ =Li+`آM :? 80je e' 9}ئ٦ӆզԆ֬lq/[L' VHL&ÆĆ ]SæĭqeL& O(se teLi+Lc&-je`l_ }O驛LO l F|e}e )Z惠LU+L1/0L4L* 5}L*)L*L&ɢgʢ2k ( ( O( N2+>ieje)UieLn$n( 2)( 2)`FUnterminated I}F nest.IUnterminated MACRO definition.-[)𳨱)JJJ8e ]SL(ˆ̆Ÿŷ)ߑ)&)? \}Mȱeȱe eL(B) 2)L&lLQOToo many PROCs in program.0ÆŦĆƢxgL})}Ć Sg V& A 4W:æĠ``` `j*Iȱȱȱ`8}`j VvHHdžȆ S uSdžȆ gSdžȆhh V̆} V` 4L&L1+ 5Ɔ] ȱlL*̆ $N膖}lƖL-' Wƀ릖0ie) VH)L* '7L)'-lL)'OLO+YLO+SLO+ELO+AlL)' 5 u> ᦅ⥚} M ]5L(YFl΅ͅ jN HL$ > PlL-'e ALC+ GL&L-'H A* Ahl}l ML*h ELC+:LC+ \MHH A ALC+hh gGll( H ^,hl ML* \M } ` ML)'e'&!)ȱ)?? L>+L)'LM+ ALC+eL>+? 5 AL)',LC+!}ƲL$)L9+L)' f> V 4 &HH MhhL++ f>ئӦԥׅ & ݥHHL- f>Ӧԥ &"}놄솅 V #ݍlL++ f>)  5 &LlL++7 A7L*,P7)r7 e7L* 7 f>#}Wlye A\ >ze{e ]6 A,SlL* Ă 4WLH+: )L)'Ɇʆ$}j VOLO+ gSɦL-' :L>+ÆĆ Q ) `) 4P VH >L&EOHÆĆ)hLO+ A*[[eZe%} A-Ɣ AƊ AF/ R AULO+ȅ%ieEie A,YeZe A ALC+ HL& L@ C D F &}G I M R S >ie)@ 7H >hL)'eHH NHhh &HL&ie)@ NH HL&doeoeL/n'}eneL&ie)@ H NHh ueue ALC+ A2 RL& VH'llHH >3)hh(}ĚeLh0hh WHH 7лhh0l l QL-''L>+ Dڦl 򆊢̆e)} i( A H Ah,LC+L* W> OlLz1惥L)'HHHHH +:hhhhh8*}L$1殭Ф ELLO+ 1 2 ]S L ]SL)' FQre 6E+} V ]S`.ƮB(殠l% 2 SL2 SL)',}L1 S S V E ȥ V ]S VL)'l%800ȹl` i-}`0 `) @` RFɢ S ` 3 7 VH 3]]HH ]S Lhh.}) LBX ȱɛ 0 SL^3 +:L&)ŭL^3lɛ /}SL3l: L3`l`l l W V0}l3Ș Sȹl#,k(klȄLA4 S`ͅƀ8 L1+L)1}'FLO+'L1+ͥL1+ f> VL++ '7 VHͅL&ӆԆ gSӦԦ놄솅 gS릅`eՅՐe2}؅ؐ`Ll`L4醂L$NH M =5!톂ޅ߅좂 gSަ Mh8iܐ` =5 7׍ӆ3}Ԇ rel EL75l : 75 FL.EM)@% ȭȭȭ4} $)@MD) 95)< ]SLL/yeꅁ80 5Ln68充`zeye {e 5}R8僅 R馂 5ꅃ)饂ye8働yeL6l^LW 6ii S6}`=l VlLW 5 >L7) Vl 7D 7 5 7A(` >$)*i7}Vl`l`eeL7ؙƀ A`l  5`l W Wݍl`l8};*ɛL8o 8k'ŁLM9 9L19!L9_-;MɛL8a{I L689} 8慥 S惩l` } ɛ`慥𭥃HH:} +:hhL8慱 VL68惥HH 8#' 慱';}Lo9hhHH ShhL68ŀ  89 S` 9 9`l`:<}8`,+-*/><=^& ()[]:\ S楅HHHH V z:hhhh V䃐LcE`8JLcEe=}` V` : VLB; z:eel慑 }ɛ#Ɉ?)i>}ޢ SL:eel` S ; ;L: 4Pi;8`\\\ ENDStatement Missing?}e PHɈ/*eɛȩeȩeȢe uS`ӆ;LsR HPɪLMR < -< =C} 4PL]=`xg V3 Q>"ņÆƆĆL= S V`ÆǦĆȢ 4P/$le ]= ) Q7> D}R6>M$> Q Qefef` Pass 1 - Reading Dn:FILENAME.EXTÆĆ*` f>%)?>R4 >) U%E}l` >)H AhElL_?` _? 3? ?/UYHe y?hH y?Ń h -CL> LC+le`ElG}8` ??`   de A T LALFA:L]A GȹlH}Ȅ AeL CLAr@Ɗ ALV? AS)ͅB9lO PLʆȹȹLAI}``,\)/*$+^^^&[]=<> <= >= < > ~- AND DEF EQ GT GE HIGH LE J} LOW LSTR LT MOD NE NOT OR REV SHL SHR XORƊ A )T A(NLX?LAH A  )ThL%AƊdžK}@ A : A` F C` A`护l` AƊ`8l(`ili` ALRLV?eL}eee` A%FE۱ԅȱLA ARl` )B )B V` A%!ȥM})?B`` LB?éRl`B BƆ BŗRlBN}фB(`h`BQ$OLX?eȥeȥeȥeȌ`%יeȌ`He=YO}CL*lDDDDCCCCCDDDC`DD"D,DCDD8DEDCCCLV? A)L/D )BLC :BEELB :B%%P}LC :BLC BLB BLC B Bݰ Bְ BͰː )BL/D )BLC )BLC AQ}) И)С lLC :B V DLB A AŁRl gSLC A SLoD )B SLB :B SLB :B SLBƂ0R}` gSLD :B DLB :B DLD VLV?&HH S gS恰hh gS S` V VS}䢰ʆ8ʆ`nEL)$))%)%@)%LIZ})%+llɛ 򩛙lLH(sel Q(U$SQ )Q O /IlLGlɛ[})@ IlU$leT$ Que`U$P(ue)!8喰8mme @IƖ`veueũme PI܆ R8̆\}܆ Vwexe膂 Uwexeuewexewexe Uۆ @I @Ib @I]}L@I d2ʩke)88儰ƈ` Kl RlHH Khh^}ň wKL`Q ȑH)shU* **D**ne惢 V惦Ŷ_} W WL[Kmȩaȩcȩ Șe惩)LLƖLJ wKL~JL/I SFm:)`}  ]S V`FmHH ]SŅ籠ŷhh`hhт LKL L VHHLKa} ȱ VąȱL/L ͢lLL U/#)惑b}Hȱh Uiͥ)Ш wK GДň wKL~J)ie) :?`ue)HH E c}hh`wehhȥ`텂 V` gS gS gS gSԆk gS`څ Md}Ӧ` \M ` \M `H놄솅 BM Mh M놄솅LM BM릅쥉):XeL Ojjk ]S V Ne}솅jj` 4)XeL Okj k NƔ厙k`)PXeL O Njjk᎜jf}⎝j N`)"XeL OC$ `Q`kʊmjjjijiijC$ `Qjjj莘jjk``g}`Device timeout (Doesn't respond).Device not acknowledging.B VC0`ɀL;Ɋ OLOɋ ;OLO8`h}) @L ) `Ȧ *iLXLXLYHɆ~}Z RhLX ` -k-k-k-kL*`LX*iLX`PRNOBJ}9  99 99 999999 .BYTE.END}.PAGE#.SKIP*.WORD=ADCaAND!ASLASSERT)BCCBCSBEQBIT$BMI0BNEBPLBRKBVCPBVSpCLCCL}DCLIXCLVCMPCPXCPYDBE@DBDCEADCDECDEXDEYDSDWECHO(EJECT,ELSE/ENDM.endm.ENDIF}/ENDENTRYEORAEPROC%EQU ERR- EXT IDENT"IF/INCLUDE'INCL'INCINXINYJMPLJSR LDALDXLDYL}INK&LIST$LOCLSRBMACRO(MSG+NOPORAORGPAGE,PHAHPHPPLAhPLP(PROCREAL4REAL6REAL8REPT(}ROL"RORbRTI@RTS`SBCSEC8SEDSEIxSET@SPACE*STASTXSTYSUBTTLTAXTAYTITLE#TSXTXATXS}TYA USE! VFDX$X_XuX)'X:XW2XWX}XXXX000/,-B-,--BXU+-3{-|,,s,++/.,.z.L1+b/0/+>+ ^ _ }5`LdSle `vedžȆ/$ VdžȆɥʥ) C$ ;`)@) T$ ;`) Q HP}Z>$Sle P` O` ^†ue1+>T$PU$ܢQjeц҆ކߎewexeodpdke n}oFmxg? ,>ݠ d2ne`Enter source file name and options}R'S OϢ$ H 톌Sle P醌# Qh _ P< P5ee O!e~ 0e}L`ɛ eݩ8` 4P`H ShH NQh Q`H=05aH=>aLOaL=0ZaL=S:aL=P:aaL=aLaaOaPSaSL'bS=0`S=abSY}bR=0bR=SbR=FbRbe dxǢg 7eLc a 7e1U` RLdȱiil`}/$ 4WLd: fc`)L` ZD$ /cL``L`T$PU$:V$W$) PL9a&$T$'$U$})%L9aZU$ /c) PL9a bjeL` bѦL`: bd _d}L d  bL`P bgdL dɀL`b2bdžȆ /cdžȆiǐ}peL`bdžȆ RLzbD1:SYSTEXT.L`)L`Lb)ve` S=.慱 T$ H} 慭H  )Th`LdHHHH chhhh 4W: c?$ c`LdD$Z c c cƀU}$ZLzc`?$LV/$:`:/$:/$.e` ɛ 者` 5`l %d} QL%9dL dKdL dCommand input errorMal-formed numberIll-formed filenamePS > 99SL < 60dXeod e }eƀLd恘od6e2 $ ,;|5ɛ1a{I LdLd6eф ɛ LdLdʼodƁodpd` }ɛL e`' "6e`6e`eodpd odrd ]S`8`ue~e=ze|ekk?kkABS # y0@E@MASFILENAMEFILECONTENTSANSWERKEYSTROKEEOLDELETESPECIALCHARACTERLOGICALORFINDTABTABTABLEFILESIZCURSO}RINHIBICALPHAFLALIMIKEYSTROKTABSTOANSWEOFFSETABCBYTTABSBYTBCOLOBLUCLUCOLUMRODELABYTBIFOUNDTALENGT}@ }} !D6-F:@,A(,6-&A(8@DB7t EDITOR CUSTOMIZING MANAGERFIL}ENAME "MEDITCM.BAS"VERSION 0.0 (06/25/81)(COPYRIGHT 1981, ATARI2REQUIRES 32K SYSTEM<WRITTEN BY MIKE LO}RENZENd;@,n9@B,x;@@,;@,;@,;@,;@,};@,;@X,;@1,6-@B6-AR6-Ad6.>:AU,6.>:A&,}6.h(h(hԅԩ`DD6.:hhhhhH)8*JJJhȰiީԅ`hԩ`6@ }@4-@}@4 EDITOR CUSTOMIZING MANAGERJ%-@@%  VERSION 0.0T?-@@? $WOULD YOU LIKE INSTRUCT}IONS? (Y/N) ^0-@@#0 COPYRIGHT 1981, ATARIh B@r 4Y B| 0N  A`}!!WHAT EXTENSION GROUP PROMPT }.-@ @. WHAT EXTENSION GROUP.-@ @. (0-3 chars o}r '?') ! 6.?6-@! B04?B?6.D1:MEDIT&67B:,%@,.?67B:,%@,..ECF} A @@-@)@ 68,-& 0@: AD} BN@X }b2-@ @2 Ǡ̠l)-@@) --please wait--}v-@" 68,-  BP55114,128,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,0,0,0::0,0,0,0,0,}0,0,0,0,0,0,64,3,40,128,128,148,10,100,128MAIN MENUNN0@P:8@9,'@,8@9,&+P:8@9,'@},$@,@@0@8@@,&+P:8@@,'@,$@, }-@@"" WHAT WOULD YOU L}IKE TO DO?   ** "A. SAVE PARAMETERS & RETURN TO DOS## B. SAVE PARAMETERS & RE-RUN ,, $C. FORGET PARAMETERS }& RETURN TO DOS%% D. FORGET PARAMETERS & RE-RUN  * E. SET TAB STOPS4"" F. SET MAXIMUM LINE LENGTH> G}. SET GROWTH FACTORH H. SET DEFAULT MARGINSR I. SET COLOR OF SCREEN\"" J. SET MISCELLANEOUS FLAGSf   p}((  Enter letter of choice (A-J)z6-@ B  }WWAA A0A@APA`}ApAAB%%SAVE PARAMETERS & RETURN TO DOS B0.SAVE PARAMTERS & RE-RUN }B0% &&FORGET PARAMTERS & RETURN TO DOS .FORGET PARAMTERS & RE-RUN%SET& CLEAR TABSTOPS4 }}-@ @4 SET & CLEAR TABSTOPS-@@,, $You can set or clear both space tabs-- %and exp}anding tabs. The Program-Text++ #Editor does not allow you to change,, $tab stops during an editing session.++ #}You can set or clear tab stops past((  the current maximum line length. Bp }-@@!! Th}e default tabstops are:++ #9,17,25,33,41,49,57,65,73,81,89,97,  105,113-@@!! The current tab}stops are:(-@@1267<,.>:8@%,,< F6-@P6-?:C:, A@SET MARGINSJ3 }-@@3 SET DEFAULT MARGINST-@@}^** "You can set left and right marginsh,, $during an editing session. Use thisr)) !feature if your TV should cut} off|** "columns on the left or right edge.++ #These settings may be overridden by$$ commands in the Editor. The}((  following rule must be followed: $$  ͠͠ ((  The defaults are LM=3 and RM=}40.   55 "The current left margin value is 8@5,55 "The current right margin value is 8@6, }(( (1-RM) The new left margin is  B4A0 6-A:, 08@6,)"& B0 A} 68@5,-& ))  (LM-40) The new right margin is 0  B4A: 6-A:,D 0!@@)8@5},& B0 A@N 68@6,-X A(#SET COLOR OF SCREEN2#6-P:8@9,'@,<#226-8@9},&+P:8@9,'@,$@,F#226-8@@,&+P:8@@,'@,$@,P#6-Z#4 }-@@}4 SET COLOR OF SCREEN.d#-@@n#,, $You can choose a specific backgroundx#,, $color for your editing ses}sion. Use#++ #this feature to identify the set of#** "custom parameters in effect or for#'' aesthetic value. Thre}e factors#)) !determine the screen color. They# are:# #'' 1) color of background (color),#,, $2) luminan}ce of background (B LUM), #++ #3) luminance of characters (C LUM).#. . #Remember that luminance values must# be} even integers.# Bp#C }-@@C #Certain rules must be followed when$&& when choosing screen c}olor and$)) !luminance values; for more infor-$((  mation, consult the Program-Text"$ Editor manual.,$ 6$ }The default color is 9.@$ The default B LUM is 4.J$ The default C LUM is 10.T$   ^$,( The current value for }color is , h$,( The current value for B LUM is , r$,( The current value for C LUM is , |$   $!}A$!! (0-15) The new color is $ B4A$ 6-A:,$#!@ B# Ap$ 6-}$!@A$"" (0-14e) The new B lum is $ B4A$ 6-A:,$6-@$#!@} B# A0$0P:'@,$@& B0 A0% 6-%"" (0-14e) The new C lum is % B}4A`&% 6-A:,0%6-@:%#!@ B# AD%0P:'@,$@& B0 A}N% 6-X% 6.b%- "-6. B lum can not equal C luml%9+&@,"96. B lum - 8 can not equal C lumv}%9+&@,"96. C lum - 8 can not equal B lum%II68@9,-+$@,%+8@9,&+P:8@9,'@,$@},,%0AP%0068@9,-P:8@9,'@,$@%%68@@,-% A%? }-@@}? ̠ŠΡ%-@@ %--@@ - (see Editor manual)% BP%}6-@% A`'SET MISCELLANEOUS FLAGS' }-@@$' SET MISCELLANEOUS FLAGS.'-@}@8' A. RETURN TO MAIN MENUB' L'-- %B. SET SPACE TAB/EXPANDING TAB OPTIONV'!! C. SET TAB DISPLAY METHOD`'&}& D. SET CARRIAGE RETURN DISPLAYj'%% E. SET AUTO-INDENTION FEATUREt')) !F. SET UPPERCASE/LOWERCASE OPTION~'   ''}'  Enter letter of choice (A-F) '6-@ B '77BB B0B@BPB`*RETU}RN TO MAIN MENU+ A.((SET SPACE TAB/EXPANDING TAB OPTION.> }-@> SET SPACE/EXPANDING TAB O}PTION. .&& Two types of tabs exist in the/++ #Program-Text Editor: space tabs and/'' expanding tabs. Space ta}bs are/,, $exactly as in the screen editor (E:)&/-- %in that they insert blanks in all the0/%% unused area between ta}bstops.:/++ #Expanding tabs insert an actual tabD/++ #character that serves to occupy allN/-- %the unused area between }tabstops. IfX/,, $text is added or deleted in front ofb/'' an expanding tab character, thel/++ #unused occupied area }will shrink orv/'' expand. Not all ATARI/-- %software recognizes the expanding tab/ feature./ /,,} $The default is for space tabs ('S')./   / The current value is/6.'EXPANDING TABS'/+8@,!A'}+6. 'SPACE TABS'/ /) ) (S or E) The new setting is ?/ B@/4B/4SB#0 }0E  B"` 0"68@,-" B0"68@,-A(" B2##SET MENU - TAB DISPLAY METHOD}22 }-@@2 TAB DISPLAY METHOD2-@@2-- %The Editor displays expanding tabs as2((  ei}ther spaces of right-triangles2)) !followed by periods. For conven-3-- %ience use spaces for viewing text and3** "t}he visual display character as an3,, $aid in editing. This setting can be"3,, $overridden by an immediate keystroke,3} in the Editor.63 @3** "The default is for right-trianglesJ3 ('R').T3   ^3 The current value is h36}.'RIGHT TRIANGLES'r3'8@7, A('6.'SPACES'|3 3( ( (S or R) The new value is ?3 B@3}4B34SB2P3 0R  B23"68@7,-A(" B3"68@7,-" B}600SET MENU - HOW TO DISPLAY CARRAIGE RETURNS6> }-@@> CARRIAGE RETURN DISPLAY METHOD6-@}@6,, $The Editor displays carriage returns6)) !as either spaces or a down-arrow.6'' For convenience, use spa}ces for6++ #viewing text and the visual display6-- %character as an aid in editing. This7'' setting can be overrid}den by an 7** "immediate keystroke in the Editor.7 7-- %The default is for down-arrows ('D').(7   27 The cu}rrent value is <76. 'DOWN-ARROWS'F7'8@8, A('6.'SPACES'P7 Z7' ' (S or D) The new value is ?}d7 B@n74Bx74SBB07 0D  BA7"68@8,-A(" B7"68@8},-" B:))SET MENU - AUTO-INDENTATION FEATURE:6 }-@@6 AUTO-INDENTION FEATURE:-@}@:-- %The ATARI EDITOR can be set to enable:// &or disable the auto-indention feature.:,, $Auto-indention }is used for languages: such as PASCAL.: :'' The default is to enable ('E').:   : The old setting was} ;6. 'DISABLE';'8@B,!A''6.'ENABLE'; $;) ) (D or E) The new setting is ?.; B@8;}4BB;4DBRL; 0E  BQPV;"68@B,-A(" B`;"68@B,-" B}>SET STARTING CASELOCK>1 }-@@1 STARTING CASELOCK>-@@>,, $The ATARI EDITOR }can be set to start>++ #the editing session in a shift-lock>'' (for uppercase) or no-lock (for>((  upper- and lower}case) condition.>&& This starting selection can be>-- %overridden while editing by using the> CAPS-LOWER key.>} >,, $The default is for SHIFT-LOCK ('S').>   ? The old setting was  ?6. SHIFT-LOCK?&8@4,"}&6.NO-LOCK ? *?( ( (S or N) The new setting is 4? B@>?4BH?4SBb0R? 0N}  Ba\?"68@4,-" Bf?"68@4,-@d" B NPRINT INSTRUCTIONS*N }-@}@4N  INSTRUCTIONS>N-@@HN-- %The EDITOR CUSTOMIZING MANAGER allowsRN-- %you to tailor the Pr}ogram-Text Editor\N** "to your personal preferences. ThefN)) !Editor reads special files in thepN-- %form 'MEDITxxx.EC}F', where xxx is thezN-- %file extension designation. Reply toN,, $the 'WHAT EXTENSION GROUP' prompt byN,, $entering} the zero to three characterN extension 'xxx.'N BpN }N-@@N++ #You can change the fol}lowing items:N N&& TABSTOPS - setting or clearingN"" LINE LENGTH LIMIT (2-200)N FILE GROWTH FACTORN }DEFAULT SCREEN MARGINSN COLOR OF SCREENO MISCELLANEOUS FLAGSO%%  space tabs/expanding tabsO""  expa}nding tabs display$O##  carriage return display.O  auto-indention8O  uppercase/lowercaseBO BpL}O }VO-@@ `O"" Now that you have read thejO** "instructions, would you still liketO++ #to continue t}his program ? (Y or N)~O B@O 4N.O 0Y  BPO ARRETRY INPUT SETUP ROUTINER  } R -&R$U GET MENU KEYSTROKE ROUTINEU B@V"2A)3Z " B V6-@:,&@dV } !  B "V$YSAVE PARAMETERSY B0Y @@Y-@Z 6-8,  }Z*@Z Z@(Z$2Z B:,^ 4)4$^&@:,A(&6.>:@:,&A(,$}^%1a*/z%6.>:@:,&@2,.^$8^@B^ B@aDELAY SUBROUTINEa-@Aa a}$eTAB MAP ROUTINEe6-P:'@,e6-8@%,e6-&P:$@,e6-P:+@#,%?P,e6-?:C}:,<<,e 6-"6-&e!6-"!6-@e$xi))TOUCH SPACE-BAR TO CONTINUE ROUTINEi-@}