8L2C)pJJJJ IH(ȱH:=IH[H`@HcH  $ +   I/H`JLNGȄBȄF aK  haaFF  mJm# KKJ UJ )J ۈ) ;J3ȱJFȱJGJKaȄM  aaNNJFLGJL LC! $ " " &#M8nf $ ) L! " " &J, )7(P0  ( @p !"0 *%"0"" &/) )"" &ЭL!)0I0 (Щ ߍ A!APROGRAMSA!ADATAA!P EXTRASA!ADIRECTORYA!AAPA Z  Z EXAMPLES' &PRODOS:Z! 2,BASIC.SYSTEM&(Z! Ҩ'STARTUP; Z! $HELPCA! A;HELPSCREENSI<A!APRACTICE >dLԡm#i㰼m#iЕOLԡȱfg hi !dLԡ憦  Ljmkm l y`2 Lԡ8(Je稽)ʈ@LLnSOS BOOT 1.1 SOS.KERNEL SOS KRNLI/O ERRORFILE 'SOS.KERNEL' NOT FOUND%INVALID KERNEL FILE: xةw,@  ȱlmi8#)!)? &PRODOS `DaElH$?EGvѶK+`L HHLy XP LM ŠϠĠӠS)*+,+`F)) (*=GJFjJJA QE'+ '== `@ STSP8QSS8 m P o R(8R)f 8'  )ɀ)4,- U JNT)  !N)Gi/ "4 "" " " iL X%!L!ΠΠҠ`  !"#$@~@}J@` ߩ%S @ ~`E hhhߺ0 h ߐ# ߐ ߐ ߐ 0 HϭߍLпllllhh8` QSTV،h@ihAiȱ@JJJJq@)@evȱ@Hȱ@Ah@@cee J) LxL LxJiB LxJ) GxNhHHHHL(  ްƠx@BEOD  ް(`( C)CJJJlBJ,~آ <B*IBGF08Lé'+8H <(h`@ڍL3<>=?<>CAB@?A` 1 L  <>` ڢF]PL8i m L   6< L  BLRAM' hLDLHB-9F 3"aɿ LLB Nϰ H  @h( L Lj  @`bLJCAB@=?,<ʆ>*=?BC8 é&'112`݁(݉(`}(`e`H)hJJ?(0JJ)` (< ( < *? ( < (? ( < (? ( <*? * **? *? *? ( < *? ( <((ȱ( Y'( ' f'L&`L' 'L' Y' L& Y'L'8ei` ,$`ee` `( '( (` *( ' (`hh8`8`(l&j"L  <8# ȱ)ɀ  )t& ` (Xp< @t& )mt&t&.t&w& Mt&i  ``rȱȱȱȱ0]cȱeem(ȱ(ȱ((ȱԠŠҬîʎ1DžϠl&8f ZHH)hh8JhJJJJJ j&Hk&8H) 12 (j21 h!hH h %)Ђ12H)M0 h10200I20h2 |&`L($_뿩 8!@8` MNЩUMܩ  L 5   8 0 8 `0 / x X$$%&%0`ŠӠЭ[ V7 c L '0%O '8O JmO * ʈ0  0ŠϠĠ͢Š͠͠ϠŠŠϠĠخ͠ ͍B B(8`;YYZLYLYLY"7"Y"/"ll"*# HQ$WON!-PB}OBiB ,m# m# J Qڨ)̰n]e мȱ ; ̀𩠙< iO P F V >Z SY ɘL` X _ 'P0ōҍJJJJ ɺi) ɺiLD )?      `l@Hȱ@IױHXATȱH ɯȩ׍̞5H)/@a)_ .0 :A[8@`,뎞׮Б` L` @>_)I38Ypqם`K8`@Nȱ@O@ IiNȽבN)/ȩ/N`@[ WHJjjjhA <'KI؍_JJJJح}) ) )в|J8` GpF $ ᭔ع+ؠ HH  Jh8` 䮑ٽ ٬ؠ@` ( X )8`)i пJGBJ a FإG`BH aFإG`H hHB؅F  ؅GxDE؍00C ް(`(8` L7J  G"L H  G 9ؙ` @ P8`B8` X؈ ;JHIH ILFFHGI ѭJjHIH;7IؙJJ g3HIHILJKJK`FHIG ( Ȣ؝؈JL)eKM`)` J Jͫ $0 ΚJFJL8`0C ް(`(8`ؑ@`M8`8@ؐʈI묒)8 L LةC8`؍)@ i)8zJ _ ؅F L) +&J(b ;FإGؐ/8`*J۩ ٰ`JJJJi LdH8`ͦ ٍ0  ` `ٍyٍiB0H0FG h0`שB5xED "8`  `ٽJJJJ`H͜hn)NjNjNjN. dH͜ ;٭ *Nۙ۰ڙک `Z8` d# B` . . .8۰0٭)ܝ٭*ܝ٥F٥G٭'ܝ٭(ܝ`) 8ʈ` )0ٝ)i `8`R "ꍜ NمFمG < Μ0 FGL鮑0 ٭٭ٽ8`H8`  ,0 d01 E8`100 v$0ʩGF 밽 谸 谳`12)1`0`Ȏi 0U`)8`θ` )W G JA)H ܝʈh٭ )ȱHθ`Κ8QeHI SBF0Y ٙWٙUFZSʈ {猺`8m0`,0H hi L荸Ƚθhٍ0GF8yאFG  `* ΙQ8`5IF܅G 됾`\܍]^ {8D`F` tlH)HFȍZHG[ $%܍&܍!ܢ8* J8` L ܝJ)I 'ܝF`R8i^F\G]`R5IH3H (  밯ZF[G 밠S%܈P" X)Im'܅F(܅G)܍^*܍Q 4 䭐 $H %HFFHGHG 됨`R8`)` QH_` :R(5IHH__Ѝ_@`8 e ͙_ʈ@}ȱ@oȱ@y{|rZ[_)7_I0ܢܽ \'Q*ܩu 7pqFG (ST L܅I^ mQIH` } }Y0\F]G Q_HZF[G` G8`F@ 0 e LK8`F GI8`FHGH hGhF܌ բFܽܕF芝ܝ 밶FFGG H܅I mIIHHyHȘI Lܝ` @o@ w@Ю׍_)m0JHi 뎑`C8` @ 3N@) d莽 ⭺i`0 v0GF #0 W,0 ).H hȑNWȮّNW8`ٍّNθ0NN` H h)N$% LL L L H  :pJ덯 )@፲NJOK HiKKήή IJί JФ̭JjHFIH HIGxKE ް((H hH h8`8@ȭ@LH쬒8NNO 8 ؍JL`RήʱLN.MOMEKP/MEKήLML-M O,p莭eNNO(`JNKOL H/  :P L8 gؑJ`L@ȱ@LL`BLLޢޢޢޢޢޢޢޢޢޢޢޢޢޢޢCOPR. APPLE,1983LM Mh@8nЍLޭ 0J @,,L:,L@   !"#$Ԡ͠ˠĠԠhhhhILhH),dx8 (8`@Ae f!55s+aIJK,-NOPQRSuHUSTON!' J5 s9X(K sXXK تKo`V8`no` < on sI9XX`)HJJJh`OeNeO࿰ s9XАO`@ȭ@` ON YNJKO`HHHHх܅F݅G ` ͬ 밽܅F݅G ` * % L`FGL 4܍ݍ8`FHGH 4ܙhGhF`@Bɼ>K@yٙ٩`O dIpFqG :%&N  # 4܅F܅G `J HH hh` 0 @ L\L# [Tܝ ݝ0ȩFG  0` רם__)׍_pFqG 밍 hPם8`;Zx3QTTSRWVUHEVhEhH)IWHPHHHAHHHLaVEWLӿ ְ& .Vӈ  JJJJH 8h Ei 8EX`'8`jӍWӥC)p> pӥCYӍY 轊( ( ӈBV ( ӭp0 \BkJ ՠ@iӦ> Ӑi'j:ZH i@ioZZH h ѐȭnWǥBJ Ӱ8XӦ>` Ր+>YL 8!9 詍` "  à4"/pŠϠŠà͠ӠàԠŬ%'()*+,-./0123456789JJH !h穖tp% ;"Z/݀>">"' 1" 7"5).莀/ ;" " 6" >" 1"6"$ "g"" !"""""IzLLG ASTARTUP$#   / XXύX?klmnÍoL) "6L'?"(0`6708" = ***)< &@DEF   %LҠؠӠ΢ϠԩҠŠƠԠԠŠӢɯϠҠůȠԠĠ ƠϠ ɘɉ ɈL :Lɍ)ې)ɮ۰ɺH h 'ĝL  LL L)'L L L'L  (L(L $ʩ $$ $L `ީ % XʩXύX X A %  % ɍNH hɛɘɉɈ $ Lc :Lcې)ɮ۰ɺ'Ɲ Lc  : X i % $ɛ$8V%֌&8V֌֠)HV)hH)hHIhդD?DRIDQD)҅; ?JDQD]ՎՎՎ`MY pӭY)p  ӭp`C)`BFGV 8``8LխӅ:HhHh Ո թ թ ՘VYҪҦ>:Y)Ң`;R?AJ;<ȰY)Ң`Y?)Ң`ȐҰ ;HhHh=Ң`Hh `Hh`DEiȍ0֌1֍ZԍsԍԍԍԥDEԌ8TԌ8WpԌqԠ 7I꽌ɪ꽌ɭ蠪:љVE:8`]ѾV]H)]ѾV]ҙ)]ѾT]ҙ)] >8hUD` ԝY`> Hh݌(`HCJJJJ)*h`0($ p,&"op8`kkV꽌ɪɖxlӽ*kӽ-kәmMlӈ 꽌ɪ`8` *L o % ԽYӍZӭoӝY 3Ѡ шNZ`rZLkӭZӍq8r7IZӐiZkӐk 8 ѹs ӭq ѹ| kн Z)*>>` @ $(,048<@DHLPTX\`dh 0ުlptx| H06172839h` v97L75v^a ?/( va?LLLɍ$?`?a ɍɥAH93827160hH46576879h`,C bL ɍ b w,S0 @ lLޭB 鸍긍$I2 U)VJ зT)`l8`a HbIJhjǾȾɾ p٭b=aSL/id /`H) hJJJJ ɺi` M  ` ת.8 `O`S  AI-L9 ᪰B C VW>m>` _m8injkiljo풼i>?Ek?>Q>> L> \/ e>>?́?ޱ>ȥpnG @p;G=po:Q>>>̀ `` \> ̀ `e>>?́?>?Emn(>e>ȱ>e?>Q>ؠ> ie>>?`|;}=:<~:<=;`||m};>:8o>oȑ>ppȑ>> :op`G DKJپھ pHJh` D!hgt}~p `~t}p8n~ni}tpi~~tso8pinii>j?k̈́>~|p|Ii||̈́ l - `>i>L8933LΞAAJL ةޘг uv $ 8LƞaЌ>?@`>?@`B8` K  춼LK ҟ ҟ ( KK`HJJJJ8`HK)` #hhL𚾤3 @LtJ)s@J b  l`a?sa?,E30ɍФ3 E3HD F3 Ʉ%h3 bM E  lLthɍLL3`3,A0s0% Ipn DpnI:L ؅303پھ p H־Ǿh۰8L־Jjjjɾ)Ⱦ8 ѱ OLӜ ĤLLX>(F`־ؾپھ׾` bɄ KDEF vLl v lL bKɍKL?` w  vLl@$݅3`(l8L3LX>(Ƀ,`3,G0]ɾ g` H`پ_پ p _پ׾`>( p۾m׾) W)ʩ@`ɾ>(O puȾ ɾ-O ]c־Jjjj `O>0O l PODEF޾ p ޾ p($ذ v (0 ( L?ԦʚLeةީa s  lL b,FLg,DL,C0$3 >@ Ɉ 3ɾꩈL(3ɾ;Ƀ B94 l% bʽ  ՚,S` H Eо VV :$ZA@L8 `u-U -W b WW)JJ :T$K \0IDK : :5K 0.)K :쭼󬮼XK`L9L^ :K mY ܩ 8jK` J,, ( 5̪ ` J, ̪ ` J, `)a)_ͩ`0:8 `)H"H ת תh}I תhm8`0 :AG8 `) ת `..`SI-SRRX)sƬƀ#(ZZV4G_0=( A P FjL\5p-e9ABSAVERIFYBLOADELETEBYECATALOGOPENWRITEXECREATEFRESTORENAMEBRUNLOCKCHAIN#FLUSHREADPOSITIONOMONPR#PREFIXCLOSEAPPEND6D(!쫂8 ( 8о(־Ǿ,G 8`_`W)H־Jjjjh p̭ fLᶢǾ ת..8 ۭ (8mȾȾmɾɾʾiʾ` Lpl8l:/,s`\"׾پӾؾھ pD`־ǾY׾ؾOW)ݩȾɾʾ pD`8`W)CB) 5W) =)W)@! pZ}ȾȾ󰹩 p` ־ǾҾ,G 8`׾ؾ f p vۥs׾tؾE` `޾Lp h־Ҿ,G0^W)TP) ecfdپھ׾ؾӾ p$c d pccddީ 8`ȾɾʾNfne}ȾȾI>Ie f`8` P־ǾҾ,G0C f=W)_`:_`蹀:`V)8`MN; b;`;C b N8` G)̀#:蹀:`V)R ޾,N0MHhHh p' L,N HCNh`M`M N N `9V) ` V) ޾ p`  (8` 8`8`(W)`_V)Ij!؍Í`_ FjЭW)`_ Ͼ pH Lh8`jGMоM  G)p pY)ικ`lP *,N!ǾȾɾʾ pǾ~H h8`8`,C  8` ȾɾM$ mHݓǾ phϾ pH Lh8`Ͼо־ǾҾ_` 볩Ӿ pW) "LEC`C )莼 з l6 7= /& /8Hh /` 6Y׾ؾ+پھ p|پɾʾ`HV)jh츾$-#Ͼ p о־޾Ǿ` 8` 8`ɾ)ɾ̸ ɾɾ0miȾ ;τ<:: <`:8` e eվ'OV)Jj зf Ja l + ѱ:ji Ĥ Ƀ B ,  簰 ` l])Y 񩢍`Ⱦɾ0Ǿ p1׾ؾ  p p ٷ H rh(`׾ؾ` : ߭׾t8퍼mؾŰ펼t폼 L28` ˌھپLp k V)@W0!XY X6Y7` YX`X:Y) F з8` # `l׾ XYW0V)4W׾ؾ_`)0%I0)3]8X^YȰ8` 8` p Ⱦɾʾ8`پھW)@%ZȾ pSԩ p`S pLjÍ FN I 9 : ׾hؾ  p hgͺ칾`LٷV)jC mMjà Lp `VJJ°L9Lp з)< L з L緭W)8VJưϥ3 켼 `F`4W)ɐ/XYjV  kimljn` pg׾mȾXhؾmɾYtѮȾɾ aYX`8g@I5gN Oz @n[Dz @nd0,~z @`$仫@v$⩔,C[B?I>孓`仫6VtCicQĿUKqtVt NCHID16:690-"OF RANDOM ACCESS MEMORY"^:5:(57344)76ĺ"APPLESOFT IN ROM"::720|"INTEGER BASIC IN ROM": FOR EACH DISK DEVICE IDENTIFY DRIVE TYPEJ4894648946(48945)DEVICE(J):DEVICE128DEVICEDEVI:"STARTUP DISK: ";PREFIX$"l>v DETERMINE MEMORY SIZEDd:"YOUR ";TI$;" HAS:"::5MACHID48ĺ"128K ";:MACHIDMACHID48:INSLOT$(0)L$:690MACHID32ĺ"64K ";:MACHIDMACHID32:INSLOT$(0)L$:690MACHID16ĺ"48K ";:MACHIDMA"Apple //e":MACHIDMACHID128:APPLEIIETRUE:550mMACHID64TI$"APPLE ][ PLUS":MACHIDMACHID64:550TI$"APPLE ]["&0: GET NAME OF BOOT DISKD PREFIX RETURNS NAME OF LAST ACCESSED DISKNXD$;"PREFIX":"";PREFIX$b810INSLOT$(SLOT)ID$(((SADDR12)16))3 SLOT9 U  IDENTIFY MACHINE TYPE[ o MACHID(49048) MACHID192TI$"APPLE ///":MACHIDMACHID192:550 MACHID180TI$"Apple //c":MACHIDMACHID128:APPLEIIETRUE:5503MACHID128TI$)"CLOCK":460Z (SADDR5)24(SADDR7)56INSLOT$(SLOT)"COMMUNICATIONS CARD":460 (SADDR5)56(SADDR7)24INSLOT$(SLOT)"SERIAL CARD" (SADDR5)72(SADDR7)72INSLOT$(SLOT)"PARALLEL CARD":460) (SADDR11)1ĭ((SADDR12)16)$:SLOTSSLOTSV JVV2" TI( ^F h FIND THE VARIOUS CARDSL rZ |SLOT17t SADDR16384256SLOT (SADDR23)201(SADDR55)207(SADDR76)234INSLOT$(SLOT)"SILENTYPE":460 (SADDR)8(SADDR1)120(SADDR2)40INSLOT$(SLOTK" ID$(7)"MASS STORAGE": ID$(8)"80-COLUMN CARD"T ID$(9)"NETWORK CARD"` SLOTSf  MARK ALL SLOTS AS UNUSED  MARK USED SLOTS AS USED  "SLOTS(49049):V128 ,I701 6INSLOT$(I)"EMPTY" @SLOTSVINSLOT$(I)U:<=>?@PRODOS BASIC PROGRAMMING EXAMPLES *"0 nS2$_ x"* COPYRIGHT APPLE COMPUTER, INC. 1983 *"m S2$:S1$ ID$(0)"USED" ID$(1)"PRINTER" ID$(2)"MOUSE/JOYSTICK" ID$(3)"I/O CARD" ID$(4)"MODEM" ID$(5)"AUDIO CARD" ID$(6)"CLOC D$(4):INSLOT$(7)XFALSE0:TRUE1:APPLEIIEFALSE:L$"LANGUAGE CARD":U$"USED"c(21)j( 2IN6:UP11:C$" "<FS1$"***************************************"PS2$"* *"ZS1$:S2$' d"* LLwLLL) `8` ԠŬLLʮq$6,⨁ K6, VtI=v!gNVt Vt  lg~TCE128 SLOT7EDEVICE16SLOTDEVICEDEVICE(16SLOT):820a SLOTSLOT1:SLOT0790j*8504DEVICE4INSLOT$(SLOT)"PROFILE">DEVICE0INSLOT$(SLOT)"DISK DRIVE"HDEVICE13INSLOT$(SLOT)"UNIFILE/DUOFILE"RJ\f LOOK FOR 80-COLUMN CARDp8zMACHID8MACHIDMACHID8WMACHID4MACHIDMACHID4MACHID2INSLOT$(3)"80-COLUMN CARD" PRINT SLOT ASSIGNMENTSIAPPLEIIE7" SLOT ";I;": ";INSLOT$(I):IΠĠԠҠРȠàż/`mm8`st Ȏ` Δ` ̙` XtHs ( LTs - tht% `ݽXHELP-XNOHELPɠàԠE+ : C,,ɛ CLɍ CL CH h : L/sȘLos戄i`VA਩ ȑL ȱJnJn) ȱ )> `ਹAX8`sݱ s lmSLYǘRTL]RǘTL]ǘTRSUPQLLN 8L `Hh`ǘ L "6ǘVȭ ȑ 3 뗰 C <LBDEF/HELPSCREENSսݽݽս  `ɖ L HHHH" hhhhL ) i ș !șL  Jȭ ȩ,p0ߍ`0 `L`      б в @M   &İ &İ .İ 2İ 7İ ?İ Cİ Iı Oı Sı Y   `Ɋ L HHHH"hhhh  0J X R`ԠҧӠԠΠԠŠҬl0! ! RԱ!GPQE (type BIN) to graphics screen 1. A8192 is the start address of the graphics screen. In the first case E16383 is the end address, in the second, L8192 is the length of the move in bytes. See HELP BINARY for the options. BLOAD (Imm & Def) Read binary data from a file Form: BLOAD pn [,A#] [,B#] [,L#|,E#] [,Ttype] [,S#] [,D#] Example: BLOAD /PIX/ICE,A8192,E16383 BLOAD /PIX/ICE,A8192,L8192 Both examples move a binary picture from /PIX/ICst value of [A#] is used. If [E#] used, it is the end address; if [L#] is used, it is number of bytes moved. [,B#] is the number of the first used byte in the file. Default is 0. The other options are used as usual. BINARY OPTIONS (not a command) Used with BRUN, BLOAD, BSAVE Each command transfers data between file and memory, according to options. pn must indicate a binary file (BIN) if [,Ttype] isn't used. [,A#] is the first memory address. If omitted, the laMNe an OPEN, POSITION to the end, followed by a WRITE. To APPEND a random-access text file, use [L#] to indicate the record length The other options are used as usual. APPEND (Deferred) Prepare to print at the end of a file Form: APPEND pn [,Ttype] [,L#] [,S#] [,D#] Example: APPEND /PROFILE/CHAPTER.3 This example opens /PROFILE/CHAPTER.3, and prepares to print at the end of the file. APPEND is likKHJLORUXZ]_bdfikmorvxz|~BRUN (Imm & Def) Run a binary program from a file Form: BRUN pn [,A#] [,B#] [,L#|,E#] [,S#] [,D#] Example: BRUN /VIDEO/LITESHOW This command causes the binary program in the file /VIDEO/LITESHOW (type BIN) to be moved into memory CLOSE (Imm & Def) Prevent further I/O to a file Form: CLOSE [pn] Example: CLOSE /THE/DOOR This example causes the file DOOR on the volume THE to be closed. pn indicates the file to be closed. If you omit pn, all open files are closed. The Cer part of the program. pn indicates a file of type BAS. [,@#] indicates the line of the program at which execution is to start. The other options are used as usual. CHAIN (Imm & Def) Run a BASIC program, save the variables Form: CHAIN pn [,@#] [,S#] [,D#] Example: CHAIN /SECURITY/ALARM.2 ,@500 This example runs the program in /SECURITY/ALARM.2 starting at line 500, preserving any variables used by an earliVWrectory S6, D2. This command shows the same items as CAT. In addition, it shows the date the file was created, the logical length of the file, and some subtype information. See HELP CAT. CATALOG (Imm & Def) Show an 80-column directory listing Form: CATALOG [pn] [,S#] [,D#] Example: CATALOG /BUDGET/JAN CATALOG, S6, D2 The first example lists the files in the directory /BUDGET/JAN; the second lists files in volume di If no options are used, the files in the prefix directory are listed. [pn] must indicate a directory; without [pn], files in drive [,S#] [,D#] are displayed. CAT shows filename, type, size, and modified date. CAT (Imm & Def) Show a 40-column directory listing Form: CAT [pn] [,S#] [,D#] Example: CAT /BUDGET/JAN CAT, S6, D2 The first example lists the files in the directory /BUDGET/JAN; the second lists files in volume directory S6, D2.STTH (type BIN). A8192 is the start address of the graphics page. In the top example, E16383 is the end address; in the other, L8192 is the length of the move in bytes. A#, L#, E# are optional after BSAVE if pn already exists. See HELP BINARY. BSAVE (Imm & Def) Save binary data in a file Form: BSAVE pn ,A# ,L#|,E# [,B#] [,Ttype] [,S#] [,D#] Example: BSAVE /PIX/TOOTH,A8192,E16383 BSAVE /PIX/TOOTH,A8192,L8192 Both save graphics screen 1 to the file /PIX/TOOand run. It is placed in memory starting at the address from which it was last BSAVEd. See HELP BINARY for an explanation of the options. LOSE command does a flush, then it removes all information about the file from memory (but not from the disk). This command MUST be used on all open files. Y`amust indicate a text file, type TXT. [F#] is the number of fields that should be read and discarded before execution of the file begins. The other options are used as usual. EXEC (Imm & Def) Read commands from a text file Form: EXEC pn [,F#] [,S#] [,D#] Example: EXEC /DISK2/MENU This example causes the sequential text file /DISK2/MENU to be used as the source of commands for BASIC rather than the keyboard. pn ^ecovered. pn is the pathname or partial pathname of the file to be removed. The file must be unlocked. If it is a directory file, it must be empty. The other options are used as usual. DELETE (Imm & Def) Remove a file from its directory Form: DELETE pn [,S#] [,D#] Example: PREFIX /LETTERS/GRANDMA DELETE OLD.FILE This example removes the file OLD.FILE from the directory /LETTERS/GRANDMA. A deleted file cannot be rile indicated by pn can be any type of program file. It can be a BASIC program (BAS), a binary program (BIN), an EXEC program (TXT), or a system program (SYS). The other options are used as usual. DASH (-) (Imm & Def) Run a BASIC, binary, or EXEC program, or run another system program Form: - pn [,S#] [,D#] Example: - ANY.PROGRAM This example runs the program in the file ANY.PROGRAM stored in the prefix directory. The program in the f[\reated. type is a 3-letter abbreviation that determines the created file's type. Abbreviations for the file types are listed in HELP FILE . The other options are used as usual. CREATE (Imm & Def) Create a new directory or file Form: CREATE pn [,Ttype] [,S#] [,D#] Example: CREATE /BIG/WIG This example creates a directory file (type DIR) with the path /BIG/WIG . pn is the pathname or partial pathname of the file to be cFILE TYPES (not a command) These are the file type abbreviations used by the commands CREATE, BSAVE, BLOAD, OPEN, APPEND ABBR FILE TYPE DIR Directory TXT Text BAS Applesoft Program VAR Applesoft Variables LOAD (Imm & Def) Get a BASIC program from a file Form: LOAD pn [,S#] [,D#] Example: LOAD /PROGRAMS/QUESTIONS This example brings the BASIC program /PROGRAMS/QUESTIONS into memory. Loading a program is just like typing NEW and then typing ighr input. Use either snum or A#, not both. snum is the slot for subsequent input, A# is the address of an input program whose first byte is a 6502 CLD instruction. IN# (Imm & Def) Get input from a slot or a program Form: IN# snum|A# Examples: IN#3 IN# A$300 The first example causes subsequent characters to be taken from the device in slot 3; the second causes the routine at $300 to be used foe, LOAD, RUN, SAVE Programming: CHAIN, STORE, RESTORE, PR#, IN# Text in Files: OPEN, CLOSE, WRITE, READ, APPEND, POSITION, FLUSH, EXEC Binary Files: BLOAD, BRUN, BSAVE HELP (a user-added command) To use, type: HELP XXX (XXX's below) Explanatory: HELP, SYNTAX, BINARY, FILE Using Files: CAT, CATALOG, PREFIX, CREATE, RENAME, DELETE, LOCK, UNLOCK BASIC in Files: - cf [pn] is omitted, all open files are flushed. After a file is flushed, you can be sure that every character printed to the file is stored on the disk. FLUSH (Imm & Def) Empty the buffers of an open file Form: FLUSH [pn] Example: FLUSH This example causes all open files to be flushed (except EXEC files). [pn] indicates the file to be flushed. It must be open for FLUSH to have any effect. I BIN Binary REL Relocatable Code * $F# User Defined SYS ProDOS System File SYS ProDOS System Program * # is an integer from 1 to 8 n the program. The file indicated by pn must contain a BASIC program (type BAS). The other options are used as usual. LOCK (Imm & Def) Protect a file from being renamed, written to or destroyed. Form: LOCK pn [,S#] [,D#] Example: LOCK /NESS/MONSTER ,S6 ,D2 This example locks the file MONSTER on the disk named /NESS which should be in slot 6, drive 2 (bupq pn must indicate an open text file. F# and R# have identical meanings. Each causes # fields to be read and discarded from pn. POSITION (Deferred) Read and discard a number of fields Form: POSITION pn ,F#|,R# Example: POSITION WORDLIST,F15 This example causes 15 fields to be read and discarded starting at the current file position of WORDLIST in the prefix directory.nccess text file whose records are 100 bytes long. pn indicates a text file (type TXT) unless [,Ttype] is used. A file's record length is set by [,L#] the first time the file is opened. The other options are used as usual. OPEN (Deferred) Open a file for reading or writing Form: OPEN pn [,Ttype] [,L#] [,S#] [,D#] Examples: OPEN /LETTERS/ACCEPTANCE OPEN /LIBRARY/BOOK,L100 The first opens a sequential text file; the second opens a random-alile indicated by pn can be any type of program file. It can be a BASIC program (BAS), a binary program (BIN), an EXEC program (TXT), or a system program (SYS). The other options are used as usual. - (DASH) (Imm & Def) Run a BASIC, binary, or EXEC program, or run another system program Form: - pn [,S#] [,D#] Example: - ANY.PROGRAM This example runs the program in the file ANY.PROGRAM stored in the prefix directory. The program in the fjt needn't be). pn is a pathname or partial pathname. You cannot LOCK a volume directory file (write protect the disk instead). The other options are used as usual. PR# (Imm & Def) Send output to a slot or a program Form: PR# snum|A#|snum,A# Examples: PR#1 PR# A$300 PR#1,A$C300 The first example causes subsequent characters to be sent to the device in slot 1; the second causes the roRUN (Imm & Def) Run a BASIC program from a file Form: RUN pn [,@#] [,S#] [,D#] Example: RUN BINGO ,@100 This example loads the file BINGO from the prefix directory, and then runs it beginning at line 100. pn must indicate a file of type Bwestore variables, ProDOS first removes all BASIC variables that were previously in memory. pn must indicate a file of type VAR. The other options are used as usual. RESTORE (Imm & Def) Get variables from a file Form: RESTORE pn [,S#] [,D#] Example: RESTORE /GAMES/HIPPO.VARS This example reads the variables from the file /GAMES/HIPPO.VARS and uses them for the program currently in memory. When you rt exist, and it must be unlocked. pn2 is the file's new pathname; it must not exist. pn1 and pn2 must be in same directory. The other options are used as usual. RENAME (Imm & Def) Change a file's name Form: RENAME pn1,pn2 [,S#] [,D#] Example: PREFIX /MYDISK RENAME OLD.NAME,NEW.NAME This example gives /MYDISK/OLD.NAME the new name /MYDISK/NEW.NAME pn1 is the file's old pathname; it musD to be read. After READ, INPUT and GET get data from pn until the next ProDOS command is issued. With random-access files, [R#] is the record to be read. [F#] and [B#] are the number of fields and bytes to skip before starting to read. READ (Deferred) Prepare an open file to be read Form: READ pn [,R#] [,F#] [,B#] Examples: READ MIND READ /OUT/LOUD,R25 The top example prepares MIND from the the prefix directory for reading. The other prepares record 25 of /OUT/LOUstueen. From program, no options: Next INPUT assigns Prefix to variable pn must indicate a directory file. If pn is "/", Prefix is empty, else Prefix is set to pn. [,S#] [,D#] without pn: Prefix set to the volume name of [,S#] [,D#] PREFIX (Imm & Def) Assign or view current Prefix Pathname = PREFIX + Partial Pathname Form: PREFIX [pn] [,S#] [,D#] Examples: PREFIX (Gets Prefix) PREFIX /EXAMPLES/PRACTICE From Immediate mode, No options: Prefix displayed on scrutine at $300 to be used for output; the third assigns slot 1 to slot 3. snum indicates the output slot; A# is the address of an output program whose first byte is a 6502 CLD instruction. If both snum and A# are used, snum is assigned a new I/O routine. AS. Without the [,@#] option, ProDOS starts running the program at its first line. With this option, ProDOS starts running the program at line #. The other options are used as usual. y-7) [,@#] BASIC line number pn = Pathname, partial pathname snum = Slot number (0-7) [,Ttype] type = File type abbrev. See: HELP FILE for file types; HELP BINARY for A#, B#, E#, L# SYNTAX of ProDOS command options [,A#] Address of 1st byte to transfer [,B#] Bytes to skip [,D#] Drive number (1-2) [,E#] End address for transfer [,F#] Fields to skip [,L#] Length of record [,R#] Record number in file [,S#] Slot of disk drive (1} type VAR. The values of these variables can be brought into memory using the RESTORE command. The other options are used as usual. STORE (Imm & Def) Save all variables into a file Form: STORE pn [,S#] [,D#] Example: STORE /GAMES/HIPPO.VARS This example places the names and values of all the BASIC variables that are currently defined into the file /GAMES/HIPPO.VARS, of{e or partial pathname of the file in which the program is to be saved. If pn already exists, it must be unlocked, and it must be type BAS. The other options are used as usual. SAVE (Imm & Def) Save a BASIC program to a file Form: SAVE pn [,S#] [,D#] Example: SAVE /CUSHION/WHOOPEE This example stores the BASIC program in memory into the BASIC program file (type BAS) /CUSHION/WHOOPEE on a disk. pn is the pathnamUNLOCK (Imm & Def) Remove protection from a LOCKed file Form: UNLOCK pn [,S#] [,D#] Example: UNLOCK /IMPORTANT/INFO This example unlocks the file INFO on the disk named /IMPORTANT. When a file is unlocked, it can be written to by a program, ren "I'M A PRACTICE PROGRAM"EXTRASuHUSTON!'  '$TIME A!AREAD.DIRECTORYA!A#APA Z ! ܨ-POSTAGE.RATES A!AAAPOKER.EXECAADATAuHUSTON!'  'FOUR.FRUITSAAVERB.LIST$AP TEXT!AA*BLACK.BOOKAA'PICTURE A ALISTFILEnAA&E.S.P.AALISTSELFAAMAKE.FRUITAAGET.FRUITAACONJUGATEAACONJUGEATEN AAPROGRAMSuHUSTON!' 'WHIZBOOM?AATWO.LINER1AAVERY.SHORTAAONERR.DEMOwAAPART1AAPART2!AALOCK.ME.1!AALOCK.ME.2!AALOCKED.UP.1!A!ALOCKED.UP.2!A!APRACTICEuHUSTON!' 'RENAME.ME.1!AARENAME.ME.2!AARENAME.ME.3!AADELETE.ME.1!AADELETE.ME.2!AADELETE.ME.3 to be written. After WRITE, PRINT sends characters to pn until a ProDOS command is issued. With random-access text files, [R#] is the record to be written. [F#] and [B#] are the number of fields and bytes to skip before writing. WRITE (Deferred) Prepare an open file to be written Form: WRITE pn [,R#] [,F#] [,B#] Examples: WRITE SOON WRITE /LY/SO,R26 The top example prepares SOON from the prefix directory to be written. The other prepares record 26 of /LY/SOamed or deleted. The other options are used as usual.  "I'M A PRACTICE PROGRAM" "I'M A PRACTICE PROGRAM" "I'M A PRACTICE PROGRAM" "I'M A PRACTICE PROGRAM" "I'M A PRACTICE PROGRAM" "I'M A PRACTICE PROGRAM" "I'M A PRACTICE PROGRAM" "I'M A PRACTICE PROGRAM" "I'M A PRACTICE PROGRAM" E.S.P.# : CLEAR SCREEN>D$(4): CONTROL-D `B$(7): CONTROL-G IS BELL z( GET A RANDOM NUMBER2I(10(1))<"I AM THINKING OF A NUMBER FROM 0 TO 9."F"DO YOU KNOW WHAT IT IS?": P"TYPE Q TO QUIT":"OR CHOOSE A NUM  PART2/"PART2: WRONG LINE NUMBER."745Y#"PART2: RIGHT LINE NUMBER."l-"PART2: ";I$  PART1% D$(4): CONTROL-DID$;"PREFIX /EXAMPLES/PROGRAMS"nI$"THE STRING I$ IS PRESERVED."("PART1: I$ HAS BEEN SET."2D$;"CHAIN PART2,@35"NAME ";F$;",";N$% D$;"LOCK ";N$+ M "ERROR #";(222);" DETECTED"o "AT LINE ";(218)(219)256u  ONERR.DEMO* D$(4): CONTROL-D4100O"FILE TO RENAME? ";F$d("NEW NAME? ";N$2D$;"RENAME ";F$;",";N$<d(222)10200n"FILE IS LOCKED. RENAME ANYWAY? (Y/N) ";Y$xY$"Y"Y$"y"ĀD$;"UNLOCK ";F$ D$;"RE "A VERY SHORT PROGRAM" "I'M LINE 10. ";/"I'M LINE 20. ";  WHIZBOOM I1800"WHIZBOOM ";7I=( BER FROM 0 TO 9 -> ";< Z GET THE NUMBER, CHECK FOR QUITa dN$:N$::(N$"Q")(N$"q")200~ n CHECK FOR VALID NUMBER x(N$"0")(N$"9")ĺB$;"NUMBERS ONLY, PLEASE."::80 N(N$): CHANGE LETTER TO NUMBER GG1: ADD ONE TO TOTAL GUESSECONJUGEATAAUSE.SUBAA)MAKE.TEXT9AAGET.TEXTAA'ADDRESSRAAMAKE.BLACK.BOOKAA)EXEC.DEMORB.LIST" CONJUGEATEN+ D$(4): CONTROL-DJR$(13): CARRIAGE RETURNUC$","u(D$;"PREFIX /EXAMPLES/DATA"2D$;"OPEN VERB.LIST"<D$;"READ VERB.LIST"FA1$,A2$,A3$,A4$,A5$,A6$PA1$;C$;A2$;C$;A3$;R$;A4$;C$;A5$;C$;A6$ ZD$;"CLOSE VE CONJUGATE D$(4)=D$;"PREFIX /EXAMPLES/DATA"VD$;"OPEN VERB.LIST"p(D$;"WRITE VERB.LIST"2"DRINK,DRANK,DRUNK"<"THINK,THANK,THUNK"FD$;"CLOSE VERB.LIST" GET.FRUIT) D$(4): CONTROL-DHR$(13): CARRIAGE RETURNhD$;"PREFIX /EXAMPLES/DATA"(D$;"OPEN FOUR.FRUITS"2D$;"READ FOUR.FRUITS"<I03F:A$(I)P:A$(I)ZIdD$;"CLOSE FOUR.FRUITS" MAKE.FRUIT D$(4)>D$;"PREFIX /EXAMPLES/DATA"YD$;"OPEN FOUR.FRUITS"x("THIS GOES TO THE SCREEN"2D$;"WRITE FOUR.FRUITS"<"APPLE"F"BANANA"P"CANTALOUPE"Z"DATE"dD$;"CLOSE FOUR.FRUITS" PROGRAM LISTSELF2 D$(4): CONTROL-DRD$;"PREFIX /EXAMPLES/DATA"jD$;"OPEN LISTFILE"(D$;"WRITE LISTFILE"2<D$;"CLOSE"S. NISS1:"YOU GUESSED IT!!";B$:170V "NICE TRY. THE NUMBER WAS ";I;"." :"YOU HAVE GUESSED ";S;" NUMBERS IN ";G;" TRIES." "THAT IS ";100SG;" PERCENT." :50  AANEW.PROGRAMYAAAWAYiAAMAKE.DOITAADOIT.EXEC,AAPOKERAASTARTUP Ap CONJUGEATEN+ D$(4): CONTROL-DJR$(13): CARRIAGE RETURNjD$;"PREFIX /EXAMPLES/DATA"(D$;"OPEN VERB.LIST"2D$;"READ VERB.LIST"<A1$:A2$FA1$;R$;A2$PD$;"CLOSE VERB.LIST"00 xC2İ2000 C3Ā& 30;  READ NEW INFOT "NAME: ";N$m "ADDRESS: ";A$ "CITY: ";C$ "STATE: ";S$ "ZIP CODE: ";Z$ $"PHONE: ";P$ .D$;"OPEN ";F$;",L200" 8D$;"READ ";F$;",  D$(4)0F$"/EXAMPLES/DATA/BLACK.BOOK"6Z("WHAT WOULD YOU LIKE TO DO?":z2" 1 ENTER A NEW ADDRESS"<" 2 LOOK UP AN ADDRESS"F" 3 END":P"TYPE A NUMBER AND PRESS RETURN ";C$ZC(C$):dC1C3ī30 nC1İ10D$;"READ ";N$ xI1100/ I;": ";:10006 IL :D$;"CLOSE ";N$T :a C$:C$;n C$R$ı A$(I)A$(I)C$ 1000  150(A$(100): 100 LINES MAX4D$(4)A(R$(13)I2:i7D$;"PREFIX /EXAMPLES/DATA"<"LIST WHAT TEXT FILE? ";N$F:"TYPE: CONTROL-S TO STOP LISTING"P" ANY KEY TO CONTINUE"Z::34,6dD$;"OPEN ";N$ n C$:C$; C$R$ı- A$(I)A$(I)C$7 1000E" d:34,6: SET WINDOW0 nII1:I;": ";: x1000M A$(I)""110m D$;"PREFIX /EXAMPLES/DATA" "SAVE TO WHAT FILE? ";N$ (N$)0ī230 D$;"OPEN ";N$ D$;"WRITE ";N$ J1I1 :A$(J) J D$;"CLOSE ";N$ :  A$(100): 100 LINES MAX6D$(4): CONTROL-DUR$(13): CARRIAGE RETURN](:2" TEXT FILE CREATOR"<:"TO ADD A LINE:"F:" ENTER CHARACTERS, AND PRESS RETURN"P:"TO END:" Z:" PRESS RETURN ON AN EMPTY LIN: START AT A$(0), II1: NEXT ELEMENTE C$: READ CHARACTERW C$","ī1010d C$R$ı A$(I)A$(I)C$: ADD TO ARRAY ELEMENT $1020 USE SUBROUTINE. D$(4): CONTROL-DMR$(13): CARRIAGE RETURNmD$;"PREFIX /EXAMPLES/DATA"(D$;"OPEN VERB.LIST"2D$;"READ VERB.LIST"<1000FD$" CLOSE VERB.LIST"PJ1IZ:A$(J)dJn READ A FIELD I0R0" BTR:TRTR11 LD$;"WRITE ";F$;",R";TRA VN$:A$:C$Q `S$:Z$:P$k jD$;"WRITE ";F$;",R0"s tTR ~D$;"CLOSE ";F$  D$;"OPEN ";F$;",L200" D$;"READ ";F$;",R0" TR: GET # OF RECORDS TR0ī2210  "WHOSE ADD"PRINT"Q$"YOU CAN DISPLAY A DIRECTORY..."Q$O"FOR X=1 TO 4000:NEXT X"y"RUN /EXAMPLES/PROGRAMS/NEW.PROGRAM""PRINT"Q$"AND RUN PROGRAMS."Q$"FOR X=1 TO 4000:NEXT X""PRINT"Q$"DONE SHOWING OFF."Q$D$;"CLOSE" "IT'S D"1 T"PRINT"Q$"AND THEN SAVE IT TO A FILE!"Q$^ ^:"SAVE /EXAMPLES/PROGRAMS/NEW.PROGRAM"i h"HGR" r"BLOAD /EXAMPLES/DATA/PICTURE" |"PRINT"Q$"YOU CAN EVEN DISPLAY PICTURES!!"Q$ "FOR X=1 TO 4000:NEXT X:TEXT""CAT /EXAMPLES/PROGRAMS"1 5"7 "110 PRINT";Q$;"THIS IS A PROGRAM CREATED"Q$l "120 PRINT";Q$;"ENTIRELY BY AN EXEC PROGRAM."Q${ ""130 END" ,"PRINT"Q$"YOU CAN LIST THE PROGRAM..."Q$ 6"LIST" @"PRINT"Q$"PAUSE TO LOOK AT THE LISTING."Q$ J"FOR X=1 TO 8000:NEXT X$:A$"Q"A$"q"Ā+ A$" "ĺB$;:190O :"CREATING SHOWOFF.EXEC...":s D$;"PREFIX /EXAMPLES/PROGRAMS" D$;"OPEN SHOWOFF.EXEC":D$;"WRITE SHOWOFF.EXEC" 1000 "PRINT"Q$"YOU CAN ENTER LINES OF A PROGRAM."Q$ :"100 TEXT:HOME:VTABSIC PROGRAMMING WITH PRODOS";Q$P "DESCRIBES THE PROGRAM IN MORE DETAIL.":x " << HAPPY EXECUTING >>": "PRESS THE SPACE BAR TO MAKE THIS" "PROGRAM CREATE THE FILE SHOWOFF.EXEC .": "PRESS Q TO STOP THIS PROGRAM NOW. "; ALE II COMMAND.":( F"WHEN YOU TYPE"F P" EXEC SHOWOFF.EXEC"s Z"THE COMMANDS IN THE FILE SHOWOFF.EXEC" d"TAKE CONTROL OF YOUR COMPUTER. EACH" n"COMMAND IS EXECUTED JUST AS IF IT HAD" x"BEEN TYPED IN FROM THE KEYBOARD. "! Q$;"BA EXEC.DEMO& D$(4):Q$(34)P:" << EXEC DEMONSTRATION >>":~"THIS PROGRAM CREATES A SEQUENTIAL TEXT"("FILE NAMED ";Q$;"SHOWOFF.EXEC";Q$;". EACH STRING"2"THAT IS PLACED IN SHOWOFF.EXEC BY THIS" <"PROGRAM IS A LEGAL APP  D$(4);D$;"OPEN /EXAMPLES/DATA/BLACK.BOOK,L200"hD$;"WRITE /EXAMPLES/DATA/BLACK.BOOK,R0"o(02D$;"CLOSE" Z$:P$ D$;"CLOSE ";F$' 23:8J "PRESS RETURN TO CONTINUE";T$P  RESS DO YOU WANT? ":# I1TR> :D$;"READ ";F$;",R";IG :N$R *:I,N$Y 4Ic >D$: H"TYPE A NUMBER AND PRESS RETURN ";R$ RR(R$) \R1RTRī2120 f pD$;"READ ";F$;",R";R zN$,A$,C$,S$,Z$,P$ N$:A$ C$,S$ ONE!!!"::"YOUR APPLE IS READY TO SHOWOFF A LITTLE"d"BIT. ALL YOU HAVE TO DO IS TYPE":" EXEC /EXAMPLES/PROGRAMS/SHOWOFF.EXEC":&"PRESS THE RETURN KEY, AND ENJOY.":0"OH, BY THE WAY. IF YOU WANT TO SEE THE":"COMMANDS IN THE FILE SHOWOFF.EXEC, USE"ED"GET.TEXT FROM CHAPTER 6. TYPE":_N" RUN GET.TEXT":X"AND WHEN IT ASKS FOR A FILENAME, JUST"b"TYPE IN":l" /EXAMPLES/PROGRAMS/SHOWOFF.EXEC"E(222): GET ERRORfE4Ģ5:B$;B$;"YOU CALLLӍL֍LI;73-)# ,񋅋L=s BA& hi ĩƧeեi8LRȩPQSTUƧA3 d:COUNTERCOUNTER15 n:COUNTER10COUNTER1J x:COUNTER1150^ ::LINENUMBER;{ :LINENUMBERLINENUMBER1 :" POKE ";PLACE;",";(PLACE);" :"; PLACE D$;"CLOSE POKER.EXEC"  MACHINE LANGUAGE POKER6 D$(4): CONTROL-DVD$;"PREFIX /EXAMPLES/DATA"pD$;"OPEN POKER.EXEC"(D$;"CLOSE POKER.EXEC"2D$;"DELETE POKER.EXEC"<D$;"OPEN POKER.EXEC"FD$;"WRITE POKER.EXEC"PLINENUMBER7000 ZPLACE76878PREFIX /EXAMPLES/PROGRAMS CAT RUN AWAY LIST  MAKE.DOIT) D$(4): CONTROL-DMD$;"PREFIX /EXAMPLES/PROGRAMS"fD$;"OPEN DOIT.EXEC"(D$;"WRITE DOIT.EXEC"2"PREFIX /EXAMPLES/PROGRAMS"<"CAT"F"RUN AWAY"P"LIST"ZD$;"CLOSE DOIT.EXEC"  AWAY% "A WAY TO JOURNEY,":"A WHALER JOE."T"AWEIGH THE ANCHOR,"g("AWAY WE GO." d::5-n"THIS IS A PROGRAM CREATED"Qx"ENTIRELY BY AN EXEC PROGRAM."WNNOT RUN THIS PROGRAM ON A WRITE":"PROTECTED DISK. MAKE A COPY OF THE DISK":"AND TRY AGAIN.":1100E9ĺ"YOUR DISK IS FULL. DELETE SOME OLD":"FILES AND TRY AGAIN.":1100"ERROR"LD$"CLOSE": HHɠȰɍX Q ʩPQɠȰɍ }LoɬH) t(hɺ# Ȑ }ɍ ``hhLNPQ` ☥gPhQ ۗ `έ "ӍJK 1д  1 `ɍɀɠ)?HKh @hlJH  Ah#JJ LN VLM H   h`lL` ROɠK t ʎNJJJJ)   و֭穠$`ɘN `ɍ/N *mm  A`LxH  h PRINT"YOU CAN ENTER LINES OF A PROGRAM." 100 TEXT:HOME:VTAB 5 110 PRINT"THIS IS A PROGRAM CREATED" 120 PRINT"ENTIRELY BY AN EXEC PROGRAM." 130 END PRINT"YOU CAN LIST THE PROGRAM..." LIST PRINT"PAUSE TO LOOK AT THE LISTING." FOR X=1 TO 8000:NEXT X PRINT"AN CAPTURED$(4)7D$;"OPEN LISTING.EXEC"TD$;"WRITE LISTING.EXEC"b10,32000D$;"CLOSE LISTING.EXEC"CAPTUREAA,SHOWOFF.EXECdAAkȱHȱkhk ̔ t k ̔ t $% ̔( | k k`MLNHHHhhh`0: A[`8`mnRikeׅjli1 땰 ׈k ⥜ۥklЪ`k`׈HkQQȱ ٥st 6ȑ gL? k  LP `LN ץgh`stopijkmln` ̔Ƀ ɲ |` ̔: [ք "" [L`H hXsitjsmg ՓȱLޓ ՓȱPȱQ s kPȱkQP ՓQ Փȱ ՓHhk  s kPȱkQ xȌȹNJJJJ)  ) Փۈح,В ՓLk L` ՓghPQLȱPPț `PPQ ,ȱPȱQPQPťQ妰ƠΥghiFH   s kPȱkQPQŒɬкɠ# ` d'smtnMLNgms 68minj8 )) ũ媰 LNd ץPQ TȥћȥH MLNkȑkȥkȥk `eeimjn`ikũ媰MghLSȱPȱQPQjPũQ媰PťQ妰  , H  h`sog^⥙ 6LɐLِљ,љ#ȱ ȱȱȱȱ ůДL?st < ^ikm`)PPLzLNg `  gh^_sŖt嗐MLN 6s8t& `LN  ` ^_MLN ghIEљ%/Qљ(!P$ 0 ȱ ȱ $m  L( 8寅P尅Q  ۗ `ɍQɤRɭȩPQɰ9ɺ5 @.ȹɍ䥥ɭQIQPIiPQ  ۗ `LNȢ0 ȹɍ" ɰɺѝ ȹɍI Hh  Q)QQ P `ԠƪLN ghנC6 Ȑ  s "MLNPkȥQk,ȰТ ghȱTȱPȱQȱ3ɲȱ  :  sȩ <ikD THEN SAVE IT TO A FILE!" SAVE /EXAMPLES/PROGRAMS/NEW.PROGRAM HGR BLOAD /EXAMPLES/DATA/PICTURE PRINT"YOU CAN EVEN DISPLAY PICTURES!!" FOR X=1 TO 4000:NEXT X:TEXT CAT /EXAMPLES/PROGRAMS PRINT"YOU CAN DISPLAY A DIRECTORY..." FOR X=1 TO 4000:NEXT X RUN /EXAJOE SMITH 23 MAIN STREET ANYTOWN NEW YORK 10116 (345) 678-9101 6-2157 (408) 296-2157 BOB BLEICHER 1192 HIGHLAND AVE SANTA CLARA CALIF 95050 (408) 296-2157 0 PERSON 1 HERE AND THERE CUPERTINO CA 95014 NONE IF 95050AF ASDFSDAFASDF SADFASDFASDFSDAF THIS IS LINE ONE THIS IS LINE TWO THIS IS LINE THREE THIS IS LINE FOUR THIS IS LINE FIVE AF SDAFSDA FSDAF SDAFSADFSDAF SDAFSADFSDA FSDAFSDAFSDAF ASDFASDFSAD FSADFASDF SADFASDFSDA FSADFSDAF ASDFSADF SDFSADFASDF SADFASDF SADFSADF ASDFSDAF ASDFASDF ASDFSDAFSDDRINK,DRANK,DRUNK THINK,THANK,THUNK APPLE BANANA CANTALOUPE DATE MPLES/PROGRAMS/NEW.PROGRAM PRINT"AND RUN PROGRAMS." FOR X=1 TO 4000:NEXT X PRINT"DONE SHOWING OFF." 3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL1%hU 3fL3fL3fL3fLP*B"t*U*U :UjU|3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fLU*P*2fL3fL3@L3fLU.U2UjU*W(]*u*U+U.Q:UjU|~$@+!fL3fLЃժՂ[OH0ժ-P" a3fL3fL3fL3fL3fLW3fL3fL3fL3fL3f **E*U*UU*U;UBx?V|U*Q**E*U(U DPnU:Wp"D"D"D"D"D"D"D"O(O3fL3fL3fL3fL3fLa1W3fL3fL3fL3fL!U UU*T*U T*U*U*U*W|3`L3fL3f D"D"D"D"D"D"D"D"D"D"ʩ3fL3fL3fL3fL3fL3FL3fL3fL3fL3fL3fL3f U*3R@0f P:cL3B U(Q T fLDDU:WED;UnU:W (] p@"("`)O3fL3fL3fL3fL3fLRB3fL3fL3fL3fL3fLH T(U*U*P*E*A(X0V|?L@*(*Q*E*LDlU:Wj] &D"U;UnU:Wj]*w*]+"@"_ OJ3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3&L3fL3&@U:Qj%fL3fL3fL.U;UbU:Wj*w*]+u.U;TnU:WJp?+u.U3D"e Comput3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fLTB3fL30T @jfL3f Q"Q"2fL.U;UNU:WjY*w*]+u.UUnU W ~@"Dl "3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fLa8W 3fL3fL3fL3fL30!P "A]`*]+u.UBnU:W|3fL3fL3fLuUiI 3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fL3fLlU:A*2fL3fL3DL3fL,U;UlU:Wj](w*]+u.U;QnU:W|3\+p.d2fLTX4@l蝺ݻݻժѻͻݛ" ݣݻݻݻݻժՂ 8ݻћAoݻժݹѻ.code ժ̇@xfull%,Ёѣժ" +"y݃ժ0035&8'ժ left co3fL3fL3fL3fL3fLE3fL3fL3fL3fL3f P (E*U*U T (U.ExA$H18:2:BL$RA$(A$):A$;! :DD31DD1545' <@ > GET MONTH INTO M1$F @i D23:"MMM";:23:COUNT1:M1$"" IA$:M1$M1$A$:A$;:MM4 KM1$(MO$,MM,COUNT)ī595 LMMMM3:MM39ī587 M580 SCOUNTCOUNT1:COUNT4ī585 XMM(MM1)3 -D TIME? Y/N "; A$( 18:2:BL$A A$"N"A$"n"Ģ22:I 13n " ENTER DATE: DD-MMM-YY";t   -READ DAY INTO DD  !20:"DD";:20 &A$:(A$"0")(A$"3")545 +DD(A$):A$; 0A$:(A$"0")(A$"9")545 5DDDD10 ^DD;"-"; cMM$;"-";- hYY10ĺ"0";5 rYY; |W " TIME: ";~ HH12MI0DD0ĺ"":460 HH10ĺ"0"; HH;":"; MI10ĺ"0"; MI; PM1ĺ" PM" PM0ĺ" AM" 18 " UPDATE SYSTEM DATE AN $ - CONVERT 24 HOURS TO 12* : HH11PM1N HH12HHHH12^ HH0HH12 " THE CURRENT SETTINGS ARE:" :  "- PRINT DATE AND TIME , 6" DATE: "; @DD0ĺ"":380 TDD10ĺ"0";ITY *" FS2$:S1$! P10' Z? d- READ SYSTEM DATEE ng xDD(49040)((49040)32)32| YY((49041)2) MM((49041)YY2)8((49040)32) MM$(MO$,MM31,3) - READ SYSTEM TIME MI(49042) HH(49043)2 BL$" "dS1$"***************************************"S2$"* *"#MO$"???JANFEBMARAPRMAYJUNJULAUGSEPOCTNOVDEC"(2S1$:S2$ <"* SYSTEM DATE AND TIME UTIL 7000 POKE 768,1 : POKE 769,2 : POKE 770,0 : POKE 771,0 : POKE 772,0 : POKE 773,0 : POKE 774,0 : POKE 775,0 : POKE 776,0 : 7001 POKE 777,0 : POKE 778,0 : POKE 779,0 : POKE 780,0 : POKE 781,0 : POKE 782,0 : POKE 783,0 : 5 REM PROGRAM LISTSELF 10 D$ = CHR$ (4): REM CONTROL-D 20 PRINT D$;"PREFIX /EXAMPLES/DATA" 30 PRINT D$;"OPEN LISTFILE" 40 PRINT D$;"WRITE LISTFILE" 50 LIST 60 PRINT D$;"CLOSE" ܛܻݻݻժE B B`лЃݹݛժB "N"A$"n"510+\13:8:" ":15:8If"ENTER TIME: HH:MM AM";Opgz-READ HOUR INTO HHm20:"HH";:20A$:(A$"0")(A$"1")910HH(A$):A$;A$:(A$"0")(A$"9")910HH10HH(A$):A$;HH12HH1910-READ MINUTE INTO MI"523:"MM";:23UA$:(A$"0")(A$"5")1000gMI(A$):A$;A$:(A$"0")(A$"9")1000MI10MI(A$):A$;MI591000$.-GET AM OR PM8B27"LP$:(P$"A")(P$"a")(P$"P")(P$LLLӍL֍LI;73-)# ,񋅋L=s BA& hi ĩƧeեi8LRȩPQSTUƧA9h'h(`7H6H%6&7h%h&`L #%.#%4=HQZ=c4=qu}INVALIPROGRALENGTH I BYTESAVENHOLD FILIN USDUPLICATLINE NUMBEINCREMENTOO LARGCONTINUEINTERLEAVED OLINTOO LONON HOL0$: PQ hh `ȱ0:8`` `8喨嗪ʘ ^8^Ɯ8^ƚ`ikjlkmln`kP ȱkQ`keׅklץnlmkeׅmnsmtn`8u`H hHH-UH h hh` `l09H8H'8(hh` `l09H8HL8M9hLhM`7H6HJ6K7hJhK`L #%.#%4=HQZ=c4=qu}INVALIPROGRALENGTH I BYTESAVENHOLD FILIN USDUPLICATLINE NUMBEINCREMENTOO LARGCONTINUEINTERLEAVED OLINTOO LONON HOL$`ı0$: PQ hh `ȱ0:8`` `8喨嗪ʘ ^8^Ɯ8^ƚ`ikjlkmln`kP ȱkQ`keׅklץnlmkeׅmnsmtn`8u`sotpikmjln `H hHHRzH h ^e^^_` Q*P*QP . .ePPeQQ )ePPQ`QP*,QP . .ePPeQQ )ePPQiQ`PQPQ.u0؈` xNJJJJ) ۭ`   PQ A `hk`8iׅkjl 2 ɠ ߩ = $iH!)hi)h!  ׈PQ ׈k nLmL ` ʘg^h_^1^ hh`8e^^e_ȑ^^_^_ː؈ D$(4)+ D$;"OPEN /EXAMPLES,TDIR"DD$;"READ /EXAMPLES"^L1$:L1$: READ NAMEy(L2$:L2$: READ TITLE2L3$:L3$: READ BLANK LINE<L4$:L4$: READ FILESFL4$""ī60PL5$:L5$: READ BLOCK COUNT ZD$;"CLOSE /EXAMPLES".<" (DOES NOT SET CLOCK/CALENDAR CARDS)"4F49041,YY2(MM7)<MM7Ĺ49040,(MM8)32DDVMM8Ĺ49040,MM32DD\-UPDATE SYSTEM TIME (24 HOUR CLOCK) HH12HH0P$"P"P$"p"HHHH12(49043,HH:49042,MI2:20:" SYSTEM DATE AND TIME UPDATED":"p")(P$" ")(P$(13))1090?V(P$"P")(P$"p")ĺ"P";E``j-REPEAT UNTIL CORRECTft~18:2:" CORRECT? Y/N ";A$18:2:BL$(A$"N")(A$"n")120086015:8:" "-UPDATE SYSTEM DATE HHɠȰɍX Q ʩPQɠȰɍ }LoɬH) t(hɺ# Ȑ }ɍ ``hhLNPQ` ☥gPhQ ۗ `έ "ӍJK 1д  1 `ɍɀɠ)?HKh @hlJH  Ah#JJ LN VLM H   h`lL` ROɠK t ʎNJJJJ)   و֭穠$`ɘN `ɍ/N *mm  A`LxH  h Q TC$"4"ė:. ^(C$)0(C$)4380> h(7);(7);G r330O |C$[ C(C$)a z  GET WEIGHT OF ITEM  16H "PLEASE ENTER THE WEIGHT OF THE PACKAGE: FOLLOWED BY AN 'O' IF IN OUNCES, OR BY A 'P' IF IN POUNDS. (FOR EXAMPLE, 2 21(TITLE$)2" TITLE$) 6: "1. EXPRESSO "2. FIRST CLASSb "3. PRIORITY h "4. END THE PROGRAM , 1 GET CLASS OF MAIL 3 614 @"PRESS THE NUMBER OF YOUR CHOICE: "; JC$ O P CHECK FOR VALIDITY  POSTAGE RATES9 DETERMINES POSTAGE FEESV( FOR EXPRESS, 1ST CLASSn2 AND PRIORITY MAILt7< V2 09/01/82F BY JOHN SCRIBBLEMONGER Kd MENU OF POSTAGE CLASSESik(21)nxTITLE$"POSTAGE RATES" kȱHȱkhk ̔ t k ̔ t $% ̔( | k k`MLNHHHhhh`0: A[`8`mnRikeׅjli1 땰 ׈k ⥜ۥklЪ`k`׈HkQQȱ ٥st 6ȑ gL? k  LP `LN ץgh`stopijkmln` ̔Ƀ ɲ |` ̔: [ք "" [L`H hXsitjsmg ՓȱLޓ ՓȱPȱQ s kPȱkQP ՓQ Փȱ ՓHhk  s kPȱkQ xȌȹNJJJJ)  ) Փۈح,В ՓLk L` ՓghPQLȱPPț `PPQ ,ȱPȱQPQPťQ妰ƠΥghiFH   s kPȱkQPQŒɬкɠ# ` d'smtnMLNgms 68minj8 )) ũ媰 LNd ץPQ TȥћȥH MLNkȑkȥkȥk `eeimjn`ikũ媰MghLSȱPȱQPQjPũQ媰PťQ妰  , H  h`sog^⥙ 6LɐLِљ,љ#ȱ ȱȱȱȱ ůДL?st < ^ikm`)PPLzLNg `  gh^_sŖt嗐MLN 6s8t& `LN  ` ^_MLN ghIEљ%/Qљ(!P$ 0 ȱ ȱ $m  L( 8寅P尅Q  ۗ `ɍQɤRɭȩPQɰ9ɺ5 @.ȹɍ䥥ɭQIQPIiPQ  ۗ `LNȢ0 ȹɍ" ɰɺѝ ȹɍI Hh  Q)QQ P `ԠƪLN ghנC6 Ȑ  s "MLNPkȥQk,ȰТ ghȱTȱPȱQȱ3ɲȱ  :  sȩ <ik.7 P OR 11 O.) AFTER ENTERING THE WEIGHT, PRESS THE RETURN KEY. ";R 868] "";W$m W1$(W$,1)y &W(W$) + WAS ENTERED WEIGHT VALID? 0W0(W1$"O"W1$"P")710 :(7);(7) D500   CHECK CONSISTENCY $ C10000,11000,120004 EFLAG910J 60000: KEYSTALLV EFLAG0\ e 100k   FIND APPROPRIATE CODE  C1000,2000,3000 61000: FORMATTER    DISPLAY RESULTS  "POSTAGE NEEDED: $ ";T$ DIRECTORYuHUSTON!' 'AARELOC.CODEAAUSER.DEFINER.1AADIRECTORYuHUSTON!'  'DIRECTORYAATEXTAAAPPLESOFT.PROGAAAPPLESOFT.VARSAASYSTEM.PROGRAMAABINARYRT$(T)&\T(T)T$T$".00"Cf((T$,2))46T$T$"0"Ip0 SEE CHAPTER EIGHT OF THE APPLESOFT REFERENCE MANUAL FOR A COMPLETELY DOCUMENTED VERSION OF THIS PROGRAM $OR PRIORITY MAIL - "BX/"TRY ONE OF THE AIR EXPRESS COMPANIES"Nb/EFLAG1Tv/Z]q^ UTILITY ROUTINESw_}`a KEYSTALLbj24t~"PRESS THE RETURN KEY TO CONTINUE...";A$HJ MONEY FORMATTERKL"*+EFLAG14+.7. PRIORITY MAIL VERIFY=.P.W1$"P"12090`.W1212080f./(7);(7);"TOO LIGHT FOR PRIORITY MAIL - "/"TRY FIRST CLASS"/EFLAG1&/121500/WW16:/W7012150D/N/(7);(7);"TOO HEAVY F'WW16t'WX10140~'h'(7);(7);"TOO HEAVY FOR MY TABLES - PLEASE CALL THE POST OFFICE"t'EFLAG1z'** FIRST CLASS VERIFY*+W1$"O"W12.0111060 ++(7);(7);"TOO HEAVY FOR FIRST CLASS" +"TRY PRIORITY MAI12T2.95 W13T21.420 W14T21.90< TT1T2B H'c' EXPRESS MAIL VERIFYi'' 9.35,9.35,9.55,9.90,10.30,10.65,11.00,11.40,11.75,0 $'X0.'XX18'R(X)B'R(X)010070L'10030V'XX1`'W1$"P"10100 j.73 W4.5W5T3.971 W5W6T4.44F& W6W7T4.92[0 W7W8T5.39p: W8W9T5.87D W9W10T6.35N 3240X Y PRIORITY RATES OVER 10 LBSZ b T1(W51)2.383.97l W1W(W5)5v W11T2.47  WON   W(W.99)( W103160. M PRIORITY RATES TO 10 LBSS d W1T2.24{ W1W1.5T2.30 W1.5W2T2.54 W2W2.5T2.78 W2.5W3T3.01 W3W3.5T3.25 W3.5W4T3.49 W4W4.5T360000: KEYSTALL $ 100* D  SUBROUTINES FOLLOWJ P o  EXPRESS MAIL CALCULATIONu  W(W.99) TR(W)    FIRST CLASS CALCULATION  T.20(W.991).17   PRIORITY MAIL CALCULATI`ı0$: PQ hh `ȱ0:8`` `8喨嗪ʘ ^8^Ɯ8^ƚ`ikjlkmln`kP ȱkQ`keׅklץnlmkeׅmnsmtn`8u`sotpikmjln `H hHHRzH h ^e^^_` Q*P*QP . .ePPeQQ )ePPQ`QP*,QP . .ePPeQQ )ePPQiQ`PQPQ.u0؈` xNJJJJ) ۭ`   PQ A `hk`8iׅkjl 2 ɠ ߩ = $iH!)hi)h!  ׈PQ ׈k nLmL ` ʘg^h_^1^ hh`8e^^e_ȑ^^_^_ː؈hh` `l09H8HL8M9hLhM`7H6HJ6K7hJhK`L #%.#%4=HQZ=c4=qu}INVALIPROGRALENGTH I BYTESAVENHOLD FILIN USDUPLICATLINE NUMBEINCREMENTOO LARGCONTINUEINTERLEAVED OLINTOO LONON HOL$