' +JJJJ ?\>m0M='+l> /+l   d]@ŵLҦ]]LF L}BBL] X  ` 鷎귭෍ᷩ췩緈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,&"ųųೳŪŪųųij  !"#$%&'()*+,-./0123456789:;<=>?   1 '" *"( (9"1 ( ,.(0# 2  /#0/#0 *?'#07#00/0/'#07#0:"4<*55/**5/*%5/)1/)1/)1/)'#0/#0*5/*75/**5/*:5//#0/#0'#07#0:::*::'#07#0"):$(%"%:$(%"%$$2%4%$$2%4%$(2()!)E(!8b $!H(+ "@H !D)"E` @ $ C ` DQ &J80^݌Hh ü ü݌ ռ ռ ռA ļD ļ? ļAEDE?HJ>h Լ ռ ռ ռ`HJ>݌h Hh݌`葠葠ȔЖȔЖȠHIHHHHhHH݌hHhHh݌H6 VDP (ED Z $0x8x D- ܸDD# H8`?E Vk *f???0xE Hh D#-EEE8` D ܸx D - ܸx8`-0ݩ?ʥD EEE`   LDcpq` [` ~  LӜu`".Q`pNФbptťܥm2<(-Py0\|e<6e<g< JJJJj귍hI  aUL@ kU8  L  Q^R(jQ0l^l\  wUuW ԧ H h@ [_ /QSIRb_L`LLLL`ª`LQLYLeLXLeLee ўQH\(h0L& Ꝥ$`( R \ZLl8 ўR HH\`\Z[YS6`LxQɿu3'RͲʎRʎ]]]ɍuL͟ɍ}RLRɍg^H8 ^hZLɍR LͲɊRR% QLܤͲ Z@ -^ ş\[Z QY\[Z8`l6Lş_Ȍb_Ͳ] )Y h( ֭ͲLɍ [LLĦ__ ^ 9 LҦ3 9 a   0LjLY u< (_9 ˭ɠuɠK_9 ?LˆʎõĵL õ ĵµ aµ`` L̦µ_bJLuLz`  ȟ QlXJ̥KlV  ȟ QlV eօ3L e3L &RL &QL d L4 Ne)n `@-eff L f`L . tQLѤ LҦL` OPu d L Ne)noon 8ɍ` ^f\õL ^NR  RΩLҦ)\Z ʽ LHv 3h`0h8` [L NС õ`A@` ŵL^Lõ`  \ 濭0 \  ȟ Q ^\lZl^?cqH şch`fhjõĵ@OAP`u@`@&`QR`E Ls  @DAE@u`8` %@ @A@`@`@A`Mµ ) LЦ`8@AWc@8@-@HAȑ@hHȑ@ȑ@hHȑ@Ȋ@ch8&ȑ@Hȑ@Ah@LHȑ@ȑ@ htphso`hMhL`9V8U897T6S67`INILOASAVRUCHAIDELETLOCUNLOCCLOSREAEXEWRITPOSITIOOPEAPPENRENAMCATALOMONOMOPRINMAXFILEFINBSAVBLOABRUVERIF!pppp p p p p`" t""#x"p0p@p@@@p@!y q q p@  LANGUAGE NOT AVAILABLRANGE ERROWRITE PROTECTEEND OF DATFILE NOT FOUNVOLUME MISMATCI/O ERRODISK FULFILE LOCKESYNTAX ERRONO BUFFERS AVAILABLFILE TYPE MISMATCPROGRAM TOO LARGNOT DIRECT COMMANč$3>L[dmx- ( q  Ӡ@跻~!Wo*9~~~~ɬƬ~_ j ʪHɪH`Lc (L ܫ㵮赎 ɱ^_ J QL_Ls贩紎 DǴҵԵƴѵӵµȴ 7 ַ :ŵƴѵǴҵȴµ納贍﵎ٵ്ᵭⳍڵL^ѵ-I `  4 ò-յ!  8صٵ紭ﵝ 7L (0+BC  7L HH`LgL{0 HH` õL H hBL BH [ h`Lo õ ڬL B ڬ LʬH hB@ յյ [L (ȴ) ȴ 7L L ( L (ȴL{ƴѵ洩ƴǴҵ 7 ^* B0 HȱBh ӵԵ 8 L8 ݲ` ܫ  / / ED B / / ]ƴS0Jȴ ȴ)  紅D贅E B ƴ  / 0L Ν `HD٤DEEhiHLGh ` ŵBѵ-` ѵB-` ܫ XI볩쳢8 DH E𳈈췍Ȍ X0 · JLǵBȵC`,յp` 䯩 R-յյ`յ0` K R-յյ`ɵʵӵԵ` 4 K ( ѵҵLBȱBL8` DBHBH : ַ޵BȭߵBhhӵԵ RBܵmڵ޵ȱBݵm۵ߵ` 䯩LR˵̵ֵ׵`êĪLR E( 8` R` ELRŪƪ`췌 յյI뷭鷭귭ⵍ㵍跬ª 뷰` Lf ݵܵߵ޵ ^`8ܵ i B8` 4L ֵȱB׵ ܯ䵍൭嵍 ` DȑB׵Bֵ  ַ յյ`굎뵎쵬 뵎쵌``õĵBCõĵ`µµ`L õBĵCصص Qƴ0"Bƴ 󮜳` 0۰ϬBƴ8`i#`ЗLw!0>ﵭ` m ﳐ 7i볍 8 ЉLw`H h ݲL~ `浍국䵍뵩嵠Jm赍嵊mjnnn浈ۭm浍浭m䵍䵩m嵍`"L ŵ8ŵH ~(` d ֠z# u`:3000:120002\+(7);"ABORTING...":3000:12000;.305DDK$;"CLOSE":QDK$;"WRITE";VF$;".VIS":">";AA$(J);I;":";:A1ĺ(162);bA0C$(B)qC$:DK$:t'"ERROR : CANT READ FROM":"DIF FILE - ";SF$:"ABORTING...":"":3000:12000 *"ERROR...TOO MANY FIELDS/VECTORS":"ABORTING..."">";AA$(Q);"4:/--":Q:DK$! ' @3 T2500:J ^C$"BOT"ī1800:W hCR$"":]  "ERROR - DIF FILE OUT OF ALIGNMENT":"ABORTING...":DK$;"CLOSE": DK$;"READ";SF$:A,B:C$:((C$,1))162C$(C$,(C$)1) DK$:  "DATA"720 , R$ W10100y \DK$;"READ";SF$:TK$:A,B:C$:DK$:QQ216223:QQ,0:QQ:QQ244248:QQ,0:QQ:  DK$;"OPEN";VF$;".VIS,D";DV%:DK$;"WRITE";VF$;".VIS":">";AA$(NF%);NR%;":0"::Q1NF%:">";AA$(NF%);NR%;":0";(162);FL$(Q): DISK IN DRIVE ";QQ$;:"";IN$G DV%(QQ$):DK$;"OPEN";SF$;",D";DS%:M ] NF%0:NR%0h 850: TK$"VECTORS"750 NF%(B):NF%5011000 FL$(NF%) TK$"TUPLES"NR%(B) TK$"TABLE"TT$C$ TK$"LABEL"FL$(A)C$ TK$ FILE NAME:";SF$:"DRIVE # (CR FOR 1):";QQ$:(QQ$)0QQ$"1"p "INSERT DIF FILE DISK IN DRIVE ";QQ$;:"";IN$ DS%(QQ$):SF$SF$".DIF"::"VISICALC FILE NAME:";VF$:"DRIVE # (CR FOR 1):";QQ$:(QQ$)0QQ$"1" (QQ$)DS%ĺ"INSERT VISICALC FILERN TO THE MENU? ";IN$:(IN$,1)"Y"Ĭg @:"INSERT PROGRAM DISK IN DRIVE 1";IN$:D$;"RUN CONVERT,D1"s 11100 DK$;"NOMON C,I,O"::5:5:"DATA INTERCHANGE FORMAT (DIF)":18:"TO":12:"VISICALC (TM)"::8:"FILE CONVERSION PROGRAM":12= "DIF<W AA$(52):Q126:AA$(Q)(64Q):Q:Q126:AA$(Q26)"A"AA$(Q):Q:DK$"":500:b700:m950:I1NR%:I%(I):1600:"OUTPUTTING RECORD ";I:J1NF%:J%(J):2500:5000:J:I:3000:& 1:D$"":"DO YOU WANT TO RETU    FIELDS...ABORTING":800:10100't'450Ku'(7);"ABORTING...":800:10100D...":800:10100R'"ERROR : MAINTFILES NOT FOUND!":"ABORTING...":800:10100$'"ERROR : PFILE NOT FOUND!":"ABORTING...":800:10100.'"ERROR : PFILE & FFILE NOT COMPATABLE!":"ABORTING...":800:10100B'"INTERNAL ERROR...":"TOO MANY  DK$;"READ";XF$;",R";NR%1:Q:NR%NR%1:3575rDK$;"CLOSE";XF$:DK$;"OPEN";XF$;",D";DX%;",L5":216,0:768:x.~10030FV$(TP$,FS%(J%),FL%(J%)):FT%(J%)14020:F20:F2(FV$):'"ERROR : FFILE NOT DEFINED!":"ABORTINGF$;",R";R%:TP$: W DK$;"OPEN MAINTFILES,D";DF%:DK$;"READ MAINTFILES":10010h TP$:10000 FF$(TP$,2,10)3030 216,0:  (XF$)0ı 10100 DK$;"OPEN";XF$;",L5,D";DX%:DK$;"READ";XF$;",R1":QQ$:3600 NR%20"DATA INTERCHANGE FORMAT (DIF)"::4:" FILE CONVERSION PROGRAM":12768,104:769,168:770,104:771,166:772,223:773,154:774,72:775,152:776,72:777,96:  (XF$)02508 DK$;"READ";XF$;",R";I%:R%:2510 R%I% DK$;"READ";PFILES":TP$'II%IM%1:II%1II%7YQ%II%2621:CT$"S":(TP$,Q%,1)"*"CT$"N"z'FT%(I%)0:CT$"S"FT%(I%)1,CI$(TP$,Q%5,15):CL%((TP$,Q%23,3)):HDK$;"NOMON C,I,O":936:5:5:"DATA MANAGEMENT SYSTEM (DMS)":18:"TO":5:BTP$:(TP$,2,10)FF$11608V(TP$,1,1)" "1050mDK$;"OPEN";PF$;",D";DP%:DK$;"READ";PF$:10020NR%:RL%:DK$;"OPEN";PF$;",L";RL%;",D";DP%:DK$:3500:IM%I%((I%8)8):I%11540(IM%)11540 DK$;"READ MAINTDRIVE # (CR FOR 1):";QQ$:(QQ$)0QQ$"1"9pDX%(QQ$)Yu::"TITLE OF FILE:";TT$:_o3000:NF%0Q2120326:Q%(Q):(TP$,Q%,1)" "1160&NF%NF%1:NF%MX%10050)FS%(NF%)((TP$,Q%20,3)):FL%(NF%)((TP$,Q%23,3)):Q:1160$):SF$SF$".DIF":"DRIVE # (CR FOR 1):";QQ$:(QQ$)0QQ$"1"~ h(QQ$)DP%ĺ"INSERT DIF FILE DISK IN DRIVE ";QQ$;:"";IN$ jDS%(QQ$):DK$;"OPEN";SF$;",D";DS%::"NAME OF INDEX FILE":"(ENTER CR FOR NONE):";XF$:(XF$)0885*nXF$XF$".INDEX":":"DRIVE # (CR FOR 1):";QQ$:(QQ$)0QQ$"1"` `"INSERT DMS DATA DISK IN DRIVE ";QQ$;:"";IN$ aFF$(FF$,10):DF%(QQ$)::"NAME OF DMS PFILE:":"(ENTER RETURN IF SAME AS FFILE)":":";PF$:(PF$)0PF$FF$> f:"NAME OF DIF TO CREATE:";SF$:DP%(QQ< DK$;"WRITE";SF$:A$:B%;",";C%:(162);D$;(162):DK$:B Xy bDK$;"WRITE";SF$:A;",";B:(162);C$;(162):DK$:  *DK$;"CLOSE": R10101 \"NAME OF DMS FFILE:";FF$:(FF$)20863:"NAME TOO LONG":860- _FF$FF$" "1:B0:C$"BOT":600:J1NF%:J%(J):4000:o rAFT%(J%):BF2:C$FV$:600:J:I:A1:B0:C$"EOD":600:800: :D$"":"DO YOU WANT TO RETURN TO THE MENU? ";IN$:(IN$,1)"Y"Ĭ :"INSERT PROGRAM DISK IN DRIVE 1";IN$:D$;"RUN CONVERT,D1" I%(I):1500: A$"LABEL":B%I%:C%1:D$CI$:500:A$"TYPE":B%I%:C%0:D$CT$:500:A$"SIZE":B%I%:C%CL%:D$"":500:I:A$"DATA":B%0:C%0:D$"" 6500:I1NR%:I%(I):"OUTPUTING RECORD ";I%:2500: Y(XF$)0ĺ"(INDEX NUMBER : ";R%;")", ^AL  MX%50:VR%1:M "MAXFILES 4":FL%(MX%),FS%(MX%),FT%(MX%):DK$"":Yi2000:dn850:p1000:TT$"TITLE":A$"TABLE":B%0:C%VR%:D$TT$:500:A$"VECTORS":B%0:C%NF%:D$"":500:A$"TUPLES":B%0:C%NR%:D$"":500:3000: I1NF%:        DEX FILE :";::XF$::"ABORTING...":3000:11000t)"ERROR - CANT FIND INDEX FILE!":"ABORTING...":3000:11000}*305D INDEX FILE!":"ABORTING...":3000:11000*305.":3000:11000*305..FFILE NOT FIELD COMPATABLE":"WITH DIF FILE...ABORTING...":3000:11000(DK$:"ERROR...MAINTFILES NOT FOUND!":"ABORTING...":3000:11000)DK$:"ERROR...FFILE NOT FOUND!":"ABORTING...":3000:110001h)"ERROR - NOT ENOUGH ENTRIES":"IN IN110006B'DK$;"OPEN";PF$;",D";DP%:DK$;"CLOSE";PF$:t'"ERROR : CANT READ FROM":"DIF FILE - ";SF$:"ABORTING...":"":3000:11000'"ERROR...MISSING 1 OR MORE SIZE":"SPECIFICATIONS IN DIF HEADERS":"ABORTING...":3000:11000I<("ERROR.;"READ";XF$;",R";I:R%:216,0::"ERROR":h'"INTERNAL ERROR...RECORD IS WRONG SIZE!":3000:11000'DK$:"ERROR...EXISTING PFILE NOT COMPATABLE":"WITH NEW DATA...ABORTING!":3000:11000$'"ERROR...";PF$;" NOT FOUND!":"ABORTING...":3000:RN$"0"RN$:5006=CR$(RN$,4)CR$:(CR$)(RL%2)10005mDK$;"WRITE";PF$;",R";R%:(162);CR$:DK$:spzDK$;"OPEN MAINTFILES,D";DF%:DK$;"READ MAINTFILES":10400TP$:10500FF$(TP$,2,10)6030X]10600,bDK$,Q23,3)):Q:41603TP$:(TP$,2,10)FF$4160J(TP$,1)" "4050^@OF%NF%10300dJjR%IRC%:(XF$)0İ7000"OUTPUTING RECORD ";IRC%:(XF$)0ĺ"(INDEX NUMBER : ";R%;")"CR$" "CR$:RN$(R%)(RN$)45009DK$;"READ";SF$:A,B:C$:C$""ĭ((C$,1))162C$(C$,(C$)1)L DK$:R e DK$;"CLOSE":kw6000:216,0:OF%0Q2120326:(TP$,Q,1)" "4160OF%OF%1:OF%NF%10300FS%(OF%)((TP$,Q20,3)):FL%(OF%)((TP$$;",L";RL%;",D";DP%:@'T2500:>^C$"BOT"ī1800:KhCR$"":Q"ERROR - DIF FILE OUT OF ALIGNMENT":"ABORTING...":DK$;"CLOSE":A02100C$(B)4Q(C$)FL%(J)1:C$C$" ":Q:CR$CR$(C$,FL%(J)): A :DK$;"READ";PF$:RC%:OL%:RL%OL%10010QQ216223:QQ,0:QQ:QQ244248:QQ,0:QQ:DK$;"OPEN";PF$;",D";DP%:DK$;"WRITE";PF$:(OPT$,1)"U"1075.RC%NR%:9903RC%NR%RC%NR%5RC%:990(OPT$,1)"A"RC%0DK$;"OPEN";PF100507(OPT$,1)"R"ĺDK$;"DELETE";PF$;",D";DP%RL%FS%(NF%)FL%(NF%)1:QQ216223:QQ,0:QQ:QQ244248:QQ,0:QQ:(OPT$,1)"R"1020DK$;"OPEN";PF$;",D";DP%:DK$;"WRITE";PF$:NR%RL%:DK$:10020*DK$;"OPEN";PF$;",D";DP%I1NF%:FL%(I)1788Q"FIELD WIDTH FOR DMS FIELD ";I;": ";:"";FL%(I)~:I2NF%:FS%(I)FS%(I1)FL%(I1):I:/4000:4RW10100\DK$;"READ";SF$:TK$:A,B:C$:DK$:QQ216223:QQ,0:QQ:QQ244248:QQ,0:QQ: 10700/ DK$;"OPEN";XF$;",D";DX%;",L5":216,0? NF%0:NR%0J 850:b TK$"VECTORS"750 NF%(B):FS%(NF%),FL%(NF%):I1NF%:FL%(I)1:I TK$"TUPLES"NR%(B) TK$"SIZE"FL%((A))(B) TK$"DATA"720 FS%(1)6:FH%0815A)PPEND, OR (U)PDATE:";OPT$:OPT$"U"OPT$"A"OPT$"R"610Q dOPT$"U"620 f:"INDEX FILENAME (CR FOR NONE):";XF$:(XF$)0620 i"DRIVE # (CR FOR 1):";QQ$:(QQ$)0QQ$"1" jXF$XF$".INDEX":DX%(QQ$) l  (XF$)0710 )DS%ĺ"INSERT DMS DATA DISK IN DRIVE ";QQ$;:"";IN$G PF$(PF$,10) DP%(QQ$):DK$;"OPEN";SF$;",D";DS%::"DMS FFILE NAME (CR FOR NONE):";FF$:FH%0:(FF$)0560 "FF$(FF$" ",10) %DF%(QQ$): 0FH%1: X> b:"(R)EPLACE, (ILE CONVERSION PROGRAM":12:"DIF FILE NAME:";SF$:"DRIVE # (CR FOR 1):";QQ$:(QQ$)0QQ$"1" "INSERT DIF FILE DISK IN DRIVE ";QQ$;:"";IN$ DS%(QQ$):SF$SF$".DIF"::"DMS PFILE NAME:";PF$:"DRIVE # (CR FOR 1):";QQ$:(QQ$)0QQ$"1"5 (QQ$DO YOU WANT TO RETURN TO THE MENU? ";IN$:(IN$,1)"Y"Ĭz @:"INSERT PROGRAM DISK IN DRIVE 1";IN$:D$;"RUN CONVERT,D1" 10100^ DK$;"NOMON C,I,O":936:5:5:"DATA INTERCHANGE FORMAT (DIF)":18:"TO":5:"DATA MANAGEMENT SYSTEM (DMS)"::8:"F~ MX%50:32DK$"":DK$;"MAXFILES 4":500:>x600:I700:T950:`1500:}I1NR%:I%(I):1600:J1NF%:J%(J):2500:2000:QQ216223:QQ,0:QQ:QQ244248:QQ,0:QQ:J:5000:"I:3000:9 1:D$"":"           UMN WIDTH & COUNT!":9999!'(7);"ABORTING...":800:450p'DK$:"ERROR...CANT READ LABELS FROM":"VISICALC REPORT FILE:";VF$:9999$'DK$:"ERROR...CANT READ DATA FROM":"VISICALC REPORT FILE:";VF$:9999.'"ERROR...VISICALC FILE NOT COMPATABLE":"WITH SPECIFIED COL  R$"":100205 DK$;"READ";VF$;".VIS"L A$:A$(13)2550_ R$R$A$:2520 DK$:216,0:(R$)(RL%NF%)10030 FV$(R$,(J1)RL%1,RL%):FT%0:Z1RL%:Z$(FV$,Z,1):Z$"/"Z$"9"FT%1:4060ZF2(FV$): DOES":"THE -DATA- COVER?";NR%::"WHAT IS THE COLUMN":"WIDTH ON THE REPORT?";RL%:m A$:A$(13)1510s y  DK$;"NOMON C,I,O"::5:12:"VISICALC (TM)":18:"TO":5:"DATA INTERCHANGE FORMAT (DIF)"::8:"FILE CONVERSION PROGRAM":12TE: ";SF$:SF$SF$".DIF":"DRIVE # (CR FOR 1): ";QQ$:(QQ$)0QQ$"1" f(QQ$)DV%ĺ"INSERT DIF FILE DISK IN DRIVE ";QQ$;:"";IN$ jDS%(QQ$):DK$;"OPEN";SF$;",D";DS%: U :"HOW MANY COLUMNS":"DOES THE REPORT COVER?";NF%::"HOW MANY ROWS R9999[ \"NAME OF VISICALC FILE: ";VF$:"DRIVE # (CR FOR 1): ";QQ$:(QQ$)0QQ$"1" ^(VF$,4)".VIS"VF$(VF$,(VF$)4) _"INSERT VISICALC FILE DISK IN DRIVE ";QQ$;:"";IN$F bDV%(QQ$):DK$;"OPEN";VF$;".VIS,D";DV%::"NAME OF DIF TO CREAN TO THE MENU? ";IN$:(IN$,1)"Y"Ĭf :"INSERT PROGRAM DISK IN DRIVE 1";IN$:D$;"RUN CONVERT,D1"l  DK$;"WRITE";SF$:A$:B%;",";C%:(162);D$;(162):DK$: X bDK$;"WRITE";SF$:A;",";B:(162);C$;(162):DK$:  *DK$;"CLOSE"::C%RL%:D$"":500:I:A$"DATA":B%0:C%0:D$"":500:I1NR%:I%(I)i O"OUTPUTING RECORD ";I%:2500: ^A1:B0:C$"BOT":600:J1NF%:J%(J):4000: rAFT%:BF2:C$FV$:600:J:I:A1:B0:C$"EOD":600:800:% :D$"":"DO YOU WANT TO RETUR  VR%1:2DK$"":'i2000:2n850:=900:FL$(NF%):A$"TABLE":B%0:C%VR%:D$VF$:500:A$"VECTORS":B%0:C%NF%:D$"":500:A$"TUPLES":B%0:C%NR%:D$"":500:I1NF%:I%(I)E A$"LABEL":B%I%:C%1:D$FL$(I%):500:A$"SIZE":B%I%     100,1200,1300,1400,1500, D$;"RUN DMS,D1"E LD$;"RUN VIS2DIF,D1"^ D$;"RUN DIF2DMS,D1"w D$;"RUN DMS2DIF,D1" xD$;"RUN DIF2VIS,D1" :"ENTER DRIVE (1 OR 2): ";DD$:DD(DD$):DD1DD21500 "CATALOG,D";DD:DD$:300. . DMS. . . . . . TYPE 2" |:"DMS . . . . . DIF. . . . . . TYPE 3"::"DIF . . . . . VISICALC . . . TYPE 4"::"TO SEE A CATALOG . . . . . . TYPE 5"::"TO RETURN TO THE DMS . . . . TYPE 0":::"ENTER CHOICE: ";A$:N(A$):N0N5N0 XN11000,1 D$"",:5:"DATA CONVERSION PROGRAMS - 1.1":17:"USING"::4:"":4:"":::"FROM TO " g:::"VISICALC. . . DIF. . . . . . TYPE 1"::"DIF . . .   <<><><=<ȱ<ɀ 0Xe<<e==ץ<=<ȱ<=<?>`IIN$;:19020 ʚ8h<鎅@h=Ae<<e==<:?<e@>?eA?e<<e==ȱe<<e==о7<=? <>0'8O;_>oP`p@L?XLOXL_Xij`` X>< X<> X=Z$:W$lDASH$?18JSIMULATE INPUT STMTABJA$"":CX%0[LJIN$:IN$(21)19020rQJIN$(24)CX%1:VJIN$(13)Č868::[JIN$(3)ij`JIN$(8)A$A$IN$:19070jJ(A$)1ĺIN$;:19010oJA$""19020tJA$(A$,(A$)1) ~J TERMINATION'zDD$;"CLOSE IMASTER"=DD$;"CLOSE ";AC$i:"1C05 DO YOU WISH THE ACTIVITY FILE""SCRATCHED (YES OR NO)? ";A$A$""6035(A$,1)"Y"ĺDD$;"DELETE ";AC$:6999(A$,1)"N"6030WX PRINT ERROR REPORTb4 SUBROUTINE TO GET A MASTER RECORD.?W%MN%PW%MR%5500mDD$;"READ IMASTER,R";W%uY$~DD$MN%MN%1X%((Y$,51,10)): EXTRACT CURRENT QTY.X$(Y$,6,10): EXTRACT ITEM CODE5999|Z%1op7000 39992OUTPUT UPDATED MSTR RCDAY%04999NA$(X%){(A$)10A$(" ",10(A$))A$Y1$Y$Y$(Y$,50)A$(Y1$)60Y$Y$(Y1$,(Y1$)60)DD$;"WRITE IMASTER,R";W%(34)Y$DD$Y%0ASTER RECORD4 Z%03500: JUMP IF END FILE` X$R$(0)3100: JUMP IF MSTR RCD FOUND X$R$(0)3320: JUMP IF NOT YETH W$"NO MATCHING MASTER RECORD"M 7000R 3999: EXIT NO MATCHING MSTR RCD W$"NO SUCH ITEM CODE" STR  MATCH-MAINTAIN MSTR RCD;& R$(1)"+"A%(R$(2))W0 R$(1)"-"A%(R$(2)){: X%X%A%:ADJ MSTR RECORDD Y%Y%1:SET MSTR UPDATE FLAGX 3999 NEW ITEM 4000:OUTPUT UPDATED MSTR RCD  5000:GET NEXT MCT ACTIVITY CODE>HR$(2)(Z$,17,10): EXTRACT QUANTITYHR2999^ Z%1:END OF FILEd  PROCESS ACTIVITY RCD R$(0)X$3100: JUMP IF SAME ITME R$(0)X$3300: JUMP IF NEW ITEM R$(0)X$3500: JUMP IF NO MATCHING M$AN%AN%17(Z$,16,1)"+"(Z$,16,1)"-"2050VW$"INVALID ACTIVITY CODE"`7000j2010(Z$,6,10)X$2100 W$"OUT OF SEQUENCE"7000 20104R$(0)(Z$,6,10): EXTRACT ITEM CODE>R$(1)(Z$,16,1): EXTRA$"P"ĺ:"1C04 ENTER PRINTER SLOT NO. ";SL%= SL%0A$"T"S SL%0SL%71034n SL%0ĺDD$;"PR#";SL%y R$(2) X$"0000000000" $MN%1:AN%1   GET AN ACTIVITY RECORD AN%AR%2500 DD$;"READ ";AC$;",R";AN% Z$DDC$ AC$""AC$"IACTIVITY"3 DD$;"OPEN ";AC$H DD$;"READ ";AC$U AR%,AL%s DD$;"OPEN ";AC$;",L";AL% :"1C04 DO YOU WISH THE ERROR REPORT ON" "THE (T)ERMINAL OR THE (P)RINTER? ";A$ A$""A$"T" A$"T"A$"P"1030+ A------------------------------"7 DD$;"OPEN IMASTER"O DD$;"READ IMASTER"\ MR%,ML%z DD$;"OPEN IMASTER,L";ML% "1C01 THE MASTER FILE IS IMASTER" "1C02 THE ACTIVITY FILE IS IACTIVITY" :"1C03 ENTER INVENTORY ACTIVITY FILE NAME ";A:INITIALIZE$ 2000:GET ACT. RCD3 Z%0500K ,3000:PROCESS ACT.b 200:PROCESS NEXT 4000:OUTPUT LAST MASTER RECORD X6000:TERMINATION   INITIALIZATION  DD$(4): CR AA$(1): NULL DASH$"----------= ACTIVITY RCD ACTIVITYA  R$(2) = ACTIVITY RCD QTYu X% = QTY FOR CURRENT MASTER RECORD W% = RCD# OF CURRENT MASTER RECORD W$ = THE ERROR VERBIAGE 2"1C00 INSERT DATA DISK AND HIT RETURN";IN$ d1000n INVENTORY. Z% = END OF FILE FLAGL X$ = PREVIOUS ITEM CODEk Z$ = THE ACTIVITY RECORD Y$ = MASTER RECORD BUFFER Y% = MASTER UPDATE FLAG: 1=CORE RCD UPDATED R$(0) = ACTIVITY RCD ITEM CODE"  R$(1)      T FILEh# PUT A ZERO IN RCD #0 OF THE OUTPUT FILE TO INDICATE THAT THIS IS NOT A SORTED INDEX FILE.#DK$;"WRITE ";O$;",R0"#0#DK$;"CLOSE"'N DK$!O%O%1:BUMP REC #'WA(# TERMINATION ROUTINEb2# VARIABLES PASSED ON ENTRY:{<# I$=INPUT FILE NAMEF# O$=OUTPUT FILE NAMEP# VARIABLES PASSED ON EXIT:Z# NONE# CLOSE THE FILES#(O$)09200: JUMP IF NO OUTPU O$=OUTPUT FILE NAME9 O%=OUTPUT RECORD NUMBERX VARIABLES PASSED ON EXIT| O%=NEXT OUTPUT RECORD NUMBER PROCESS THE RECORDd OUTPUT RECORD #i(O$)06540: JUMP IF NO OUTPUT FILEnDK$;"WRITE ";O$;",R";O%x(Z$,4)Z$=RECORD TO BE EXAMINED8 VARIABLES PASSED ON EXIT:Y Z$=RECORD IF OK TO PROCESS} Z$=NULL IF RECORD IS BYPASSED EXAMINE THE RECORDp PROCESS THE SELECTED RECORDz VARIABLES PASSED ON ENTRY: Z$=RECORD TO BE PROCESSEDEOF4 GET A RECORD1> FIRST, CHECK FOR EOFKHZ$"": PRIME Z$=NULL\RI%NR%2999x\DK$;"READ ";I$;",R";I%fZ$:GET RECORDpDK$:RESET READzI%I%1:BUMP REC #  EXAMINE THE RECORD VARIABLES PASSED ON ENTRY: K$;"OPEN ";O$;",L5". PRIME INPUT & OUTPUTG RECORD # POINTERS.PI%1YO%1_@e GET A RECORD ROUTINE VARIABLES PASSED ON ENTRY: NONE VARIABLES PASSED ON EXIT: Z$=RECORD IF NOT EOF Z$=NULL IF CORD LENGTHNR%,RL%0 REOPEN FILE USINGI RECORD LENGTH FROMY RECORD 0.vDK$;"OPEN ";I$;",L";RL%"PLEASE ENTER OUTPUT FILE NAME: ";O$x OPEN THE OUTPUT FILE}(O$)01600: JUMP IF NO OUTPUT FILEO$O$".INDEX"D500-1599' < O%=1 SEE STMT 1500-1599= BDK$(4):CNTRL-DC Gm L"PLEASE ENTER INPUT FILE NAME: ";I$ V(I$)01999  OPEN THE INPUT FILE DK$;"OPEN ";I$ DK$;"READ ";I$  GET RECORD 0 WHICH  CONTAINS # OF RECS  AND RE  INITIALIZATION ROUTINE=  VARIABLES PASSED ON ENTRY:N  NONEn  VARIABLES PASSED ON EXIT:  I$=INPUT FILE NAME  O$=OUTPUT FILE NAME $ DK$=CNTRL-D . NR%=# OF RECS IN FILE 8 RL%=INPUT REC LENGTH :I%=1 SEE STMT 1JUMP IF NO FILE NAME+ 2000: GET RECORDL ,Z$""900: JUMP IF NO MOREd 4000: TEST RECORD Z$""200: JUMP IF THIS RECORD IS NOT TO BE PROCESSED X6000: PROCESS THIS RECORD 200: PROCESS NEXT RECORD 9000: TERMINATION :T TO BE PROCESSED, SET Z$ TOA ^ NULL (Z$=""). IF THE RECORD ISh ` TO BE PROCESSED, LEAVE Z$ ALONE. a NOTE *** IF YOU DO NOT WISH TO b OUTPUT A SCAN AND MARK FILE, c ENTER A NULL OUTPUT FILE NAME. d1000: INITIALIZE (I$)0999: TINE( < DOES NOT SET THE RECORD IN Z$N A TO NULL, THEN THE RECORD NUMBERp F THAT RECORD IS WRITTEN TO A K SCAN AND MARK FILE. P FOR SPECIAL RECORD SELECTION U JUST EXAMINE THE RECORD IN THE Z 4000 ROUTINE. IF THE RECORD IS \ NO $ DMS SAMPLE INTERFACE PROGRAM> THE PURPOSE OF THISW PROGRAM IS TO SHOWv HOW TO ACCESS DMS FILES.( THE PROGRAM WILL READ ANY DMS- FILE. THE RECORDS ARE PASSED2 ONE BY ONE TO THE SUB-ROUTINE 7 AT 4000. IF THE 4000 ROU     ;:1830&xIN$B$:IN$":CANCEL:"150,zE DISK ERROR ROUTINENDD$^216,0:790(222)0(222)15ĺG$:"FMA8 ";::"ERROR = ";(222);::" AT LINE ";(218)(219)256:1950G$:"FMA8 ";::"DISK ERROR";::" = ";(222)160DD$ #SIMULATE INPUT STMT3B$"":CX%0L&IN$:IN$(21)1830j0IN$(24)CX%1:(92)::IN$(13)Č868::1912DIN$(3)1830NIN$(8)B$B$IN$:1910X(B$)1ĺIN$;:1820bB$""1830lB$(B$,(B$)1)vIN$R$(O%)"O":G$:"FMA1 INSERT OUTPUT DISK IN DRIVE ";O%;" ";:1810\AC$"A"AC$"":X%RC%g1920uA0P%1DD$;"WRITE ";A$;",R";X%1(AD%4)01740(Y$(A),4):1750(34)Y$(A)X%X%1Y$(A)""AX(0)." D%=RECORD NO.#,ON EXIT:>6 E%=ACTUAL RCD NO. ORZ@ E%=0 IF END OF STRINGpJE%((C%1)R%)D%NE%H4%1630TE%C%R%1640^E%0hrFLUSH RCDS IN ARRAY Y$|P%=NO. OF RCDS IN ARRAYP%01800ADR$(O%)"O"D:RCD LENDD$;"CLOSE"@"SM55 ";X%;" RECORDS OUTPUTTED"OO%11510iDD$;"DELETE SORTSEQ"DD$;"DELETE SORTSTRING"G$ THIS ROUTINE GETS A RCD FROM A SPECIFIED SUB-STRINGON ENTRY: C%=SUB-STRING NO$:"FMA6 INSERT WORK DISK IN DRIVE ";A%;" ";:1810;nP%0AxS TERMINATION]1650DR$(O%)"O"DR$(O%)"O":G$:"FMA2 INSERT OUTPUT DISK IN DRIVE ";O%;" ";:1810DD$;"WRITE ";A$;",R0"X%:# OF RCDS(AD%4)01460 U%1%(B)1216,0:KILL ONERR'1320>216,0:KILL ONERRR790:FIX ONERRf(222)51920sZ$(B)""y(2SAVE THE MERGED RECORD FOR LATER OUTPUT<Y$(P%)Z$FP%P%1PP%V%1400Z16502dDR$(A%)"W"DR$(A%)"W":G%11130B1120!LJ%01130+V11203`BF:jAGtZ$Z$(B)W~Z$""1320GET NEXT RCD FROM SUB- STRING JUST SELECTED.C%B:D%Q%(B):1530E%01300DD$;"READ SORTSTRING,R";E%1260Z$(B)DD$Q%(B)Q.T%(G,3)11040: NUMERIC FIELD IF=1W(Z$(E%),H%,I%)(Z$(F),H%,I%)1080(Z$(E%),H%,I%)(Z$(F),H%,I%)11001060((Z$(E%),H%,I%))((Z$(F),H%,I%))1080((Z$(E%),H%,I%))((Z$(F),H%,I%))1100$G.11308JHOBTAIN THE NEXT RCD#RB1Z%6\Z$(B)""890=fBKpB1:1140YzABZ%1bE%BFIND NEXT NON-EMPTY RCDE%Z%1140FA1Z%Z$(F)""970FBE%:1140G0S%1H%T%(G,0):I%T%(G,1):J%T%(G,2)1920<DD$;"OPEN SORTSTRING,L";U%1;",S";SL%;",D";A%_DD$;"READ SORTSTRING,R0":H4% READ 1ST RCDS OF EACH STRINGA1Z%C%A:D%1:1530DD$;"READ SORTSTRING,R";E% Z$(A)DD$ Q%(A)2*A4830>;A$RC%:7001216,0:790:(222)61920<1920P(AD%4)0708jDD$;"OPEN ";A$;",L5"s710DD$;"OPEN ";A$;",L";U%1OPEN THE STRING FILEDR$(A%)"W"DR$(A%)"W":G$:"FMA6 INSERT WORK DISK IN DRIVE ";A%;" ";:1810 HAT FILE ";::"ALREADY EXISTS";::" - ACTION? ";:1810:CX%1590RXB$""590bbAC$(B$,1)vlB$"AGAIN"480vB$"DELETE"ĺDD$;"DELETE ";A$:700B$"CANCEL"A$"":830B$"APPEND"5901920DD$;"OPEN ";A$DD$;"READ "(A$,2,1)":"O%((A$,1)):O%1O%2490FO%0A$(A$,(A$)2)W&O%0O%DD%(DR$(O%)"O"DR$(O%)"O":G$:"FMA2 INSERT OUTPUT DISK IN DRIVE ";O%;" ";:18100690:DD$;"RENAME ";A$;",";A$;",S";SL%;",D";O%D216,0CNG$:"SM22 Tz #    ƲӠ Π "ŠŠӠŠ͠٠Ԡ ӲƠ ƲӠ ӲƠϠ ӠӰ>Ӳ< ӳ" Ӵ%ӵ-A"FMA54 ENTER NAME OF PRINTER DRIVER"::16:9000:CX%14862TK$""ė:4630eNA$K$:4710k~D$;"CLOSE CONFIGURATION":34,0::790,104:791,168:792,104:793,166:794,223:795,154:796,72:797,152:798,72:799,96:p'uHE":" MACHINE LANGUAGE PRINTER DRIVER.":" VALID ADDRESSES ARE:"::" 800-975"::9000:CX%148104835X(K$):4838"FMA53 ";::"INVALID ADDRESS";G$::4814216,0:DA(K$):DA800DA97548604835:10AVE (1 OR 2)? ";:9000:CX%147649K$""DD%1:4770XK$"1"K$"2"ĺG$:4764fDD%(K$)}AD%3,DD%:6000:ER%1ė:46307000:ER%1ĺ:46408000:4990:10u"FMA52 ENTER THE DECIMAL ADDRESS OF T%14725!v(K$)230ĺG$:47258wPT$K$::10:X6%0y"FMA51 IS AN EXTRA LINE FEED REQUIRED? ";:9000:CX%14740LF$"N":(K$,1)"Y"LF$"Y":4762(K$,1)"N"K$""ĺG$:4740:10""FMA59 HOW MANY DISK DRIVES":" DO YOU H0:CX%14680MK$""K$"1"LRPS%(K$):PS%1PS%7PS%PL%ĺG$:4680\f:10:X6%1p"FMA50 ENTER PRINTER INITIALIZATION DATA ";:9000:CX%14720q(K$)230ĺG$:4720rPI$K$::10u"FMA50 ENTER PRINTER TERMINATION DATA ":9000:CXTOR"::34,1'10:DA0:AD$"":PI$"" "FMA49 DOES YOUR PRINTER REQUIRE A":" A MACHINE LANGUAGE PROGRAM? ";:9000:CX%14640/K$""K$"N"4(K$,1)"Y"48005(K$,1)"N"ĺG$:46309:10 H"FMA65 ENTER PRINTER SLOT # ";:900(Z$)8PS%(Z$)2#DA,PI$,NA$,LF$,DD%:8000:D'DD%2DD%1U(AD%3,DD%:f*216,0:4990l216,0:790:D$:(222)44600G$:"FMA48 REMOVE ";::"WRITE PROTECT TAB";::" ":9000:4000 :11::"SYSTEM CONFIGURA1):X(0):Y43626:X15000YY161024? PL%(Y):AD%1,PL%M G$(7):\ X$(92):j D$(4):| FT%2004999 PS%1: 4500 D$;"OPEN CONFIGURATION,D1,S";PL%:D$;"READ CONFIGURATION":Z$:Z$"CONFIG"4600 Z$:"(Z$)0 # "; 31107 9000:IN$K$:(IN$)1ĺG$;:3009W IN$"1"IN$"7"ĺG$;:3009r (IN$)PS%ĺG$;:3009 SL%(IN$):216,0:AD%,SL%: ! 3120 & 216,0:790:3012 0 ::5  HH1::AD%787:' SL%(AD%):PS%(AD%2):FT%(AD%)HHĖ1:20008 9GC$;:X0(GC$):A$,B$:X:HH02200X f1:5(HH2)::"FM00 ";PH$ 1:5((GC$)2)::9:(B$,(B$)3)::HH(GC$):PH$B$:2000 216,0:IN$(HH): HH1:21:" ":868:21 21:" ":868:21::"FMA47 ENTER SLOT%\ .790::G$;"FMA67 DOS ERROR RETURN CODE = ";(222):"HIT RETURN TO CONTINUE ";:9000:d L:j  LN%1:"FM00 ";:6 2070 GC$:GC$"0"GC$(A%1)2100 (GC$)132500 "";:2020 216,0:790:2020 4216,0::(GC$"FM00 ";B$;(PD$,28(B$));"TYPE ";A%:A%A%1::120: J LN%(37): 23::"CURRENT SLOT #'S: DISK=";SL%;", PRINTER=";PS%::2000:B%(IN$)::::X0B%:A$,B$:X:A$":STOP:"1100 A$"IOCHG"3000 :1070 D$;"RUN ";A$;",D1,S";PL 5000:4000:]" CCA DATA MANAGEMENT SYSTEM - 5.2":FT%(AD%1):FT%20035nAD%1,200:| SL%PL%:#$SL%1SL%7SL%PL%(AD%,SL%:AD%2,PS%:PD$"............................"::::A%0xA$,B$:A$"/*"10004          ' (13)(4)"CATALOG"% .12010 2020F "FM11 A, AL, D, S, SM, U, I, C, X, OR E?":2016o X$""X$"-"IL%2IL%0:FX$" " (X$,1)"S"2200 (X$,1)"I"2200 (X$,1)"A"2100 (X$,1)"U"2200 (X$,1)"D"2200 (X$,1)"E"2900  (X$,1)$:  X%0:$ AL%121009 :SH%0SH%1:? O MG%12018Y MG%1 "FM11 (A)DD, (AL)ADD/LOCK, (D)ELETE,":" (S)CAN, (SM)SCAN/MARK, (U)PDATE,":" (I)NSPECT, (C)HECKPOINT,":" (X)INDEX, OR (E)XIT?" 1200:X$B$:CX%(24)CX%1:(92):13204 IN$(13)Č868::1320M IN$(3)ĺG$;:1220d IN$(34)IN$"'" IN$(8)B$B$IN$:1310 (B$)1ĺIN$;:1210 B$""1220 B$(B$,(B$)1) IN$;:1220 ( 2X$"A"B$":CANCEL:"900 7IN$BM DISK IN DRIVE 1 ";:12009 DK$;"RUN DMS,S";PL%;",D1"?  DK$;"CLOSE MAINTFILES":DR$(DR%)"D"DR$(DR%)"D"::"FMA1 INSERT DATA DISK IN DRIVE ";DR%:1200 18000: L14000:   B$"":CX%0 IN$:IN$(21)1220 IN$34,0:919 9000:" 9197 DK$"CLOSE":920o 790:G$:"FMA8 ";::"DISK ERROR";::" = ";(222){ 22000   :"FMA4 DO YOU WANT TO RETURN TO MENU? ";:1200:(IN$,1)"N"Ĭ 34,0: DR$(1)"P"ĺ:"FMA0 INSERT PROGRA<AD%787:!34,0:-34,1:: 10000:G11000:T17000:`d1000:oX%0980{AL%0:2000:X$"E"900X$"I"200,3000:X%0FX$"AL"X$" ":FX$" ":Z%Z%1:14000:200X%02004000:210                     "DMS3","TO COMPACT A FILE": "DMS4","TO DEFINE A FILE": "DMS5","TO SORT A FILE": "IOCHG","TO CHANGE DATA DISK SLOT #": "/*","/*"T #": "/*","/*" IN$;:9010#K$""90205#K$(K$,(K$)1):9140X#(IN$)31IN$((IN$)64):j#IN$;::9020#216,0:790:9000'216,0:: ":STOP:","TO TERMINATE PROCESSING": "DMS0","TO PERFORM FILE MAINTENANCE": "DMS2","TO PRINT A REPORT".''# (#-#9200$2#K$"":CX%0=<#IN$:IN$(21)9020eF#X6%0IN$(24)CX%1:(92):9999P#IN$(13)Č868::9999U#X6%0IN$(3)ĺG$;:9020W#IN$(34)IN$"'"n#(K$)237ĺG$;:9020s#IN$(8)K$K$IN$:9130 #(K$)1ĺ6,0:8999v216,0:790:(222)6ĺG$:"FMA58 ";::"DRIVER NOT FOUND"::" PRINTER NOT SUPPORTED":DA,96:8130G$:"FMA8 ";::"DISK ERROR";::" = ";(222):" PRINTER NOT SUPPORTED":DA,96:" PRESS RETURN TO CONTINUE ";:90004ĺG$:"FMA48 REMOVE ";::"WRITE PROTECT TAB";::" ";:9000:7000}`G$:"FMA8 ";::"DISK ERROR";::" = ";(222):ER%1?@JDA08999T:10:"FMA56 ";::"LOADING PRINTER DRIVER"::12:16::NA$::8100 rD$"BLOAD "NA$;",D1":21Y"6999#(K$,1)"N"ĺG$:6140-$ER%13W9XJ]ER%0:7500lD$;"OPEN CONFIGURATION":D$;"WRITE CONFIGURATION":"CONFIG":PS%:DA:(34);PI$:NA$:LF$:DD%:PT$:D$:216,0:7999DL216,0:790:(222)(PY$,X7,1):(PH$)31PH$((PH$)64):<PH$;::X7:mPY$"NONE"ĺ"LENGTH OF DATA:";:27:(PY$):"EXTRA LINE FEED:";:27:LX$::"NUMBER OF DISK DRIVES:";:27:DD%23"FMA66 IS THIS CORRECT? ";:9000:CX%16150(K$,1)"R:";:27:DA;:"INITIALIZATION DATA";:27:PX$""6125{X71(PX$):PH$(PX$,X7,1):(PH$)31PH$((PH$)64):PH$;::X7:PX$"NONE"ĺ"LENGTH OF DATA:";:27:(PX$):"TERMINATION DATA";:27:PY$""6130*X71(PY$):PH$ER%0::6:PS$(PS%):PS%0PS$"N/A"NPX$PI$:PY$PT$:PY$""PY$"NONE"ePX$""PX$"NONE"LX$"NO":LF$"Y"LX$"YES"DA0ĺ"PRINTER SLOT #:";:27:PS$DA06120 :"DRIVER PROGRAM NAME:";:27:NA$::"PRINTER DRIVER ENTRY ADD:X%1:3989&B$B$(SP$,B%(B$))J (Z$)A%Z$Z$(SP$,A%(Z$))D$(Z$,A%1):D$D$B$:F(Z$)(A%B%1):F03890,D$D$(Z$,A%B%,F)2Z$D$X$"A"4100X$"D"A$"*"X$"U"A$" " IN$(Z%):(IF,1)"0"(B$,F,1)"9"3819^F:(B$)B%Č1059:"FM21 FIELD ";::"TOO LONG"::X%1:3989vN(B$):8000:38201059:"FM20 THE FIELD MUST BE ";::"NUMERIC":::X%1:3989(B$)B%3850 (B$)B%Č1059:"FM21 FIELD ";::"TOO LONG":3560$C023:I$(C)" "3699=$I$(C),N$(C):C::XCsIt_~I$(C)ID$XA$B$X%0:G%0:(C$,1)"*"3820(B$)0B$"0":3820J%13820F1(B$):F1ĭ(B$,1)"-"3815(B$,F,1)"."G%G%1:G%23815(B$,273565 C0 FX$"SM"FX$" ":CL%1:7000? X%1:3999` ((Z$,A%,B%))(B2$)3550t FX$"SM"İ7000U%Z%:6000:FX$"SM"3560:"FMA9 CONTINUE SCANNING (Y/N)? ";:1200:CX%13586;IN$IN$""3560(IN$,1)"N"3570IELD CODE":3500 G B2$B$:Q1%Z%:Q2%NR%:IL%3Q1%XP%:Q2%XN%p CQ1%Q2%:IL%3XP%C:13700:3545 Z%C:15000 (Z$,5,1)"*"3560 (C$,1)"*"3571 X0B%1:(Z$,A%X,(B2$))B2$3580 X V%(16384):16368,0:V%1C:G$;:3502 C6C6[ A$(B$,C1):B$(B$,(B$)C):(A$)5A$A$(SP$,5(A$)) C023:C$I$(C):D$N$(C):A%S%(C):B%L%(C):C$" "3530 C$A$C$"*"(A$,4)C$"!"(A$,4)3540 C:1059 G$;"FM16 ";::"UNDEFINED";::" F$;:3420/f B$":CANCEL:"B$(27)X%1:3999Ep 3700:X%03420R C:3999X a X%1 "FM25 ENTER FIELD ID , DATA? ";:1200:CX%13502 B$""3999 B$"?"İ3600:3500 (B$)3ĺG$;:3502 C2(B$):(B$,C,1)","3512  MX%)" ":Z$("000",5(Z$))Z$:Z%NR%1:14000:"FM18 PLEASE ENTER THE FOLLOWING FIELDS:"::C023R C$I$(C):D$N$(C):A%S%(C):B%L%(C):C$" "3999Y 14000:\ "FM19 ";D$;:"? ";:1200:CX%13420b B$"^"C0CC1:3410c B$"^"ĺG:C$" "3216? C$A$C$"*"(A$,4)C$"!"(A$,4)3225M C:1059 G$;"FM16 ";::"UNDEFINED";::" FIELD CODE":3200 (C$,1)"!"3250 1059:"FM17 '";A$;"' IS AN ";::"UN-UPDATEABLE";::" FIELD":3200 3700:3200dH Z$(00 B$""3999* B$"?"İ3600:3200H B$":CANCEL:"X%1:3999k C1(B$):(B$,C,1)","3206} C:G$;:3200 A$(B$,C1):(B$)C3200 B$(B$,(B$)C):(A$)5A$A$(SP$,5(A$)) C023:C$I$(C):D$N$(C):A%S%(C):B%L%(C)400: T ^ X$"E":r *w 220006| 9000:r DK$"CLOSE "Y$:DK$"OPEN "Y$",L"RL%",S"SL%",D"DR%:2000x ~  :T$"":X$"U"3200 X$"A"3400 X$"S"35000 3999 "FM15 ENTER FIELD ID , DATA? ";:1200:CX%1ĺ(92):321)"C"FX$" ":2000'8 FX$"S"2000AB Z%NR%FX$" ":2000ZL Z%Z%1:X$"S":2300`` rj (X$)42000t XA$(X$,(X$)3):(XA$,1)"'"(XA$)12000 (XA$,1)"'"XA$(XA$,(XA$)1) (X$,1)"I"IL%2 (X$,1)"S"IL%3 13 X$"S"2999m 15000:U%Z%:14000:(Z$,5,1)"*"ĺ"FM14 RECORD ";Z%;" IS A ";::"DELETED";::" RECORD" 6000:IL%22999 X$"I"IL%1:2999$ "FM13 IS THIS THE RECORD? ";:1200:CX%12340& A$IN$:(A$,1)"Y"FX$" ":29993 (A$,"SM"X$"S":22001X$"S"(X$,(X$)2):2210f"FM12 ENTER RECORD NUMBER? ";:1200:CX%12250Z%(IN$):(Z%)IN$ĺG$:2250Z%NR%23051059:"FMA20 THE ";::"LAST RCD#";::" OF THIS FILE IS ";NR%:2000 Z%02000"AL":>X$"A":29990(X$,3,1)"'"2400AIL%2IL%0K2204]XX$"A"4200rX$"S"X$"S,1"(X$)12250(X$,2)"SM"2232(X$,2,1)","2010(X$)22010Z%((X$,(X$)2)):X$(X$,1):2300FX$"SM":X$"C"2930  (X$,1)"X"13000G X$"-"IL%1Z%Z%1:X$"I":2300m X$""IL%1Z%Z%1:X$"I":2300X$""IL%2XP%XP%1:13722:X$"I":2300XP%1X$"-"IL%2XP%XP%1:13722:X$"I":23001059:20134:X$"AL"AL%1:FX$-2IA%113030:-2IA%1:Y((2(0)3)2):Y3500Y3500F-2IX%(Y)-2DX%DR%:ID$(X$,(X$)2):(X$,4,1)":"DX%((X$,3,1)):ID$(X$,(X$)4)-2DX%1DX%2Č1059::"FMA32 DISK DRIVE # ";::"INVALID"::2000 .3IX$Y$"."ID$".INDEX":DR$(D(1):,H+G$(7):>,p+SL%(AD%):PL%(AD%1):DR%(AD%3):O,+DR$(1)"P":U,.a,.12500y,.EOF%0:Z$:216,0:,0/12999,0216,0:790:,0(222)522000,0EOF%1,2,2,2(X$)32000,2(X$,(X$)2)":NOAUTO:"AX%0:20001+1#NR%0NR%04+2#DK$;"WRITE ";Y$;",R0":NR%:?+F#RL%:J+P#DK$:U+Z#13900[+'a+'+'L%(23),S%(23):I$(24),N$(24):OUT%(30):NU%30:MK%1:DR$(2):+*+*2:UL%0::CT125:SP$SP$" ":CT:DK$(4):+4+CR$(13):,>+AA$$)1):N0B$"-"B$**OB$(B$,B%):8999R*rB$(N):(B$)B%B$(B$,B%):8999r*|B$(SP$,30)B$:B$(B$,B%)x*'#~*(#*-#Y$""9999*/#DR$(DR%)"D"DR$(DR%)"D":G$:"FMA1 INSERT DATA DISK IN DRIVE ";DR%;" ";:1200+0#FU%1NR%NR%300RL%"::"FMA1 INSERT DATA DISK IN DRIVE ";DR%:1200F)OP%0:CL%07400P)7999V)w)OUT%(OP%)Z%:OP%OP%1:7999})?)@N.01N.01N08050)BX2113:NN10:N.01N.018007)FX2*GB$((N)):B$"."("0000000000000",X2)(B$,(Bg(X10OP%1:DK$"WRITE "OUT$".INDEX,R"OC%AP%1:OC$(OUT%(X1)):(OC$)4OC$("000",4(OC$))OC$(OC$:OC%OC%1:X1:DK$(CL%17374(DK$;"WRITE";OUT$;".INDEX,R0":0:DK$;"CLOSE ";OUT$;".INDEX":MK%1:CL%00)DR$(DR%)"D"DR$(DR%)"DOPEN "OUT$".INDEX,L5":DK$"READ "OUT$".INDEX,R1":7230P'8IN$:AP%AP%1:7224h'>216,0:790:22000}'@(222)522000'B7280'HMK%1:CL%0:7999'R216,0:790:22000'W(222)622000'pDK$"OPEN "OUT$".INDEX,L5"''OP%07364RT OUTPUT DISK IN DRIVE ";OD%;:1200/&7250&AP%0:DK$"RENAME "OUT$".INDEX,"OUT$".INDEX,D"OD%:216,0:1059::"FMA44 FILE '";OUT$;"' ";::"ALREADY EXISTS"::"FMA21 DO YOU WANT TO APPEND TO IT? ";IN$:IN$""7240&0(IN$,1)"Y"72407'2DK$"OD%((B$,1)):OD%1OD%2ĺG$:7050=%OUT$(B$,(B$)2)O%OUT$""7050%(OUT$,1)"A"(OUT$,1)"Z"Č1059::"FMA30 FILE NAME ";::"INVALID"::7050%CL%0OP%NU%7400%MK%27300$&MK%3:DR$(OD%)"O"DR$(OD%)"O"::"FMA2 INSE1%,X1)"$C2C21:X120C2C21*$C10$W6$XS$^MK%2CL%1CL%0:7999d$MK%17150$:"FMA10 OUTPUT FILE NAME FOR RECORD INDEX?";:1200:CX%17050$MK%2:OP%0:OC%0:CL%0:OUT$B$:OD%DR%:(B$)37140$(B$,2,1)":"7140&%U%:C1023:A1$I$(C1):B1$N$(C1):A1%S%(C1):B1%L%(C1):C220ĺ"HIT RETURN TO CONTINUE.....";:1200z#|A1$" "6999#"FM24 ";B1$;:X10:(I$(C1),1)"*"ĺ((Z$,A1%,B1%)):6060#X1B1%11:(Z$,A1%X11,1)" "6055#X1:X11$(Z$,A$,D%,1)"@"5600N"B((Z$,((U$,D%1,3)),((U$,D%4,2)))):D%D%6:5899X"E%D%q"(U$,E%,1)"."5630"(U$,E%,1)"0"(U$,E%,1)"9"5670"E%E%1:5610"&E%E%D%:B((U$,D%,E%)):D%D%E%" "o"pd#rC20::"FM23 RECORD ";B!B$"^"AAB#!B$""AB8!(A).00001A0R!(U$,D%,1)":"5040!C$"*A":NA:8000:J%1:3700:J%0:D%D%1:(U$,D%,1)":"5020! 5999!|B$(U$,D%,1):B$"+"B$"-"B$"*"B$"/"B$"^"5550!B$"":5560!D%D%1"(U1:IX%(X1)IX%(X):X:IX%(X1)NR%: XL%XL%1:XN%XN%1N X$" ":XX$"":^ U$""5999o X$"D"5999x D%1 A%((U$,D%1,3)):B%((U$,D%4,2)):D%D%7:A0 5500:B$"+"AAB B$"-"AAB B$"*"AAB!B$"/"ĭB0AA%;" ";:X$"A"ĺ"ADDED".6X$"D"ĺ"DELETED"E@X$"U"ĺ"UPDATED"sJXX$X$:X$" ":14000:XX$"A"AX%04999~^13400hXL%1YAX%0::"FMA43 INDEX FILE DOES NOT FIT IN MEMORY":4999IM%1:XS%3IX%(XL%1)NR%:4290" XXL%XP%N$)4IN$("000",4(IN$))IN$TZ$IN$A$(Z$,(Z$)5):5000:Z$Z$W$:16000:e14000:4130k IN$(NR%1):(IN$)4IN$("000",4(IN$))IN$ Z$IN$(Z$,(Z$)4):5000:Z$Z$W$:Z%NR%1:16000:NR%NR%1:14000""FM22 RECORD ";Z(A$))l=BFL$A$:MF%DR%:DR$(MF%)"D"DR$(MF%)"D":G$:"FMA1 INSERT DATA DISK IN DRIVE ";MF%;" ";:1200x=B17066=B17068=B216,0:790:24000:17064=BDK$;"RENAME MAINTFILES,MAINTFILES,D";MF%;",S"SL%>BDK$"OPEN MAINTFILES,L240":DK$"READ0DK$;"WRITE ";Y$;",R";Z%:Z$(34)Z$:(Z$)RL%1Z$Z$(SP$,RL%(Z$)1)e;>Z$:216,0:DK$:q;>CH%1:~;s@:22000;gB;hB;|B;BY$"":"FM01 WHICH FILE DO YOU WANT TO PROCESS? ";:1200:;BCX%117030;BB$""980:>;>22000(WX$))WX$9~6WX$:X:IM%0296DK$;"CLOSE ";NX$896>96N96CR%(37):96:1:CU$(Z%):(CU$)4CU$("000",4(CU$))CU$96NR$(NR%):(NR$)4NR$("000",4(NR$))NR$96TY$" ":NO$" ":X$"A"14090 :6TY$"ALPHA":(C$,1)"*"TV6IM%013965x8X6DR$(DX%)"D"DR$(DX%)"I"DR$(DX%)"I":G$:"FMA60 INSERT INDEX DISKETTE IN DRIVE ";DX%;" ";:12008Z622000 9[6DK$;"OPEN ";NX$;",L5":DK$;"WRITE ";NX$:XL%:DK$;"WRITE ";NX$;",R1":X1XL%:WX$(IX%(X)):(WX$)4WX$("0000",42:13899076XP%(X1%X2%)2:13700:NM%113868V7$6(Z$,XD%,L2%)XA$X1%XP%:13840|7)6(Z$,XD%,L2%)XA$X2%XP%:138407*6138997,6((Z$,XD%,L2%))(XA$)X1%XP%:138407.6((Z$,XD%,L2%))(XA$)X2%XP%:138407K67L67Q6NX$""13999872665Z%IX%(XP%):~65DR$(DX%)"I"DR$(DX%)"D"DR$(DX%)"I":G$:"FMA60 INSERT INDEX DISKETTE IN DRIVE ";DX%;" ":120065DK$;"READ ";NX$;",R";XP%:Z%:6566X1%0:X2%XN%1:XS%0:L2%(XA$):NM%1L2%L1%XX$"A"L2%L1%76X2%X1%1XS%)","(ZZ%):2203C5f5XX$"A"ĺ"FMA38 ";::"NO SUCH RECORD"::j5p5XS%2X$(X$,1)","(ZZ%):22035u5XS%3XX$"A"22035z52000555513722:15000:5513722:DK$;"READ ";Y$;",R";Z%:Z1$:Z1%Z%:DK$:55XP%XN%Z%0:65XP%XL%13XP%1:XS%113658&4S5XP%XN%13658H4T5XP%XP%1:13710:NM%113655f4U5(Z1$,XD%,L2%)XA$XS%1q4V5136564W5((Z1$,XD%,L2%))(XA$)XS%14X5XP%XP%1:137004Z5XS%1XX$"A"ĺ"FMA37 THERE ARE ";::"DUPLICATE";::" RECORDS":5\5X$(X$,136703 5XP%XN%XS%3:13670;35XP%XP%1:13700:13670A35N35Z%XN%1[3 515000:}3*5EOF%1Z$Z1$:ZZ%Z1%:13520345NM%1136403>5(Z$,XD%,L2%)XA$Z%Z%1:136003C5136603H5((Z$,XD%,L2%))(XA$)Z%Z%1:136003M5136604R5XP%%)XA$Z$Z1$:ZZ%Z1%:XS%1:13430/2413650:i24((Z1$,XD%,L2%))(XA$)Z$Z1$:ZZ%Z1%:XS%1:13430v2413650:24NR%XN%XX$""Z1$Z$:Z1%ZZ%:13590:24XS%2:NM%11357024(Z$,XD%,L2%)XA$13670241358035((Z$,XD%,L2%))(XA$)1(C)"*"(ID$,4)I$(C)"!"(ID$,4)13310?13C:13900:2000:_13NM%0:(I$(C),1)"*"NM%1}14XD%S%(C):L1%L%(C):20001X41]4NX$""20001b413800:1l4XS%2XS%0:135101v4XP%113651:14XP%XP%1:13710:NM%113490"24(Z1$,XD%,L203:XN%013214803DK$;"CLOSE ";NX$:NX$"":200003AX%1:DK$;"READ ";NX$;",R1":XL%XN%:XL%YXL%Y1:AX%0::"FMA43 INDEX FILE DOES NOT FIT IN MEMORY"03X1XL%:IX%(X):X:DK$:(ID$)5ID$ID$(" ",5(ID$)))13C023:I$(C)ID$I$9 INDEX FILE ";::"NOT FOUND"::2000D/B3DX%1:DR$(DX%)"Z":13062Q/J313900:/T3NX$IX$:DK$;"OPEN ";NX$;",L5":DK$;"READ ";NX$:XN%:"FMA40 INDEX FILE CONTAINS ";XN%;" ENTRIES":NR%XN%01321003" ";::NR%XN%;::" RECORDS ARE UN-INDEXED"X%)"D"13070g.3DR$(DX%)"I"DR$(1)"I":DX%1:G$:"FMA60 INSERT INDEX DISKETTE IN DRIVE 1 ";:1200s.313100.3DK$;"RENAME ";IX$;",";IX$;",S";SL%;",D";DX%:22000.'313130.,3790:22000.63(222)413130.;3(222)622000&/@3G$:"FMA3(N$(F%(A)))U%(A)A$N$(F%(A)):931XA$I$(F%(A)):(A$,1)"*"A$(A$,(A$)1)^LL%U%(A):(A$)LL%A$(A$,LL%)E%(A)0960LL%LL%((U%(A)E%(A))3):E%(A)0LL%LL%1"P$P$(SP$,T%(A)LL%(A$)(P$)1)A$:DL$DL$(SP((((T$)12)2))):P$"":A18351>P$(SP$,A)LCP$P$T$" ":35:zHP$(V%(2)):(P$)4P$(SP$,4(P$))P$\P$"PAGE "P$:31:fP$" ":31:zP$"":DL$"":V%(9)1P$"REC ":DL$"----"A024:F%(A)01060U%(A)11060) P$""P$" " 31:0 V%(1)V%(1)1:6 O V%(2)0V%(3)0790l V%(3)1V%(2)0V%(1)0 V%(3)1ĺ"FM58 HIT (RETURN) WHEN READY ";:5780 V%(3)1ė:790 AV%(1)V%(0)1:P$" ":31: A!V%(2)V%(2)1:V%(1)4:A(W%2%(A)06604 T%(A)(P$)P$P$(SP$,T%(A)(P$))d B%F%(A):A$(Z$,S%(B%),U%(A)):E%(A)0630| &U%(A)3C%2:600 0U%(A)6C%3:600 :U%(A)9C%4:600 DU%(A)12C%5:600 NC%6 X5070: bP$P$A$:640 vP$P$A$ A1)2306 hV%(8)1ĭ((Z$,V%(6),V%(7)))(R$(1))230< rB |[ V%(1)4V%(0)İ710k Q%0İ1090 P$"":V%(9)0480 Y03:(Z$,Y1,1)"0"460 Y Y0P$(Z$,4):480 P$(SP$,Y)(Z$,Y1,4Y) P$P$(Z$,5,1):A024:F ERR%0140 6660:# ) = 5610:X%1370N V%(4)1280e (Z$,5,1)"*"240k | ,V%(6)0370 @V%(8)0ĭ(Z$,V%(6),(R$(0)))R$(0)230 JV%(8)1ĭ((Z$,V%(6),V%(7)))(R$(0))230 ^V%(8)0ĭ(Z$,V%(6),(R$(1)))R$(:"FMA0 INSERT PROGRAM DISK IN DRIVE 1 ";:5780 DR$(1)"P"::"FMA4 DO YOU WANT TO RETURN TO MENU? ";:5780:(IN$,1)"N"Ĭ DR$(1)"P"ĺ:"FMA0 INSERT PROGRAM DISK IN DRIVE 1 ";:5780 6530 DK$;"RUN DMS,D1,S";PL% GT%0:4130:: 19202 P$:V%(3)0LF$"Y"ĺ(10);:"38C#P$;O&P$"":U(`2180:<X%0X%0:FE%1:2090:1980F230:PX%0110Z380:d70:n1560:p9000:s5890:xDK$"CLOSE"/ 9000:DR$(1)"P"ĺG$                ,2,10)23020)DZY$(Z$,2,10):Y$:23020/D]CD](222)424100XD](222)622000D]G$:"FMA61 INSERT FILE DEFINITION DISK":" IN DRIVE 1 ";:1220:DR$(1)"M":MF%1:D$^22000D.^:170690900 CY^CYDR$(DR%)"D"DR$(DR%)"D"::"FMA1 INSERT DATA DISK IN DRIVE ";DR%;" ";:1200jCY22000CYDK$;"OPEN MAINTFILES,S";SL%;",D";DR%:Y$"":DK$"READ MAINTFILES":216,0CY12000:EOF%123037CYDK$"CLOSE MAINTFILES":17000 DYY$(Z$"Y$:9809BIDK$;"OPEN ";Y$;",L";RL%;",S";SL%;",D";DR%:?BUdBUDK$:216,0:790:(222)9FU%1BU(222)0(222)15ĺG$:"FMA8 ";::"ERROR = ";(222);::" AT LINE ";(218)(219)256:22050BVG$:"FMA8 ";::"DISK ERROR";::" = ";(222)C"V"NOT COMPATIBLE"::990%AF216,0:0AF18900BADH216,0:790:NASH22000cAXH(222)522000AbH:"FM26 '";Y$;"' IS A NEW FILE - CONTINUE?";:1200:CX%118530AlH(B$,1)"Y"18600AvHDK$"WRITE "Y$:"0":RL%:DK$:AH18900BHDK$"DELETE 7900@C12000:#@CEOF%1179009@CU$(Z$,(Z$)11)W@EDK$;"CLOSE MAINTFILES":]@PFi@dF22000@nFDK$"OPEN "Y$",L"RL%",S"SL%",D"DR%:DK$"READ "Y$:18500AFNR%,LL%:DK$:LL%RL%Č1059::"FMA36 FILE DEFINITION AND DATA FILE":" ";::(Z$,B%20,3)):L%(A%)((Z$,B%23,3)):A%A%1:C7?DCD?bC12000:V?dCEOF%117281r?lC(Z$,11)" "A$17280?vCA%2417130?C?CC023:I$(C)" "17290?CC?CRL%S%(C1)L%(C1):RL%S%(C1)L%(C1)1:(Z$,1)" "17900@CEOF%11 MAINTFILES":216,0 >B12000:f>BEOF%1Č1059::"FM02 THAT FILE IS ";::"NOT DEFINED"::17020>B(Z$,2,10)A$17074>BA%0>BC07:B%21(C26):(Z$,B%,5)" "I$(A%)" ":172201?CI$(A%)(Z$,B%,5):N$(A%)(Z$,B%5,15):S%(A%)(  V%(1)9999: ! - C023: F%(C)1 B$"FM51 ENTER COLUMN "(C1)" CONTROLS? ":3760:A$"?"PM$(PM%)A$:PM%PM%1" A$""3490, A$"?"RT%1:49906 RT%1RT%0:2830@ A$A$",":3670:^ X%13750 h A1(%20,3)):L%(C)((Z$,B%23,3)):CC1:B%B%26:A:5400:JU EOF%12660dZ (Z$,11)" "Y$2500d N%C1:CR$;DK$;"CLOSE MAINTFILES":RL%S%(N%)L%(N%):X$""X$Y$ V%(0)02760 V%(3)1V%(0)27 V%(3)0V%(0)66 V%(5)1V%(0)62490F C0Č1059::"FMA17 ";::"NO SUCH FILE"::X$"":Y$"":140P 2660X C0 B%21:A18:(Z$,B%,5)" "2660 I$(C)(Z$,B%,5):N$(C)(Z$,B%5,15):N1511:(N$(C),1)" "2590 N$(C)(N$(C),(N$(C))1):N9 S%(C)((Z$,B$)10Y$Y$(SP$,10(Y$))qu DR$(DR%)"D"DR$(DR%)"D":G$:"FMA1 INSERT DATA DISK IN DRIVE ";DR%;" ";:5780|v 6530w DK$;"OPEN MAINTFILES,S";SL%;",D";DR%:DK$;"READ MAINTFILES":216,0~ 5400: EOF%12470 (Z$,2,10)Y$2430 )" "8V (X$,2,1)":"DR%((X$,1)):X$(X$,(X$)2)X DR%1DR%2DR%DD%:1059::"FMA32 DISK DRIVE # ";::"INVALID";::" - #";DR%;" ASSUMED"` Y$""X$""Y$X$j X$""Y$""X$Y$o (Y$)2ĭ(Y$,2,1)":"Y$(Y$,(Y$)2)t (YRCE=N"V%(4)0:23208(F$,6)"TYPE=R"V%(5)0:2320\(F$,6)"TYPE=L"V%(5)1:23201059::"'";F$;"' IS ";::"NOT DEFINED";::" - RE-ENTER":140 PM$(PM%)F$:PM%PM%1:2140$ PM$(PM%)"":PM%PM%1:X$""2400L (X$,2)"1:"DR$(2C#=NO"V%(9)0:23209(F$,7)"ROUTE=P"V%(3)0:2320f(F$,6)"PFILE="X$(F$,(F$)6):2320(F$,6)"FFILE="Y$(F$,(F$)6):2320(F$,6)"XFILE="SF$(F$,(F$)6)".INDEX":2320(F$,7)"FORCE=Y"V%(4)1:2320(F$,7)"FO\3670:X%0X%0:2090If(F$,6)"TITLE="T$(F$,(F$)6):2320up(F$,6)"WIDTH="W%((F$,7,5)):2320z(F$,6)"DEPTH="V%(0)((F$,7,5)):2320(F$,7)"ROUTE=T"V%(3)1:2320(F$,8)"REC#=YES"V%(9)1:2320(F$,7)"REP":V%(3)1:\ V%(9)1:SP$" ":SP$SP$SP$SP$SP$SP$SP$*9000:B$"FM50 PLEASE ENTER RUN OPTIONS? ":3760:A$"?"İ6440:2090@A$"1:?"DR%1:6440:2090BA$"2:?"DR%2:6440:2090HA$A$",":A$","2340--------------------------------":2010:JV%(5)1İ4750:4470:1660:`2790:4470:40:f5290:U%(24),T%(24),V%(10),F%(24),E%(24),B%(24),R$(1):I$(24),N$(24),S%(24),L%(24):B(1,24),Q%(1),R%(1):PM$(50): DR$(2):DR$(DR%)"D":DR$(1)"A:1820P$P$(A$,A)" "1E%(C)11850A&P$""1850Y+V%(1)V%(1)1:31:`:CfDXAV%(1)V%(0)1:P$" ":31:lA:AD%787:PS%AD%2:PR%(PS%):)DH$"------------------------------------------------$"":Q%(1)1:Q%(0)0Q%(0)15T1090:Q%(0)11650DhC%1:1320JrP|[180:f230:uX%01101720:1680:V%(1)0:C023:F%(C)11860A$(Z$,S%(F%(C)),L%(F%(C))):A(A$)11:(A$,A,1)" "1810490U%(A)6C%3:14905U%(A)9C%4:1490OU%(A)12C%5:1490XC%6}A$(B(D%,A)):5070:P$P$A$" "A31:P$"":X1W%2:P$P$"-":X:31:V%(1)V%(1)3:"Q%01650,Z$"":X1RL%:Z$Z$"0":X:B%2:P$P$"-":X:31:.FP$"":V%(9)01390NPP$(R%(C%)):(P$)41390jdP$("****",4(P$))P$nA023:F%(A)01520B%F%(A):B%(A)01510(B(D%,A)).00001B(D%,A)0T%(A)(P$)P$P$(SP$,T%(A)(P$))U%(A)3C%2:1!B(1,A)B(1,A)B(0,A):B(0,A)0BA:R%(1)R%(1)R%(0):R%(0)0HaQ%(0)0B$"":1240zB$(Z$,Q%(0),Q%(1))A023:B%(A)01290C%F%(A):B(0,A)B(0,A)((Z$,S%(C%),L%(C%))) A:R%(0)R%(0)1:(2D%C%:P$"":X1W$,T%(A)(DL$)1)(DH$,LL%):1050kP$P$(SP$,T%(A)(P$))A$:DL$DL$(SP$,T%(A)(DL$))(DH$,U%(A))rA|$31:.P$DL$:31:8BLGT%21210VQ%(0)01240`B$(Z$,Q%(0),Q%(1))1240jC%0:1320:A023:B%(A)01180$(SP$,5(A$))%/A$" "4740R/D0N%:I$(D)A$I$(D)"*"(A$,4)4590/D:1059::"FM52 '";A$;"' IS ";::"NOT DEFINED"::4490/V%(6)S%(D):V%(7)L%(D):(I$(D),1)"*"V%(8)1/"FM60 ENTER FROM VALUE? ";:5780:CX%14610 0 A$ѭ(IN$,1)"A"4400L.X:"FMA13 ENTER INDEX FILENAME? ";:5780:CX%14440o.]SF$A$".INDEX":SF$""4300u.l.vV%(6)1:V%(7)1:V%(8)0."FM59 ENTER RANGE ID? ";:5780:CX%14490.A$"REC#"V%(6)1:V%(7)4:V%(8)1:4610/(A$)5A$ARENAME ";SF$;",";SF$;",S";SL%;",D";MF%:216,0:DK$"OPEN "SF$",L5":4460n-216,0:790:SF$"":(222)66530-01059::"FMA12 INDEX FILE ";::"NOT FOUND";::" - ACTION? ";:5780:CX%1ĺ(92):4400-5IN$A$:IN$""4460-D(IN$,1)"C"120.NENTER":SF$"":X%1:O%0:4460,MF%1MF%2Č1059::"FMA31 XFILE DRIVE # ";::"INVALID";::" - RE-ENTER":SF$"":X%1:O%0:4460,DR$(MF%)"D"DR$(MF%)"X"DR$(MF%)"X"::"FMA60 INSERT INDEX DISK IN DRIVE ";MF%;" ";:5780,4380G-DK$;"$:"FMA23 FILE '";X$;"' IS AN ";::"EMPTY FILE"::SF$"":ERR%1:X%1:b+MF%DR%:SF$""4460:+(SF$)2ĭ(SF$,2,1)":"MF%((SF$,1)):SF$(SF$,(SF$)2),(SF$,1)"A"(SF$,1)"Z"Č1059::"FMA18 XFILE '";SF$;"' ";::"INVALID";::" - RE-DR$(DR%)"D"::"FMA1 INSERT DATA DISK IN DRIVE ";DR%;" ";:5780}*@DK$;"OPEN ";X$;",S";SL%;",D";DR%:DK$;"READ ";X$:4230*^MX%,RL%:216,0:*rDK$;"OPEN ";X$;",S";SL%;",D";DR%;",L"RL%:4300*216,0:*790:*(222)56530G+9000:GF$:OO%13965)xMG$(29),)}OO%1:4020@)X029:5780:Q)MG$(X)A$:X^)216,0:n)AA$:790:)(222)56530)DK$;"CLOSE ";PF$::)Y0)A$MG$(Y):YX1A$"":4120)YY1))")'6530@*,GT%1:DR$(DR%)"D"DK$;"RENAME ";PF$;",";PF$;",S";SL%;",D";FD%:216,0:DK$;"OPEN ";PF$:3940k(F216,0:790:(222)66530(PPF$(PF$,(PF$)4):1059::"FMA24 REPORT FORMAT PARAMETER FILE":" '";PF$"' ";::"DOES NOT EXIST"::PF$"":140)dO%1:DK$;"READ ";P'DR$(FD%)"D"DR$(FD%)"D":"FMA1 INSERT DATA DISK IN DRIVE ";FD%;" ";:5780u'(PF$,1)"A"(PF$,1)"Z"PF%1' PF%1ĺ:"FMA19 PARAMETER FILE NAME '";PF$;"'":" ";::"INVALID";::" - RE-ENTER":PF$""::2090'PF$PF$".RFP":3910K((B$;:5780:CX%13780/&(A$,1)"!"4120I&(B$,4)"FM50"4120o&PF$"":PF%0:(A$)2PF%1:3850&PF$(A$,(A$)1):FD%DR%:(PF$,2,1)":"3838&(PF$)3PF%1:3850&FD%((PF$,1)):PF$(PF$,(PF$)2):FD%1FD%2PF%1:3850P(D)03610%P%P%E%(D)19%P%P%(U%(D)3):P%P%1V%.P%P%2:D:W%0W%B%2`%L3750%VA1(A$):(A$,A,1)","3710%jA:X%1:3750%~A1X%1:%F$(A$,A1):A(A$)A$",":3750%A$(A$,(A$)A)%%%O%04090&)13460$\ E%(C)03460{$f 1059::"FM56 ";::"EDITING REQUIRED";::" FOR TOTAL FIELDS":"'E0' ASSUMED":E%(C)0:$ C$ $ P%1:V%(9)1P%6$ B%0:D0C:B%B%P%:T%(D)B%B%T%(D)$ T%(D)B%:P%U%(D):A%F%(D):E%(D)03630 %E%Z%1:V%(3)1V%(0)V%(0)3:(# Y%1:4# 3100:M# (I$(D),1)"*"3360# 1059::"FM55 ";::"TOTAL OPTION INVALID";::" FOR":"NON-NUMERIC FIELD - IGNORED":3100# B%(C)1:#* Q%Q%1:#4 3100:#> X%0:#H Y%1Y%0:2820 $R B%(CF$"TOTAL"3320="X (F$,1)"T"T%(C)((F$,(F$)1)):3100G"b 2830M"l f"v (I$(D),1)"*"3230" 1059::"FM54 ";::"EDIT OPTION INVALID";::" FOR":"NON-NUMERIC FIELD - IGNORED":3100" E%(C)((F$,2,1)):3100# Q%(0)S%(D):Q%(1)U%(C):830! F%(C)D:*! U%(C)0U%(C)L%(D)?! E%(C)1:B%(C)0K! 3670:Z!& X%13390!0 F$"E0"F$"E1"F$"E2"F$"E3"F$"E4"F$"E5"3180!: F$"BREAK"Z%1Č1059::"FM53 ONLY ";::"ONE BREAK ALLOWED"::2830!D F$"BREAK"Z%03260"N F$):(F$,A,1)"("2960) | A:B%0:2980T B%((F$,A1,(F$)A1)):F$(F$,A1)c U%(C)B%: (F$)5F$F$(SP$,5(F$)) D0N%:I$(D)F$I$(D)"*"(F$,4)I$(D)"!"(F$,4)3060! D:1059::"FM52 '";F$;"' IS ";::"NOT DEFINED"::2= ";(222);::" AT LINE ";(218)(219)256:6560e?G$:"FMA8 ";::"DISK ERROR";::" = ";(222)p?6592?DK$"CLOSE":216,0:6610?216,0:790?140??AD06630?C%AD256:55,C%:B%AD256:BB%256:B%ADB:54,B%:1002:6631,6530N>2DK$"OPEN MAINTFILES,S";SL%;",D";DR%:DK$"READ MAINTFILES":216,0Z>F5400:k>PEOF%16510>ZA$(Z$,2,10)A$(Z$,2,10):A$>d6470>nDK$"CLOSE MAINTFILES":>2?DK$:216,0:790:(222)0(222)15ĺG$:"FMA8 ";::"ERROR 6431S=DK$"OPEN "FF$:DK$"WRITE "FF$:X0PM%:PM$(X)::DK$"CLOSE "FF$:216,0Y=_== 216,0:790:(222)9Č1059:::"DISK FULL"::6220=$6530=(=*DR$(DR%)"D"DR$(DR%)"D"::"FMA1 INSERT DATA DISK IN DRIVE ";DR%;" ";:5780> IN DRIVE ";FD%;" ":5780$<6370<DK$"RENAME "FF$","FF$",S"SL%",D"FD%:216,0:1059::"FMA29 FILE ALREADY ";::"EXISTS";::" - ACTION? ";:5780:(IN$,1)"A"6220<(IN$,1)"C"(IN$,1)":"120<DK$"DELETE "FF$:6380<790:216,0=";`FD%DR%:FF$IN$:(FF$)36270`;t(IN$,2,1)":"FF$(IN$,(FF$)2):FD%((IN$,1)):SW%1;~(FF$,1)"A"(FF$,1)"Z"Č1059::"FMA22 ";::"ILLEGAL";::" FILE NAME":6220<FF$FF$".RFP":DR$(FD%)"D"DR$(FD%)"D"::"FMA1 INSERT DATA DISKX2:XYPM%1:XYP$" ">: P$P$PM$(X):31::9000:&IN$"":PF$""ĺ:"FMA25 DO YOU WANT TO SAVE THIS FORMAT? ";:5780:((IN$,1)"Y"İ6200:.:8:L"FMA26 ENTER NAME OF REPORT FORMAT? ";:5780:CX%16220:QIN$A$:IN$""6430SEE THIS FORMAT? ";:5780:(IN$,1)"Y"6182x9H:"FMA28 DISPLAY ON (T)ERM OR (P)RINTER? ";:5780:(IN$,1)"P"İ66209P$" ":31:P$"FM50: ":35:X0PM%:X0P$" "9P$P$PM$(X):31:PM$(X1)""61409!:P$" ":31:P$"FM51: ":35:YX%1:(92):5884.8IN$(13)Č868::5882G8IN$(3)ĺG$;:5800f8IN$(8)A$A$IN$:58808(A$)1ĺIN$;:57908A$""58008A$(A$,(A$)1)8IN$;:58008A$":CANCEL:"1208IN$A$88-94:"FMA27 DO YOU WANT TO "READ "SF$",R"SF%1:5680E7RN$:216,0:SF%SF%1:GT%(RN$):5720e70216,0:790:(222)56530t7NX%1:57707XGT%MX%X%1:57707bDK$"READ "X$",R"GT%:Z$:GT%GT%1:DK$:777A$"":CX%07IN$:IN$(21)58008IN$(24)C"EOF%0:5460 66Z$:216,0:*6J551076T216,0:B6^790:V6h(222)56530k6mDK$:O%0:EOF%16:FL$(Z$,2,10):FA$FL$:(FL$,1)" "56006X09:(FL$,10X,1)" "55906X6FL$(FL$,10X)666SF$""57207DK$A$(SP$,U%(A)C%(A$))A$:5E%(A)0A$(A$,(A$)1)X5E%(A)0A$(A$,(A$)1)^5d552::CT125:SP$SP$" ":CT:DK$(4):5CR$(13):5AA$(1):5G$(7):5SL%(AD%):DR%1:PL%(AD%1):8000:556A$,XE%(A)):(A$,1)"."5180A4((A$,1)"0"(A$,1)" "5180\42A$(A$,(A$)1):51604<X1(A$):(A$,X,1)"."52104PX4ZX552404dA$(A$,X4)","(A$,(A$)X4):XX3:52104x(A$,2)"-,"A$"-"(A$,(A$)2)5(A$)U%(A)C%";A$;"' IS ";::"NOT DEFINED"::478053VF%(C)D:C;3jA3tG3~b3X023:I$(X)""50603I$(X);:(SP$,10);:N$(X):X333X1(A$):(A$,X,1)"."51303X:A$A$"."3 XE%(A)(A$)A$A$("00000",XE%(A)(A$))4A$(760:A$""C0120*2A$"?"RT%1:4990A2RT%1RT%0:4800h2PM$(PM%)A$:PM%PM%1:A$""4880|2E%(C1)149702E%(C1)1:L%L%1:48002(A$)5A$A$(SP$,5(A$))2D0N%:I$(D)A$I$(D)"*"(A$,4)4950&3.D:1059::"FM52 'GTH":4470.1RR$(0)""R$(0)(SP$,(R$(1)))R1\R$(1)""R$(1)(SP$,(R$(0)))\1f4740~1pR$(0)""R$(0)"-9999999999"1zR$(1)""R$(1)"9999999999"111L%1:C0231A$"":F%(C)12B$"FM57 ENTER LINE "(L%)" FIELD ID? ":3""R$(0)A$<0"FM61 ENTER TO VALUE? ";:5780:CX%14630Q0 A$""R$(1)A$v0*R$(0)""R$(1)""V%(6)0:474004V%(8)147200>R$(0)""R$(1)""4690 1H(R$(0))(R$(1))Č1059::"FM62 FROM DATA LENGTH ";::"MUST EQUAL"::"TO DATA LEN"D":G$:"FMA1 INSERT DATA DISK IN DRIVE ";DR%;" ";:2180`DD$;"OPEN ";Y9$;",D";DR%;",L";RL%lA0Z%2030:GET RCDEOF%11250Z$(A)Z$A1270Z$(A)"":IND LAST RCDW%1:IND NO MORE RCDSOUTPUT TO PRIMAR"OPEN ";W$;",S";SL%;",D";DO%;",L";RL%>F2%1:INIT RCD PNTRH5000WBFE%1980]LcVv`SPACELEFT(0)jZ%(SPACELEFT23)(RL%3)tZ$(Z%)~GATHER RCDS INTO ARRAY6000W%1X%1:12709DR$(DR%)"D"DR$(DR%))10910z(222)66000%970m1059::"FM38 THAT FILE ";::"ALREADY EXISTS";::" - ACTION? ";2180:CX%1910A$B$A$""910(A$,1)"A"710(A$,1)"C"210(A$,1)"D"ĺDD$;"DELETE ";W$:970910%DD$;VALIDTAE FILE NAME)>FE%1W$"":7004?W9$W$M@W$Y$W$W$".COMP"FDR$(DO%)"O"DR$(DO%)"O":G$:"FMA7 INSERT OUTPUT DISK IN DRIVE ";DO%;" ";:2180H870RDD$;"RENAME ";W$;",";W$;",D";DO%\216,0:910f216,0:790p(222"N"990DO%(AD%3)E:"FM32 ENTER NEW FILE NAME? ";:2180TCX%1710cB$""620mW$B$~(W$)3800(W$,2,1)":"800(W$,1)"1"(W$,1)"2"710 DO%((W$,1))W$(W$,(W$)2) ZZ$W$*ZZ$W$42290:" RECORDS TO PROCESS"*l:"FM31 ENTER:"0v\"'C' TO COMPACT THE FILE IN PLACE, OR""'N' TO CREATE A NEW COMPACTED FILE, OR""'B' TO CREATE A BACKUP COPY ONLY"2180:CX%1620X$IN$X$"C"X$"B"X$"N"ĺG$:620 X$$;"OPEN ";Y$ DD$;"READ ";Y$- MX%,RL%8 216,0U DD$;"OPEN ";Y$;",L";RL%m RN%1:INIT RCD NO.v &610 0216,0:KILL ONERR :790:FIX ONERR D(222)66000 XG$:"FM39 ";::"NO SUCH FILE";::" EXISTS":340b:"FM35 ";MX%;R%)"D":G$:"FMA1 INSERT DATA DISK IN DRIVE ";DR%;" ";:2180N ZZ$Y$:2290] FE%1340h Y9$Y$ 8000:READ MAINTFILES 480 DD$;"RENAME ";Y$;",";Y$;",S";SL%;",D";DR% 560 489 216,0:790:(222)4580 560 DDhCX%1340& rB$""CANCEL1:1150P |B$"?"ĺ"ANY LEGAL FILENAME...":340Z Y$B$k (B$)3450 (Y$,2,1)":"450 (Y$,1)"1"(Y$,1)"2"340 DR%((Y$,1)) Y$(Y$,(Y$)2) Y$"MAINTFILES"10000= DR$(DR%)"D"DR$(D DR$(1)"P"ĺG$:"FMA0 INSERT PROGRAM DISK IN DRIVE 1 ";:2180^ DD$;"RUN DMS,D1,S";PL%s  INITIALIZATION MF$(100) DR%(AD%3):# DRIVES JDR$(2) LDR$(1)"P" T:"FM30 WHICH FILE DO YOU WANT TO PROCESS?" ^2180:KYBD READ  x260:INITIALIZE' CANCEL12206 X%0240L 1160:GET STRING` X%0210:EOFw 1280:PRIMARY OUT 1520:BACKUP OUT 160: CONTINUE 1810:TERMINATION "FMA4 DO YOU WANT TO RETURN TO MENU?";:2180 (IN$,1)"N"ĬB  DMS3 - LEVEL 5.1< AD%=ADDR (DATA DISK SLOT#)\ AD%+1=ADDR(PROG DISK S #)o(AD%787: $313~2SL%(AD%)<PL%(AD%1)FDR%1: DISK DRIVE #PDD$(4):CTRL DZCR$(13):RETURN\G$(7):BEEPd nSP$" "           $;"CLOSE CONFIGURATION":DR%DD%:216,0:89995B4!790B!216,0:DK$:G$:"FMA57 ";::"CONFIGURATION FILE ERROR ";::" = ";(222):140B'#B(#B2#V%(10)09999B<#PT$""ĺPT$BF#DK$;"PR#0":V%(10)0B'D:PT$""X4%X4%1*A<PI$""X4%X4%1:A>X4%16730NA@X1X4%:" ":^AJ9000:6680nAT6620:6770tAhzArA@AJ8500ATDK$;"OPEN CONFIGURATION,D1":DK$;"READ CONFIGURATION":Z$:Z$"CONFIG"8600,B|Z$,AD,PI$,NA$,LF$,DD%,PT$:DK@DK$;"PR#";PR%#@PI$""ĺPI$2@V%(10)1:8@J@V%(3)16760\@V%(5)06740@"FMA45 READY PRINTER AND PRESS RETURN ";:5780@"FMA46 ALIGNMENT PATTERN (Y/N)? ";:5780:(IN$,1)"Y"6740A,6620:"********************":X4%V%(0)1#V%#RL%$# DD$;"CLOSE ";W$/#216,0A#MF%DO%:9000S# (W$)67300n#*(V$,5)".COMP"7300y#H6000#RDD$;"RENAME ";W$;",";W9$#\216,0## ** INPUT FILE **##6000#X$"C"73608$DR$(DR%)"D"DR$(DR%)" "6000)"DD$;"RENAME ";V$;",";V9$4"216,0:"R" ** OUTPUT FILE **X"p"W$""X$"C"7300"W$""7300"DR$(DO%)"O"DR$(DO%)"O":G$:"FMA2 INSERT OUTPUT DISK IN DRIVE ";DO%;" ";:2180"6000"DD$;"WRITE ";W$;",R0"0Y!dDR$(BK%)"B"DR$(BK%)"B":G$:"FMA7 INSERT BACKUP DISK IN DRIVE ";BK%;" ";:2180d!f6000!hDD$;"WRITE ";V$;",R0"!jT%: #RCDS!lRL%:RCD LEN!mDD$;"CLOSE ";V$!n216,0!pMF%BK%:9000!v(V$)67110"(V$,5)".BKUP"7110P FILE V$""6999n DR$(BK%)"B"DR$(BK%)"B":G$:"FMA7 INSERT BACKUP DISK IN DRIVE ";BK%;" ";:2180y $6210 .DD$;"CLOSE ";V$ 86220 B790 L216,0 W220 X Y TERMINATION Z [ ** BACKUP FILE ** \!bV$""711DD$;"CLOSE ";Y$6075"790-216,0H CLOSE COMPACTED FILEXW$""6150DR$(DO%)"O"DR$(DO%)"O":G$:"FMA2 INSERT OUTPUT DISK IN DRIVE ";DO%;" ";:21806130DD$;"CLOSE ";W$6140790216,0  CLOSE BACKU790g(222)0(222)16ĺG$:"FMA8 ";::"ERROR = ";(222);::" AT LINE ";(218)(219)256:6030G$:"FMA8 ";::K9$;"ERROR";::" = ";(222)DR$(DR%)"D"DR$(DR%)"D":G$:"FMA1 INSERT DATA DISK IN DRIVE ";DR%;" ";:21806070"V$""5100h(V$)2ĭ(V$,2,1)":"BK%((V$,1)):V$(V$,(V$)2):SL%PL%BK%1BU%1:SW%1~BK%1BK%25000ZZ$V$2290:VALIDATE FILE NAMEV9$V$V$Y$V$W$V$V$".BKUP"p ABORT ROUTINEuDD$z216,0: (ZZ$,1)"Z"(ZZ$,1)"A"23602 I1(ZZ$)K (ZZ$,I,1)","2360R$ IX. b8 FE%1B G$:"FMA22 ";::"ILLEGAL FILENAME"L V :"FM33 ENTER BACKUP FILE NAME? ";:2180:CX%15000BK%(AD%3)V$B$V$"NONE"V$"(24)CX%1:(92):,IN$(13)ĺ:2282EIN$(3)ĺG$;:2200dIN$(8)B$B$IN$:2280}(B$)1ĺIN$;:2190B$""2200B$(B$,(B$)1)IN$;:2200B$":CANCEL:"210IN$B$: TEST FOR LEGAL FILENAMEFE%0"X%ī2160& DD$;"READ ";Y9$;",R";RN%121309 Z$D*216,0R4RN%RN%1[>DD$eH2170|R216,0:KILL ONERR\790:FIX ONERRf(222)56000pEOF%1zSIMULATE INPUT STMTB$"":CX%0IN$:IN$(21)2200IN$;T%(34)Z$(A)!Z$(A)""*DD$1A<X(0)BT TERMINATIONk7000:CLOSE FILESX$"B"ĺ:"FM36 ";U%;" RECORDS DELETED"T%0ĺ:"FM37 ";T%;" RECORDS PUT TO BACKUP FILE" READ DISK FILEEOF%0RN%MV$"":2104r(A$,1)"D"ĺDD$;"DELETE ";V9$:1700>|1620N216,0:790b(222)101620v(222)660006000DD$;"OPEN ";V$;",L";RL%;",S";SL%;",D";BK%6000A0Z%Z$(A)""1800T%T%1DD$;"WRITE ";V$;",R"0 "BO%1,1670G6DD$;"RENAME ";V9$;",";V9$;",S";SL%;",D";BK%R@216,0T1059::"FM38 THAT FILE ";::"ALREADY EXISTS";::" - ACTION? ";V2180:CX%11620XA$B$^A$""1620`(A$,1)"A":OP%0:5000:1520 h(A$,1)"C"(34)Z$ V$""Z$(A)"")DD$7F2%F2%1>APV$""X(0)VpOUTPUT RCD TO BACKUP FILE - IF DESIRED.V$""1800DR$(BK%)"B"DR$(BK%)"B":G$:"FMA7 INSERT BACKUP DISK IN DRIVE ";BK%;" ";:2180BO%1171dV$""Z$(A)""nDD$$x14906X$"N"1490iVV$(F2%):(VV$)4VV$("000",4(VV$))VV$Z$VV$(Z$(A),(Z$(A))4)DR$(DO%)"O"DR$(DO%)"O":G$:"FMA2 INSERT OUTPUT DISK IN DRIVE ";DO%;" ";:2180DD$;"WRITE ";W$;",R";F2% Y FILE6000 A0Z%0Z$(A)""1510T(Z$(A),5,1)"*"U%U%1:1490o(V%V%1:BUMP OUT PNTR2X$"C"1410<VV$(V%):(VV$)4VV$("000",4(VV$))VV$FZ$VV$(Z$(A),(Z$(A))4)PDD$;"WRITE ";Y$;",R";V%Z(34)Z$*D$"CLOSE":1059<4:"FM48 ";::"NO SUCH FILE"::320F>1030OHC%0eRX$"DELETE"1130o\B%21zfA18p(Z$,B%,5)" "1030zI$(C%)(Z$,B%,5)N$(C%)(Z$,B%5,15)S%(C%)((Z$,B%20,3))L%(C%)((Z$,B%23,3)) 216,0:7905000:705ID$;"RENAME MAINTFILES,MAINTFILES,D";DR%gD$"OPEN MAINTFILES,L240"r216,0D$;"READ MAINTFILES"780Z$216,0(Z$,2,10)Y$730840 216,0:790(222)53160 C%0830Y DEFINED":'vD$;"CLOSE MAINTFILES"0320;216,0D790W(222)51130a3160 FIND THE FILE IN MAINTFILESX$"LN"1130SW%0ĺG$:"FMA1 INSERT DATA DISK IN DRIVE ";DR%;" ";:3040SW%1707709 SW%13160=D$"OPEN MAINTFILES,L240,S";SL%;",D"DR%H 216,0bRC%0:INIT TO RCD #0D$"READ MAINTFILES,R"RC%&6500Z$:Z$(Z$,2,10)DRC%RC%1N216,0XZ$Y$540b1059 l:"FM41 THAT FILE IS ";::"ALREADL)IST, (LN)LISTNAMES,"D " OR (D)ELETE A FILE? ";:3040:X$B$T X$"C"510s X$"L"X$"LN"X$"D"690 X$""210 460  VERIFY THAT THAT FILE DOES NOT ALREADY EXIST G$:"FMA1 INSERT DATA DISK IN DRIVE ";DR%;" ":3040Y$,(Y$)2)/ |(Y$)10Y$Y$(SP$,10(Y$))P (Y$,1)"A"(Y$,1)"Z"450b (Y$)10450q X1(Y$) (Y$,X,1)","450 X DR%1DR%2DR%DD% 460 1059::"FMA30 FILE NAME ";::"INVALID"::320 "FM47 (C)REATE, (%(24),W$(3),I$(24),N$(24). "D$(4): CTRL D@ 'G$(7):BEEPW ,AA$(1):CR$(13)] 6t ;4000:READ CONFIG @"FM40 PLEASE ENTER THE FILE NAME? ":3040:CX%1320 JY$B$ TY$""460 h(Y$)3380 r(Y$,2,1)":"DR%((Y$,1)):Y$(INATION PROCEDURESN :"FMA4 DO YOU WANT TO RETURN TO MENU? ";:3040:IN$B$b (IN$,1)"N"Ĭw D$;"RUN DMS,D1" INITIALIZATION PROCEDURES AD%787:SL%(AD%) DR%(AD%3) X125 SP$SP$" ":X S%(24),L789): PRINT SLOT #, n250: INIT< xX$"L"170L X$"D"190] X$"LN"200r 1140: GET DATA 1730: PUT DATA 2090: PRINT DATA 210: ALL DONE 2300:DELETE FILE 2520:LIST NAMES 3000:PERFORM TER- M# DMS4 - LEVEL 5.1: Y$ CONTAINS THE FILE NAMES( I$ IS THE ID ARRAYn2 N$ IS THE NAME ARRAY< S% IS THE FIELD START ARRAYF L% IS THE FIELD LENGTH ARRAYP N% IS THE NUMBER OF FIELDS DEFINEDZ PR%=PRINTER SLOT # dPR%(           <(V'G$:"FMA2 INSERT OUTPUT DISK IN DRIVE ";DR%;" ";:2180H(`'MF%DR%R(j'9000a(t'X010500(~':"FMA62 FILE DEFINITIONS COPIED"('220()G$:"FMA68 FILE DEFINITIONS ";::"NOT COPIED":()220A$(34)MF$(X)',$Z$'6$X9'@$DD$;"CLOSE MAINTFILES"D'J$216,0J''P''l'' ** COPY MAINTFILES **r''''DR$(DR%)"D"'$'G$:"FMA61 INSERT FILE DEFINITION DISK"'.'" IN DRIVE ";DR%;" ";:2180'8'8000'B'M010500(L'DR$(DR%)"O"&'# &(#(&)# ** WRITE MAINTFILES **.&*#6&+#X0D&2#M19999O&<#9200}&F#DD$;"RENAME MAINTFILES,MAINTFILES,D";MF%&P#9999&#(222)66000Ø,0:790&$6000&$DD$;"OPEN MAINTFILES"&$DD$;"WRITE MAINTFILES"&$X0M1'"$Z(222)48990%X89904%YDD$;"OPEN MAINTFILES"?%^8200Z%hDD$;"OPEN MAINTFILES"u%rDD$;"READ MAINTFILES"%M099%MF$(M)%M%8999% (222)56000% 216,0:790%4!DD$;"CLOSE MAINTFILES"%>!216,0:8999%#216,0:790D":G$:"FMA1 INSERT DATA DISK IN DRIVE ";DR%;" ";:2180S$DD$;"WRITE ";Y$;",R0"[$V%d$RL%y$DD$;"CLOSE ";Y$$$@$A ** READ MAINTFILES **$B$J8022$TDD$;"RENAME MAINTFILES,MAINTFILES,D";DR%$U8030$V216,0:790%WRESET ONERR#!j (Z$,2,10)Y$2360I!t CR$;D$"WRITE MAINTFILES.D,R"OUT%W!~ (34)Z$g! OUT%OUT%1q! 2360! 216,0:790! (222)53160! CR$;D$"CLOSE"! D$"DELETE MAINTFILES"! D$"RENAME MAINTFILES.D,MAINTFILES"! " LIST THE (  DELETE A FILE FROM MAINTFILESK  D$"OPEN MAINTFILES,L240,D"DR%f  D$"OPEN MAINTFILES.D"  D$"DELETE MAINTFILES.D" $ D$"OPEN MAINTFILES.D,L240" . IN%0:OUT%0 8 D$"READ MAINTFILES,R"IN% B 2460 L Z$ V IN%IN%1 !` 216,0:((S%(C))))(S%(C))2P5$P5$(SP$,32(P5$))\P5$P5$(SP$,4((L%(C))))(L%(C))m3500:PRINTtC(W$(0))02270P5$"CALCULATED FIELD FORMULAS ARE:":3500P5$W$(0):3500A$"P"2290PT$""ĺPT$D$"PR#0"$"P"2100#R3250:INIT PRINTER)\C^P5$" ":3500: PRINTi`P5$" FILE "Y$:3500{bP5$" ":3500dP5$"ID NAME START LENGTH":3500fP5$" ":3500zC0N%|P5$I$(C)" "N$(C)P5$P5$(SP$,4&(Z$)238Z$Z$(SP$,238(Z$))4(34)Z$HZ$"!"Y$W$(1)n(Z$)238Z$Z$(SP$,238(Z$))| (34)Z$D$ * PRINT THE FILE INFORMATION4:"FM49 LIST ON (T)ERMINAL OR (P)RINTER? ";:3040:A$B$>A$"T"2140 HAN$(L%(C%))b(IN$)31910=lIN$("000",3(IN$))IN$KvZ$Z$IN$WC%C%1^B(Z$)238Z$Z$(SP$,238(Z$))(34)Z$A2000(Z$)238Z$Z$(SP$,238(Z$))(34)Z$(W$(0))02070Z$"*"Y$W$(0)C%0&D$"WRITE MAINTFILES,R"RC%1A02?Z$" "Y$YZ$Z$(SP$,20(Z$))dB07I$(C%)" "I$(C%)""1980Z$Z$I$(C%)&Z$Z$N$(C%)0IN$(S%(C%)):(IN$)31870DIN$("000",3(IN$))IN$NZ$Z$IN$ XI(Z$)1) ^(W$(1),1)":"1690*h26808rA01530V|(W$(1))(A$)2261530iW$(1)W$(1)A$s1590W$(2)W$(1):W$(3)W$(0)1440W$(1)W$(1)":" OUTPUT FILE INFORMATION3160CR$;D$"OPEN MAINTFILES,L240"0)Z$2680A01560)1059V"FM63 - ";::"ERROR";::" - RE-ENTER"xW$(1)W$(2):W$(0)W$(3):1440A$"@00104"A1:1530"(A$,1)"@"A1:1530,W$(1)W$(1)A$6@W$(1)W$(1)(Z$,1)JZ$":"1630TZ$(Z$,%S%(A)L%(A): CALCULATE NEXT FIELD DEFAULT START9AKI$(0)""210VN%A1x PROCESS COMPUTED FIELD DATAZ$"":"FM42 ENTER COMPUTED FIELD FORMULA"239(111)((W$(1)));" LEFT ";Z$Z$""1710Z$Z$":"W$(0)W$(IME START:d" LENGTH? ";:3040:CX%11380ReB$"^"GB%1:1170gfB$""ĺG$:1380iL%(A)(B$):(L%(A))B$ĺG$:1380jL%(A)1ĺG$:1380nS%(A)L%(A)238Č1059:"FM46 FIELD EXTENDS PAST ";::"END OF RECORD"::12102xP NAME ? ";:3040:CX%11330-4N$(A)B$H<N$(A)"^"GB%1:1170cA(N$(A))0ĺ"":1330CN$(A)"MAINTFILES"N$(A)"SORTSEQ"N$(A)"SORTSTRING"ĺG$:1330F(N$(A))15N$(A)N$(A)(SP$,15(N$(A)))PN$(A)(N$(A),15) ZS%(A)P%: PRI$(A),2,1)"9"(I$(A),2,1)"."Č1059:1220; A01330HX0A1I$(A)I$(X)"*"(I$(A),4)I$(X)"!"(I$(A),4)I$(X)"*"(I$(X),4)I$(A)"!"(I$(X),4)I$(A)Č1059:"FMA5 ";::"DUPLICATE ID";::" - RE-ENTER":1210(X 2" 1240NN$"0"NN$P"FM43 FIELD ";NN$;" ";:"ID ? ";:3040:CX%11240]I$(A)B$pI$(A)""1430I$(A)"^"GB%1:1170(I$(A))5I$(A)I$(A)(SP$,5(I$(A)))(I$(A))5Č1059:1240-(I$(A),1)"*"ĭ(I$(A),2,1)"0"()(Z$,(Z$)11)L1130*V216,0:790>`(222)53160HjD$:ft OBTAIN FILE INFORMATION~P%6: PRIME DEFAULT STARTA023GB%01220GB%0:A0AA1A0P%6A0P%S%(A1)L%(A1)NN$(A1):(NN$)2C%C%1B%B%26A)10221Z$<216,0S(Z$,1)" "1000j(Z$,2,10)Y$860t1030W$(0)Z$N%C%11130N%C%1:1110N%C%11110Z$$216,0.RC%RC%18(Z$,1)" "1130BW$(0 A%A%2 B%0# A%059990 C%Y%A%9 D%1C E%D%P F%E%A%z COMPARE TWO RECORDS FOR SWAPPING G0S1 H%T%(G,0):I%T%(G,1):J%T%(G,2) (AD%4)1H%6 T%(G,3)15089 (Z$(E%),H%,I%)(Z$(F%),H%,I%)5092$(DR%)"D"DR$(DR%)"D":G$:"FMA1 INSERT DATA DISK IN DRIVE ";DR%;" ";:19000^ A1X%(4)r 10000:GET RCD EOF%14500 Z$(A)Z$ Y%Y%1 A RN%MX%EOF%1:4500 4999 EN%1  SORT THE RECORDS IN CORE A%Y%1(IN$,1)"N"Ĭc DR$(1)"P"DR$(1)"P"::"FMA0 INSERT PROGRAM DISK IN DRIVE 1 ";" ";:19000 U%1ĺDD$;"RUN DMS,D1,S";PL% DD$;"RUN MERGE,D1,S";PL% GATHER A STRING OF RCDS Y%X%(4)Y%0:EN%1:4999 Y%0 EN%14999O DR% Y%0800: JUMP IF NO MORE INPUT: 5000:SORT RCDS[ X6000: WRITE STRING TO DISK 400:GO BACK FOR NEXT SUB-STRING 8000:TERMINATION RG$ f:"SM02 END OF SORT" U%1ĺ"FMA4 DO YOU WANT TO RETURN TO MENU? ";:19000 U%* DMS5 - LEVEL 5.1& 20000;2RN%1:INIT RCD#F<EOF%0]9000:OPEN OUTPUTtOUT$""U%1:900X%(5)RL%1ĺG$:"FMA3 RCD LEN SPEC ";::"NOT EQUAL";::"TO RCD LEN":U%1:900,220004000: GATHER A SUB-STRING OF RCDS           !!! ! ! ! ! !!!!!!!!!""" " " " " ATION FILE ERROR";::"=";(222))+220/+B+NO MAINTFILES`+(222)4(222)63160+G$:"FMA61 INSERT FILE DEFINITION DISK"+" IN DRIVE ";DR%;" ";:3040+,GET CONFIG INFO*4500:*D$;"OPEN CONFIGURATION,D1"W*D$;"READ CONFIGURATION"_*Z$v*Z$"CONFIG"4600*Z$,AD,PI$,NA$,LF$,DD%,PT$*D$;"CLOSE CONFIGURATION"*216,0:4999*790*216,0*D$ + G$:"FMA57 ";::"CONFIGURRINTER ) AD03400:HAVE SLOT.) C%AD2569) 55,C%G) B%AD256T) BB%256`) B%ADBk) 54,B%u) 1002) 3410)H D$;"PR#";PR%)R PI$""ĺPI$) ) ) PRINT RTN) P5$) A$"P"3599) LF$"Y"ĺ(10);))*(O (P B$":CANCEL:"210#(R 7(X ABORT ROUTINE?(] D$O(b 216,0:790(g (222)0(222)15ĺG$:"FMA8 ";::"ERROR = ";(222);::" AT LINE ";(218)(219)256:3190(l G$:"FMA8 ";::"DISK ERROR";::" = ";(222)(v 210) INITIALIZE PB$"":CX%0$' IN$:IN$(21)3060F' IN$(24)CX%1:(92):3151c' IN$(13)Č868::3151|' IN$(3)ĺG$;:3060' IN$(34)IN$"'"'& IN$(8)B$B$IN$:3150'0 (B$)1ĺIN$;:3050': B$""3060'D B$(B$,(B$)1)(N IN$;:3060IN$&| IN$(L%(A))/& (IN$)2IN$"0"IN$=& A$A$IN$G& 2990M& S& & PERFORM TERMINATION PROCEDURES& CR$;D$"CLOSE MAINTFILES"& DR%1ĺG$:"FMA0 INSERT PROGRAM DISK IN DRIVE 1 ";:3040& & SIMULATE INPUT STMT ' 62980(% A$"REC#"A$"@00104":2990D% (A$,1)"*"A$"*"A$\% (A$)5A$(A$,5)~%" (A$)5A$A$(SP$,5(A$))%, A0N%%6 I$(A)A$2900%@ A%J A1:2990%T IN$(S%(A))%^ (IN$)22930%h IN$("000",3(IN$))IN$&r A$"@"20$ A2B%'$ (Z$,A,1)"="2790?$ (Z$,A,1)"+"2790W$ (Z$,A,1)"-"2790o$ (Z$,A,1)"*"2790$ (Z$,A,1)"/"2790$ (Z$,A,1)"^"2790$ (Z$,A,1)":"2790$ A$ A1:2990$ A$(Z$,A1)$ Z$(Z$,(Z$)(A1))% B%# D$"READ MAINTFILES,R"RC%'# Z$""2# 2640:# Z$L# Z$(Z$,2,10)d#( 216,0:RESET ONERRz#2 Z$P$P$Z$:P$#< RC%RC%1#F 2550#P 790#Z 216,0:RESET ONERR#d (222)53160#n $x B%6:(Z$,1)"0"(Z$,1)"9"(Z$,1)"."B%FILES NAMESR" SW%0SW%1:G$:"FMA1 INSERT DATA DISK IN DRIVE ";DR%;" ";:3040]" 2526" D$;"RENAME MAINTFILES,MAINTFILES,S";SL%;",D";DR%" 2530" (222)63160" 216,0:790:2670" 3160" D$"OPEN MAINTFILES,L240,D"DR%" RC%0$"0"20440'tO(I$(A),1)"*"N%(S)10~OA%SCOT%(A%,0)(A$)VOT%(A%,1)(B$)OT%(A%,3)(BB$): 1=NUMERIC FIELDOC$"A"T%(A%,2)1:20430OC$"D"T%(A%,2)0:20430O1059::"SM07 ";::"SEQUENCE ERROR";::" - 'A' OR 'D'"ONS0U%1:850&N20480:OPEN FILES4N50:SORTIN INITIALIZATIONWNT%(10,3)bNX%(5)mOW%(5)yODR$(2)ODR%(AD%3)$ODR$(DR%)"Z":DR$(1)"P"BO20970: GET INPUT FILE INFOLOX%(1)1VOS09`O21300:GET INFO jOA$""A%+1=ADDR(PROG DISK S #)?>NAD%-3: 0=NORMAL SORT; 1=INDEX SORTRHNAD%787: $313aRNSL%(AD%)r\NPL%(AD%1)pNDD$(4):CTRL DzNI$(23),N$(23),S%(23),L%(23)NCR$(13):RETURNNG$(7)NNSP$" "N20180:INITIALIZE(13)Č868::IN$B$:190806[JIN$(3)ĺG$;:19020V`JIN$(8)B$B$IN$:19070pjJ(B$)1ĺIN$;:19010oJB$""19020tJB$(B$,(B$)1)~JIN$;:19020JB$":CANCEL:"U%1:900JIN$B$: N*NAD%=ADDR (DATA DISK SLOT#)4N ADO DISK*220002+DD$;"WRITE ";OUT$;",R";RZ%M+(AD%4)1U%111018^+(34)Z$(A)i+11020y +(Z$(A),4) +RZ%RZ%1+DD$.8JSIMULATE INPUT STMTBJB$"":CX%0LJIN$:IN$(21)19020QJIN$(24)CX%1:(92):VJIN$!'RN%MX%EOF%1:EN%1:10999-'22000J$'DD$;"READ ";Y$;",R";RN%R.'Z$h8'(AD%4)010070B'RN$(RN%):(RN$)4RN$("000",4(RN$))RN$L'Z$RN$(Z$,5,1)(Z$,T%(0,0),T%(0,1))V'RN%RN%1:BUMP RCD#`'DD$** WRITE RCD TE ";::"ALREADY EXISTS";::" - ACTION? ";:19000:CX%19420P$(B$)29420`$AC$(B$,2)u$B$"AGAIN"9100$B$"DELETE"9999$B$"APPEND"9999%9420%216,0:790&%(222)109420+%(222)622000'' READ INPUT FILEZ"&#DR$(OD%)"D"DR$(OD%)"O"9180#DR$(OD%)"D"DR$(OD%)"O"DR$(OD%)"O":G$:"FMA2 INSERT OUTPUT DISK IN DRIVE ";OD%;" ";:19000#Y$OUT$9420$9500$DD$;"RENAME ";OUT$;",";OUT$;",S";SL%;",D";OD%$216,0>$G$:"SM22 THAT FILOD%((B$,1)):OUT$(B$,(B$)2);#(B$,2,1)":"SW%1#OD%1OD%2Č1059::"FMA32 DISK DRIVE # ";::"INVALID"::9080#(OUT$,1)"A"(OUT$,1)"Z"Č1059::"FMA22 ";:::"ILLEGAL";::" FILE NAME":9100#DR$(OD%)"O"SW%0DR$(OD%)"T DRIVE NO. ";:19000:CX%190902#B$""SW%1H#B$""B$B$":"f#B$B$Y$"."ID$".INDEX"p#9120#:"SM18 WHAT IS THE OUTPUT FILE NAME? ";#19000:CX%19100#B$""20920#OD%DR%#OUT$B$:(B$)39160!#(B$,2,1)":")"W"DR$(R%)"W":G$:"FMA6 INSERT WORK DISK IN DRIVE ";R%;" ";:19000|Z#DD$;"OPEN SORTSTRING,L";X%(0);",S";SL%;",D";R%[#OP%1d#DD$;"DELETE SORTSTRING"i#DD$;"OPEN SORTSTRING,L"X%(0)1n#9999x#(AD%4)09100!#:"FMA41 ENTER OUTPUV%V%1X(0)W,@ TERMINATIONEJDD$"WRITE "OUT$",R0XTRZ%1:# RCDSrY(AD%4)1U%18040^RL%:RCD LENhDD$;"CLOSE"'#(#OPEN OUTPUT FILE*#RZ%1:OUT RCD CNTR2#U%19080<#OUT$"SORTSTRING"P#HU#DR$(R%"Z"k|DR$(OD%)"D"DR$(OD%)"O"DR$(OD%)"O":G$:"FMA2 INSERT OUTPUT DISK IN DRIVE ";OD%;" ";:19000u}6020DR$(R%)"W"DR$(R%)"W":G$:"FMA6 INSERT WORK DISK IN DRIVE ";R%;" ";:19000A1Y%11000:PUT RCDZ$(A)""A  DRIVE ";OD%;" ";:19000@sAC$"DE"ĺDD$;"DELETE ";OUT$:6008TtAC$"AP"6008juDD$;"OPEN ";OUT$vDD$;"READ ";OUT$wRZ%:RZ%RZ%1x(AD%4)1X%(5)4yDD$;"OPEN ";OUT$;",L";X%(5)1zU%16015{SW%0DR$(OD%)"O"DR$(OD%)$Z$(E%):Z$(E%)Z$(F%):Z$(F%)A$,B%B%19 E%E%A%IE%15080U(D%D%1e2D%C%5020o<5070uopOP%16010qSW%0DR$(OD%)"O"DR$(OD%)"Z"rOP%1:DR$(OD%)"O"DR$(OD%)"D"DR$(OD%)"O":G$:"FMA2 INSERT OUTPUT DISK IN) (Z$(E%),H%,I%)(Z$(F%),H%,I%)50943 5098c ((Z$(E%),H%,I%))((Z$(F%),H%,I%))5092 ((Z$(E%),H%,I%))((Z$(F%),H%,I%))5094 5098 J%15160 5096 J%05160 5102 G 5160 SWAP THE TWO RECORDS A,S1059::"FM23 ";::"UNDEFINED";::" FIELD ID"?,S21300O,SA$(S%(A))_,TB$(L%(A)),TBB$"0":(I$(A),1)"*"BB$"1",TS0ID$I$(A):(ID$,1)"*"(ID$,1)"!"ID$(ID$,(ID$)1),TX04,T(ID$,X1,1)" "21528,TX,T21530D%4)1B$B$",A"!+SX1(B$):+S(B$,X,1)","21420A+SXL+S1059W+S21330f+SX221330+SD$(B$,X1):C$(B$,1)+S(D$)5D$D$(SP$,5(D$))+SA023+SD$I$(A)"*"(D$,4)I$(A)"!"(D$,4)I$(A)21500+SA:KEEP SCANNING4 ENTER KEY # ";S1;" FIELD ID,"C*\S" AND SEQUENCE(A OR D)? ";X*fS19000:KEYBD INi*pSCX%121330*rSB$""S0Č1059:21330*zSB$""21590*|SB$"?"21379*~SX023*SI$(X)""I$(X)" "21330*SI$(X),N$(X)*SX:21330+S(AS1059::"SM21 THAT FILE IS ";::"NOT DEFINED":>) S20970D)*Sy)4SOBTAIN THE FIELD ID AND SEQUENCE INFORMATION)>SA$"":B$"":C$"")HSD$"":E$"")RS(AD%4)021338)TS:"FMA42 ENTER FIELD ID TO BE USED AS INDEX";)VS21350*ZS:"SM06(Z$,B%23,3))(RA%A%1!(RC:(RCHECK FOR MORE RCDSN(R21600:GET RCD`(REOF%121240|(R(Z$,11)" "A$21240(RA%2421100(RDD$;"CLOSE MAINTFILES"(SX%(0)S%(A%1)L%(A%1): SET MAXIMUM RECORD LENGTH(SX%(5)X%(0)( S212903)21600: GET RCD!'SREOF%121270;'XR(Z$,2,10)A$21070D'bRA%0O'lRC07y'vRB%21(C26): POINT TO NEXT FIELD'R(Z$,B%,5)" "I$(A%)" ":21190'RI$(A%)(Z$,B%,5)'RN$(A%)(Z$,B%5,15)'RS%(A%)((Z$,B%20,3))(RL%(A%)((A$))^&;RDR$(DR%)"D"DR$(DR%)"D":G$:"FMA2 INSERT DATA DISK IN DRIVE ";DR%;" ";:19000j&RDD$;"RENAME MAINTFILES,MAINTFILES,S";SL%;",D";MM%&?R22000&@RDD$;"OPEN MAINTFILES"&BR216,0&DRDD$;"READ MAINTFILES"'NR(A$,(A$)2)%0RY$A$)%1R(Y$)221049{%2R(Y$,1)"'"Y$(Y$,(Y$)1):AD%4,1:(Y$)1ĭ(Y$,1)"'"Y$(Y$,(Y$)1)%3RA$Y$%9R(Y$,1)"A"(Y$,1)"Z"Č1059::"FMA22 ";::"ILLEGAL";::" FILE NAME":20970&:R(A$)10A$A$(" ",10120971$QB$"?"23000+$RB$""20920;$RY$B$:A$B$H$ RAD%4,0[$ R(B$)321041$R(Y$,2,1)":"ĭ(Y$,1)"1"(Y$,1)"2"Č1059::"FMA32 DISK DRIVE # ";::"INVALID"::20970$R(Y$,2,1)":"DR%((Y$,1)) %&RA$Y$:(A$,2,1)":"A$:"FMA4 DO YOU WANT TO RETURN TO MENU? ";:19000D#Q(IN$,1)"N"Ĭ#QDR$(1)"P"DR$(1)"P"::"FMA0 INSERT PROGRAM DISK IN DRIVE 1 ";:19000#QDD$;"RUN DMS,D1,S";PL%#Q#Q#Q OBTAIN THE FILE INFO$Q"SM03 INPUT FILE NAME? ";:19000:CX%4)1ĺ"6":T%(0,1):"1":T%(0,3):20870P"TQA0S1: OUTPUT KEY FIELD DESCp"^QB03: BUILD A KEY STRING}"hQT%(A,B)"rQB"|QA"QDD$;"CLOSE SORTSEQ""Q20960"Q216,0:790"Q1059::"SM14 FILE '";Y$;"' DOES ";::"NOT EXIST":0#Q:19000-!QDD$;"OPEN SORTSEQ,S";SL%;",D";R%F!QDD$;"WRITE SORTSEQ"Z!QR%:WORK FILE#q!"QU%:# SUB-STRINGS!,QS: # KEY FIELDS!6QX%(4):# RCDS PER SUB-STRING!@QX%(0):RCD LEN!EQY$"."ID$: FOR INDEX SORT ONLY!JQ"/*"'"OQ(AD%N$""R%1:AD%2,0:20735f PIN$"1"IN$"2"Č1059::"FMA32 DISK DRIVE # ";::"INVALID"::20690t PR%(IN$) PAD%2,R%:SAVE WORK DR# FOR MERGE PSL%PL%R%1WK%1!PDR$(R%)"W"DR$(R%)"W":G$:"FMA6 INSERT WORK DISK IN DRIVE ";R%;" ";SxP216,0:KILL ONERR>P:"SM08 ";A%;" RECORDS TO SORT"NPU%A%X%(4)gPU%X%(4)A%U%U%1sP22000PDD$"OPEN "Y$",L"RL%",S"SL%",D"DR%PU%120950: JUMP IF ONLY 1 STRINGPR%1P:"SM11 SORT WORK DRIVE NUMBER? ";IN$ PI000)PDD$;"OPEN ";Y$;",S";SL%;",D";DR%= PDD$;"READ ";Y$I"P20890V$PMX%,RL%~&P CALCULATE AND SET THE DIM FOR Z$(PSPACELEFT(0)2PA%(SPACELEFT23)(X%(0)3)7PMX%A%A%MX% rT%(B,0),T%(B,1),T%(B,2),T%(B,3)E |B^ DD$;"CLOSE SORTSEQ"g W%0p 420 ALLOCATE STORAGE FOR THE OUTPUT BUFFER SPACELEFT(0) V%(SPACELEFT23)(U%3) Y$(V%) P%0:INDICATE OUTPUT B280 (222)61920O G$:"FMA34 'SORTSEQ' FILE ";::"NOT FOUND"::160Z 1920 DD$;"OPEN SORTSEQ,S";SL%;",D";A% "DD$;"READ SORTSEQ" ,A%,Z%,S%,R%,U%,ID$,P$ 6P$"/*"P$"" @Z$(Z%) JW$CHAR$(B%) TQ%(Z%) ^READ THE SO10:CX%1240# IN$""A%1:270> (IN$)1(IN$)2240L A%(IN$) DR$(A%)"W"DR$(A%)"W":G$:"FMA6 INSERT WORK DISK IN DRIVE ";A%;" ";:1810 276 DD$"RENAME SORTSEQ,SORTSEQ,S"SL%",D"A% 216,0:280 216,0:790:(222)4 INITIALIZE PROGRAM& T%(10,3)2 DR$(2)A DR$(1)"P"R DD%(AD%3)^ DR%DD% READ THE SORT CONTROL RCDS AND SAVE THE VALUES IN$((AD%2)):IN$"0"IN$"": GET WORK DRIVE# 250 "SM56 SORT WORK DRIVE NUMBER? ";:18 n840:GET NEXT RCD> x(Z$)0150: JUMP IF NO MORET 1330:OUTPUT RCDg 110:CONTINUE~ 1410:TERMINATION "SM02 END OF SORT" DR$(1)"P"ĺG$:"FMA0 INSERT PROGRAM DISK IN DRIVE 1 ";:1810 DD$"RUN DMS,D1,S"PL%  MERGE (LEVEL 5.1): AD%-2=ADDR (WORK DRIVE#)[ AD%=ADDR (DATA DISK SLOT#){ AD%+1=ADDR(PROG DISK S #)(AD%787: $3132SL%(AD%)<PL%(AD%1)HG$(7):BEEPPDD$(4):CTRL DZ210:INITITALIZE d480:OPEN FILES""""""""     UT INTO THE HOLD FILE."N" TYPING '& MERGE WILL RECOVER"ND RETURNS TO BASIC"hN:"PROGRAM ON HOLD, USE '&M' TO RECOVER"N:" THIS IS DISPLAYED WHENEVER A"N" PROGRAM IS PUT INTO THE HOLD FILE."N" TYPING '& MERGE WILL RECOVER" THIS IS DISPLAYED WHENEVER A"N" PROGRAM IS P61 INSERT FILE DEFINITION DISK"@1]" IN DRIVE 1 ";:19000O1]DR$(1)"M"Y1]MM%1d1^21053< J<> J=<<><><=<ȱ<ɀ aJe<<e==ץ<=<ȱ<=<?>`ӠR AY$ 0Z230200 Z216,0:79010"Z(222)423008<0#Z22000X0(ZDD$;"CLOSE MAINTFILES"c02Z20970v0]NO MAINTFILES0](222)4240100]216,0:7900]240100]DD$;"OPEN MAINTFILES"0]210550](222)6220000]216,0:7901]G$:"FMA ";:19000/YY$"" /Y23072W/YDD$;"RENAME MAINTFILES,MAINTFILES,S";SL%;",D";DR%c/Y22000/YDD$;"OPEN MAINTFILES,S";SL%;",D";DR%/YDD$"READ MAINTFILES"/Y216,0/Y21600/YEOF%123080/ZY$(Z$,2,10)23020/ ZY$(Z$,2,10)0Z(222)522000.TEOF%1.T8.U DISK ERROR ROUTINEk.VG$:"DMA8 ";::"DISK ERROR";::" = ";(222)|.VDD$;"CLOSE".V216,0:790."VU%1:900.YDUMP LEGAL FILE NAMES /YDR$(DR%)"D"DR$(DR%)"D"::"FMA1 INSERT DATA DISK IN DRIVE ";DR%;"-TID$(ID$,X)-T21590&-$TA023?-.TI$(A)" "21300P-8TI$(A),N$(A)W-BTAb-LT21300h-VT-`T READ "MAINTFILES"-jTEOF%0-tT21700-~TZ$-T216,0-T(Z$,2,1)"9"21730-T21740-T216,0:KILL ONERR-T790:FIX ONERR.T