' +JJJJ ?\>m0M='+l> /+L    d]@ŵLҦ]]LF L}BBL] / Xɶ +lǭӠΠ 鷎귭෍ᷩ췩緈JJJJx Lȿ L8ᷭ緍췩 緍i 8 `巬 췌`x (`(8`I`B` ``>J>J>VU)?`8'x0|&HhHh VY)'&Y)xꪽ)' `Hh`V0^*^*>&` aI꽌ɪVɭ&Y&&Y& 꽌ɪ\8`&&꽌ɪɖ'*&%&,E'зЮ꽌ɪФ`+*xS&x'8*3Ixix&& 8  '  & x)*++`FG8`0($ p,&" ɍL,L<{ƴѵ洩ƴǴҵ 7 ^  !"#$%&'()*+,-./0123456789:;<=>?ɮ / ]ƴS0JLȴ ȴ)  紅D贅E B ƴ  / 0L ΝLi`HD٤DEEhiHLGh ` ŵBѵ-` ѵB-`tL%ȴL୭gȴLIﵩgL $ B /` $*+'&'e**e++إ+ *LǵB`iai rsLq˵i̵irs8rsɵʵȱ!Ȅ뷠詷 Lþ ʾL`i=LL HIHHHHhHH݌hHhHh݌H6 ˆʎõĵL õ ĵµ aµ`` L̦µ_bJLuLz`  ȟ QlXJ̥KlV  ȟ QlV eօ3L e3L &RL &QL d L4 Ne)n `gLq֠Ơĭ f`L . tQLѤ LҦL` OPu d L Ne)noon 8ɍ` ^f\õL ^NR  RΩLҦ)\Z ʽ LHv 3h`0h8` [L NС õ`A@` ŵL^Lõ`  \ 濭0 \  ȟ Q ^\lZl^?cqH şch`fhjõĵ@OAP`u@`@&`QR`E Ls  @DAE@u`8` %@ @A@`@`@A`Mµ ) LЦ`8@AWc@8@-@HAȑ@hHȑ@ȑ@hHȑ@Ȋ@ch8&ȑ@Hȑ@Ah@LHȑ@ȑ@ htphso`hMhL`9V8U897T6S67`SAVLOAHIDRUCHAIDELETLOCUNLOCCLOSREAEXEWRITPOSITIOOPEAPPENRENAMCATALOMONOMOPRINMAXFILEFINBSAVBLOABRUVERIFpp p p p p p`" t""#x"p0p@p@@@p@!y q q p@  LANGUAGE NOT AVAILABLRANGE ERROWRITE PROTECTEEND OF DATFILE NOT FOUNVOLUME MISMATCI/O ERRODISK FULFILE LOCKESYNTAX ERRONO BUFFERS AVAILABLFILE TYPE MISMATCPROGRAM TOO LARGNOT DIRECT COMMANč$3>L[dmx跻~!Wo*9~~~~ɬƬ~_ j ʪHɪH`Lc (L ܫ㵮赎 ɱ^_ J QL_Ls贩紎 DǴҵԵƴѵӵµȴ 7 ַ :ŵƴѵǴҵȴµ納贍﵎ٵ്ᵭⳍڵL^ѵ-I `  4 ò-յ!  8صٵ紭ﵝ 7L (0+BC  7L HH`LgL{0 HH` õL H hBL BH [ h`Lo õ ڬL B ڬ LʬH hB@ յյ [L (L) ȴ 7L L ( L (ȴL{ƴѵ洩ƴǴҵ 7 ^* B0 HȱBh ӵԵ 8 L8 ݲ` ܫ  X /W ED ɮ / ]ƴS0JLȴ ȴ)  紅D贅E B ƴ  / 0L ΝLi`HD٤DEEhiHLGh ` ŵBѵ-` ѵB-`tL%ȴL୭gȴLIﵩgL $ B /` $*+'&'e**e++إ+ *LǵBȵC`,յp` 䯩 R-յյ`յ0` K R-յյ`ɵʵӵԵ` 4 K ( ѵҵLBȱBL8` DBHBH : ַ޵BȭߵBhhӵԵ RBܵmڵ޵ȱBݵm۵ߵ` 䯩LR˵̵ֵ׵`êĪLR E( 8` R` ELRŪƪ`췌 յյI뷭鷭귭ⵍ㵍跬ª 뷰` Lf ݵܵߵ޵ ^`8ܵ i B8` 4L ֵȱB׵ ܯ䵍൭嵍 ` DȑB׵Bֵ  ַ յյ`굎뵎쵬 뵎쵌``õĵBCõĵ`µµ`L õBĵCصص Qƴ0"Bƴ 󮜳` 0۰ϬBƴ8`i#`ЗLw!0>ﵭ` m ﳐ 7i볍 8 ЉLw`H h ݲL~ `浍국䵍뵩嵠Jm赍嵊mjnnn浈ۭm浍浭m䵍䵩m嵍`"L ŵ8ŵH ~(`LL ⹴ d ֠iTf{jkZȌlmn齌oLYY0TYY0Bʎkrt+%q ޴0L`w8`gLx8`ψýmn齌oХЙjЉrtФqКLM8` *HhffHh Hh Hhf fLHhjHh HhfL` 5 JJJJ V) V0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008$L>,104,168,104,166,223,154,72,152,72,96,169,12,133,1,160,1,132,2,44,48,192,136,208,4,198,1,240,7,202,208,246,162,30,208,239,198,2,208,245,96,4,10,11,12,13,14,15,16,22NPIGYHELLO--------------------------------------- PIG-DOS / VERSION 3.0 BY DOUGLAS WOLFGRAM AND DON KENNY(C) 1983 - THE BIG PIG SOFTWARE COMPANYPRESS ANY KEY TO BEGIN THE ORIGINAL DOS ENHANCEMENT SYSTEM (1) MODIFY PARMS(2) UPDATE DISKS(3) INSTRUCTIONS(4) RUN THE DEMO(5) EXIT TO BOOT SELECT --> SPACE / EXECUTE --> THE BIG PIG SOFTWARE COMPANY <- MODIFY PARAMETERS MODE GREETING PROGRAM NAME HELLO PROGRAM FILE TYPE? ---> LANGUAGE CARD RELOAD? ------> WHICH CATALOG TYPE? --------> CATKILL ENABLED? -----------> REDUCED ARM MOVE DELAY? ----> UPDATE IN WHICH SLOT? ------> UPDATE IN WHICH DRIVE? -----> RETURN TO MENU ACTIVE KEYS...(SPACE) (ARROWS) (RETURN)-=><=-NRMPR#6 UPDATE DISKS MODE WARNING! THIS WILL REWRITE THE DOS ON THE DISK IN SLOT DRIVE ! BE SURE YOU HAVE MADE A BACKUP COPY. IF YOU WISH TO CHANGE THE DRIVE AND SLOT NUMBERS, PRESS THE ESC KEY. PUT THE DISK TO BE UPDATED IN SLOT DRIVE AND PRESS RETURN... WRITE PROTECT ERROR! PRESS ANY KEY TO CONTINUE... PIG-DOS SYSTEM INFORMATION PIG-DOS IS A TIME SAVING, EASY TO USEFAST DOS UTILITY PACKAGE. ITS MANYFEATURES INCLUDE:* FAST LOAD, BLOAD, SAVE, BSAVE* TWO INDEPENDENT CATALOG ROUTINES* RETURN-KILL FEATURE, TO BREAK OUT OF LONG CATALOG LISTINGS* FULLY COMPATIBLE WITH OTHER SOFTWARE* ARM MOVE DELAY REDUCTION* LANGUAGE CARD RE-LOAD SUPRESSION USING THE PIG-DOS UPDATE PROGRAM* THE OPTIONS ON THE MAIN MENU MAY BE SELECTED BY PRESSING THE ARROW KEYS UNTIL THE ARROWS ARE ADJACENT TO THE OPTION DESIRED, AND PRESSING RETURN.* ANOTHER WAY IS TO MERELY PRESS THE NUMBER CORRESPONDING TO THE OPTION DESIRED.* IN THE MODIFY PARMS MODE, OPTIONS ARE SELECTED WITH THE SPACE BAR, AND CHANGED USING THE ARROW KEYS, AS ON THE FFFĠ .B _Eɠ BΠ .B _Eɠ BӠ .B _Eɠ BL-FFFĠ .B _EB BΠ .B _E BӠ .B _Eؠ B$ B B B FFF B L ~ E LD D @ LD DL(,E .B _EԠ Bo ꩱE LD DL^,E .B _E Bj ꩱE LD DL,E .B _E. BL ~ E LD D @y E LD D ? #DL,L FFF CHHH [D ?@PQL[-L+L ~ E LD DLa+ʠ ꩱE 碱E + ꩱE LD DLa+j ꢱE +y E LD DL+ʠ ꩱE 碱E +Š ꩱE LD DL+ʠ ꢱE + B B B E F B hE C B کʠ ꩱE ߠ B کԠ B B FFFQPPQ o A i. B FFF B L2& .B @PQ E +ʠ E A*HHo @ @HEHH GA .B @PQ E +LA~ E LD D @y E LD D ? #D ߠ B کE .B EL = E LD DLJ)E .B EL2& E B CHHH FFF C Chhh FFFJH ^*h FFFQPPQ ⩰ LD DL) FFFHHH B B FFFE .B EԠ B B B  E LD DL) FFF CHHHߠ FC B BFFFʠ E A(HrH @ @HEHHE ٠E .B _EFFFHHHE BHʠ B B DPQ  BE hAԠ B Bʠ B ߠ B BFFQPPQ ʠ LD D ? #DLB' FFFJH ^*hL)~ E LD DL' FFFHHH FFFQPPQ ʠ A B B FFFJH ^*hL)B E LD D @ FFFQPPQ  LD D ? #DL'E .B EL2&BMAIN MENU.* WHEN ALTERING THE GREETING PROGRAM NAME, THE LEFT ARROW KEY IS USED FOR DELETING CHARACTERS, AND THE RIGHT ARROW KEY IS TEMPORARILY INACTIVE. THE NAME MAY BE NO LONGER THAN 30 CHARACTERS AND MUST BE AT LEAST ONE CHARACTER.* THE FILE TYPE MAY BE EITHER A/BASIC, B/BINARY OR E/EXEC.* WHEN DOS WARM-BOOTS, IT STORES A HEX ZERO INTO $E000 WHICH TELLS DOS THAT THE RAM CARD IS EMPTY. TO AVOID AN ANNOYING 'LANGUAGE NOT AVAILABLE ERROR, ANSWER 'N' LANG CARD RE-LOAD.* THERE ARE TWO CATALOGS AVAILABLE. THE NORMAL APPLE DOS 3.3 CATALOG AND A SPECIAL 'PIG' CATALOG, WHICH INCLUDES FREE SECTOR COUNT AND SCREEN CLEAR. WE ALLOW THIS CHOICE BECAUSE MANY PROGRAMS USE A CATALOG IN THEIR OPERATION, AND WILL NOT WORK WITH THE SPECIAL PIG CATALOG.* THE RETURN-KILL FEATURE ALSO CAUSES SOME PROBLEMS WITH EXISTING SOFTWARE. THIS MAY BE ENABLED/DISABLED IF IT YOU HAVE TROUBLE WITH COMPATIBILITY.* SOME OF THE NEWER APPLE COMPATIBLE DISK DRIVES, PARTICULARLY THOSE SLIM LINE DIRECT-DRIVES AND THOSE THAT USE THE SIEMENS WORM GEAR TYPE DRIVE, DON'T REQUIRE AS LONG A HEAD-MOVE DELAY AS THE APPLE SHUGARTS. THIS MAY BE SPED UP WITH THE DELAY OPTION. WE SUGGEST YOU TRY IT WITH YOUR DRIVES, AND IF THEY DON'T BOOT PROPERLY, RE-UPDATE WITH NORMAL DELAY SELECTED.* THE SLOT AND DRIVE FOR UPDATE DISK MAY BE SPECIFIED AS USUAL... YOU MAY SKIP TO THE END OF THE MODIFYPARMS OPTION BY PRESSING ESC. THIS CANHELP TO SPEED UP OPERATION.*-*-*-*-*PLEASE SEE YOUR MANUAL FOR FURTHEREXPLANATIONS AND INSTRUCTIONS, AS WELLAS SOME ADVANCED PROGRAMMING TIPS. FAST-LOAD DEMO WATCH HOW FAST PIG-DOS LOADS THESE HI-RES PICTURES! PRESS ANY KEY TO BEGIN...BBRUN`Z@77r(( @ ( 0 h 1234506@H@IBpx@ PSjSS`))zrztzv}R:PHHP`p7 8H0p D X E + F +Š F +ʠ F +멮XFYFZF[F\F]F^F_F`FaFbFcFϠ F +Š F +Š F +Š !F +멳dFeFfFJH s#h'gFhFiFߠ'jFkFlFԠ &F +٠ +F +멖$ D&F B EF B+F B Eޠ F B 0F + B iE 5F + B CŠ B gFhFiF C w ' C sgFhFiF C ک B C- $ C کŠ :F mAHPH BA VAHFH:H:F 0F B EdFeFfFHHH:F BHŠ B CC SEPQ  B A B CgFhFiF C کQ ' C ڭgFhFiF C کޠ B C  B x  C ک B b@PQ  D cDL7L B E B?F B iE XgFhFiF C w򩎠 ' C sgFhFiF C ک B C B  C ک B Ơ  C ک B נ  C ک B  C ک B  C ک$ B C % C ک) B CgFhFiF C w/ ' C sgFhFiF C ک B C B   C. B V  C ک B b@PQ DF + DF D gDLL B E B3 DF D _D s@8 DF D _D <@ zD s@= DF D _D <@ zD s@B DF D _D <@ zD s@G DF D _D <@ zD s@L DF D _D <@ zD s@Q DF D _D <@ zDLL3 DF D [DLJH C"h?F B iELV DF D cD s@[ DF D gD <@ zDLkV DF F +?F B iEF B tELLL3L6Lh>hhhhhhhhhe؍Z[ oLfHHHHHHHHHFةHHH3vv>j>Z[΄ϩ> o$0LNLK$0W ] 1 hh 1l> ? \۽` \(>  A =Lu͠ɠŠޥ>>>Li EFXFFF$$$éʮ j8 o8}νȑΦ:ʽ),"l $ߠL1 )0&w`V3 \ j8  J(䥸:`8f H JhŸ ,  r,n,,*lRN <,8뤹"湱"湱:,`hihihEhhhhhlPQQPPQP`hihi r륝HHHHHHl+%0#0 00QP`QPSRQP`QPSR`QPϥQeSQPeRP`S8QQRPP`QIiQPIiP`$P0`P0QЧ`QP`Q8SPRp 0 `0``hhʚHH芠L+hihiHHHHHl뺽ɁhhiL+iҺɁ0liɁݥۘՊi ꥢ뺽 纽 +뺊i $0 0ihhHH` 0l J i`l r`쥝@Ɂ:ɑ=ɐ))Q&&Q*$0P`IPQIiQP`QߩPQ`5l쥢0"ɁɉɈ )*```5l0L[5l \`hihihhhlhihihh8hhelhhlﺽ}%} (i `(i!l 4)eȘΰ`ΐޢMlȥȊ`쪈눱`%00 00 ` `ꥥ`ҥ %Lhihihhh  llΊȑ8f`qΙzu hhnΪHHy΅ȱ΅FؠoΪȱΠΊ` QP`5lPQQPlP eh8ehil* e뺽8eilPQ` ee` ee`΅ȱ΅`Υȑ`>>ck to see if the ; current T/S list must be ; written to disk. ; CHKTS PREPRWTS SELTSBUF  >9 ; ; If the carry flag is cleared, ; read the first sector of the ; T/S list. ; FTSTS FTSS OLDRWTS ; !; If the carry flag was set read ; in the next sector of the ; T/S list. ; ^9 #$1 ; "; If the track number of the next ; sector is zero, there isn't ; another T/S sector available. ; (BUFADR),Y >0 ; ; If there is another T/S list ; available read it in. ;   (BUFADR),Y  OLDRWTS ; ; If the File Manager Opcode is ; isn't write, exit with error ; status passed in carry. ; ^0 FMOPCOD #4 >1   ; ; If writing to disk, simply ; allocate another sector for ; the T/S list and continue. ; ^1 ALLOCSEC #2 (BUFADR),Y   SCALAREA+1 (BUFADR),Y  SETUPRW ZEROBUFR #5 RELSLAST (BUFADR),Y  RELSLAST+1 (BUFADR),Y     #2 >0 ; ; If Acc=1, read old T/S list. !; If Acc=2, write new sector for ; T/S list. ; OLDRWTS #$1 ^0 CURTSTS CURTSS RWTSDRVR ; !; Compute relative sector number !; of the last sector represented ; in this T/S list and store ; in workarea. ; #5 (BUFADR),Y RELSFRST  SECPERTS RELSLAST  (BUFADR),Y RELSFRST+1 SECPERTS+1 RELSLAST+1   ; ; ; READ A DATA SECTOR ; RDDASEC PREPDATA #$1 RWTSDRVR ; ; PREP RWTS' IOB FOR READING ; A DATA SECTOR. ; PREPDATADATASADR DATASADR+1 USRBUF USRBUF+1 CURDATS CURDAS  ; ; ; READ OR WRITE THE VTOC ; RWVTOC #$1 >1 WRTVTOC #2 ^1 VTOCPADR USRBUF VTOCPADR+1 USRBUF+1 TRKNUMBR #0 RWTSDRVR ; ; ; READ A DIRECTORY SECTOR ; ; If C=0 read first dir sector. ; If C=1 read next dir sector. ; ; RDDIRSEC PRWTSDIR  >2 ; #; Read first directory sector here ; FRSTTS+1 FRSTTS >4 ^2 TSNXTDIR >3 ; ; ; If there are no more dir ; sectors, exit with error flag ; (carry) set. ;   ; ; Read next dir sector in chain ; here. ; ^3 TSNXTDIR+1 ^4 DIRTS DIRTS+1 #$1 RWTSDRVR   ; ; WRITE A DIRECTORY SECTOR ; WRTDIRSCPRWTSDIR DIRTS DIRTS+1 #2 RWTSDRVR ; ; #; PREP RWTS FOR DIRECTORY READ/WRT ; PRWTSDIRDIRPADR USRBUF DIRPADR+1 USRBUF+1  ; #; RWTS DRIVER, FINISHES UP THE IOB ; AND CALLS THE RWTS ROUTINE ; RWTSDRVRTNUM SNUM SETCMDCDCMDCODE #2 >4 ; ; If writing to disk, note this ; in "FLAGS". ; FLAGS FLAGS ; ; Compliment the volume number ; ^4 VOLNUMBR #$FF VOLEXPT ; ; Init such niceties as slot, ; drive, sector, etc. ; SLOT16 SNUM16 DRVNUMBR DNUM SECTLEN BYTCNT SECTLEN+1 BYTCNT+1 #$1 TBLTYPE ; ; Call the RWTS subroutine ; RWTSPADR RWTSPADR+1 CALLRWTS ; !; Fiddle with the volume numbers ; before checking for an error ; ; VOLFND VOLVAL #$FF VOLEXPT ; ; If no error, quit ; >5  ; ; ; Convert RWTS error # to an ; error number usable by the ; file manager. ; ^5 ERRRCODE #7 #$20 >6 #4 #$10 >6 #8 ^6 SETERROR ; ; !; READ NEXT DATA SECTOR IF REQ'D ; ; #; Check to see if the current file "; position is in the current datwTI`뷍췍o UT췩 UT췩 UT` ``p}TTTT,Q,T,RT - T TT|` 234/ B/XWɮLthe range of sectors ; represented by the T/S list ; currently buffered in memory? ; ^8 FILEPOSN+1 RELSFRST+1 >0go if < >9go if > FILEPOSN RELSFRST >0 ; ^9 FILEPOSN+1 RELSLAST+1 FNDTS >0 FILEPOSN RELSLAST FNDTS ; !; Read in new T/S list, Carry is #; set or cleared from CMP's above. ; ; ^0 RDTSLIST <8  ; ; DATA WAS FOUND IN CURRENT T/S #; LIST, GET ENTRY IN THIS T/S LIST ; FNDTS FILEPOSN RELSFRST  #$C  SELTSBUF (BUFADR),Y READOLD FMOPCOD #4 >1   ^1 ADDATA SAVSECNM ; #; READ EXISTING DATA USING CURRENT ; T/S LIST ; READOLD CURDATS  (BUFADR),Y CURDAS RDDASEC ; ; SAVE SECTOR NUMBER OF SECTOR ; LAST READ IN THE WORKAREA ; SAVSECNMFILEPOSN RELSLRD FILEPOSN+1 RELSLRD+1 ; ; ; SELECT DATA BUFFER ; SLDBUF2 SELDABUF FILEPOSN+2   ; ; ADD A NEW DATA SECTOR TO THE ; FILE ; ADDATA CNTR ; "; Allocate a sector for the data. ; ALLOCSEC ; !; Put T/S numbers into T/S list. ; CNTR  (BUFADR),Y CURDAS  SCALAREA+1 (BUFADR),Y CURDATS ; !; Select data buffer and zero it ; out. ; SELDABUF ZEROBUFR ; ; set up flags noting that the ; current data and T/S sectors ; must be written to disk. ; #$C0 FLAGS FLAGS  ; ; ;: ; ; "; VARIOUS UTILITIES USED ALL OVER ; THE PLACE ; ; ; INCREMENT RECORD NUMBER AND ; BYTE OFFSET INTO THE FILE ; INCREC RECNUMBR RECNUM RECNUMBR+1 RECNUM+1 BYTEOFFS BYTEOFFS+1 VOLVAL DRVVAL  >3  ^3 OPNRCLEN+1 >4 OPNRCLEN >4 #0 #0 RECNUMBR >4 RECNUMBR+1 ^4 BYTEOFFS BYTEOFFS+1  ; ; ; INCREMENT FILE POSITION ; OFFSET ; INCPOS FILEPOSN+2 >5 FILEPOSN >5 FILEPOSN+1 ^5 ; ; !; COPY AND ADVANCE RANGE ADDRESS ; MOVRANG DATABYTE DATABYTE+1 BUFADR BUFADR+1 DATABYTE >6 DATABYTE+1 ^6 ; ; DECREMENT RANGE ADDRESS ; DECRNG SLOTVAL >7 FILETYPE >8 FILETYPE ^7 SLOTVAL  ^8 NOERROR ; ; ; LOCATE A DIRECTORY ENTRY. ; LOOKS UP A FILENAME IN THE ; DIRECTORY. ; ; ; Read VTOC to get track and ; sector number of first dir ; sector. ; LCDIRENTRWVTOC FNADR BUFADR FNADR+1 BUFADR+1 ; ; Set up for two passes through ; the directory. ; #$1 INITDIR CNTR ; ; Set up index into VTOC for ; the dir track. ; #0 DIRSECIX  ; "; Read in the current dir sector. ; INCSECOFDIRSECIX RDDIRSEC PASS2 ; !; Check for end of dir (if first ; byte is zero) or a deleted ; file (if minus, really should ; be $FF). ; #0 GETRACK DIRINDX TSTRACK,X DOPASS2 CHKPASS #0   ; ; Compare the filename against ; the current dir ' +JJJJ ?\>m0M='+l> /+L    d]@ŵLҦ]]LF L}BBL] / Xɶ +lǭӠΠ 鷎귭෍ᷩ췩緈JJJJx Lȿ L8ᷭ緍췩 緍i 8 `巬 췌`x (`(8`I`B` ``>J>J>VU)?`8'x0|&HhHh VY)'&Y)xꪽ)' `Hh`V0^*^*>&` aI꽌ɪVɭ&Y&&Y& 꽌ɪ\8`&&꽌ɪɖ'*&%&,E'зЮ꽌ɪФ`+*xS&x'8*3Ixix&& 8  '  & x)*++`FG8`0($ p,&" ɍL,L<{ƴѵ洩ƴǴҵ 7 ^  !"#$%&'()*+,-./0123456789:;<=>?ɮ / ]ƴS0JLȴ ȴ)  紅D贅E B ƴ  / 0L ΝLi`HD٤DEEhiHLGh ` ŵBѵ-` ѵB-`tL%ȴL୭gȴLIﵩgL $ B /` $*+'&'e**e++إ+ *LǵB`iai rsLq˵i̵irs8rsɵʵȱ!Ȅ뷠詷 Lþ ʾL`i=LL HIHHHHhHH݌hHhHh݌H6 ˆʎõĵL õ ĵµ aµ`` L̦µ_bJLuLz`  ȟ QlXJ̥KlV  ȟ QlV eօ3L e3L &RL &QL d L4 Ne)n `gLq֠Ơĭ f`L . tQLѤ LҦL` OPu d L Ne)noon 8ɍ` ^f\õL ^NR  RΩLҦ)\Z ʽ LHv 3h`0h8` [L NС õ`A@` ŵL^Lõ`  \ 濭0 \  ȟ Q ^\lZl^?cqH şch`fhjõĵ@OAP`u@`@&`QR`E Ls  @DAE@u`8` %@ @A@`@`@A`Mµ ) LЦ`8@AWc@8@-@HAȑ@hHȑ@ȑ@hHȑ@Ȋ@ch8&ȑ@Hȑ@Ah@LHȑ@ȑ@ htphso`hMhL`9V8U897T6S67`SAVLOAHIDRUCHAIDELETLOCUNLOCCLOSREAEXEWRITPOSITIOOPEAPPENRENAMCATALOMONOMOPRINMAXFILEFINBSAVBLOABRUVERIFpp p p p p p`" t""#x"p0p@p@@@p@!y q q p@  LANGUAGE NOT AVAILABLRANGE ERROWRITE PROTECTEEND OF DATFILE NOT FOUNVOLUME MISMATCI/O ERRODISK FULFILE LOCKESYNTAX ERRONO BUFFERS AVAILABLFILE TYPE MISMATCPROGRAM TOO LARGNOT DIRECT COMMANč$3>L[dmx跻~!Wo*9~~~~ɬƬ~_ j ʪHɪH`Lc (L ܫ㵮赎 ɱ^_ J QL_Ls贩紎 DǴҵԵƴѵӵµȴ 7 ַ :ŵƴѵǴҵȴµ納贍﵎ٵ്ᵭⳍڵL^ѵ-I `  4 ò-յ!  8صٵ紭ﵝ 7L (0+BC  7L HH`LgL{0 HH` õL H hBL BH [ h`Lo õ ڬL B ڬ LʬH hB@ յյ [L (L) ȴ 7L L ( L (ȴL{ƴѵ洩ƴǴҵ 7 ^* B0 HȱBh ӵԵ 8 L8 ݲ` ܫ  X /W ED ɮ / ]ƴS0JLȴ ȴ)  紅D贅E B ƴ  / 0L ΝLi`HD٤DEEhiHLGh ` ŵBѵ-` ѵB-`tL%ȴL୭gȴLIﵩgL $ B /` $*+'&'e**e++إ+ *LǵBȵC`,յp` 䯩 R-յյ`յ0` K R-յյ`ɵʵӵԵ` 4 K ( ѵҵLBȱBL8` DBHBH : ַ޵BȭߵBhhӵԵ RBܵmڵ޵ȱBݵm۵ߵ` 䯩LR˵̵ֵ׵`êĪLR E( 8` R` ELRŪƪ`췌 յյI뷭鷭귭ⵍ㵍跬ª 뷰` Lf ݵܵߵ޵ ^`8ܵ i B8` 4L ֵȱB׵ ܯ䵍൭嵍 ` DȑB׵Bֵ  ַ յյ`굎뵎쵬 뵎쵌``õĵBCõĵ`µµ`L õBĵCصص Qƴ0"Bƴ 󮜳` 0۰ϬBƴ8`i#`ЗLw!0>ﵭ` m ﳐ 7i볍 8 ЉLw`H h ݲL~ `浍국䵍뵩嵠Jm赍嵊mjnnn浈ۭm浍浭m䵍䵩m嵍`"L ŵ8ŵH ~(`LL ⹴ d ֠iTf{jkZȌlmn齌oLYY0TYY0Bʎkrt+%q ޴0L`w8`gLx8`ψýmn齌oХЙjЉrtФqКLM8` *HhffHh Hh Hhf fLHhjHh HhfL` 5 JJJJ V) V ` `РɠǠĠϠӠĮ͠Į٠LBmL'4BmL'иBm /  !"#3$%() ɛLڄɍ뷍췍o 췩 췩 $ !"#3()  /L / XLƢɍLqКLM8` *HhffHh Hh Hhf fLHhjHh HhfL` 5 JJJJ V) VoLYY0TYY0Bʎkrt+%q ޴0L`w8`gLx8`ψýmn齌oХЙjЉrt`浍국䵍뵩嵠Jm赍嵊mjnnn浈ۭm浍浭m䵍䵩m嵍`"L ŵ8ŵH ~(`LL ⹴ d ֠iTf{jkZȌlmn齌 z   󮜳` 0۰ϬBƴ8`i#`ЗLw!0>ﵭ` m ﳐ 7i볍 8 ЉLw`H h ݲL~  B8` 4L ֵȱB׵ ܯ䵍൭嵍 ` DȑB׵Bֵ  ַ յյ`굎뵎쵬 뵎쵌``õĵBCõĵ`µµ`L õBĵCصص Qƴ0"BƴĪLR E( 8` R` ELRŪƪ`췌 յյI뷭鷭귭ⵍ㵍跬ª 뷰` Lf ݵܵߵ޵ ^`8ܵ i ǵBȵC`,յp` 䯩 R-յյ`յ0` K R-յյ`ɵʵӵԵ` 4 K ( ѵҵLBȱBL8` DBHBH : ַ޵BȭߵBhhӵԵ RBܵmڵ޵ȱBݵm۵ߵ` 䯩LR˵̵ֵ׵`紅D贅E B ƴ  / 0L ΝLi`HD٤DEEhiHLGh ` ŵBѵ-` ѵB-`tL%ȴL୭gȴLIﵩgL $ B /` $*+'&'e**e++إ+ *LL) ȴ 7L L ( L (ȴL{ƴѵ洩ƴǴҵ 7 ^* B0 HȱBh ӵԵ 8 L8 ݲ` ܫ  X /W ED ɮ / ]ƴS0JLȴ ȴ)  `  4 ò-յ!  8صٵ紭ﵝ 7L (0+BC  7L HH`LgL{0 HH` õL H hBL BH [ h`Lo õ ڬL B ڬ LʬH hB@ յյ [L (_ j ʪHɪH`Lc (L ܫ㵮赎 ɱ^_ J QL_Ls贩紎 DǴҵԵƴѵӵµȴ 7 ַ :ŵƴѵǴҵȴµ納贍﵎ٵ്ᵭⳍڵL^ѵ-I AVAILABLFILE TYPE MISMATCPROGRAM TOO LARGNOT DIRECT COMMANč$3>L[dmx跻~!Wo*9~~~~ɬƬ~RUVERIFpp p p p p p`" t""#x"p0p@p@@@p@!y q q p@  LANGUAGE NOT AVAILABLRANGE ERROWRITE PROTECTEEND OF DATFILE NOT FOUNVOLUME MISMATCI/O ERRODISK FULFILE LOCKESYNTAX ERRONO BUFFERSȑ@ȑ@hHȑ@Ȋ@ch8&ȑ@Hȑ@Ah@LHȑ@ȑ@ htphso`hMhL`9V8U897T6S67`SAVLOAHIDRUCHAIDELETLOCUNLOCCLOSREAEXEWRITPOSITIOOPEAPPENRENAMCATALOMONOMOPRINMAXFILEFINBSAVBLOABl^?cqH şch`fhjõĵ@OAP`u@`@&`QR`E Ls  @DAE@u`8` %@ @A@`@`@A`Mµ ) LЦ`8@AWc@8@-@HAȑ@hHn 8ɍ` ^f\õL ^NR  RΩLҦ)\Z ʽ LHv 3h`0h8` [L NС õ`A@` ŵL^Lõ`  \ 濭0 \  ȟ Q ^\lZ3L e3L &RL &QL d L4 Ne)n `gLq֠Ơĭ f`L . tQLѤ LҦL` OPu d L Ne)nooõĵL LLЦ  #-µµ( zegehtpjigh Ql` z8L`MaEK@>ˆʎõĵL õ ĵµ aµ`` L̦µ_bJLuLz`  ȟ QlXJ̥KlV  ȟ QlV e@ NL   L` -e L գsr ࣭ml ࣭srL -µLЦ գ ze)rs zrsLV ] Qlr L̦ գ8gh ࣥhgL գ8LʨM ࣥˤLµH hLħõµ µõLD&E`( 80 0 DDLDLDL^ t^`,tP ȟpMt-^^`DH hWLԧ d@` Lꢩ  c ȢL LqLգcl mllm ꢥELȦAD@ C N cLuɠ% d: L cvc]ܢ @J0G eeʎd d E DUEX ЃDWcДJEgDfLH eeh) tt L [ _HH`]ɍ]ɬ` ɠ``DE ɤ<(LΡ DE`80!  eDeE eDDeEE8`֭ͲLɍ [LLĦ__ ^ 9 LҦ3 9 a   0LjLY u< (_9 ˭ɠuɠK_9 ?L&Y&&Y& 꽌ɪ\8`&&꽌ɪɖ'*&%&,E'зЮ꽌ɪФ`+*xS&x'8*3Ixix&& 8  '  & x)*++`>J>J>VU)?`8'x0|&HhHh VY)'&Y)xꪽ)' `Hh`V0^*^*>&` aI꽌ɪVɭ 鷎귭෍ᷩ췩緈JJJJx Lȿ L8ᷭ緍췩 緍i 8 `巬 췌`x (`(8`I`B` `` ' +JJJJ ?\>m0M='+l> /+L    d]@ŵLҦ]]LF L}BBL] / Xɶ +lǭӠΠSEC PASS2 ; !; Check for end of dir (if first ; byte is zero) or a deleted ; file (if minus, really should ; be $FF). ; #0 GETRACK DIRINDX TSTRACK,X DOPASS2 CHKPASS #0   ; ; Compare the filename against ; the current dirBUFADR FNADR+1 BUFADR+1 ; ; Set up for two passes through ; the directory. ; #$1 INITDIR CNTR ; ; Set up index into VTOC for ; the dir track. ; #0 DIRSECIX  ; "; Read in the current dir sector. ; INCSECOFDIRSECIX RDDIRILETYPE >8 FILETYPE ^7 SLOTVAL  ^8 NOERROR ; ; ; LOCATE A DIRECTORY ENTRY. ; LOOKS UP A FILENAME IN THE ; DIRECTORY. ; ; ; Read VTOC to get track and ; sector number of first dir ; sector. ; LCDIRENTRWVTOC FNADR >5 FILEPOSN >5 FILEPOSN+1 ^5 ; ; !; COPY AND ADVANCE RANGE ADDRESS ; MOVRANG DATABYTE DATABYTE+1 BUFADR BUFADR+1 DATABYTE >6 DATABYTE+1 ^6 ; ; DECREMENT RANGE ADDRESS ; DECRNG SLOTVAL >7 F BYTEOFFS BYTEOFFS+1 VOLVAL DRVVAL  >3  ^3 OPNRCLEN+1 >4 OPNRCLEN >4 #0 #0 RECNUMBR >4 RECNUMBR+1 ^4 BYTEOFFS BYTEOFFS+1  ; ; ; INCREMENT FILE POSITION ; OFFSET ; INCPOS FILEPOSN+2ectors ; must be written to disk. ; #$C0 FLAGS FLAGS  ; ; ;: ; ; "; VARIOUS UTILITIES USED ALL OVER ; THE PLACE ; ; ; INCREMENT RECORD NUMBER AND ; BYTE OFFSET INTO THE FILE ; INCREC RECNUMBR RECNUM RECNUMBR+1 RECNUM+1CSEC ; !; Put T/S numbers into T/S list. ; CNTR  (BUFADR),Y CURDAS  SCALAREA+1 (BUFADR),Y CURDATS ; !; Select data buffer and zero it ; out. ; SELDABUF ZEROBUFR ; ; set up flags noting that the ; current data and T/S sHE WORKAREA ; SAVSECNMFILEPOSN RELSLRD FILEPOSN+1 RELSLRD+1 ; ; ; SELECT DATA BUFFER ; SLDBUF2 SELDABUF FILEPOSN+2   ; ; ADD A NEW DATA SECTOR TO THE ; FILE ; ADDATA CNTR ; "; Allocate a sector for the data. ; ALLOTSBUF (BUFADR),Y READOLD FMOPCOD #4 >1   ^1 ADDATA SAVSECNM ; #; READ EXISTING DATA USING CURRENT ; T/S LIST ; READOLD CURDATS  (BUFADR),Y CURDAS RDDASEC ; ; SAVE SECTOR NUMBER OF SECTOR ; LAST READ IN TSLAST FNDTS ; !; Read in new T/S list, Carry is #; set or cleared from CMP's above. ; ; ^0 RDTSLIST <8  ; ; DATA WAS FOUND IN CURRENT T/S #; LIST, GET ENTRY IN THIS T/S LIST ; FNDTS FILEPOSN RELSFRST  #$C  SELthe range of sectors ; represented by the T/S list ; currently buffered in memory? ; ^8 FILEPOSN+1 RELSFRST+1 >0go if < >9go if > FILEPOSN RELSFRST >0 ; ^9 FILEPOSN+1 RELSLAST+1 FNDTS >0 FILEPOSN RELtwTI`뷍췍o UT췩 UT췩 UT` ``p}TTTT,Q,T,RT - T TT|` 234/ B/XWɮLn ; error number usable by the ; file manager. ; ^5 ERRRCODE #7 #$20 >6 #4 #$10 >6 #8 ^6 SETERROR ; ; !; READ NEXT DATA SECTOR IF REQ'D ; ; #; Check to see if the current file "; position is in the current da; ; Call the RWTS subroutine ; RWTSPADR RWTSPADR+1 CALLRWTS ; !; Fiddle with the volume numbers ; before checking for an error ; ; VOLFND VOLVAL #$FF VOLEXPT ; ; If no error, quit ; >5  ; ; ; Convert RWTS error # to aLAGS FLAGS ; ; Compliment the volume number ; ^4 VOLNUMBR #$FF VOLEXPT ; ; Init such niceties as slot, ; drive, sector, etc. ; SLOT16 SNUM16 DRVNUMBR DNUM SECTLEN BYTCNT SECTLEN+1 BYTCNT+1 #$1 TBLTYPE  READ/WRT ; PRWTSDIRDIRPADR USRBUF DIRPADR+1 USRBUF+1  ; #; RWTS DRIVER, FINISHES UP THE IOB ; AND CALLS THE RWTS ROUTINE ; RWTSDRVRTNUM SNUM SETCMDCDCMDCODE #2 >4 ; ; If writing to disk, note this ; in "FLAGS". ; F  ; ; Read next dir sector in chain ; here. ; ^3 TSNXTDIR+1 ^4 DIRTS DIRTS+1 #$1 RWTSDRVR   ; ; WRITE A DIRECTORY SECTOR ; WRTDIRSCPRWTSDIR DIRTS DIRTS+1 #2 RWTSDRVR ; ; #; PREP RWTS FOR DIRECTORY ; If C=1 read next dir sector. ; ; RDDIRSEC PRWTSDIR  >2 ; #; Read first directory sector here ; FRSTTS+1 FRSTTS >4 ^2 TSNXTDIR >3 ; ; ; If there are no more dir ; sectors, exit with error flag ; (carry) set. ; RBUF+1 CURDATS CURDAS  ; ; ; READ OR WRITE THE VTOC ; RWVTOC #$1 >1 WRTVTOC #2 ^1 VTOCPADR USRBUF VTOCPADR+1 USRBUF+1 TRKNUMBR #0 RWTSDRVR ; ; ; READ A DIRECTORY SECTOR ; ; If C=0 read first dir sector.TS RELSLAST  (BUFADR),Y RELSFRST+1 SECPERTS+1 RELSLAST+1   ; ; ; READ A DATA SECTOR ; RDDASEC PREPDATA #$1 RWTSDRVR ; ; PREP RWTS' IOB FOR READING ; A DATA SECTOR. ; PREPDATADATASADR DATASADR+1 USRBUF USite new sector for ; T/S list. ; OLDRWTS #$1 ^0 CURTSTS CURTSS RWTSDRVR ; !; Compute relative sector number !; of the last sector represented ; in this T/S list and store ; in workarea. ; #5 (BUFADR),Y RELSFRST  SECPERntinue. ; ^1 ALLOCSEC #2 (BUFADR),Y   SCALAREA+1 (BUFADR),Y  SETUPRW ZEROBUFR #5 RELSLAST (BUFADR),Y  RELSLAST+1 (BUFADR),Y     #2 >0 ; ; If Acc=1, read old T/S list. !; If Acc=2, wr (BUFADR),Y  OLDRWTS ; ; If the File Manager Opcode is ; isn't write, exit with error ; status passed in carry. ; ^0 FMOPCOD #4 >1   ; ; If writing to disk, simply ; allocate another sector for ; the T/S list and coead ; in the next sector of the ; T/S list. ; ^9 #$1 ; "; If the track number of the next ; sector is zero, there isn't ; another T/S sector available. ; (BUFADR),Y >0 ; ; If there is another T/S list ; available read it in. ;  ck to see if the ; current T/S list must be ; written to disk. ; CHKTS PREPRWTS SELTSBUF  >9 ; ; If the carry flag is cleared, ; read the first sector of the ; T/S list. ; FTSTS FTSS OLDRWTS ; !; If the carry flag was set r>qΙzu hhnΪHHy΅ȱ΅FؠoΪȱΠΊ` QP`5lPQQPlP eh8ehil* e뺽8eilPQ` ee` ee`΅ȱ΅`Υȑ`>eȘΰ`ΐޢMlȥȊ`쪈눱`%00 00 ` `ꥥ`ҥ %Lhihihhh  llΊȑ8f``5l0L[5l \`hihihhhlhihihh8hhelhhlﺽ}%} (i `(i!l 4)$0 0ihhHH` 0l J i`l r`쥝@Ɂ:ɑ=ɐ))Q&&Q*$0P`IPQIiQP`QߩPQ`5l쥢0"ɁɉɈ )*``IiQPIiP`$P0`P0QЧ`QP`Q8SPRp 0 `0``hhʚHH芠L+hihiHHHHHl뺽ɁhhiL+iҺɁ0liɁݥۘՊi ꥢ뺽 纽 +뺊i 뤹"湱"湱:,`hihihEhhhhhlPQQPPQP`hihi r륝HHHHHHl+%0#0 00QP`QPSRQP`QPSR`QPϥQeSQPeRP`S8QQRPP`Q o8}νȑΦ:ʽ),"l $ߠL1 )0&w`V3 \ j8  J(䥸:`8f H JhŸ ,  r,n,,*lRN <,8[ oLfHHHHHHHHHFةHHH3vv>j>Z[΄ϩ> o$0LNLK$0W ] 1 hh 1l> ? \۽` \(>  A =Lu͠ɠŠޥ>>>Li EFXFFF$$$éʮ j8L =L< B E By DF D [DLE=Ll= pFqFrF CpFqFrF C X 󩃠 B EF B?F B iE B E B E +Š F +L7L>>hhhhhhhhhe؍Z;y DF D [DL REDUCED ARM MOVE DELAY? ----> UPDATE IN WHICH SLOT? ------> UPDATE IN WHICH DRIVE? -----> RETURN TO MENU ACTIVE KEYS...(SPACE) (ARROWS) (RETURN)-=><=-NRMPR#6 UPDATE DISKS MODE WARNING! THIS XIT TO BOOT SELECT --> SPACE / EXECUTE --> THE BIG PIG SOFTWARE COMPANY <- MODIFY PARAMETERS MODE GREETING PROGRAM NAME HELLO PROGRAM FILE TYPE? ---> LANGUAGE CARD RELOAD? ------> WHICH CATALOG TYPE? --------> CATK PICL `?)I뷍췩 췩  췩/  췩?  췩O  췩_  췩o 췩 췩 ,Qލ5?L `j::"<) QUIC I Lu͠ɠŠޥ5 6 ( Li  $$$éʮΥ쥢0"ɁɉɈ )*```5l0L[5l \`qΙzu hhnΪHHy΅ȱ΅FؠoΪȱΠΊ` h' ک L ( hhhhhhhhhe؍Z[ oLfHHHHHHHHHFةHHH3vv( Z[΄ϩ  o$0LL$0W ] 1 hh 1l7 ? \۽` \(  A8$Lc ABLOADPIC1,A$4000BLOADPIC2,A$4000BLOADPIC3,A$4000BLOAD PIC4,A$4000BLOADPIC5,A$4000 NOW RETURNING TO PROGRAM... BRUN ک   ک# ک4 کE کW X 󩔠 S ~  H$HJ"D 0`` "*Jh  `x`p`qNs@$R @p  `J*YD~(Vo\|w%%I$"B@@` `0D @jw7,RR"80L)u|ML `?R9-@s0x?p0@w*IA$  @| @ @R<4Yp[}?%|00I(&x{R$R "BUoNLa,A$"A `A)nP*fnY  @@pD <0$!@ Uudv10` F1n   xD@: ~?@=U"f Q,_/@_JJ$"D`"*5zo6)$"Dp@ "V ""0``BH)Nz~{ p@`Cg@[o~=I"@D @x $$(AG&)`_c@@AQ\|w) %  0`p@! B to=9+ I$@$D!@@ T`Y7K$%! H$uQIA@B `BH . :Fa@p`~`C1LYI$Ax@")D8@xpV*Mly `"Q~{`+I@!pH}X%IDc0`~?@C)mpld$$LD@ `A1$%ups@`|@}ZW$( B >I@{/I8`!$"y~~kEI$D @| @AJ{wVRDI$%I@@`0DHwe&fx%"@ @`!$`$( Apx!$J2[G```0 36s,()"D`~?`@DY@@C~pw+Us?  D$~p}* % HB`?|@BIBvrw,KJ C<8DTv?IH!A@ @`` IRZ?@>~?xa@w}+SDA `@ JTh%V$  FHMg~WjI@$ A    %5c;k/(I p"$*HYfI$J$ @`@ABr*" ~pp`5P7b0 `8@ bLm~~I$D!  "R.88|{| G@xx@C_,Uv+b`@Bez-)Q A ` @@"T6?/{HR*$ cpa8lVvX-ZI$"B!  @~~ "$RT>|Vj>O_ $ " !D$Ht6|[D0@p``Dly@}_J % A `` " Hr{6K*@$D`~@A$$[1c-  H8pI$Y)(Dc00@@b$EhM1BCA<`@C!Ye[?$ AppB@9vA8`~@88@AR*@62B c `@@8`0f$Rv}8I"%" C!DPysG@<cqoh?JD${?p=-S(I@B@pI((n_w:@U$3bqp@A@_w3=p?{R$ ! 0`8@AIUo(us%HI@!0@0!@`3`m C@ c|@}?U$H$B<@AQ:o4K @I @DB@` 0B$p[$(@ @!")            R*Ԫ5)UbH@"ĊЀ @"*ժ-Ղ@*+]*V "Ԁр  ժ%JjT"*+U@T*U* @@@ ((P-UU*U-U Ш   $Z*5j @т @*J*-M*J*ה @Ă@jղjT"-R!@(@Ղ P* ժZ UU*UUЀP Ԁ P т @H  ՊjjԪ@т((PЂժժ*5*U*)Ѐ(( ԪժժIRU * ԀP@ժժUT*U*V*ԀЂ@Р(! Ѐ  @  ԪժՀ*UJ@(@Ђ@ HPҪժՂ*U*U-UUЂժՀԖ%UUV #Ơ(!РD@ժժՂ T*V*U*J*@"Ԃ@ Q@Ђ@`Ђ (ЪZЀPA ЀPԪUʪ*UV+UU 5(@ĀЪZжUZUJ*Њ* @ P@**ժVPZ*U*U*Ԁ@P ՀЂ TB ! ԪժQ+Ѕ(P ժي*UZ+U*V* Ј ժ5Պ\T*+ЄՊ@ժժP*ժ*U*U-UՀ TTĀ  ШժJ^ @ZЊ jUj.U*J*Ѐ PѪժj*W-J(T@T* PH @"@ ĊQ@ P%֪jUH*(P(@ @*@RԪU-U*U*( ժ֪J*S*U Ҁ(Ѐ@   @ DUP           `Asp UԪժA`a@*UUP@ԈU*׊(UR,%Ю.`#w@*U*U ժ@Vj*U*A营@1b@PT**U (\Ԣ`9U  @J*)U @ķƄB`  tPT*UT 5xAN@UVU p *(P88Fհ* Pp~@@*@A媗@(UR-%@#Ѻp ``*U*UժՂ@PV**U* @(1BЀ`PU**U AЊx0T* @j*+U @C 8 `TPV*UU `1(@`URVU`qq̇pU*ժP*U 1 L@pԠԢ P@0@xՊ(U p`Ղ@(UT%- ؊8Ċ@*U*U@``a.cpU*UU @'8P*U*UłՂ@@*I*U*Uم@F ნ8(рԪЪ|p0Հ@*E*0 @J*-U ĀլŠ(Uࠥ UR*U .u(DfUT*U|@x/42PTj*UȤܤ GsϿpԪ@*U@T2`8xA1QK~?PU*UT           @Hϒ聠 P@@ު  T@ @ T@`~l?R @@@œÅϐ@ߊ x@  8 T %$6  @@  ` ժ @(@ph͆a՛P4*T@H(Ւ@T T T T@p7*@x@ëĂ@` ?@1~(D   u< F| @@  @ ժ܇ T @0@(L@; *TPT@` PTTTT@X5p  T T T T T T T @@wӅ݋P088 @ c (* ?4o f  @@  @ 8ժꝃPBgcxxxx``x@(h~p ? D  `0 ߀P,P T@xU@ D TD D TTT@A@A“@ȶ؃ĀP 8 ` @ؖp_b `( * *&4[ v  @@L ! @oժ  P@Y|||``|(9Òȁ`} c( ڀUPʞը@@ת*@ P T@lU    T@@A@o󊈫Ղ䕮Ӫݪ P  @(@@ p!0 px(@* *  >  @@l "@8תժP@:$<<``<`(@΂ ǒ}⊀Հ葡pp@Ъ"P Te `    T@@ #@08 !Ԡ뒀((|@0 ` (ժ T @ `fAep    @@< @תժ ("P`+4<``< (L3@@؂bҿêӘ@С킐ʈ͊@|s ѳPD TTTTTTT@? `   T T `bƒ0 Ӑ (@(x@x 0~(P@< xx| |@x2@תժ P }"><``<`/&@~PЂ@@Ւ@ʺÜȔ|D&Њ (PT T T T T T T T  `  TT @e&pģ *( 8@zx,@@ժP@ 0֪ժ R0 "TBP %&  @@   `@|               |8~`^=<~~pXa `0$$0"Qpo];wn}]0UzժԪժЂՀ䐄z#ЂЂ@pqpy8x @gc#cba0wn];sf];wN];ժՀԪժЪՊՀԪՂ^;wn];wb];7xxu*U:}ЂЂpn];wn];wn];wP᠂~8~`^=<~?~@Ya̙`@?H |O`0x`@ |~wn];0T] UjժժժժժժժժժժժժժժժժժժժժժԪժЂՀЪՀoU9wn];cnpCCp 1 qx$bB, ̄ϙl0@;pժЪՊ@@cxaa̙̙^C7l];wn];Wg]@!fG4q_ЂЂ @`];wnSKwn] wnժԪժЪՂՀЪՀ|n];wn]8wn8pw*}wUzЂЂp;wn];wn];wn]0Ё>8>`<>><>S`;`|x>`<<>8~?``TU UjpժՀԪժЂՀԪՂ`og];wh];wnq; $$ I $"2E O< n0?ժЪժ@̙̙;v\1wn];wnM3w!QG"ЂЂԊ @@wn];q];wN]; ժԪժЪՀՀX;wn];n];,`n*U*=ЂЂ@o];wn];wn];w`؃>><>`<|<>V̙@Oo0~?|>`><>8~\ UzفD#pN|A `qL +pժՀԪժЂՀԪՂ 8AwnU9wn];qn $x |$r"""CHH̙l :`<ժՀЪժ@̙كo^#vf];wn];Of]#&d#}>"DЂЂԊ̙@];wn];vn] wn ժժժժժժժժժժժժժժժժժժժժpn];wnA;wn&@Vx*W*5ЂЂ;wn];wn];wn]@~?|~|<x~?~\=8~ >><>`>?<><>\ $$ QeA< "R,ժՂԪժЂՀժՊ@@qy`xx@% `A`cH_;wh];wnQ;0 $D  D$2"""EHH|`l8`ԂЂ@pb̙̙||N\ wn];wnM3wf9?"ЂЂԊ̙̙wo];wn^;w];`;wnE;wn];&@WXj8_*=ԂЂn];wn];wn];w|x~?~?<p~~?X̙/&`l>8>`~?~?>>Xb ̙$ A" "R(xՂЂՀЊ@ D fc#"L]l8S>8>`~?~?>> X $ <xO"` ="RhԂЂ@ xq|D $$$rwx];wz];w~\;@ $$ ȱ|`l>8ЂЂ@x.\;vn];wnM;wHԂЂԊ̙̙e];wnY;wn]30f|wn];wn];fw{*0u+gժՂԪժЪժՀժՊp];wn];wn];w,G`؄͙,Xpxsx8~`^=~?~~Xc ̙`$ "eQ<p//sЂЂ@  DD $$dl]#wnS3wn]vnpCC ̐lo`?8o`2ЂЂ@GcxaaX;qn];wn];wn]X᠃ժՀЪՀ̙̙ppo];sn];Wg=  ժժժժժժժժժժժժժժժժժժժժ@_;wn];w m:0UR0ժՀԪժЪժՀԪՂ@wn];wn*wn}L<&}/Uz1""" " " " " """""""""!!! ! ! ! ! !!!!!!!!!