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`,10,140,0,140,10,150,10,150,20,140,20,140,10,140,20,150,20,150,30,140,30,140,20,140,30,150,30,150,40,140,40,140,30,140,40,150,40,150,50,140,50,140,40K&140,50,150,50,150,60,140,60,140,50,140,60,150,60,150,70,140,70,140,60,140,70,150,70,150,80,140,80,14000,130,100,130,90$130,100,140,100,140,110,130,110,130,100,130,110,140,110,140,120,130,120,130,110,130,120,140,120,140,130,130,130,130,120,130,130,140,130,140,140,130,140,130,130,130,140,140,140,140,150,130,150,130,140,999,0%140,0,150,0,150,10,140,140,30,130,30,130,20,130,30,140,30,140,40,130,40,130,30,130,40,140,40,140,50,130,50,130,40$130,50,140,50,140,60,130,60,130,50,130,60,140,60,140,70,130,70,130,60,130,70,140,70,140,80,130,80,130,70,130,80,140,80,140,90,130,90,130,80,130,90,140,90,140,1,100,120,110,130,110,130,120,120,120,120,110,120,120,130,120,130,130,120,130,120,120,120,130,130,130,130,140,120,140,120,130,120,140,130,140,130,150,120,150,120,140,999,0[#130,0,140,0,140,10,130,10,130,0,130,10,140,10,140,20,130,20,130,10,130,20,140,2020,40,130,40,130,50,120,50,120,40! 120,50,130,50,130,60,120,60,120,50,120,60,130,60,130,70,120,70,120,60,120,70,130,70,130,80,120,80,120,70,120,80,130,80,130,90,120,90,120,80,120,90,130,90,130,100,120,100,120,90" 120,100,130,100,130,110,120,110,12020,120,130,110,130,110,120,110,130,120,130,120,140,110,140,110,130,110,140,120,140,120,150,110,150,110,140,999,0!!120,0,130,0,130,10,120,10,120,0,120,10,130,10,130,20,120,20,120,10,120,20,130,20,130,30,120,30,120,20,120,30,130,30,130,40,120,40,120,30,10,110,60,110,50,110,60,120,60,120,70,110,70,110,60,110,70,120,70,120,80,110,80,110,70,110,80,120,80,120,90,110,90,110,80,110,90,120,90,120,100,110,100,110,90p 110,100,120,100,120,110,110,110,110,100,110,110,120,110,120,120,110,120,110,110,110,120,120,1,100,130,100,140,110,140,110,150,100,150,100,140,999,0110,0,120,0,120,10,110,10,110,0,110,10,120,10,120,20,110,20,110,10,110,20,120,20,120,30,110,30,110,20,110,30,120,30,120,40,110,40,110,30,110,40,120,40,120,50,110,50,110,40110,50,120,50,120,6110,70,110,80,100,80,100,70,100,80,110,80,110,90,100,90,100,80,100,90,110,90,110,100,100,100,100,906100,100,110,100,110,110,100,110,100,100,100,110,110,110,110,120,100,120,100,110,100,120,110,120,110,130,100,130,100,120,100,130,110,130,110,140,100,140100,0,110,0,110,10,100,10,100,0,100,10,110,10,110,20,100,20,100,10,100,20,110,20,110,30,100,30,100,20,100,30,110,30,110,40,100,40,100,30,100,40,110,40,110,50,100,50,100,40c100,50,110,50,110,60,100,60,100,50,100,60,110,60,110,70,100,70,100,60,100,70,,80,100,90,90,90,90,80,90,90,100,90,100,100,90,100,90,9090,100,100,100,100,110,90,110,90,100,90,110,100,110,100,120,90,120,90,110,90,120,100,120,100,130,90,130,90,120,90,130,100,130,100,140,90,140,90,130,90,140,100,140,100,150,90,150,90,140,999,0100,10,90,10,90,0,90,10,100,10,100,20,90,20,90,10,90,20,100,20,100,30,90,30,90,20,90,30,100,30,100,40,90,40,90,30,90,40,100,40,100,50,90,50,90,40890,50,100,50,100,60,90,60,90,50,90,60,100,60,100,70,90,70,90,60,90,70,100,70,100,80,90,80,90,70,90,80,100,80,90,90,80,90,80,80,80,90,90,90,90,100,80,100,80,9080,100,90,100,90,110,80,110,80,100,80,110,90,110,90,120,80,120,80,110,80,120,90,120,90,130,80,130,80,120,80,130,90,130,90,140,80,140,80,130,80,140,90,140,90,150,80,150,80,140,999,090,0,100,0,80,0,90,0,90,10,80,10,80,0,80,10,90,10,90,20,80,20,80,10,80,20,90,20,90,30,80,30,80,20,80,30,90,30,90,40,80,40,80,30,80,40,90,40,90,50,80,50,80,40580,50,90,50,90,60,80,60,80,50,80,60,90,60,90,70,80,70,80,60,80,70,90,70,90,80,80,80,80,70,80,80,9080,70,70,70,80,80,80,80,90,70,90,70,80,70,90,80,90,80,100,70,100,70,9070,100,80,100,80,110,70,110,70,100,70,110,80,110,80,120,70,120,70,110,70,120,80,120,80,130,70,130,70,120,70,130,80,130,80,140,70,140,70,130,70,140,80,140,80,150,70,150,70,140,999,0WHERE THE LETTER OCCURED TO FINAL RESULT;AAJ16(I1)C:I10,210,30,210,40,220,40,220,50,210,50,210,405d210,50,220,50,220,60,210,60,210,50,210,60,220,60,220,70,210,70,210,60,210,70,220,70,220,80,210,80,210,70,210,80,220,80,220,90,210,90,210,80,210,90,220,90,220,100,210,100,210,906f210,100,220,100,220,110,2,120,210,120,210,130,200,130,200,120,200,130,210,130,210,140,200,140,200,130,200,140,210,140,210,150,200,150,200,140,999,0+5b210,0,220,0,220,10,210,10,210,0,210,10,220,10,220,20,210,20,210,10,210,20,220,20,220,30,210,30,210,20,210,30,220,30,220,40,210,40,50,210,60,200,60,200,50,200,60,210,60,210,70,200,70,200,60,200,70,210,70,210,80,200,80,200,70,200,80,210,80,210,90,200,90,200,80,200,90,210,90,210,100,200,100,200,90z4\200,100,210,100,210,110,200,110,200,100,200,110,210,110,210,120,200,120,200,110,20040,190,140,190,130,190,140,200,140,200,150,190,150,190,140,999,02X200,0,210,0,210,10,200,10,200,0,200,10,210,10,210,20,200,20,200,10,200,20,210,20,210,30,200,30,200,20,200,30,210,30,210,40,200,40,200,30,200,40,210,40,210,50,200,50,200,403Z200,50,2160,190,70,200,70,200,80,190,80,190,70,190,80,200,80,200,90,190,90,190,80,190,90,200,90,200,100,190,100,190,90@2R190,100,200,100,200,110,190,110,190,100,190,110,200,110,200,120,190,120,190,110,190,120,200,120,200,130,190,130,190,120,190,130,200,130,200,1,999,00N190,0,200,0,200,10,190,10,190,0,190,10,200,10,200,20,190,20,190,10,190,20,200,20,200,30,190,30,190,20,190,30,200,30,200,40,190,40,190,30,190,40,200,40,200,50,190,50,190,40m1P190,50,200,50,200,60,190,60,190,50,190,60,200,60,200,70,190,70,190,,180,90,180,80,180,90,190,90,190,100,180,100,180,900H180,100,190,100,190,110,180,110,180,100,180,110,190,110,190,120,180,120,180,110,180,120,190,120,190,130,180,130,180,120,180,130,190,130,190,140,180,140,180,130,180,140,190,140,190,150,180,150,180,140190,20,180,20,180,10,180,20,190,20,190,30,180,30,180,20,180,30,190,30,190,40,180,40,180,30,180,40,190,40,190,50,180,50,180,403/F180,50,190,50,190,60,180,60,180,50,180,60,190,60,190,70,180,70,180,60,180,70,190,70,190,80,180,80,180,70,180,80,190,80,190,9070,100,180,100,180,110,170,110,170,100,170,110,180,110,180,120,170,120,170,110,170,120,180,120,180,130,170,130,170,120,170,130,180,130,180,140,170,140,170,130,170,140,180,140,180,150,170,150,170,140,999,0}.D180,0,190,0,190,10,180,10,180,0,180,10,190,10,0,30,180,30,180,40,170,40,170,30,170,40,180,40,180,50,170,50,170,40,<170,50,180,50,180,60,170,60,170,50,170,60,180,60,180,70,170,70,170,60,170,70,180,70,180,80,170,80,170,70,170,80,180,80,180,90,170,90,170,80,170,90,180,90,180,100,170,100,170,90->1,120,160,120,160,110,160,120,170,120,170,130,160,130,160,120,160,130,170,130,170,140,160,140,160,130,160,140,170,140,170,150,160,150,160,140,999,0C,:170,0,180,0,180,10,170,10,170,0,170,10,180,10,180,20,170,20,170,10,170,20,180,20,180,30,170,30,170,20,1750,160,40*2160,50,170,50,170,60,160,60,160,50,160,60,170,60,170,70,160,70,160,60,160,70,170,70,170,80,160,80,160,70,160,80,170,80,170,90,160,90,160,80,160,90,170,90,170,100,160,100,160,90+4160,100,170,100,170,110,160,110,160,100,160,110,170,110,17020,150,130,160,130,160,140,150,140,150,130,150,140,160,140,160,150,150,150,150,140,999,0 *0160,0,170,0,170,10,160,10,160,0,160,10,170,10,170,20,160,20,160,10,160,20,170,20,170,30,160,30,160,20,160,30,170,30,170,40,160,40,160,30,160,40,170,40,170,50,160,60,60,160,70,150,70,150,60,150,70,160,70,160,80,150,80,150,70,150,80,160,80,160,90,150,90,150,80,150,90,160,90,160,100,150,100,150,90X)*150,100,160,100,160,110,150,110,150,100,150,110,160,110,160,120,150,120,150,110,150,120,160,120,160,130,150,130,150,1,150,150,140,150,140,140,999,0'&150,0,160,0,160,10,150,10,150,0,150,10,160,10,160,20,150,20,150,10,150,20,160,20,160,30,150,30,150,20,150,30,160,30,160,40,150,40,150,30,150,40,160,40,160,50,150,50,150,40((150,50,160,50,160,60,150,60,150,50,150,60,1,70,140,80,150,80,150,90,140,90,140,80,140,90,150,90,150,100,140,100,140,90' 140,100,150,100,150,110,140,110,140,100,140,110,150,110,150,120,140,120,140,110,140,120,150,120,150,130,140,130,140,120,140,130,150,130,150,140,140,140,140,130,140,140,150,1408hh;_ ")D @ ) @ DFT *u,*ȱ8ȱeȱeeiiȑl $ lL `LZLLLENEVER YOU USE THE+ ONERR COMMAND, YOUF MUST RESET A POINTERa IN MEMORY BEFORE YOUy$ GO BACK INTO YOUR. PROGRAM. THE COMMAND8 POKE 216,0 DOES THISB FOR YOU.L V 216,0` j GO BACK TO PROGRAMt ~ 1100CIDENTAL ENTRY' WHERE THE ENTRY IS? NOT A NUMBER. ITX IS SET UP TO CATCHn AN ERROR ON ALL THREE ENTRIES."YOU MUST ENTER A WHOLE NUMBER! ""START OVER. " WHYS. START WITH SMALL ONES OR"IH"YOUR DATA WILL SOON BE IN DISARRAY!"QR18\"P.S. READ THE PROGRAM LISTING":"CAREFULLY AND YOU WILL LEARN SOME":"INTERESTING PROGRAMMING TECHNIQUES."fp ERROR TRAP z THIS WILL CATCH AN AC10","Y",";@X10","Y10",";1@X","Y10",";@@X","Y",";[@YY10:CC1:C52005o@4"ANOTHER? ";R$@>R$"Y"1000@ @(222)42Ā660,110,260,120,250,120,250,110,250,120,260,120,260,130,250,130,250,120,250,130,260,130,260,140,250,140,250,130,250,140,260,140,260,150,250,150,250,140,999,0??"LINE NUMBER? ";LN$?"X? ";X:"Y ";Y?C0?LN$" DATA";?X","Y","; @X60,50,250,50,250,40>250,50,260,50,260,60,250,60,250,50,250,60,260,60,260,70,250,70,250,60,250,70,260,70,260,80,250,80,250,70,250,80,260,80,260,90,250,90,250,80,250,90,260,90,260,100,250,100,250,90?250,100,260,100,260,110,250,110,250,100,250,110,2,130,240,120,240,130,250,130,250,140,240,140,240,130,240,140,250,140,250,150,240,150,240,140,999,0>250,0,260,0,260,10,250,10,250,0,250,10,260,10,260,20,250,20,250,10,250,20,260,20,260,30,250,30,250,20,250,30,260,30,260,40,250,40,250,30,250,40,260,40,20,240,60,250,60,250,70,240,70,240,60,240,70,250,70,250,80,240,80,240,70,240,80,250,80,250,90,240,90,240,80,240,90,250,90,250,100,240,100,240,90b=240,100,250,100,250,110,240,110,240,100,240,110,250,110,250,120,240,120,240,110,240,120,250,120,250,130,24040,240,140,240,150,230,150,230,140,999,0;240,0,250,0,250,10,240,10,240,0,240,10,250,10,250,20,240,20,240,10,240,20,250,20,250,30,240,30,240,20,240,30,250,30,250,40,240,40,240,30,240,40,250,40,250,50,240,50,240,40<240,50,250,50,250,60,240,60,240,5230,80,230,70,230,80,240,80,240,90,230,90,230,80,230,90,240,90,240,100,230,100,230,90(;z230,100,240,100,240,110,230,110,230,100,230,110,240,110,240,120,230,120,230,110,230,120,240,120,240,130,230,130,230,120,230,130,240,130,240,140,230,140,230,130,230,1240,10,230,10,230,0,230,10,240,10,240,20,230,20,230,10,230,20,240,20,240,30,230,30,230,20,230,30,240,30,240,40,230,40,230,30,230,40,240,40,240,50,230,50,230,40U:x230,50,240,50,240,60,230,60,230,50,230,60,240,60,240,70,230,70,230,60,230,70,240,70,240,80,0,90,230,100,220,100,220,908p220,100,230,100,230,110,220,110,220,100,220,110,230,110,230,120,220,120,220,110,220,120,230,120,230,130,220,130,220,120,220,130,230,130,230,140,220,140,220,130,220,140,230,140,230,150,220,150,220,140,999,09v230,0,240,0,,20,230,20,230,30,220,30,220,20,220,30,230,30,230,40,220,40,220,30,220,40,230,40,230,50,220,50,220,408n220,50,230,50,230,60,220,60,220,50,220,60,230,60,230,70,220,70,220,60,220,70,230,70,230,80,220,80,220,70,220,80,230,80,230,90,220,90,220,80,220,90,2310,110,210,100,210,110,220,110,220,120,210,120,210,110,210,120,220,120,220,130,210,130,210,120,210,130,220,130,220,140,210,140,210,130,210,140,220,140,220,150,210,150,210,140,999,0e7l220,0,230,0,230,10,220,10,220,0,220,10,230,10,230,20,220,20,220,10,22023X21:7:"<..HIT 'ESC' TO QUIT OR..>":7:"<.. ANY KEY TO CONTINUE..>"lA$:A$(27)Ār ** DOCUMANTATION FOR RELOADER **, BY JOHN ROGERS, JULY 1981 , FOR PUBLIC USE. LAST MODIDIED JULY 1981.dAF71, $FAC, AND $FE3 TO $XX. YOU CAN"::"SAVE THIS VERSION USING:"::"BSAVE RELOADER/XX,A$F00,L$FC.":1000:6:"I HOPE RELOADER GIVES YOU CAREFREE"::"RELOCATION OF YOU PROGAMS TO HIMEM.":::"GOOD LUCK!":::::"RELOADER";::" BY JOHN ROGERS"ONS $FA TO"::"$FF, (250 TO 255) WHEN RELOCATING THE"::"PROGRAM.":1000:6:"RELOADER ASSUMES THE OBJECT PROGRAM"::"IS ASSEMBLED TO START AT $1000. TO"::"RELOCATE A PROGRAM BEGINING AT $XX00,":k"BLOAD RELOADER,A$F00, AND SET BYTES"::"$$:310:850:  I :"END OF COMPARISONS":D$"CLOSE"D$"PR#0"::d  PRINTER SUBROUTINES "PRINTER OR VIDEO?

";:PR$ PR$"V"PR0: "ENTER PRINTER SLOT OR CALL":PR: LPRı VPR8ĺD$"PR#";PR: `PR::);:J$OS$:310:210:410: # \ :"ADDED ":5);(NS$);:J$NS$:310:260:410: b  *X(218)(219)256:216,0:910 4X230840 >"ADDED :":260:J$NS$:310:830 H(OS$)NSĺ"DELETED :":J$OS$:310 R"DELETED :":210:J$OS$;D$"OPEN"N$ ^210:260:" Y OS(OS$):NS(NS$):(OS$)(NS$)OS$NS$350: _  (OS$)(NS$)OS$NS$ĺ:"CHANGED":5);(OS$);:J$OS$:310:"TO :":5);(NS$);:J$NS$:310:350: X b(OS$)(NS$)ĺ:"DELETED ":5);(OS$;O$; A$:A$(13)(OS$)0ĭ(OS$)255OS$OS$A$:220E : K e NS$"":D$;"READ";N$ A$:A$(13)(NS$)0ĭ(NS$)255NS$NS$A$:270 : , 6II0 @IOII1:IIIILL:12);(J$,IO,LL):II(J$)320 J TD$"OPEN"O %+17 =d[nLL50:::5:1000::5:axD$(13)(4):"OLD PROGRAM TEXT FILE NAME ";O$:"NEW PROGRAM TEXT FILE NAME ";N$1100: PRINTER ON810340: OS$"":D$;"READ"A$:A$(27)Ā ** DOCUMANTATION FOR SOFTFIND **, BY JOHN ROGERS, JULY 1981 , FOR PUBLIC USE. LAST MODIDIED JULY 1981.dAN HIT , TRY AGAIN:":460F935,96::935,76::::::1000:6:"I HOPE THIS EXPLAINS WELL ENOUGH HOW"::"TO USE ";::"SOFTFIND";::"."::::"GOOD LUCK"21:7:"<..HIT 'ESC' TO QUIT OR..>":7:"<.. ANY KEY TO CONTINUE..>"ߍ[`X`Lh PP``a`PPX` $X W%WS`R$S%W $`X Vɠ)Lɠ GY!PڭYULyX $(`LyYUX` G`[V a X`V a HX`V ahX` TNOT`?`>P H > Zh`L L 'Lh !Lh `PL iPS ɖɓɈɘwɆɍRɔɄQʐ ɕ7ɉ,[ X`Q~PP$(`Lhލ[Е 0ؽ`V a`P`X` Lh  PQ<=<i 6=i<i 8=iJZ[`YZ%YL Xߍ[Z``\ ɍ3ɀXQ `XP\Y`XHZPX[hMHX P P Jh`Hh Ʌ&Ɉ ɕɘ``%SW$RU` Lh ZY, I NEED A STRING ARRAY DEFINED TO BR";A$:10H**CREATE DISK MODULEMI0LN$(CU)LN$(CU)" REM**LOAD FILE FROM DISK":790 LNNU(N):LN$(CU)(NU(N))" REM**LOAD FILE FROM DISK"70 LN$(CU)LN$(CU)"INPUT "P1$"ENTER FILE NAME :"P1$70*LN$(CU)LN$(CU)"GOTO "(IM(1))[**INSERT REMARKS AT FUTURE MODULE LOCATIONSnN1MIIOFLAGv70LNNU(N):LN$(CU)(NU(N))" REM ** INSERT "MENU$(N)" SUBROUTINE HERE ""**"NIOFLAG2123070.DI0Mĺ"SORRU$NU$(NU)","DN1NNU$(NU$,((NU$)1))9X70vbLN$(CU)LN$(CU)"INPUT"P1$"ENTER CHOICE : "P1$";CH$"~l70vLN$(CU)LN$(CU)"CH=VAL(CH$): IF CH<1 OR CH> "(MI)" GOTO"((LN$(CU1)))70LN$(CU)LN$(CU)"ON CH GOSUB"NU$)&BY DARYL HAMMOND (612) 487-1002/0E:ST PAUL MN 55117AILIAR WITH THE"'5:"INSTRUCTIONS."420:AB$H21:5:"1";AF$Y23:25:AD$m23:35:"";ZZ$~23:1:AH$;(ZZ$)11780ZZ$"1"200:23:1:AC$;:1740PERMISSION GRANTED TO REPRODUCE FOR PERSONAL USEY$Y$X$"I1(Y$)4,511I,((Y$,I,1))128@6:72,0J@144\JZZ$"1"1640nKZZ$"2"1640{T796,173^844,173hr**** PAGE 6 ****|1:"THE APPLESOFT SUBROUTINE IS NOW READY."3:"BE SURE YOU ARE FAM3 68 60 C9 8D F0 02 68 60 8A"*Y$Y$X$9I1(Y$)U511I,((Y$,I,1))128a:72,0k144Y$"358:48 A2 03 FE 7E 03 BD 7E 03 C9 0A 30 08 A9 00 9D 7E 03 CA 10 EE 90 05 A9 01 9D 7E 03 68 AA 68 60 F0 F0 01 00 00 F0 F0 F0 01 00 00 F0" 8 A9 03 85 39 20 EA 03 68 60 48 8A C9 06 10 0A 68 91 28 BD 7E 03 18 69 B0"WY$Y$X$fI1(Y$)511I,((Y$,I,1))128:72,0144Y$"330:60 68 2C 00 C0 10 FB 91 28 AD 00 C0 2C 10 C0 48 C9 98 D0 0D A9 1B 85 38 A9 FD 85 39 20 EA 0Z$"3"1451pZZ$"4"1453.xZZ$"5"200C:23:1:AC$;:M1350Su**** BUILD SUBROUTINE ****{X$" N 1025G"1460X$" N D823G"1460JY$"302:48 8A 48 A2 05 BD 78 03 9D 7E 03 CA 10 F7 68 AA 68 48 A9 21 85 3, 15:5:"2 - ROM APPLESOFT AND DOS 3.2"Q(17:5:"3 - RAM APPLESOFT ONLY"v)19:5:"4 - ROM APPLESOFT ONLY"221:5:"5";AF$<23:25:AD$;F23:35:"";ZZ$P23:1:AH$;Z(ZZ$)11410dZZ$"1"1451nZZ$"2"1453 oZ AUTO NUMBER SUBROUTINE"I5:"THE SUBROUTINE IS LOCATED IN MEMORY AT"{7:"$302 THROUGH $383 (770 THROUGH 899) AND"9:"HAS A LENGTH OF $82 (130) BYTES. FOUR"11:"VERSIONS EXIST."12:AB$13:5:"1 - RAM APPLESOFT AND DOS 3.2""SER D$  ::< "OLD MONITOR ROM INSTALLED"B INED WITH L THIS PROGRAM.R Q SEE LANGUAGE REFERENCE MANUAL FOR DETAILS.X Vp ` K.MCLAURIN SEP 80v j tD$(4) ~EN16253: ENABLE Z(EN):Z(EN) D$"BLOAD OLD MONITOR"  WRITE PROTECT PR(16256)  RETURN TO UCA PROGRAM TO PUT THE5OLD MONITOR ROM INTOOTHE LANGUAGE SYSTEM.jUSING APPLESOFT. THISPROGRAM WORKS ONLY WHENAPPLESOFT IS IN THE$LANGUAGE SYSTEM. ONE.SHOULD BE AWARE OF THE8FUNCTIONS LOST AND B THOSE REGA  )"VTAB23:PRINTTAB(22)"P1$"PRESS SPACE BAR"P1$";:GET Q$":70upLN$(CU)LN$(CU)"POKE34,0:REM NORMAL SCREEN":70{"THIS APPLESOFT VERSION OF DAVID BUSCH'S":"'TRS-80 PROGRAM WRITER' WAS ADAPTED BY""BILL DECOURSEY OF THE MINNI'APP'LES"4:VTAB 8":70B>LN$(CU)LN$(CU)"FOR X=1TO6:PRINT B$:NEXT X":70zHLN$(CU)LN$(CU)"VTAB10:HTAB INT(12-"(T1)")":70RLN$(CU)LN$(CU)"PRINT"P1$F$P1$:70\LN$(CU)LN$(CU)"NORMAL:POKE32,0:POKE33,40:POKE34,20:POKE35,23":70@fLN$(CU)LN$(CULN$(CU)LN$(CU)"FOR X1=33 TO 8 STEP -1:VTAB 7:PRINT TAB(X1)A$:VTAB14:PRINTTAB(X1)A$:NEXTX1"e 70*LN$(CU)LN$(CU)"FOR Y=8TO13:VTABY:PRINT TAB(33)A$:VTABY:PRINT TAB(8)A$:NEXT Y":70 4LN$(CU)LN$(CU)"INVERSE:POKE 32,8:POKE33,25:POKE34,7:POKE35,1LL THIS PROGRAM HAVE A TITLE?";AN$9(AN$,1)"N"2200A70LN$(CU)LN$(CU)"TEXT:HOME:A$="P1$"*"P1$":B$="P1$" "P1$:70"WHAT IS TITLE OF PROGRAM?" "NOTE: LIMIT OF 24 CHARS)?";F$T1((F$)2)]N1D$;"CLOSE"J:"TO SEE YOUR PROGRAM TYPE THE FOLLOWING:":n(93);"NEW "(93);"EXEC ";F$;" ":"THEN AFTER FILE LOADS TYPE:"::(93);"LIST " CREATE TITLE MODULE""WI$)" Z70(dLN$(CU)LN$(CU)"RETURN"Pn**SAVE FINISHED MODULES TO DISK **Xx:F$""Ą"ENTER THE NAME OF THIS PROGRAM ";F$F$F$".TEXT"D$(4)"ONE MOMENT PLEASE"D$;"OPEN";F$D$;"WRITE";F$N11CULN$(N1)TO 'GET' BY KEN SLINGSBYA "DO YOU WANT 'GET' SUBROUTINE";AN$X(AN$,1)"N"1400`70(LN$(CU)LN$(CU)" REM ** GET INPUT SUBROUTINE **"270<LN$(CU)LN$(CU)"GET A$ :IF A$="P1$P1$" GOTO "(LN)F70PLN$(CU)LN$(CU)"A=VAL(A"RETURN"&** ADD MISC. MODULES **X"DO YOU WANT A CLEAR SCREEN SUBROUTINE?";AN$o(AN$,1)"N"1290w70LN$(CU)LN$(CU)" REM ** CLEAR SCREEN SUBROUTINE **"70LN$(CU)LN$(CU)"HOME:PRINT:PRINT:RETURN" 'INKEY$' CONVERTED :70&`LN$(CU)LN$(CU)"PRINT DA$(N"NjDI2LN$(CU)LN$(CU)",COL)":1150foLN$(CU)LN$(CU)")"n~70LN$(CU)LN$(CU)"NEXT"DI2LN$(CU)LN$(CU)" COL,N"70LN$(CU)LN$(CU)"PRINT D$;"P1$"CLOSE"P1$70 LN$(CU)LN$(CU)70<LN$(CU)LN$(CU)"PRINT D$;"P1$"OPEN"P1$";F$"D70{$LN$(CU)LN$(CU)"PRINT D$;"P1$"WRITE "P1$";F$")70.LN$(CU)LN$(CU)"PRINT NF"870BLN$(CU)LN$(CU)"FOR N=1TONF"L70VDI2LN$(CU)LN$(CU)"FOR COL=1 TO NC"(CU)"RETURN"/** CREATE DISK OUTPUT MODULE770wMI0LN$(CU)LN$(CU)" REM** SAVE FILE TO DISK **":1020LNNU(N1):LN$(CU)(NU(N1))" REM** SAVE FILE TO DISK **"70LN$(CU)LN$(CU)"INPUT "P1$"ENTER FILE NAME :"P1$";F$"1 TO NC":70.zLN$(CU)LN$(CU)"INPUT DA$(N"UDI2LN$(CU)LN$(CU)",COL)":910mLN$(CU)LN$(CU)")"u70LN$(CU)LN$(CUU)"NEXT"DI2LN$(CU)LN$(CU)" COL,N"70LN$(CU)LN$(CU)"PRINT D$;"P1$"CLOSE"70 LN$(CU)LN$";F$"*70D4LN$(CU)LN$(CU)"PRINT D$;"P1$"OPEN "P1$";F$"L970>LN$(CU)LN$(CU)"PRINT D$;"P1$"READ "P1$";F$"C70HLN$(CU)LN$(CU)" INPUT NF"R70\LN$(CU)LN$(CU)"FOR N=1TONF"f70 pDI2LN$(CU)LN$(CU)"FOR COL=q.?rq.?rt]Ġ٠~@p()]̠a@E(ĠĠ)]ŠԠq.?6?rM6]!a(ĠҠ͠)Q]͠ϠԠ]ĠҠ͠]ŠŠĮ]ӠӠ٠]ŠŠĠ]ĠȠ $]î.]8]ˠΠРB]L]ŠŠ V]Į `q6}?j NEVER BEEN DEFINED> "THEN THE DEFAULT VALUE WILL BE USED.l "CALLING THE UTILITY DOES NOT CHANGE THE "VALUES OF THE VARIABLES. 23 " >>>PRESS ANY KEY TO CONTINUE<<< 9040" NOW BACK TO OUR EXAMPLE. WE WANTED" STARTING LINE: " V2% V6% 24 FROM ENDING LINEf " V3% V7% 1 TO STARTING LINE " V4% V8% 24 TO ENDING LINE  " TO USE THE UTILITY, FIRST DEFINE THESEIN YOUR PROGRAM. THEN CALL THE UTILITY.IF ANY VARIABLE HASFAULT USE *\ " COPY COPY VALUEWf " H1% H5% 1 FROM STARTING COLp " H2% H6% 40 FROM ENDING COLUMNz " H3% H7% 1 TO STARTING COLUMN " H4% H8% 40 TO ENDING COLUMN  " V1% V5% 1 FROM HALF* "OF THE BOTTOM LINE TO THE TOP.2 23\ " >>>PRESS ANY KEY TO CONTINUE<<<f 9040l* 4 " SIXTEEN INTEGER VARIABLES ARE USED> "TO TELL THE UTILITY HOW TO REARRANGE THESCREEN. THESE VARIABLES ARE:H R "SECOND THIRD DE "HOLDING THE RIGHT HALF OF THE SCREEN~ "STILL. THE 1 TO 1 MOVEMENT OF THE FIRSTCOPY WOULD KEEP THE RIGHT HALF IN TACT. "THE SECOND COPY COULD BE USED TO ROLL "THE LEFT HALF OF THE SCREEN DOWN. AND "THE THIRD COPY COULD MOVE THE LEFTe"CLUB. THE TRS-80 VERSION APPEARS ON":"PAGE 150 OF THE AUGUST 1981 ISSUE OF":"INTERFACE AGE."kdPYLl  . $ ; &?1?=A>?I i`HH11`쩻듧ƙɾ5Ö+]̵h5`4ɺл1>@@A`41`>BD`8>6>) `LL u ?l:L4 uLCL@ 'A=?<) < `JJJ>Ie=?<=`K i! Ȉ2 ,`H h*:` `: V:8 J8L Lӭpd`HVTQ PS 6" (!#%L" PJ TuVTvP` P&Q&R&S8RTSURSP`/T P 8/`HJ) )h)i( ((`ɇ@ 0`$($$!fi#bZH&bTDThDt(ntJrtttrDh2"&&rr&HDD h,h-<:B/ Y`EL\lY@5)I:< ?L<EhH 0l( Lh:h; LehHh:h;/ V; THH::;:-H,H E@A  J 0,*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,--&    -C":1000450("NAME =";ANSWER$1ANT$:6:"TO SEARCH FOR ALL STRING VARIABLES"::"EQUIVALENT TO AN$, ENTER"::" & AN=$ ":::"TRY IT:" "]";A$:(A$,1)"&"ĺ"NOT QUITE!, ENTER AN AMPERSAND (I.E. &) AND THE":400,935,96::935,76::::::1000:6:"SOFTFIND SEARCHED FOR WHATEVER SEARCH"::"STRING YOU ENTERED. IF YOU SEARCHED FOR"::"'SOFTFIND' AS WAS SUGGESTED, THE OUTPUT"::"SWEPT ACCROSS YOUR SCREEN." :"TO STOP SOFTFIND ENTER CONTROL":"NUMBERS OF EACH LINE WHICH CONTAINS":"THE STRING 'SOFTFIND' FOLLOWED BY THE":"FIRST LOCAL STRING CONTAINING THE""SEARCH STRING"::"TRY IT:":"]";A$:(A$,1)"&"ĺ"NOT QUITE!, ENTER AN AMPERSAND (I.E. &) AND THEN HIT , TRY AGAIN:50 TO"::"255 ($FA TO $FF) WHEN IT IS SEARCHING.":1000r:6:"EXAMPLE OF HOW TO USE SOFTFIND:"::"TO FIND THE LINES IN WHICH 'SOFTFIND'":"IS USED IN THIS PROGRAM, ENTER:"v|:" & SOFTFIND "::"AND SOFTFIND WILL PRINT THE LINENNOT BE USED WITHIN"::"A PROGRAM.":1000^:6:"SOFTFIND IS WRITTEN TO USE ONLY ROM"::"APPLESOFT. TO USE IT WITH TAPE"::"APPLESOFT, POKE 879,27:POKE 880,37"::"OR IN THE MONITOR ENTER: 36F:1B 25":10008h:6:"SOFTFIND USES MEMORY LOCATIONS 2'"::"WILL NOT MATCH ANY STRING.":1000J:6:"HITTING A CONTROL-C AT ANY TIME DURING"::"THE SEARCH PROCESS WILL TERMINATE THE"::"SEARCH."::"WHEN SOFTFIND IS FINISHED, IT WILL DO":*T"A WARM START OF BASIC. THUS THE"::"AMPERSAND COMMAND CAOTES, DATA,"::"OR REM LINES).":10006:6:"IN A SEARCH STRING, AN EQUAL SIGN '='"::"HAS A SPECIAL MEANING. THE EQUAL SIGN"::"IS A WILD CARD WHICH WILL MATCH ANY"::"CHARACTER OR STRING OF CHARACTERS."(@:"NOTE, A SEARCH STRING ENDING IN '= THE LINE.":1000":6:14:"*** NOTE ***"::" SOFTFIND CANNOT SEARCH FOR OR FIND"::" APPLESOFT COMMANDS OR TOKENS.":::"SUCH COMMANDS INCLUDE: PRINT,HTAB,+,<"&,:"ETC. HOWEVER THESE STRINGS CAN BE FOUND"::"IN TEXT STRINGS,(WITHIN QU1000::6:"A 'LOCAL STRING' IS THE TEXT STRING"::"BETWEEN APPLESOFT COMMAND TOKENS."::"SOFTFIND WILL PRINT OUT ONLY THE FIRST"::"LOCAL STRING IN A LINE WHICH CONTAINS":"THE SEARCH STRING. THE SEARCH STRING"::"MAY APPEAR MORE THAN ONCE IN:"WHICH CONTAINS THE SEARCH STRING.":1000 :6:"THE SEARCH STRING IS ANY STRING OF"::"CHARACTERS ENTERED FROM THE KEYBOARD"::"USING THE STANDARD CONVENTIONS OF LINE"::"LENGTH, ESCAPE SEQUENCES, CONTROL-X, " :"AND ENDING IN .""THE CURSOR WILL APPEAR WITH NO PROMPT"::"INDICATING THAT SOFTFIND IS WAITING"::"FOR YOU TO ENTER THE SEARCH STRING."::"SOFTFIND WILL SEARCH THE CURRENT BASIC", :"PROGRAM, AND PRINT THE LINE NUMBER AND"::"THE FIRST LOCAL STRING IN EACH LINE":RY. TO LOAD"::"SOFTFIND AND SET THE AMPERSAND POINTER"::"TO SOFTFIND, ENTER:"n ::10:"BRUN SOFTFIND" (4);"BRUN SOFTFIND" 1000 :6:"TO USE SOFTFIND ENTER THE AMPERSAND"::"CHARACTER '&' FOLLOWED BY ." 1000 :6:AM WHICH WILL FIND CHARACTER STRINGS WITHIN AN APPLESOFT PROGRAM."R 1000 SOFTFIND WILL ALSO FIND THE STRING AND$ WHEN IT DOES NOT REFER TO A VARIABLE.Q :6::"SOFTFIND IS A MACHINE LANGUAGE PROGRAM"::"WHICH RUNS IN PAGE 3 OF MEMO, JULY 1891. c d::4:7:"*** ";::"SOFTFIND.DOC";::" ***":::9:"BY JOHN ROGERS 1981" x:3:"FOR PUBLIC NON COMMERCIAL USE ONLY"H 12:" THIS PROGRAM GIVES DOCUMENTATION ON HOW TO RUN ";::"SOFTFIND";::", A MACHINE LANGUAGE PROGR  : THIS PROGRAM PROVIDES DOCUMENTATION ON THE USE OF 'SOFTFIND', A MACHINE LANGUAGE PROGRAM WHICH FIND STRINGS EMBEDDED IN APPLESOFT PROGRAMS.  THE IDEA FOR THE PROGRAM AND THE ORIGINAL CODE WAS DEVELOPED BY JOHN ROGERS, MADISON WISCONSIN            ˠҠĠƠӠōРŠˍРŠˍӍРΠԠŠӠƠ̠ōҠōҠōԠōҠԱٍѠ˳ԠƍР٠ӠԠ̠ϠԠŠŠ˳ϬРҠԠō٠ԠԠҍР٠ӠŠȠŠ̠Ѡ΍ٍ˳àŠϠԠōŠ˴à˴ӍӨϠĩԠӮĠӠ̭٩Π٠ȮΠӍРԠˠԠӠƠԠƠō٫ĠԠРҠҍˍ٫ÍٍӍРˠ٠̍ǠՠÍՠōՠԱՠư٠ՠƸŠՠРӠ͠Ӡ٠ϠĠϠŠōĠӠŠӠŠŠϠӠԮΧŠŠĠΠҠŠӠ FIRST. THE SAME RULE APPLIES TO: (START) WHICH IS STORED AS 'A1' ($3C)m AND TO (END) WHICH IS STORED AT 'A2' OR: HEX $3E.MINING OR VERIFYING A RANGE OF BYTES: IN MEMORY. THIS FORMAT IS VERY USEFUL: WHEN PASSING DATA TO THE CONTROL-Y: VECTOR.Il THE FIRST TWO BYTES ARE STORED IN THE: MEMORY LOCATION 'A4' (HEX $42) LOW BYTE: FIRST ALTHOUGH IT IS ENTERED AS HIGH: BYTED (END) WILLj DETERMINE THE RANGE OF MEMORY TO BE: EXAMINED. THE ADDRESSES WHERE (WORD): EXISTS WILL THEN BE PRINTED OUT ON ONE: LINE WITH SEPERATING SPACES.: NOTE THAT THE FORMAT FOR PASSING THE|k PARAMETERS IS VERY SIMILAR TO THAT FOR: EXAT APPLESOFT: OR DOS.: TO USE THIS ROUTINE IT IS NECESSARY TO i 'BRUN ADDRESS SEARCH.OBJ' FIRST THEN: ENTER THE MONITOR (CALL -151) AND ENTER: (WORD) < (START).(END) (CONTROL - Y ): WHERE (WORD) IS THE TWO BYTE ADDRESS TO: BE SEARCHED. (START) ANURN THE KEY IN A$F#:'P#A(16384)7Z#A1289040Ed#16368,0Un#A$(A128)[x#DYOU 3" HAVE ANY QUESTIONS ABOUT THIS PROGRAM.9W" STEVE SULLIVANw" 3909 DREW AVE S." MINNEAPOLIS, MN. 5541023(#:2#WAIT FOR KEY TO BE PRESSED WITHOUT DISPLAYING A FLASHING CURSOR.<#RET HALF STILL.DH1%1:H2%20:H3%1:H4%20:H5%1:H6%20:H7%1:H8%20b(V1%1:V2%23:V3%2:V4%242V5%24:V6%24:V7%1:V8%1<I124:SUB:F9040P:PRINT THE CLOSEING MESSAGE8" I WOULD LIKE TO HEAR FROM YOU IF +"MOVE THE BOTTOM LINE TO THE THE TOP.1U" V5% = 24 V7% = 1y" V6% = 24 V8% = 124" >>>PRESS ANY KEY TO CONTINUE<<<";9040 :  SCOLL THE LEFT HALF OF THE SCREEN UP WHILE HOLDING THE RIGHT 1 (j" H4% = 20 H8% = 20.tZ~" WE WANT TO USE THE SECOND COPY TO ~"ROLL THE LEFT HALF DOWN. SO:" V1% = 1 V3% = 2" V2% = 23 V4% = 24" AND WE WANT TO USE THE THIRD COPY TO"TO MOVE ONLY THE LEFT HALF OF THEN$"SCREEN. THIS MEANS WE WOULD USE THE y."HORIZONTAL VARIABLES TO MOVE COLUMNS8"ONE THRU TWENTY.BL" H1% = 1 H5% = 1 V" H2% = 20 H6% = 20`" H3% = 1 H7% = ` o )ghP0= @ܩҠȱ $ H Hȱ0  Lz ȱ ɃЃL !"# ,K,1)" "KK1:20142A((A$(I),K,1))("0")DA0A92100N2200`A0A92100hJ1A((A$(I),J,1)):AA128(A128):(A47A58)A32JJ1:2040J62200KJ6:A$(I)(A$(I),J1)" "(A$(I),(A$(I))J1): 2200:" PRESS RETURN FOR MORE, ESC TO QUIT";<DA$:(A$)27ıBNIlIyv23:"PRESS ANY KEY FOR MAIN MENU...":A$:(A$(1),1)" "TYP1: TYP=1 MEANS INTEGER BASICI1NA((A$(I),1))("0")TYP02020K1(A$(I)TBTB3COUNTAI:FB24:"PRESS ANY KEY FOR MAIN MENU...":A$:LLR:X:2:" *****REMARK INDEX***** ":I1N!(A$(I),7,3)"REM"1900$T10%A$(I)&(A$(I),T,1)" "TT1:18300(37)211900(:24I"İ1800:500W580:"+TB01JI1N:Z$A$(I):400k(16384)127Ĺ16368,0:A$q(A$(I),7,3)"FOR"TBTB38(A$(I1),7,4)"NEXT"1089=COUNT1:Q5(A$(I1))>(A$(I1),Q,1)","COUNTCOUNT1?Q @"---------------------------------------"0 6 :< l :3:" *** APPLE BASIC PRETTYPRINTER ***" 8:" I-INDEX TO ALL REM STATEMENTS" &:" P-PRINT PROGRAM" 5:" Q-QUIT" D22::A$ IA$"Q"Ā NA$"P"İ1000:500 SA$"" ( aD$(4)$eD$;"OPEN APPRINT"<xiD$;"WRITE APPRINT"Tlk33,30:30000,30040`0uD$(4)5uD$;"OPEN LISTING":D$;"DELETE LISTING":uD$;"OPEN LISTING":D$;"WRITE LISTING"Du33,30:1,30000NuD$;"CLOSE LISTING"Xu buD$;"CLOSE APPRINT  **ERROR AT LINE xr: x xL x x x x x x sxC(&`o*ojk e` Q sx BLOAD TEMP... @ `srb Q sx BSAVE TEMP...,A$g pf p sx,L$jHkH phkhj8hfligmlmm pl p sx  sx BLOAD j"' x sx  fjgk` sx hX` TNOT`ߍ[`P`H_`XPQPhX`ԠD'LpȱjLƄ;jLƄ ɻ"  VALUE EXCEEDS $FF` eL3 ILLEGAL EXPRESSION.L3L ALLL30 : AG`8`&&&X` Lj  P`X] ]LpL PP``a`PPX` $X W%WS`R$S%W $Y`XVɠ) WY!PYULX $(`LYUX` W`[V q X`V q HX`V qU` ULj ZH`GP H G Zh`L  L )Lj 1Lj `PL iPX ɖɓɈɘwɆɍRɔɄQʐ ɕ7ɉ,[ !X`QPP$(`Ljލ[Е 0ؽ`V q[`P`P`L `LZLLLQEF Ei 6Fi7Ei 8Fi9Z[`YZ%YL Xߍ[Z``\ ɍ3ɀXQ `XP\Y`XHZPXZ[hMHX P P Zh`Hh Ʌ&Ɉ ɕɘ``%SW$RP@x Xʽ(ȱieHeHst8st8hh_ ")D @ ) a,*ȱ8ȱeȱeeiiȑl $ l  22:"":A$:A$(27)ė:IDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD "Oʽ(ȱieHeHstst:"CONTROL-F WILL FIND SUCCESSIVE OCURANCES OF THE SAME CHARACTER IF SUCCESSIVE KEYSTORKES ARE ENTERED"::" DISCONNECTS INLINED":10006:"WOULD YOU LIKE TO SEE THE DOCUMENTATION"::"AGAIN? (Y/N) ";:A$:(A$,1)"Y"X1:10A COMMAND"::"CONTROL CHARACTER WILL EXIT EDIT(INPUT)"::"MODE."K10006:"OTHER DETAILS:"::"THE EDIT BUFFER IS 253 CHARACTERS LONG"::"AT THE END OF A LINE THE CURSOR WILL":"WRAP TO THE BEGINNING"::"THE PROGRAM IS $460 OR 1120 BYTES LONG":5:"IS USED FOR EDIT MODE AND":V"^";:5:"IS USED FOR EDIT(INPUT) MODE.":10006:"TO ENTER EDIT(INPUT) MODE, USE CONTROL-I":"AFTER WHICH THE '^' CURSOR WILL APPEAR."::"YOU CAN NOW INSERT CHARACTERS AT THE"A:"CURSOR. HITTING ANY OTHERXXX+7 WILL BE PUT"::"INTO THE EDIT BUFFER FOR THE USER TO"|:"EDIT AND FOR THE PROGRAM TO REENTER"::"USING THE NEXT 'INPUT' COMMAND.":1000"6:"USING INLINED YOU WILL SEE 3 CURSORS:":9::" ";::5:"IS USED FOR REGULAR INPUT MODE"::(95);AFTER ENTERING"::"ANOTHER CHARACTER, YOU WILL UNTER EDIT"::"MODE AND BE ABLE TO EDIT THE ENTIRE"::"LINE, AS ENTERED SO FAR."h1000<r6:"THE ENTRY POINT XXXX+7 ALLOWS USE OF"::"INLINED FROM WITHIN A PROGRAM. ANY LINE"::"PRINTED AFTER CALL INE, 'INLINED' WILL PRINT 'LIST '"::"AFTER WHICH YOU CAN ENTER:"::" TO LIST THE PROGRAM OR,"::" 123";J13:"OR SOME OTHER STATEMENT":13:"NUMBER WHICH YOU WISH TO":13:"LIST FOR EDITING"T1000^6:"IF CONTROL-E IS ENTERED TER CONTROL-E AS THE FIRST":" CHARACTER."::" 2) ENTER CONTROL-E AFTER THE FIRST":" CHARACTER.",:"AND 3) CALL XXXX+7, WHERE XXXX IS THE":" STARTING ADDRESS OF INLINED.":1000y@6:"IF CONTROL-E IS THE FIRST CHARACTER OF"::"THE LEAD 20 CHARACTERS":"-> AND <- MOVES ALONG THE LINE":" I INSERTS CHARACTERS AT THE CURSOR":" F FINDS THE NEXT CHARACTER INPUT":" V NEXT CHARACTER IS INPUT NOT COMMAND"1000k":6:"EDIT MODE CAN BE ENTERED IN THREE"::"WAYS:"::" 1) EN ALL OF WHICH ARE SINGLE"::"CONTROL CHARACTERS.":1000 :6:"THE CONTROL CHARACTERS INCLUDE:"::" X DELETES THE LINE":" T TRUNCATES THE LINE AND RETURNS":" D DELETES ONE CHARACTER":" M OR , RETURNS INPUT LINE"" S SKIPS AHINED INPUTS LINES IN TWO MODES"::" REGULAR MODE,"::" AND EDIT MODE.":1000 :6:"IN REGULAR MODE, INPUT IS THE SAME AS"::"USUAL, WITH THE USUAL ESCAPE EDITING"::"COMMANDS.":10008 :6:"IN EDITING MODE THERE ARE NUMEROUS"::"COMMANDS,D LOADED BY"::"RELOADER (SEE RELOADER.DOC FOR DETAILS.)"::"TO RUN INLINED, ENTER:"p :10:"BRUN INLINED" X0ĺ(4);"BRUN INLINED,A$5000":XX(255)256(254) :"TO RECONNECT INLINED AFTER ,":10:"CALL ";XX 1000R :6:"INLTHIS PROGRAM GIVES DOCUMENTATION ON HOW TO RUN ";::"INLINED";::", A MACHINE LANGUAGE PROGRAM FOR EDITING INPUT LINES. INLINED=IN(PUT) LIN(E) ED(ITOR)." 1000V :6::"INLINED IS A MACHINE LANGUAGE PROGRAM"::"WHICH IS RELOCATEABLE ANd::4:7:"*** ";::"INLINED.DOC";::" ***":::9:"BY JOHN ROGERS 1981" x"THE PROGRAM 'INLINED' IS COPYRIGHT 1981":"ALL COMMERCIAL RIGHTS RESERVED BY THE":"AUTHOR, JOHN ROGERS. INLINED IS FOR":"NON-COMMERCIAL PUBIC USE ONLY." 16:"  X0 : THIS PROGRAM PROVIDES DOCUMENTATION ON THE USE OF 'INLINED', A MACHINE LANGUAGE PROGRAM FOR EDITING INPUT LINES. THE IDEA FOR THE PROGRAM AND THE ORIGINAL CODE WAS DEVELOPED BY JOHN ROGERS, MADISON WISCONSIN, JULY 1981.R            WINDOW AGAIN AND CHECK5 FOR ANOTHER ENTRY;H34,20:^:"ANOTHER? ";S$t(S$,1)"Y"1080  PROGRAM ENDING ROUTINE : 11*" NOW THAT YOU HAVE HAD SOME"4"PRACTICE, YOU CAN TRY OUT YOUR OWN">"ARRAAGAIN.  A((X1)6)8R0&B(Y1)2860Q: FLASH VALUE IN ARRAYiD AND THEN LEAVE ITN WITH THE NEW VALUE.XbB:Al:I$v DELAY LOOPW13500:Z2ĞB:A:I$: SET TEXTT SHOW ARRAY VALUES2^ AND DATA CONTENTSHh IN TEXT WINDOW.NrT|`"A$(";hX;r",";zY;",";Z;") = ";I$Z1R0Z2R2 CALCULATE HORIZONTAL AND VERTICAL POSITIONS ";Z $ AND HERE IS A THIRD? WAY TO CATCH ERRORS!E_Z0Z3Z(Z)ī1570"Z MUST BE A WHOLE NUMBER, EITHER 1 OR 2"1490","ENTER THE CHARACTER YOU WOULD LIKE TO"6"PUT IN THAT LOCATION ";I$@A$(X,Y,Z)I$JHAN 4":1200Z&d ENTER Y VALUE,nHx"ENTER THE Y VALUE ";YNh HERE IS ANOTHER WAY~ TO CATCH ERRORSY1Y4Y(Y)ĺ"Y MUST BE A WHOLE NUMBER FROM 1 TO 4":1400  ENTER Z VALUE"ENTER THE Z VALUE NUMBER!"12002 CHECK IF NUMBER ISI  WITHIN RANGE AND^ PRINT AN ERRORr MESSAGE IF IT( IS ILLEGAL.2<X1X4ī1400FX1ĺ"YOU MUST ENTER A NUMBER GREATER THAN 0":1200 PX4ĺ"YOU MUST ENTER A NUMBER LESS TOORDINATES"V+` SET UP A ROUTINE TOGj TRAP AN ILLEGAL ENTRYbt AND PRINT A MESSAGE.i~ t2250z ENTER X VALUE"ENTER THE X VALUE ";X CHECK FOR WHOLE NO.X(X)ī1340 "X MUST BE A WHOLEIN ARRAY.BA(Z2Ğ7A$(X,Y,Z)=DZKYRXXn SET TEXT WINDOW TO THE BOTTOM OF THE SCREEN AND$ CLEAR IT..834,18:B INTERACTIVE ROUTINE L"ENTER LOCATION TO CHANGE BY CEEN POSITION OF$ POINT IN ARRAY* >*A((X1)6)8RD4]> CALCULATE VERTICALvH SCREEN POSITION OFR POINT IN ARRAY\fB(Y1)28pz SET SCREEN POSITIONS, CHECK FOR DIMENSION ON Z, AND PRINT  VALUE 4,4,2)", "INVERSE COLORS ARE THE SECOND"@ "VALUE FOR Z "a  PRINT ARRAY ON SCREEN l X14w Y14 Z12   DECIDE WHERE Z MUST  GO ON SCREEN  Z1R0 Z2R2   CALCULATE HORIZONTAL  SCR   CHECK FOR END OF7  ALPHABET. IF FOUND,R  START USING NUMBERS.X g &R91R49z 0A$(X,Y,Z)(R) :X DY NZ X PRINT SCREEN HEADER b: l"THIS IS AN ARRAY NAMED A$(X,Y,Z)" v"ITS DIMENSIONS ARE: DIM A$( T IN MEMORY USING+ ^ LETTERS OF THEF h ALPHABET AND NUMBERSL r[ |A$(4,4,2)a {  USE DECIMAL NUMBERS  FOR ASCII CODES.  (SEE PAGES 138,139  IN APPLESOFT MANUAL)  R64 Z12 Y14 X14 RR1"BY DOING."< :" THE IMPORTANT THING TO REMEMBER IS"d "THAT IN AN ARRAY, IT TAKES ALL ";s :"THREE"y  "NUMBERS TO FIND "; :"ONE"; ":" MEMORY LOCATION." ,:: 6"HIT RETURN TO CONTINUE ";B$ @ J SET UP ARRAY USING A CONTROL J* BEFORE AND AFTERC THE REMARK ITSELF.I u " ARRAYS ARE SOMETIMES DIFFICULT TO" "VISUALIZE. THIS PROGRAM WILL GIVE YOU" "PRACTICE ON A THREE DIMENSIONAL ARRAY." "AFTER ALL, THE BEST WAY TO LEARN IS"  PRACTICE ARRAY + COPYWRITE BY= JOHN FALUDIS( 8 APRIL, 1980 k2 7255 STEWART ROAD< DANE, WISCONSIN, 53529F (608)-849-7248 PZ9d INTRODUCTION nx REMARKS CAN "FLOAT" FREE IN A REM BY      ,150,60,140,999,070,0,80,0,80,10,70,10,70,0,70,10,80,10,80,20,70,20,70,10,70,20,80,20,80,30,70,30,70,20,70,30,80,30,80,40,70,40,70,30,70,40,80,40,80,50,70,50,70,40F70,50,80,50,80,60,70,60,70,50,70,60,80,60,80,70,70,70,70,60,70,70,80,70,80,80,70,0,70,70,70,80,60,80,60,70,60,80,70,80,70,90,60,90,60,80,60,90,70,90,70,100,60,100,60,9060,100,70,100,70,110,60,110,60,100,60,110,70,110,70,120,60,120,60,110,60,120,70,120,70,130,60,130,60,120,60,130,70,130,70,140,60,140,60,130,60,140,70,140,70,150,60,60,140,60,150,50,150,50,140,999,060,0,70,0,70,10,60,10,60,0,60,10,70,10,70,20,60,20,60,10,60,20,70,20,70,30,60,30,60,20,60,30,70,30,70,40,60,40,60,30,60,40,70,40,70,50,60,50,60,40W60,50,70,50,70,60,60,60,60,50,60,60,70,60,70,70,60,70,60,60,60,7,50,70,50,60,50,70,60,70,60,80,50,80,50,70,50,80,60,80,60,90,50,90,50,80,50,90,60,90,60,100,50,100,50,90"50,100,60,100,60,110,50,110,50,100,50,110,60,110,60,120,50,120,50,110,50,120,60,120,60,130,50,130,50,120,50,130,60,130,60,140,50,140,50,130,50,140140,40,130,40,140,50,140,50,150,40,150,40,140,999,050,0,60,0,60,10,50,10,50,0,50,10,60,10,60,20,50,20,50,10,50,20,60,20,60,30,50,30,50,20,50,30,60,30,60,40,50,40,50,30,50,40,60,40,60,50,50,50,50,40h50,50,60,50,60,60,50,60,50,50,50,60,60,60,60,7040,60,50,60,50,70,40,70,40,60,40,70,50,70,50,80,40,80,40,70,40,80,50,80,50,90,40,90,40,80,40,90,50,90,50,100,40,100,40,90340,100,50,100,50,110,40,110,40,100,40,110,50,110,50,120,40,120,40,110,40,120,50,120,50,130,40,130,40,120,40,130,50,130,50,140,40,40,130,40,140,30,140,30,130,30,140,40,140,40,150,30,150,30,140,999,040,0,50,0,50,10,40,10,40,0,40,10,50,10,50,20,40,20,40,10,40,20,50,20,50,30,40,30,40,20,40,30,50,30,50,40,40,40,40,30,40,40,50,40,50,50,40,50,40,40y40,50,50,50,50,60,40,60,40,50,0,60,30,60,30,50,30,60,40,60,40,70,30,70,30,60,30,70,40,70,40,80,30,80,30,70,30,80,40,80,40,90,30,90,30,80,30,90,40,90,40,100,30,100,30,90D30,100,40,100,40,110,30,110,30,100,30,110,40,110,40,120,30,120,30,110,30,120,40,120,40,130,30,130,30,120,30,130,30,20,120,20,130,30,130,30,140,20,140,20,130,20,140,30,140,30,150,20,150,20,140,999,030,0,40,0,40,10,30,10,30,0,30,10,40,10,40,20,30,20,30,10,30,20,40,20,40,30,30,30,30,20,30,30,40,30,40,40,30,40,30,30,30,40,40,40,40,50,30,50,30,4030,50,40,50,4 20,50,30,50,30,60,20,60,20,50,20,60,30,60,30,70,20,70,20,60,20,70,30,70,30,80,20,80,20,70,20,80,30,80,30,90,20,90,20,80,20,90,30,90,30,100,20,100,20,90U20,100,30,100,30,110,20,110,20,100,20,110,30,110,30,120,20,120,20,110,20,120,30,120,30,130,20,10,120,20,130,10,130,10,120,10,130,20,130,20,140,10,140,10,130,10,140,20,140,20,150,10,150,10,140,999,0 20,0,30,0,30,10,20,10,20,0,20,10,30,10,30,20,20,20,20,10,20,20,30,20,30,30,20,30,20,20,20,30,30,30,30,40,20,40,20,30,20,40,30,40,30,50,20,50,20,40,50,10,50,10,40 10,50,20,50,20,60,10,60,10,50,10,60,20,60,20,70,10,70,10,60,10,70,20,70,20,80,10,80,10,70,10,80,20,80,20,90,10,90,10,80,10,90,20,90,20,100,10,100,10,90f 10,100,20,100,20,110,10,110,10,100,10,110,20,110,20,120,10,120,10,110,10,120,20,120,0,120,0,110,0,120,10,120,10,130,0,130,0,120,0,130,10,130,10,140,0,140,0,130,0,140,10,140,10,150,0,150,0,140,999,0 10,0,20,0,20,10,10,10,10,0,10,10,20,10,20,20,10,20,10,10,10,20,20,20,20,30,10,30,10,20,10,30,20,30,20,40,10,40,10,30,10,40,20,40,20,30,0,20,0,30,10,30,10,40,0,40,0,30,0,40,10,40,10,50,0,50,0,40 0,50,10,50,10,60,0,60,0,50,0,60,10,60,10,70,0,70,0,60,0,70,10,70,10,80,0,80,0,70,0,80,10,80,10,90,0,90,0,80,0,90,10,90,10,100,0,100,0,90w 0,100,10,100,10,110,0,110,0,100,0,110,10,110,18  5000KXX((14)27)10:YY((75)16)10:DX(60)20:DY(3)20Td:7bnX,Y:X,YpxR02000yX,YX999110XXXYYYXXDX:YYDYX,Y> 0,0,10,0,10,10,0,10,0,0,0,10,10,10,10,20,0,20,0,10,0,20,10,20,10,30,0                    (J$):410 CHARACTER IS HEX LETTER. CONVERT TO EQUIVALENT DECIMAL BY SUBTRACTING 55 FROM THE ASCII VALUE OF THE LETTER. ASCII VALUE OF 'A'=65. 65-55=10 - DECIMAL EQUIV. OF 'A'J(J$)55( ADD VALUE TIMES 16 ^ OF THE PLACE F HEX STRING IS 4. TRUNCATE FROM THE RIGHT IF GREATER;{S|(A$)4A$(A$,4)Z  LOOP THROUGH HEX STRING TESTING EACH CHARACTER. IF CHARACTER < 'A' THEN MUST BE A NUMBER - USE DIRECTLY I1(A$):K(A$)I1:J$(A$,K,1):J$"A"J= 1, SO ROUTINE WILL RETURN TO ABOVE PAUSE LOOP WHEN DONEGhX$"S"ıMop SOME KEY WAS PRESSED AND WAS NOT = E,P OR S. SET FL=0, RETURN TO MAIN PRINT LOOPqrFL0:wx CONVERT HEX STRING TO DECIMAL INTEGERy5z MAX LENGTH OSTX(KBD):X128340"[x\ RESET STROBE, REDUCE X BY 128. TEST FOR = 'E'. IF EQUAL, GET NEXT START ADDRESS~]^STRO,0:X$(X128):X$"E"ġ:120e9f IF KEY WAS = 'S' THEN RETURN TO MAIN PRINT LOOP TO PRINT NEXT INSTRUCTION. FL PAUSE UNTIL ANOTHER KEY IS PRESSED(?=@X$"P"FL1340CGH IF KEY WAS = "S" THEN SINGLE STEP OPTION INVOKED. SET FL = 1 SO MAIN ROUTINE WILL RETURN HERE AFTER PRINTING ONE INSTRUCTIONIJX$"S"FL1:340QR PAUSE ROUTINE SSED ROUTINE3z4 RESET STROBE, REDUCE VALUE FROM KEYBOARD BY 128, TEST FOR = 'E'. IF EQUAL, GET NEXT START ADDRESS56STRO,0:X$(X128):X$"E"ġ:120= "> IF KEY WAS = 'P' THEN PAUSE. IF FL = 1, THEN SINGLE STEP OPTION IS ACTIVE, ASCII CHARACTER AT LOCATION 'A'.& IF 127 < C < 160 OR C < 32 THEN CHARACTER IS CONTROL CHARACTER. SUBTRACT OR ADD VALUE TO FORCE CHARACTER TO PRINTC(A):C127C160ĺ(C64);:"C32:(C64);:,(C);:1 2 KEY PREFL1İ340k TEST TO SEE IF KEY WAS PRESSED. IF SO, GOSUB TEST FOR EXIT, PAUSE OR SINGLE STEPqX(KBD):X127İ310   WHEN LOOP IS DONE, DEACTIVATE PRINTER, GET NEXT START ADDRESS :0:PF0:120  PRINT 0ĺMS);:230MS);:240#W 280 PRINTS ASCII VALUE OF MEMORY LOCATION 'A']l280:AA1{280:AA1280 FL IS USED BY SINGLE STEP ROUTINE TO CAUSE PROGRAM FLOW TO RETURN TO THE ROUTINE AFTER 1 LINE IS PRINTED(A256):LAH256:AL,L:AH,H:MN:PO(0):MS35PO9 PEEK(H3) DETERMINES IF INSTRUCTION USED 3 HEX DIGITS IE. LDA $3050 = A9 50 30 (H3)160ĺMS);:220 PEEK(H2) DETERMINES IF INSTRUCTION USED 2 HEX DIGITS (H2)16INCE PROGRAM WILL READ SCREEN 9 PF1ĊSL:(28);(24)? PRINT LOOP BEGINS HERE. POKES AND CALL EXECUTE MONITER DISASSEMBLE ROUTINE FOR LINE. PO IS CURSOR POSITION AFTER LINE IS PRINTED, MS IS FOR FORMATTING ASCII OUTPUT 3 ASAEA:HSA$"X"ĉ:8 SA$"P"PF1:24:20:"PRINTER ON":120R "END ADDRESS >";EA$X 380 CONVERTS HEX STRING TO DECIMAL INTEGER. SEND A$ RETURNS A A0:A$SA$:380:SAA:A0:A$EA$:380:EAA 22: POSITION CURSOR ON SCREEN. REQUIRED SP Z ************************************************************************ dAL58:AH59:MN63696:QM1892:H21883:H31886:KBD16384:STRO16368:35,23 nSL2 u v INPUT START AND END ADDRESS IN HEX w x1:24:"START ADDRESS>";SA$:C  OPTIONAL PRINTER OUTPUT AVAILABLE - SLOT NUMBER AT LINE 110  PRINTER INITILIZATION AT LINE 170 - CURRENTLY SET FOR SLOT 2, MPI 88T PRINTER   REMOVE REMARKS BEFORE RUNNING PROGRAM TO INCREASE AVAILABLE MEMORY AND EXECUTION SPEED. JP ************************************************************************W  HEX, ASCII, AND DISASSEMBLED MEMORY DISPLAY PROGRAM BY ART BLUMBERG, MARYLAND APPLE CORPS REQUIRES APPLESOFT IN ROM OR LANGUAGE CARD      z#<1, Xհ!ӠȮŠ" Ԡ ԠŠҠ ҠҠ ǠՠàԠ  ϭ̠РӮ ŠΠ٠ð ŠΠ٠ӠȮӠ  ӠȮʠ ӠȮʰ  Š Үà ҠԠҲ͠ԠǠ ԠϭҠϠ͠ Įà Ġ Ġ Įà ĠҠ ԠҠҠӠԠҠҠҠ ŮԠ ٮϮԮԠ!Ӳ"٠Р٠РӠϠԠΠŠĠ:Ӡ ŠԠŠԮŠŠӠŠӮŠŠ ԮԠ ŮϠXհհ]Ϡ٠հՠ ̠ҠŠԠŠԮŠROGRAM.":1000h:6:"RELOADER IS DESIGNED TO MOVE THE"::"OBJECT PROGRAM UP IN MEMORY. HOWEVER,"::"RELOADER WILL MOVE A PROGRAM DOWN IN"::"MEMORY IF IT IS MOVED DOWN BY MORE":r"THAN $ZZZZ BYTES.":1000:J|6:"RELOADER USES MEMORY LOCATIM,A$XXXX":" BLOAD RELOADER,A$YYYY":" POKE THE LENGTH BYTES INTO $YYYY+$FE":" AND $YYYY+$FF"^" BSAVE OBJECT/REL,A$YYYY,L$ZZZZ"::"WHERE $YYYY=$XXXX-$100":" $ZZZZ=$100+LEN"::" AND OBJECT/REL IS THE RELOCATABLE":" OBJECT PCT PROGRAM. THE OBJECT PROGRAM CAN"::"USE THIS ADDRESS TO SET POINTERS SUCH"J:"THE AMPERSAND POINTER, USR POINTER,"::"THE INPUT AND OUTPUT SWITCHES OR ZERO"::"PAGE POINTERS TO DATA.":1000eT:6:"TO USE RELOADER:"::" BLOAD OBJECT PROGRA"LOCATION $FE AND $FF."::"IF YOU BRUN THE OBJECT PROGRAM FROM":6"WITHIN ANOTHER PROGRAM, THE STARTING"::"ADDRESS = PEEK(255)*256+PEEK(254).":1000N@:6:"THE STARTING ADDRESS OF THE PROGRAM"::"IS ALSO STORED AT 'START' WITHIN THE"::"OBJE ANY THREE BYTE"::"INSTRUCTIONS WHICH REFER TO THE DATA"::"OR PROGRAM AREA."::"IT THEN JUMPS TO THE FIRST INSTRUCTION":'"OF THE OBJECT PROGRAM.":1000C,:6:"THE BEGINNING LOCATION OF PROGRAM"::"IS STORED IN THE HIMEM POINTER, AND IN "::0:6:"RELOADER DOES THE FOLLOWING:":::"MOVES THE OBJECT PROGRAM TO HIMEM, SO"::"THAT THE STARTING ADDRESS IS OLD-HIMEM"::"MINUS LEN."::"THE HIMEM POINTER IS RESET TO PROTECT"::"THE OBJECT PROGRAM.":1000~":6:"THEN IT REDEFINES IS DEFINED BY "::"RELOADER WHEN THE PROGRAM IS BRUN."::"THE STARTING ADDRESS CAN BE ANYTHING"::"BEFORE RELOADER IS BRUN.":"(THE ADDRESS HAS THE LOW BYTE FIRST).":1000:6:"DATA, IS THE DATA AREA RESERVED FOR USE"::"THE PROGRAM.":100F BYTES.":1000 :6:"THE BINARY PROGRAM MUST:"::" CONTAIN ONLY INSTRUCTION, NO DATA;"::" BE ASSEMBLED TO RUN STARTING AT $1000;"::"AND END IN A 'BRK' INSTRUCTION.":1000:6:"START, THE STARTING ADDRESS, IS A TWO"::"BYTE ADDRESS WHICHROGRAM"::" START";\ 15:"STARTING ADDRESS"::" DATA"::" WHERE........":1000 :6:"LEN, THE LENGTH OF THE PROGRAM IS A TWO"::"BYTE BINARY NUMBER (LOW BYTE FIRST)"::"WHICH DEFINES THE LENGTH OF THE"::"PROGRAM AND DATA, IN NUMBER OETS THE HIMEM POINTER TO PROTECT THE"::"OBJECT PROGRAM AND JUMPS TO THE FIRST"::"INSTRUCTION OF THE OBJECT PROGRAM." 1000::6:"THE OBJECT PROGRAM MUST HAVE THE FORM:":10:" LEN";:15:"LENGTH OF PROGRAM + DATA"::" PROGRAM";:15:"BINARY PLOACATING OTHER MACHINE LANGUAGE PROGAMS TO HIMEM.> 1000 :6::"RELOADER IS A MACHINE LANGUAGE PROGRAM"::"WHICH IS RELOCATABLE (WILL RUN IN ANY"::"RAM LOCATION). RELOADER MOVES A PROGRAM":x "(CALLED THE OBJECT PROGRAM) TO HIMEM,"::"S WISCONSIN, JULY 1891. m d::4:7:"*** ";::"RELOADER.DOC";::" ***":::9:"BY JOHN ROGERS 1981" x:11:"FOR PUBLIC USE"4 12:" THIS PROGRAM GIVES DOCUMENTATION ON HOW TO RUN ";::"RELOADER";::", A MACHINE LANGUAGE PROGRAM FOR REQ  : THIS PROGRAM PROVIDES DOCUMENTATION ON THE USE OF 'RELOADER', A MACHINE LANGUAGE PROGRAM WHICH RELOCATES ANOTHER MACHINE LANGUAGE PROGRAM TO HIMEM.  THE IDEA FOR THE PROGRAM AND THE ORIGINAL CODE WAS DEVELOPED BY JOHN ROGERS, MADISON     (4);"BRUNMENU"U03" B$VB$"E"B$"C"63820D`B$"E"ė:XST20:YST20:63900:TjB$"C"Į:bLIST X-YADRS(121)256(122)144I401ADRSI,X10(X10)48X(X10)ADRSI6,Y10(Y10)48Y(Y10)I0118101221YNTAX",12,"NO BUFFERS AVAILABLE",13,"FILE TYPE MISMATCH"p 14,"NO BUFFERS AVAILABLE",15,"NOT DIRECT COMMAND"~$ER(222).I132:A,A$:AERĂI8I32ĺA$"UNIDENTIFIED"B:A$;::" ERROR IN LINE ";::ST:L" (E)DIT OR (C)ONTINUE ?";UNDEFINED FUNCTION",254,"BAD RESPONSE TO AN INPUT STATEMENT",255,"CTRL-C INTERRUPT"8 1,"LANGUAGE NOT AVAILABLE",2,"RANGE",3,"RANGE",4,"WRITE PROTECTED",5,"END OF DATA",6,"FILE NOT FOUND",7,"VOLUME MISMATCH",8,"I/O",9,DISK FULL",10,"FILE LOCKED",11,"SHOUT GOSUB",42,"OUT OF DATA",53,"ILLEGAL QUANTITY",69,OVERFLOW",77,"OUT OF MEMORY",90,"UNDEFINED STATEMENT",107,"BAD SUBSCRIPT",120,"REDIMENSIONED ARRAY",133,"DIVISION BY ZERO"S  163,"TYPE MISMATCH",176,"STRING TOO LONG",191,"FORMULA TOO COMPLEX",224," YOUR PROGRAM"; F"INTO MEMORY AND '& MERGE' THE TWO INTO ONE. ENSURE THAT AN 'ONERR GOTO 63720' IS PLACED NEAR THE BEGINNING." P23 Z d ERROR HANDLER ST(218)(219)256 0,"NEXT WITHOUT FOR",16,"SYNTAX",22,"RETURN WITE THE CHOICE OF EDITING THE LINE OR CONTINUINGEXECUTION." <:"TO INSTALL THIS ROUTINE, FIRST INSTALL THE 'RENUMBER' PROGRAM FROM THE DOS 3.3 SYSTEM MASTER. THEN LOAD THIS PROGRAM INTO MEMORY, DELETE LINES 1 TO 100, AND '& HOLD' THE ROUTINE. LOADT PROGRAMMING BY HANDLING ERRORS IN APPLE-SOFT PROGRAMS. SIMPLY ADD THESE LINES TO THE END OF A PROGRAM WHICH HAS THIS LINE NEAR ITS BEGINNING:" (:"__ ONERR GOTO 63720":< 2"ERRORS ENCOUNTERED DURING EXECUTION WILLBE IDENTIFIED, AND YOU WILL HAV *************************?* *^* ERROR HANDLER ROUTINE *}* **************************  63720::14::"ERROR HANDLER": 3:"THIS IS A SUBROUTINE DESIGNED TO ASSIS jx Xʽ(ȱieHeHst8st8hh_ ")D @ ) a,*ȱ8ȱeȱeeiiȑl $ l  0: F24:(4);"BRUN MENU"# d; ,(20(A$)2):A$:Q 1:X140:A$;: *23:X140:A$;::2:X222:1:A$;:40:A$;:: (21)::$:A$"+":800:(6:A$"PUBLIC DOMAIN SOFTWARE":300:8:A$"DISK VOLUME U03 - UTILITIES":300:14:A$"DISTRIBUTED BY:":300216:A$"THE BIG RED APPLE CLUB":300:A$"1301 NORTH 19TH":300:A$"NORFOLK, NE 68701":300 <X1200 1 "STEP 4-- RESET":"STEP 5-- RUN PRETTYPRINT"p :"YOUR PROGRAM MUST HAVE A 'THEN' WITH EVERY 'IF'.": "THE 'APPRINT' PROGRAM PUTS YOUR PROGRAM INTO A FILE CALLED 'LISTING'.":" "TO OUTPUT FORMATTED LISTING TO PRINTER, INSERT PRINTER SLO4J1/>A((A$(I),J,1)):A32JJ1:2110XHA$(I)" "(A$(I),(A$(I))J1)hI:X(0):{ INSTRUCTIONS 3:8:"PROGRAM BY MICHAEL KEITH":: "STEP 1-- LOAD PROGRAM INTO COMPUTER":"STEP 2-- EXEC APPRINT":"STEP 3-- RUN 30000"ԠͩƠ̠ΠƠ̠ΠƠ̠͠ΠƠ̠͠ΠԠˍԠλԠ΍ԠҤԠĮĠĤҤӠϠŮӠΠӠ٭ĠˢԠƠҧӠŮҠɠϠԠԠԠǺҠΠϠҠˠϠԠ͠ΠˍԠ̠΍ԠŠԤŠҠˠ͢ ΠԤŠԠԤ̠ ԠӠˠ͠ӠĠϠĠ̠ŠŠӠΠıӠȬԠӠ٠ԢŠӠ̠ŠŠǠӠҠԠӠϠŠŠҲ٠ҠŠȠˠҠŠԮ̠İǍ׍ 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 QLiLLs4      Y KEY TO CONTINUE..>")A$:A$(27)Ā/ ** DOCUMANTATION FOR LISAFIND **, BY JOHN ROGERS, JULY 1981 , FOR PUBLIC USE. LAST MODIDIED JULY 1981.dA IS SEARCHING.":1000}:6:"I HOPE THIS EXPLAINS WELL ENOUGH HOW"::"TO USE ";::"LISAFIND";::"."::::"GOOD LUCK"::"LISAFIND AND LISAFIND.DOC"::"BY JOHN ROGERS, JULY 1981":2321:7:"<..HIT 'ESC' TO QUIT OR..>":7:"<.. ANTHE PROGRAM WHEN"::"IT IS ASSEMBLED.":1000J:6:"HITTING A CONTROL-C AT ANY TIME DURING"::"THE SEARCH PROCESS WILL TERMINATE THE"::"SEARCH AND RETURN TO LISA.":1000h:6:"LISAFIND USES MEMORY LOCATIONS 247 TO"::"255 ($F7 TO $FF) WHEN ITLISAFIND CANNOT SEARCH FOR MNEMONICS"::"SUCH AS LDA,JSR,ETC. LISAFIND WILL"::"ONLY SEARCH IN THE LABEL,OPERAND AND"::"COMMENT FIELD.":1000-6:6:"LISAFIND WILL WORK WITH ANY LISA"::"PROGRAM AS LONG AS THE SYMBOL TABLE"::"DOES NOT WRITE OVER E SEARCH STRING.":1000 :6:"THE SEARCH STRING IS ANY STRING OF"::"CHARACTERS ENTERED FROM THE KEYBOARD"::"USING THE STANDARD CONVENTIONS OF LINE"::"LENGTH, ESCAPE SEQUENCES, CONTROL-X, " :"AND ENDING IN ." 1000::6,:"1000 :6:"THE CURSOR WILL APPEAR WITH NO PROMPT"::"INDICATING THAT LISAFIND IS WAITING"::"FOR YOU TO ENTER THE SEARCH STRING."::"LISAFIND WILL SEARCH THE CURRENT LISA" :"PROGRAM, AND PRINT THE LINE NUMBER AND"::"LINE WHICH CONTAINS THHICH RUNS AT $6E00 IN MEMORY. TO LOAD"::"LISAFIND AND SET THE CONTROL-P POINTER"::"TO LISAFIND, ENTER:" ::10:" BRUN LISAFIND"::"FROM WITHIN LISA." 1000 :6:"TO USE LISAFIND ENTER CONTROL-P"::"FOLLOWED BY ." ::"LISAFIND";::", A MACHINE LANGUAGE PROGRAM WHICH WILL FIND CHARACTER STRINGS WITHIN LISA DFT :"LISAFIND WILL ONLY RUN WITH A LISA":"ASSEMBLER FROM PROGRAMMA." 1000k :6::"LISAFIND IS A MACHINE LANGUAGE PROGRAM"::"WCONSIN, JULY 1891, ALTHOUGH I REALIZE LISA 3.3 HAS SOME KIND OF FIND FUNCTION. d::4:7:"*** ";::"LISAFIND.DOC";::" ***":::9:"BY JOHN ROGERS 1981" x:11:"FOR PUBLIC USE"r 12:" THIS PROGRAM GIVES DOCUMENTATION ON HOW TO RUN ";  : THIS PROGRAM PROVIDES DOCUMENTATION ON THE USE OF 'LISAFIND', A MACHINE LANGUAGE PROGRAM WHICH FIND STRINGS EMBEDDED IN LISA ASSEMBLY PROGRAMS.N  THE IDEA FOR THE PROGRAM AND THE ORIGINAL CODE WAS DEVELOPED BY JOHN ROGERS, MADISON WIS  767(P1185))P21767(P2185):: (CONVERTS HEX ON SCREEN TO DECIMAL H8:H8143:150:X0ĺ(X100)(X10));X;"";6 d:m n:24:"OR TO CONTINUE OR TO QUIT. "; x22:1:"ENTER NEW LOCATION (DECIMAL):";ST$:ST$""60 ST$"Q"Ģ22:958: ST(ST$):50H P1(SC(V)H):P2(SC(V)H1):X16(P11616,1744,1872,2000: (HTAB 1 SCREEN LOCATIONS)7 (120^ 258,ST(ST256)256:59,(ST256) <::"-------HEX-------";:21:"-------DECIMAL-------";: F1:415:(DISASSEMBLER PV221:H0:150:XHI256X:H2:150:V:21:XHIX;"-";:868. Z2J# SOFTALK APRIL 1982 PAGE 378 BY BERT KERSEYY ENTERED AND CONTRIBUTED BYq CHARLES D. HOLMES{::. SC(24):I124:SC(I):: 1024,1152,1280,1408,1536,1664,1792,1920,1064,1192,1320,1448,1576,1704,1832,1960,1104,1232,1360,1488,1   ARROW KEY TO MOVE POINTER. RETURN KEY TO ENTER CHOICE."k  >> THEN SET BEGIN AND LAST <<~ BEGIN5:LAST9  >> THEN CALL MENU ROUTINE << 100 22:1:"CHOICE IS ";L BE COL. 1 & 2 BLANK >>. :10:"SAMPLE MENU"G 5:" FIRST CHOICE"^ " SECOND CHOICE"t $" THIRD CHOICE" ." FOURTH CHOICE" 8" FIFTH CHOICE"F B17:"PRESS SPACE BAR TO SCROLL POINTER. ANOTHER KEY TO STOP SCROLL. E << 600' LL1:LLASTLBEGIN0 2006 U  >> MOVE UP ONE LINE <<^ 600z LL1:(LBEGIN)LLAST 200  X >> CLEAR '->' << b1:" "; l  >> SAMPLE MENU <<  << FIRST PRINT MENU ITEMS >>  << LEAV >> PRINT '->' ON LINE 'L' <<+ 1:L6 "->";< ] , >> GET CHAR, MOVE '->' <<z 1C32ĭ(16384)127320 616384,128:C(16384)128:16368,0 @C32C21İ400 EC32āC30031: JC8İ500 T  >> MOVE DOWN ONE LIN  1000&d *******************?i >> MENU MAGIC <<Ej^n BY DR. R. F. ZANTyx *******************C32: CHANGE TO C=0 IF DO NOT WANT AUTO SCROLL AT FIRSTLBEGIN:200I01:300:I(C13)LLBEGIN1! n pn pLp o )p`^ H n)eempi(mp  HȢ n eiiحɃL@nL4n0 ` j TO SAVE ON DISK?";Z$$Z$"Y"Ā?&"TEXT FILE NAME? ";F$K0D$(4)]:D$;"OPEN";F$pDD$;"WRITE";F$NK1J:L$(K):KXD$;"CLOSE";F$blPLCPLCINC:JJ1: OTO " 620" MODE(I)2470x L$(J)(PLC)" IF "V$(I)"(I)<"LV$(I)" OR "V$(I)"(I)>"HV$(I)" GOTO "(ER) 620 I L$(J)(PLC)" I=I+1:GOTO "(LOOP) 620 L$(DN)L$(DN)(PLC) : K1J:L$(K):"DO YOU WANTJ)(PLC)" ? "(34)"ENTRY "(34)"; I"3 J620> TI1NI ^ERPLC hL$(J)(PLC)" INPUT "(34)P$(I)" "(34)"; "V$(I)"(I)" r620 |IT440 DNJ Q$"" MODE(I)3Q$(34) L$(J)(PLC)" IF "V$(I)"(I)="Q$TV$Q$" GPROGRAM LINE? ";FR5 "INCREMENT FOR PROGRAM? ";INCD L$(53N)S PLCFR:J1l L$(J)(PLC)" DIM "w I1N L$(J)L$(J)V$(I)"("(M)")," I L$(J)(L$(J),(L$(J))1) 620 "L$(J)(PLC)" I=1 " ,620 6LOOPPLC* @L$(NT A RANGE CHECK (Y/N)? ";Z$8 xZ$"Y"MODE(I)1:160a "MINIMUM ACCEPTABLE VALUE? ";LV$(I) "MAXIMUM ACCEPTABLE VALUE? ";HV$(I) MODE(I)2 I "VAR. INDEX FOR TERMINATION? ";T "WHAT IS THE TERMINATING VALUE? ";TV$ "STARTING "HOW MANY VARIABLES? ";N7 "DIMENSION OF ARRAYS? ";MN I1N:MODE(I)0:Y (I1N 2"NAME OF VARIABLE ";I;" ($ FOR STRING)" <V$(I) F(V$(I),1)"$"MODE(I)3 P"PROMPT LINE FOR ";V$(I);": " ZP$(I) dMODE(I)3160 n"DO YOU WA PROGRAM CREATE INPUT5 BY JACOB R. JACOBSL 1903 FORDHAM WAYj MOUNTAIN VIEW, CA 94040 FROM DEC., 1981 BTYE PAGES 352-362 ------------------------- CONTRIBUTED BY ED WILLMAN --------------------------      $B19:5:"1";AG$)L21:5:"2";AF$;V23:25:AD$;O`23:35:"";ZZ$`j23:1:AH$;tt(ZZ$)11170~ZZ$"1"720ZZ$"2"200:23:1:AC$;:1120**** PAGE 5 ****1:8:AA$3:5:"BUILD"10000 DIGIT.......POKE 894,X"M7:6:"THE DEFAULT VALUES FOR THE ABOVE"|9:6:"FIVE POKES ARE: 0, 0, 1, 240, AND"11:6:"240 RESPECTIVELY. ALLOWABLE VALUES"$13:6:"FOR X ARE 0 THROUGH 9 OR 240 FOR A".15:6:"SPACE."818:ABZ$z23:1:AH$;&(ZZ$)19407ZZ$"1"970HZZ$"2"480YZZ$"3"200n:23:1:AC$;:w880}**** PAGE 4 ****1:6:"100 DIGIT.........POKE 896,X"3:6:"1000 DIGIT........POKE 895,X"5:6:Y VALUE BY POKING BEFORE THE"= 11:6:"CALL 787 IS MADE."h*13:6:"UNITS DIGIT.......POKE 898,X"415:6:"TENS DIGIT........POKE 897,X">16:AB$H17:5:"1";AE$R19:5:"2";AG$\21:5:"3";AF$f23:25:AD$;p23:35:"";Z0**** PAGE 3 ****%+]1:" 3 - CALL 787 TO RESTART NUMBERING WITH"3:6:"THE LINE NUMBER WHICH WAS IGNORED"5:6:"WHEN THE LAST CONTROL-X WAS TYPED." 7:" 4 - THE RESTART LINE NUMBER MAY BE SET"9:6:"TO AN"D15:6:"BY 10."BN17:" 2 - EXIT BY TYPING A CONTROL-X."OX18:AB$cb19:5:"1";AE$wl21:5:"2";AF$v23:25:AD$;23:35:"";ZZ$23:1:AH$;(ZZ$)1690ZZ$"1"720ZZ$"2"190:23:1:AC$;:64:12:"INSTRUCTIONS"E 5:"THIS ROUTINE WILL AUTOMATICALLY NUMBER"t 7:"APPLESOFT LINES AS THEY ARE ENTERED." &9:" 1 - CALL 770 TO START NUMBERING WITH" 011:6:"LINE NUMBER 100. THE FOLLOWING":13:6:"LINE NUMBERS WILL BE INCREMENTED5:AD$; ^23:35:"";ZZ$, h23:1:AH$;? r(ZZ$)1410P |ZZ$"1"480b ZZ$"2"1200s ZZ$"3"440 :23:1:AC$;: 350  **** END PROGRAM ****    **** PAGE 2 ****   1:8:AA$ 3"IT WILL BUILD THIS ROUTINE FOR YOU USING"Z 13:"A METHOD DESCRIBED IN THE JUNE 1979"| "15:"ISSUE OF 'CALL APPLE'." l16:AB$ 617:5:"1 - INSTRUCTIONS" @19:5:"2 - BUILD AUTO NUMBER SUBROUTINE" J21:5:"3 - END PROGRAM" T23:2 **** PAGE 1 **** & 5 1:8:AA$g 3:"THIS PROGRAM GIVES THE INSTRUCTIONS FOR" 5:"USING THE APPLESOFT AUTO NUMBER SUB-" 7:"ROUTINE THAT APPEARED IN THE OCTOBER" 9:"1979 ISSUE OF 'CALL APPLE'. OPTIONALLY"+ 11:AB$"----------------------------------------"S AC$"INVALID ENTRY, RE-ENTER"g AD$"SELECTION" AE$" - NEXT PAGE OF INSTRUCTIONS" AF$" - RETURN TO MAIN MENU" AG$" - PREVIOUS PAGE OF INSTRUCTIONS" AH$" " F9dAPPLESOFT AUTO NUMBER BY DARYL HAMMOND 10-27-79eREFER TO 'CALL APPLE' OCTOBER 1979 PAGE 5, 'AUTO NUMBER' BY GERALD CAHILLfREFER TO 'CALL APPLE' JUNE 1979 PAGE 6, 'MONITOR ROUTINE' BY S.H. LAMn::xAA$"APPLESOFT AUTO NUMBER"0      ΨɩҠΨɩϠɽɫϠͤ͠ҨΨɽ٠ɍԠҠԠΠͤɩƠͤɩĢϠԠԠŠҨɩƠҨɩҠҨɩϠԠ٠ΨɩƠ SK I/O DESIRED, CREATE THESE MENU CHOICESIOFLAG2İ70:LN$(CU)LN$(CU)P$(N)".)"" LOAD FILE FROM DISK"P1$:70:LN$(CU)LN$(CU)P$(N1)".)"" SAVE FILE TO DISK"P1$70LN$(CU)LN$(CU)"PRINT"&N1MI0NUNUIC50:NU(N)NU:NFILE TO DISK' AND":"'LOAD FILE FROM DISK'";AN$J (AN$,1)"Y"IOFLAG2X CH(CH$)i CHCHIOFLAGu N1CH "ENTER MENU CHOICE # ";N MENU$(N) N N1CH 70 LN$(CU)LN$(CU)P$(N)".) "MENU$(N)P1$ N)**IF DI NEED A MENU?";AN$( @(AN$,1)"N"7400 J70 TLN$(CU)LN$(CU)"HOME:PRINT:"P$" ********** MENU **********"P1$":PRINT" ^IM(1)LN h"HOW MANY CHOICES ON THE MENU";CH$ rMI(CH$) |DI0410/ :"WILL THE CHOICES INCLUDE ":"'SAVE  DI2ī250 > "HOW LARGE SHOULD THE ARRAY BE?";ROWd LN$(CU)LN$(CU)"DIM DA$("(ROW) DI1LN$(CU)LN$(CU)")":310 LN$(CU)LN$(CU)","(COL)")" 70 "LN$(CU)LN$(CU)"NC="(COL) ,**CREATE A MENU 6"WILL THIS PROGRAMD" :2000I "WILL THIS PROGRAM STORE DATA IN A STRING ARRAY?";AN$_ (AN$,1)"N"310g 70m "WILL THE ARRAY HAVE 1 OR 2 DIMENSIONS?";AN$ DI(AN$) DI1DI2200 DI2ĺ:"HOW MANY ELEMENTS BY HOW MANY ELEMENTS":ROW,COL% P**ENTER LINE NUMBER PARAMETERS/ Z::V d"ENTER BEGINNING LINENUMBER";BLN$ n:"ENTER LINE NUMBER INCREMENT";IC$ xIC(IC$) LN(BLN$)IC **CREATE 'CLEAR' AND 'DIM' STATEMENTS 70 LN$(CU)LN$(CU)"HOME:D$=CHR$(4):REMCNTL-m0:"***** AUTOMATIC PROGRAM WRITER ******"<:5000f:"PRESS RETURN TO RUN PROGRAM";ANS$l zLN$(100)P$" PRINT "(34)" "(P1$(34)290< **INCREMENT LINE NUMBER COUNTERS FLNLNIC:CUCU1:LN$(CU)(LN)" ":     K1J:L$(K):6"DO YOU WANT TO SAVE ON DISK?";Z$EZ$"Y"Ā`"TEXT FILE NAME? ";F$l D$(4)~D$;"OPEN";F$ D$;"WRITE";F$*K1J:L$(K):K4D$"CLOSE";F$>HPLCPLCINC:JJ1: (W%(I))": D%="(D%(I))$ 02120D :L$(J)(PLC)" GOSUB 60000"N D2120a ITTW%(I1)SP NL$(J)(PLC)" ? TAB("((TW%(I)1))"-LEN(A$)); A$;" S2120 XI lL$(J)(PLC)" ?" v2120 L$(J)(PLC)" NEXT I" 2120 :P3$(I)(34)";" 2120! I7 L$(J)(PLC)" ?"A 2120d L$(J)(PLC)" FOR I = 1 TO M"n 2120v T0 I1N MODE(I)3L$(J)(PLC)" A$="V$(I)"(I)":2120:585 L$(J)(PLC)" A="V$(I)"(I)" 2120 &L$(J)(PLC)" W%="TTW%(I1)SPd ^L$(J)(PLC)" ? TAB("((T(W%(I)(P2$(I)))21))");"(34)P2$(I)(34)";"n h2120u rI |L$(J)(PLC)" ?" 2120 T0 I1N TTW%(I1)SP L$(J)(PLC)" ? TAB("((T(W%(I)(P3$(I)))21))");"(34)P L$(100) PLCFR:J13 L$(J)(PLC)" ?"= 2120E T0P I1Nc TTW%(I1)SP L$(J)(PLC)" ? TAB("((T(W%(I)(P1$(I)))21))");"(34)P1$(I)(34)";" 2120 "I ,L$(J)(PLC)" ?" 62120 @T0 JI1N T"HEADING 1? ";P1$(I)- n(P1$(I))W%(I)120G x"HEADING 2? ";P2$(I)` (P2$(I))W%(I)120z "HEADING 3? ";P3$(I) (P3$(I))W%(I)140 I "STARTING PROGRAM LINE? ";FR "INCREMENT FOR PROGRAM? ";INC "SPACE BETWEEN COLUMNS? ";S CREATE OUTPUT3 "HOW MANY VARIABLES? ";NJI1N:MODE(I)0:UI1N("NAME OF VARIABLE ";I;" ($ FOR STRING)"2V$(I)<(V$(I),1)"$"MODE(I)3F"WIDTH OF FIELD? ";W%(I)PMODE(I)3100Z"DECIMAL DIGITS? ";D%(I) d     "FOR"TBTB3 : :! * 1003 200e (Z$)39TBĺ(Z$,6);TB);(Z$,(Z$)6):447 (Z$,6);TB);(Z$,7,39TB6):X40TB LX32TB:L(Z$)L(Z$) TB6); (Z$,X,LX1) L(Z$)447 XX33TB:420* EFLAG11ĺ"***************************************"3 9 :? V (Z$,7,2)"IF"ı` L$Z$ J9(Z$):(Z$,J,4)"THEN"250 J Z$(L$,J1):405 TB63);"THEN" Z$" "(L$,(L$)4J):405 (L$,J6,3)"FOR"(L$,J5,3)P500 ` a5 d* INSERT PRINTER COMMAND HEREI eBFLAG0:EFLAG0a f(Z$,7,3)"REM"ı n(Z$,11,1)" "Z$(Z$,9)" "(Z$,(Z$)9) x(A$(I1),7,3)"REM"(Z$,6)" "BFLAG1 (A$(I1),7,3)"REM"EFLAG1 BFLAG1ĺ- BFLAG0& A$(13)NN1:A$(N)"":C0:50: A$(34)CC1w A$":"(C2)C2A$(N)A$(N)A$:NN1:A$(N)"":C0:50 A$(N)A$(N)A$ (A$(N)"30000"60 220 <D$;"NOMON":(37):868 >NN1 AD$;"CLOSE LISTING" D F2000 K :!A$(500)::33,40:V::4::"PRETTYPRINT PROGRAM LIST FORMATTER":`2500N1:D$(4):D$;"OPEN LISTING":D$;"READ LISTING"A$(0)" ":C0 :10:"PROGRAM IS BEING READ IN AND PROCESSED."A$ A$(13)(A$(N))02      4(1656MS)12723007 D$"PR#0":16368,0::1000Z D$"PR#0":"GOT IT!":300 ' PROGRAM USES IDEAS FROM HAYES MANUAL ' WRITTEN BY ALAN PETERMAN (612)-721-3295M,778-1213(  INDEX (PUBLIC),297-2617F  NC COMPUTERS,533-8862 b K2000: CLOCK CONSTANTs TI.1TI.1 CC0CC1:2000 LZ1KTI 2:" ESC TO STOP":TS(16384):16368,0:TS155ė:350 Z :D$"PR#"MS:Q$" ";PN$(CH,2) TERMINAL MODE JA$% TD$;"IN#0O ^"ANOTHER CALL (Y/N) ";:A$:A$"Y"Ĭb |:A$"N"370h p X 8 b MAXWELL'S BBS,922-3094 l MPLS PMS,929-6699 v LOKI,571-5965  ERIC'S,920-3975  CONFERENCE TREE,854-9691  HEATH TO END PROGRAM"2 :" CHOICE ?";CH:CH0ĀA CHNC160f CH0Ą"PHONE NUMBER?";PN$(CH,2) "TIME INTERVAL (MIN) ?";TI:CC0:TI0200 1000 ,D$;"IN#"MS 61784MS,0: LOWER CASE - FOR UPPER CASE DELETE LINE @1912MS,138: ZMS3: MICROMODEM SLOT1dQ$(17):D$(4)Fn:NC:PN$(NC,2)x"CBBS'S & OTHER SYSTEMS":"------ - ----- -------":}"0"5);"TO INPUT NUMBER"I1NCPN$(I,1),PN$(I,2)I;5);PN$(I,1);26);PN$(I,2): :5)"NEGATIVE NUMBER  ¨ΨШɩץĥ ¨ΨԠɍ¨¨ҠɠϠ͍Ψɩץĥ ¨Ψͤɩ¨ΨҨɩץĥ ¨΢¨Ԣ¨Ԣ¨Ģ¨¨΢¨Ţ¨Ţ¨¨  ĤҤԠĤΠԢԠĤŠԢŠԠĤҤT IN LINE 100 AS:"::"100 PR#1": "HIT [SPACEBAR] TO OUTPUT CURRENT LISTINGFILE, OR ANY OTHER KEY TO QUIT *";;(8);:A$::(A$)32ī5  E1ī25000m K"6. TO INVERT THE PLOT (SWITCH WHITES":" AND BLACKS), BRUN INVERT AND":" GO TO STEP 2 ABOVE."s P9:4C>." 5 ("3. TURN ON PRINTER, ADJUST PAPER"; - 2"4. CALL 24576. REPEAT THE CALL FOR":" MORE COPIES. <6000G>" < A"5. IF DESIRED, THE DENSITY MAY BE":" CHANGED BY USING THE ALTERNATE":" POKE COMMAND AND CALL 24576." Ft 936:H "INSTRUCTIONS FOR EPSON HI-RES DUMP":15)"PROGRAM":"1. LOAD HI-RES PICTURE INTO PAGE 1"::"2. DETERMINE DENSITY OF THE PLOT:"" 480 OR 960 DOTS PER LINE." " FOR 480, POKE 9,75 <9:4B> OR":" FOR 960, POKE 9,76 ():640$CH$NAK$CH$"?":GOO650;CH$CR$LNLN1:JCH$QQ$ıP ED$;"OPEN";F$ DD$;"WRITE";F$+ NI1NL6 XS$(I)= bIP lD$;"CLOSE";F$V v_ CH$ CH$CR$CH$BS$CH$QQ$CH$NAK$ĺCH$;:S$(LN)S$(LN)CH$:640 CH$BS$(S$(L))1S$(LN)"":1:640CH$BS$ĺCH$;:S$(LN)(S$(LN),(S$(LN))1! S1$"TAB(":S2$");":SJ$(J)? J1S1$"":S2$"":SJ$""n S$(I)(PLC)"?"S1$SJ$S2$EQ$S$(I)EQ$~ PLCPLCINC I I1NL S$(I) I  "DO YOU WANT TO SAVE ON DISK? ";Z$ &Z$"Y"Ā 0"TEXT FILE NAME ";F$ :60 @S$(LN)""% J"TYPE LINE ";LN. T6407 ^190Z h"STARTING PROGRAM LINE? ";PLC} r"INCREMENT FOR PROGRAM? ";INC |I1NL L(S$(I)) J1L L0S$(I)(PLC)"?":480 (S$(I),1)" "450 S$(I)(S$(I),(S$(I))1) J";LN 640 CH$QQ$ī140, NLLN14 :@ I1NLK S$(I)R IX "DO YOU WANT TO CHANGE A LINE? ";Z$ Z$"Y"360 "WHAT LINE? ";LN LNNLLN1260 S$(LN) " ,"IS THIS THE RIGHT LINE? ";Z$ 6Z$"Y"2 . "APPROXIMATELY HOW MANY LINES? ";I@ S$((I1.5))L (D$(4)Z 2EQ$(34)h <CR$(13)u FBS$(8) PQQ$(17) ZNAK$(21) d"TYPE 'CONTROL-Q' TO QUIT" n"ANSWER QUESTIONS WITH 'Y' OR 'N'" xLN1  "TYPE LINE R# PROGRAM CREATE INSTRUCTIONS< BY JACOB R. JACOBSS 1903 FORDHAM WAYq MOUNTAIN VIEW, CA 94040 FROM DEC., 1981 BYTE PAGES 352-362 ------------------------- CONTRIBUTED BY ED WILLMAN -------------------------      ` JOHN`S UTILITY LIBRARY PROGRAM L(OAD R(UN K(LOK U(NLOK X(ALL C(ATL D(EL V(RFY S(TOP Q(UIT VOL PG OF SECT-FREE N(DRIV ĿѕH!ɾL [ Q ԧLLJJJJ 0 0` [$ B  i&e L`$  ɍ ` X :$   LѕL` 8`ة;^Z_[` ` 9 X΅  [$ `( `0 Lee`8 ` :8` ^r67 Qx`4 N [ = X @^8JJJJi 0΍4`67LQ S TLQHɍh` 8 iiLح) 0L{L@^    [  Ux s r $$ a ` L  ` `ii LY/NOMONSTART ALENGTH Lx  m&NmJnm0  з0MLH c _ XHL [  ؗ  Ж mL c _ Ҡ [ C0  3  $ S!  [$ ЖLH ؗ Ж  L{И~Д [  ؗ+ $$$o  Ж 4<=>?BC ,ڍ ԧLS T  m鷽 ݌ 0 X '1  x)ȹx)ȹx)    [$ $ q L {{l Ezָ((((PPPPȌȌ``gg``77z L" L"m ō ~ ~  08 Lx Lxm ōL0``8č8Mč*y``8`5I085LmLة '  v( vLijȥ ȱȱ`iikեlϩ` ~ ~  08    ¨Š͢Ӡ̠͠ԠΠŠҢŠҠҠРϠӮΠĠŠԠάԠŠĠٮŠħҠԠΠΠŮIN A SINGLE COPY. A " >>>PRESS ANY KEY TO CONTINUE<<<K 9040Q | " I WILL NOW EXPLAIN THE PURPOSE OF "THE THREE COPIES BY USING AN EXAMPLE. "LET'S SAY THAT YOU WANT TO SCROLL THE "LEFT HALF OF THE SCREEN DOWN WHILE(EN.=0 " 3) STEP 2 IS REPEATED WITH YET ANOTHER BLOCK.C: lD " NOT ONLY MAY THE BLOCK BE MOVEDN "DURRING COPIES 2 AND 3 BUT THE CAN ALSOX "BE FLIPPED LEFT-RIGHT AND/OR UP-DOWN.b l " THE TRANSFER BACK TO SCREEN ISv "DONE ACK TO THE SCREEN.> "THE TRANSFER TO THE BUFFER IS DONE INQ "THREE STEPS.W } " 1) THE WHOLE SCREEN IS COPIED " UNALTERTED TO A BUFFER.  " 2) A BLOCK OF THE SCREEN IS COPIED TO& " A DIFFRENT LOCATION ON THE SCRESUB<H1%3:H2%3:H3%3:H4%3:V1%3:V2%21:V3%4:V4%22vH5%3:H6%37:H7%4:H8%38:V5%22:V6%22:V7%22:V8%22SUB  : " THIS UTILITY WORKS BY TRANSFERING "THE SCREEN INTO A BUFFER AND THEN TRANS-FERING THE BUFFER B WRITTEN BY: STEPHEN B. SULLIVAN"CI(S$)11[38:21:(S$,I,1);e2200kwI122 2200H1%38:H2%38:H3%38:H4%38:V1%4:V2%22:V3%3:V4%21H5%38:H6%4:H7%37:H8%3:V5%3:V6%3:V7%3:V8%3GOOD LUCK FOLLOWING THIS."7I1(B$(1))12>1IJ17UKIJ1\1K0K(B$(1))Ė(K6):(B$(8J),K,1);SUBI6H1%H1%1:H3%H3%1:H5%H5%1:H7%H7%11S$"EUNITNOC OT YEK YNA SSERP *"5 VB$(7)"****************************"; `: jDEFINE INITIAL VALUES FOR THE VARIABLES WHICH ARE TO PASSED TO THE UTILITY tH1%1:H2%40:H3%1:H4%40:H5%1:H6%40:H7%1:H8%40:V1%24:V2%24:V3%1:V4%1:V5%1:V6%23:V7%2:V8%24 ~:CK MESSAGE B$(10)? B$(1)"****************************"h $B$(2)"* *" .B$(3)"* A UTILITY TO MOVE *" 8B$(4)"* *" BB$(5)"* SEGMENTS OF THE SCREEN *" LB$(6)"* GAIN. 5 "DO YOU WANT TO SEE THE INSTRUCTIONSM "AGAIN. (Y OR N) W 9040g A$"N"800y A$"Y"İ3000 720 : *PRINT CLOSEING MESSAGE 44000  : PRINT THE BLOCK MESSAGE ON THE SCREEN. : DEFINE THE BLO:B  WAIT A LITTLE BIT AND THEN SWAP THE NAME WITH THE MESSAGE.R I12000:q V1%9:V2%16:V3%17:V4%24 V5%17:V6%24:V7%9:V8%16 &SUB 09040 X: bPRINT INSTRUCTIONS l3000 : LOOP IF INTRUCTIONS SHOULD BE DESPLAYED ATHE BLOCK MESSAGE 1000! ,:S 6MARQUE NAME AND MESSAGE AROUND BLOCK MESSAGE] @2000c : SWAP BLOCK WITH MESSAGE H1%1:H2%40:H3%1:H4%40:H5%1:H6%40:H7%1:H8%40 V1%8:V2%14:V3%1:V4%7 V5%1:V6%7:V7%8:V8%14 SUB \ WRITTEN BY:- STEPHEN B. SULLIVAND 3909 DREW AVE S.a MINNEAPOLIS, MN. 55410~ PHONE (616) 920 - 8463d:nSUB35840xSUB LOAD THE UTILITYD$(4)D$;"BLOAD MOVE SCREEN BINARY A$8C00": PRINT          VERSION! P OF THE SUBROUTINE.= `A(A10D%.5)(10D%)I jA$(A)O t Y t DQ( THIS SUBROUTINE IS CALLED BY THER CREATE OUTPUT EXAMPLE. IT CONVERTSv THE NUMERIC VARIABLE 'A' TO A( STRING VARIABLE 'A$'. W% AND D%2 ARE THE WIDTH AND NUMBER OF< DECIMAL PLACES, RESPECTIVELY. F W% IS NOT USED IN THIS IN A DISASSEMBLY WITHOUT: A CLUE AS TO WHAT USES IT. THIS IS : WHERE THIS UTILITY WOULD BE USEFUL.: THE ENTRY ADDRESS IS KNOWN SO FINDING>h THE ADDRESS PART OF THE 'JSR' OR THE : 'JMP' THAT REFERENCES BECOMES A SNAP!: IT'S HANDY FOR PROWLING ABOURCH THROUGH THE SPECI- f FIED RANGE IN MEMORY AND PRINT OUT THE: LOCATIONS WHERE THOSE TWO BYTES ARE TO: BE FOUND. THE ROUTINE IS SIMPLE BECAUSE: TWO BYTES AND ONLY TWO BYTES WILL BE: SOUGHT. g IT OFTEN OCCURS THAT A SUBROUTINE: WILL BE FOUND THE FOLLOWING PROGRAM IS A MONITOR: UTILITY FOR MACHINE LANGUAGE PROGRAM- e MING. I WROTE IT AFTER ENCOUNTERING: A NEED TO KNOW JUST HOW MANY PROGRAMS: WERE CALLING A PARTICULAR SUBROUTINE.: WHEN GIVEN A TWO BYTE ADDRESS THIS: PROGRAM WILL SEA 3:I17:A$:A$::14::" AN EXAMPLE : "::19:" BRUN ADDRESS SEARCH.OBJ"::20:"]CALL -151":22:"*0800<0000.1000 <--ADD CTRL-Y THEN C/R" 24:"*3D0G";:1:18:34,0: 224:5:"HIT ";::"SPACE BAR";::" TO CONTINUE *";(8);:A$::M d******** ` ::5:9:33,8:::50::14::"ADDRESS SEARCH"::34,3::3:I15:A$:A$:: 3:I17:A$:A$:::3:I14:A$:A$:::50::3:I15:A$:A$:: 3:I13:A$:A$:::3:A$:A$::I16:A$:A$::50::3:I16:A$:A$::  ********************9 * *U * ADDRESS SEARCH *r * *  * HARRY OWEN JONES *  * FROM : APPLE-CAN *  * TORONTO CANADA *  * * ************    TEEN,EIGHTEEN,NINETEEN\^"",TWENTY-,THIRTY-,FORTY-,FIFTY-,SIXTY-,SEVENTY-,EIGHTY-,NINETY-((AW$,1)):15210:X0PW:PW$::WW$WW$PW$:K;AW$(AW$,((AW$)1)):^;AW$(AW$,2):;(WW$,1)"-"WW$(WW$,(WW$)1);J "",ONE,TWO,THREE,FOUR,FIVE,SIX,SEVEN,EIGHT,NINE,TENT ELEVEN,TWELVE,THIRTEEN,FOURTEEN,FIFTEEN,SIXTEEN,SEVEN;(WW$,2)", "WW$(WW$,(WW$)2)" "2 .;15170E 8;WW$WW$"NONE"g B;(WW$)46WW$WW$"-":15170{ L;WW$WW$" AND " V;15260:WW$WW$AW$"/100" `; j;: t;PW((AW$,1)):WXPW:PW1Į:X020:PW$::X2PW:PW$::WW$WW$PW$ ~;/;PW15240:PW$""ī15070. :WW$WW$" THOUSAND, "9 :15250S :15240:PW$""ī15090l :WW$WW$" HUNDRED, "w :15250 :15220:15250 ;WX1Į:PW((AW$,1)):X110:PW$::X0PW:PW$::WW$WW$PW$ ;WX1İ15240 ;(AW$)7İ15270:15050' $EEN 0.00 AND 90000.00" :y "AMOUNT: ";V$::"NOW, TURN ON PRINTER, SET PAGE LOCATION AND HIT ANY KEY":Z$:SL 1000  15000:: WW$: :AW$V$:AW(V$) :(AW$)215160,15120,15100,15070,15040,15030 : :15100 :,1)"P"ė:2:"WHAT SLOT NUMBER IS YOUR PRINTER ":SL$D SL(SL$) :"WHAT IS THE AMOUNT YOU WISH TO WRITE OUT":3);"BE SURE TO USE FOLLOWING FORM: 135.89" :3);"ELIMINATE $ SIGN AND COMMAS :"NOTE: AMOUNT MUST BE POSITIVE AND BE- TWOTHER WHERE DATA IS IN THE FORM OF A DOLLAR AMOUNT AS STRING V$ :"SINCE THE RETURNED STRING IS OFTEN WIDER THE 40-COLUMN MONITOR SCREEN, IT WILL BE BETTER TO RUN IT ON YOUR PRINTER" :2:"DO YOU WANT PRINTER OR MONITOR (P/M) ":X$6 (X$]d * AMOUNT WRITEOUT *=n * BY *[x * JAMES W. SMITH *y ***********************:"THIS SUBROUTINE WILL RETURN A LONGFORM PRINTOUT OF AN AMOUNT"A :"IT WOULD BE USEFUL WITH A CHECKWRITING PROGRAM OR      50,134,157,138,32,82,228,160,0,145,131,200,165,113,145,131,200,165,114,145,131,160,2,162,0,165,157,76,226,229Z$:A$;:A$(13)ı%8'A$(8)10100EB'(A$)32Ğ:((A$)64);:[L'DD$DD$A$:10020vt'(DD$)0ĺ" ";:10020'868:(DD$)110000'DD$(DD$,(DD$)1):10020m: 201,190 ,240,3,76,201,222,32,177,0,32,227,223,32,44,213,232,189,0,2,208,2 AT A TIME PLEASE":2000:3200:j :"Q=QUIT H=HARDCOPY G=GOBACK M=MORE";::" ";:R$:D$:R$""R$"M"{ R$"Q"9500 R$"H"İ3000 (#:(12)::"SOFTDISK.TEXT HAS BEEN CLOBBERED"::%D$"CLOSE":D$;"RUN KICK.IT.OFF"'DD$""$'A" ((37)):868:X11000::7 ((37)):868: CL(37):(W):868::"*";::" RETURN W. NO DATA STOPS INSERT MODE ";::"*"::(CLW): EM$"INVALID RESPONSE -- ENTER AGAIN":2000:3200: EM$"ANSWER Y OR N":2000:  EM$"ONE LINEAF$"N"110.VBL(AF$):IWBL:" "::110O3200::EM$::I13000:: ((37)):868:D$"PR#1":I$;"41N":EL$:PL$"":LC1879:KW3:LCLC984:JW8:LCLC128:IW40:AS(LCI):AS64İ5 PL$PL$(AS):I:PL$:PL$"":J:K:EL$:D$"PR#0":DD$:D$:3210:3200:SD$:710_WR$;RN:RT$:PR$:VP:VR$:IWMR:RP(I)::D$:6:VPZ840CVVP:RD$;CV:VP:3:SD$DD$:D$:3210:3200:SD$:710BF$:AF$:3:SD$DD$:D$:BF$"H"ė::"SOFTDISK MAGAZETTE ";DT$;" FRAME ";RN::RLRN 8SD$: *X**********************W:216,Z:840NSD$:(SD$)40940c3330:3200:920WR$;CV:VP:SD$:D$:6:IW3:3200::SD$:710PVZ990RD$;PV:PP:3:PD$DD$:WR$;PV:VP:PD$:D$:6:VPZ840CVVP:RD$;CV:VP:3:SD$(02)28HRMO(03)31V\MO(04)30dfMO(05)31rpMO(06)30zMO(07)31MO(08)31MO(09)30MO(10)31MO(11)30MO(12)31*********************** AFTER RTN HAS RUN * * DO NOT SAVE THIS *<* PROGRAM 0)LP$"N"WLP$"Y"MO2JDJD1DYMO(MO)(MO2DY29LP$"Y")ER$"Y"W1((YR1)4)((YR1)100)((YR1)400)YRJD6DYW1(W17)71  * INITIALIZE * I139:DH$DH$"-":*MM124MO(MM),>MO(01)31:HMO)I lDY((DT$,7,2))n vYR1753MO1MO12DY1ER$"Y"y I18 (DT$,I,1)"0"(DT$,I,1)"9"ER$"Y" I ER$"Y"780 JDDY I0MO1 JDJDMO(I) I LP$"N":YR4(YR4)LP$"Y"=YR100(YR100)YR400(YR40 VALID FROM 1753 ONj  INPUT = DT$ (YYYYMMDD FORMAT) & OUTPUT = DY (NUM 1 THRU 7 WITH 1 = SUNDAY) 0 JD (JULIAN DAY-DAYS INTO YEAR) : LP$ (Y/N) LEAP YEAR INDICATOR D ER$ (Y/N) DATE ERROR NER$"N" XYR((DT$,4))4 bMO((DT$,5,2)YYYMMDD"O 11:16:"";DT$e 490: CHECK DATEv ER$"Y"380 103,52:104,8 I20482100:I,0:I I18 I2049,((DT$,I,1)) I 2058,((DY))    * DAY OF WEEK RTN *" (AND DATE VALIDATION))  F  RTN :300Y PG$""ĺ(4);"RUN "PG$o :(4);"CATALOG"u { " , * DATE ENTRY RTN * 6 @ DATE STORED AT LOCATION J DEC 2050 IN YYYYMMDD T FORMAT ^ DAY AT DEC 2058 h9:8# r"PLEASE ENTER TODAY'S DATE"; |11:16:"YSOFTDISK HARVEST"h PG$"DATE.LIST": NEXT PROGRAM{ TYPE$"MASTER" DOS$"3.3" 790: INITIALIZE :3 DH$ (40(SUB$))2);SUB$ DH$ 20:5 TYPE$" DISKETTE - DOS VERSION "DOS$ 22:51 "INITIALIZED: ";INIT$<&K PROG$"DATE.HELLO"b AUTHOR: J. ALLENw DATE: 02/15/81}(2 FUNCTION -< THIS PROGRAM IS USEDF AS ENTRANCE AFTERP INITIAL DOS BOOT ANDZ OBTAINS THE DATEd ( nINIT$"01-MAY-82": INITIALIZATION DATED xSUB$"     ZQZ Ȓ :L s ?LُL7^8_9Z:[`1'8tp`8M``i^j_kZl[`28tp`8M`y h (`|)* X |`YLHHJhh`Ǘ˯߷ë󳏋'C/cO KC[ a(נ)+Ss?ՠ) K(LOK U(NLK D(EL Q(UIT ----------------------------------------VOL PG OF SECT-FREE N(DRIV ---------------------------------------- $% 0 4'  `` C iiLح) 0JJJJ 0 0`% $ B2 3 3 Hi&eh Li`$3  ɍ ` X̅0 `JOHN'S SUPER UTILITY PROGRAM L(OAD R(UN C(ATRIFY\  2m2R&QPNQmRJnPmPee2`8322 ` :` 3^څ6789 Q H Ȓ @^38JJJJi 0`6798 Q`Hɍ3h`` 6  H5/5 s r > a ` `$$(ɠ$I $4 ``H$%  h\  `CATALOG\Y/N\LOAD\LOCK\UNLOCK\RUN\SAVE\DELETE\NOMONC\START A$\ LENGTH L$\,D\I/O ERROR\VELLx4 6 s j S5 B ꐭ5 L L P65 s j00   L222  Lx SO qLЪVТ2'56 s j S" $ j q L :L9% 5 I8Mt;=CH?JÍ QVQT_ɔ%8^7Z9[:^Z_[ 04 q1  )ȹ)ȹ)   L jɠ 0   LL M4'4В  X5 QLiEL`B<ȥC<<=<>=?`= <  UNDAY)( r(104)256(103)2100ī410L |I20502057:D1$D1$((I)):I} D2$(D1$,5,2)"/"(D1$,7,2)"/"(D1$,3,2) DAY(((2058)))   * EXIT PROGRAM * A DY$(3)"TUESDAY", DY$(4)"WEDNESDAY"B DY$(5)"THURSDAY"V "DY$(6)"FRIDAY"l ,DY$(7)"SATURDAY" 6330: GET DAY @ J * TODAYS DATE * T D1$ = DATE: YYYYMMDD ^ D2$ = DATE: MM/DD/YY h DAY = DAY OF WEEK (NUM 1 THRU 7 WITH 1=S(40(PROG$))2);PROG$# 10:10F D2$""ĺ"TODAY'S DATE: ";D2$R 12:10z D2$""ĺ"TODAY IS: ";DY$(DAY) D2$""Ğ:"DATE WAS NOT ENTERED": 22 420 * INITIALIZATION * DY$(7) DY$(1)"SUNDAY" DY$(2)"MONDAY" PROG$"DATE LIST". AUTHOR: J. ALLENC DATE: 10/16/81I(Z2 FUNCTION -u< THIS PROGRAM IS USEDF TO SHOW HOW THE DATEP CAN BE TAKEN FROMZ MEMORY AND DISPLAYEDdn * MAINLINE *x22