LnSOS BOOT 1.1 SOS.KERNEL SOS KRNLI/O ERRORFILE 'SOS.KERNEL' NOT FOUND%INVALID KERNEL FILE: xةw,@  ȱlmi8#)!) /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// SIG, Washington Apple Pi 12022 Parklawn Drive Rockville, MD. 20852 (301)-984-030`READ.ME.FIRST|78/ *MENU.MAKER l }0>*SOS.DRIVER o40Z%SEG.T j0Ÿ/ *SOS.INTERP 4ke! *SOS.KERNEL @,V!aSUTHARD.166III.MSC.031061Au' BLOOM,,CROM77DISKNAME.DAT!FLASHNAME.DATG *HELLO.TEXTQ0'HELLO >dLԡm#i㰼m#iЕOLԡȱfg hi !dLԡ憦  Ljmkm l y`2 Lԡ8(Je稽)ʈ@L0 WELCOME! WAP /// SIG Public Domain Library Disk Category/Number: Miscellaneous/3MSC-03 Disk Format: Self-booting (Side A) This is our second public CONV&CONV$CONV%LEFT$RIGHT$MID$INSTR>=<^/*-+NEXT WITHOUT FOSYNTARETURN WITHOUT GOSUOUT OF DATILLEGAL QUANTITOVERFLOOUT OF MEMORUNDEF'D STATEMENBAD SUBSCRIPRANGINVOKSTACK OVERFLOREDIM'D ARRADIVISION BY ZERILLEGAL DIRECTYPE MISMATNDEELSCONLISCLEAGENETABTSPCUSINTHEAMOSTEANOEXTENSIODIAFNOAAAAAAAAAAAAAASGNINTABSATYPRECAAAAAAAAAAPDLBUTTONSQRRNDLOGEXPCOSSINTANATNAAAAAAAAAAAASTR$HEX$CHR$LENVALASCTENAACONVOERRLIERKBEOTIMEDATEPREFIXEXFNEXFN%OUTREINDENAAAAAAAPOHOMA SUB$OFTRACNOTRACNORMAINVERSSCALERESUMALEGOTIRESTORSWAGOSURETURRESTOOALOASAVDELETRURENAMLOCUNLOCCREATEXECHAIAAACATALOAADATIMAGCADEAPRIssssssssss\3!z~IssssssssssssIG%ӓ,ssևwn7}|tttUUZ{fzxxˆU膅[L<^ENFONEXINPUOUTPUDIREAWRITOPECLOSATEXABYAAAAAWINDOINVOKPERFORAAFRHPOVP̠Ώ h:gpOn[n٧s]ds3issssssss0b>&dsjs|T}|s[  !"#$%&'()*+,-./0123456789:;<=>ŭ᭭򭭪𭭠򠭠頭퀠Šӳ頠𠠀𠠠堠젭ӠΠSOS NTRPRHeLZĠР쁭堠堠ՠP򠭠έ魭HER SUBROUTINEnSLOW=110xFLASH/2=FLASH/2):۴ =11:=07 FLASH$ SLOW FLASH:".d1/Menu.Maker"5 WAP /// SIG HELLO PROGRAM. UPDATED 4/12/89 DGO :#1,".D1/hello.text" ž#170 (#1;ERIN$ 2ERIN$<40F#1/P=23:=25:"PRESS ANY KEY TO CONTINUE.":G$U-Z#2,".D1/FLASHNAME.DAT":#2;FLASH$:#2%dFLASH=110: FLASgreat information from Dr. Al Bloom; Jim Salerno's CHAOS program; Jim Suthard's program that will help you make up your grocery list and more! As always, these disks are based primarily on your contributions, so keep them coming! See the READ.ME fil domain disk to contain information and programs by a number of WAP /// SIG Contributors. Basically, this and future disks are designed to contain material that, in and of itself, is not sufficient to make up one disk. Thus, you'll find some more CSTRING TOO LONFORMULA TOO COMPLECAN'T CONTINUUNDEF'D FUNCTIOVARIABLSOS CALFILES BUSNOT SOI/FILE TOO LARGWRITE PROTECDISK SWITCHEBAD PATFILE NOT FOUNPATH NOT FOUNVOLUME NOT FOUNDUPLICATE FILDISK FULFILE LOCKEFILE NOT OPEDEVICE DISCONNECTERESOURCE UNAVAILABLDIRECTORY FULDUPLICATE VOLUM ERROR Please Press SPACE BAR IN PROGRAM INTERRUPTED%&'(%+.@C$DE FG!H"I'MN#PQRTW(X潭`: 808`:dd@՚H Z#IJJ iLOPP$pX0S&ȱhȱKȱLe潥ɂ逅$L# $mKL x~ m khLgLsLc h5逢)&a TH THLgL6k8:9: STT`)ɀLK$Lb8gLOPPKLMNhhm Vf0 mLf) mWA 0 -a mL8fW;8<< 悕` 6kLU*i kXX 4XLy \\'_ch_chbi^g \ihh ] Qp aj ih `p b iq bqn %jjg56Ly { b bq | XHWHHHֺh$PLh wlȱȱ%$LWH mh x~  m#W", mȱ28eLeji`Lwl mȱ"Ɂɂ ȱ :, iTjj ȱiVjj8逪XW0 Vf0WHW$ 0X: h ,@dd )e dʙdH &eh(dL ddک,ddLd:e``eLeHELLO ue 5eLse6e:7ee8ee:e`EAd j @a(% -, bLs j {ghhL<^gHhHhH , - b j$% @ag5h6h6hhhhh8g5h6h 悅`6 "]La ud `L  d.CONSOLE[[ TdSdddddd0 ddddd`dd A 6 s e 9c()' 9cKHLI jLdj89弅:彬: 悅`H hɝɞɜ)`dd  6芅 e ()'` e'()HKIL 9cL>hL<^) i!Ls j @aLK$L% :: 悅 lc!)` +b` +b` sL :b#`L,H s h ऊL(,L8f` A KL jLdjOPPKLL h AKL` Ѽ   (`H shLs Aji!S)Lt`SSS`L` z :0.`9::hhgg.%g& $gegަhH逪hhʰ` ҥ [ aLT ҥIJJABB=>>;<<?@@T ě hhhHH  `89$ 0~!L`!sm?iٰcL`S )!a{)Qi ڐ߽S) -ai) -aɢ ɣɍж$HS -ahʥ0SSȩ5%"/װ&hԐɈf0ɔĐ 8,f 8f L_ʅSS=ȄL`ȱi8eiidHddhd) _ ƢLh _L>h jhP _S @a-Qggeg5hih 6i6 "]S" ]$%SSSg a aL^ S S`La8 SiUjjS):,$f 0$ p fHhH_HcH uhch_hhhfhi0hhhB B A` ֥'( )&񦕤LNKM$Lb ě $m wl "m6X6+5 56ɀ56H $mhɀ(Z)& mL k~ wlL ͝dL Nsd# wl^_ ꂅ__hg^`8 悕`gHhHhH5?6@6@*5g5666gҦhhhhhhhhg:e:;e; ;m;`@c@c?be^@e@ _m__^ \Lx] i6g55``BY BSAMHH H] LPL(\)&P ěj9ȑ9ȑ99i=:i: >i>`Ɂ7XWWXjnXWi` ]?@@bgchch )^ ]b ]b^b^L\b8g+H__^8_ABB 9::)ѭ [ I[ aυ婶ZeLLL^$%Lae LGidFddddddd.ddddddddd ɕdˏd`Ls  Apple Business BASIC v1.23 - Copyright Apple Computer, 1980-83 d wlOZL^L^-L(dPL<^OPMNKLhhLg` Ls ҥ?ieCiLa,  aFL s a iLg ]hhh5h689H: H:HLHKHH6H5HHH` ui` pi` Qp j pi `p i` j jK$L%8eȢ 9:: Ga.ghh 悅` A` \\ɾ,L<^hhZkKhLhhhe9e:: mLg jei `Ls j:,"hhhhLgɜEɝDɞLb Hɾɺдmhɾ Qp aj pi `p j` jLi j,656 wh H5Gh`lmm566 Lx5Hȱ5ȱ5 F665 w56h(` x("LH)&h`( '&'`lmm566LxĠLx znInEz{iLx y? zL||uu`8i$iznIii0ĨV y${Wiuu8Iem_B_B`)&N> ȱI8gJJ hhge ghh f feLH>H= x\L|F )XHABB8 __^hHI8e^ @1 @+?%GHHHIJJih BABGHh`$  ě u Дs IJJ^__Lveȱeȱe `LćHƽ Ƽh`$ lȱlLL{ɝɍLɎСL s HI s shmHmHlHHɦ# shmHmHlHH , hHLt  ,, shTTLui ui,L3$0 |Lu xijk6kxyy xxy6i L[ s r$PLsi,L3-hLs L*tɘcɭ_ TTLdd`jk8L|L3L3TL3,L3i LL r$PLLBLsș Ȅ ( qƚƚ` s s),;,=,#,(,,ѼLL<^L<^ llmm$P$?TUJ)TU  ' Lsi imLqLsh E0`H ty ))ELyq  8 $0!PizEn{dUeUi hLqLs `wLr !L2 {}$ 0`QɀX zLs.+"2mXm tL qXXW zzEn{i x }H$ ]kh8 )KLe9e:: }Lgi , p s$8$0p`PL<^Յ H s r ɀ ȱX Hih0 & ?<I?iE W Lq s )L<^ȱQȱȅR dj sLHoUVV$ LhU Lp$ LL<^opL^```?EXTRA IGNORED?REENTER $0pL,`LgXW ׫ k*iXX 4X \\L<^Xii7 { n k$ |WlXVVE$ P% eT{||Hd ̐h p IkLo00$0 L>o "m nV dj$D$ P 膼Lo$0",i [ kLoHSHhp< {}$ p0H 07h ]k ,LmUVV `p F sLn 2 ukLoF вLm jȪЖ LL<^~p l nhhLgOPP` Add# 6d s S SS@Ln A " r ,; s lLn#f  ;П ⭩,SLn "mʆ,S _S% nLh "mL_T ST#L(, U VV ׫$ 0  QpU= d hkddhe##5ddˏdd?Ll ,?#$04dHHd = d hkddˡddhhd`LsL#&F  ; s b 0` L+l$ Nsd#Lzm566ȱ5Ll H# wl m#͉LchL$m QRKLLsh$0LU$^`=8WW>X> 悅XXXL:^ g`L<^ l Jj bx bp,_;Ll  ~q$0P oՅ5R66R l ~ L%l $m0 =k $m#`$L#i)8#Ll  s s( L7bʊ# L-l m hxd5d$0H h`L^bLb$%/%5$ &5 &5e$$5e%%$&%$e$% Lk ׫ sHH ~qLPkHHh$0'ph | ZlWȥmW`L$|hXWXL-hm lmmLkl VYZZ{|| w ᐥlmmYZZ LxWXX ox ExYW# kXX 4=^W^0A,lkj |yjJkjlkmlmi in`emeymlexlkewkjevjLkyi&m&l&k&j8iIiii9fjfkflfmf`nIngjIjgIm lkj`L<^}i0vvvvvj`Ly^Vy dv88; 54541r |LiHi z xz U{y xy рz xh '~z zLz z~ zm zl zk zj zL{LyJ eyexew~ev~f~ffffJ`5665y5x5w5zEn{z t $mlmkljkij8ihn`L,$0DpA q enHi80 @Lyu \ % @u ćh `&m&l&k&j`2L0 և yxLT}$0pLI oբRLi `u LLi u Lui0 ܆ چ,,% п 擩lm0u 1eL5665`iɀ*iH i  @8 ei $ tutt tj ȡhn` t` 0RN0R 0R$n-RRR`i` p`5665i`$0BP?iH i hLbe55f5f6e}Lme6u5u }`6ʈ`v`jip` ? #  ue }~ %u $ چ 0 u}` L uu  ) }Li <i@L{i$i0 p $ 1`ui` LL Lbb `}i~ei^~0] e e^`}`566i5`_cf_cfi^eub` ?^qbep`L<^ ?8b^e` rp`I` ? ㄩp^|be #^b ebbu|beiee^^iL56^f" ऩ थ (! ( ऩ थ (" ( द!LGb8Lऩ@iu +-ELj) e | ^ .' "5 1 p) iIii i)Lm` ?i $0 ׄ $0 $0 ^`Hhth`^Qb ^^ 8` `H Jh(L悈`H逨h` Hh8 Hɀjhji` HihJi(`  ~q$L ɺ b$P i pi$ȱLdjɻƟ dj 柰ީ Lihh sLg  s ! b   s "!!!+|] {n LU{HLʁIڢIڢ-(h#5ᆥ](IڢʥnH BiHɁy U{y рhɁ xhLB` vy{| g|S}dpL}Qz}c0~~D:~L̑56gh6hegehh `iɇoȘ戅 aziȅ xdo`Abi$nFn) i  j g g ^ ܇.Laz͠Lć ^ ׄ& ć ׄ ć ͠L- x |z K{ | T}{ x xnH yxn0 I B xh B Lр |  ZuL.y +|z% T}uH }h{ ~|H !z az ~hJ inIn`L~8;)q4X>Vt~w/z*|cYX ~uƀ1rP aziP | |iɈ { T}i8Huiiu x BU 瀩{h z` |] az 뀩]Laz | i8fe.șR0șRmymlylkykjyj00ڊIi i/ȄȪ)Re.șRI)ЪR0.ȩ+f.8f-RER/8 i:RRRRRR`y`'d |Ģ { &{f o0`LB ` H$ge &{h 80 '~L}H |h |zEn{iLxf d$h0Ly ef q80fL}COt#t$JZ mLKjk8 | ~Lm ^|-$nșRnȩ0iL f~ azea~ } \~ } &{e B{e yx %}ei0nihoi8傐IL|`7 z!L|iD8$n yiLyn)FjjjLyiɠ %}nnI*imLyjklm` s e-o+ smo..IE)2s S -+fh r$h8fL}fg s$gPf8ef B{f65m5l5k5n j5i`d,]WXX566 |m5 ^|l5k5n %j5i5` |m l)m |m`znth` |ht`i  y my`i n*` |jkjI*mlinLyFn`nEz0ʢiH xv5ui`uei0,iiL0y{n`nI0hhL,yLy |i{ xi` |={{ {LZ{ zL{ |8ii zivjwk xlym* 蕁24(y&x&w&v0⨥ymyxlxwkwvjvL{@jjj)(L{L<^~jklmL y56}5}} ,kk} , kklm Lٓ[ 80@ 6 2`  dkH) ojhJJJJ ojL 0:i`L<^ jHHHHHH s jhLyqhhh6h6h555_ȱ5VHHHH %L/5H6H6HH ?5^6_6_hhXhXhWLk ? % ?Џ`5566` xe5566ɂ66` s p `  zLseff z.!'$ iߪ$ 0 H8eAi\h$ P8 (Lt$ 0V` 痠U` hh R LsL  z (L[ Rީ  @Y%(&:$LU s և ^|iHn %jHkHlHK s n ZlHmH5 s iH jHH楩e ) ,LsLR eՅ7V8U #   785U6VLΔU7e778ҥU^V_bcF_hcCgDhebbc \^__`U8傅UV` |UȱU` L<^ |UUƜ0ƛ ӗWqeWȱWqei W` |8UUWȥVUX`UeUUVUO / +'L U)łiV VL LI 8U 7ȱ7 UU ЯUVULU7V8 p L LZ U qUU qUH85h688V77U U 5qUWȥ6qUX7qWWȥ8qWW ٥IiV) V LVU?e8V je?e>e8U>e5V?e665e=e@eee8 hx57 xLCx8I77JJ8 88` H dhjL YYHH dYZZ oxhhe5566ɂ逅66 wZZY L YIL=m ) s  ʊHYImm shhhhYhZhZHHE` 3YZZ xLCxl5Ym6Z78ߠȘH yxy hL3 j kqHHHH s H , ,H s s ~qhh 1 lhhXhXhWWȱW7ȱW8 eLNLXZWX ` GGH HlHmHmH khmhmhlh hk8j7k8Lޒ e7788IjJkJk )lmm'&`UR{R||L̐: / cRRȹRRȥ Rл s `Lsh sh5lh6mh6mhxhyhy x x Qȱx7ȱx88 Ƃ 7e7888ł75 楽HHȱȱ6H6H5H s =к bqhhh Lshhhh` ~R/mZlmYZ PujHkki^^`H"h{||kjkȱ{ "ie{||  V{|56|6 w&5L<^i8e` ě u8A?pB@B@ )onL܇jkL| Nsdȩ8 NsdL2Lа,L<^ A s ׫ g iq s= sXHXHWHHHH ajL? b rLiq HHH s iqhhh5ȱ6ȱLI65 g5H6 2|Hgȑgʆ5a g5ȑgȥg <^^^__ɂ逅____<;إy6 hlhm^Ȋ^LL:^ȥ5^H^h ͎el5emȆ6п  ͎e^e__ iLZe *& eegggegȱgehh Ľ ,L<^  8` ^LQ ŠhhL6 $P 訽5 ͎56ۥ 8ee L:^?be^@ce@c __^_ \__^;<<6  $Phihi^Ȋ^6h656H |mHlHkHjHiHl5 8eeghh^__` HHH H bqh hhhn0iɐ1 }L yxL%}\i FHHHHH 6hhhHHlm ,҄ shh)>=>hgh<<;[a{p ;<<ccb? @c@ube.a{bb,\(eb cc`ebcA[8饰 a{8`8\e@@He? ]@@?hbbb0 ea ȑbc8L@ @@h57Ri88 pi UŦLUUU HHHHL 2hh LW iL 2hlhkhn jhimhHɗ8 Ls`LIŚ1CUDVDVU Lŧ 0 7U L`L:^֩ ŚEĚ L| Qp QeeRee8 1  sL͙ɚʚ `pAƚЙϚŚњ˚ ̚8 悅DDF͚ Κ8 DiFEC CD)ӚDmӚDԚCBКLěŚAݚ⚠IȌ 8 ꂍ  8 ꂅJJ` ! ɃɄ b`" lJJJJYe s ˰L8Ls LԫN l@u=ekPe tMe )llNesOet NeOetMeCOeNeȌ=e>e;e ƬƫHH ,hohp` ɩCe0R`ȹR`ee?e@e ue 5e T L=e;e`Lso`n}pm aa`dyopd8isŠt`dyoopd8ip`J uv`&&&8孪孪宐橈`! @ uA?B@B 悅@=g>h>h ]=i>j>k a=g8i>hj>h 悅ki=5j>6k6SOS KRNLb.D1/SOS.INTERPŠ̠Š.D1/SOS.DRIVERР頞 0 ) (lH'&3&'&#e'#%e'%'&"$"$#%'#%h`$eh`L)i   HH `TH..TH..TH..THATS ALL, FOLKS!R`RT RT`#RT RRRRR`0R`RR 㵩:RRL㵆  ~ RR`BLOCKS FREE: BLOCKS USED: TOTAL BLOCKS: sj]"]\AjiGa@aI[5x<^sě xCxEx5eҥV{}g}gkj̐kIk~^hT}27uejewsHH st\hh H PASCODPASTXTTEXT PASDTABINARYFONT FOTO BASIC DATA WPTEXTSYSTEMRESERVRESERVCAT RPSDATRPSIDXAFDISCASMOD AFRPT SCNLIBk;eo $'>ed?eehi?e ueL5e qrL,op ɩ`et?ek;e`hZ L<^hZL<^L=ee>e ?e`opqrst !e5ehe?eLje LjeR=89R>:>:iR:RiRRiRL`8(RR(`EeFe  s bq Vml0L dMeL` bՍe :RRRiRȐȰRe9Re: J 2IHJh*=>> 95:6:6R L1 1Lԫ`L:^  aFL^R, ue 5eLڭR7>e?e5e?eJeKeLje֩ u>e?eՍ "] a a$% iLg֢   sLj$%`8f  a e ; ` s ɩ` YLILcopL7 z0xH ׫$0_ ;h8fH`aai shH2 h zJJJJf Ik ɩ` ̬ t os YLA ևLLק jWXX` ׫$`ɥ%e,ȥ,*,- y,,,-,,,ȱ,,- yL+,ȑ,` 2"p-,-L(Ġ %>,i-i8, ȱ,%,W,pp ڠ %p`l  " ) i ?ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghij0 `8`HiHiH ihhȱh`86)IH)heuQɸ` ` W` ] %饚0` W` ߰4`)|E8LLLRLLLLL*LLLLLhh`LLL`SOS 1.3 01-NOV-82(C) 1980, 1982 BY APPLE COMPUTER INC. ) `G`î** }*`o^`on 8 JJAj@` *?($`ΠņɠŠ堠РѠ͠஠әƆH v?c,,,,h߈ߢ~))`3PLLP*%(i&`Ѕ񩏍E H pph`XǠĠӠ!((ͽϠРРSOS NTRPSOS DRVR(.D1(YYYYMMDDWHHMMSSMMM̱忠ΠͽŠ堠Р͠Ю̠Ɔx߭J ʈc(()o/ e/''ʈ((''()(1i / e/''ʈ((''((''((''' ('`ŠDAY, DD-MON-YY HH:MMSUNMONTUEWEDTHUFRISATJANFEBMARAPRMAYJUNJULAUGSEPOCTNOVDECԠŠР@L&I/O ERRORINTERPRETER FILE NOT FOUNDINVALID INTERPRETER FILEINCOMPATIBLE INTERPRETERDRIVER FILE NOT FOUNDINVALID DRIVER FILEDRIVER FILE TOO LARGEROM ERROR: PLEASE NOTIFY YOUR DEALERTOO MANY DEVICESTOO MANY BLOCK DEVICESEMPTY DRIVER FILE '(i%%%h}%%`8 ȥ!8 !)"qȥ#q#e$ȱe%L)%`@(((( % %`((((࠰$(ɠH(@(h((((@(`%z %% %~(A{(L%`.8(.Je.&ʈ.s(1 6$P8"ȥ#L1$8"ȥ#(ϸ`"##L]$"qȥ#q0,$p)@"q"ȩq"8`*$% $% 8% $L$* $8%8 $`8 &'$% 8&$'% 8$%%`H   q ȥ q Hi hi 1  % H H ȱ h h % $$ 0 e e H i hi âz %` 1 8`    # &ȱ ' # i" i# # #`8 ȥ H h `8 6$P`8"#%#%"$w"$#%"`荚ٍ荺 荚`荺``` D ( )  * ) 4* * h* ))` L% q ȥ q Hi hi  i" i# #% $ȱ %ȱ &ȱ '`<!((g %(r(z(q( %y(i(0z %"#$ %&' $"#$%&'   `%$%ɠ%* " ~#C #p $ %*0"#)#)i $"% * %*  L! {" j% %ƌ(X#"$% "$ #%%& '   ` {" & ɠ% %)  !( (" %(r(z(q( %y(a(0: %   "$%&e$'e% R % <`` LLɠ8`ΛLL渠`ǽi `< Ȱ+<#5 ې'` ɐ /ݐE`W8`R` 5&i ` Ȱ 0i `<8> ȐT eİF cȰB)Hh5 ˭)*ȑƑȥǑ'(ȑ`L)ɭ)Ѷ*e`M) `ۅH)Ѱ%}ʈh Qܐ'``hi ` p6۽ʹZ5 HȐ/i i `гW8`0( ɐ Ȱ ʮ6E`5 խ ɐ ޢ ȰLȍ۱Ǎ X̰% & !J8` *LĢ `8 iۥƍۥǍ`ۅ %  6 )Ѱ Ѱ` 𝭧e ǐ bǰL*ۈ5ȱ۠ƍȱǍ X̐ H h1  /ݐE`ۈۅ ۅ 8ƭ X̐`LLŠǠ  ݭv̅w̅ ðzv̍ŭw̍ŭƭ ­ōō T̰]ŅƮņ X̠8iȱiiȱi ṰŅǭŅ XLōۭ۩ۅ ȱ8D`F`8eYƍťǍŠ)͠ Wٍۭۅ5ۅƭۅ X̰ ìۈۑ T̰ۅƭۅ X̰ۙ%ۍ" T`K8`)` İ ۱ۈ` ưW/ۈęۈЍ۩@` 8 MƐ  5 Q8`LŅ ۅ ۩ۍۅ Lɰ ʰۅۄÍÍۙ'Ù ۍ*ۨ  Ѝ۹ۙ8v- ðJ ¥ ð, ðLO ʰƥLT`'  mې浰``8 8 nʰ0 ̰+泱Ƴ m° x̰ ̐8` m° x̰8 ۢ8 ˰y ` ¥ nʰ泱Ƴ T̰#泪 Ѳ *Ƴ ` L:Ϡ`泑Ƴ` LaĥH8`JȘ I8`  S`ۈۥۥ۩Íۭۍۭۍ հL¢H8`Jj Ȅ ۍۆeۅiۅ Lɰ ʰWۅۄ ¦J> ɩE` eĐL Ȑ 15WL QL5WW{5 ې'`,55 ې'` ݠ B1 ȩȑ Lɦ8`5  @ R㥶i ` İG8`F`X8``éۅĩ >` T֩xxMH]@ Kۅ5H ɐE$ eİ Ȱ h`h`8`W h8`hR`hLҿ i x +ۅ5ۅ6 ǰ `E8<W`­ `0XLۅ5` ռ``ߤeI`IiţO`Ȯʆ/ )󘑡`()0zq 滅ѺY Ueۅ5Ѻ Ѻ  Qܐ'`i ҩ *C8/y.i/ ȑ  © $ E7<3W`ȽLֽȄ @8`R ) [)_[AͰ")[)_[A:0/.ЩȑΘ8e * ȩ`Loü 7)?۽۩ W٠Յ<ōōř ռV7 uM78 V榠=ü#)@5 ɐ /ݐE ) .) @L `lqhٯ޿=ϓTXIֲ̛̐~ؠIJK,-NOPQ0vt Ѷ"` ɰ Ȑ`E`Ɔ X̐8`>>5Ѷ Qܩ<`>`\ʊJJJJ ۍ۩  ˰Fȱ X̰6 0 Lɠ 0ۑۑ8ȱ`H8` ɹ $  8JJJJ8 ` ۪` H hQ)fʅ F jF jF jF &!  eװ*  ̰F湥 ƹ`Z8`@  ʰ泭ۑƳ ʐ` ʐ` ˰ ƹ Wː`ۘ . . .۪8*Jۦȱ ˦,+* ʈJj =ؠ yiȩ`y4泱ƳHhz ʠiȱizLA`L;ؠ"  `1` Đ7@8V۩ Lɠ۪8ۊ۠X)JJJƄ X Ġȱ۠ ȍ۱۠ ۭ) ۍ ð*)#  O̰``)(`N8` ) xհۈ ̰آ*գ  Ͱ ݢգ LvL{ؠ;i ڥ(8` ְ( ȱ5 HȦ)`Lxץ: ש ְ⥺i ꥻ(8`Lx Lxש u )۠0)p խ.8`)@ ϰ) ϰۈۅƭۅǭۅ5 X̰ *ƭ۬͵̶L  ΐ` Wհ> H۪ȱHۑhƳh sϰq ` ʰiȱi `)5©éՅĩ5 }JJ+`.`8`ɂ )`@ ש ְO ֤FHۑۑh8`P) հ Wհҥ,J+j泭۪ƳۑȊ ) ~ fPL ͊.>.ʱ+,EP!.E.Lw+,,ӄ*- P*e (` հB հ5 Wհ0,J۪泭ۑƳ sϰ(` L Ͱ2 ~ P kҐ#L8 T 2ΠHHȑhhȑ`Ld )N8` xհ*eȱ+eȱ,i۠Ѻ۹ۑ񥤅- ť.Lcԥ.La Ͱ$)rJ Lɰ )# Ԑ) ͰU..++,,IJ/ ӥ-.?Цե,J+jѲ4Ƴǥ4聠 H hH kh8`8-ȥ.L 8*Ʊ )8 0*-`.G.ʱ*+,EP'.E.LұE0+,,ӄ*p-e  )LBѠٳ )8`i (` )N8`*eȱ+eȱ,i۠Ѻ*ȱ+L - ť.Lkҥ. ՅL ͐Ld ~ pа.J/)@߅4N8`) ))УJ8` ۑȭۑǠۑۑȭۑ($S8`O8` "` / 򑺠+* ͐H h8` ΰi `()  *ǵ յý5Ņ4gȩυɩč5 iψ }.8` iϙLIѠ ˢ L΢ ΰ LϠ ˢ ΰ1` Đ@ АP8`B8`ۑJJJJ -ѥ +jѲ84ƳJJ 2ΐ3泑ƳLTΩ潑ƽ`ƱƳ ΰ( {Π۵*+)e`8`)` J J + ΰ" 0 ΰ 🱼ѼL8`ǩ Ϡ` ϰ ƑȥǑ` Ѻе*`)ȥ+8ۍې  ,ѺLTΠ"LΠ5 խ ɐ /ݐE`C8`)@ ϰa)ۥ,8ېu+J,\ ȱLJΠ) ϰ'#,J(] { ΰ ƑȥǑ.8` { ΰ,JѲ ƳL΅ƱƳ ΰҥ,J0`#$"0#`!qȱi 5H5Ƶ ǽ jh5`L2̩ƍv̥Ǎw̩ÎL%ϠƄǥLj̩۬L~̠HHh` ̐`*ѺG0?M`)J"u-- M8`۬` # ː`  = O̰)= I`JJJJѶQi Lˢ  0 ̐ `"L˦ `H8`8$$"$= O̰=`$0`#$"0`$Jۑĥ` İo!)N8`WپX0 ĥLä X0 ĥLà !"#$ Đ2@H AڰCŰrP` 3ڰ(` AڰѶ? İG8`Fە1 ռ İ ЩP߭)@N8`1@8` Aڰ񈱴ۈ)ۅƭۅ X̰ 3ڰLÍLT̥L㼠  ʰ` İK ХP8` LɐH80)N  հ)@LO ˰)0 ̐` M ­۠泭ۑƳѲƱƳ X̰ Rڰä,] Xx,f (I0јIFjFjFji```x@gŽPy+wLwԠ͠ŠԹ.D1 .D2 .D3 .D`HJJJJh)y` (2ϩ 1ޠ== f ɰ`ޭ`5=(5= i Х(`=H hDC5 L3ܵ ɐ /ݐ 8`5 ˥JJJJ8 H h ` ܠ825H h5 ɐ /ݐ 8`Hh ܥ5 `ɥܥܥܥܥ5`܅܅܅܅܅5`( ݰ)Ѻ ݰL ݰ泱Ƴ ʰȭۮ ʰͩΪΩۦ eװqȭqLJ  ˰Aۅƭۅ X̰2%&N  ʰƭ X̐`Ӏ堁ӠҠՈ՘̠ƠŠӠ̠ɤӮȪŅ͠Ϊ ܆5 HȰ4 )ߍ) hjjjjۥ0CF = -$(L !LLL&L L-LJ٥eƦ ,L  # ` (L.L…ҥÅӭƅХDžѥL1LUȑ  i ߩLL )  札)  ҩLL` **éL0;` H ) abRcdTefVghXijSdfhj RR`^0U ` 0 ʠ0 8 `ůàՠԠàࠝӢӠ ȠDž̖͌͊頀ϐωŠŠӠҠȠγ`%!^0 ^)@`a R =` *^)ـooL]^)?i |TU QTU]qUoqTITsUsprRprqs]ToUXa` RL=Xa` R` *R`X`U T  *\AX[ @F\B9ɏ5\o*Ɂo)[[ @^`U V  *C?^0: ݳ ٢ ^)?i` *)@o `p^ XiH 1h `)X0 8~X 1`C X`)X0`C РǠ𠠐ŠŠӠҠȠƠŮƠҢâӠUAQY @?ZY 9ZYY^TU QZoȥɭ }`` ? }``  }`X0i 8~XX0H }h襯` ©Wéĭ }0W`F X0A */5BL. zF`LLz Lz`Y `Ơ堧 B k L( LO  %   }` ` ?!©UéĩU󥣍V }`` ?)) $p10LYeieLVȱ d0L`Hȱ hh` WɸSI I.ȩ8A 8ɸ4ɠ(H)h h8   `    i Ȣ d` $,)?P^ GL㢮 5L}P.)(Ơ L`ޠ LR  稱 I)0JJJJѤ  БĈ` H`)à`֩ нѽ>`]PU]]UPPX0 0 PPXPP  į󠠩ҙ̙ɠΠɊՐӠӢ̢ՠҠŠԠҚРĠ鱃ԠȠࠠLQ  * WHHH>%H H @`)h8`  HШБˆeЅА SYSTEM FAILURE = $hh8`hhhxآY_Z@tPRVT,p S JJJJ ) ʍL@ i0i6`îӉ͠堧ǥӥ``HhHy)(h`H` 0L?i `h` `` `x)( 8 `jjJJԥ)եӬɂ )Ӆ҅`  `H0Xh`Π'à̠ȈL` 8`څ  Lk%  Lk8Lu텚8嚅 L L Ld V ``  h` ک V `ۅץ  VLFx) ( :` H ) L  .P'pб0 &L:L5'8+8`0Fܢ` ř,Ř 0 8f)J DžŠƠŚ̮ÎȠ Ӡ̠Ӡ` LL#L/LL'Lgab `abBcd cdBrcadbho:ab.cݰdDcݰd8abҊ v+abcde0f`   cCȱcD C Ea  UV 1 ELUFVG FUUCVDեYCWZDXWXCUDV[ v`b0WXYZiUcȥVcWX eeYZ ggE` @SATRnpqrstuvwxyz{|}~GA7  3  5  >>< (&20 *, **>> "2*&" " >>  ">> "8""> """"""< SOS DRVR"CUSTOM.3 )((8*,;((*,((+)((9/(p((>3  =9 :9 .(~|L|LNqooGoDDDcc0ccpc]]c"QM"|@@pAATT**|16,B) THEN 240 #1, d$="":=10:"80C";d$ ž#1300I=0"I=I+1:#1;A$(I):290,#1 6L=I-1@j=1:same=0 J:SEG=0 Tœ2030^CT<1CT=1cCT>13000Zha$="{,|,~,}; selects; to new disk; J/2)=4:=+1:ۙ=44B$(J);:J=J+1I:1,180,22:2,280,21:2,2380,23:8A$(1000),B$(1000),C%(511),C$(20),name$(20):=10:=0UCA=128:LCA=UCA+32CT=15 IF PREFIX$= PREFIX$+MID$(B$(I),kmVOLUME NAME (/DISKNAME) OR DEVICE NAME (.Dx)"P12);::"80C";a$;:Zb$="CHANGING DISKS"$d=23:=0::"80C";b$;::12).n=12:=20:"MAKE A NEW MENU FOR DISK: ";N$xN$)<2110=N$ :210 I=1L(A$(I),A$))200B$0 WAP /// SIG MENU.MAKER PROGRAM (v. 6.2) =".D1"210: Coldstart (320: Warmstart &*X=11000: TEXT SLOW-DOWN LOOP ,X.1 CHANGE DISK SUBROUTINE23œ202:2200<RFa$=" YOU MAY SELECT YOUR DISK BY  )* i LiHh`PQPQ>P Q,PQ"PɀQ@PAQ`8`nɀ<)nopoLpp` 0h8蘠fȊf` ab 1abo)abaݰb L9c`` a N0Ioa0H ha`pLopna n`  3ɠ/8 L %iLɠ8逨J Hh $`b >_-%^%p_^^_ab"08^c_L8^c_L8^c_L8^c_ȑcc\] ab^_ ``aV R0M bba dda `Q8STRQ ST`c\ȱc]a  b 5DU e\^e]_ ^_ ^_LH8\^]_?Je\^e]_,78\^]_ ^ݰ_ ^_LH^_ $bL@A^_aoQ*@A RQL@A `T8`RLSJTKQHIQiHiIKNJ)M8逅OPOPHMIN'a MHNILHOIPaOHPI8JHFKIGFGaHMINNMʆSTL8HSITQQST>> ""*:<"">""""""""""""">>><2"<""">""" ""  ">"6**"""""&*2""""""""""""*,"" "" ">""""""""""""""**6"""""""> >>>xrL ==L: ,lCL <=L: <,n)LL8 L8 u:L8 ;)ߍ;j`; ;j`uBL8 uCL8 u)u;) u;L8    x) `(,  LuL-upp<`uqq=L: vuL L L #1:CY` 9C<m><=m@=>@?AL8 >m<>@m=@<=L8 <m>?=m@AL8 C9L8 ; ;k`;);k`,@`<,m p<L<`<p<`,ms<L=q=L: ,lXґȥӑ,10 h0  `,g0L  ҅ӥĥŰ+,0p 4 Ls  Ls i )"|tȌs|st HH` MjH,: <J h̰ <rh,oL`%CYgu9 Ln90$0%,7 ҥ L$0T,8OK50P;ҥ,8 L%\   8҅¥Ӆé҅L,5,6  & @jIH,5 p  He҅Ґhe…å逅h,23Lhʩd8,h)ec efeede`,5 H  h 4  `5!    4(P 4 4  `,g0L,10kH0 ԥ f0)ĭ9)9҅xh(ĥŐL i,1HȊ©L,52,9-P" a{) b) )ab)a a,h0& &+%a0 +hcefd(c,@cfabdf`cnx  (,4h`dd,9P"<:J H) +̰ H) +ʭcP h̰BTVSPLH   5"ʘ HH` (# (=  0`)aI88  >!SHOLES 1!1!2@23#3#4$4$5%5%6^67&7&8*8*9(9(0)0)-_-=+=+\|QWERTYUI OP[{]}`~`~ASDFGHJ K L ;:;:'"'"ZXCVBNM ,<,<.>.>/?/?d0hp00000>0# #0~$ <"<"""<< <"""<"><$""< """"  "" 6***""""""""""<""< :< $"""2,"""""**6"""""< >>> <Le Le ,g0L HH`! ( 9EKQWbmz`(" ((è%È`2ȭ3`1`d`c`+È`&È` & IMk`4`5`6`7`8`9`<ȭ=` & @jI`:ȭpȭqé,i0L È`,g HH`LL! l      5  Hdcefh&+si  M0   h) `(" (  (È& 8  `)2ȱÍ3`)1`Ɂ" (cefd`Hc HH`! (`ɖ" (èÈ``,t0L4 HH`L  d!  `ɖ" ( dÈ  ``,t0L4 d0Cս30. , V  @„ȄL5/((((PPPP @``` @@@@`xp<@ @ :H9H` (# ( -l..PcJt`,t$ ( t`tL4`,t0L4www """"""""33333333DDDDDDDDUUUUUUUUffffffffwwwwwwww(C) 1980 Apple Computer (+@EIR[ty} NQ9Copyright (C) 1983 Apple Computer, Inc. Graphics Driver..GRAFIX b """"""""33333333DDDDDDDDUUUUUUUUffffffffwwwww     ! ( 0 7 I N S _  . G R Y f {    ! $ 4 9 F I P S V \ a h m p s x |     ' + < ? D G N U f k p x ?BEJMRUX]`h  2;AGMS[fot|              . 3 6 9 < ? B E H N S V \ _ b w  KORY\aelpu !$(+.147<?BFILORUX]`finsw| !%*/369<+;CNU\eh "*-036<BLORX_fj &+38;?DGLTot <?BGLQgjox',/25:BG̑ʈ0 Ցʭr̈A萠L: ֦ڱΑ0Б֤ h L  p,:0 JfiΥiώJe΅Хiю@ B $p̑бʑΈ0 Б̱ΑʈeمΐeمАA萿 :  `ʝ"`t  !#%')L: 8p,:Jf׮@$PA B $P@/A'ʤ˅΄ϥ̤ͅЄ B $̑бʑΈ0Ƞ h L: $)טɀIim>ٮ@8pذ `$0"8,:Jک@ׅפ؈۩MjL,:08*Ȅ B ,:J}΅н(I I $0;P̑бʑΈ,:JՐrx 0, )ߍ:) J)*PR,T,V( : `,k<,: JI`I`<,:J̰`=m@>,:J}ʅ̽(I I `<Mj,:0pJՐ̑ʈ`pJհ0`ՑʭrpȐ`=m@< B h A$g " x) (,`% (gL,}0, `gé ĩ `:) j:;jN;~j;O,:0'???>>8?>p<<AAA@@8A@q==C)CB)B C}0 x) `(`hh% ( ΍ ύ逅Ñ}`` " ( ĩ~Íĩϭ & &υΠÑΈ~ F ~ҰةeÅÐн},,P,`,g$ ( efh) `xÙ+(`xÙ&(`)4`)5`)6`)7`)8`)9`,i0!M:0p ȱq L `" (~)y ~JJ* I `x|x|,,}P-X~ F }~L } `,`ʝ`))ժuvЭ H ʊJyjhz|ֆ׆ح)JfJf$PIJfש ʈ8 @ש wx LVخ ʊJJJ莟mwwxix 0ޤՐڢ,P<0 )ߍL- J,P,QJ,R,SJ,T,U,W`,t0L40 ( dȅɥŐ ĐL /47=G\x{~'+.149?CGIKMOQSUWY[]_acegikmoqsuwy{}J) ܭL FܪJJJJ)`'+9;=?ACEGINR\aejns~  #&).369<ADGJMP^g $*-06=HLORWcfloruzp Q%Q̑`pPIE1pΦ#$01ʐ1`JJJJ)`%υߥ`1(ȦJJJ`&&*`JJ` **&*&ߥ`J` ***`` ` Jjjߊ` ߊ`JfJfFߪ߆` `JfJfJfF`ߩ`$011̰JJJ LP \LD$7߭$PH8 nߩ nh ߍϭ - k, ϥ- kϱϮEϑʩ`P z  HH` k(h`$0#$E$0p Q%Qʑ`pPIE1p$E$0(L%τ`ϩE҅0Ȅ(fL% ('Άѽн`8Hٰ hIiHمh8Iif٤Φݰ>Jj8ۅe݅eޅ $  m`!J8݅ eۅ$  m` , V $צ!ϤҐ мφi`Jf`<,&ʰ,i8i#Hiihifʦʆi) v`i,ʐi,iPIIʥ)ifʦʆ̐pLj/Fϐ&Ȅ`'@τ`Fϐ@ E҅F8ئȢΆѽϽ`/epɀjff&ݥeepɀjffݠ %)  %)`%  0.)      0  ` ` @ ``8٨JJJ ) u˘ vͽʅ̆`8Hi #i,$0F y բӅLx  mӥmԐL] h `  )`%)8`)    H   ʥ)Ģ    H Ģ L E% %) L 8`ۅ&ۥe륅eٍeڍ808٥8٥ 8مڅ H , V Εm٭mڭ))njnjnjfjfjfj+mӥmԐ8L( Ӣ й` m j`Hآ Hӭԭ h h`8٭028ٍڍ0Z$eٍeڍm٥m8٥08ٍڍ`8٥058ٍڍ0ԭ V 8fxL@ ] I)!) g 80 J8}L y L 0yʽz0 y L7  Lh `*f*&*)` ϭPh0 йPL)`)L` L``  `L` H , 8 V ТΕLϦI ] +)J* g I`LL) @L) L8``Lթ`~L8L)  =H 'HH N M))Mhh0 }LO}~~Șݻ~`}}~L< L }ީ~` ɠɀ)ӮԮmwӥmxԐ mi` HHGH`  &%(-47=FMUX\_jmz  .169DWfy   % * > A H K Z v z }      % , 1 5 : = B K R Z _ b g n s x ~    ) . 6 = J P S X [    $ 3 : = F d  > B H M s `e|&+.QVYcjuy~':{sic; +Q Quits."r12);::"80C";a$;:+w#9,"DISKNAME.DAT":#9;DISKNAME$:#9|d$=DISKNAME$$=23:=0::"80C";d$;::12)201M=3:=14:"This /// SIG Disk is \^ 19";Р,2)", Washington Apple `, Ltd."=4:B$(1)="":B$(2)=""A$=e on side B for more info. Thanks again for purchasing this WAP /// SIG Disk! SUTHARD.1v6'  '*TIME.PIECE  6)".D1/MENU.MAKER",220 d$="" A$="PRINTING "+B$(I),16,B)=01:=0::"80C";A$;:#3,B$(I),16,B)Z=1#3;b$:"78A";b$Z=Z+1:Z=18:1290 1260 #4,B$(I),16,B)#5,".PRINTER"+ž#4#5;12):::".D1/MENU.MAKE30C$="N"C$="n"1160;:=23:=0::"79C";"PRESS ANY KEY TO HALT LISTING": $1020.202 8::Z=1B::=23:=0::"79C";"WOULD YOU LIKE A PRINTED COPY?":1C$:C$<>"Y"C$<>"y"C$<>"N"C$<>"n"1170*C$="N"C$="n"79C";"PRESS ANY KEY TO HALT LISTING"::202 1020#2,B$(I),16,B)ž#242:::1160Z=1#2;A$:"78A";A$Z=Z+1:Z>1842:::Z=1980*:=23:=0::"79C";"CONTINUE...?":1C$:C$<>"Y"C$<>"y"C$<>"N"C$<>"n"10 MENU.MAKER TEXT MODULESEG=0"MENU.MAKER"890&*X=11000: TEXT SLOW-DOWN LOOP ,X.1,180,22:2,280,21:2,2380,23:z:A$="LISTING "+B$(I),16,B)$=01:=0::"80C";A$;::12)>=23:=0::""BASIC 0":150A$="TEXT 0":150A$="CAT 0":150A$="FONT 0":150A$="FOTO 0":150A$(L),"BLOCKS")510*=27:=19:"FREE MEMORY AVAILABLE: ";=7:=20:"80C";A$(L);$:=5:THPOS=4:I=1:IBOTM=J-1:620Q=:=26:=21:d TIME PIECE n 17A,ZZ,":",ZZ,":",ZZ !xTITLE$="T I M E P I E C E"MENU.1$="Time Log"MENU.2$="Stop Watch"MENU.3$="Countdown Timer"MENU.4$="QUIT"N1$="1.) "N2$="2.) "N3$="3.) "N4$="4.) " TITLE$ files from a DATA BASE program. The latter was used to move the zip code from a single line on a record to be included with the city & state line for further processing into mailingew PASCAL programs. PROCESSOR.CODE A companion code file for the above text. PROC.3FIELDS PROC.5FIELDS ZIP.MOVE.1 Three typical BASIC programs which have been used to customize ASCIIas BASIC.PROCESSOR described above. It is not necessary to modify the program to meet various situations because the program is interactive. Useful Procedures can be reused in other n50, 60, 96 and 120 to suit the problem at hand. TAU.BASIC.PROC An ASCII text file of BASIC.PROCESSOR. PROCESSOR.TEXT A PASCAL text file of an interactive program to do the same function position 40 and prints three 15 line records per page. Page numbers and a page header are added. To customize the program for a particular case, modify lines, 20, ss ASCII text from Data Base which contains a series of 30 sequential lines from 30 fields. First pairs of lines are read from the input file. The program tabs the second line to PREFACE This subdirectory contains the BASIC and PASCAL programs mentioned in January 1986 TauTales. A short description of each program follows: TAU.PAPER11.18 A text file of the printed story. BASIC.PROCESSOR A BASIC program to proce 9 .PROCESSOR.TEXT 8W8.TAU.BASIC.PROC89.TAU.PAPER11.18 86ZIP.MOVE.1 v9^ CROMv7' '/BASIC.PROCESSOR 8rNUMBER9F'PREFACE75PROC.3FIELDS G9F' PROC.5FIELDS 9F .PROCESSOR.CODE:N1$;MENU.1$N2$;MENU.2$N3$;MENU.3$N4$;MENU.4$ ::/""CHOOSE One of the ABOVE Selections: ":x,x310,610,950,15506 Time Log Routine@J=051T"PRESS RETURN FOR BEGINNING TIME ":PRESS,^IN.TIME$=:"BEGINNING labels by a WPL program. NUMBER A typical WPL program to add numbers to an address file. If the "<>" markers (normally added by Quick File) do not exist from the DATA BASE text file, these can be quickly added with a BASIC program similar to those listed above. s too long to be included in the TAU Newsletter but if anyone wants a copy, send SASE to: Russell C. W. Crom Consulting Engineer 904 Barberry Lane Mt. Prospect, IL 60056 0056 ach can be used to make mailing labels with infinite options or to process data so that it can be used with WPL or Mail Merge. Moreover, a degree of compatibility exists with other computers by transferring ASCII text files via modems. The PASCAL program iprogram follows. This program works but for my repetitive problem, I use a PASCAL interactive program which has considerably more flexibility. Why not an interactive BASIC program? There is no reason to not do so, but PASCAL is more fun. The same approh are on disks. This is very elementary for the XhackerY but for this engineer, it was necessary to refer to the instruction books in order to do the mundane task. In the event there are others who need a refresher regarding sequential files, a BASIC th WPL, but the process is too slow to be practical. With either BASIC or Pascal it is relatively easy to process this data rapidly into almost any desirable report format. To use either language it is necessary to read from and write to text files whice and field #16 as line two etc. The pattern for successive records repeated with field #1 of record #2 on line 31 and field #16 of record #2 on line 32. The ASCII text file is easily read by Apple Writer/// and the print formatting task could be done wi where supplemental programs can be very useful. In the example cited above, there were thirty fields in each record arranged in a double column. When the file was printed to disk as an ASCII text file, a series of lines resulted with field #1 as line onecords, each 15 lines long, on a 11 inch page with a printer set to write six lines per inch, a problem of repeating decimals is encountered and the program balks. Any DATA BASE program can run into difficulties when it comes to printing reports. Here is software but the thoughtful authors wrote the printing options to use "inches" rather than spaces and line numbers. In a way this is nice but there are limitations in that only tenths of an inch are permitted. Consequently, when one tries to fit three r or more fully utilize other software packages. As an example, when a print-out of a relatively large 3EZP file was needed, difficulty was encountered in fitting the the desired number of records on a given page. XThree Easy PiecesY (TM), is marvelous Do It Yourself As the Apple /// becomes obsolete it is all to easy to feel sorry for ourselves and forget some of the very useful capabilities of the machine. Business Basic and Pascal are powerful tools which permit users to write their own softwareD ROUTINE TO PROCESS ASCII TEXT FROM DATA BASE. IT READS LINES 3 IN PAIRS AND TABS SECOND LINE TO POSITION 40.E IT PRINTS THREE 15 LINE RECORDS PER PAGE AND ADDS PAGE NUMBERS.< TYPE IN PROPER TEXT IN APPROPERATE LINES TO SUIT FILa$,1)="/"5060:s=s-1 5030=a$240 MENU.MAKER 6.2 * Thanks to C.M.Davidson for his help!el; G$:::320H: Error Routine 202:U=11:"79C";"BAD PATH ERROR (NO DISK IN DISK DRIVE OR DESIRED FILE NOT FOUND.)"X=11000:X:::210Z a$="{,|,~,}; selects; back 1 lev 1600 &:WW=1:0 :SEG=1;".D1/S EG.F" SEG=1".D1/SEG.G"diskname$=3802  CATCH PASCAL TEXT FILES 202 :F*=08:"78C";"SORRY BUT MENU.MAKER CAN'T READ PASCAL TEXT FILES."04=10:"M$="NOVEMBER":1750M$="DECEMBER":1750826);"-";M$;" ";Ѡ,2));", ";"19";Р,2);" ";/П,2))=>13П,2))-12;џ,6);:1780$П,2))=0"12";џ,6);:ٟ;$П,2))=>12" PM-":" AM-" 1830WW=1530 =26:=211660,1670,1680,1690,1700,1710,1720,1730,1740^M$="JANUARY":1750hM$="FEBRUARY":1750rM$="MARCH":1750|M$="APRIL":1750M$="MAY":1750M$="JUNE":1750M$="JULY":1750M$="AUGUST":1750M$="SEPTEMBER":1750M$="OCTOBER":1750T 0")2070H540R\A$="RUNNING "+B$(I),16,B)f"79C";A$;:=0pB$(I),16,B) z::SEG=1".D1/SEG.T"t=+B$(I),16,B) yCT=CT+1~240:=24:=0:"@ ..... "DATE.TIME.LINE" ....JM=Ҡ,4,2))BTM1630,1640,1650,0=+IBOTM/2-.5):I=IBOTM:I/2=I/2)I=I-1 œ2120B=B$(I),16)," ")-1 B$(I),"BASIC 0")850B$(I),"TEXT 0")890 B$(I),"CAT 0")1140*B$(I),"FONT 0")18504B$(I),"FOTO 0")1930>B$(I),"PASTXB$(I);v:520: 500THPOS=4:I/2=I/2)I=I-1I=IBOTM THPOS=44:I/2<>I/2)I=I+1I2=-1:I=I-2:IBOTM<30THPOS=44I=IBOTM/2)*2:=+IBOTM/2)-1:CA)"PRINT.ALL": OA+P 3HA=(81+UCA)A=(81+LCA):::: OA+Q Quits 3IA=(83+LCA)A=(83+UCA)"PRINT.SHOW": OA+S 2JA=(68+LCA)A=(68+UCA)/Screen.Savers/HELLON=THPOS:B$(I);XA<8A>11540bA-7640,660,690,720l:=THPOS:ٺ1600 =Q:WW=0A=:A=21A=9&oldprefix$=40A=31410: Control C "aborts" program to Basic(:A=13770: Return Selects a file *DA=27:50: Escape to change disks/FA=324000: back out one directory level 3GA=(80+UCA)A=(80+LE$="INPUT FILE PATHNAME"#1,FILE$(#2,".PRINTER":#22M=5:PN=1:PC=057 LINE 50 CAN BE MODIFIED FOR OTHER MARGIN VALUES#<PH="PAGE HEADER OF YOUR CHOICE"F130P PAGE HEADER ROUTINEUPC=0$Z:M);PH;65-PH));"PAGE ";PN[_M);"-R",220(204::"79A";""; 2D=1:F=1 <#4;a$ FD=D+1 P#5;a$ZD=60#5;12)dD=60D=1nF=F+1::d$;::Y=1100:Y x13402  CATCH PASCAL TEXT FILES 202 :F*=08:"78C";"SORRY BUT MENU.MAKER CAN'T R Modified Apple Writer Version 2.0 (Hard Disk Version) Originally from Don Norris Business ApBLOOMv,' '*ALADIN.SEL -%*CAT.TO.SEL'+'DOC.AVC ;--DOC.MODAW.2.0v.,1+SPELLER.SEL-2MANY THANKS AGAIN TO ALL THOSE WHO CONTRIBUTED PROGRAMS FOR THIS DISK! CONTRIBUTOR'S DISK: VOLUME 2  material he has contributed about the Apple ///. These files deal with hard disks and using various programs with them. CROM WAP /// SIG PUBLIC DOMAIN LIBRARY DISK 3MSC-02 CONTRIBUTIONS DISK #2 Here's wha you'll find on this, our second, Contributions Disk: SIDE ONE: BLOOM : Dr. Bloom once again adds to the vast EAD PASCAL TEXT FILES."04=10:"78C";"ANY KEY RETURNS TO THE MENU."!>G$:::".D1/MENU.MAKER",320ple Group, March 30, 1984 Documentation Updated February 21, 1988 Al Bloom, 2303 San Marcos Street Blacksburg, VA 24060 This Version 2.0 of Apple Writer /// s, and see if you were a naughty person. If any of your pathnames start with a volume name (/whatever) rather than with a device name (.whatever), atone now for your sins. Once fixed, save your menu (for SELECTOR) or update your INTERPS filt disk" environment and re-boot your system with CATALYST or SELECTOR. This is a good time to see if the re-naming has messed you up. Invoke "Catalyst Edit" (for CATALYST) or "Menu Edit" (SELECTOR) as approprate, look at each menu item's entrieE, .QC10, .A143, whatever) from whatever it was (/PROFILE is common) to /PRO. Check Your Names Once your high capacity disk has been given the "proper" volume name, leave the System Utilities "boocity disk. You can't rename the disk that System Utilities is on. From the System Utilities main menu, select device handling commands, then select "rename a volume" from the device commands menu. Rename your high capacity device (.PROFILy disk to be invoked from CATALYST or SELECTOR. You must boot your System Utilities disk. You may not invoke System Utilities from your CATALYST or SELECTOR menu. When invoked from SELECTOR or CATALYST, System Utilities is on your high capaot quite as bad as SELECTOR's requirement that the DEVICE name be .PROFILE. Device names are hard wired into your SOS.DRIVER file. Volume names are rather more loosey-goosey. Let us assume you want to install this AW on a high capacitd (booted or invoked from a program selector), must have the volume name /PRO. The device name can be anything under creation -- .D1, .PROFILE, .A143, whatever, but the volume name must be /PRO. This is a bit of a restriction, to be sure, but n Speller. What a deal!). This documentation only tells you about the very different way to install and operate this modified Apple Writer. Re-Name Your Launch Disk The disk from which this AW is launcheve that product and its accompanying manuals. If that assumption is incorrect, I advise you to buy the commercial product (It's $75 as of this writing from Sun Remarketing in Logan Utah, 800-821-3221. It's $99 to get both Apple Writer and Applesystem. You. gentle reader, may bug me (Al Bloom) about this documentation, but you may not bug me about the product. This Modified Apple Writer is an upgrade to the commercial Version 2.0 Apple Writer /// program product. I assume you hak door in 1984, after the Apple /// was discontinued. It came with no documentation to speak of. Don Norris started, and Al Bloom finished, this documentation. We did not write this version of Apple Writer. We cannot change any part of the ECTOR ///. That is a MIXED BLESSING. Installation and operating procedures are very different from those for the commercial product. Read on, lest you screw yourself to a wall. This version of Apple Writer emerged from a Cupertino bacis very like the commercial Version 2.0 of Apple Writer ///. It differs from the commercial version in two important respects. It is not copy protected. That is a GOOD THING. It is designed to run from a high capacity disk under CATALYST or SELe (CATALYST) and return to your main menu. Install Modified Apple Writer Files You may now invoke System Utilities from your CATALYST or SELECTOR main menu and install the files for this modified Apple Writer. Whether you have CATALYST or SELECTOR, do NOT use the automatic installation procedures provided by either product. Those procedures are for the commercially distributed Apple Writer Version 2.0 only. For this installation, the fir Press RETURN Keyboard: Press RETURN Prefix: Press RETURN Max Files Allowed Open: Interpreter Pathname: .PROFILE/CATALYST/APPLEWRITER Extra Drivers: Press RETURN Character Set Pathname: Press RETURN Screen: dit" from the main menu. 2. Enter "1" to "Edit Catalyst Menu." 3. Arrow to highlight the menu entry you want the program to precede. 4. Press "A" to add a program entry. 5. Display Name: Apple Writer er set from any of the public domain "fonts and drivers" disks. If you are a SELECTOR user, you are done. If you are a CATALYST user, you need to add "Apple Writer" to your main menu. Follow these steps: 1. Select "Catalyst E 2.0 distribution disk to .PROFILE/CHARACTER.SETS/STANDARD.CHR. I told you this was just an upgrade and that you needed to have the commercial program product. You more adventurous and self sufficient types may use the STANDARD charact/CATALYST/APPLEWRITER For SELECTOR, you get to do two things: 4. Copy .D1/SOS.INTERP ---> .PROFILE/PROGRAMS/APPLEWRITER3/SOS.INTERP Then you get to copy STANDARD.CHR from your commercial Apple Writer /// Versione RUN file must be in the WP subdirectory. I didn't write this system. I only try to describe it. At this point, things diverge between CATALYST and SELECTOR. For CATALYST, the next step is 4. Copy .D1/SOS.INTERP ---> .PROFILErectory plus HS-whatever), a GLOS.KEYPAD, and a RUN file into the WP subdirectory. The "help" stuff and GLOS.KEYPAD are pretty standard. RUN is what the manual refers to as STARTUP. No, I don't know why the name was changed. Or why thore it. 3. Copy the files in the WP subdirectory of the AW distribution disk to the corresonding subdirectory on your high capacity disk: .D1/WP/= ---> /PRO/WP/= Step 3 puts a bunch of "help" files (HS subdie /PRO/AW (You don't need, and can't use, the .PRT suffix). Same for your default "tab" file. AWQ is a weirdie. It looks like it contains nothing. However, it is the key to getting into the Apple Writer "help" facility. Do not ign and AW.PRT files are now your default "print value" and "tab" files. Wherever your manual references SYS.PRT and SYS.TAB, these are the replacement file names. If you need to re-load a print value file, the file name will henceforth bs option. 2. Copy the files AW.TAB, AW.PRT, and AWQ to the root directory of your high capacity disk: .D1/AWQ ---> /PRO/AWQ .D1/AW.TAB ---> /PRO/AW.TAB .D1/AW.PRT ---> /PRO/AW.PRT The AW.TABory named /PRO/WP with space for 25 files. Put your Modified Apple Writer distribution disk in the onboard drive (.D1). Escape from the the System Utilities "make subdirectory" back to the file handling commands menu. Select the copy filest several steps are the same for CATALYST and SELECTOR. The first step makes a sub-directory on your high capacity disk. From the System Utilities main menu, select file handling command, make subdirectory option. 1. Make a subdirect 0 Program Path: Press RETURN 6. Enter "Y" to the final question. ESCAPE twice to the edit menu. 7. Enter "5" to update INTERPS. Do not recalc minimum load address. 8. Exit to the Catalyst main menu via entering option "7" When you select Apple Writer from the CATALYST or SELECTOR menu, you will be sent directly to the edit mode of Apple Writer, after the usual Copyright notice flashes bri keep your Apple Writer boot disk in the internal drive and use your external drive (.D2) for your document files.and change the prompt from putting your data disk in the INternal drive to the EXternal one. That way, you keep your Apple Writeo. If you want to use this AW as a boot disk and keep access to the "help" screens, change the RUN file "OH.d1" line to "OH.d2" and change the prompt from putting your data disk in the INternal drive to the EXternal one. That way, youble program selectors, it can run as a standalone boot disk. If your high capacity disk is in the shop, you can rename the distribution disk /PRO, and this AW will work. If you promise never to use the "help" facility, this is all you need to d you don't like this stuff, edit /PRO/WP/GLOS.KEYPAD and remove it. Modified Apple Writer as a Boot Disk While this version of Apple Writer was designed to be run from a high capacity disk under one of the availas an umlaut (") over a vowel. Spanish can require an accent grave (~) over a letter. If you press OA-left-arrow, Apple Writer will send a backspace character to your printer. The next character printed will overstrike the last one. Ifslash. To end an underscore, press OA-slash. This feature implies a change in HELP. To ask for HELP, you now must press OA-SHIFT-?. GLOS.KEYPAD also contains a command that allows entering foreign punctuation. German occasionally need. The basic back-slash adds a space. This leads to dumb things like either underscoring a punctuation mark or adding unwanted spaces. This GLOS.KEYPAD file gives you a lot of control over under-scoring. To start an underscore, press OA-backple Speller, remove the "QM" line. The GLOS.KEYPAD file is basically the same as provided with Apple Writer 2.0. I've added three keystroke combinations. First, I changed the basic backslash that turns on underscoring and turns it offwhatever" in the "OH" statement. The RUN program also tells the system to look for Apple Speller in the CATALYST/SPELLER directory. If this isn't appropriate for you, edit the /PRO/WP/RUN file to change the "QM" line. If you don't have Apd change the line that reads "OH.d1" to "OHwhatever" -- the "whatever" being wherever you usually want your document files. Also change the text inviting you to put your data disk into the "inboard drive" to something that corresponds to your "nctions are. The RUN program is based on keeping data files on floppy disk in Drive 1. You will find that invoking Apple Writer tells you to put your data disk in the onboard drive. If you don't like that, edit the /PRO/WP/RUN file an those of you who have not previously had Version 2.0 of Apple Writer, I also enclose an Apple Writer file (TEMPLATE) that will print (at 12 characters per inch) a template that fits over the numeric keypad and lets you see what the keypad funguage manual pages 85 and 86. AMB Mods Your humble correspondent has modified the RUN and GLOS.KEYPAD files on the attached disk. I thought it only sporting to tell you about them. For efly. Any startup file you have created will be automatically loaded if it is under the subdirectory /WP and has the file name RUN. Startup files are described in the Apple Writer Version 2.0 manual Volume 2 page 199 and The Word Processing lar boot disk in the internal drive and use your external drive (.D2) for your document files.Notes on Apple Speller and Selector Allan M Bloom, PhD CDP 2303 San Marcos Street Blacksburg, VA, 24060 March 3, 1988 There is a bit of what we academics call "cognitive dissonance" between how the Apple Speller manual tells you to install the Speller o 1 16-Nov-83 0:00 0:20 SYSTEM.STARTUP Codefile 3 16-May-83 0:00 2:0 SYSTEM.LIBRARY Datafile 31 30-Nov-82 0:00 30:0 SYSTEM.MISCINFO Datafile 1 16-Nov-83 0:00 1:0 CAR.BASE Data (everything) Following the copying, a snapshot of your directory should look like this: /PROFILE File Type Blocks Modified Time Length ALADIN Directory 64 18-Jun-87 0:39 64:0 VERSION.ID Datafile BRARY SYSTEM.STARTUP SYSTEM.MISCINFO ALADIN.CODE ALADIN3.INFO - from /ALADIN3INIT: ALADIN3I.CODE ALADIN3I.INFO ALADIN3E.INFO - from /ALADIN3EXEC: ALADIN3E.CODE MAXREC.CODE (optional) - from /ALADIN3D: e's Desktop Manager's Cut and Paste feature (for the screen snapshots). 1. Create a subdirectory named ALADIN in the root directory of your hard disk (e.g., .PROFILE/ALADIN). 2. Into the ALADIN subdirectory, copy - from /ALADIN3BOOT: SYSTEM.LI HOW TO MOUNT ALADIN /// UNDER SELECTOR /// (requires a block editor) From ///'s Company Bulletin Board Acknowledgements: the following examples use DA DataSystems' Disk Window ///+; this document was created using Apple Writer /// in concert with On Threemory too high).S/SPELLER3/START.CODE" instead of the "etc/SYSTEM.STARTUP" that comes with Selector. Doing things this way allows automatic invocation of Apple Speller from within Apple Writer Version 2.0 (or from within Super Apple Writer 4.x if you don't crank up the mle Speller is a Pascal based program, and Selector insists on a SYSTEM.MISCINFO in every directory that houses a Pascal program. Then invoke the Menu Editor from Selector's main menu. Change Apple Speller's entry. The program file is now ".PROFILE/PROGRAMt's see if we can resolve that "Huh?" painlessly. Basically, you should follow the Apple Speller instructions on page 142 for hard disk installation, with one extra step. Also add SYSTEM.MISCINFO from the Speller boot disk to the SPELLER subdirectory. Appn a hard disk and how the Selector manual tells you to install the Speller system. Cognitive dissonance is a term that translates as "Huh?" to the lay person. The Apple Speller manual tells you one thing, and the Selector manual tells you another thing. Lefile 1 18-Jul-87 19:44 1:0 CAR.DATA Datafile 61 18-Jul-87 19:45 60:0 CAR.DECL Datafile 3 18-Jul-87 19:44 2:0 CAR.FM.TEXT Textfile 5 18-Jul-87 19:45 4:0 CAR.TEXT Textfile 9 18-Jul-87 19:44 8:0 CAR.TREE Datafile 121 18-Jul-87 19:44 120:0 CAR.USER Datafile 1 18-Jul-87 19:44 1:0 ALADIN3E.INFO Datafile 109 4-Aug-87 23:22 108:0 ALADIN3E.CODE 80 C6 02 C6 82 28 C7 01 00 91 CD 00 03 C6 85 9B 00 ....(........... 190 CC 85 C4 C6 85 C4 D7 A6 01 2A 01 CD 00 17 C6 85 .........*...... 1A0 C4 A6 07 41 4C 41 44 49 4E 33 D7 08 CD 00 17 C6 ...ALADIN3...... 1B0 85 C4 D7 A6 05 2E 49 4E 46 4ognize that the asterisk to be changed is in the line -above- the textual string 'ALADIN3', as shown. _________________________________________________________________________ 1 BC CD 1C 03 00 AB 80 BC A5 80 ~............... The second pathname is in the middle of the TWELFTH SEQUENTIAL block of the file; the pathname *ALADIN3.INFO should be changed to %ALADIN3.INFO (portion of the block shown below). It is important to rec...... 030 BC A6 01 21 D7 01 CD 00 17 A5 80 BC A5 80 93 51 ...!...........Q 040 CD 00 17 A5 80 BC D7 A6 01 21 52 CD 00 17 A5 80 .........!R..... 050 BC A6 0C 2A 41 4C 41 44 49 4E 2E 43 4F 44 45 D7 ...*ALADIN.CODE. 060 5E CD 00 17 A5 80 000 00 00 06 9C A0 10 00 00 00 CE 05 AB 06 00 16 CD ................ 010 00 1D B6 01 03 1F 00 CD 00 11 9E 00 A5 18 20 AA .............. . 020 50 A5 18 01 9B ED BF ED B9 F6 00 AB 80 BC A5 80 P.........of the NINTH SEQUENTIAL block of the file read; the pathname *ALADIN.CODE should be changed to %ALADIN.CODE (portion of the block shown below): _________________________________________________________________________ order mark the points in the HEX and ASCII display where the '*' symbol should be changed into a '%' (HEX 25). 4b. ALADIN.CODE contains the offending hard-coded pathnames in two different blocks. The first pathname to be edited block is in the beginning 02 1C 9E 16 B9 05 1C 9E 15 B9 ode............. 020 F6 C1 00 00 22 00 00 00 04 00 13 00 2C 00 01 00 ....".......,... 030 02 00 01 01 6C 65 20 77 68 61 74 20 74 65 78 74 ....le what text In the above snapshot, the 'V' characters in the bke: ___________________________V___________________________________V__________ 000 B9 1A CD 1C 01 A6 0C 2A 61 6C 61 64 69 6E 2E 63 .......*aladin.c 010 6F 64 65 D7 CD 1Cscal "current pathname prefix" (set to ".PROFILE/ALADIN/" by Selector ///). 4a. SYSTEM.STARTUP is a Pascal code file, 2 blocks in length. The second disk block contains the pathname to be edited. Here's what the top portion of that second block looks lime" prefixed to "this local file name". That would be all well and good if only it would work! In order to get Aladin to function correctly under the run-time Pascal environment used by Selector ///, those '*' have to be changed to '%', which means to Pafault) SCREEN = (default) 4. There are two files which must be changed with a block editor: SYSTEM.STARTUP and ALADIN.CODE; both files contain hard-coded file names preceded by the '*' (asterisk) Pascal special character, which means "root directory naFO Datafile 1 18-Jul-87 19:45 1:0 3. Go into the Selector /// Menu Editor and add Aladin ///: PROGRAM = .profile/aladin/system.startup LANGUAGE = .profile/languages/pascal.rtinterp PREFIX = .profile/aladin/ CHARACTER SET = (de Codefile 201 18-Jul-87 19:42 200:0 ALADIN3I.CODE Codefile 106 18-Jul-87 19:43 105:0 ALADIN3I.INFO Datafile 13 18-Jul-87 19:43 12:0 ALADIN.CODE Codefile 13 12-Oct-83 0:00 12:0 ALADIN3.INF 0D CD 00 17 C6 85 ......INFO...... 1C0 C4 AA 50 C6 82 28 C6 85 9B 01 00 CD 00 05 9E 22 ..P..(........." 5. Installation complete. Note from Ed: I would think that the above could also be used to install Aladin under Catalyst. ------------------------------------------------------------------------------" `::1a LINE 97 ADDS SPACES BETWEEN HEADER AND TEXT bPN=PN+1c&d RECORD COUNTER AND BLANK ROUTINE nPC=PC+1 x:::: }PC=380*~ EVERY THIRD RECORD REQUO^gzOTO 1000 220 FOR N=1 TO 15 225 INPUT#1;L1$ 230 INPUT#1;L2$ 240 PRINT SPC(M);L1$; SPC(40-LEN(L1$));L2$ 250 NEXT N 260 GOSUB 100 270 GOSUB 200 1000 CLOSE#1 1010 CLOSE#2 1020 ENDSE#2 1020 ENDETWEEN HEADER AND TEXT 98 PN=PN+1 99 RETURN 100 REM RECORD COUNTER AND BLANK ROUTINE 110 PC=PC+1 120 PRINT:PRINT:PRINT:PRINT:PRINT 125 IF PC=3 GOTO 80 126 REM EVERY THIRD RECORD REQUIRES NEW PAGE 129 RETURN 130 GOSUB 80 200 ON EOF#1 G 80 REM PAGE HEADER ROUTINE 85 PC=0 90 PRINT:PRINT SPC(M);PH$; SPC(65-LEN(PH$));"PAGE ";PN 95 PRINT SPC(M);"----------------------------------------------------------- -------------" 96 PRINT:PRINT:PRINT 97 REM LINE 97 ADDS SPACES BPROPERATE LINES TO SUIT 20 FILE$="INPUT FILE PATHNAME" 30 OPEN#1 AS INPUT,FILE$ 40 OPEN#2,".PRINTER":OUTPUT#2 50 M=2:PN=1:PC=0 55 REM LINE 50 CAN BE MODIFIED FOR OTHER MARGIN VALUES 60 PH$="PAGE HEADER OF YOUR CHOICE" 70 GOTO 130 BASIC PROCESSOR 10 REM ROUTINE TO PROCESS ASCII TEXT FROM DATA BASE. IT READS LINES 11 REM IN PAIRS AND TABS SECOND LINE TO POSITION 40. 12 REM IT PRINTS THREE 15 LINE RECORDS PER PAGE AND ADDS PAGE NUMBERS. 13 REM TYPE IN PROPER TEXT IN APIRES NEW PAGE80 ž1000 N=115 #1;L1$ #1;L2$M);L1$;40-L1$));L2$N100200#1#2PROGRAM PROCESSOR; VAR INFILE, OUTFILE,P :TEXT; $INNAME, OUTNAME,L1,L2,PH :STRING; $answer :Char; $N,PN,PC,M,COUNT :INTEGER; $ PROCEDURE OUTPUTS; $ "BEGIN $PAGE (OvPROCESSO R'); $PAGENUMBER; $WHILE NOT EOF(INFILE) DO READLINES; $CLOSE(P); $CLOSE (INFILE) END. *'p','P':BEGIN 4READLN(INFILE,L1); 4READLN(INFILE,L2); 4WRITE(P,' ':(M),L1); 4WRITELN(P,' ':(40-LENGTH(L1)),L2); 2END; (END; {CASE} &END; {FOR} $BLANKS; END; {MAIN PROGRAM} BEGIN $TITLE; $QUIZ; $RESET(INFILE,INNAME); $REWRITE(P,'.PRINTE {CASE} "IF PC=3 THEN PAGENUMBER; END; $ $ PROCEDURE READLINES; "BEGIN $FOR N:=1 TO 15 DO &BEGIN (CASE answer of *'s','S':BEGIN 4READLN(INFILE,L1); 4READLN(INFILE,L2); 4WRITE(' ':(M),L1); 4WRITELN(' ':(40-LENGTH(L1)),L2); 2END; P); ,END; $END; {CASE} #PN:=PN+1 END; " PROCEDURE BLANKS; " BEGIN #PC:=PC+1; " CASE answer of ('s','S':BEGIN 2WRITELN;WRITELN;WRITELN;WRITELN;WRITELN; 0END; ('p','P':BEGIN 2WRITELN(P);WRITELN(P);WRITELN(P);WRITELN(P);WRITELN(P); 0END; $END; .FOR COUNT := 1 TO 70 DO WRITE('-');WRITELN; .WRITELN;WRITELN;WRITELN; ,END; $'p','P':BEGIN .WRITELN(P);WRITELN(P,' ':(M),PH,' ':(65-LENGTH(PH)),'Page ',PN); .WRITE(P,' ':(M)); .FOR COUNT := 1 TO 70 DO WRITE(P,'-'); .WRITELN(P);WRITELN(P);WRITELN($WRITELN(CHR(28)); $WRITELN('Enter pathname of ascii file'); $READLN(INNAME); $OUTPUTS; "END; {QUIZ} PROCEDURE PAGENUMBER; BEGIN #PC:=0; $CASE answer of $'s','S':BEGIN .WRITELN;WRITELN(' ':M,PH,' ':(65-LENGTH(PH)),'Page ',PN); .WRITE(' ':(M));continue'); &READLN; "END; {TITLE} " PROCEDURE QUIZ; "BEGIN $WRITELN(CHR(28)); $WRITELN('Enter Page Header.'); $READLN(PH); $WRITELN(CHR(28)); $WRITELN('Enter starting page number'); $READLN(PN); $WRITELN('Enter right margin'); $READLN(M); SOR'); &WRITELN('Summary: This program processes ascii text from 3ezp'); &Writeln('and adds page header, line spaces and tabs every other field'); &Writeln('to tab 40. Enter margin and header desired'); &WRITELN; &WRITELN; &WRITELN('Press Return to UTPUT); $WRITELN(CHR(28)); &REPEAT (GOTOXY(0,5); (WRITE('S(creen or P(rinter ?'); (Readln (answer); &Until answer in ['s','S','p','P']; "END; {OUTPUT} " PROCEDURE TITLE; "BEGIN $PAGE (OUTPUT); $WRITELN(CHR(28)); &GOTOXY(14,5); &WRITELN('PROCES צS(creen or P(rinter ?EE Tx צ PROCESSOR4Summary: This program processes ascii text from 3ezp pnd number psx 1 ny L.d2/unumberedad b loop f/<>/<(x)>/ y? pgo found pgo quit found psx+1 pgo loop quit s.d2/newad ) #2;L1$ #2;L2$ #2;L3$ #2;L4$ #2;L5$ #2;L6$ #2;"" #2;""100#1#2t9 ROUTINE TO MOVE ZIP CODE IN EXISTING 3EZP TEXT FILEFILE$=".D2/ALPHA.NONCROM"T$=".D1/NONCROM.RESP"2#1,FILE$ 7#2,T$ dž#11000 n#1;L1$ x#1;L2$ }#1;L3$ ~#1;L4$ #1;L5$L6$=L5$,5) T=L5$)L5$=L5$,(T-5)M);L4$ M);L5$ ::::F DELETE LINE 136 TO PRINT SINGLE LIST WITH SPACE BETWEEN EACH ADD100#1#20 PROGRAM TO PROCESS FIVE FIELDS INTO LABELSM=2FILE$=".D2/ALPHA.NONCROM"2#1,FILE$7#2,".PRINTER":#2 dž#11000 n#1;L1$sL1$)=0N=0:N=1 x#1;L2$ }#1;L3$ ~#1;L4$ #1;L5$M);L1$;N);L3$;1);L2$ LIST WITH SINGLE SPACE BETWEEN ADDRESSES100#1#2E2 PROGRAM TO MAKE 1.5 X 4 INCH ADDRESS LABLES M=2FILE$=".D2/ALPHA.CROM"2#1,FILE$7#2,".PRINTER":#2 dž#11000 n#1;L1$ x#1;L2$ }#1;L3$ M);L1$ M);L2$ M);L3$ ::::G DELETE LINE 135 TO PRINT Q.PRINTERQ Q*Q7PHáJJȡEQPQQPQ G (QPQQPQ G (PPsHi  "$&(*,.02468:<>@DFJJ3dFץ)*PQwPPsH-]  "$&(*,.02468:<>@mDFHáJJȡEQPQQPQ G (e I  GFFFȡ-FFOPsHC  "$&(*,.02468:<>@DFII [-HHEOuP8HE Gx AxצPage I  GFFFȡ-FF Gx AxצPagage Header.xPEnter starting page numberI צEnter right marginG Enter pathname of ascii file /PRO/VC/VISICALC.OVL .D1/HELP.TEXT.FILE ---> /PRO/VC/HELP.TEXT.FILE 14. Installation is now complete. Re-boot with your Catalyst boot disk or Selector startup disk. 15. CATALYST: Edit your Catalyst Menu entries. Check each oneADV.VISICALC/SOS.INTERP. .D1/ADV.VC.INTERP ---> /PRO/PROGRAMS/ADV.VISICALC/SOS.INTERP 13. Copy the following files from your VisiCalc distribution disk to the subdirectory /PRO/VC: .D1/VCPATH ---> /PRO/VC/VCPATH .D1/VISICALCADV. This new interpreter will replace the current one you are using under Catalyst. .D1/ADV.VC.INTERP ---> /PRO/CATALYST/VISICALCADV SELECTOR: Copy the "ADV.VC.INTERP" interpreter on the distribution disk from .D1 to /PRO/PROGRAMS/ing commands. 7. Press M for Make a new subdirectory. 8. Make the new subdirectory /PRO/VC 9. Press ESCAPE 10. Press C for Copy files 11. Insert the Modified AVC diskette into .D1 12. CATALYST: Copy "ADV.VC.INTERP" from .D1 to /PRO/CATALYST/VISICAmenu. 2. From System Utilities Menu press D for Device Handling Commands 3. Press "R" for Rename Volume Commands. 4. Rename your hard disk volume to /PRO 5. Press ESCAPE twice to return to the System Utilities main menu. 6. Press F for file handlas a default. You may readily change that default. CATALYST & SELECTOR INSTALLATION INSTRUCTIONS 1. Boot System Utilities from disk in the inboard drive. DO NOT ATTEMPT THIS STEP with System Utilities from your Catalyst or Selector work, you MUST also name your ProFile (or other hard disk) "/PRO." The device name is still ".PROFILE" or whatever, but the volume name can no longer be called "/PROFILE." After installation, VisiCalc looks for your spreadsheets in the "/VC" subdirectory This version of Advanced VisiCalc is designed to run with all system files on hard disk under Catalyst or Selector. This AVC is not copy protected. For this to Blacksburg, VA 24060 Home (703) 951-2025 Office (703) 961-7921 Documentation updated 03/03/88 by Al Bloom 2303 San Marcos Street fault | | Screen: Normal | | Keyboard: Default | | Prefix: Default | | Max Files: 0 | | Program Path: Leave Blank | |______________________________________________| SELECTOR: Edit your Selector Menu entries. Check each one to see if there is a reference elector was designed with a different philosophy, and it has different features. Different does not necessarily mean better or worse. Larry Bird and Michael Jordan are very different basketball players, but I'd be hard pressed to call one better than the osystem is certainly mature. I am a "from day one" Catalyst user (My serial number is 177) who has just received Selector ///. I've long since coped with Catalyst's eccentricities, and I'm used to it. You can get used to hanging. If you hang long enough. S an existing Catalyst-based Apple /// system to Selector. Installing Selector from ground zero is one thing. When you have a "mature" system under the other hard disk program selector already, Selector is a whole different ball of wax. My Catalyst-based alini did that in the November 1986 ON THREE. This is not a feature-for-feature comparison of Catalyst and Selector. Milt Johnson did a thorough job of that in the June 1986 issue of THE /// MAGAZINE. I'm going to concentrate on the mechanics of convertingwitched to Selector recently. Still others are seriously considering switching. This article is aimed at those of you who are thinking about converting from Catalyst to Selector or are in the process of doing so. This is not a review of Selector. Dave Ott 1 Quark's Catalyst and ON THREE's Selector /// are competing program switching utilities for the Apple ///. Selector /// is gaining in popularity against Catalyst. It is actively advertised and still supported by ON THREE. A lot of Catalyst users have s Migrating From Catalyst To Selector ALLAN M. BLOOM, PhD CDP Institutional Research, Virginia Tech, Blacksburg VA 24061 2303 San Marcos Street, Blacksburg, VA 24060 Office: (703) 961-7921 Home: (703) 951-2025 CIS 76656,1514 BitNet IRBLOOM at VTVMdsheet files on floppy disks, you need to know a trick. Enter ".D1/-->" to find any file on the disk in your onboard drive. This also changes the default directory. ault directory.ust be just .PROFILE, not the standard .PROFILE/DATA as on the Selector menu. USER NOTES This version of AVC defaults to seeking your data file in the "VC" sub-directory of your hard disk. If you maintain your sprea: (Standard Character Set) | | Keyboard: (Standard Keyboard Layout) | |_________________________________________________________________| Note for this version of AVC, the "data prefix" m | | Program File: .PROFILE/PROGRAMS/ADV.VISICALC/SOS.INTERP | | Language File: | | Data Prefix: .PROFILE/ | | Character Setto the old hard disk volume name. Change each to /PRO. The Advanced VisiCalc entry should now look like this: _________________________________________________________________ | ther. Keeping that in mind, let's see what the installation and operation differences are between Catalyst and Selector. Installing Selector The first thing I noticed about Selector was its device driver file. All the drivers are "vanilla" versions from Apple Computer -- no special versions of the otherwise standard drivers like Quark's own .CONSOLE driver. That implies that you can't leave any programs via the "double apple ESCAPE" key combination. It also implies that you now have access to all The Dname entry (CATALYST/MLM,SYSTEM.STARTUP) in the main menu and via the "prefix" entry in the "Pascal Startup" menu. Selector has no ability to set the Pascal prefix. There is a third problem with MLM (Isn't this a great example?) if you are not running theecond problem with MLM is that it needs to have two system prefixes set, the SOS prefix and the Pascal prefix. Both Catalyst and Selector allow you to set the SOS prefix. Catalyst can also set the Pascal prefix via the "comma" in the executing program pathe the console screen that are (1) perfectly correct and (2) completely incomprehensible to RTPASCAL. If you have a Pascal based program that is well behaved under Catalyst but yields a spectacularly bollixed up screen under Selector, blame RTPASCAL. The s works for an application, it works well. It doesn't always work. Mail List Manager is an example of a Pascal based program that dies under the combination of Selector and RTPASCAL. It does so for two reasons. First, MLM makes some system calls to describand Lazarus and Backup ///. I've developed a love-hate relationship with RTPASCAL. It is a greyhound. I love how fast it launches System Utilities. I love QUIT'ing System Utilities and seeing the Selector main menu instead of the Pascal command line. If itor each of the thirty commercial Apple /// programs it knows about. It has also installed a semi-neat feature known as Run-Time Pascal. RTPASCAL is a stripped Pascal operating system that is designed only to run Pascal based programs like System Utilities he disk and completely re-do the Selector installation. Installing Applications Under Selector After Selector has successfully installed itself on your high capacity disk, you won't recognize your hard disk directory. Selector has set up a "skeleton" fes boot disk. If it is not /UTILITIES, change it. The last step in the automatic Selector installation procedure requires your having a System Utilities boot disk BY THAT NAME. If your disk does not have that volume name, you get to power down and rename ts driver. If it isn't .PROFILE, change it. Selector is firm on that point. After you've modified the SOS.DRIVER file to match your system configuration, take an extra minute before leaving System Utilities to look at the volume name on your System Utiliti blank-screen system hang. Power switch re-boot. Wait until Selector is installed before adding the TDM drivers. And only add them via TDM's driver automatic installation procedure. While you're looking at device drivers, check the name of your hard disk'hile you're transferring your special device drivers to the Selector startup disk, and if you have The Desktop Manager, do resist the urge to add the TDM drivers before you install Selector. Selector will not install with the TDM drivers present. Majorelector's SOS.DRIVER file must contain every driver that you will ever need. For every application. You should check your Catalyst menu entries to (1) see what drivers you dynamically load and (2) add them to the Selector startup disk's SOS.DRIVER file. Whas no extras like the .CATALYST and .UNUSED drivers. Selector's heart is patched into the operating system -- note the SOS 1.3(s) on the boot-up screen. Without the .UNUSED drivers, you can no longer "dynamically load" drivers as you can under Catalyst. Sesktop Manager's goodies from the main switcher menu. With Catalyst's .CONSOLE driver, TDM is inert when the main menu is displayed. With Selector, you don't have to "idle" in an application to use a TDM module or hear from the alarm clock. Selector also newest version (1.1) of the program. The original MLM (Version 1.0) has no graceful way to exit when you are through with the program. Under CATALYST you may "double-Apple escape" from programs that otherwise force you to re-boot, but SELECTOR doesn't have that feature. MLM Version 1.1 has an undocumented "gentle" exit. When the screen asks you to re-boot, Version 1.1 allows you to press "openapple-Q" to quit. Catalyst can come to the rescue of Selector in solving the first two of MLM's problems. If you rMore, I hope that my experiences and insights will keep others from stubbing their toes too badly should you tread the same path. Not all of you are as blind stupid stubborn as I am. I tend to believe that if I butt my head against a problem long enough, f any qualms about removing protection. ON THREE offers an UNCOPYPROTECT driver to deal with the commercial versions of VisiCalc, Advanced VisiCalc, and Apple Writer. In Summary I hope I've covered the high points in converting from Catalyst to Selector. le through user groups. An unprotected Advanced VisiCalc is also out there. You can remove the copy protection from PFS with a disk editor and instructions from Milt Johnson. The PFS people have been so unsupportive of the Apple /// that no one should feelround the copy protection problem. Mel Astrahan developed a way to run Word Juggler under Selector. ON THREE will ship it to you for two bucks. At least two unprotected versions of Apple Writer (Hard Disk Version 2.0 and Super Apple Writer 4.1) are availab programs may have been "Catalyzed" when installed under Catalyst and thereby rendered useless for anything but reinstallation under Catalyst. The public domain program FIXER is available from major user groups to un-Catalyze those disks. There are ways ainstalled under Selector, but you must put the original copy-protected "key" disk in the onboard drive when they are invoked. Some of the copy protected programs simply cannot be run normally. A potential problem for a Catalyst user is that copy protectedvendors of copy protected programs to figure out mutually acceptable ways to install those programs on hard disk for relatively painless Catalyst use. The folks who made Selector did not take those pains. In general, a copy protected program can be partly g Apple II Emulation. When you're through, you have to re-boot Selector. Copy Protected Programs Selector is a bit of a bore with many of the copy protected programs. The folks at Quark went to considerable effort back in the good old days to work with . It is, however, hard to tell whether a change will fix the problem. As I said, the MLM 1.1 "quit" option is undocumented. The "E" (for exit) option from newer versions of PFS's main menu is just as undocumented. Invoking a no-exit program is like invokinrom Selector, but you can never return to the Selector menu. As I said, Selector does not offer the "double apple ESCAPE" from programs that adamantly invite you to press "Control-RESET" when they are finished. The glib answer is to change program versionsram you want from its menu. When you leave the program, you'll be back at the Pascal command line, from which you may Q)uit to the Selector main menu. There is no similar fix for the "soft exit" problem. You can use the above procedure to invoke MLM 1.0 fthe CATALYST/MLM/SYSTEM.STARTUP program. At that point invoking Mail List Manager, or other Pascal based program with similar Selector or RTPASCAL problems, is a two-step procedure. First go the the Catalyst Pascal Startup screen, then select the progST/PASCAL language file (for a "vanilla" Catalyst based system) and to the .PROFILE/STARTUP program file. When invoked, you'll find yourself at Catalyst's Pascal Startup Menu. Add an entry for MLM pointing to the CATALYST/MLM Pascal prefix and pointing to an MLM under Catalyst, you already have a full-power Pascal run-time system on your hard disk. You also have Catalyst's Pascal startup system (the STARTUP and PASCAL.STARTS files) on your hard disk. Just point your Selector menu entry for MLM to the CATALYrom enough different directions, it'll get solved. So far I've been right with respect to Selector. As I work more with the product, I suspect I'll learn more solutions. If Bob and Olaf are willing, I'll continue to share them with you. l learn more solut : Russell Crom provides BASIC/PASCAL programs to process ASCII text from Data Bases which contain a series of 30 CD.HRS*3600))/60)0ZCD.SEC=(REMAINING-(CD.HRS*3600))-(CD.MNS*60) d=20:=23n110;"TIME REMAINING: ",CD.HRS,CD.MNS,CD.SEC x=20:=30*110;"TIME PASSED: ",HRS,MNS,RM.SEC =20:=60"TIME: "; 1220 1460::Pause=1100:PauHOUR*3600)+(NEW.MIN*60)+NEW.SEC!NOW.PASSED=NEW.TOTAL-IN.TOTAL!REMAINING=CD.TOTAL-NOW.PASSED(HRS=NOW.PASSED/3600)%2MNS=(NOW.PASSED-(HRS*3600))/60)+<RM.SEC=(NOW.PASSED-(HRS*3600))-(MNS*60)FCD.HRS=REMAINING/3600)*PCD.MNS=(REMAINING-(IN.SEC$).IN.TOTAL=(IN.HOUR*3600)+(IN.MIN*60)+IN.SEC 1450NEW.TIME$=NEW.HOUR$=NEW.TIME$,2)NEW.MIN$=NEW.TIME$,4,2)NEW.SEC$=NEW.TIME$,2)NEW.HOUR=NEW.HOUR$)NEW.MIN=NEW.MIN$)NEW.SEC=NEW.SEC$)2 NEW.TOTAL=(NEW.8:B=02)L"PRESS RETURN to START TIMER";PRESS$V=02:=16:(`"PRESS Any Key to STOP COUNTDOWN":jIN.TIME$=tIN.HOUR$=IN.TIME$,2)~IN.MIN$=IN.TIME$,4,2)IN.SEC$=IN.TIME$,2)IN.HOUR=IN.HOUR$)IN.MIN=IN.MIN$)IN.SEC=460 Countdown Timer Routine œ1450 =10:=02,"Enter Amount of Time for COUNTDOWN: "=02"Hours: ";CD.HOUR=02"Minutes: ";CD.MIN=02"Seconds: ";CD.SEC$..CD.TOTAL=(CD.HOUR*3600)+(CD.MIN*60)+CD.SECNEW.MIN*60)+NEW.SEC!HNOW.PASSED=NEW.TOTAL-IN.TOTALRHRS=NOW.PASSED/3600)%\MNS=(NOW.PASSED-(HRS*3600))/60)+fRM.SEC=(NOW.PASSED-(HRS*3600))-(MNS*60) p=10:=20zNOTE$:::=20*110;"TIME PASSED: ",HRS,MNS,RM.SEC750 1940*NOTE$="PRESS Any KEY to STOP TIMER "NEW.TIME$=NEW.HOUR$=NEW.TIME$,2) NEW.MIN$=NEW.TIME$,4,2)NEW.SEC$=NEW.TIME$,2) NEW.HOUR=NEW.HOUR$)*NEW.MIN=NEW.MIN$)4NEW.SEC=NEW.SEC$)2>NEW.TOTAL=(NEW.HOUR*3600)+(=10:=20+"PRESS RETURN to START TIMER ";PRESS$IN.TIME$=IN.HOUR$=IN.TIME$,2)IN.MIN$=IN.TIME$,4,2)IN.SEC$=IN.TIME$,2)IN.HOUR=IN.HOUR$)IN.MIN=IN.MIN$)IN.SEC=IN.SEC$).IN.TOTAL=(IN.HOUR*3600)+(IN.MIN*60)+IN.SEC ASSED=OUT.TOTAL-IN.TOTALHRS=NOW.PASSED/3600)%&MNS=(NOW.PASSED-(HRS*3600))/60)+0RM.SEC=(NOW.PASSED-(HRS*3600))-(MNS*60) ::::*D110;"TIME PASSED: ",HRS,MNS,RM.SECN:::Pause=1100:Pause X1460b Stop Watch Routinel v=OUT.TIME$,2)IN.HOUR=IN.HOUR$)IN.MIN=IN.MIN$)IN.SEC=IN.SEC$)OUT.HOUR=OUT.HOUR$)OUT.MIN=OUT.MIN$)OUT.SEC=OUT.SEC$).IN.TOTAL=(IN.HOUR*3600)+(IN.MIN*60)+IN.SEC2OUT.TOTAL=(OUT.HOUR*3600)+(OUT.MIN*60)+OUT.SEC!NOW.P TIME: ";IN.TIME$h+r"PRESS RETURN FOR END TIME ":PRESS+|OUT.TIME$=:"ENDING TIME: ";OUT.TIME$IN.HOUR$=IN.TIME$,2)IN.MIN$=IN.TIME$,4,2)IN.SEC$=IN.TIME$,2)OUT.HOUR$=OUT.TIME$,2)OUT.MIN$=OUT.TIME$,4,2)OUT.SEC$ sequential lines from 30 fields. (TAU) SUTHARD.1 : Jim Suthard offers a "Time Piece" program that turns the Apple /// into a many-faceted timer. SIDE Tse:"Select: "" Q)uit&" T)ime Another Sequence"X$X$="Q"1550X$="q"1550 restart210 ::