IMD 1.17: 8/01/1980 8:57:45 on user 4 DbaseII #' @ACCNTPAYCMD ACCNTS DBF CALJUL CMDCHECKS DBF CHREPORTCMD CHREPORTFRM CRC COM CRCKLISTCRC DATER CMDDBASE COMDBASEMSGTXTy !"#$%&'(DBASEOVRCOM)*+,-./012345678DBASEOVRCOM89:;<INSTALL COMU=>?@ABJULCAL CMDCMAIL CMD DMAIL DBF EMAILENTRCMDFMAILFMT FMTGMAILINFOCMD HMAILLAB CMDIMAILLTTRCMD JSAP36 COMKXBALANCECMDLXCANCEL CMDMXDEPCANCCMDNXDEPOSITCMDOXMENU CMDPXNEWENTRCMD QZAP COM&RSTZIP COMlUVWXYZ[\]^_`abcZIPTEST CMDdeNOTE - THIS IS THE ACCOUNT PAYING COMMAND FILE * * * - explanatory text ? 'THIS PROGRAM USES THE PRINTER. IF YOUR PRINTER IS NOT READY IT' ? ' MAY HANG UP AT THIS POINT. 5 LINES FURTHER DOWN IN THIS FILE' ? ' YOU WILL FIND A SECTION OF CODE TO SET UP AN ANADEX PRINTER FOR' ? ' PRINTING CHECKS. USE YOUR TEXT EDITOR TO MODIFY THIS FOR YOUR' ? ' PRINTER. ' * - turn off printing commands to screen SET TALK OFF * - send results of @ statements to printer SET FORMAT TO PRINT * - echo output to printer SET PRINT ON * - turn off console SET CONSOLE OFF * - go to top of page on printer EJECT * - this is the ANADEX 9500 text * SET FORM LENGTH TO 22 LINES ON ANADEX 9500 * ESC 4 022 * - create ASCII string of esc4022 ? CHR(27)+CHR(52)+CHR(48)+CHR(50)+CHR(50) * - turn off echo SET PRINT OFF * - echo output to console SET CONSOLE ON * - set loop variable true STORE T TO STAY * - request current date ACCEPT "Enter Today's Date (YYMMDD)" TO TODAY * - ask for beginning check number for this run INPUT 'Enter Beginning Check No. ' TO NNO * - ask for disk drive with database files ACCEPT 'Enter Data Disk Drive ' TO DRV * - set system default to database disk drive SET DEFAULT TO &DRV USE CHECKS * - select primary database file SELE SECO USE ACCNTS * - set up program loom DO WHILE STAY * - select seconary file ACCNTS SELECT SECONDARY ? ? * - list data from ACCNTS LIST PNAME,S.AMT,DDATE ? ? ? ? ' ENTER OPTION YOU WANT' ? ' -1 - EXIT' ? ' 0 - WRITE CHECK TO ACCOUNT NOT IN DATABASE' ? ' N - NUMBER OF ACCOUNT TO WRITE CHECK FOR' * - ask for account number to print check for INPUT 'Which Account' TO ACCNT * - check to see if exit IF ACCNT<0 * - set loop variable false to exit program STORE F TO STAY LOOP ENDIF * - check to see if writing check not in ACCNTS IF ACCNT=0 * - request data for check ACCEPT 'Enter Payee ' TO NAME INPUT 'Enter Amount ' TO MAMT ELSE * - locate account number in ACCNTS file GOTO ACCNT * - store payee name to variable NAME STORE PNAME TO NAME * - is check hasn't been canceled IF .NOT.VARIABLE * - check to get amount still owed STORE S.AMT TO MAMT IF TODAY>=LDATE STORE S.AMT+LAMT TO MAMT ENDIF ELSE * - user option on amount to pay this time INPUT 'Enter Amount To Pay ' TO MAMT ENDIF IF PERIOD>0 IF (VAL($(DDATE,3,2))+PERIOD)>12 STORE VAL(DDATE)+((88+PERIOD)*100) TO NDATE ELSE STORE VAL(DDATE)+100*PERIOD TO NDATE ENDIF REPLACE DDATE WITH STR(NDATE,6) ENDIF ENDIF * - store variables to be printed on check STORE STR(NNO,4) TO XNO STORE STR(MAMT,10,2) TO XAMT * - show user on screen proposed check values DISP OFF 'Check #',XNO,' Pay ',XAMT,' To ',NAME * - ask if you want to print this check ? 'OK? (Y/N)' WAIT TO X * - see if check is to be written IF X=$('Yy',1,1).OR.X=$('Yy',2,1) * - select primary file SELE PRIMARY APPEND BLANK * - put check data into primary file REPLACE TO WITH NAME,NO WITH NNO,AMT WITH MAMT,CAN WITH F REPLACE DATE WITH TODAY,MEMO WITH TYPE STORE NNO+1 TO NNO * NOW PRINT CHECK ON PRINTER @ 3,67 SAY 'Check No.' @ 3,77 SAY XNO @ 5,67 SAY 'Date:' @ 5,73 SAY $(TODAY,3,2)+'/'+$(TODAY,5,2)+'/'+$(TODAY,1,2) @ 10,1 SAY 'Pay to the' @ 11,1 SAY 'Order of' @ 11,12 SAY NAME @ 11,68 SAY MAMT USING '$$,$$$,$$$.99' @ 17,12 SAY INT(MAMT) USING '$$,$$$,$$$' @ 17,23 SAY 'D O L L A R S and ' @ 17,44 SAY (MAMT-INT(MAMT))*100 USING '99' @ 17,47 SAY 'C E N T S' @ 20,12 SAY 'Type: ' @ 20,18 SAY TYPE @ 20,41 SAY '----------------------------------------' EJECT ENDIF ENDDO RETURN  --> FILE: ACCNTPAY.CMD CRC = 0D 10 --> FILE: ACCNTS .DBF CRC = F1 7F --> FILE: CALJUL .CMD CRC = 76 FA --> FILE: CHECKS .DBF CRC = F7 25 --> FILE: CHREPORT.CMD CRC = 84 EA --> FILE: CHREPORT.FRM CRC = 07 70 --> FILE: CRC .COM CRC = B2 07 --> FILE: DATER .CMD CRC = AD 09 --> FILE: DBASE .COM CRC = 1E 33 --> FILE: DBASEMSG.TXT CRC = 78 DC --> FILE: DBASEOVR.COM CRC = AE FC --> FILE: INSTALL .COM CRC = 5E B0 --> FILE: JULCAL .CMD CRC = 61 EE --> FILE: MAIL  .CMD CRC = 69 14 --> FILE: MAIL .DBF CRC = 36 20 --> FILE: MAILENTR.CMD CRC = 02 2D --> FILE: MAILFMT .FMT CRC = 13 7E --> FILE: MAILINFO.CMD CRC = 48 6D --> FILE: MAILLAB .CMD CRC = C2 A1 --> FILE: MAILLTTR.CMD CRC = 46 41 --> FILE: SAP36 .COM CRC = 63 63 --> FILE: XBALANCE.CMD CRC = A9 B6 --> FILE: XCANCEL .CMD CRC = CB B0 --> FILE: XDEPCANC.CMD CRC = 9C 6A --> FILE: XDEPOSIT.CMD CRC = E4 3C --> FILE: XMENU .CMD CRC = 88 9D --> FILE: XNEWENTR.CMD CRC = A9 66 --> FILE: ZAP .COM CRC = 1F AD --> FILE: ZIP .COM CRC = 38 55 --> FILE: ZIPTEST .CMD CRC = 26 9FIPNAMECrAMTN rDDATECrLDATECrLAMTNrTYPEC rPERIODNrVARIABLELr  SMITH OFFICE RENTAL 234.56801201800613 5.00R 1F HURTZ BUSINESS CAR LEASING INC 300.00800720800529 20.00C 1F PRESSURE ADVERTIZING AGENCY 500.00800823 0.00A 1T TIDY LAUNDRY 40.00800701800615 0.00J 1T MUNICIPAL WATER DEPARTMENT 10.00800705 0.00U 1T LONG DISTANCE TELEPHONE CO. 200.00800628 0.00T 1T EVENING NEWSPAPER LTD. 15.00800731 0.00  3TTYPEC XPERIODNXVARIABLELX ACCEPT 'ENTER DATE AS MM/DD/YY' TO DATE STORE VAL($(DATE,1,2)) TO M STORE VAL($(DATE,4,2)) TO D STORE VAL($(DATE,7,2))+1900 TO Y STORE INT(30.57*M)+INT(365.25*Y-395.25)+D TO X IF M>2 IF INT(Y/4)=Y/4 STORE X-1 TO X ELSE STORE X-2 TO X ENDIF ENDIF ? ' START DATE = ' ?? DATE RETURN @NONpTOCpAMTN pCANLpDATECpMEMOC p  101MITCHELL OFFICE SUPPLY 77.34F04/07/80O 102POSTMASTER 22.41F05/07/80P 103FIRST NATIONAL 55.10F05/07/80B 104Newton Physics Labs 1000.00F01/01/81Z 105Harvey Mudd 169.34F01/01/81D 106SHYSTER LEGAL CLINIC 333.22F01/05/81L 108TIDY LAUNDRY 40.00F01/25/81J 108PRESSURE ADVERTIZING AGENCY 500.00F01/25/81A 109SMITH OFFICE RENTAL 239.56F01/25/81R 110MUNICIPAL WATER DEPARTMENT 5.45F01/25/81U 1001SMITH OFFICE RENTAL 239.56F811130 R 1002HURTZ BUSINESS CAR LEASING INC 320.00F811130 C 1003PRESSURE ADVERTIZING AGENCY 500.00F811130 A 1025SMITH OFFICE RENTAL 239.56F811130 R 1026CLIPUM MOTORS 123.45F811130  DO WHILE STAY SELECT SECONDARY ? ? LISTNOTE - report on the checks in a database * - this dBASE II system uses the database file generated by the * - check balancing system initiated by XMENU. This check report * - system reads the XMENU data base and report the subtotals for * - each of the various user memos. * * note: uses database with structure same as XMENU * ? 'THIS PROGRAM IS SET TO RUN ON YOUR PRINTER. IF PRINTER IS NOT READY' ? ' THE PROGRAM MAY HANG UP.' * - enter name of database file from XMENU ACCEPT 'Enter check database name' to DBNAME * - assign data basefile to this command system * - database has name of xxxx.DBF USE &DBNAME * - index on variable MEMO in database file INDEX ON MEMO TO &DBNAME * - enter title to be printed at top of each output page ACCEPT 'Enter report title (up to 60 chars)' to TITLE * - set header to title value SET HEAD TO &TITLE * - generate report form using CHREPORT.FRM REPORT FORM CHREPORT FOR NO#0 TO PRINT RETURN  Y Checks subtotalled by type n y y MEMO N N Check type : 5,NO CHECKNO N 33,TO PAY TO THE ORDER OF 10,$(DATE,3,2)+'/'+$(DATE,5,2)+'/'+$(DATE,1,2) DATE;WRITTEN 12,AMT >AMOUNT Y #CRC.COM 5.0 6/18/82CRCKFILE???!9" 1 M @ CRC Ver 5.0 CTL-S pauses, CTL-C aborts :] O@ ++Searching for CRCKLIST file++@ Now searching for "CRCKFILE" file++ !  1 .) F!  ͡]͸! ͔0CRCKLIST???CRCKFILE???!9" M à*,*.}|ډ!".*,{z{** u*.".G*.",!".***,}>*.#".ɯ22)! ",". <  NO FILECRC FILE$!   >. @ Checking with file - ! ~T #M M 2 2 2 2 ! >2 3o: : @ ***No CRC Files found***$> ʉ ʉw#: <2 P6: .6@ Can not parse string ! ~ʽT #ñM ! > 6 #6^#6! ~T #! 4M #x] #e w~ T #>2 @ - s M@ File not found ! 4 >2 o: G: „: G: „@ *Match* 2 ! 4@ <-- is, was --> : ) > T : ) M 2 ! 4<2 ~# @ Not a space between CRC values<2 G-CATALOG???@ ++ Now searching for "-CATALOG" file++ !  ) .) ! ”>.”#””͡”››tK››͸›* =: =͔="  ʳ ª~#.  ¿~  #~  .+~#0:0~#!A.O.Gy~#0M0 K MMɷ:m2 FSÄCRCKLIST$$$››tK›, › **}|!"*{z*~]*"Ü  DISK FULL: CRCFILE$!"*~*#"ɯ2i2}! "!"]]2 s : ~# ++FILE NOT FOUND++$: F*}’">͇†]<  CANNOT CLOSE CRCFILE$CRCKLISTCRCSK FULL: CRCFILE$  w# !]͐ DONE$!e S!]Q !eZ @ --> FILE: XXXXXXXX.XXX CRC = oS) \<‘@ ++OPEN FAILED++ !" !" * | ʹ) \!~2 #" Ý: ) > T : ) @ ++FILE READ ERROR++ <* |): o% |g}o" 2  ; 0T ~T #~A > T > _h : F{͇2h2|: ʲ !\   :\2 ! \  \ ! \  \! \  \<7=Ɓo&   ]  2h2|2   ~$#~# x  : F} *}= ">͇1 ]:( 2' * " wOa:͟ á: 2 ʃ! Æ! !͗w* +* 6w#Gʰw*% -"% :T=o%"% ͳ>2 : O* * y6+" :' 2( * " * * 6#G :) * N#yS#* q#* 6 :( 2' * " ͟ w>2 * 6 *% ,"% * *% 6dG?D͟ w: s: s: ©: *% * 6©: s: N*% * 6: * 6: 2 w: w>@s: w>s: s: w: 0s: w: s͎: G: ʌ: 2 6"* 6" xG:& 2& yO:% =2% ͳg ͎͚!"% !" !" 2 2 2 *% ,"% :T=$."% ͳ* #" * |:' <2' 6~ 2) * +" * |@:' =2' 6~C 2) :) ! Q9O:) 9ʐ#ʐAwLʆ!|X7y͊6y͊6?_Oy! Q97y! Q9yͱ6G**  N##6y~FTa:4* |**  p###q!" ** N!ƛT3!ƛ#* | Nͷ #* " ʍ* w#" 9V#VA`!`Xuw|~ͱ6|yO~͊6uy!~|_w|~|> wOͷ #(* 6#" ͎*% "% ͳʹ"% ͳv~Oͷ #ô~#.~ #: o&)))6: NH * : Oͦ2:  **  64* |" * : G: O* T3* "% ͳ* Nͷ #> : * ~_Yd Td 66͂~‰ ** |Œ  ͷ :% y ʹ** |:"Dʡ :a:v*% * 6" **  ~͝*% - :T=o%* 6** 6* 6" ͂:"D :a:! 4ɯ2 " "% 2' 6" 6"* 6" **  ~O2 #~6 <2 #6y ~  4* |f x2 y2 o : G2 O!ƛ" " T3É #" 2 " ͳ* |ʘ ~Û 2) : 2 * " * "" >2$ a:: N >9L>XTFYNtfyn.+- #9AXL!DELETED INSERT "!j"!j"a!j"*~#"4 ͸6 +P (;N>e  T )J *+":7Ϳ~ !"C *N̈́8"ͦC #"C *a6"a6" F#N#6x͡I a x7 ͦ2*4A *~8ͦC *xT #y~8 ͦC xn ~*wÅ ~*_Tʃ Yʃ 6Å 6ͦC OG"Ϳx ~@ڬ 2Ü +~ ʜ + ‹ yï yï >2 y/<2ɯ2`2*6!j"!6N#~2#^#V#~#F#"x2:`/ 6~#6O~8C 6"͚F##6NͿF~8x@<<<w= #NͿFx7HM*iDp#q#66+N6x>#6q#w8= ##6Ϳ~C 6"͚ړʮ#F#6N~@z 7#w8= ##6Ϳ~#6T= 6F= ?5M ?5E *p#T3H ͦC ?5M ?5E|ŠͿxҊyq=t~O#x6*q#~8 ͦC >{P; *w# ˜ͦC Ϳ~w͵C 1C >zP; ͢1C ͘1C ͼ0C (ʐÕ(ʕÐ(ʕÐ(Õ(Õ(ʐÕN#y6F#w8xw͵6#"C N#F#x*wͦC AʐÕAʕÐAʕڕÐAڐÕAҐÕAڐʐÕ*wͦC *wͦC Ϳ~/w͵C 5C ͤ,4C ͿN#ͦ2C Ϳn&4C *ͦʐÕ*ͦͤ,ÕN#F#x<]GC7xs#^x/<P; y9͔963#q#p#637"xXD"x7>ѷ.OR.axRXLDaxB7>)ѷ.AND.ͷ7ͷ7ͷ7}D͉x>͉7.NOT.-xʫ-xɱ~$>ʽ#D-x7~=>%#>%<#~= >>%> &> %>+#~=#>&> #Dɯځxʙ~+[#Dڀxʀ̈́>9-d#Dڀxʀ̈́>97xG|ڎGyҕMxGɱ ~+#DxyO> à-#DxyO>à7mjx~*.#DmixiyxGOxG>/7#Dmixix=|GWGy]Mx7~+ʏ-“#D͜ښ>#D͜ښ͸vJ͛ͤ~!cQ97t=. DͤڡxʡG>Ú>Úͤڡ9¡>Úͤڡ9¡A>Ú~( #Dڡ9¡~,¡#Dڡ9¡~)¡#D>Ú~( ͤx66$#6Üͤڡxʡ>%Úͤڡ9¡>&Ú~(¡#D-ڡxʡ~,¡#D8D~),{>2-ڡxʡD~)),¡#D-ڡxʡ~)¡->#D:O>1Ú~(¡#Dڡ9¡~,¡#D-ڡxʡ~)ʴ,¡#D8ڍD~){Ï>2-ڡxʡ~)¡#D:O>2Ú#D>>2Úͤڡ9¡>Úͤڡxʡ> Ú~( #D~) #D>!Úͤ.xNMy)CMLM~(¡#D*ʡD~)¡#DU6)#6#p#Üͤڡ9¡>"Ú>Ú>Úͤڡ9¡>#Ú7~(#D~)#D7xͦ26(#4!D7~ͤ6x#&7O6)## #D7~_T3Y3F8N87>96*#w##DͿs͚rr#F###N>'6*^7Ϳژ͚җ#N6'#6*^7Ϳڼ͚»6'#6*^7*D"^D722~+-#~0:. 2: >2:(O:3HyxB<ɯ~ R R#E.F..T.CDEFILPRSTV#@$!*INT#VALLEN@%TESTePEEKRANKSTR$<!CHRDATETYPE TRIM]*pEOFzFILEͨ()*!d!`*~0~**|0*c0"0&-*c0#"c02b02k06DM*x0> 6̈́8 6xA2/y2/2/_!|Ux2/g!"/#"/ͽ$20!$ͭ$m0ʱʜͥÐ:l0ͥ"c!ͯկ2/ͤ,"{$#20!"{"Z|*z0"t0*/"/#:0*/!{:/O~8*/:/66#6*v0#6#6>2020J$$>20*/>20!{:/O%=$#++6zWJ$"/#J$*t0"/_$"/:0O:0ڏ<$DM:0<͇$+:0͇$+͖8*/!{:/O~8*/:/6*Z|6!04:/$:0Ľ$*/"t0~2 0<g:/%|20*/"{$:0g:/$|2/20͇${:/~8:020O: 020$DM:0<͇$++*/++̈́8*/"Z|$:0O:0S20*/"/J$_$*/#"/>20*z0*t06*v0#!{:/O~8*/:/6*Z|6>20*/$*/"/#"/ͽ$*z0*/6DM*/+T]͖8#"t0*/*z066_$#̈́$eͭ$#|6 "! ͭ$"0c!$!{:/7 "0*0*06E "B "0̈́${:/O% !ͭ$#_$ #:0O:0ʊ O$DM̈́$++:0<͇$++̈́8!05J$$!05!05$:0P ̈́${:/O~8_$ #̈́$!{:/O~8$:0O:0ʜ ɷO20"/#*z0"t0*/"/#:0W!>20*v0*/%.!!$!++6zW!J$"/# ++6zH!J$"/# J$62b0*z0"t0!ͭ$*x0 ͔9}ڠ!#6z>C+++6/ʒ!>N6-2/{2/#/6ͭ$m0¸!!!!ø!:l0!"ͤ, |ͤ,H ͯ>O ""̈́$%"6!#_$m"#$a"_$m"#:0O:0":0<20͇$++6J$"/>20J$#*v0#6zC"d"J$̈́$6v">2b07ɷ#_$"#:0=20"_$"#:0ʒ"=20*v0#ʱ"͊$6J$"/#:020J$:0<͇$++6z·""J$̈́$6">2b07ɷ2k0;".:k0*x0n;".>20*z0"t0#*/"/#J$:0M#*v0#6|'#*v0###6>2b0!*z0"t0#*/"/#:0<20J$:0ʝ#<͇$++6|b#:0͇$6_$!05J$!l0ʶ#;".ä#2k0O!l0~###q:l0*x0/ ~8*v0###"/*/" 0:k0 0; ".:k0*v0;".*v0~20*/" 0:k0 0; ".*v0:0w:k0;".*/*t06:0w#"t0*z0*t06p$7+~20+V+^"/"t0ѷ:0*/=O:/W yOʩ$xҤ$GØ$ ʹ$33:k0!l0:k0;".*x0!/ ~8*x0:k0;".:/6!04:0!}, O:/_! %##:/@%5:0-%ͦ20%4͘1U47:2/e&>2/=&e&>2/y98ziD͔9"0>2/^&>2/z:/&=2/"!0:/~&&:/ʋ&*0&:/ʹ&*0|&*g06&T]ͳ' |&!&:/&:/&*!0|<,!"!0>3".>~".> ".iD:#0;".:b020:02b0:#0;".$0;%'7Q7<'<'O'~A' )'=:#02#0:]0!^066:#02j0w:j02#0!$0Y0; ".:/ž':/§'=!z, !z, =7"0"c0|&-B,!$06$0y9k(#~:'+~͊6k(p(o9p(o9i9k( k(.k(p(o9V( V(,V(.8(p((o9V( V(,V(.#(p(o9g( g(,g(p(=(k(!306~87aw(_$0~@>:#~ ‹(>.#~›(*)x(():0)))):0))):]0(:0( )):0)-)):0 )-)):0) )ɯ<## *0''## *0''!`6!d6!d6 :#0>P;i9"0!}͔9~5iD'+ڈ)Z'-,*0͔9>P;iD*!0"!0*e0> 6x)y)6A##6z*+p*6#6)6#6 #6z**M**p#N66*##*M**p#6q%*6>P;iD*H*x?*H*## `''ɯP;iD*0)**!`~* *>P;iD*0~͊6*_# *~͊6O+ #~.7+ #_P+8+S(+8+M2+8+ +8+~͊6J+ͱ6J+:O+# 8+y6*!0+"!0}ʹ$y+B,:&Dʗ+e+×+ "ڒ+ͳ':&Dʗ+y+×+V#7:CD+͎.ʹ$³+B,+͎.< "+ͳ'͎. 5# y",*g0"g0>2i0*~0*e0DM:#0;f,*c0#"c02b0< z, ".>2b07P;,7:#0;Û,ʢ, ".7*c0:b0!$0ƛ̈́8ƛ$0; ,".!"0&-ʹ$-2b0#ͳ':&D$- "ͳ',2b0!ͳ':&D$-B,-!06*0|ʆ-+*g06ډ-"0"c0*e0"0! "0! 0ͧ-i-0!0͎-!0͛-*0|W-0:#0; ".> ".w# ‘-~w# ž-~w+ ª-:#0;".ͳ-:#0 *|0;".*~0DM*|0~.#6"g0*|0͊%*|0++6"e0Z%Z'>".*e0DM*~0> 7P;iDz:.!z, ͷ7X.#G.##~2i0:b0*c0#"c0"g0ͳ- *|06#*g06:Dw#:Dw#:Dw:#0;".*W06#"W0Y0; ".!{"W0*W0:Y0w#:Z0w#:[0w#:\0w#"W0*W0+~}/"W0G*W0{6ʰ/+~<ʰ/"W0x; ".ALL &NEXT*&RECORD5&FORY&WHILEQ&KEY C{.DBF.CMD.FRM.MEM.TXT.NDX.FMT.$$$.HEX{007}\|np7}\|np|.tv!n~0!n~ʑ1ͣ4Î1G.~ʎ1!10/< 0~ڎ1n0~ 1WX1P_i,4z1i~怲w.FnM1.'w- 31Ҏ1.>4.4Î1.7>'w- U1ڋ1.ƙw- l1.7~'w- {1.~wj4.6Î1!n~wü0!nnͣ4.ͬ4 .41Gͼ01.4 ¸1.~GO.~WIwx1~wj4!n~2n.~ʙ22n.6@.6> 2nͼ0.~)2 C22͘1.~=wy.ʹ4:n=2u2y a2.ʹ4:n=u22n.ʹ4N2> .ʹ4:n=u22na2:nG.N@._y怳wnͣ4j47:n2n!n ͬ4 ¿2 F3ñ2.6?+2-26 F30353:F3.6G.~42ƞoxw3ƞo~w.~2.42.~(3.4.~2.42.~2.52.F3.~F362.~P3.wy_3x=G!n~.60n36-@3/<.w> ʅ3|3.~y4>..F>0ʥ3 ˜34.ʹ40 ¥34<.q/<34O>  33.~43.~-3> .ʹ403.~4O>..ʹ40 44>*4!n ͬ4'S4S4dS4 S4S4>I2nj4}o|gU4 z!nʹ4!n~,,,,,ʞ4!n~O,~–4 ʞ4.ʹ4.Â4.~怱w.w~#£4ɯw,­4_~Wwz+·4ɯ_~Wwz,4!nͣ4n4nͣ4!n~@t5 =5 / 56yy>5+ 2K:6:K:͊::!D6K:;v4::;DiD> 5> 5!6~5#16P6&ob6&o\6'q6q6dq6 q6q665̈́6̈́6̈́6̈́6> 5A[?a{?y9,7o9G'"[]0:?66o$z{/}o|g6 z}o|g~#fos#r#^#V#q#p#N#F#>Wx7r# 7> #7ž$7# 7 G~;7@7# +7yO7# D7~͊6[7_G͊6e7_o7# R7xʎ7ڄ7x2N:Ð7y2N:HÐ7C7´7xʴ77:N:O~ ²7# ¤7ô7xO~a7_877O~A7_7#7x8~07;8A78DM! 8 8 0A8:A806>8zT])))o8$87 `in:_i85> 5N Yl8ɷ7!6>?5H8HÅ8Å8yʓ8~# Æ8xʥ8~+ Ø8 99499W`i4988G498OT]x6D98/ ͦ::B’:ͦ:G:JC:x¾:p>_:Oa: :!B4: :!B6O:OCyY :!B4 !B6!B4:a =;:OC%;  2B2B:B:B2JC:JCg::OC2OC2BW?:B2CB!:Bu;!16W?BB!~8C"KC!6^#NyO)"@C!E"MCC! ;*@C#"@C*MC;*KC2IC"B"B`i"B!9"B~#͸6'<'<<==Q=n==(=<=== >>`?!_C"]C~><ͯ@ʻ ÀB yg<*]C/ÀB>ÀB:j2j*VC+6dBy<2B!"XC"ZC2\C*]C6#"VCdB`?̀@<> ÀBW?P?<>ÀBP?gB@>2TC*B"PC>dB@2TC*B"PC>dB@>2TC*B"PC>dB@>2TC*B#"PC>dB@z_=@dB!"ZC"XC?dB@2TC!"PC*B!EC"B>*XC+"XC"BdB@2TC@͵?*VC+:_ʳ=6dB6dB@*XC}|*ZC}|*]C"BgB@*BxN#F#^#V="ZC`i"XCdBixg"XCz{gxo"ZCdB:ICt>!_C"]C2B*]C~@>>>^#VO:IC> ʀB@>6:B<Y>2B*]C"]C>!:IC=k>k>)=`>%gBW? _gB*B`?̀@Ҡ>> ÀB*!\~8*B`?W?P?<>>ÀB:!\~8*ÀB2HC:HC*PC|sA*PC6>DM*ZC?*XC*CC*B:TC/?͊B"B*CC6"XCC?͊B"B*CC6"XCͲA*PC6"PC>\!\6# > 76:%D2\!]w#:”?+~@2\.ʤ?ʲ?w#Ô?!eʲ?w#ç?:\C@?:_W?*]C:\C@2\C))*]C! 6!C"FC~@@:IC@ ?#66@###6"CC6*RC "RC~1@!C"RC#####~?@5@#~T@WB*RC͑A:IC@*RC###6"CC*ZC;A*ZC*RC"FC:ICw#6##6#6!_C"]C~ʠ@ͯ@ @*]C~ʞ@76 y*]CÅ@^#V!\ #»@:ICG!C~ȸ@######~@͑A6@:ICշ#A#A=!_CA= A~#A#"VCXC~8> ÀB!_C~TA/A!_C~TAAA> ÀB#"VCXC~8!"XC"ZC2\C>*XC!6|*ZC#"ZC!"XC!~@#66"CCB##6#6WB*FC######6?*CC*]C!A*]C!6++6A:TCx> ÀB?*CC*]C"RBMB*]C!6++6B:\C@2\C>ÀB>ÀB*VC!XC~8WB*B###*BDM*B*B:B2B*BpB:TCBʢBx~# ×B~ ®B# x~¸B> ÀBx~ B BB# øB#>2HCx~ # BB>2HCDBASEOVRCOMDBASEOVRCOMC_˓7[ǔ3W{________!(D~ʆD=5!)D6~V'Z%X/iD:>DʓDV'Z%2'D2?D2 Dw'>2HD>!Eç;1O:*6ʩEکE!D.6INSUFFICIENT MEMORY IN SYSTEM, dBASE REQUIRES AT LEAST 41984 BYTES (0A400 HEX) OF MEMORY IN IN ADDITION TO THE SIZE OF THE OPERATING SYSTEM dBASE WILL OPERATE ON MOST 48K CP/M (tm) SYSTEMS THAT HAVE A STANDARD BIOS 6)2@:F!͔966>'+F:(D!)D6R'w2'D!(D4A/{;3G!"F.6{;OF!"F.6OVERLAY FILE (DBASEOVR.COM) CANNOT BE OPENED2D2D2D>vP;:`nF!aH.6tF!oH16͟9y93G8{2D2_H͔9o98{2D2^H͔9o9§F>ëF8{2D2`H:`F:^HG:_H2^Hx2_H:_HOFOF OF:^HʊG:_HGG G GG:^H ҊGG:^HҊGG:^HҊG:`HH3G:_H3G:^HҊG!6!6!?GmGPR@brpd@@\TTT@@Ȅ@@@@@@@d\~zG͊:#mG!}H16:'D—DÓD!6!G.6OFThirty days hath September April, June and November All the rest have thirty one Except February ... ERROR!H!8HERROR&H~@@*HŠ:#H##~#fo;6 .#ERROR (DD/MM/YY) : (MM/DD/YY) :35 4 Nov 1982*HELP > Help is available for the following commands: ACCEPT DISPLAY IF READ SAVE APPEND DO INDEX RECALL SELECT BROWSE EDIT INPUT REINDEX SET CANCEL EJECT INSERT RELEASE SKIP CASE ELSE JOIN REMARK SORT CHANGE ENDCASE LIST RENAME STORE CLEAR ENDDO LOCATE REPLACE SUM CONTINUE ENDIF LOOP REPORT TOTAL COPY ERASE MODIFY RESET UPDATE COUNT FIND NOTE RESTORE USE CREATE GO PACK RETURN WAIT DELETE GOTO QUIT > Help is also available for the following dBASE functions: ? @ # $ DATE FILE LEN STR TYPE ?? * ! CHR EOF INT RANK TRIM VAL > Other help topics include: COMMANDS LIMITATIONS ERROR (messages) NEW (features) KEYS (control) SYMBOLS ADV (Advantage keys) *END *AID *MORE > Additional help can be inserted into the help text file (DBASEMSG.TXT) using a text editor such as WordStar. One set of information can have several key words. For example, this text is keyed to MORE and AID. *END *KEYS The following are cursor control keys for full screen operation: ctl-E,A or - Backs up to previous data field. Up arrow (cursor lock 8) --ADVANTAGE use only-- ctl-X,F or - Advances to next data field. Down arrow (cursor lock 2) --ADVANTAGE use only-- ctl-S or - Backs up one character in data field. Left arrow (cursor lock 4) --ADVANTAGE use only-- ctl-D or - Advances one character in data field. Right arrow (cursor lock 6) --ADVANTAGE use only-- ctl-Y or - Clears out current field to blanks. Shifted function key 5 --ADVANTAGE use only-- ctl-V or - Switches (toggles) between overwrite and insert modes. Function key 8 --ADVANTAGE use only-- ctl-G or - Deletes character under cursor. Function key 15 --ADVANTAGE use only-- RUBOUT or - Deletes character to left of cursor. or - means any valid dBASE statements; it also means -whole- statements. An IF without an ENDIF (or a DO WHILE without an ENDDO) is only half of a statement. REPORT is a whole statement in itself. or- means any character string; character strings are those characters that are enclosed in single quotes ('), double quotes ("), or square brackets ([]). - means any special character; special characters are those characters from the keyboard that are punctuation marks, like any one of the following "()*=,@. - means an expression; an expression can be created by tacking together numbers, functions, field names or character strings in any meaningful manner. "4+8", and "doc = '3' .or. doc = '4'", are both expressions as well as "$('abc'+&somestr,n,3) = 'abcdefg'". - means a list of expressions separated by commas; usually simple expressions are used. Two of the examples in the previous paragraph are rather complicated, the first one could be considered as simple. - means any record field name; in one of the examples that are in the following commands, one of the databases has field names like ITEM, COST, DATE, etc. or - means a list of record field names separated by commas. or - means any filename; these are file names that must obey the rules for file names that were stated in section 3.0.
- means the name of a report form filename; see section 3.4 and the REPORT command for the how and why of this type of file. - means the name of the file where indexing information is placed; see section 3.6 and the INDEX command for the how and why of this type of file. - means the field name which will be indexed on; keys are important. There may be several indexes for any given database, each on different (or on a combination of) keys. Keys may be or field names. See the INDEX command for more information. - means any memory variable; memory variables are those variables that are created by STOREs or by use of a command that saves some value for later use (ACCEPT, INPUT, etc.) There is a maximum of 64 memory variables allowed in dBASE. - means a list of memory variables separated by commas. - means a literal; literals are numbers which are not gotten from memory variables or calculations. "4+8" is not a literal, while "4" and "9876" are literals. - means a specification of the scope of the command; scope means how much does the command cover. There are three values that may take on. ALL - means all the records in the file. ALL means that the file is rewound and whatever the command, ALL the records in the file are searched for compliance. ALL is the default for some of the commands. For other commands the default will be the current record (specially for the more potentially destructive commands like DELETE). Each command description tell what is the default scope. In the case of using a FOR phrase in any of the commands, ALL will be the default. NEXT n - means the next n records, including the current record; NEXT also begins with the record currently being pointed at. And n must have a literal value, that is, it must not be a memory variable or an expression. RECORD n - means only record n; again, n must not be a memory variable or an expression -- it must be literal before it will work. FOR - Any record so long as some logical expression has a true value. Unless otherwise specified, the presence of a FOR clause causes ALL records to be scanned (with a rewind of the database). WHILE - All sequential records as long as some logical expression () has a true value. The controlling command stops the first time the expression is false. The presence of a WHILE clause implies NEXT 65534 unless otherwise specified and does not rewind the database. There are other special symbols used in the command formats. These are special to the command and will be explained in the body of the command. *END *NEW > New commands and changes to dBASE II version 2.35 New commands: HELP - user aid command REINDEX - rebuild index file TEXT - display multiple lines of text, terminated by ENDTEXT Supplemented Commands: APPEND, INSERT, EDIT, CREATE - can use a format file for screen control DISPLAY STATUS - shows databases/indexes in use and SET settings READ & REPLACE - can be directed to NOT update indexes via NOUPDATE RELEASE - can release subsets of memory variables RESTORE - can restore additively to existing memory variables SAVE - can save subsets of memory variables SET RAW ON - eliminates extra spaces in DISPLAY and ? commands  UPDATE - replace clause can have WITH phrases *END *? *?? > ? - displays an expression list ? [,] > ?? - display an expression list without a preceeding line eject *END *@ > @ - displays user formated data on CRT or printer @ [SAY [USING '']] [GET [PICTURE '']] can be numeric expressions or $+ for relative addressing e.g. @ $,$+5 say 'HI' Possible error messages: SYNTAX ERROR IN FORMAT SPECIFICATION VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END *ACCEPT > ACCEPT - allows input of character strings into memory variables ACCEPT [""] TO Possible error messages: SYNTAX ERROR IN FORMAT SPECIFICATION "TO" PHRASE NOT FOUND *END *APPEND > APPEND - append dBASE files or files in System Data Format (SDF) or delimited files APPEND [FROM [SDF] [DELIMITED [WITH ]] [FOR ]] or [BLANK] Possible error messages: VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END *BROWSE > BROWSE - full screen window viewing and editing BROWSE *END *CANCEL > CANCEL - cancels command file execution CANCEL *END *CASE > CASE - one possible execution path in a DO CASE structure CASE e.g. DO CASE CASE X=1 . any statements . CASE X=" . any statements . OTHERWISE . any statements . ENDCASE *END *CHANGE > CHANGE - edit columns of fields CHANGE FIELD [] [FOR ] Possible error messages: "FIELD" PHRASE NOT FOUND VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END *CLEAR > Clear out database files in use OR screen variables CLEAR [GETS] *END *CONTINUE > Continue the action of a LOCATE command CONTINUE *END *COPY > COPY - copy existing databases to create copies COPY TO [] [FIELD ] [FOR ] [SDF] [DELIMITED [WITH ]] or [STRUCTURE] NOTE: COPY always destroys the previous contents of the TO file Possible error messages: BAD FILE NAME Syntax error in filename. "TO" PHRASE NOT FOUND VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END *COUNT > COUNT - count the number of records that meet some conditional expression COUNT [] [FOR ] [TO ] Possible error messages: OUT OF MEMORY FOR MEMORY VARIABLES Reduce the number or size of memory variables. *END *CREATE > CREATE - create new structured database files CREATE [] Possible error messages: BAD DECIMAL WIDTH FIELD BAD FILE NAME Syntax error in filename. BAD NAME FIELD BAD TYPE FIELD Must be C, N, or L. BAD WIDTH FIELD RECORD LENGTH EXCEEDS MAXIMUM SIZE (OF 1000) SYNTAX ERROR IN FORMAT SPECIFICATION VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END *DELETE > DELETE - delete f iles and mark records for deletion DELETE [] [FOR ] DELETE FILE *END *DISPLAY > DISPLAY - displays records, fields, and expressions DISPLAY [] [FOR ] [] [OFF] DISPLAY STRUCTURE DISPLAY MEMORY DISPLAY FILES [ON ] [LIKE ] DISPLAY STATUS *END *DO > DO - causes command files to be executed and allows structured loops in command files DO DO WHILE DO CASE Possible error messages: COMMAND FILE CANNOT BE FOUND Check spelling. NESTING LIMIT VIOLATION EXCEEDED *END *EDIT > EDIT - alter specific data fields in a database EDIT [] Possible error messages: RECORD OUT OF RANGE Record number greater than number of records in database. The Record doesn't exist. SYNTAX ERROR IN FORMAT SPECIFICATION VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END *EJECT > EJECT - ejects a page on the list device EJECT *END *ELSE > ELSE - alternate path of command execution within IF ELSE *END *ENDCASE > ENDCASE - terminate a CASE structure ENDCASE *END *ENDDO > ENDDO - terminator for DO WHILE command ENDDO *END *ENDIF > ENDIF - terminator for IF command ENDIF *END *ERASE > ERASE - clears the CRT ERASE *END *FIND > FIND - positions to record corresponding to a key on indexed files FIND or FIND '' Possible error messages: DATABASE IN USE IS NOT INDEXED FIND is only permitted on indexed databases. NO FIND More a diagnostic type message than an error message. dBASE couldn't find the key. *END *GO *GOTO > GOTO - position to a specific record GO or GOTO [RECORD], or [TOP], or [BOTTOM], Possible error messages: RECORD NOT IN INDEX Index file was not updated after a record was added. Reindex. RECORD OUT OF RANGE Record number greater than number of records in database. The Record doesn't exist. *END *COMMANDS CREATION OF FILES: these commands create database and associated files: CREATE - create new structured database files COPY - copy existing databases to create copies INDEX - creates an index file JOIN - outputs the JOIN of two databases MODIFY - allows editing of command files and database structures REINDEX - realigns an old index file REPORT - creates a report form file SAVE - copy the memory variables to mass storage SORT - create a copy of a database which is sorted on one of the data fields TOTAL - outputs a database of totalled records ADDITION OF DATA: these command add new data records to databases: APPEND - append dBASE files or files in System Data Format (SDF) or delimited files CREATE - allows addition of data after creation INSERT - insert data into a file UPDATE - allows batch updates of a database EDITING DATA: these commands edit the data within a database: BROWSE - full screen window viewing and editing CHANGE - edit columns of fields DELETE - delete files and mark records for deletion EDIT - alter specific data fields in a database PACK - removes records marked for deletion READ - replaced data from user defined full-screen RECALL - erases mark for deletion REPLACE - replaces data fields with values UPDATE - allows batch updates of a database DATA DISPLAY: these commands display selected data from a database: ? - displays an expression list ?? - display an expression list without a preceeding line eject @ - displays user formated data on CRT or printer BROWSE - full screen window viewing and editing COUNT - count the number of records that meet some condional expression DISPLAY - displays records, fields, and expressions LIST - identical to the DISPLAY command except that the default scope READ - displays data and prompting information in full-screen mode REPORT - format and display a report of data SUM - compute and displa y the sum of an expression POSITIONING: these commands position the current database record pointer: CONTINUE - continue the action of a LOCATE command (toward the file end) FIND - positions to record corresponding to a key on indexed files (then use skip to find subsequent duplicate keys) GOTO - position to a specific record (or index top/bottom) LOCATE - find a record that fits a condition (from the file beginning) SKIP - position forwards or backwards (in index order) USE - specifies the database file to be used and positions to the beginning (of the index) FILE MANIPULATING: these commands affect entire database files: APPEND - append dBASE files or files in System Data Format (SDF) or delimited files COPY - copy existing databases to create copies DELETE - delete files and mark records for deletion RENAME - rename a file RESET - reset system to allow diskette swapping SELECT - switches between USE file (primary and secondary) SORT - create a copy of a database which is sorted on one of the data fields USE - specifies the database file to be used for all operations until another USE is issued, also closes files MEMORY VARIABLES: these commands manipulate memory variables: ACCEPT - allows input of character strings into memory variables CLEAR - clear out database files in use OR screen variables COUNT - count the number of records that meet some condional expression DISPLAY - displays records, fields, and expressions INPUT - allows input of expressions into memory variables RELEASE - eliminates unwanted memory variables and returns space to dBASE RESTORE - retrieves sets of stored memory variables SAVE - copy the memory variables to mass storage STORE - stores expressions into memory variables SUM - compute and display the sum of an expression WAIT - accepts a single keystroke into a memory variable COMMAND FILES: these commands assist in the control and use of command files: CANCEL - cancels command file execution CASE - one possible execution path in a DO CASE structure CLEAR - Clear out database files in use OR screen variables DO - causes command files to be executed and allows structured loops in command files ELSE - alternate path of command execution within IF ENDCASE - terminate a CASE structure ENDDO - terminator for DO WHILE command ENDIF - terminator for IF command IF - allows conditional execution of commands LOOP - skips to beginning of DO WHILE MODIFY - allows editing of command files RETURN - ends a command file SET - sets dBASE control parameters TEXT - heads a block of information for output only WAIT - suspends command file processing DEVICE CONTROL: these commands control printers and the display screen: EJECT - ejects a page on the list device (printer) ERASE - clears the CRT display SET  - sets dBASE device use and format parameters QUIT - terminate dBASE and optionally run other programs *END *IF > IF - allows conditional execution of commands IF . . (any statements) . ELSE ] ELSE is optional . ] . (any statements) ] . ] ENDIF *END *INDEX > INDEX - creates an index file INDEX ON TO Possible error messages: BAD FILE NAME Syntax error in filename. "ON" PHRASE NOT FOUND "TO" PHRASE NOT FOUND *END *INPUT > INPUT - allows input of expressions into memory variables INPUT [""] TO Possible error messages: "TO" PHRASE NOT FOUND *END *INSERT > INSERT - insert data into a file INSERT [BEFORE], or [BLANK] Possible error messages: CANNOT INSERT - THERE ARE NO RECORDS IN DATABASE FILE Use the APPEND command instead. SYNTAX ERROR IN FORMAT SPECIFICATION VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END   *JOIN > JOIN - outputs the JOIN of two databases JOIN TO FOR [FIELDS ] Possible error messages: JOIN ATTEMPTED TO GENERATE MORE THAN 65,534 RECORDS The FOR clause allows too many joined output records, make it more stringent. NO "FOR" PHRASE *END *LIST > LIST - identical to the DISPLAY command except that the default scope is ALL records LIST *END *LOCATE > LOCATE - find a record that fits a condition LOCATE [] [FOR ]  Possible error messages: NO "FOR" PHRASE *END *LOOP > LOOP - skips to beginning of DO WHILE LOOP *END *MODIFY > MODIFY - allows editing of command files and database structures MODIFY STRUCTURE MODIFY COMMAND Possible error messages: BAD FILE NAME Syntax error in filename. RECORD LENGTH EXCEEDS MAXIMUM SIZE (OF 1000) *END *NOTE NOTE or * *END *PACK > PACK - removes records marked for deletion PACK *END *QUIT > QUIT - terminate dBASE and return to the system optionally starts up other programs QUIT [TO ] example: . QUIT TO 'DIR B:','PIP B:MYONLY.BAK=MYFILE.DBF','DBASE RESUME' note: QUIT TO... only works when dBASE is run from Drive A: *END *READ > READ - displays data and prompting information in full-screen mode READ Possible error messages: SYNTAX ERROR IN FORMAT SPECIFICATION VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END  *RECALL > RECALL - erases mark for deletion RECALL [] [FOR ] *END *REINDEX > REINDEX realigns an old index file REINDEX *END *RELEASE > RELEASE - eliminates unwanted memory variables and returns space to dBASE RELEASE [], or [ALL] RELEASE ALL LIKE RELEASE ALL EXCEPT *END *REMARK REMARK *END *RENAME > RENAME - rename a file RENAME TO *END *REPLACE > REPLACE - replaces data fields with values REPLACE [] WITH [AND WITH ] Possible error messages: DATA ITEM NOT FOUND SOURCE AND DESTINATION DATA TYPES ARE DIFFERENT *END *REPORT > REPORT - format and display a report of data REPORT [] [FORM ] [TO PRINT] [FOR ] [PLAIN] Possible error messages: SYNTAX ERROR, RE-ENTER *END *RESET > Reset system to allow diskette swapping RESET [] *END *RESTORE > RESTORE - retrieves sets of stored memory variables RESTORE [ADDITIVE] Possible error messages: CANNOT OPEN FILE *END *RETURN > RETURN - ends a command file RETURN *END *SAVE > SAVE - copy the memory variables to mass storage SAVE TO [ALL LIKE ] Possible error messages: BAD FILE NAME Syntax error in filename. "TO" PHRASE NOT FOUND *END *SELECT > SELECT - switches between USE file SELECT [PRIMARY or SECONDARY] *END *SET > SET - sets dBASE control parameters SET [ON], or [OFF] SET ALTERNATE TO SET DEFAULT TO SET DATE TO SET FORMAT TO SET HEADING TO SET INDEX TO SET MARGIN TO *END *SKIP > SKIP - position forwards or backwards SKIP <+/-> [] *END *SORT > SORT - create a copy of a database which is sorted on one of the data fields SORT ON TO [ASCENDING], or [DESCENDING] *END *STORE > STORE - stores expressions into memory variables STORE TO Possible error messages: OUT OF MEMORY FOR MEMORY VARIABLES Reduce the number or size of memory variables. "TO" PHRASE NOT FOUND *END *SUM > SUM - compute and display the sum of an expression over a group of database records SUM [] [TO ] [FOR ] Possible error messages: MORE THAN 5 FIELDS TO SUM NO EXPRESSION TO SUM NON-NUMERIC EXPRESSION *END *TOTAL > TOTAL - outputs a database of totalled records TOTAL TO ON [FIELDS ] *END *UPDATE > UPDATE - allows batch updates of a database UPDATE FROM ON [ADD ] [REPLACE [ ] ] [ WITH ] Possible error messages: NO "FROM" PHRASE "ON" PHRASE NOT FOUND *END *USE > USE - specifies the database file to be used for all operations until another USE is issued USE [INDEX ] Possible error messages: BAD FILE NAME Syntax error in filename. END OF FILE FOUND UNEXPECTEDLY The database in USE is not in the correct format. If all records are correct and present, then PACK and re-INDEX the database. INDEX DOES NOT MATCH DATABASE dBASE cannot match the key with the database. Try another index file. INDEX FILE CANNOT BE OPENED Check spelling or INDEX the database. *END *WAIT > WAIT - suspends command file processing WAIT [TO ] *END *@ @(,) - AT function *END ** * - deleted record function *END *# # - record number function *END *! !() - upper case function *END *$ $(,,) - substring function *END *CHR CHR() - number to ASCII character function *END *DATE DATE() - system date function *END *EOF EOF - end-of-file function *END *FILE FILE() - existance function *END *INT INT() - integer function *END *LEN LEN() - length function  *END *RANK RANK() - character to integer function *END *STR STR(,[,]) string function *END *VAL VAL() - value function *END *TRIM TRIM() - trims strings *END *TYPE TYPE() - supplies data type *END *LIMITATIONS number of fields per record 32 max number of characters per record 1000 max number of records per database 65535 max number of characters per character string 254 max accuracy of numeric fields 10 digits largest number 1.8 x 10**63 approx smallest number 1.0 x 10**-63 approx number of memory variables 64 max number of characters per command line 254 max number of expressions in SUM command 5 max number of characters in REPORT header 254 max number of characters in index key 100 max number of pending GETS 64 max number of files open at one time 16 max *END *ERROR BAD DECIMAL WIDTH FIELD BAD FILE NAME Syntax error in filename.  BAD NAME FIELD BAD TYPE FIELD Must be C, N, or L. BAD WIDTH FIELD CANNOT INSERT - THERE ARE NO RECORDS IN DATABASE FILE Use the APPEND command instead. CANNOT OPEN FILE COMMAND FILE CANNOT BE FOUND Check spelling. DATA ITEM NOT FOUND DATABASE IN USE IS NOT INDEXED FIND is only permitted on indexed databases. DIRECTORY IS FULL The CP/M disk directory cannot hold anymore files. DISK IS FULL END OF FILE FOUND UNEXPECTEDLY The database in USE is not in the correct format. If all records are correct and present, then PACK and re-INDEX the database. "FIELD" PHRASE NOT FOUND FILE ALREADY EXISTS FILE DOES NOT EXIST FILE IS CURRENTLY OPEN Type a USE or CLEAR command to close the file. FORMAT FILE CANNOT BE OPENED FORMAT FILE HAS NOT BEEN SET ILLEGAL DATA TYPE ILLEGAL GOTO VALUE ILLEGAL VARIABLE NAME Only alphanumerics and colons are allowed in variable and field names. INDEX DOES NOT MATCH DATABASE dBASE cannot match the key with the database. Try another index file. INDEX FILE CANNOT BE OPENED Check spelling or INDEX the database. JOIN ATTEMPTED TO GENERATE MORE THAN 65,534 RECORDS The FOR clause allows too many joined output records, make it more stringent. KEYS ARE NOT THE SAME LENGTH MACRO IS NOT A CHARACTER STRING ¯os must be character strings. MORE THAN 5 FIELDS TO SUM NESTING LIMIT VIOLATION EXCEEDED NO EXPRESSION TO SUM NO "FOR" PHRASE NO "FROM" PHRASE NO FIND M ore a diagnostic type message than an error message. dBASE couldn't find the key. NON-NUMERIC EXPRESSION NONEXISTENT FILE "ON" PHRASE NOT FOUND OUT OF MEMORY FOR MEMORY VARIABLES Reduce the number or size of memory variables. RECORD LENGTH EXCEEDS MAXIMUM SIZE (OF 1000) RECORD NOT IN INDEX Index file was not updated after a record was added. Reindex. RECORD OUT OF RANGE Record number greater than number of records in database. The Record doesn't exist. SOURCE AND DESTINATION DATA TYPES ARE DIFFERENT *** SYNTAX ERROR *** SYNTAX ERROR IN FORMAT SPECIFICATION SYNTAX ERROR, RE-ENTER "TO" PHRASE NOT FOUND TOO MANY CHARACTERS TOO MANY FILES ARE OPEN There is a maximum of 16 files allowed to be open at one time. TOO MANY MEMORY VARIABLES There is a maximum of 64 memory variables. TOO MANY RETURNS ENCOUNTERED Probably an error in the structure of a command file. "WITH" PHRASE NOT FOUND UNASSIGNED FILE NUMBER Internal error, contact dealer for support. *** UNKNOWN COMMAND VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END  ;M_b o {y͠@!7 ~#fo!0Iѵ!0I}_|W>2 *7*9Iw**#: w ҋ**#IdBASE II COPYRIGHT (C) 1982 BY RATLIFF SOFTWARE PRODUCTION, INCORPORATED (RSP, INC.) 2705 RIDGEPINE DR, LA CRESCENTA, CA 91214 *** dBASE II Ver 2. File is inaccessible, already open elsewhere. That file does not exist! Unassigned file number. That file is currently open. An end-of-file was found unexpectedly." That record number is out of the current range. Too many files are open. THE DISK IS FULL. THE DIRECTORY IS FULL. That file already exists. No record was found. TOO MANY MEMORY VARIABLES ARE IN USE. OUT OF MEMORY FOR MEMORY VARIABLES. Illegal variable name. Too many characters. No database file is in use. Please enter a file name: That is not a dBASE II database. There is no room in the system lock list. System input/output error. records were added. Do cancelled. Bad name field. Bad type field. Bad decimal width field. Bad width field.  OK to destroy the existing file? (Y/N) *** unknown command *** Count = Enter the record structure as follows: Field Name,Type,Width,Decimal places Do you want to enter data now?& The macro used is not a character string. records were copied. Bad file name. That command file cannot be found.7 VIOLATION: Nesting limit exceeded. deletion(s) were made.t *** End of run: dBASE II *** TOO MANY RETURNS ENCOUNTERED.7 Enter record #, Field (# or name), New value+ Illegal data type. Called from Do you want to correct and retry? The file has been deleted. Illegal GOTO value.2 There is a syntax error at the "^"; please re-enter. Cannot insert - there are no records in the database file. The end-of-file was encountered. End of locate scope. Macro not found. Pack complete, records copied. recall(s)~ Col Width,Contents Do you want the report double spaced? (Y/N) replacement(s) were made. Enter the report form name:  Enter the report heading: Data item not found. "WITH" phrase not found. Enter the subtotals field: Do you want subtotals in the report? (Y/N) Do you want a page heading (Y/N) > Enter the page heading:  records sorted. "TO" phrase not found.** Subtotal ** No expression to sum.: Non-numeric expression.> More than 5 fields to sum. *** syntax error *** Are totals required? (Y/N) Record is locked...waiting Summary report only? (Y/N) The index file cannot be opened. That variable cannot be found. The source and destination data types are different. "ON" phrase not found. A format file has not been set. There is a syntax error in the format specification. "FIELD" phrase not found.3 Cannot open that file. The format file cannot be opened.Q Coord: Do you want to correct and retry? (Y/N) Change from : Change to : More corrections? (Y/N) O Enter filename:  ** Total ** Record: No find.Page no. Single step mode. Y:=step, N:=keyboard cmd, ESC:=cancel Waiting... 7 Field Name Type Width DecE Structure for file:  Enter options, M=left margin, L=lines/page, W=page width Enter subtotal heading: 0 Enter subtotal footing: Eject page after subtotals? (Y/N) No "FOR" phrase found. Join attempted to generate more than 65,534 records. No "FROM" phrase found.G The keys are not the same length. Primary use database.Y Secondary use database. Number of records: The database in use is not indexed. More than 7 index files selected. Modify erases ALL data records ... OK to proceed? (Y/N) Enter today's date or press RETURN for none Date of last update:  records were indexed. Record length exceeds maximum size (of 1000) *** zero divide *** *** beyond string *** *** overlay file DBASEOVR.COM cannot be opened. Enter the record # : That record is not in the index. The index file does not match the database.1::DZ2_:'DʈE4:"E:;DiD:FDhE:$DEEH;2_>L;9;2_5;>dP;H8:$DaE:_L;:_5;iDʈE:'DK/:'D9jVi9E#~ʖE/w}E!6>.5̈́6͟9͘9y9EE*E:\Gy9&FʽE#~ðE!}6!ř6}#*~.E }~8!~)* F ~C0H##6N#ř~8}ř͘9ͨ8:H2TéEo9éE͘9y9:?DʍFAF&^ͷ7HF!_4Ei9YF]ͷ7gF:_E2?DEi9xF^ͷ7E:_†F2?DE=2_E: D:Gi9ʴF]ͷ7»F͔9y9^ͷ7»F!_4E:_"G: D Gi9F^ͷ7F͔9o9(.[y9[E2 DEi9G^ͷ7Gi9G^ͷ7E2 DEi93G^ͷ7E!_5Ei9zG:9DzG:$DdGH;2_>L;9;2_5;::$DzG:_L;:_5;͘9y9G[=.’G͔9~ͱ6+HR)Qo9͸6QiPEO|P~L~LuPOVPY'S VjVV"I?HHFLXLvLLLLLLMMR^PPP QPQQQ4R?RGR[R|PRRRSS\TyTTTTU]VVVVXYZ!ZLZTZ\ZZ>!Z>&Z> Z>8Z͚H>:5͟9i9`H:;DiD!6CH&7oH> >O~!}6)##y66-#663͜)E!}, E!6y9ͤ6Ho9~[#ªH͔96DM ,y9^ͷ7!R#͔9y9ͬ*R)y9]ͷ7H>!Eç;5,|Hͳ'B,H..&c!̓ͤ,9,5,ͳ'B,E͜I:GDʊIH;2_>L;9;2_5;*_DM-;/2_y9}[_6/#Ns#FrxSJ2_y2_>N2_qJ2_ygJA2_>C2_qJ2_>L2_!ƛx66y9^ͷ7´J͔9y9ͤ6[o9x&7[#͔9!662>2_y9^ͷ7K͔9y9AL*AL"_J>RZ͔9y9KF^ͷ7AL͔9y9ͤ6[o9x&7[͔9!"_662:_!}, :_!:_NL~HK.HK#:K"_!ƛ~\K.\K#NK"_*_+~ʽK$ʥK*ʥK#ʯK9ʯK,dKʒK-ʯK dK+~$ʠK*ʠK> #wdKdK dKʸKwcK6 dK*_*_~:LK#K~:L#K9KwK~:L#K9K#K60#K!ƛ~:LXL4Lw#L9'L#/Lͱ64Lw#L6 #L!"_>VZ: ER)> !Eç;y9kL)*[ 6!E*D>P;iD>2 DER)>!Eç;y9LZ%Z'͡#͎.Z%Z'͡#͎.:DV'&Z%6)2@2D2!D͔.E^ͷ7L!^ͷ7[ER)>!Eç;R)>!Eç;>! Eç;%y9 ^ͷ7;M͔9''2Mw':HDE>2P;EP;w'ER)>*2_UM:HDE>+P;E%[y9[!q&ښM:_W5,|ʚM͎'ʑMښMʑMr .R+ʚMyM`i:HD!6;6!"_!"_x^y9ͷ7MR)>!Eç;͔9/^ͷ7nO^ͷ7vOq^ͷ7ʁOR)2_2_%!}"_y9zN%[y9zN?^ͷ7"N>2_͔9M^ͷ7.N͔9*_[>2_:DDdN60#6x_NyZN6`N6hNp4hN6,###6#63"_͘6zNM:DDN:_N"_*_~ N*_6'#660# ~#N###FNNCN6#6#6N6#p#6Np#q#q4#6#63"_*_"_ÎN*_q&Eͤ,|E͎'bOE*_+"_|%O!"_>eP;n:E!6:_>Oͤ,;6̈́65:_\O:DD\O͘)DM #,bO!}, R+ENE>! Eç;͔9>! Eç;͔9>!Eç;y9^ͷ7VP^ͷ7Oi9>'Oy9[>+O:(DO!)D6R'w2'D!(D4A/w'E>)O>*P;vL:'DNP͔9(.[HP2_:'D9y9&P]ͷ7-P͔9y9^ͷ7P!_4Pi9>P^ͷ7P!_5PE_/E>)P;E>2 DER)>! Eç;>2?D2_E2 DE2_:'DE͈/EH;G:GDʡP>L;;L;EER)ʹ$Qy9ͤ6PPo9xƛ&7Oi9y ͳ'|P:&DEEi9!P:HDE>P;E>sZR)\^y9ͷ7#Q͔9y9SQ^ͷ72Q,E]ͷ7SQʹ$JQ5,ͳ'EV#ͳ'E+[|zQ5,65HT]ͳ' |QE>3Z>~Z> !Eç;(.[y9[E>2?D2_ER)y9ʺQ>!Eç;c!̓E͚H>:5͟9i9Q:;DiD!6Q})R6-#6++6͜)&R:HDR6.#663!6!}, E>HZE>4P;!6QR)>! Eç;> !Eç;!"_"_ôM>!!Eç;R)i9~oR#dR!͔9%%[i9[!q&ڱR͐)"AD͎'RR+ʱRҍR:HDE>6P;E:HDE>7P;E:HDE>aP;ͤ,;6E!͔9%%[*AD͔)ÙR>!Eç;>!Eç;+["_͘6[+[}*_w#"_͘6E SE!}"_y9ʔS?>S!6ASo9*_[:DDrS60#6xmSyhS6nS6vSp4vS6,###6#63"_͘6ʋS[AS!}, E!6EZ%͡#͎.Z%͡#>,P;:DV'&Z%y9'>!Eç;2_y9S6^ͷ7[>2_: E:=D-TV'ͳ-:=D9*Ty9S*S@o9͜I>*_DM*_!_͎Sw'>EER'Eͤ,|E .:_Eͣ!ER)%> 2_UM:HDE>;P;ER)>!Eç;i9.6Ey9['ͬ,y9[^ͷ7[͔9y9'ͽ,ER)2_ͤ,|U%!ƛ"_!"_y9ʓU6^ͷ7T͔9>2_T%[i9ʓUy9*U>Zi9ͨ(U"_^i9y6͔9y9ͷ7U͔9*_[N##~RUC+~RUL*_ ~dU>SZ*_6/#663"_>2_͘6ʓUڄUU]ͷ7T͔9U:_U!q&U͎'UUU!ƛ, & .:_Uͣ!&R+UҦU:HDE`i!6;6>>P;E>AZ>BZ>!Eç;>!Eç;y9]ͷ7/V͔9y9)V>!Eç;6)Ey9E*@V>([i9)*MV͌*͔9͘6E[/Vy9dV|.E:'DEV'Z%w'z/:(DʭV=VʠV2(D=!)D6~2'D2?DE2'D2(D2?DE>-P;E>!Eç;y9N^ͷ7V͔.Eg^ͷ7[>͔.Ey9^=.V͔9eXwED_=.[͔9eX5;Ey9^ͷ7OW͔9:D/WV'&Z%2Dy9E>'>+R'2Dw'EeXXW:D2!DEeXL;Ey9^ͷ7vW͔9<!@6i9@&72|ERX+["DE:=DʳWV'Z%2=Dw'RXWV^ͷ7W^ͷ7W>'>+W>YZR'2=Dw'E2GDE>2GDERX[~_@2%DERX8{2D͔9o98{2D͔9o98{2DERX+[}2aERX͡#i9E͞ZEy9^ͷ7[͔9y9y9C^ͷ7|X?^ͷ7([>R)y9 Y-›Xo9ãX+£Xo9]ͷ7lY+[|Ey Yʹ$Xͤ,"_z"X"_zX*_ͳ'rYXWY#ͳ'WYͤ,6Yͳ'rYXWY,WYʹ$DYͤ,"_ "5Y"_zY*_ͳ'rYYWY&V#ͳ'&WYͤ,ͳ'rYWYB,KY:HDE>aP;ͤ,;6ER+E:&D>!Eç;}["_y9^ͷ7Z͔9*_#N#Fy9ͅ**_6-#6"_"_i9*͔9͘6Y[*_*_6'#6"_êY:HDY*_*_6.#6"_*_63:HD!6!}, E>HZ>!Eç;6Zy9]ͷ7E͘9.6:'DFZ9jV$Z͟9$Z> !Eç;> !Eç;Z%Z'͡#y9E'Z>@+ZZ'-,y9E)^ͷ7[͔9y9͞ZE>'Z>@+ZR'ͻ#͘6ZZ  Z>tZ#"c!Zw',>Z>(Z>QZ>Z>!Eç;P;([::D([>MP;!6i9͘96M #[̈́6[>?52:D͘9y9vL::'Db[:(D2_!_5b[>0P;:_!)D6~%F[:]iD>[P;H8iDE>\P;!}~5E>]P;!ř~5͘9}řͨ8w[:>^P;H8iDw[1͘9ÖESTOREY?'SELSEiPENDDO|PENDIFEDOONOTEELOOP|PRELEASE VRETURNjVSELECTV@"IACCEPT?HAPPENDHCALLXLCANCELvLCHANGELCLEARLCOPYLCOUNTLCREATELDELETEMDISPLAYMCONTINUEREDIT^PEJECTPERASEPGOTO QGO QHELPQIFQFINDPINDEXQINPUTQINSERT4RLISTGRLOADSRLOCATE[RMODI FYRPACKRPOKERQUITSREADSRECALL\TREINDEXyTREMARKTRENAMETREPLACETREPORTURESET]VRESTOREVSAVEVSETVSKIPXSORTYSUMZTEXT!ZUSE\ZWAITZCASE~LENDCASEuPOTHERWISE~LBROWSEFLJOIN?RTOTALLZUPDATETZALLANDBLANKBOTTOMDOELSEENDTEXTFIELDSFILEFILESSCREENGETGETSIFINDEXMEMORYNOUPDATEOFFONPICTUREPRIMARYPRINTRECORDSAYSECONDARYSTATUSSTRUCTURETOTOPUSINGWHILEWITHENDDOENDIFCASEENDCASEOTHERWISEBELLDCARRYDCOLON"DCONFIRM#DDEBUG$DDELETED&DECHO9DEJECTEDESCAPE;DEXACT2VEwVͷ7cE͔9>2VEAVͷ7§U͔9>2V2VE5,"V|ʈEͳ'B,҈E:VF!"V!d"Vc!:VG*V͔9>'>A+ڌHR'2Vw'.:VʕF!Ǜ͔9:VV'%\H"V*V~ ʩF ~NQF#F#6i9'FF"%FOo9qF,F,ʂF,?Fo9ʩF,FqFo9ʩFqF,?FÂF#F#6Ni9dͦ2͔9T3i9,ʂFy,ʂFo9ʩF,wFo9ʩF*V"VE#:VV'%\H͎'E\Hw'.̓*V#"V*V#"V*V+"V|E:HDE*V!6;6>P;!d"VEP Gc!̓*V#"VF&5,ͳ'B,ÃH>A+ڌHR'2V ͅ,:™Hƛ!ř͊%!"V!ř"V~ G"Vͨ(G"V ~NʆG*V6+#*V6*V663"VG*V ~NʷG*V6'#*V66#6/#*V663"VG*V6'#*V66/#*V663"VG*V"VLG.c!ƛ*ÙDM:VV'ͅ,\H:ƛ G6 !, ͎'G\Hw'.̓*V#"V*V#"V*V+"V|G:HDG*V!6;6>P;!d"VGZ%:HDtH*V!6;6>P;w'&5,ͳ'B,*V9,ïU>P;>2:DïU>P;>2:DïUR)%2Vy9;I%ڧUy9;ITVͷ7H>WP;>2:DïU>2V͔9!"V6y9*I>P;>2:DïUi9ͨ(I>RP;>2:DïU*V6"V6͔9y9,°Ho9H:VOI>WP;>2:DïU!q&͎'ʙIڢIʙI!6>aP;ͤ,;6!6!"V*V6"VzʓIOڢI{I .R+ʢIUIïUZ%Z'͡#Z'y9I>_P;͟9ʯU'>+2Vy9IZVͷ7§UIK>#P;>$P;6!"V!"V*V#"V!6̈́6*V+))))"V:V!KH6x6͟9i9Kbk66 i9*~,aLi9''aL*Vi9>,&7aL aL͔9! o9_2VCʗJNʗJLiL>Jo9o98qL{qLzqL{ *V+|ʉL!9, /&Z%>%P;H8ʯU>A+-&,.P7K& /Z%ïU͔9y9'ڷL+ڷL-ř̈́8"V 6!"V*VB,;L~ ~K#͔9i9* i9 ¦Ko9  Ki9_CKNKL—L>Lo9V~8͔9!V8ڧL{yLzyL{i9V~8͔9!V8ڟL{*V66گL"V*V"V~KZ%*V6 !9,:VV'ͳ- /&-,ïU>P;J>P;J>P;J>P;J>yP;JZ%'>2P;ïU>P;ßU>P;ßU>P;ßU>yP;ßU>(P;ßUR)!"Vͤ,"V"V>2Vy9M2V: L>.P;:V¯U: M>ZP; M>}P;͟9MïUi9 گU8͔95,6Ny9|;M*V"Vͳ'*V : #N"V:=D~M&RGLGoMNxLxMíM*V*VU>LGқMNxLxMxMʹ$ʼMz"L;M*V+"V|L;Mʹ$ N "L;MxM*V6ҭM"VTM*V~ M*V"VTMB,L*V#"V;M .ͣ!i9ʮN,Lo9,ʉN:oN0ډN8͔9LzL{!L+))))~L L"VÉNi9*Li9ͨ("VL͔9i9ʮNo976Mi9*V͋OLúN*VOگUL .L> P;ïUR)2V2Vy9O+Vͷ7N>2V͔9N2Vͷ7§U>2V͔9Nʹ$Eͤ,:VO#"V"V,͘)DMƛͅ,ڀO*V,:VBO..HOPگUƛ̈́8ƛͅ,*V#"V,.HO5,#9,&,*Vͳ'ïU>5P;,ïU ~NʷO#y=ON#6T]> 7~8ͦ2#F#6NT3>P;7"V V#~2V#6"VzCPͺP!KV.6͟9POi9*V͋OOP!ƛ62V:VGƛw8!ƛ"VͺP!8V.6!ř~5ʒP:řPrP!V.6!~5!ƛřͨ8P>2V0P!ƛ6!V.6!ƛ~5ʒP>2V0P:VP:VGƛʰPw#¡PP6 #°PP*V!6.6>:5̈́6*V:V_~5#P7>ɯ>P;0P"Vͤ,| Q:DQ.: ʽQ>2V2V"V:=DEQ&R>"R"R.ͤ,#*VU:V"RGO:V2Vx«QxʏQ*V6ҫQ"V>2VEQxҫQ*V~ ʫQ*V"V>2VEQ:VҹQ.7!6!kV.6ͤ,#;6!6*V!6 ,>:5̈́6͟9Oi9PRx"R R *V͋OQ*V"V~ Q.7V'ͳ-:=D9ZRy9@/Ro9^R>*VDM*V!V͎/Rw'ɯ2V2V:GDtR: tR!"V!"Vy9$–Ro9,.ʜR+ڧU}2V͘6 Uy9$½Ro9 .R+ڧU}2V2ś2ƛ!ƛ"Vy9sVͷ7vS͔9>2Vy9}ڧUV6/#Ns#FrxS2'Vy2*V>N2&V3S2*Vy)SA2'V>C2&V3S2'V>L2&V!ƛx66y9Vͷ7vS͔9y9ͤ6§Uo9x&7ʧU#͔9!662>2Vy9_Vͷ7S͔9y9 U* U"VʫS>RP;>2:DïU͔9y9ScVͷ7 U͔9y9ͤ6§Uo9x&7ʧU͔9!"V662:V!}, :V!:&VNT~T.T#T"V!ƛ~&T.&T#T"V*V+~ʇT$oT*oT#yT9yT,.T\T-yT .T+~$jT*jT> #w.T.T .TʂTw-T6 .T*V*V~UʳT#ʳT~U#ʮT9™TwØT~U#T9T#óT60#óT!ƛ~UXTTw#T9T#Tͱ6Tw#T6 #T!"V>VP;>2:DïU"V!{V16;6!"V*V N! :T_ 6DUy2V*VO:U!V > 7*VV~uU#jUV*VDM!V͎*V:Vg"V*V"V~ .U>2:DïU>2:DïU>!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,y9)V>!Eçƛ6BEFOREBLANKCHANGE? DELIMITEDTO: FIELDFROMGETPICTURERECORD SAYSDFRECORD # TO USING~2'D2?D2?DE>-P;E>!Eçy9N^ͷ7VTO: FIELDFROMGETPICTURERECORD SAYSDFRECOR$E4JíKLOOÑP{QQwRASÚS%29V27V28V24V25V26Vř̈́8!}"KVy9[F%"Ty9[FUͷ7|E";V͔9'J>29VLE27V͔9!ř6 "MVy9*£E>&Ji9ͨ(ʳE>R&J*MV~8!6 "MV*KV6+#6663"KV͔9y9,LEo9ÕE|Uͷ7F>28V͔9y93Uͷ7LE>26V͔9LEUͷ7)F>24V͔9LEUͷ7"T>24V25V͔9y9Uͷ7LE͔9y9"T2Uo9LE:9V$J*;V͔9:4VsFuF>'>+R'2U:4VºF!6#w#w#+++++~8:6V\I .:8VIw'ƛ!ř͊%!q&!"MVI!d"IVͤ,|I͎'PIIPI*MV#"MV*IV+"IV| G:HD G*MV!6;6>'P;!d"IV:7V-H:5VGG*ÙDM!ƛ> 7!}, ƛ1H!}"FV!ƛ"QV*FV~3H#6##"FV ~NG#F#6*QVyʃG6,#:U,ʍGw#w8x6+~ ¡G–G#:U,ʲGw#"QVH+~ ¾G+³G#"QVH#F#6*QVyG6,#:U,Gw8x6"QVH~# GHGG"QVH60#"QV UGƛ*QV6 #6 #6DM:U%PI:4VLH*ÙDM:UV'.w'PI:5VmH*Ù6 #6 :U*ÙDM%PI!ƛ"QV"KV*KV~ 9I ~NH#F#6*QVyʟH6,#:U,ʩHw#w8x6+~ ½H²H#:U,Hw#"QV+I+~ H+H#"QV+I#F#6*QVyH6,#:U, Iw8x6"QV+I~# I$I I I"QV+I60#"QV*KV"KV {Hƛ*QV6 #6 #6DM:U%R+IFI!UřÄ́8 ."AV!"MV*AV~ Iƛ>  ~–I> #I#~#~=T###~=T*AV"AVƛ.*MV#"MV}I:HDI*MV!6;6>'P;:UV'&:6VI:8VJ:4VJͳ-*MV!6#6.Z%w'5T>(&J>HP;w'>2:D5TR)%!}"FV>A2U2PV2OV2:V!SV"KVy9%"Ty9?KUͷ7J:OV<2OVҨK*FV"T>2:V"FV#6xʣK!U4ͅ*! 66*FV6'#66#6-#663"FV*KV6.#663"KVi9?K,UJo9UJ͔9>2PV!SV"KVy9?K)*J͌**KV~5T#6"KVbk 6y9*i9~͊6'K_# K͔9y9,UJo9J::VʞK!q&mK͎'dKmKdK!}, R+mKOK:HD}K!SV!6, >A2U:PV5T!SV~35T#6͌*ÌK>J&J>K&J>L&Ji9Uͷ7"T͔9y9řͤ6"T6o9"TKo9y9K,"To9y9K"MV!ƛ"QV*MV++"MVř6 L-L6ͤ6*QV~#L#L#"QVK*QV6!ƛ;L' |RL02UUU~|L #pLy2U#~kLU |LO 6:%D2\23Vy9ʍMyUͷ7L͔9y9"T_@2\o9:Lo9LHUͷ7"T͔9y9"T!U>  7Ui9ʅM ʅM.TM*DMa;M_o9!M6?#EMo9.…Mo9UʅM ʅM*zMaqM_o9\M6?#{Mo9>23VL!6:3V²M!MU.6!U] ̈́8M!65T!U] ̈́8M!65T!V"V6 \NM!tU.6*V:3VM ̈́8 "V6 NM!V"V!6*V~ :3VN]̈́8"V2h!],̈́6,x62|\N\ŸNog;6x6@6>/5@6>/5@6!6:_N\N>P;!6:_N\N!U16!6N,>.5,"VNx6~6N!6NN\O7(5 ~5>)5́6~NuO#~2UkO<2@V2UÆO#~2U###~2U>2@V!U, :@V*DV6#"DV~ %O!6>`P;x6:CV@6!U16*DV;6! U165T27V25Vy9PCUͷ7O͔9>'>27V>+O>X-TTͷ7"T͔9>25VO:7V"T:5VP6)SVͅ,ڈP! ~FPTP#Ny<2HV\P#F###N>2HV\P>2HV!SVͅ*"U:HVOVͅ,*U 6:HVO!V~8PZ%w'5T27V25Vy9 QUͷ7P͔9>'vQ>+vQR'2U"AV>27VØPUͷ7"T͔9y9"THUͷ7"T͔9y9"T"MVo9 QP>25VØP:7VqQ*AV~UQ:5V)Q*MVhTUQ.! F#N#6xIQNQ PQPQ.*AV"AV~ Q&Z%w'5T>H-T>(-T25Vi9HUͷ7ʜQ>25Vi9,Uͷ7"T͔9y9"T"KV"AV*AV*KV:5VQhTQQhTQ͌**AV"AV~ ®Q5T%29V%"Ty9#RUͷ7"T͔9y9"Tͅ*"MV>29Vo9#R RQ5,|JR!q&JR͎'ARJRR+JR7R:HD[R>"P;`i;6:9V5T`i4*MV 645T>gP;w'R'%>rP;5,;6>wP;+++++@6>/5@6>/5@6͊.R>pP;R>qP;>fP;~ 'S !6yH6x6 ,~6 ~5{6#~H6{6###F~~6xSH6~6R!6>`P;x6x6~6͘);65T>eP;n:iDy9ʖSUͷ7"T͔9y9"T)*qS͌*ͅ* 66# ҊS> w5> 55T5Ty9>'>+S2U:Uƛ%SǛS}2?VSS"=VS}*=Vw#"=V!?V5SíSw'5T>X-T!GT_0T O))))  Sw'>2:D5TP;>2:D>!Eç;&odUT UTUT/}o|gXT zʏT ʏT*ʑT?ʊT͊6چT_‘T#jT~TTT@@Ȅ@@@PR@brpb@@@@@@@d\,ADDITIVEALLDELIMITED variables used bytes usedEXCEPTEXTENDEDFIELDSFROMLIKEDatabase files # records Last updateNoneONSTRUCTURETOFILE UNAVAILABLEWITHA::::::::ASDF ????????DBF$$$ SUB'',3FIELD:NAMEC FIELD:TYPEC FIELD:LENN FIELD:DECN ????????DBF$$$ SUB'',3FIELD:NAMEC D # TO USING~2'D2?D2?DE>-P;E>!Eçy9N^ͷ7VTO: FIELDFROMGETPICTURERECORD SAYSDFRECOR EðEEy9 G2G2Gy9}EGͷ7SE͔9y9"G} Gi9~@E+"G#~O#F>2GEGͷ7 G͡#͔9y9>'uE>(P;G>2GE:G>TG:G>HG>+R'ͻ#*G*GR'w'ͨF Gʹ$ G͹$"G*G~E2G":HDE!6!G.6:G%#gͨF*G#"GüE#"c! GR)!"G"G5,!d"G!9,*G,B,qF*G#"GF*G,.*G*G#"G:HDF*G+"G|F!6*G+;6>:P;!d"GF*G,&,:HDʉF>9P;*G+"G9,:HD G*G;6>:P;ðE!ͳ' Gc!!"G!d"Gͯ*G#"G*G+"G|F:HDF*G!6;6>xP;!d"GB,F:HD G*G!6;6>xP;w'>2:D GP;>2:D>!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,ONReindexing index file - TOȄ@@@PR@brpb@@@@@@@d\,R)23Q2LQ2-Q2EQ2/Q!mY 6>28Q2;Q>927Q>P2BQH;2>Q2?Q%y9ʟE%ڠMy9ʟENͷ7eE͔9>'>23Q:E(Nͷ7‹E͔9y9ʠM"Nͷ7 M͔9>2?Q:ENͷ7 M͔9>2/Q:E:3Q¾E>?P;͟9i9ʘMʘM>'>2.Q>+E>+2.QR'2>D2IQ:.QE>hP;FM{My9eF eF_MFo9= Mo98{2;Q28Q͔9WFL:Fo9= Mo98{27Q͔9WFWeFo9= Mo98{2BQ͔9WFi9,eFo9E:.QqF>EP;FM{My9_YF>2IQ:.Q’F>FP;!eT6)FMgTi9<ʮF>ʶFûFo9>ûFo9>@26Q&7ʆF2fTO{M!gTy660#q#:6Qw#:;QG:BQw#p#6322Q:.QF>=P;FMy9_Y G>22Q{M2TQ:.Q G>NP;FMy9_YBG>2TQ! Nͅ*"DP;FMy9_YjG>2EQ{M:EQVH:.Q€G>CP;FMWQқG:.Q M>4P;{G{M:.QªG>PP;FMy9_Y¼G>2LQ{M2MQ:.QG>kP;FMy9YG>2MQ{M:.QG>iP;!X6)FM G HY> >5HYi9<H>&H+Ho9>+Ho9>@26Q&7GO2Y{M!Yy660#q#:6Qw#q#:;Qw#63:.QbH>2KQ:.QšH!6:KQH6x6FMy9J8{2JQ͔9~,Mo9*0QMy9M:LQH60#N#FxHw#:JQw#:;Qw#63"0QH"0Q#6{M:.Q I>@P;*4Q6)#"4QFM I/I*4Q> 26Q>\I*4Q#i9MIRIo9>RIo9>@26Q&7HO{M*4Qqy6#60#q#:6Qw#:JQw#:;Qw#63"4QxʶJ:TQʶJ:.Q›I>NP;FM{My9_Y¶J*DV'&:>DV'Z%2>Dw':?QL;!"9Q!q&:EQʄK!WQR~3 K#K#N#F! N4ͅ*"@Q6-#6636'#*@Q66xPK6#63!S6.#*@Q663rK͎'~KڻLR+ʻLڻLcK!WQ, %;:EDʝK!6;ÝK!6;2-Q:/QK!6͇M>cP;*9Q#"9Q;6x6!@16͇M:DK@6>/5:D@6>/5:D@6!6͇M:IQK!eT, !6͇M!nU, ͇M:EQ)L͇M>*5̈́6!X, !S, aL:-Q—K-;O:7QڗK͎'aLڻL:LQ̇M!Z, :2QaL͇MR+ʻLڻLaL͎'aL:EQ)L!R, )LM:-Q)L-;O:7QڗK!6͇M>*5̈́6!X, !S, )LM:TQL:R3L͇M>`P;͇M!R, ! N)*L͌*! N5~AL6A!6:>QL;M:.Q M>4P;ÇH:EQ:DS3/M͇M>IP;͇M!DS, !WQ, :MQBM>2-Q!6:.QbM͟9i9:>DV'Z%ØM:>D9i9wo9kM͘9i9:.Q:>D :!6:8QOÿ́6 ÎM>!Eç;>2:DØMTTT@@Ȅ@@@PR@brpb@@@@@@@d\,A::::::::AFORMPLAINPRINTTO-N9*_[mY:DDdN60#sY_NyZN6yYhNp4hN6,##Y3"_͘6zNYN:_NY_*_~ NY#660# Y##FNNCY#6#6N6YNp#q#q4#6Y_*_"Y_q&Eͤ,Y͎'bOE*Y|%O!"_Yn:E!6Y>Oͤ,;6̈́6Y5:_\O:DDY)DM #Y}, R+EYE>! Eç;͔YEç;͔9>!Yy9^ͷ7VPY7Oi9>Yy9[>+YO!)D6Z'D!(D4A/w Z)O>*P;vZNP͔9(.Z2_:'D9yZP]ͷ7-P!Z^ͷ7P!'Zi9>P^-ZP!_5PE3ZE>)P;E>9ZER)>! Eç?ZD2_E2 EZ2_:'DEKZH;G:GDʡQZ;;L;EWZER)ʹ$Q]ZPPo9cZ&7Oi9y iZP:&DEoZEi9!P:uZE>P;E>s{Z)\^y9ͷ7Zy9SQ^ͷZR)ʹ$Q]ZPPo9cZ&7Oi9y iZP:&DEoZEi9!P:uZE>i9HUͷ7ʜQ>25Vi9,Uͷ7"T͔9y9"T"KV"AV*AV*KV:5VQhTQQhTQ͌**AV"AV~ ®Q5T%29V%"Ty9#RUͷ7"T͔y9Nͷ7EHNͷ7N͔9>H>uP;H8NNR)!P > 7!Q w @Eř̈́8!ř"N!N"N!"N*N~ ʪE*N 6 ~ʁE#{E~M###~M*N"N*N"NdE!N"N!"N PN!N͎*N"N!"N*NDM*N"N!N͎*N"N~ F*N$"N:U=E:NG>x2NGjFNF:N_:N!P8F=3F"N!S6|YFDM T!S~+ xOF*N> 7+6ðEx G2NxʥF*N"NN6ښF!N"N2NðE:N2NðE*N"NjP6һF G:N2NðE:N_:N!PF=F"N!S6|FDM*N!̈́8!S> 7+6ðE!ř6!"N!ř"N!N"N*N~ G 6͔9y9G*Ni9*~ Hi9> &7H H͔9! y9_CʇGNʇGLH>Go9y98.H{.Hz.H{͔9y9G8&H͔9y9&H{*N666H"N*N"N*N"N%G*N6 !ř̈́8!9, /&-,N>P;M>P;M>P;M>P;M>yP;M2Ny9SH>_P;͟9N>'ͿK>+qH!}N.6>2NwHR'2NNL>+R'2N:"D2N2"D:T=2N:T@ұH:U=2N:N=2N!N:Nw#}6!N6 #6 #"N"N"N"N#"N2N*N!`6DM*N>7L!"N!"N*N"N*NKRIO~ $I#~ $I#y"N&o6!}:N66!N͎:N LIx I!N"N*NK"N:NGN!N͎>GJ•I!gN.6H8KHI0LKL*N*N6DM*N+T]͖8#"N*N6 #6 PMH*N##*N6DM*N*N##̈́8 "N*N~H6 #6 #6#"NHxKxyJ0LKL*N*N6RIͩK"N!N5:N 3J5~RI2N*N"N*N*N6pJͩK"N:N<2NG:N jJx2Nx BJ*N"NHxJ0LKL*NK~›J6 #6 #6++##"N~µJ6 #6 #6#"NPM!N4:N J4~RI2N*N"NHKL:N J>2N*NK~K##~K"N:N=2NJ*N"N2NHKL:N)K*N"NLK*N*N6DM:NV'.&Z%:NlKV'Z%NL'NLͬ,NLͽ,NLͬ,NLͽ,ÚK:NKV'Z%:NV'Z%'w':N2"DN+~ ±K++~ ±K#~ #~' >.7#"NN~8:NO> !}76:NK~'L}"N*N+6L*N~*L *L L> # K7}y!"N}:NG!N͎*N~ bLbL#RL:NO !}6 +~ mLy2N2NL*N*N6"NҵLy*N6*NDM*N̈́8:N_*N"NL*N+6*NDM*N+͖8#"N*N}:NO~8PM*N~8:N8M*N^6MZMLT] "N:NV'ͅ,x4M M"N>2N*N+6 #6 #6#"N>2N*N_6*N*N66M*N:NV'.*NT] *N6DM̈́8*N"N*N"N*N"N*N"N*N> 7#"N!N.6H8ʁKK>eP;n:êE&odM MM/}o|gM z>!Eç;>2:DNCOMMANDName Type Len DecABORTING MODIFY (Y/N) BUFFER FULL, TYPE Y TO SAVE, OR N TO ABORTSTRUCTURE$$$BAK16!6N,>.5,"VNx6~6N!6Field 01 CPField 02 CQField 03 CQField 04 C6QField 05 COQField 06 ChQField 07 CQField 08 CQField 09 CQField 10 CQField 11 CQField 12 CQField 13 CRField 14 C0RField 15 CIRField 16 CbRField 17 C{RField 18 CRField 19 CRField 20 CRField 21 CRField 22 CRField 23 CSField 24 C*SField 25 CCSField 26 C\SField 27 CuSField 28 CSField 29 CSField 30 CSField 31 CSField 32 CS 9ELD 25 CCSFIELD R)> 2"J2qJ> 2#J!"J2Jy9ʙEJͷ7GE͔9y9*YIͨ(aI"J͔9EJͷ7UE\E͔9E Jͷ7jE~E͔9> 2"J2qJ>2#JEJͷ7iI͔9'qI>2JE*J|ʁI:JiI*+ƛ6͘)|EE xEE>2*J*J ~LQI2FJ2VJ2fJCF:"J2"J2qJ:#J2#J#~2GJ2WJ2gJ#6~2JJ2ZJ2jJ6"/J:GJG:JJO!Iͅ*"lJ"wJ,'R'21J>+R'2J /!"'J>2:J2+JåF2+J:JV'&'*'J9, /-+R'21J>2:J:*J_*'J6"'J|fH::JfH2:J:+JF*'J&:*Jo6F{2*J2)J2,Jƛ͘)DM!ř"-J:JV',:1JV',:+JGͅ,nG F*'J#"'JGͅ,II*/J*-J6"-J`i!)J4:*JF͟H*ř"XJ!KJ"6J*J"3J:+JzG:*J_*'J6|II.H"'J"%JzG:)J2*J͟H.H:1JV':+JʝGB,.HʇG*'J#"'JãGB,II:#J28J!2J, G:JV'.*JIH:JV'*/J*ř6͘)DM.*XJḮ8*řř!Ǚ:*J=O~8y!66:*JOͫH*ř"XJ*J"3J:+JzG*%J+"%J|zG:JV'͘)DM!ř"-J:*J*-J6"-J*/J6.=BH:+JfFåF:JV'Z%:1JV'Z%w'*lJ͌*:HDʉI!H.6ÉISort complete:*JOͫH ãH:"J28J:*JGyH==I!KJ"6J!;J"3J!ř666"XJ"HJ!2J, I*XJ6*HJ6I:,JIII=Hx::J"hJ:,J2:J!sJ, >2,J>P;iD>/P;yI>P;yI>RP;yI>HP;yI>(P;yI>2:DÉI>2:DÉI>!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,A::::::::AONASCENDINGDESCENDINGTO6RIͩK"N!N5:N 3J'' 3COPYRIGHT *N1978 SCDP N<2C.W.RATLIFFx2Nx''[J 3'[J-3:::A0LKL*NK~›J6 #6 #6++##"N~µJ6 #6 #6#"NPM!N4:N J4~RI2N*N"NHKL:N J>2N*NK~K##~K"N:N=R'wE>2G!6!I.6R'%͊.+E>pP;0E>qP;!6͹$~wE"`I!'I.6!6̈́6*`I~wE#"`IV'%~6ͳ-nIͅ,! J16!6GEw'͎.R'E>2G!6!II.6R'%͊.ʨE>pP;íE>qP;!6͹$~E"`I!'I.6!6̈́6*`I~E#"`IV'%~6ͳ-nIͅ,! J16!6E͎.!6:GF!6!6!6>eP;n:lG!6!G.6:D@6>/5:D@6>/5:D@6!H.6:%D@5>:5:DeF!G.6:D%!6!(H.6:!D[G~6!5H16:D[G!BH.6:D[G~6!OH16:"D[G!iH.6:#D[G~6!\H169;[G!vH.6:$D[G~6!H16:&D[G!H.6:9D[G~6!H16:ED[G!H.6:;D[G~6!H16:!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,Off On Alternate file - Today's date - Default disk drive - Alternate - Bell - Carry - Colon - Console - Confirm - Debug - Delete - Echo - Eject - Escape - Exact - Intensity - Linkage - Print - Raw - Step - Talk - Database selected - Indexes: Key expression:Unselected database - Jy667~2JÅI?~2JO>-!J7J~ʗI#ÌI!J:J66*JDMJ!J͎*J:J'>+2F:F2%D:U2FE:F9Ei9*BE#Fͷ7BE>2F!6E:F9Ei9~*iEâEE:F9Ei9]Fͷ7BE~*ʯE͘9.6:F=2FE!6>eP;n:E!6:U2FÁE4::;D:FE!kF.6:FV'Z%w'E>!Eç;6:GF!6!6!6>eP;n:lG!6!G.6:D@6>/5:D@6>/5:D@6!H.6:%D@5>:5:DeF!G.6:*ENDDBASEMSGNo help messages foundHELP!6>eP;n:lG!6!G.6:D@6>/5:D@6>/5:D@6!H.6:%D@5>:5:DeF!G.6:*ENDDBASEMSGNO HELP MESSAGES FOUNR)͎.R)͔.2YH2XH2WHy9ʤE:YHBESHͷ7BE͔9y9'ڞG>2YHE:XHiEOHͷ7iE͔9y9}G>2XHE:WHGHHͷ7G͔9>2WHy9G"ZHy9*ʾG͔9y9,Eo9ÊE:YHʦG:XHʮG>+R'2VHw'͔.:WH…F"\H!ř"^H!dH"`H*\H~ F*^Ḧ́8*`H6+#*\H6*^H663"`H*\H "\H*^H "^HE>͔."\H*\H~ Fř''xF*^H*\Ḧ́8*`H6+#*\H6*^H663"`H*^H "^Hś6F*\H "\H+F!ř"^H!dH"`H*ZH͔9y9*"bHi9ͨ(¾G"\H*^Ḧ́8*`H6+#*\H6*^H663"`H*^H"^H*bH͔9y9,Fo9×F*^H6 !řƛ͊%> 2ƛ:VHV' .w'>͔.,͔.,!"͔.!}, _G!dH, :VHV'*ÙDMƛ.w'*#"|<ʶG>͔.R+mG*G,͔.R+}G*G:VHV'&ͳ-> .Z%w'G>(P;G>HP;G>lP;G>mP;G>P;Gw'>2:DGw'>2:DG>!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,FIELDSFORTO2:DG>!Eç;TTT@@Ȅ@@@PR@brpb@@- DELETE - ECHO - EJECT - ESCAPE - EXACT - INTENSITY - LINKAGE - PRINT - RAW - STEP R)%2H2H2Hy9ʷE%`Hy9ʷE:HDEHͷ7DE͔9'-H>2HE:HyEHͷ7yE>2H͔9"Hy9*5H͔9y9,Eo9_E:H`HHͷ7`H>2H͔9y9=H"H*=H2Hi9ͨ(=H"H͔9E:HEH>+ER'2H ͅ,E>+R'2H ̈́8.w'ƛ!ř͊%!}"H63:HxF*H͔9y9*"Hi9ͨ(MH! ~NdF*H6'#6"Hi9ř''MH*H6'#66#6/#663"H*H͔9y9,Fo9F!ř"H*H~ F ~N½F*Hͨ(MH*H6'#6*H6'#66#6/#663"H*H"H~F:HG*H#"H"H*H! ~NF*H6'#6"H:HO*Hř''=H*H6'#6p#63"H*H#"H"H!ř"H*H~ ]Gͨ(PG*H6+#6*H663"H*H"H*G!q&*ÙDM!ƛ> 7,~*ʂG͎'ŽGR+GsGG*H, !"HG:HʮG*H, ʷG!}, G:HV'ƛ*ÙDM.w'*H#"H*H, R+GG͎'GÝG*H":HV'ƛ*ÙDM.:HV'&ͳ- .Z%w'*H!6;6>'P;kH>(P;UH>RP;UH>P;UH>HP;UH>RP;UHw'>2:DkHw'>2:DkH>!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,FIELDSONTODDkH>!Eç;TTT@@Ȅ@R)2I2I2I2I2Iy9+F:I>EwIͷ7>E͔9y9'ڴH>2IE:IkE|Iͷ7kE͔9y9"I*ʼH2I͔9>2IE:I¦EsIͷ7¦E͔9y9H"Iy9*ʼH͔9>2Iy9,Eo9ÇE:I FIͷ7 F͔9y9H"Iy9*ʼH͔9>2Iy9,Eo9Ey9Iͷ7E͔9y9*ʼH͔9y9,Eo9E:IHIͷ7H͔9>2Iʹ$HE:IH:IH>+R'2I ͅ,ƛ!ř͊%:I™F*Iͨ(H F#6"I*Iř:IO''H N#6"IxH2IøF*Iř:IO''H ~2I#6"I!}"I"I:I?G*I"I*I͔9y9"Iͨ(H"I*I*"I*Iř''H*I6'#66'#*I66#6/#*I6"I*I͔9y9~,6Go9"IF*I63#"I:IG*I"I*I͔9y9"Iͨ(H"I*I*"I͔9y9Iͷ7ˆG͔9y9"I*"I*Iř''H*I6+#6*I6"I*I͔9y9~,Go9"ILG*I63:IGHw'!q&ڥH:IV'*ÙDMƛͅ,*I*I:IOC7;HH$H:IH*I, :IH*I, w' .:IV'*ÙDMƛͅ,ڥHGw'R+ڥHG:IV'*ÙDMƛͅ,w'*I:I ͳ'|ʎH:I{H*I, :IʈH*I, .:IV'*ÙDMƛͅ,ڥHXH:IV'Z%w'I>(P;H>P;H>nP;H>TP;H>RP;H>oP;H>sP;H>SP;Hw'>2:DI>2:DI>!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,ADDFROMONRANDOMREPLACEWITH@Ȅ@@@PR@brpb@@@@@@@d\,ADDFROMONR2J!K"Jy9jEJͷ7J͔9>2Jy9*2E>P;Ji9ͨ(DE>RP;J*J̈́8!"J6 ͔9y9,jEo9!E%!q&ͤ,"J"J2J :"D2J2"D2J2J2J2J2J!"J*Jͳ';I"J2J>2J*J~ EuHE!J4*J"JýE:UO:JG:J2J F*J:Jg."J!J4R+ҮE!"J;I"J2J*J~ 9F6I9F!J4*J"JF:JO:JG!y=PFOxgDF"J*JJIJ!J͎*Jͳ' ;I"J2J*J~ ʛFHڛF!J4*J"J{F:J!JڪF~=2J:JG>2Jx2J2J;I"J2J*J~ FuHF!J4*J"JF:JF J2J:J(G .ʹ$(Gͣ!2J(Gͤ,"J"J 2J:J)H:JG!J6#:J/2J:J2JØE,ͤ,"J*J"J2JÔE!J6#:Jwʹ$G "H"J:JH:JG:JO:J2JHSFR+H*J#"J:JG:JO:J2JHSF*J"J2JÔE:J0rHGH:J=eH2J!J4eH;I~ eH:J<2J:J=eH2J*J"J2JÔE J:TO ~ҊH:JڳH:JʓH7~/2J7I?~2J*JDMJ!J͎*J:J-!J7!Jy667~2JÅI?~2JO>-!J7J~ʗI#ÌI!J:J66*JDMJ!J͎*J:J2:D J>#J:J2"D>!Eç;J'' 3COPYRIGHT *N1978 SCDP N<2C.W.RATLIFFx2Nx''[J 3'[J-3J0LKL*NK~›J6 #6 # FieldsRecord # :00000W.RATLIFFx2Nx''[J 3'[J-3J * - deleted record function *END *# # - record number function *END *! !() - upper case function *END *$ $(,,) - substring function *END *CHR CHR() - numeric to ASCII *END *DA: "!\~# 1+"2 $ SELECT TERMINAL TYPE$   $ ?A -HAZELTINE 1500 B -SOROC, TELEVIDEO $ tC -HEATH 89 D -PERKIN ELMER 1100 $J ÞE -ADM-3A F -ADM-31 $ G -VDP-80 H -INTECOLOR $ I -GNAT-SYSTEM 10 J -TRS-80 II (P&T) $ 1K -APPLE L -VECTOR GRAPHICS $  fM -SUPERBRAIN N -VISUAL-100/VT-100 $< ÙO -OSBORNE P -HP 2621, HP-125 $q Q -CROMEMCO 3102 R -TRS-80 II (FMG) $ S -ADDS VIEWPOINT T -XEROX 820 $ &U -NEC V -EAGLE AVL $ ]W -TRS-80 III X -NorthStar ADVANTAGE $1 k $h Þ Y - MODIFY PREVIOUS INSTALLATION $v  Z - USER SUPPLIED TERMINAL COMMANDS $  $ _Y&Z- AB"!`#_~#fox~# R>2_#= $. jMODIFY EXISTING SPECS ROUTINE $H áFOR THIS METHOD, YOU WILL NEED THE HEX OR $u DECIMAL CODES THAT CAN BE SENT FROM YOUR $ COMPUTER TO THE VIDEO TERMINAL TO CONTROL IT $  $ MTYPE "Y" IF YOU WISH TO CONTINUE $* _YB"g $d Á $r ýWILL YOU BE ENTERING COMMANDS AS HEX OR DECIMAL?$  $ TYPE "D" FOR DECIMAL OR "H" FOR HEXADECIMAL $ _D$H>2[#6 $' qCOMMANDS ARE ENTERED AS A SEQUENCE OF NUMBERS $A éTYPE A CARRIAGE RETURN TO END A SEQUENCE $| ÷ $ 1 - DELETE A CHAR SEQUENCE $ 2 - DIRECT CURSOR POSITIONING SEQUENCE $ N3 - CLEAR AND HOME SCREEN COMMAND $& }4 - BRIGHT/STD VIDEO COMMANDS $Y í5 - DIM/REVERSE VIDEO COMMANDS $ 6 - INITIALIZATION SEQUENCE $ 7 - EXIT SEQUENCE $ / 8 - RESET TO STANDARD VIDEO MODE $  V 9 - ALTER SCREEN SIZE $:  d $a  È SELECT ITEM TO CHANGE $o   ANY CHAR OTHER THAN 1 - 9 TERMINATES SESSION $   $  1:1__! ~ññͳññññͰñññ? $0  j USER SUPPLIED SPECS ROUTINE $J  á FOR THIS METHOD, YOU WILL NEED THE HEX OR $u   DECIMAL CODES THAT CAN BE SENT FROM YOUR $   COMPUTER TO THE VIDEO TERMINAL TO CONTROL IT $   $  [ THE CODES (OR SEQUENCES) THAT YOU WILL NEED ARE:$*  i $f  w $t  à DELETE A CHAR SEQUENCE $   DIRECT CURSOR POSITIONING SEQUENCE $   CLEAR SCREEN COMMAND $  " HOME CURSOR COMMAND $  Z (CLEAR AND HOME CAN BE COMBINED) $-  Í OPTIONAL: BRIGHT/DIM COMMANDS OR $e   VIDEO/REVERSE COMMANDS $   $   TYPE "Y" IF YOU WISH TO CONTINUE $  _YB" $  0 $!  l WILL YOU BE ENTERING COMMANDS AS HEX OR DECIMAL?$;  z $w  õ TYPE "D" FOR DECIMAL OR "H" FOR HEXADECIMAL $  _D Ht >2[# $   COMMANDS ARE ENTERED AS A SEQUENCE OF NUMBERS $  XTYPE A CARRIAGE RETURN TO END A SEQUENCE $+ ~ͳͰîNOW ENTER THE CODES FOR CHARACTER DELETION $ :_#!!͕!ÍTHIS IS THE SEQUENCE "BACKSPACE,SPACE,BACKSPACE"  $ ;ON MOST TERMINALS IF THIS IS TRUE FOR YOUR $  `TERMINAL, THEN TYPE "Y" $F n $k _Y!s# ‡ß $ ENTER THE CHARACTER DELETE SEQUENCE $ (3 BYTE MAX) $ >!:Z#2͕!¶ $  J--- DIRECT CURSOR POSITIONING --- $$ ÃTHE CURSOR CONTROL SEQUENCE IS USUALLY A 3 $U ùTO 4 BYTE SEQUENCE. THE FIRST ONE OR TWO $ BYTES ARE USUALLY FIXED AND THE REMAINING $ 'BYTES CONTAIN THE LINE AND COLUMN NUMBERS $ 5 $2 rARE THE CURSOR ADDRESSES SINGLE BINARY BYTES OR $@ ôSEVERAL ASCII DIGITS?, TYPE A "Y" IF THEY ARE BINARY $} 2_Y>2 $  NOW, ENTER THE POSITION IN THE SEQUENCE $ 6THAT HOLDS THE COLUMN NUMBER $ :_#vYCURRENT VALUE = $H :<"n $k  =2à $ ùNEXT, ENTER THE POSITION IN THE SEQUENCE $ THAT HOLDS THE LINE NUMBER $ :_#!CURRENT VALUE = $ :<" $  =2. $+ @ $9 wMANY TERMINALS ADD A CONSTANT TO THE LINE $K ðAND COLUMN NUMBERS. ENTER THE CONSTANT BIAS $ FOR YOUR TERMINAL $ :_#CURRENT VALUE = $ :" $  2 $ XNOW ENTER THE SKELETON FOR THE DIRECT CURSOR $) ÏCOMMAND. ENTER A ZERO IN THE PLACES WHERE $c ÷COLUMN AND LINE NUMBERS GO $ (11 BYTE MAX) $ :_#!F#!͕!> !:Z#2͕!  $ E---- DIM/BRIGHT VIDEO/REVERSE VIDEO ---- $ W $P ÊENTER THE COMMAND THAT WILL SWITCH TO $b öHIGH INTENSITY OR NORMAL VIDEO $ (5 BYTE MAX) $ :_#!F#!͕!>!:Z#2͕!  $ =ENTER THE COMMAND THAT WILL SWITCH TO $ iLOW INTENSITY OR REVERSE VIDEO $H Ã(5 BYTE MAX) $t :_#ʞ!F#!͕!>!:Z#2͕!ý $ ---- CLEAR AND HOME COMMAND(S) ---- $  $ 6ENTER THE COMMAND(S) THAT WILL CLEAR THE $  lSCREEN AND PLACE THE CURSOR IN THE UPPER $A ÕLEFT CORNER OF THE TERMINAL $w ð(11 BYTE MAX) $ :_#!F#!͕!> !:Z#2͕!³ $ ENTER THE COMMANDS TO BE ISSUED WHEN $ OENTERING THE FULL-SCREEN EDITING MODE $' e(IF ANY) $Z À(11 BYTE MAX) $p :_#ʛ!F#!͕!> !:Z#2͕!ú $ ENTER THE COMMANDS TO BE ISSUED WHEN $ LEAVING THE FULL-SCREEN EDITING MODE $ , $) cSUGGESTION: USE DIRECT CURSOR POSITIONING $7 ßTO PUT CURSOR ON THE BOTTOM LINE OF THE SCREEN $n ú(11 BYTE MAX) $ :_#!F#!͕!> !:Z#2͕!° $ 'ENTER THE COMMAND THAT WILL SWITCH TO $ WSTANDARD INTENSITY OR NORMAL VIDEO $2 ÕTO RESET THE SCREEN AFTER FULL SCREEN OPERATIONS $b ï(5 BYTE MAX) $ :_#!F#!͕!>!:Z#2͕! $  ENTER THE SCREEN WIDTH $ :_#H,CURRENT VALUE = $ :"@ $=  2T $Q ÏNEXT, ENTER THE NUMBER OF LINES ON THE SCREEN $_ :_#òCURRENT VALUE = $ :" $  2 $  $  $ #CHANGE SYSTEM PARAMETERS (Y/N)? $ _Y>&2>2222Q $N _ $\ ÍENTER A CHARACTER TO BE USED FOR $j üINDICATING MACROS OR A RETURN FOR $ DEFAULT CHARACTER OF AMPERSAND (&) :$  2  $  $ JTYPE A RETURN IF THE ERROR CORRECTION $" {DIALOGUE IS TO BE USED OR ANY OTHER $U æKEY IF NO DIALOGUE IS WANTED :$  ʾ2 $  $  $ ENTER OPERATING SYSTEM$  $  9 A - CP/M 1.4 OR CP/M 2.2 $ \ B - MP/M II SYSTEM $D j $g x $u _AʬBʧþ>2ì>22ì>2ò $  $ USE DD/MM/YY DATE FORMAT (Y/N)? (ELSE MM/DD/YY)$ _ Y>2& $ dTYPE "Y" TO SAVE, ANY OTHER KEY TO ABORT INSTALL $1 _YÞ SAVING INSTALLATION PARAMETERS ${ :"2"2""" ABORTING INSTALLATION $ "]#2\#2Z# $ " ENTER CONTROL CODE BYTE $  :Z#:"ʐ!:"Y:[#,!!!G _0 ! O))))  " }Y!|Y!<}J!0 ?))) O 3!!"/!}|Y!<}_! $\! Å!ERROR IN INPUT, RE-ENTER $j!  !7Ý! $! ÿ!IS THIS CORRECT (Y/N) $! _Y!CURRENT SEQUENCE : $! x~"" $" #!:[#:"6"("Ɛ'@'_"o&4 Y" ILLEGAL PARAMETER$E" j" $g" !" ^# w"í" FILE IS NOT ON THE DEFAULT DRIVE $" DBASE COMENT SEQUENCE : $! x~"" $" #!:[#:"6"("Ɛ'@'_"o&4 Y" ILLEGAL PARAMETER$ ##$4$$*%|%% &r&&'h'' (^(()T)))J*** ~~~~~~~PP   =()(*(=7 PPHLKJ  XYKHX7Y PP   YpqqEqY7 PP  ==7 PP   =()((=7 PP   ==7 PP   .P0P   ="!""=7 PP   Y Y7 PP   =())=7 (P PP   Y Y7 PP     PP[DCAB  =()((=7 P P &a000y000C&dB&d@&d@ HJH &a23y1CPP   YEY7 PP   ((?PP   Y0A Y7 PPHLKJ  ==7 PP   =C0 C4 C0 *C0 =7 PP   =*=7 PPHLKJ@  ==6 PSTORE INT(X/365.26)+1 TO Y STORE X+INT(395.25-365.25*Y) TO D IF INT(Y/4)*4=Y STORE 1 TO D1 ELSE STORE 2 TO D1 ENDIF IF D>(91-D1) STORE D+D1 TO D ENDIF STORE INT(D/30.57) TO M STORE D-INT(30.57*M) TO D IF M>12 STORE 1 TO M STORE Y+1 TO Y ENDIF STORE Y-1900 TO Y STORE STR(M,2)+'/'+STR(D,2)+'/'+STR(Y,2) TO DATE IF ANSWER SET PRINT ON ENDIF ? 'CALENDAR DATE =' ?? DATE IF ANSWER SET PRINT OFF ENDIF RETURN NOTE Example dBASE Command file program * * - this is a sample form letter generator and mailing label * - dBASE II system. The system allows the user to add new * - entries to a mailing list, print the mailing list on gummed * - labels or print a form letter addressed to all the people * - in the mailing list. No provision is made to modify the * - mailing list. The user can use the dBASE commands EDIT and/or * - DELETE to modify the database file MAIL.DBF to change the * - mailing list. * * - turn off display of commands to screen SET TALK OFF * - assign database file to command stream. USE MAIL * - enter current date to print on form letter ACCEPT 'Enter date as mm/dd/yy' TO DATE * - select system option DO WHILE T ? ? ? ? ' Form Letter Writing System' ? ? ? ' 0 - EXIT' ? ' 1 - Enter new entries' ? ' 2 - Make Labels' ? ' 3 - Write Letters' ? ? ' enter desired action' * - wait for user response WAIT TO ACTION * - test for exit IF ACTION='0' SET TALK on CANCEL ENDIF * - test for new entries IF ACTION='1' * - add new names to MAIL.DBF DO MAILENTR ENDIF * - test to make labels IF ACTION='2' * - print mail labels DO MAILLAB ENDIF * - test to write form letters IF ACTION='3' * - print form letter to names in MAIL.DBF DO MAILLTTR ENDIF ENDDO RETURN xTITLENlNAMEClOFClADDRClCITYCmSTATECmZIPCm :r=5p=8o*p!^t#p6*p6:^topXp!_t4:s=>2_toXp~Gp5>Åoo!^t~4:r=:_t?~p!s 1Jones John J. Micro Enterprises 1234 Chip Road Silicon CA90002 1Jones John J. Micro Enterprises 1234 Chip Road Silicon CA90002 1Brown Thomas 1234 West Winchester Dr. Boston MA10024 1Pixler Joseph W. 1125 Singing Meadow Rd Diamond Bar CA91710 2Franklin Josephine 12 Country Club Dr Cucamonga CA9l733 1Mason James P. 2245 Freeman Dr. Pomona CA9l876 1Taxpayer John Q. 1277 N San Bernadino Rd Chino CA9l710 4Soda Scotch N. Temperance Society 4800 Hallaluh Dr. Las Vegas NV82345 ter Dr. Boston, MA 10024 NOTENOTE - MAIL SYSTEM NAME AND ADDRESS ENTRY PROGRAM * * - move pointer to bottom of MAIL.DBF GO BOTTOM * - send output of @ commands to MAILFMT.FMT SET FORMAT TO MAILFMT * - read name and address data DO WHILE T * - initialize address variables to blank STORE ' ' TO MTTL STORE ' ' TO MSTATE STORE ' ' TO MZIP STORE ' ' TO MSNAM,MCITY STORE ' ' TO MGNAME STORE ' ' TO MOF,MADDR * - read format file READ *  - check to see if ready to exit this command file IF MTTL=' ' RETURN ENDIF * - combine first and last name and store STORE MSNAM+MGNAME TO MNAME * - add blank card to MAIL.DBF APPEND BLANK * - store name and address data to MAIL.DBF * - substitute input variables for database file variables REPLACE TITLE WITH &MTTL,NAME WITH MNAME,OF WITH MOF,ADDR WITH MADDR REPLACE CITY WITH MCITY,STATE WITH !(MSTATE),ZIP WITH MZIP ENDDO RETURN @ 1,1 SAY ' 1 = "Mr."' @ 2,1 SAY ' 2 = "Mrs."' @ 3,1 SAY ' 3 = "Ms."' @ 4,1 SAY ' 4 = "Dr."' @ 5,1 SAY ' BLANK to exit entry program' @ 6,1 SAY ' After BLANK, enter carriage return for entries' @ 7,1 SAY 'Enter title code ' GET MTTL @ 8,1 SAY 'Enter Surname ' GET MSNAM @ 9,1 SAY 'Enter other names ' GET MGNAME @ 10,1 SAY 'Enter Co. name ' GET MOF @ 11,1 SAY 'Enter Address ' GET MADDR @ 12,1 SAY 'Enter City ' GET MCITY @ 13,1 SAY 'Enter State ' GET MSTATE @ 14,1 SAY 'Enter ZIP code ' GET MZIP NOTE - THIS IS THE TEXT FOR THE USER FORM LETTER * * - the text presented here describes how to generate the * - letter. The user will put in own text. ? 'This is the body of a form letter. It was first written with a word' ? 'processor and then modified to become a command file. The modifications' ? 'are: placement of question marks at the beginning of each line and' ? 'enclosing the text in single quotes or square brackets. In this way,' ? 'each line of text is written to the ALTERNATE file by means of the SET' ? 'ALTERNATE commands in MAILLTTR.CMD (which calls this command file).' ? ? 'The text of the letter can be altered based on the database data fields.' ? 'For instance, if the content of the letter should change for different' ? 'states, then this condition can be checked and the appropriate action' ? 'can be taken.' ? ? ? ' Yours truly' ? ? ? ? ? ' Mike R. O. Chip' ? ? 'Example:' ? IF STATE='CA' ? 'California residents add 6% sales tax' ENDIF RETURN NOTE - THIS COMMAD FILE PRINTS MAILING LABELS ON THE PRINTER * REMARK WHEN LABELS ARE IN PLACE, HIT CARRIAGE RETURN WAIT * - echo printed information to screen SET PRINT ON * - position to top of MAIL.DBF GO TOP * - print labels DO WHILE .NOT.EOF * - print name DISP OFF $(NAME,13,17)-(' '+$(NAME,1,12)) * - checking to see if office address IF OF#' ' * - print office name DISP OFF OF * - print address DISP OFF ADDR * - print city, state, zip  DISP OFF $(CITY,1,20)-(', '+$(STATE,1,2))-(' '+$(ZIP,1,5)) ELSE * - print home address DISP OFF ADDR * - print city, state, zip DISP OFF $(CITY,1,20)-(', '+$(STATE,1,2))-(' '+$(ZIP,1,5)) ? ENDIF ? SKIP ENDDO * - turn off echo of labels SET PRINT OFF REMARK ALL DONE RETURN NOTE - THIS COMMAND FILE WRITES THE FORM LETTER * * - position pointer at top of MAIL.DBF GO TOP * - sets up to store everything that appears on the screen into * - a file called PRINT.TXT which the user can later list using * - his work processor. SET ALTERNATE TO PRINT SET ALTERNATE ON * PUT PRINT FORMATTER SETUP DIRECTIVES HERE, SUCH AS PAGE NUMBERING, * PRINTER PITCH, PAGE OFFSET, LINE HEIGHT, AND FOOTNOTES * EXAMPLE: * ? '.OFFSET = 8' * ? '.CHARACTER WIDTH = 12/INCH' * etc. * - print letter DO WHILE .NOT.EOF ? ' Your Company' ? ' 8080 Micro St.' ? ' Silicon, CA 93002' ? ' (213) 555-1234' ? ' '+DATE * - print name and address of client ? $(NAME,13,18)-(' '+$(NAME,1,12)) IF OF#' ' ? OF ENDIF ? ADDR IF VAL(ZIP)=0 ? CITY-(', '+STATE) ELSE ? CITY-(', '+STATE)-(' '+ZIP) ENDIF ? ? * - print salutation IF TITLE=1 ? 'Dear Mr. '+$(NAME,1,12) ENDIF IF TITLE=2 ? 'Dear Mrs. '+$(NAME,1,12) ENDIF IF TITLE=3 ? 'Dear Ms. '+$(NAME,1,12) ENDIF IF TITLE=4 ? 'Dear Dr. '+$(NAME,1,12) ENDIF ? * - print text of letter DO MAILINFO * * PUT A WORD PROCESSOR COMMAND TO SKIP TO THE NEXT PAGE HERE * EXAMPLE * ? '.SKIP' * - this is a wordstar page skip ? '.pa' SKIP ENDDO SET ALTERNATE OFF RETURN *5ͣ"k1im SORT AND PACK DIRECTORY v3.6 04/27/83  |¬2 ͫRo͌m-- DONE !"|~ʡ ~ª##~_#~ª*|#~+-ʪ 6# £*#*#r*|*| ~G# *.>2J"K:^#" ^#"~#2 ~#2^#"^#"^"^#V#"~#fo ͣ"DM8"DM* JDM: ;D9Æ~#O&m)))))*"*+"|>~#£m ++ SAP not useable with MPM ++lm(previously sorted) -- DONE jmand packing, !"| ~0? ?2#~$?#~$?#:w+6$+6$+6$*#*# m ---> Reading, ám++ READ ERROR - Exiting to CP/M - NO CHANGE made l|g}o:\=O5: #2msorting !"*#"ͼ*#"*#*#"*}o|g>2*|*| G~p# -m++ WRITE ERROR - Exiting to CP/M - directory left in UNKNOWN condition ++ l:mwriting >2 *=!"*#ͣͣ"!"*#* *#=!F*DM>: ^AjÆNOTE - BALANCE COMMAND FILE TO BALANCE CHECKBOOK * SUM AMT TO OUTSTAND FOR .NOT.CAN.AND.NO>0 SUM AMT TO T:OUT FOR .NOT.CAN.AND.NO=0 ? ? * - display total of outstanding checks DISP OFF ' TOTAL OUTSTANDING CHECKS = $',OUTSTAND ? * - display total of outstanding deposits DISP OFF ' TOTAL OUTSTANDING DEPOSITS = $'T:OUT ? * - request ending balance form check book INPUT "ENTER ENDING BALANCE FROM BANK STATEMENT" TO BEGIN DISP OFF 'CURRENT BALANCE = $',BEGIN+T:OUT-OUTSTAND WAIT RETURN NOTE - CANCELS COMMAND FILE TO ENTER CANCELLED CHECKS * * - message to be displayed on screen REMARK ENTER CHECK NUMBER OF 0 TO EXIT * - loop while check number not equal to zero DO WHILE T ? INPUT "ENTER CANCELLED CHECK NO" TO C:CAN * - testing for zero check number IF C:CAN=0 RETURN ENDIF * - position to top of database file GO TOP * - search for cancelled check number LOCATE FOR C:CAN=NO * - testing to see if at end of database file IF .NOT.EOF * - if not at end of file ? * - display check data DISP OFF 'Payed to ',TO,' on ',DATE DISP OFF 'Amount of check is ',AMT * - ask if this is right check INPUT 'Is this the one? (Y/N)' to ANSWER IF ANSWER * - change logical flag for cancelled check REPLACE CAN WITH T ENDIF ELSE * - message to tell user his check is not in file. DISP OFF 'Check ',C:CAN,' cannot be found' ENDIF ENDDO RETURN note - DEPOSIT CANCELLATION PROGRAM * * - position to top of database file GO TOP DO WHILE T * - find first uncalcelled deposit LOCATE FOR NO=0.AND..NOT.CAN NEXT 65535 * - if not at end of character field IF .NOT.EOF ? * - display date and amount of deposit * MAKE SURE THIS IS THE THE RIGHT ONE DISP OFF 'Deposited on ',DATE,' Amount = ',AMT INPUT ' Cancel this one? (Y/N)' TO ANSWER * - ask if deposit is to be cancelled IF ANSWER * - change logical flag for cancelled deposit REPLACE CAN WITH T ENDIF ELSE * END OF FILE ? * - tell user there are not more deposits ? 'No more uncancelled deposits' RETURN ENDIF * IF NOT EOF ? INPUT 'Any more deposits to cancel? (Y/N)' to ANSWER IF .NOT.ANSWER RETURN ENDIF ENDDO RETURNNOTE - DEPOSIT COMMAND FILE TO ENTER NEW DEPOSITS * REMARK ENTER DEPOSIT AMOUNT OF 0 TO EXIT * - initialize date value STORE '01/01/81' TO C:DAT DO WHILE T ? ? * - reading deposit entries INPUT "Amount of Deposit " TO C:AMT * - if deposit amount equals 0, exit command file IF C:AMT=0 RETURN ENDIF STORE C:DAT TO OLD:DATE * - read date of deposit ACCEPT "Date of Deposit as MM/DD/YY " TO C:DAT * - if date is blank, use current date IF C:DAT=' ' STORE OLD:DATE TO C:DAT ENDIF * - ask if all fields are correct INPUT "ARE ALL FIELDS CORRECT ? " TO GO:NOGO * - test for correct data IF .NOT.GO:NOGO LOOP ENDIF * - put blank card into database file APPEND BLANK * - put deposit data into database structure REPLACE NO WITH 0,TO WITH 'DEPOSIT',AMT WITH C:AMT REPLACE DATE WITH C:DAT,CAN WITH F ENDDO NOTE - EXAMPLE dBASE CHECK BALANCER COMMAND FILE PROGRAM * * * - turn off display of commands to screen SET TALK OFF * - enter user database file name ACCEPT "Enter check database name" to DBF * - access database file USE &DBF * - specify disk containing command files ACCEPT "Enter disk drive containing command files as 'A:' or 'B:'" to DISK SET DEFAULT TO &DISK * - this is text that is displayed on the screen DO WHILE T * DO WHILE T means DO WHILE TRUE I.E. DO FOREVER * The DO WHILE will be terminated by a CANCEL command internally ? ? ? ? ' CHECK BOOK BALANCER MENU' ? ? ' 0 - EXIT' ? ' 1 - ENTER NEW CHECKS' ? ' 2 - ENTER DEPOSIT' ? ' 3 - ENTER CANCELLED CHECKS' ? ' 4 - ENTER CANCELLED DEPOSITS' ? ' 5 - BALANCE' ? ? ' ENTER DESIRED ACTION' * - reading user response WAIT TO ACTION DO CASE * - testing to exit CASE ACTION='0' SET TALK ON * - return to dBASE system CANCEL * - test for new checks CASE ACTION='1' * - enter new check data DO XNEWENTR * - test for new deposits CASE ACTION='2' * - enter new deposit data DO XDEPOSIT * - test for cancelled checks CASE ACTION='3' * - enter cancelled check data DO XCANCEL * - test for cancelled deposits CASE ACTION='4' * - enter cancelled deposit data DO XDEPCANC * - test for balancing check book  CASE ACTION='5' * - compute ending balance DO XBALANCE * - non-valid entry to the menu OTHERWISE ? 'Invalid entry, re-enter' ENDCASE ENDDO RETURN NOTE - EXTENDED NEWENTR COMMAND FILE TO ENTER NEW CHECKS * * - clear screen ERASE * - position to bottom of database file GO BOTTOM * - initialize date STORE '01/01/81' TO CH:DAT DO WHILE T * initialize memory variables so that READ will have a length to mark STORE ' ' TO CH:TO STORE 0.00 TO M:AMT STORE ' ' TO CH:MEMO STORE NO+1 TO M:NO * - this is text to read check data @ 5,0 SAY 'CHECK ENTRY ENTER CHECK NUMBER OF ZERO TO EXIT' @ 6,0  SAY 'IF CHECK NUMBER=0, ENTER CARRIAGE RETURNS FOR OTHER ENTRIES' @ 7,0 SAY 'CHECK NUMBER ' GET M:NO @ 8,0 SAY 'PAY TO THE ORDER OF ' GET CH:TO @ 9,0 SAY 'AMOUNT OF CHECK ' GET M:AMT @ 10,0 SAY 'DATE WRITTEN ' GET CH:DAT PICTURE '99/99/99' @ 11,0 SAY 'PURPOSE OF CHECK' @ 13,0 SAY 'A - ADVERTISING B - BANK CHARGES C - CAR + TRUCK' @ 14,0 SAY 'D - DUES + PUBLICATIONS F - FREIGHT I - INSURANCE' @ 15,0 SAY 'L - LEGAL EXPENSES S - OFFICE SUPPLIES P - POSTAGE' @ 16,0 SAY 'R - RENT T - TELEPHONE X - TAXES' @ 18,0 SAY 'ENTER PURPOSE LETTER' GET CH:MEMO READ IF M:NO=0 RETURN ENDIF * - put blank card into database file APPEND BLANK * - put check data into database file REPLACE NO WITH M:NO,TO WITH CH:TO,AMT WITH M:AMT; DATE WITH CH:DAT,CAN WITH F,MEMO WITH !(CH:MEMO) ENDDO 1ØOͺ :&:og,%wJ1  $~#$D_>44 l>>> OSBORNE 1 <<<m CP/M $! <p: o&ç ڍ |Ą{0_>̈́4.$: o&̈́4 $4 *$>2Q12^og"B!s# y :7>N #~a {  w ! !\!s# y-::u:A2S:[z ix~# ^!@^ãx?GÎ #Ä̓ʞ#} 7!@xûVALIDATE.!@xGROUPn !@xG n !@xPARMS K !@xHELP&!@6x9MAPw !@LxRTRACK j!@exgT z~!w#m:mÛ0 ?))) O Ä̀}"T"g"Dxú-m̀}"g*T|}"T"g*D!@xSECTOR!@xS m̀}"V"X"D@7x8-`m̀}"X*VZ"V"XÅ*D@pxtEDITZ4 Edit - $!F s# yF>z!G !FxýWRITEڸ!FxSTOPڅ!0 O)))) H}.ʬ"D)9+Ɛ'@'_:E":D";,*D~";,!Fs# ydF>!G H}ҍ.ʬ :Gʝ}*Dw):D<2D!"Bz:g.*;ʅ4 Disk Write Error$Åz *V"e*V͞ *T͋ 7.';2d:d/4 Disk Read Error: Drive $=4 Drive $:SA>4: Track $*T̈́4, Sector $*V̈́ *_ʥ4 (Group $*_̈́4, $:`":_"4H)$)͏*X*Vʿ#"V*g*T#"T*e"Vz */ "V*3 "XÅ76# > w#   .w# 7y'# " w# )!\)e!U̓XCOMa!"Bz \<ʇ\=ʅ͏p:Q1!"D*D:C":B"4 $~";,#y ;, ²;,*D~~ >.>#y ;, )E *B"B*D"D×z !"Z*/ "\)4 V T $*Z̈́4 $*Z͋ 7*\͞ .'; E : ҧ*\##"\*3 z/W{/_`#"\*/ `ÿ*\#"\*5`*/ "\*Z#*7"Z@:^…4 Successful validation drive $:SA>4:$Å4 ?Error - Track $*Z̈́4, Sector $*\̈́)>2^R  >H _ Z 4^C$Åm̀}"_z *_*9R2aͧ :a<2a!*  Å*_: )=­ :a_*  *% "T"g: *1 n&"V"XBK*1 .0;"V"X!"_:  *1 .0;*V / *VE*1 ~# & *% *Tz/W{/_* g : G\ |g}oT Q "_DM!q  xo z `o"D!"_"@4 Group allocation map drive $:SA>4: $*D4 $~ 40$*_#"_ 41$*@#"@*9 1  4 $ # ) 4 $*_̈́4 Groups remaining on disk out of $*9̈́4 $Å:S_:SOͺ *7?DM.;*/ *5?DM.!; } >2 5 !"/ *"1 4*^" #^" #~2 #~2 #^" #~2! 2" #n&"% 2 2) !"# >42' >2( î .;G ~#fo"1 .0;"/ ^#V" #~2 #~2 #~2 #^#V" #^#V" #^#V"! #^#V"# #^#V"% #~2' #~2( #~2) */ +* "3 : <2* _* *  } *% +"- * #" :* _ i`"+ 5 {]T= z/W{/_  *3 #"5* #"9*- #"7z 4 Disk Parameters Drive $:SA>4: Sectors per track: $*/ ̈́4-$*3 ̈́4 File tracks on disk: $*% ̈́4-$*- ̈́4 Sectors per group: $** &̈́4 Groups on disk: 0-$* ̈́4 Directory entries on disk: $* ̈́4 Allocation vector: $*! }": w|"4 Extent mask: $: "4 OS/Reserved tracks on disk: $*% ̈́4 OS sectors: $*' &̈́4 First CP/M sector: $*( &̈́4 Physical sector size: $!:) =̈́4 $4 Commands: $4 Dump file $4Track t{-u} Sector s{-e} Read specified sectors $4Group g Read CP/M group $4VALIDATE Read every sector on disk $4MAP Display allocation map $4PARMS Print disk parameters $4Track t Sector s EDIT Edit disk sectors $4d: Select disk $4HELP Print this $4 ?Drive select error$Å4 ?Input error$Å4 ?Bad sector number$Å4 ?Bad track number$Å4 ?Bad group number (greater than $* ̈́4)$Å4 ?No file by that name on drive $:SA>>:>Å4 ?Disk read error$14 ?Error in file name$Å4 ?Address error$z4 ?Error, hex input only $) $ $k number$ (greater than $* ̈́4)$Å4 ?No file by that name on dr2S:/*Q }2\!W~/7Tv :S v *** lDRION COMPUTERSm - )(c) lITC SOFTWAREm( *** $~/7T=v >:S v *** lDRION COMPUTERSm - )(c) lITC SOFTWAREm( *** $I$I$I$UUU$$A$ /TBMEQSVH@#.-DI5NPAK_FL= ABCD COPYRIGHT 1982, PAWLUK CORPORATION5455 Wilshire BoulevardLos Angeles, CA 90036(213) 937-0551^#VN#F!}~#z'_!a>]F!4c>*W!ikͷW!kLX!kC͕>!bX!b^c>NX!zk6!&a>]!k^c>L(=X!kC!&aͽFRʹG*kkWFͣ^RʹG*kWFͣ^>2b:bog |3!b4áy>!&a>]!`>]G!(lc>L=X!&lC͕>!bX!b>W!c>W!c>W ?!c=W6:'cog |2$c2%c{ 2b:,c2ul:ulog:bogYRʹGI*$k:bogPmX>PWFͣ^!b4N>2b:bog |RʹG>I*$k>PWFͣ^!b4ÚRʹG*kkWFͣ^RʹG*kWFͣ^>2b:bog |03!b4y>F!bc>NX!}Y"k!{k!Y"$k2b:bog |*$k:bogPmXc>PNX!b4c*k{~_U!bPX!bWW͗U|2!k!bWW͗U|2"k!bWW͗U|2#k!b6>2'c*k !xk>GNX*k !wk>GNX*k !tk>GNX*k !uk>GNX*k>WU2yk*k/nb*k;nbͶ>}2+c:+cog*kGnbͶ>}2+c:+cog*kSnbͶ>}2+c*kSKWW*kGKWW*k;KWW*k/KWG͹WWW!-cX!&kc>CGNXR ʹG*k_WFͣ^R%ʹG*kWFͣ^:"kY>2b:bog |Y3!b412$c2%c{ RʹG>I!bE!c>Wͬ?!c>,Wͬ?!+d> Wͬ?ͣ^ /RʹG>I!Kd>,WFͣ^͕>!bX!bwd>NXRʹG*kWFͣ^:"k>2b:bog |3!b42$c2%c{ ͸*:3c :$c!*c2&c:,cog:&cogͶ>}2,c:$c2(c:%c2)c>2$c2%c{ RʹGI! bE!wd>Wͬ?:&cog>_Vͬ?!zd>Wͬ?:)cog>_Vͬ?!c>Wͬ?ͣ^:(c2$c:)c2%c{ ͕>!bX!b>W!-c>Wk?|̓ } !bn& |}} !bn& |!bn& |3!bn& |”:%cog:ykogPYY:%cog:ykogX}GNX!kͧ>:%cog | !%c4} 2%c:$cog |8 !$c4} :&cog:'cogY} Ry ʹGI*$k:&cog#PmX>PWFͣ^!*c4, !zk6!bb>P=X:zk !zk6*k;b,W :$cog | !$c4 :&cog:'cogY *k/b,W !$c !$c5 !*c !*c5  *kSb,Wb !%c9 !%c5_ >O2%c!$cM !$c5_ !&c_ !*c5 _ *kGb,W :%cog | !%c4ÿ 2%c:$cog | !$c4ÿ :&cog:'cogY ÿ !bn&:+cogY ͕>!bṔW!zk6Õ !b6 !*c4>O2b*$k:&cog#PmX:bog!cxSW:b/: !b~w RK ʹG>Iͣ^2b:bog>ogͶ>}2yl:ylog:bogY *$k:&cog#PmX:bog"zl!zlͧ>!b4e :bN¹ !|lͧ> :bog | :%c2)c:$c2(c>O2%c>2$c{ !~lͧ>:(c2$c:)c2%c2bx :%c2)c:$c2(cR! ʹG*kWFͣ^:"kU >2b:bog |U 3!b4- 2$c2%c{ :*c2b:*c2l:log:bogYg *$k:bogPmX>PW!c>Wk?+}2%c:%c\ { >O2b:%c<2l:bog:logY/*$k:bogPmX:bog!cxSW !b~w :%c2b:b2l:log:bogY\ *$k:bogPmX:bog"l!lͧ>!b4 !$c4!b4m :)c2%c:(c2$c2bþ:!k>2l*k#nb}2l:log:logY*k#:l_WG!d>SW :$cog*kw^#V>_V!bPX2*k#:l_WG!d>SW-:%cog*kw^#V>_V!bPX2!b6!bn&!b!bW!c>Wk?WG!b>P=X>2l!bn&}2l:log:logY!b:l_WG!l>NX!lͧ>!l4r*k#:l_WG!l>NX!lͧ>!l4Ô ý>2l*k#nb}2l:log:logY*k#:l_WG!d>SW6:$cog*kw^#V"lt*k#:l_WG!d>SWn:%cog*kw^#V"lt!"l!l#*l}3>!lGX!lͧ>ö*k#:l_WG!l>NX!lͧ>!l4G:#k*$k:&cogPmX:%cogc>GNX*$k:&cogPmX:%cog"l!lͧ>!%c#!%c5F>O2%c!$c7!$c5F!&cF!*c5 z:$cog |a!$c4y:&cog:'cogYy @:%c2b:bog |*$k:&cogPmX:bog#*$k:&cogPmX:bog>GNX*$k:&cogPmX:bog"l!lͧ>!b4Ã*$kO:&cogmXc>GNX*$kO:&cogmX"l!lͧ>^#V"l:$c2(c:%c2)c>2$c2%c{ !c*lL>͛W*ln&}2%c>2b:%c2l:log:bogY*l:b_WG!l>NX!lͧ>!b4Æ>3>!lGX!lͧ>RʹGIͣ^2b:bog |!lͧ>!b4:(c2$c:)c2%c{ ñ#:$c2(c:%c2)c>2$c2%c{ RVʹG!bE!d>W*k͹Wͬ?ͣ^>3>!lGX!lͧ>:(c2$c:)c2%c{ ͕>!bX!dbxSW?!bdxSW?!b>_w*kbxSW!`>2[ð#*kbxSWʹ#ð#*kbxSW'ð#*kbxSWy*$k:&cogPmX!b>PG=X*$k:&cogPmXc>PNXRtʹGI*$k:&cogPmX>PWFͣ^:,cog:'cogY!,c4:&c<2b:'c2l:log:bogYq:bog:'cogY*$k:bogPmX*$k>PGNX*$kc>PNX*$k:bogPmXb>PJX:*cog :bogYYRYʹGI*$k:bogPmX>PWFͣ^*$k!b>PG=X!b4Ú!b6ð#*kbxSW:,cog:&cogY/!,c5:&c2b:,c2l:log:bogYG*$k:bog#PmX*$k:bogPmX>PGNX:*cog :bogY@R=ʹGI*$k:bogPmX>PWFͣ^@!b4õ*$k:,cog#PmXc>PNX:*cog :,cog#YRʹGI*$k:,cog#PmX>PWFͣ^ïð#*kbxSW:*cog :'cogY:*cog, :'cogY!*c~w :'c2*c ð#*kbxSW!*cT:*cog |J!*c~wN2*c ð#*kbxSW!*c|2*c ð#*kbxSW:*cog :'cogY:'c2*c ð#*k bxSW}ð#*kbxSW*$k:&cogPmX:%cog!b>GNX*$k:&cogPmX:%cogc>GNX*$k:&cogPmX:%cog"l!lͧ>:%c<2b:bog |:bog |*$k:&cogPmX:bog!b>GNXö!bd>NX*$k:&cogPmX:bogb>GNX!lͧ>!bb>GNX!b4_ð#*k#bxSW2$cð#*k##bxSW(>2$cð#*k###bxSWB>(2%cð#*kbxSW:$c2(c:%c2)c!zk6:zkRʹG*kWFͣ^:"k>2b:bog |3!b4Î2$c2%c{ RʹG>I!bE!d>W!ikW!d͹WWͬ?ͣ^ /RʹG>I!d>WF!d>"WFͣ^͕>!bX!b>W!d>W!d>W ?!d=WRmʹG>I!d>WFͣ^!ukd>GNX!dukxSW!dukxSW͕>!ukX!dukxSW!dukxSW!lͧ>RʹG>I!d>WFͣ^y!b>W!e>W!e>W ?!e=W¿R8ʹG>I!e>WFͣ^!tkd>GNX!dtkxSW!dtkxSW͕>!tkX!dtkxSW!dtkxSW!lͧ>RʹG>I!/e>WFͣ^D!b>W!Ke>W!Le>W ?!Ke=WNRʹG>I!Me>WFͣ^!bbe>GNX!cebxSW!bdexSW=͕>!bX!b>WU2yk!b>W!ee>W!fe>W ?!ee=W!b6!bge>NX2b2'cRʹG>I!ge>WFͣ^!bn& |:bog++|͕>!bX!bebxSW?!bdexSW?!b!bP>͛W!lͧ>!b4ë!bWU}2'c!'c5:'cog |<>2'cQ:'cog |Q>W2'c:'c<2b:bog |*$k:bogPmXc>PNX!b4X:'cog :*cogY:'c2*c:'cog:,cogY:'c2,c!b>W!e>W!e>W ?!e=W!b6!be>NX2b*kyw#wR/ʹG>I!e>WFͣ^!bn& |:bog+++|͕>!bX!bebxSW?!bdexSW?!b!bP>͛W!lͧ>!b4/!bWU*kys#r*ky#~*kyw#w*ky^#V |*ky6#6!zk6b!be>NX:(c2$c:)c2%c ð#*kbxSWN!le>L=X!lC͕>!bX!b>W!c>W!c>W ?!c=W;RʹG*kWFͣ^:"k>2b:bog |3!b4Ð2b:bog |*$k:bogPmXc>PNX!b4ü2(c2)c2*c2,c2&c!be<NX!b6!be>NX!be>NX2$c2%c{ ͸*K!be>NXð#*kbxSW°#!e>$W!ikW!e͹WW!mLX!mC͕>!bX!dbxSW?!bdxSW?!b>_w!2c6!ebxSW!ebxSW#!ebxSWI !cme>L%=X!amC͕>!bX!b>W!c>W!c>W ?!c=WC !2c6I !f>*W!ikW! f͹WW!mLX!mC͕>!bX!b>W!c>W!c>W ?!c=W¼ !b;f>P=X͸*!b6ÿ !Pf>W!ikW!W!ikͷWG3!R!!&aͤJ!&aR_!͹G!!bE2b:,c2Nn:Nnog:bogY\!*$k:bogPmX>PWͬ?!b4%!ͣ^!&aͽF!kf>W!ikW!Tf͹WW!QnLX!OnC!kf>W!ikͷWG3!R!.P!&aͤJ!&aR!͹G!&bE!d>W!ikW!of ͹WWͬ?ͣ^!&aR!͹G>Iͣ^!&aRP"͹G!+bE2b:,c2n:nog:bogYM"*$k:bogPmX>PWͬ?!b4"ͣ^!&aRd"͹G>Iͣ^!&aͽF!ebxSW"!zf>W!ikͷWG3!R!.d!&aͤJ!zf>W!ikW!~f͹WW!nLX!nC)#!ebxSW)#!f>W!ikͷWG3!R!.d!&aͤJ!f>W!ikW!~f͹WW!nLX!nCͧ3!&aͽF:1c#2*c:&cog |^#!&c~w!*c~w=#:'cog :*cogY#:*c!'c!&c2&c:'c2*c:&c2$c !1c6ã#!bf>NX'*$k:&cogPmX:%cog!ukxSW#!vkc>GNXÝ$*$k:&cogPmX:%cog!fxSW‘$*$k:&cogPmX:%cog#!ukxSW*$k:&cogPmX:%cog#!fxSW$!vkc>GNXÎ$!vkuk>GNXÝ$!vkuk>GNX:%c2b:bog |'*$k:&cogPmX:bog!tkxSW*$k:&cogPmX:bog!fxSW&!ukvkxSWE%*$k:&cogPmX:bogf>GNXð&:bu%*$k:&cogPmX:bogtk>GNXð&*$k:&cogPmX:bog+!cxSW*$k:&cogPmX:bog+!tkxSW%*$k:&cogPmX:bogtk>GNXð&!$c&*$k:&cog+PmX:bog!cxSW*$k:&cog#PmX:bog!cxSW&*$k:&cogPmX:bogvk>GNXí&*$k:&cogPmX:bogf>GNXð&&*$k:&cogPmX:bogvk>GNX*$k:&cogPmX:bog!b>P=X!?ob>JX!=oͧ>!b4ã$õ**$k:&cogPmX:%cog!tkxSWV'!vkc>GNX(*$k:&cogPmX:%cog!fxSW'*$k:&cog#PmX:%cog!tkxSW*$k:&cog#PmX:%cog!fxSW'!vkc>GNX'!vktk>GNX(!vktk>GNX:&c2b:'c2@o:@oog:bogYT**$k:bogPmX:%cog!ukxSW*$k:bogPmX:%cog!fxSW'*!tkvkxSW¹(*$k:bogPmX:%cogf>GNX$*:b(*$k:bogPmX:%coguk>GNX$**$k:bog+PmX:%cog!cxSW*$k:bog+PmX:%cog!ukxSWn)*$k:bogPmX:%coguk>GNX$*!(c$**$k:bogPmX:%cog+!cxSW*$k:bogPmX:%cog#!cxSW)*$k:bogPmX:%cogvk>GNX!**$k:bogPmX:%cogf>GNX$*M**$k:bogPmX:%cogvk>GNX!b4(:$c2(c:(c2$c:$cog |*{ *$k:$c_W:*cogPmX:%cog"Ao!Aoͧ>!$c4`*:(c2$c:'c2,c/!zk6:zk/!zk6!;fb>4W*!bf>GNXÚ+!Eof>L =X!CoC>2'c!bf>NX!b>W!f>W!f>W ?!f=W!b>W!f>W!f>W ?!f=W!b>W!f>W!f>W ?!f=W+͕>!bX +!b>W!f>W!f>W ?!f=W+!`>2[!zk6/!of>L=X!oC!ik62b͕>!bX!bn& |:bog |,!bn& |i,!bf,!%c5{ !oͧ>{ !ik!ikn&+MWG!ik> =X!b5f,,!b>W!&k>CWk?|,!dbxSW?!bdxSW?,!b>_w!b!ik >͛W!oͧ>!b4!%c4,>3>!oGX!oͧ>͕>!bX+!bf>NX!fik>NX2b*kyw#wR/ʹG>I!e>WFͣ^!bn& |:bog+++|͕>!bX!bebxSW?!bdexSW?!b=W+͕>!bX +!b>W!f>W!f>W ?!f=W+!`>2[!zk6/!of>L=X!oC!ik62b͕>!bX!bn& |:bog |,!bn& |i,!bf,!%c5{ !oͧ>{ !ik!ikn&+MWG!ik> =X!b5f,,!b>W!&k>CWk?|,!dbxSW?!bdxSW?,!b>_w!b!ik >͛W!oͧ>!b4!%c4,>3>!oGX!oͧ>͕>!bX+!bf>NX!fik>!be<NX!b6!be>NX!be>NX2$c2%c{ ͸*K!be>NXð#*kbxSW°#!e>$W!ikW!e͹WW!mL=W+͕>!bX +!b>W!f>W!f>W ?!f=W+!`>2[!zk6/!of>L=X!oC!ik62b͕>!bX!bn& |:bog |,!bn& |i,!bf,!%c5{ !oͧ>{ !ik!ikn&+MWG!ik> =X!b5f,,!b>W!&k>CWk?|,!dbxSW?!bdxSW?,!b>_w!b!ik >͛W!oͧ>!b4!%c4,>3>!oGX!oͧ>͕>!bX+!bf>NX!fik>!&aͤJ!&aR_!͹G!!bE2b:,c2Nn:Nnog:bogY\!*$k:bogPmX>PWͬ?!b4%!ͣ^!&aͽF!kf>W!ikW!Tf͹W8 ( P@ 0$0  1`"0`QtI#@0A*+"&6"000@$)7"PF,  AA@v(A$@ $(@*X`0&$0 <$0#P)$F ֆ$05000 T@!2 0`0 @`( 0P @$0 @W!ikW!~f͹WW!nLX!nCͧ3!&aͽF:1c#2*c:&cog |^#!&c~w!*c~w=#:'cog :*cogY#:*c!'c8 ( P@ 0$0  1`"0`QtI#@0A*+"&6"000@$)7"PF,  AA@v(A$@ $(@*X`0&$0 <$0#P)$F ֆ$05000 T@!2 0`0 @`( 0P @$0 @GNXð&:bu%*$k:&cogPmX:bogtk>GNXð&*$k:&cog8 ( P@ 0$0  1`"0`QtI#@0A*+"&6"000@$)7"PF,  AA@v(A$@ $(@*X`0&$0 <$0#P)$F ֆ$05000 T@!2 0`0 @`( 0P @$0 @JX!=oͧ>!b4ã$õ**$k:&cogPmX:%cog!tkxSWV'!vkc>GNX(*$k:&cogPmX:%cog!fxSW'8 ( P@ 0$0  1`"0`QtI#@0A*+"&6"000@$)7"PF,  AA@v(A$@ $(@*X`0&$0 <$0#P)$F ֆ$05000 T@!2 0`0 @`( 0P @$0 @GNX$*!(c$**$k:bo8 ( P@ 0$0  1`"0`QtI#@0A*+"&6"000@$)7"PF,  AA@v(A$@ $(@*X`0&$0 <$0#P)$F ֆ$05000 T@!2 0`0 @`( 0P @$0 @NX!b>W!f>W!f>W ?!f=W!b>W!f>W!f>W ?!f=W!b>W!f>W!f>W ?!fP 0q !Hb`@,- @$B ((A   d H,` 0Q@``B @˜DP8  (B\* P * @0  `  !`  `@@@8c@8!5  @8 h  (&$08@0 !Ѐb Q `  X`1 T (0S 0X (#1 NX2b*kyw#wR/ʹG>I!e>WFͣ^!bn& |:bog+++|͕>!bX!bebxSW?!bdexSW?!bP 0q !Hb`@,- @$B ((A   d H,` 0Q@``B @˜DP8  (B\* P * @0  `  !`  `@@@8c@8!5  @8 h  (&$08@0 !Ѐb Q `  X`1 T (0S 0X (#1 !be<NX!b6!be>NX!be>NX2$c2%c{ ͸*K!be>NXð#*kbxSW°#!e>$W!ikW!e͹WW!mLP 0q !Hb`@,- @$B ((A   d H,` 0Q@``B @˜DP8  (B\* P * @0  `  !`  `@@@8c@8!5  @8 h  (&$08@0 !Ѐb Q `  X`1 T (0S 0X (#1 !&aͤJ!&aR_!͹G!!bE2b:,c2Nn:Nnog:bogY\!*$k:bogPmX>PWͬ?!b4%!ͣ^!&aͽF!kf>W!ikW!Tf͹WZh,0*@H-  `P( , &$(2   @y\ 0Bw (A``hD5C0 0 hD !  : p-ocJ0 $ AB4" 5  "01! Qt`8`,@ @$ AW `!u@(2AF  LR@ `#0I  4>  (B0@4c1(t@!ea4@ 15@#>!f>W!ikW!~f͹WW!nLX!nCͧ3!&aͽF:1c#2*c:&cog |^#!&c~w!*c~w=#:'cog :*cogY#:*c!'cZh,0*@H-  `P( , &$(2   @y\ 0Bw (A``hD5C0 0 hD !  : p-ocJ0 $ AB4" 5  "01! Qt`8`,@ @$ AW `!u@(2AF  LR@ `#0I  4>  (B0@4c1(t@!ea4@ 15@#>xSW&!ukvkxSWE%*$k:&cogPmX:bogf>GNXð&:bu%*$k:&cogPmX:bogtk>GNXð&*$k:&cog80 "F44tD@I<( @44ca@"Gx- `)@AAb@p 0<k  ( `H@@6E8@ ![000! *  > P @@h 8;  Df .0!8 K @T0# ).WLa4 h @"!"@"h 4,@ 8Q>`,$K D A` ! ,@X!?ob>JX!=oͧ>!b4ã$õ**$k:&cogPmX:%cog!tkxSWV'!vkc>GNX(*$k:&cogPmX:%cog!fxSW'80 "F44tD@I<( @44ca@"Gx- `)@AAb@p 0<k  ( `H@@6E8@ ![000! *  > P @@h 8;  Df .0!8 K @T0# ).WLa4 h @"!"@"h 4,@ 8Q>`,$K D A` ! ,@og!cxSW*$k:bog+PmX:%cog!ukxSWn)*$k:bogPmX:%coguk>GNX$*!(c$**$k:bo80 "F44tD@I<( @44ca@"Gx- `)@AAb@p 0<k  ( `H@@6E8@ ![000! *  > P @@h 8;  Df .0!8 K @T0# ).WLa4 h @"!"@"h 4,@ 8Q>`,$K D A` ! ,@bf>NX!b>W!f>W!f>W ?!f=W!b>W!f>W!f>W ?!f=W!b>W!f>W!f>W ?!f( +d@4!`d2@b`8&-``0@hc+` `   @ @ @ .Ua``0+" 4LR  f  !c`P Q@ !X@ m`5* @2 @ @X% /f`( ` !b" `HE$  0 Ai@@X"x0(` ,0!!P( ,02!NX2b*kyw#wR/ʹG>I!e>WFͣ^!bn& |:bog+++|͕>!bX!bebxSW?!bdexSW?!b( +d@4!`d2@b`8&-``0@hc+` `   @ @ @ .Ua``0+" 4LR  f  !c`P Q@ !X@ m`5* @2 @ @X% /f`( ` !b" `HE$  0 Ai@@X"x0(` ,0!!P( ,02!!be<NX!b6!be>NX!be>NX2$c2%c{ ͸*K!be>NXð#*kbxSW°#!e>$W!ikW!e͹WW!mL( +d@4!`d2@b`8&-``0@hc+` `   @ @ @ .Ua``0+" 4LR  f  !c`P Q@ !X@ m`5* @2 @ @X% /f`( ` !b" `HE$  0 Ai@@X"x0(` ,0!!P( ,02!!&aͤJ!&aR_!͹G!!bE2b:,c2Nn:Nnog:bogY\!*$k:bogPmX>PWͬ?!b4%!ͣ^!&aͽF!kf>W!ikW!Tf͹W2(  D;C*5&B@4` {,0pa A`*i !% 1\E@0؀}pPeh "(ٕH ab@P` y# B#L$  B0 kcp 00#PB  ,"@&! @04 2{ e `$А( @U %F B162UbUՂ!Rd d @h`J!f>W!ikW!~f͹WW!nLX!nCͧ3!&aͽF:1c#2*c:&cog |^#!&c~w!*c~w=#:'cog :*cogY#:*c!'cqG&$p 3} p`(6`X@TB`. C @T`hh h@ak`g'0` !P D  A 9 Pb@ , `(`` 0@ af2   `@P2 #9 qa$  $0XP(4 P$4@# `0,@ 80P8$C `0e  *L":B# <Q$`8BP8`X  xSW&!ukvkxSWE%*$k:&cogPmX:bogf>GNXð&:bu%*$k:&cogPmX:bogtk>GNXð&*$k:&cogqG&$p 3} p`(6`X@TB`. C @T`hh h@ak`g'0` !P D  A 9 Pb@ , `(`` 0@ af2   `@P2 #9 qa$  $0XP(4 P$4@# `0,@ 80P8$C `0e  *L":B# <Q$`8BP8`X  X!?ob>JX!=oͧ>!b4ã$õ**$k:&cogPmX:%cog!tkxSWV'!vkc>GNX(*$k:&cogPmX:%cog!fxSW' "" @$ [@M.: 8И@ !180 D$ 4; (@& 1000 #@  1@ pP.%C0tP310 "0 "(c0  l  B$ 0"X0 2 0'T  4AC% u  "!#GF0$  1JBA A`@ $ bp@@L   P 409 T28@@ 0 @0d Dog!cxSW*$k:bog+PmX:%cog!ukxSWn)*$k:bogPmX:%coguk>GNX$*!(c$**$k:bo "" @$ [@M.: 8И@ !180 D$ 4; (@& 1000 #@  1@ pP.%C0tP310 "0 "(c0  l  B$ 0"X0 2 0'T  4AC% u  "!#GF0$  1JBA A`@ $ bp@@L   P 409 T28@@ 0 @0d Dbf>NX!b>W!f>W!f>W ?!f=W!b>W!f>W!f>W ?!f=W!b>W!f>W!f>W ?!f "" @$ [@M.: 8И@ !180 D$ 4; (@& 1000 #@  1@ pP.%C0tP310 "0 "(c0  l  B$ 0"X0 2 0'T  4AC% u  "!#GF0$  1JBA A`@ $ bp@@L   P 409 T28@@ 0 @0d DNX2b*kyw#wR/ʹG>I!e>WFͣ^!bn& |:bog+++|͕>!bX!bebxSW?!bdexSW?!b "" @$ [@M.: 8И@ !180 D$ 4; (@& 1000 #@  1@ pP.%C0tP310 "0 "(c0  l  B$ 0"X0 2 0'T  4AC% u  "!#GF0$  1JBA A`@ $ bp@@L   P 409 T28@@ 0 @0d D!be<NX!b6!be>NX!be>NX2$c2%c{ ͸*K!be>NXð#*kbxSW°#!e>$W!ikW!e͹WW!mL "" @$ [@M.: 8И@ !180 D$ 4; (@& 1000 #@  1@ pP.%C0tP310 "0 "(c0  l  B$ 0"X0 2 0'T  4AC% u  "!#GF0$  1JBA A`@ $ bp@@L   P 409 T28@@ 0 @0d D!&aͤJ!&aR_!͹G!!bE2b:,c2Nn:Nnog:bogY\!*$k:bogPmX>PWͬ?!b4%!ͣ^!&aͽF!kf>W!ikW!Tf͹W "" @$ [@M.: 8И@ !180 D$ 4; (@& 1000 #@  1@ pP.%C0tP310 "0 "(c0  l  B$ 0"X0 2 0'T  4AC% u  "!#GF0$  1JBA A`@ $ bp@@L   P 409 T28@@ 0 @0d D!f>W!ikW!~f͹WW!nLX!nCͧ3!&aͽF:1c#2*c:&cog |^#!&c~w!*c~w=#:'cog :*cogY#:*c!'c "" @$ [@M.: 8И@ !180 D$ 4; (@& 1000 #@  1@ pP.%C0tP310 "0 "(c0  l  B$ 0"X0 2 0'T  4AC% u  "!#GF0$  1JBA A`@ $ bp@@L   P 409 T28@@ 0 @0d DxSW&!ukvkxSWE%*$k:&cogPmX:bogf>GNXð&:bu%*$k:&cogPmX:bogtk>GNXð&*$k:&cog 0 VCA! b(2@N@!1 GP0 0Pt  0pp6v,,c!Tt *() T@ (   @ q"& &(-!$$"0!F0 :C,$P<0! 4F @(  @188KD 'c9PPH )(  P `41@<!1!4@ ÐX  6! DP(!!P! "@Q1P@ "B` "!"X!?ob>JX!=oͧ>!b4ã$õ**$k:&cogPmX:%cog!tkxSWV'!vkc>GNX(*$k:&cogPmX:%cog!fxSW' 0 VCA! b(2@N@!1 GP0 0Pt  0pp6v,,c!Tt *() T@ (   @ q"& &(-!$$"0!F0 :C,$P<0! 4F @(  @188KD 'c9PPH )(  P `41@<!1!4@ ÐX  6! DP(!!P! "@Q1P@ "B` "!"og!cxSW*$k:bog+PmX:%cog!ukxSWn)*$k:bogPmX:%coguk>GNX$*!(c$**$k:bo 0 VCA! b(2@N@!1 GP0 0Pt  0pp6v,,c!Tt *() T@ (   @ q"& &(-!$$"0!F0 :C,$P<0! 4F @(  @188KD 'c9PPH )(  P `41@<!1!4@ ÐX  6! DP(!!P! "@Q1P@ "B` "!"bf>NX!b>W!f>W!f>W ?!f=W!b>W!f>W!f>W ?!f=W!b>W!f>W!f>W ?!f @;(00"0 "8 < P 0 %/(8 @$Аp4$ p!< &7#BY` p0PH !ÐT1G$"@j0P !Lp0`& Hq\!0`@@`!4@XF( <@80 "<0 !D XX p ! "$@@ @d3&A0 B( $` 0@B8 8F 2 b@@`!B,D 9B 1X NX2b*kyw#wR/ʹG>I!e>WFͣ^!bn& |:bog+++|͕>!bX!bebxSW?!bdexSW?!b 1 `0P8) ]#(0@  H+`H 0 T DQHl@x A uE,(|`68P2X HP 4`(,0@P$l00( PaF& R@@ F @0  1, R 2 F    p 0f 0 i/#2b0i 6T!P`0 G $,& ,f!be<NX!b6!be>NX!be>NX2$c2%c{ ͸*K!be>NXð#*kbxSW°#!e>$W!ikW!e͹WW!mL 1 `0P8) ]#(0@  H+`H 0 T DQHl@x A uE,(|`68P2X HP 4`(,0@P$l00( PaF& R@@ F @0  1, R 2 F    p 0f 0 i/#2b0i 6T!P`0 G $,& ,f!&aͤJ!&aR_!͹G!!bE2b:,c2Nn:Nnog:bogY\!*$k:bogPmX>PWͬ?!b4%!ͣ^!&aͽF!kf>W!ikW!Tf͹W 1 `0P8) ]#(0@  H+`H 0 T DQHl@x A uE,(|`68P2X HP 4`(,0@P$l00( PaF& R@@ F @0  1, R 2 F    p 0f 0 i/#2b0i 6T!P`0 G $,& ,f!f>W!ikW!~f͹WW!nLX!nCͧ3!&aͽF:1c#2*c:&cog |^#!&c~w!*c~w=#:'cog :*cogY#:*c!'c 1 `0P8) ]#(0@  H+`H 0 T DQHl@x A uE,(|`68P2X HP 4`(,0@P$l00( PaF& R@@ F @0  1, R 2 F    p 0f 0 i/#2b0i 6T!P`0 G $,& ,fxSW&!ukvkxSWE%*$k:&cogPmX:bogf>GNXð&:bu%*$k:&cogPmX:bogtk>GNXð&*$k:&cog 0xA H!P6` 8"R`<@`F + (! %` C('(4´ (cqH00 p Pc0 (;tH@! 8 @ ٪`P @(`: @4 2X 0@q1 (  0&p8   b g B 5  `*************************************************************** * THIS COMMAND FILE WAS CREATED BY THE NEW SCREEN BUILDER ZIP * *************************************************************** SET TALK OFF * THIS SECTION DIMENSIONS THE MEMORY VARIABLES NEEDED TO DO ENTRY * STORE " " TO NAME,ADDRESS STORE " " TO CITY STORE " " TO STATE,ZIPCODE * DISPLAY THE FIRST SCREEN * ERASE @ 1, 0 SAY "+------------------------------------------------------------------------------+" @ 2, 0 SAY "| |" @ 3, 0 SAY "| WELCOME TO THE WORLD OF ZIP |" @ 4, 0 SAY "| ================================ |" @ 5, 0 SAY "| |" @ 6, 0 SAY "| |" @  7, 0 SAY "| THIS IS THE NEW SCREEN BUILDER YOU HAVE BEEN WAITING FOR |" @ 8, 0 SAY "| FROM ASHTON-TATE. THIS WILL ALLOW THE EVEN THE HARDEST OF |" @ 9, 0 SAY "| SCREENS TO BE DESIGNED IN MINUTES. |" @ 10, 0 SAY "| |" @ 11, 0 SAY "| LET US DO A TEST TO SHOW YOU THE POWER OF ZIP. |" @ 12, 0 SAY "|  |" @ 13, 0 SAY "+------------------------------------------------------------------------------+" @ 14, 0 SAY "| |" @ 15, 0 SAY "| ENTER YOUR: |" @ 16, 0 SAY "| =========== |" @ 17, 0 SAY "| NAME" @ 17,14 GET NAME @ 17,79 SAY "|" @ 18, 0 SAY "| ADDRESS" @ 18,14 GET ADDRESS @ 18,79 SAY "|" @ 19, 0 SAY "| CITY" @ 19,14 GET CITY @ 19,79 SAY "|" @ 20, 0 SAY "| STATE" @ 20,14 GET STATE @ 20,79 SAY "|" @ 21, 0 SAY "| ZIPCODE" @ 21,14 GET ZIPCODE @ 21,79 SAY "|" @ 22, 0 SAY "+------------------------------------------------------------------------------+" READ * THIS IS HOW DBASE CALLS ANOTHER PROGRAM DO (PROGRAM NAME) * DO ZIPSCRN   !!""##$$%%&&''