L%hh LHH` X% " ӠӠΠǠ ˮԠˠǠӬĠӠ٠٠ϠŮ+JJJJ ,,,L Lک ٥ҥ>ӥ? ( ㆭ  ؆` | A""""""QQQYV <"<Q '(h((QQQ`@GHOHO $"!$q}T@` `@@``p0 8p@@`00 |0@` `pppPox`D3 < p?|@@@|@`f ppn|>0p  qcs6<, 3['Nxxxpp0` ```@vl  ?`@:3q  AcqcCyO@  0p`@@q @p?|`3cC ? ?>|xp`p`@Acwsssssss__????????~^^ ?~~~~~~~?>~||xpp`@~| xyy{~|@`pp xpp`@yyyyyyyx~ ~x`|xpxqa` cqx|||||||cCC?>>>??<<|||~?`ppxx||<||xxpp`|||||||| |?|p`@@@@`p|? OOGgccqpxsssssssppxxx|<<~?>~||xxxxppp```@@@`?~|x|~|||||||p@@p|~><|xp`@>|x|xpx}yyyyyyyAA?~|xpp`ppx|~? ?? 33@``@@glloLL LlOgloloG @`@glolo@@gLLL GaamGGlg`GGlg`G  xL| x@@xMLLxMyyM MyxAxMx|Yq @lllLglllgG LlL`@GLOLo033366m~0>3>33~G<`G}rccb``acccq{{{{8008????~ |lL COoooog CgoooocCFFLLXXPpqa88`}}}}>????~ | ~FCCFL ____|GG|GGccp{{{{ ;1q``qp`aas{{{{8008 0y| |}}}}AAQg((h' $C@0j ed`y < I1@@q q s8EE9EE8> ` `$DC0ANPQN@'h(' WPG((H@stq q8AyEx:NPQ@GhHHG#$p# @ (*Y9AyEy: QQQO~C%%C~_DDD qAAAaq9`ppxxx|xxx|AsGN8088 Ccˆʎõĵ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- ( t Ϡ@跻~!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`` Oڵw۴Nv L`xw8OPL# (` 40!(L 4LdF`  %L"wL{ TL~&&&ڥې څΈ` l 4Ȑ,` 40L 4Ȑ-` 4(L(n ㊨ rLa ?&0ΰ` Δ䮥G 0 #gMghghPcQ)Wqqqqhhq`uuuQ줰䮲륥Q9O/Q) WjB`O~5'Q 䯭䮡ޜݜݞGg` ` `嶡䡯z~" `P O䯭䮡𥴳\@`` ~3`Gg壡yi壡yi` @Gh X{gggggg'(dgxkg~9g'7(*7ϠGX͠LϠ٠SGϠDĠHSĠNSĠTĠ 5EMҠL Šō?FِLϚΠ κ f ٢  ٦Τ ȹɀI ȄȹH h3 oLB oTMɅ"3J[NSJIfmzq# [$NYP;#o6#"#!0 9@0Ӷ:Pyإ<[(N>W']5Kgvq ʤ  Y YoܹݾЇ`TP@xL` Ιϙ_oܙݙᙯ` ??<<<<<<<0UUUUUUUUWΤ PڵxۥΑȥL`hh$ F`` %ֈ`ʤZA^ܙ ݙ0  m7;܄iȢٚ . y$IqܤݐLM͠1FLJܹ/ݾLuc ܪȱ L[ĨP?xO_ڹo  l`w0P`fLPεϵxϱHȱ΅hΈ` J  畠P` Y $0`  畠$0 8 P# o ΅ڥυ e epݕ` 4LL$ `  rPՆϦ ` ΅υȩ ` Ӡȱ0I@iHeШiH˰hhЈЈ͑Ј̑ЈЈ0JKЬ@iHe eѕxh$0 xx ԅբ H 0  敠$ ( x$0  xx 0$FԨֹ)U h)װ H ֐ι LhޤȄ h󰩠ɩch cɰ$0 $` d'ʅ˅LM&ȱϰqȥȥ`FLʥM˥J̥Kͩ`Lkȱ0@hJHȱШhЄ0)ȆȘHJI@hL`ȩ)?Jжi?oiO iȱ) zȵх 8 05X~")XȔ) v*Ȇ0LJɢ  Ȉ ϴX)HЄ ȹ)eHe0 ̥͐Eʑ˥ʥ˰ਈ$ u~q  u  mʥ` ȹ0 L uߙ`` $0LL*iS 0wh(VP`΅h(OM L6 T&ϐ eڅeۅ &L~ 畠(LoU [΅ڥυ   o ` l3 3` 4J G 4&(JJJJ) 甠` F٩ $ 婠 Ȣ ii)ɰLPx+L 4P xL# 48` PxL PeHxeH˰iکeۅȱhڙ`ꠀЕ x ت3 Q3ؕxQεy NvNδPPPL#Q8yڅ`Sε{ϵQڵyxȔPMuHOL L3L`) #L $  `  v mL;ʅ˅LM  mdžة * * *     % 0LH΢QPHΪ0h$0 )?i h](Њ q L H ϐ { lhHHH hHL? hυυ Ljݥ ,L mݰ % LߩƉ 慝 憨80 ў*%L L ު `  }LޢōҠĠԠōˠӍϠϠҍŠō ҠҠŠ%ҠӠϠҠԠ߈ǍŠōĠō ,56,233,32 [#l 145,6,200,208,236,160,0,177,6,170,200,177,6,134,6,133,7,56,176,210,103T23:" RUN HELLO.BEU":22:34,0:)":q"24:8:"HIT ";::"SPACEBAR";::" TO CONTINUE *";(8);:A$:::"XX768822:Y:X,Y::768:#b 165,103,133,6,165,104,133,7,160,1,177,6,208,3,96,234,234,160,04,177,06,240,16,201,127,176,9,201,97,144,5,simply reboot with this disk to locate"J!"DOS in its usual position."!:"To use BEU.48K, simply enter :":"]BRUN BEU.48K"::"To reread these instructions, run this program again."::"To run the RAM card version, you must ]RUN HELLO.BEU"!"not permit the use of DOS, as it would cause BEU to crash."E 500(!::"FINAL NOTES"::"Please note that BEU accesses DOS using the File Manager. Therefore if you are using an altered or a relocated DOS, BEUmay not function properly. In that caseinter"|"routine accesses the card directly, not through DOS, and therefore it assumes a certain internal entry point. For that reason, the CTRL-P function may not workproperly with all printer interface"< "cards. The nature of the program did instead just ']BRUN BEU.48K'"&m500r::"MORE NOTES"::"To obtain a screen dump of information to a printer, you can toggle the printeron/off using the command 'CTRL-P'. Thiscommand assumes that there is a printer interface in slot # 1. This prDEBUG and MINI-ASSEMBLER modes are available only in the 64K version of BEU, and are not included in the 48K version."h:"If you do not have a 16K RAM card (or a 64K Apple), then it is not necessary to go through the HELLO.BEU program but youcan inadvertently alter";J" it. To fix such changes, check the code listing in the EDIT mode, using the ASCII listing at the right of the screen, and alter the memory as is needed."O500{T::"SOME ADDED NOTES"::"Note that the h you have chosen.In moving the routine, it changes the"@"internal memory references."::"There are two things to note:":"1) The memory locations chosen for the move cannot overlap.":"2) If the routine contains text output, the RELOCATOR maych allows you to exit the Mini-Assembler and return to the DEBUG mode."V150086:"THE RELOCATOR"::"The RELOCATOR is a useful routine which allows you to take a machine-language program located in memory and move it toa new destination whictered from the DEBUG mode by the command 'Z'. All of the Mini-Assembler commands are the sameas in the APPLE ][ REFERENCE MANUAL, except for the command $XXXX to execute"M,"code at XXXX has been deleted. In its place is the command 'CYTL-C' whi"ADDR S = Single step at ADDRess":" S = Continue single stepping":"ADDR T = Start Trace at ADDRess":" T = Start Trace at last address"::" Z = Invoke Mini-Assembler"500"::"THE MINI-ASSEMBLER"::"The MINI-ASSEMBLER is enMove memory from start to destination""Dest? A֍ٍ̍i_[ WL L  㐫𩭯 Э ТТhhhLб   8  m m L```;ŠҠŠӠƠōӡ L X Ѝ Ѝ8ȹ⎭؅ 9ݐɃL3⍮ 9ݐɃLB⍯ X [ ݭ⮫ A: ݭ⮭ A@ ݭ⮯ AR nLHHH u)-)&")Ҡ½ ŽŠɽɠĽĠýũ [$ $ ` [$Dž `%H$H  [(ɠ!ɀ@ i@L`L8@L᩠) (ϩ %%н h$h [` # XL XU L#Ll,07 ԍ Ӡ٠!    ?   /       ΠԠčӠӠŠˠٯŠҠ  $ϠŠԠàԠ%РΠԠԠý(ՠĠ̠ōҠĠԠōˠӍϠϠҍŠō ҠҠŠ%ҠӠϠҠԠ߈ǍŠōĠō Π߈%ɠ̠ŠŠōĠԠϠϠŠӠӠԠԠٯΩ_[ WL3 3L3 3 322 3𩭯2 2   2hhhL  322 322 382 32 3m2 3m2 3L3```;ŠҠŠӠƠōӡ- -L X 2 28 ȹ 22؅3 - 9-ɃL322 9-ɃLB22 X [4 -22 A:4 -22 A@4 -22 AR4 - n.L1HHH22222 3 u)-)&")Ҡ½ ŽŠɽɠĽĠýũ [$ $0 -` [$Dž0 -`%H$H  [(ɠ!ɀ@ i@L1`L18@L1) (ϩ %%н h$h [` # XL XU0 - -L# L1, 070 ԍ Ӡ٠!    ?   /       ΠԠčӠӠŠˠٯŠҠ  $ϠŠԠàԠ%РΠԠԠý(ՠĠ̠,*i H/.  `0 .: VȘ L `8/;e:` T0 "T3  T3  T; "D3 D"D3 D"D3 "D3 &1!YMJؤ#]#)i#$S#$S[[i$$)|mi)S4J G(i.&E0%.Q&&` , iH h-`/'-'0 (`HJ) 'h)i& &&`0i)0 00`J G&(JJJJ)`:; H:J jɢ )Jb y.)/) JJJ Ȉ` H:  J/Ȑh,--&eʵ``` f f` &L L fLC`8i`uu  ee`` ` 0` ` ` 5I` 5Iй` f f`L ?5=ɥD 5 5 D4ɻɍЀL\ɠ` }Ɏ$ ``LXWVhY `XWYHV(` Jhh LH) JQ JJJH`HJ`hh ?l8e` %GQ/[҅n3pJ?>ʊ:>Ș;k/=:   S;:L 4 40K14 L= BC D..=D5֤4 J :3 g ɠɤ ɓՊ x= 4   &B&C= 44ݴ 4ݺ ɤ4&D`L# ȱ0` 4 `u` 7$ 8`0 &&` { %Ppĥ uv` 2e   %F8 2 8Hh&&&&& 0hhI`LLLHxܥyݥPQLuƵPxLhQεyϱΠ L 4) ؘ 甠` uHɃLh` ☪ T`  甠`ѥ΅ ΅ҥυө 甠0ХҠ ӕ "L 4i` F`ٚ .L 4 `$$L$Ն$L,L 8!$ L赟0L0ܤ } L赟L0ܤ } L ` ` [ S oP YVPL6 O 5OPL Ι_LfP0Q@PPxA@QPa`qp`HP8εxh`Ʌ۰եڅʥۅ , ` :L΄<Ȅ>=?`ʕ>?>`8M˕   , ` L:L``F`$ ܪȱ 婠Lܤ`Ś25 a0 穠LJKH۰hЅѠȱ0@ȱHШhh0JL JLKMMLILLILLLLy 2L,PQ܅x݅yL آ8ЕNЕKʵ˕ە LkLMNܕ`LΥΥLMLʥMː ʥ˰JυKL  8MϕڥL 4΅` ȑ` l΅υLD L4 xPiڄeΕPeϕxPȵxڰL# N ONi)OO i@ &N&O ϕLz JKLυML LMJυKL qL ȩ` 6 6P`JLKMLxL L6 L[` Oڵw۴Nv L`xw8OPL# (` 40!(L 4LdF`  %L"wL{ TL~&&&ڥې څΈ` l 4Ȑ,` 40L 4Ȑ-` 4(L(n ㊨ rLa ?&0ΰ` Δ䮥G 0 #gMghghPcQ)Wqqqqhhq`uuuQ줰䮲륥Q9O/Q) WjB`O~5'Q 䯭䮡ޜݜݞGg` ` `嶡䡯z~" `P O䯭䮡𥴳\@`` ~3`Gg壡yi壡yi` @Gh X{gggggg'(dgxkg~9g'7(*7ϠGX͠LϠ٠SGϠDĠHSĠNSĠTĠ 5EMҠL Šō?FِLϚΠ κ f ٢  ٦Τ ȹɀI ȄȹH h3 oLB oTMɅ"3J[NSJIfmzq# [$NYP;#o6#"#!0 9@0Ӷ:Pyإ<[(N>W']5Kgvq n7 ʠ   nɍ!Ɉ LH hɠ`LGޠЙ`Ј` ɐ` GLn źԠԠȠ    ٠٠ӺҠϩeL) 8 Ѕ`$Hi$ɀiɠ h$` nɠL{ }ݐ L9 ) nɠL{ }ݐ L\ `8` 0i)ɺɰ0)8 ``ȱ ` A H` n`ɠ1 ʠ  lʠl L,$$$ L,ܢ%Ș [ۅ$ `8L,,0 %>< `<:=; b@Pl  . $ ; &?1?=A>?I i`HH11`IJ듧ƙɾ5Ė+]̵h5`4ɺл1>@@A`41`>BD`8>6>) `LL u ?l:L``L@ 'A=?<) < `JJJ>Ie=?<=`K i! Ȉ2 ,`H h*:` `YE <Šӭpd`HVTQ PS 6" (!#%L" X`I`ɍ,,L8L,H ΰɐHJ) )h)i( ((`ɇ@ 0`$($$!fi#bZH&bTDThDt(ntJrtttrDh2"&&rr&HDDȅEhH 0l( Lh:h;l Le / XZ]_, :ILl `Ȇ׍숈l E@A  J 0`,,L z ] n.7 0ʠ0   n.ɍ!Ɉ L.H h..ɠ`.LG. ` ` ɐ` G1Ln. źԠԠȠ    ٠٠ӺҠϩeL-) 8 `$Hi$ɀiɠ h$` n.ɠ L{- }- L9- ) n.ɠ L{- }- L\- `8` 0i)ɺɰ0)8 ``ȱ ` A H`0 - n.`.ɠ1 .ʠ.  l0ʠl0 L,,$$$ ,L,,% Ș [+$ ,`8L,,, 0 % > = Move right one byte.":"CTRL-B = Go to beginning of workfile CTRL-E = Go to end of workfile":"CTRL-I = Insert bytes at cursorposition CTRL-D = Delete byte under the cursor"::"CTRL-C = Return to the Menu."500{e 'Enter Data' mode."500:"EDIT WORKFILE"::"This is the heart of the program, for this allows you to alter the contents ofmemory. The available commands are :"2:" ; = Move up one line":" / = Move down one line":" <- = Moa CTRL-C."500:"APPEND DATA"::"You can add onto the end of data which has already been entered into the work- file, either by direct entry from the keyboard or by reading in a Binary file from disk.":"This mode is then similar to thuivalent ofthe hexadecimal code which you enter." :"You can go to an 'ONLINE EDIT' by means of the CTRL-O function, which will allowyou to move the cursor about and alter the data you have entered."::"To exit this mode, it is necessary to enter digits) you wish to use, then will present you with a screenon the left side of which it will automatically enter the memory address"1"and keep a running count of how long thefile is. In addition, on the right sideof the screen is the ASCII eq:"CLEAR WORKFILE"::"This routine simple clears all data out of the workfile. This command must be used whenever you wish to begin enteringa new set of data." }500:"ENTER DATA"::"This routine will first ask you what starting address (4nter Data":" 3) Append Data":" 4) Edit Workfile":" 5) Disk Operations":" 6) Go To Debugger":" 7) Relocate File":" 8) Exit" n" ^P CTRL-P is the Printer toggle"::"Each of these will be explained on the screens which follow." s500 xThe program 'HELLO.BEU' checks for the presence of a RAMcard, loading it with the file 'INTBEU.1'. If a RAMcard isn'tpresent, then the BEU.48K version is loaded into memory." d:"The eight functions of BEU are :"::" 1) Clear Workfile":" 2) E <:"The 64K version is superior, as it will remain resident on the card and can be accessed by the '&' Ampersand command. In addition, it contains a 'DEBUGGER' which wasn't included in the 48K versionbecause of memory limitations." U500 Z"NTRY UTILITY is a program which will assist you in in the entry and debugging of machine-language code for the Apple's 6502 processor." (:"It comes in two forms, depending on whether you have a 16K RAM card (or its equivalent) in your Apple."\p ::T$"BINARY ENTRY UTILITY":21(T$)2::T$::34,2:4:T$"WRITTEN BY KENNETH S. LIND":21(T$)2:T$w6X(1101):X0630:APPLE //E::"DO YOU HAVE A LOWER-CASE CHIP =?`ʕ>?>`8M˕   , ` ăL: i@ &N&O ϕLz JKLυML LMJυKLˎ qL ȩ` 6 6P`JLKMLxL L6 L[L JLKMMLILLILLLLy 2L,PQ܅x݅yLÈ آ8ЕNЕKʵ˕﭂`ծBOOTED..."/ (13)(4)"BLOAD BEU.48K":8192HhH#J h`u   ȑ $  i֭Ѕ0768,160:769,0:770,76:771,44:772,254:66,0:67,15:62,(175):63,(176):60,(175):61,(176)1:768:3841:(3840)133920:(13)(4)"BRUN BINLOAD":(3840)05 "...LANGUAGE CARD CANNOT BE RELOADED":" UNTIL THE SYSTEM IS RE  \@c%` a(ĠҠŠԠЬŠ)#j a(ʨթРϠðĠӠ)#t a(ǮנŠԠٺ)~ @p()@p(ð) \%\%]ԬΠH `7$ q\ o\^\U\@a(ԡ) a(ԠӠq\ o\6\U\@&a(ϠŠŠҬŠ)#a(ԨŠũҩ)a(ŠӠð) @p()@p(ð)  \%\%]ԬΠ! `7$ q$ \ o\J\UŠš٠ȠŠҠĠ̠ŠҠӠũ\ o\"\U\@c)a(נʨРϩӨ Ҩũ±) o.?%r!a(ŠӠӠ̩)@p()@p(±) \%\%]ԬΠ!`7$Ϡ)E@E(̨)E@E()%za(ŠŠҠ)(a(̨׬ŠΠŠ)0a(ĠӠŠ)E@E()E@E(ٺ) @p() \%\%]ԬΠt`7$q]ǠŠŠŠ)%*a(ŮԧӠ٠Ԡή)4\#\\$>\ \\U\@Ha(̬ԧӠҡ)c&Ra(נŠ̠Ϡ٠Š)$\a(ҠŠҠŮ)-fa(ӠŬէ̠ϠŠǡ)\#kc4pa(ԠŠԠŠӠƠũ)$a(ҩҠ)$a(ҠԠӠð)"a(ȠӠΠ̮) \#@p(ð)\2\$"\ P a()Pa()\U \@ca(Ӯ)c' a(٠ԮɠԠϠ̠͠)0a(ĬԠӠŠϠ)E@E()E@&a(ŠҮŠϠӬӠ)(a(ϠΠì٠Ǡ) a(ԠŠҧӠӮ)\#6ca(ԠĠƠ)E@E(Š)E@E()%a(ŠԨŠ\$D\ \\U\@!Na(ƠՠˠРŠ))Xa(ӠΠŠŠ۠) ]o.?%r(ba(̠ĠĠŠӠ)&la(±ŠϠ²Ŭՠ̠Ԡ)'va(נŠŠ٠Ӯ)\#%a(נԠҠ)%a(Š٠ԠΠ)%&a(ŠǮҠĠ)#0a(ʨРϩӨ©Ҩũ):\#\\@%;ca(ՠ̠ŠŠĠԠ)&<a(ŠĠάӠҠ)=a(ӠΠӬԠ)>a(Š)T%1511R DH%16DH%(DL%16):DL%16(DL%(DL%16)16)T%:I:EDDH%256DL%:;` 320o " " D$;"CLOSE" D$;"NOMONO"  B$:(B$)0(B$)5480 "ERROR - REENTER":460 T%0:DH%0:DL%0I1(B$): CHECK EACB%1,1);" ";:59 " ":D$;"CLOSE":D$;"NOMONO":U B$:(B$)0(B$)512q "ERROR - REENTER":10 T%0:DH%0:DL%0:I1(B$):T%((B$,I,1)):T%127T%T%12810040T%(MID(B$,I,1)) T%T%48:T%011 T%1016 T%T%7:T%10"0123456789ABCDEF":7* STST1:STED9? ST(ST8)88 :A%ST4096:B%STA%4096:(A$,A%1,1);:A%B%256:B%B%A%256:(A$,A%1,1);:A%B%16:B%B%A%16:(A$,A%1,1);:(A$,B%1,1);"- "; A%(ST)16:B%(ST)A%16:(A$,A%1,1);:(A$, AREA TO BE DUMPED."::"INPUT YOUR STARTING ADDRESS, HEX ";:10:SL%DL%:SH%DH%:A$B$:STED:"INPUT YOUR ENDING ADDRESS, HEX ";:10:D$;"CATALOG":"INPUT THE FILE NAME ";FI$:D$;"OPEN";FI$:D$;"DELETE";FI$:D$;"OPEN";FI$ D$;"WRITE";FI$:A$;".";B$:A$SING THIS PROGRAM AND THEN THE":"TEXT TO APPLEWRITTER CONVERTER, YOU":"CAN PUT MACHINE LANGUAGE DUMPS IN YOUR":"ARTICLES WRITTEN WITH THE APPLEWRITTER."::" NOTE: SET HIMEM OR START OF PROGRAM":"POINTER (HEX 67,68-DEC 103,104) TO" "PROTECT THES::D$(4)::D$;"NOMONC,I":D$;"MONO":8:"MEMORY DUMP TO TEXT FILE"::::" THIS PROGRAM WILL STORE ON DISK AS A":"TEXT FILE A SECTION OF MEMORY THAT YOU":"SPECIFY. THE OUTPUT WILL BE THE SAME":"AS THE MONITOR'S AS IN 300.400" " BY U  P/ a() oa()G M6]РϠQ]ΠҠ\p]Ԡ#q"\T$]ŠҤ(q]Π͠ǠW]ӠǠƠҡ)#< a(ϠΠŠͬŠ)'F a(ǠӬð)'P a()E@E()E@E(ҠϺð)'Z \d ed!e'o.?%rP-_ a(ΠՠԠŠɭҬ)-d a(ԠŠ)E@E(ƶ)E@E()G} \l oҠĠҮ)4 a(ŬϠ)E@E()E@E(Ҡͬ)3 a(ԠŠð̠)E@E()E@E(Ҡԩ)# a(Ġ׬ϠŠҮ)G@( \#d"ed ed#e d!e#M6]̠#2 a(ՠŠˠΠŠנŠϠΠ)# a(ͮĠҠՠ)! a(ΠԬ٠ǠԠ)% a(ǠŠŠŠ)& a(ҠǠŠҠŮ)G \#$ a(ŠŠ̠)$ a(ҠӠՠ٠Š)& a(Š4:23:958:22: 00,202,208,249,165,161,162,9,24,42,16,1,200,202,208,249,169,0,32,242,226,96,96zfI1012:Z:I,Z:pI81928227:Z:I,Z:zCNT0I561954:S(BASEI)256(BASEI1):V(S2)S2(S2)CNTCNT1CNTCNT(V)012:Z:I,Z::I81928227:Z:I,Z::CNT0:I561954:S(BASEI)256(BASEI1):V(S2)wS2(S2)CNTCNT1CNTCNT(V):: 76,0,032,32,12,225,165,160,166,161,32,65,249,96:I1012:Z:I,Z:I:I81928202:Z:I,Z:I:34,0:35,2980:J:I,J::RWADV8448:TA8964:SA8965:RD8972:SL6:DR1:DA37148sDA,SL16:DA14,SL16:DA1,DR:DA15,DR:\ 76,0,032,32,12,225,165,160,160,0,162,9,24,42,16,1,200,202,208,249,165,161,162,9,24,42,16,1,200,202,208,249,169,0,32,242,226,96,96:I1):"("A")";:28:Z(LL):"("L")":LCLC1:TNCT:SNCS:19:[TA,TN:SA,SN:RD,1:RWDRV:C8191: 169,035,160,00,32,217,3,96,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 1,96,1,0,17,0,17,35,0,36,0,1,1,0,254,96,1,0,1,239,216:I84488474:J:I,J::I89608:"READ ANOTHER DISK ?";:29:A$:A$:A$"Y"Į:19 26 I315:((B3I));:I:TN(B3):SN(B31):19:TN(BASE12):SN(BASE13):19:A(BASE)(1BASE)256:AAA:AATCAAAA216 L(BASE2)256(BASE3):LLL:LLTCLLLL216:15:Z(AA 1:24:" ";:35,23:21:958::21::14 1:24:" ";:LC1:21: B2:CTNTC:CSNSC:5 21:958:10)"NO MORE BINARY FILES"1 11)"FREE SECTORS = ";CNT:24:112):LC1:35,21:22:25 TNCT:SNCS:19:NTC(BASE1):NSC(BASE2):B21122435:B3BASEB2:(B3)0(B31)0Ĺ35,23:21:958::13 (B3)255ī8 PR(B32):PR4PR1284İ16 LC1612 24:16:"CONTINUE ?";:25:A$:A$:A$"Y"11S"OR":8:"HIT ANY OTHER KEY TO QUIT ?";:34:A$:A$:A$(13)ī26 VT17:VS0:BASE9216:NULL$"":TC2151:::" FILE NAME START LENGTH ":" (13 CHAR) HEX(DEC) HEX(DEC) ":34,3:6:::TNVT:SNVS:19:CT(BASE1):CS(BASE FILE NAME FOLLOWED":3:"BY THE FILE START ADDRESS AND FILE":3:"LENGTH IN BOTH HEX AND DECIMAL."::3:"THE NUMBER OF DISK FREE SECTORS IS":3:"ALSO CALCULATED.":16:8:"INSERT DISK TO BE SEARCHED":18:"THEN"C 8:"HIT < RETURN > TO CONTINUE":19: 20:::R140:1:R:"*";:23:R:"*";::R222:1:R:"*";:40:R:"*";::3:8:"BINARY FILE PARAMETER LIST":5:2:R239:"*";:::7:3:"THIS PROGRAM WILL SEARCH A DISK FOR":3:"ALL BINARY FILES, GIVING THE FIRST" 3:"13 LETTERS OF THE     ۰եڅʥۅ , ` :L΄<Ȅ>=?`ʕ>?>`8M˕   , ` L:L``F`$ ܪȱ 婠Lܤ`Ś25 a0 穠LJKH۰hЅѠȱ0@ȱHШhh0Jp]ǠzM6oP'a(ҭȠ٠ɭ)%Pa(ɭҠ)#cP a(٠Š)c'a(ӠĠŠӮ)4a(ϠԠͬӠ)E@E()E@E()*a(ӠӠ̩)ca(Ġ̩)ca(ӠҠ)8oa(ӠŠ)E@E()E@E(٠)GM6R@`@:()@:()@:()$ `@9()%_]Ԡ`@:()$Kd6?eQ!_]ԠŠϠԠ͠ϠŠĠРҠĠΠ٠ǠŠŮ5]ӠӠԠҬ٠ĠϠԠҮ,q]٠ΠĠca(ŠԺ).ca(ŠɭŠŠ̩)0ca(ҠҠƠ @@,h`PQ/ Q^ԥP &^ &^ePP^eQQP&QPe PQ L  HH ~h* ph i# ȥ`L#hذ""صؽXؾؽԶض}uy}uyu~vzu}uy@v~vzMEMEQhETNFREEQ8FFRIIadJb حaخb p @@ p @@ p @ p @@ D  D D  @@Y EOR INC INX INY JMP JSR LDA LDX LDY LSR NOP ORA PHA PHP PLA PLP ROL ROR RTI RTS SBC SEI STA STX STY TAX TAY TSX TXA TXS TYA ??? SEC SED 0؉)ؐ(؊*؉)4؊*r%-%ؘ%.& %%&&ؤ]]،]n^]]<^^ب!!ؔ!n"!!D THEN ASK FOR ANOTHER FILE NAME. INPUT NO.? INPUT STARTING ADDRESS (HEX) INPUT ENDING ADDRESS (HEX) ENDING LESS THAN OR EQUAL TO STARTING ADDRESS - REENTERBCC BCS BEQ BMI BNE BPL BVC BVS ADC AND ASL BIT BRK CLC CLD CLI CLV CMP CPX CPY DEC DEX DE NOTE HIT ANY KEY TO STOP AND TO RESTART. CTRL-C WILL RETURN YOU TO BASIC. NO. 3 WILL DISASSEMBLE ABOUT 23 BYTES INTO EACH DISK SECTOR THAT IT WRITES TO.IT USES AN ADDITIONAL SECTOR FOR THE FILE TRACK/SECTOR LIST. NO. 4 WILL DISASSEMBLE ABOUT 1/2K AN CLOSE MONI,O,C CATALOG INPUT FILE NAMEINPUT PORT NO. FOR PRINTERң ALL PURPOSE DISASSEMBLER BY LARRY FREEMAN 1 DISASSEMBLE TO SCREEN 2 DISASSEMBLE TO PRINTER 3 DISASSEMBLE TO DISK AS TEXT 4 DISASSEMBLE TO DISK FOR ASM/65  э , э э э@ э э э8@  э` ` BUFFER IS FULL, I NEED ANOTHER FILE NAME FOR THE NEXT BUFFER. BSAVE NOT HEX DIGIT, REENTER  .END *=$ WRITE OPEN DELETE $0#ɍ LÎ `Ï э` j> ɠ`& 8鰐 i  ` JJJJJ)` Lɳ L Z э L H H H A эLs ( э A эL0# э$ э )) э, эY эLs) , эX э) э э$; э эLLlH) эh)`HJJJJ ƍh) ɺi,ɃLɃL vݠ э , э , э , э , э ݏ э  э LA э  э 8ei 1$(A эHheHe h Ls  / X 3O эO э ɱɵ э+ э ; J э ;  f эɲ1. э  эI э э э эɳLE@]  э jÏɳ)O٩      L赟0L0ܤ } L赟L0ܤ } L ` ` [ S oP YVPL6 O 5OPL Ι_LfP0Q@PPxA@QPa`qp`HP8εxh`Ʌe ]0 d#e]: oc]ԢD [l ]̠נv \ ]Ԡ̠ d"e] [(#]àӠ"-#]ԠǠŠ2#Pa()\U 7#\@c%<#a(ŠҠՠԠҠԠǠӠϠננϠ̠РŠŠL]͠ԠӠϠҠϠŠŠ̠ǮҬ%]Ǡ̠ŠŠ[ ]͠נ d e]̠ d!e(]̠& d"E@E()E@E(ϠΠϠժ)[@]ǠӠJ]РנTd!e"]^d e]hd"e]rd#e ]+|o P]ŠҠΠcH]Π̠ŠՠΠŠҮ)[$X]Ԡ̠נؠAbM6oa()G'l@p()UVW a@GP(a@GY>qo UVW'Pa@G`%q%Yco =va(Ӡ)>,  ǁ  C̃-l ̓/܁̂l,d 0  Ʈl(5作d m ,FDFFG%m ,B ǽ ,C /쀮 U.܁./@-D ,D-Dذ""صؽXؾؽԶض}uy}uyu~vzu}uy@v~vzMEMEQhETNFREEQ8FFRIIadJb حaخb p @@ p @@ p @ p @@ D  D D  @@Y EOR INC INX INY JMP JSR LDA LDX LDY LSR NOP ORA PHA PHP PLA PLP ROL ROR RTI RTS SBC SEI STA STX STY TAX TAY TSX TXA TXS TYA ??? SEC SED 0؉)ؐ(؊*؉)4؊*r%-%ؘ%.& %%&&ؤ]]،]n^]]<^^ب!!ؔ!n"!!D THEN ASK FOR ANOTHER FILE NAME. INPUT NO.? INPUT STARTING ADDRESS (HEX) INPUT ENDING ADDRESS (HEX) ENDING LESS THAN OR EQUAL TO STARTING ADDRESS - REENTERBCC BCS BEQ BMI BNE BPL BVC BVS ADC AND ASL BIT BRK CLC CLD CLI CLV CMP CPX CPY DEC DEX DE NOTE HIT ANY KEY TO STOP AND TO RESTART. CTRL-C WILL RETURN YOU TO BASIC. NO. 3 WILL DISASSEMBLE ABOUT 23 BYTES INTO EACH DISK SECTOR THAT IT WRITES TO.IT USES AN ADDITIONAL SECTOR FOR THE FILE TRACK/SECTOR LIST. NO. 4 WILL DISASSEMBLE ABOUT 1/2K AN CLOSE MONI,O,C CATALOG INPUT FILE NAMEINPUT PORT NO. FOR PRINTERң ALL PURPOSE DISASSEMBLER BY LARRY FREEMAN 1 DISASSEMBLE TO SCREEN 2 DISASSEMBLE TO PRINTER 3 DISASSEMBLE TO DISK AS TEXT 4 DISASSEMBLE TO DISK FOR ASM/65 8!hIPHm14I1YI0=H0ٹ$0$05H0UH0=HEENTER  .END !+<% VSHUD NQDO EDMDUD!$0#ɍ L  ` ` j> ɠ`& 8鰐 i  ` JJJJJ)` Lɳ  L Z  L H  H H  A Ls (  A L0 # $ )) , Y Ls ) , X ) $; L Ll H) h)`HJJJJ h) ɺi,ɃLɃL vݠ  ,  ,  ,  ,      L A    8ei 1$(A HheHe h Ls   / X 3O O ɱɵ + ;  J ;   f ɲ1.   I   ɳLE @]  j  ɳ)O٩     [']ĠƠ͠[d ed ed ed ed ed ed eK'd ed! ed" ed# ed$ ed% ed& ed' eK'd( ed) ed* ed+ ed, ed- ed. ed/ e('d0 ed1 ed2 ed3 e'ŠӪK'd ed ed e d ed ed ed e0d eK'd ed ed e d ed ed ed e0d eK'd eLd ed e d ed ed ed ed eK'd e*#rq]ŠӠĠ&Yq&`;@r%[ &\U\@&c$&a(ҠҠӠŮ)#&a(ĠǠŠ))&a(ì)E@E(ĠŠҬ)"'a@E(נ٠Ԡή)'w["']Ӡ)?%&a()E@E()G`;@r%a(Ԡ)E@*rE()`.?$r%c&&a(נ٠Ԡή)'&\ \U[*&_%H&]РҠ&]ǠҠ&`;@r$&&qUVW;@rM&`@*#r9()@*#r9()$&@Brp@@c&a(ŠŠԠΠ)%&a(ҠΠΠŠ)1&a(ՠԠŠŠĠΠ)o.?%r&a(נ٠Ԡή)[*&`;@r;@r$&`@*r9@$*&.&\@cca(ԠԠҠŠҺ) &a(ҬŠ)@*#r:(ñ)@*#r:()$%@p@*r_&%`<@r<()r%_(#'&`;@r%\&`@*#r:@$K#t&`@*#r:()$&UVW;@r`@*#r:@*r%Y]ƠĠΠӠԬĠΠϠŠР &Pa()\U &\Һ)2%a(ҬԧӠŠ)G`;@r%a()C%`;@r%a(Š)E@*r`.?$r%ca(נ٠Ԡή)%\ \U[2%q\@cca(ԡ)[%]үРҠ]%\&`;@r$%`@*#r:(ðŠŠԠΠŠ)'%a(ҠΠΠӬՠ)'%a(ŠŠĠΠҠ)%%a(ŠҠΧԠǠ)"%a(Үנ٠Ԡή)["%`;@r$%`@*r9()$%.%\@cca(ԠԠҠŠ@[%]ؠӠ%]ؠҠ %@p()L%\&`;@r$%`@*#r:(ð)@*#r:()$%@p@*r_%%`<@r<()r%_(#'%`;@r%\&`@*#r:@$K#%`@*#r9()$%%\U %\@c'%a(d2ea@G$$d6?e]ҠĠ*$q.?6@r`$#]ƠàϠ$`$$d6?e$o P)$a()G$\@$[!%]ҠҠԠ&%\ oP 0%RP[T$]ҤΪ^$q8rah$ñq.?ròq.?r8ñrdOñ8òr8ò8òrre@p()[$]Π٠Ԡ$\l $PL$o a(ȠנĠӠ)E@Gd2e?a()G@r`$#]ƠâΠ#`<()r$# #d6?e#o P)#a()G#\@#q[#Kwd6?e_D#]ԬΠԠ͠נĠΠҠҠ#\#\ oŠҠӠ(#q]̠ҠϠˠ"#]٠ԠҠϠŢ#d6?eUVWY#\l #o P<#`7$#a(ȠנĠӠŠҩ)_#(#a(ӠŠҠϠ̠ԩ)G,#q.?6)&A#a(ŠҠӺŠ)&F#a(Įנ٠Ԡή)c[K#]ǠĠP#Pa()\U U#\@cc'Z#a(ՠŠĠŠǠ)E_#a(ҬԠӠ)E@E@E@E()E@a(נ٠Ԡή)[#]䮠㰱ð۽ݩŠɠŠ̠堍Ůz!#Xհ ̮ϮǮɮîؠΠ§  ŬϠ Ͳˠй ̠٠͠ϧΠ ̠̠ͯ" ̠̮ͯԠh  ҠΠ ҠӠҮȠ ͯРϠԠŠ ٠ҠɭҠӠɭҠɭҠ ɭҠ̠3 ŠŠ ҠàԱ͠ŠҠӠ"̠Š® ̠Š®° ŠԠ  Ġծ2Š͠Ҡ͠Ӡ͠͠à Ϯà!"Š"٠٠٠٠ȠӮĠ  Ϯՠ ծӠ ծˠ ̮͠ϮǮɮîŠ̠ϠĠΠ àĠϠՠ Үʰ!à*ŠӠŠŠ ŠŠɠŠ̠젍堍󮍍򺠍ԍ̠ƶǍ򺍍ñ젍,6,200,208,236,160,0,177,6,170,200,177,6,134,6,133,7,56,176,210,103 4:34,0:W24:"HIT THE ";::"SPACE BAR";::" TO CONTINUE *";(8);:A$::]}X768822:Y:X,Y::768:165,103,133,6,165,104,133,7,160,1,177,6,208,3,96,234,234,160,04,177,06,240,16,201,127,176,9,201,97,144,5,56,233,32 E145lter theCONTROL-Y vector ($3F8) to point to thenew address.":"These routines were developed using information from Doug Henning's article in NIBBLE Vol 3 No 1, 1982.":"]BRUN MINI-ASSEMBLER ($800)"::"]BRUN MINI-ASSEMBLER ($5400)" "1ping :"::"]FP"T:"Note that 'STEP' and 'TRACE' functions are not available."]500=::"The MINI-ASSEMBER can be relocated in memory by using the RELOCATOR facility in the program BEU, included on this disk. It will be necessary to acode will be displayed whilethe line is re-written."=500::"To exit the MINI-ASSEMBLER and return toBASIC, it is necessary to enter :":"!$3D0G":"After returning to APPLESOFT, it is recommended that you reset the pointers by typle :"::"!300:LDA #00":"After the first line has been entered, enter a blank followed by the next assembly language statement, as in :":"! STA $19":"! LDA #20":"! STA $20"4:"As each line is entered, a correspondinghexadecimal use, thereis an exclamation mark '!' prompt displayed on the screen."U500:"The first step in entering a program is to set the pointer to the starting address in memory, along with the first instruction."::"This is seen in the exam::"Alternately it can be loaded into memoryby:"::"]BLOAD MINI-ASSEMBLER (XXXX)"::"and then later accessed from BASIC by:"::"]CALL 2048 for the lower version, or" :"]CALL 21504 for the higher version."L::"When the MINI-ASSEMBLER is innflict would arise with one version, the other can be used." :"The Mini-Assembler should first be run from the disk by the command:"::"BRUN MINI-ASSEMBLER (XXXX)"::"and once run, can be re-entered from theMonitor level by CTRL-Y." 500 have been included on this disk, one which occupies a lower memory location at $800and the other a higher location, $5400."= :"Either of the two versions of the Mini- Assembler can be run. Two have been included in order that, if a memory co MANUAL' and are therefore not included in this short documentation." y:"Several alterations have been made to itprior to including it on this disk, in order that its ease of use be improved." }500} ~::"Two versions of the MINI-ASSEMBLER the ][ PLUS (APPLESOFT)because of memory limitations." n:"Therefore, the MINI-ASSEMBLER has been altered to permit it to be read into RAMmemory and run in this modified manner."H x:"Instructions on its use are present in the 'APPLE ][ REFERENCEF @ ::T$"MINI-ASSEMBLER IN APPLESOFT"::(40(T$))2:T$:34,2:6:"CAN YOU DISPLAY LOWER CASE? Y";(8);:A$:A$"N"ĺ"NO":10007 d::5:"The MINI-ASSEMBLER was included with theearlier APPLE ][ Computer but room was not available in     䮠䠍 򬠤«Ġٍì宮 荍é嬠ðĠ堍ð䬠䮍󺍍 ̠̠亍ƶǠƶ宍ĠͬԠ򠨪堍͠堍Ԡ䠍򮠠젍󮮮忠Π忍̭à堍۠嬠卍Ġðð ̠ĠĠðð­àРǍ堍򺍍ƶǍð̠ðР俠䠢¢򿍍笠堍宍䍍Ǎ砍宩核Ġ報䠱Ġñ堍򮠠ñ堍宠ò嬠庍ññĠòòĠ N ݺ ɤ4&D ?5=ɥD 5 5 D4ɻɍЀLvɠ` }Ɏ$ `` y LLeJ?>ʊ:>Ș;k/=:   S;:L 4 40K14 L= BC D..=D5֤4 J :3 g ɠɤ ɓՊ x= N   &B&C= N 4ݴ 렍Ʈ䠤Ʈ嬠򮠠̭ᠢӢ宠à堍à堍宍±ϠàՠӍ΍俠堢忍Š̠蠤宠àà砍̠č̭ƶǠ̠򩍍±ӍǠΠ󍍠­РР䠍Πōà堍Ӱ±ð宠堍宍󠍍ðĠð䮠󠍤ð堨蠍ՠ堍̮堢Ģ謠堢Ѣ讠ð嬠᠍ӷ­䮍䠤ð庍ؠˠƠؠϠ͠宮䮠堢Ģĭ堢Ѣ砍ðð̠䮠à NUݺ ɤ4&D ?5=ɥD 5 5 D4ɻɍЀLvTɠ` }Ɏ$ `` T{ LTLeJ?>ʊ:>Ș;k/=:   S;:LT 4 40K14 LT= BC D..=D5֤4 J :3 g ɠɤ ɓՊ x= NU   &B&C= NU4ݴ  LLHxܥyݥPQLuƵPxLhQεyϱΠ L 4) ؘ 甠` uHɃLh` ☪ T`  甠`ѥ΅ ΅ҥυө 甠0ХҠ ӕ "L 4i` F`ٚ .L 4 `$$L$Ն$L,L 8!$Ӡ)%a(ΠĠӠŠŠͮ)$a(ŠŠŠŠҠӠ)a(ŠؠҮ)\#'a(ϠĠŠحǠȠҬ)#"a(ŠŠŠà)0,a(ũ)E@E(̨)E@E(Ġ)&6a(Ġ@E(Ҡ)E@E()E@E()'Pa(ҠîŠàӠ)%da(Ƞ̠Š)$na(٠٠Ԡð)%xa(ӠӠҠ)\#&a(ŠŠҬ)%a(ŠŠŠԧӠˠǠ)(a(Ơð̠ҩ) \#\\@c#a(ƠŠΠ̺)&(a(ŠӠΠŠԠ) 2a(Š٠Ӡ)7a(ŬϮ)9\#=<a(ŠŠ)E@E()EE@E(ԠӠӠ)#a(ŠɭҠӠנ)'a(ĠԠŠ٠ĠϠ)a(Ҡͮ) \#c&a(ŠԠϠŠ͠)%a(̠ŠӠԠ)(a(٠ҠǠŠŠӮ)$a(`\@]ԠРec(ja(ŠŠנŠϠŠ)#ta(ĠŠ٠ϠΠΠ)%~a(ŠɭҠ٠)1a(ӠӠĠ)E@E()E@E(Ҡ)\#\\$\ P\\@c1a(Š)E@E()Š)(a(Š͠ǠŠԭ)'a(ΠɭҮϠϠϬ)($a(ԠԠϠϠŠҠ)#.a(ǠŠԢٮ)8\#]BK]РL\n]+Vq]ԠǠҠǠנРƠנϠӠ\]\UVW^X \a()G&\Z0Y:UVWYD_]ĠΠ!\X]Ԡ̠נ\@]ԠР̠o&a(ŠŠǠϠɠcoa()G\ZUVWY*@p(ð)q\2qa()>M ]РϠŠ͠ϠΠĠƠͩ]ԠΠ\d]ӠԢ\]ΠΠ4d"e]Բؠ)[,@p(Ҡ±)\2[-6Pa(ðŠ Ҡ±)[@@p(ð)\2[-JPa(ðĭĠðð)[T@p(Рð)\2[-^Pa(ñààРð)[]ΠΠq[@p(ؠ)\2[,Pa(ðؠ)[@p(Ҡ±)\2[-Pa(ðŠ Ҡ±)[@p(ð)\2[-Pa(ðĠðð)[@p(ؠ)\2[-"Pa(ðŠŠϭiUVWYnoca()G\ZxUVWY[+@p(ƶ)q\2q[ a()c#a()G\ZUVWY[]ҠӠ,@p(ð)q\2*#r9()rYZʊ:>Ș;k/=:   S;:L 4 40K14 L= BC D..=D5֤4 J :3 g ɠɤ ɓՊ x= 4   &B&C= 44ݴ 4ݺ ɤ4&D`L# ȱ0` 4 `u` 7$ 8`0 &&` { %Ppĥ uv` 2e   %F8 2 8Hh&&&&& 0hhI`L嬠ΠŠҍ堶򮠠Ġ򠍰Рﮠ婮Р堲報򠰰堲󮠠󮍍堶򬠍Т堶ՠЮ嬠堲報忠宮򠠱򠵮򠳠󠱱報堲報堲򠹠堍򠱰堰䠱󺍍󠲠堍٠ō󠱰Šč砍󮠠堍ﬠ쬠宍ŠĠ٠ō󠤱䠤󡍍宍ΠҠӍà蠍̠Ǡ¢堍̍堍ᅪà婍̭ƶǍ򮍍䬠蠍ƶǠ庠à庠РР򠤰庠庠à堍찰庍ĠŠàŠà­àР庠Ġ蠍ƶǠ򍍡ààР ?5=ɥD 5 5 D4ɻɍЀL\ɠ` }Ɏ$ ``LXWVhY `XWYHV(` Jhh LH) JQ JJJH`HJ`hh ?l8e` %GQ/[҅n3p䍠ðŠɠ䮍ư͠ŠɠŠ̮堲栍Šɠɠ󮍍宠čɠ堍ɠ򠢱±쩿±占蠍Π堍򮍍堍堶󺍍占嬠堍򮩍Р䠍렠堍嬠堍򮠨嬠堍󮍍嬠ؠ䠍٠󮍠嬠ð䮠堍ج٬䠍ЮŠɠ嬠NTATION FOR MASM. TO EXIT THE"~ 2"DOCUMENTATION, SIMPLY HIT THE KEY. YOU CAN EXIT MASM BY ENTERING: OBJ 976" <23:" EXEC MASM":22:LASIC' AND 'SWEET16' FILES ON THIS DISK, MASM WILL OPERATE IN A 48KAPPLE ][ PLUS." (:"TO USE THE MASM ASSEMBLER, SIMPLY 'EXEC'THE FILE ENTITLED 'MASM'. THIS WILL THEN LOAD INTEGER BASIC AND SWEET16 INTOMEMORY, LOAD MASMA AND LEAVE YOU IN THE DOCUME ::18::"MASM":3:"'MASM' IS AN ASSEMBLER WHICH WILL ALLOW THE USER TO ENTER ASSEMBLY LANGUAGE SOURCE CODE, SAVE IT AND ASSEMBLE IT."Q :"'MASM' WAS ORIGINALLY WRITTEN FOR THE INTEGER BASIC ENVIRONMENT, BUT BY USING THE 'INTEGER B   eʵ``` f f` &L L fLC`8i`uu  ee`` ` 0` ` ` 5I` 5Iй` f f`L󠤴ؽ󠤴򠍤خ堩󠍤󿍍庍䠵箍堢堢؍Ġؠ箍砍堢堍堍宍ư蠍򮠠ΠĠǍ堍堷ŠɠŠ̮嬠䮠Ҡư䠍ư򺍍ƶǍð̠ҠưҠưðҠ򍠠ðР򮠍ƶǠ򍍡ð̠Ҡư렢ҠưðРǍᠠŮРǠ퍍堠堶ŮҠưð宠󍠠ð荠򍍪ƶǍðĠፍ̠Ϡ宍ð堢占䠍Ǎ䠍򮍍荠䩍Ҡưư占ͩРР堍͠̭򩍍ƶǠ򩍍ðĠǍЍԺ̺ĽōԠǠŠҠԠΠ̠ҮԠӠԠϠŠŠԠӠξҠҮɍΠҠÍĠԱĠ͠ÍΠɍ 5=9ASL BIT,$CMPCPXCPYDECEORIMEAQU]YINCJMPLlJSR LDALDXLDYLSRNFJV^ORA ROL.&*6>RORnfjv~SBCORGDFADFH.DFBEQUHDFWpBRKCLCCLDCLIXCLVDEXDEYINXINYNOPPHAHPHPPLAhPLP(RTI@RTS`SEC8SEDSEIxTAXTAYTSXTXATXSTYARTNBK RS NULBCCBCSBEQBMI0BNEBPLBVCPBVSpBR BNCBC BNNBN BZ BNZBF BNF BS ADCimeaqu}yAND)-%!1 l` H)h` x@A L( S:; L:7 8 iȽ ~:>;?` hhL_>?  <>=?&Ly ۆ܆  +-   ` $#*J:J 0  `R LTL #uۥuL=8ۥL=0 Pɢ 0 :A[ Pܢ``J K %yL܅۠ L N  C נ 8 ),д XЭ )Ц П ,Д YЍ   L 0``&H     hف  ``` $ ``: 6 58 ʉ00yYʅե˅ֆߩՅLօM\   ԥ`  . L*9     # L LL el  `  /0߅Șc5Ly A :# /( 3#./&(U /, X/Y6GL- L)Ȅ ` 8`ԅӅ #`3  g ȭɤ) ` 4 4 :L)14 L) ɉ   ` A2A4!5#6$7E8F`!1`L  ڠ  3)eL+Ly`  &JڥK۰څʥۅ ,L :LL  8ϕڥ۰ߥѥڅ<ۅ=ʅ>˅? 7 څʥۅ` vL1 Ljɍ ɍɍLLɍHn ăh a     )Т` ȹ0HJJJJ h) 0:iLPΥ? r`0 0 >Υ? v `ʅ˅LMޥ<Υ= m"   * * *   *`L67` a1Lc3!A5$4q!1`! 8MϕL  L) KJJ`  X   L17 ) A# f    L1 ӎL1LpVP΍Qύ W8JK6ʑ˥ʥ˰ʥ˱ਈ` ӎLB I0 B     400:280# (X$,1)"R"İ480:2808 (X$,1)"0"270A 190Y ::D$;"CATALOG":p (X$,2,1)"0"270 "((X$,2,1))0190 ,: 6D$;F$;(A$(X),7,31);",V0" @ J33,19:32,20:: T32,0:34,22:33,40:I ^384:" DO YOU WANT1000 THIS DOCUMENTATION WAS SAVED VIA: >BSAVE MASM DOC,A$4000,L$1000 DURING LISTING OR ASSEMBLY, PRESS A KEY TO PAUSE &/OR "RETURN" TO STOP LISTING. ERROR MESSAGES ARE BURIED INSIDE THE LISTING, SO WATCH CAREFULLY FOR THEM.SAMPLE PROGRAM: :10EITH FALKNER.HELPFUL HINTS: -------------- ANY LINE STARTING WITH DOLLAR-SIGN ($) IS A COMMAND TO THE MONITOR. THE ESCAPE KEY FUNCTIONS FOR KEYS @, AND A THROUGH F ARE AVAILABLE. MASM WAS SAVED ON DISK VIA: >BSAVE MASM,A$1000,L$ $HH 2-BYTE ADDR (LOW,HIGH). DFH #NAME = LOW BYTE OF ADDRESS DFH /NAME = HIGH BYTE OF ADDRESS ***************************************** * BY SCOTT T. JONES, CLEARWATER, FLA ** **************************************** DOCUMENTATION BY K LOCATION OF PROGRAM IN MEMORY. EQU AA OR $HH ASSIGN A LABEL TO A LOCATION IN MEMORY. DFA "???????" DEFINE ASCII DATA. DFB EQU TO CURRENT ADDRESS. DFH HH DEFINE A BYTE IN HEX. DFW AA ORUMBER THE PROGRAM. SAV SAVE SOURCE TO TAPE. SLO SLOW DOWN ALL PRINTING. A = DECIMAL ADDRESS; H = HEX ADDRESS I,J,K = LINE NUMBERS IN THE PROGRAM.PSEUDO-OPCODES: CONTROL DATA & MEMORY --------------- ORG AA OR $HH DEFINESOME LINES. DIS A1,A2 DISASSEMBLE TO SOURCE. FAS MAKE PRINTING GO FAST. LIS [I[,J]] LIST LINES OF PROGRAM. LOA LOAD SOURCE FROM TAPE. NEW REINITIALIZE MASM. OBJ AA OR $HH RUN PROG @ THAT ADDRESS. REN RENRAND AND OPTIONAL COMMENT. A LINE WITH "*" IN COL 7 IS A COMMENT. CTRL-I IS A HORIZONTAL-TAB KEY.DIRECT COMMANDS: CONTROL MASM ITSELF ---------------- ASM ASSEMBLE THE PROGRAM. COP I,J,K COPY LINES I-J AFTER K. DEL I[,J] DELETE OLUMNS CONTENT 01 THE PROMPT IS A COLON (:). 02-05 4-DIGIT LINE NUMBER. 06 (LEAVE A SPACE) 07-10 OPTIONAL 4-CHARACTER LABEL. 11 (LEAVE A SPACE) 12-14 3-LETTER OPCODE OR PSEUDO-OP. 15 (LEAVE A SPACE) 16-?? OPE :CATALOG, ETC. EXIT -- TO EXIT MASM, PRESS RESET, OR TYPE "OBJ 976". 4096 ($1000) IS THE "COLD" ENTRY; 4099 ($1003) IS THE "WARM" ENTRY. AFTER ANY DOS ERROR MESSAGE, TYPE "CALL 4099" TO RECOVER.FORMAT OF PROGRAMS. CNO WARRANTY IS EXPRESSED OR IMPLIED.STORING PROGRAMS: LOADING & SAVING ----------------- TAPE -- :LOAD AND :SAVE WORK JUST AS >LOAD AND >SAVE DO IN BASIC DISK -- MASM WILL ACCEPT DOS COMMANDS, EG: :LOAD [NAME] OR :SAVE [NAME] & SAVED AS "I" FILES. BUT DON'T TELL BASIC TO LIST A PROGRAM! MASM IS LINE-ORIENTED, AND THE SOURCE ISFIXED FORMAT; LABELS ARE 1-4 BYTES. THE CHARACTER PERIOD (.) IS SPECIAL. PERIODS ARE ALWAYS "INVISIBLE" IN YOUR PROGRAM; DEFINE THEM WITH "DFH 2E". AM.OVERVIEW OF MASM: FUNDAMENTALS ----------------- MASM IS A CO-RESIDENT ASSEMBLER WITH SUPPORT FOR SWEET-16 AND CASSETTE TAPE. MASM CAN ACCEPT ALL DOS COMMANDS. THE TEXT EDITOR IS STYLED AFTER INTEGER BASIC, AND SOURCE PROGRAMS ARE LOADEDRVIEW AND INSIGHTS. 2: HOW TO LOAD AND SAVE PROGRAMS. 3: FORMAT OF SOURCE STATEMENTS. 4: COMMANDS TO THE ASSEMBLER. 5: PSEUDO-OPCODES (DEFINE DATA). 7: CREDITS. 8: HELPFUL HINTS & MISCELLANY. 9: SAMPLE SOURCE PROGR@ /B@CO XB BC S@ O1:ōOi @B轏@CL@L@ Y˅DOED DE X`LLB!DE_GI]K^K LMM A S M : EDITOR & ASSEMBLER --------- PAGE TOPIC ==== ===== 1: OVE      TO LOAD OR RUN ANY OF THESE PROGRAMS? (THERE ARE MORE.) ";:380Q hZ$_ rZ$"Y"ıp |Z$"N"360 32,0:34,3:33,19:: (Y$)201(Y$)193440 (Y$)194450 (Y$)212460 470 F$"LOAD": F$"BLOAD":F$h X{gggggg'(dgxkg~9g'7(*䮥G 0 #gMghghPcQ)Wqqqqhhq`uuuQĠ 5EMҠL Šō?FِLÈϚΠ ăκ f ٢  ٦Τ ȹɀI ȄȹH h3 oLP O䯭䮡𥴳\@`` ~3`Gg壡yi壡yi` @G>W']5Kgvq7ϠGX͠LϠ٠SGϠDĠHSĠNSĠTܙݙᙯ` ??<<<<<<<0UUUUUUUUWB oTMɅ"3J[NSJIfmzq# [$NYP;#o6#"#!0 9@0Ӷ:Pyإ<[(N܄iȢٚ . y$IqܤݐLM͠1FLJܹ/ݾLuc ăܪȱ L[ĨP?xO_ڹo  ʤ  Y YoܹݾЇ`TP@xL` Ιϙ_o$0 8 P# o ΅ڥυ e epݕ` 4LˎL$ `  rPՆϦ ` ΅υȩ ` Τ PڵxۥΑȥL`hh$ F`` ͏%ֈ`ʤZA^ܙ ݙ0  m7; xx ԅբ H 0  $ ( x$0  xx 0$FԨֹ)U h)װ H 듥֐ι L؆l`w0P`fLPεϵxϱHȱ΅hΈ` J  P` Y $0`  'ʅ˅LM&ȱϰqȥȥ`FLʥM˥J̥Kͩ`Lkȱ0@hJHȱШhЄӠȱ0I@iHeШiH˰hhЈЈ͑Ј̑ЈЈ0JKЬ@iHe eѕxh$0X~")XȔ) F*Ȇ0LJɢ  Ȉ ϴX)HЄ ȹ)eHe0hޤȄ h󰩠ɩch cɰ$0 $` dq  u  mʥ` ȹ0 L uߙ`` ӎ$0LL*iS 00)ȆȘHJI@hL`ȩ)?Jжi?oiO iȱ) zȵх 8 05  o ` l3 ΃3` 4J G 4&(JJJJ) ` ӏ F٩ $  ΃Ȣ ii)ɰL ̥͐Eʑ˥ʥ˰ਈ$ u~`ꠀЕ x ت3 Q3ؕxQεy NvNδPPPL#Q8yڅ`Sε{ϵQڵyxȔPMuHOwh(VP`΅h(OM ׁL6 T&ϐ eڅeۅ &L~ 畠(LoU [΅ڥυ džة * * *     % 0LH΢QPHΪ0h$0 )?i h](Њ Px+L 4P 䏕xL# 48` PxL PeHxeH˰iکeۅȱhڙ=i?BC , LʩM˩I6bVcWdXeYfZg[h\i]j^k_L L3L`) #L $  `  v mL;ʅ˅LM  m       "EXEC":+(Y$)201(Y$)193520>(Y$)194530Q(Y$)212540g"AT LINE 625",Y$vF$"RUN":F$"BRUN":F$"EXEC":&056,72,132,208,160,0,145,209,230,209,208,2,230,210,104,164,208,96,169,160,96 : LINE #20 = D؍؍؍؍؍؍؍؍䠠آ䠠آ󠮮򮍍尳؍؍؍宠ؠ؍؍؍؍؍؍ح򮮮ؠؠ؍ؠؠؽؠؠؠؠ򠤳򍠠ؽؠ夰ؠؠ󍠠򍠠ح򮍠ؠؠ宍ﬠحﮮ򍠠Ġح蠤ؠؠ󍠠󠤳蠤øõà䠤Ơ䠢Ϣ堤îؠ䠍䮠䮮䮍򍠠 àî򠍠󠤳䠤 䠤î󺍍 gW'  `^ :F Y %^LǏLZ^[_\Z][` 1 8tp`8M`y LHy0y h (`|)* X |`YLHHJhh`Ǘ˯߷ë󳏋'C/cO KC[/3k{'7w+Ss?A`uu  ee`` ` 0` ` ` 5I` 5Iй` f f`Lǔ`w Jhh LH) JQ JJJH`HJ`hh ?l8e` %GQ/[҅n3peʵ``` f f` &L L fLC`8i  ISK TITLE D堤ñ려îñŠՠ卍ñŠñƍƵﬠ堠ө堤Š려 堍렠ƠñŠøĠàñ ōˠҍ뮠ñŠ栍뮮ҠƵ堨ҩƵҠ􍍠ƠñŠøĠàñˠҍ卍ˠҍ庠宍庍ñĠñúƠҠƵñƺ؍堍堮栠嬠嬠堺ƠñŠøĠﬠ堢뢠ﮍ䠍宠栍宠堢뢠堍ﮍ䮍Š۠Ų؍؍ؠŠŲɠ堍笠ΠŠˍŠŲؠح򠤰ŠŲح젤Ų堤宮ؠ箠젍򮩍ؠŲ؍؍؍ؠŠŲ򮍍󮮮ؠ#  :D$(4): CTRL-D92:A$"APPLE II":1000U<D$;"BLOAD LOADER.OBJ0"|F4096: FAST LOAD IN INTEGER BASICZC(1101):C6ĺ::A$"BE SURE CAPS LOCK IS DOWN":1000:_D$;"BRUN MENU"d(4);"FP" CENTER STRING A$ B(20$C030 `NOTE DEYj BNE NOTEt STA SPKR ~ TAY  INX BNE NOTE BEQ LOOPTONE DFH 3355778899BBDDEE$55778899BBDDEET* MAKE NOISES FROM KEYS  ORG $800LOOP JSR $FD0C GET A KEY AND #$7F CMP #3 CTRL-C? BNE NOIS NOPE$ JMP $E003 YES- EXIT.NOIS AND #$07 8 TAXB LDA TONE,X L TAYVSPKR EQU    󮮮ñƠҠƵ1:21:A$:C(A$)64:(C1CPROGNUM)C3790> _C37ĉ: dP$"":P2(C4)22:C2736:P$P$(C2,P2)C2,P21)16128):::B(C1)1ĺ(4);"BRUN ";P$ nB(C1)0ĺ(4);"RUN ";P$ xB(C1)2ĺ(4);"EXEC ";P$((A$)2)):B0B1" B:A$:6128:B(PROGNUM)0:A("B")B(PROGNUM)1j KA("T")B(PROGNUM)2 PPROGNUMPROGNUM1:5);(64PROGNUM):55 U:V(37):2:868/ Z1:V1:958:"WHICH PROGRAM (A-";(64PROGNUM);")? HIT TO EXIT";:V gW'  `^ :F Y %^LǏLZ^[_\Z][` 1 8tp`8M`y LHy0y h (`|)* X |`YLHHJhh`Ǘ˯߷ë󳏋'C/cO KC[/3k{'7w+Ss?AVENTION 80 L(OAD R(UN D(ELETE C(ATLG T(DRIV K(LOK U(NLOK X(ALL E(XIT SP(PAGE ----------------------------------------VOL PG OF SECT-USED LEFT ---------------------------------------- $% 0nmooة$eeVLԒؠ 58nnooؠ o 0n)JJJJ 0șn) 0șVJJJJ 0``i% $ BU ڑV V Hi&eh L`$V  ɍ ` X0 ` APPLE-)N*m+Jn)m)eeU`8VUU ڑ` :` ^6789 Q@ q . @^`6798 Q`H h``noVVi@iA)moo g p g) pmn/5 qs r ; qa ` `$$(ɠ$C q$W ``H$%  h\  `CATALOG\Y/N\LOAD\LOCK\UNLOCK\RUN\SAVE\DELETE\NOMONC\START\ LENGTH\,D\I/O ERROR\@  UmU+&*Y Y P ,X B АX I8Mt_=gH?J QVQT_ɕ%[^ZZ\[]^Z_[ 0W Г J1  @)ȹ@)ȹ@) q P^ɠ 0   qL MW'WП < XX