IMD 1.17: 26/06/1988 2:58:42      @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  DBASE COM DBASE COMDBASEMSGCOM>DBASEAPPOVRZIP COMfghijklmnopqrstuZIP COMlvwxyz{|}~INSTALL COMPZIPIN COM9u>2 : $* wO9ß* : `6* " N: 2 ͻ* e6XyX* ~qO<: 2 * " wO9n ß: 2 ʁ! ÄJULCAL CMDJCHREPORTFRMKACCNTS DBF LMCHREPORTCMDN /}o|g  z2 'x2 : Gͧ" ! =! ! " A!Hg: Y>J2 2 ! A uß99DBASEMSCOVR !"#DBASEJOIOVR$DBASETTLOVR%DBASEUPDOVR&ZIPIN COMZEXAMPLESDOCEXAMPLESDOCEXAMPLESDOC}! !Au* +* e6uʮͻu* -" :T=o%" ͭ>2 : O* * y`6+" : 2 * " * * e6!ͻ:DATER CMDOACCNTPAYCMD PQRSCHECKS DBF TUXMENU CMDVWʑ ¶9!W9!Xr#ʟ#I#ʳuW6uI7WIruImuubrp8$uuuuu>J:DBASESRTOVR '(DBASEBROOVR )*DBASEMAIOVR7+,-./01DBASERPGOVR2345ZIPSCRN ZPRZIPSCRN CMDZIPSCRN ZIPREAD ME  * Ny!* qͻ* 6 : 2 * " n u>2 : O* 6 # D͕n u͕: J͕: J: : * *MAIL CMD XYMAIL DBF Z[MAILFMT FMT\MAILINFOCMD ]^ |* * " ͭ* ~#" O9ͤ: =2 22 99* " " ͭu͕: =c: f: J2 uß2 * * e6DBASEMODOVR678HPNSTALLCOMM9:;<=>?@ABXDEPCANCCMDCXBALANCECMDDsD  =()(*(=7 PPHLKJ&! gFx#N͆ k:.D!g e6: J: N³* * e6ʳ: ³* 6͕: 2 uy :DXCANCEL CMDEXNEWENTRCMD FGXDEPOSITCMDHCALJUL CMDI:.D!$g!*g!0g:Vi¢= * :O:2 u>@J>J͕: J͕: u: 0J͕: u: J!<g͍: G: f: 2 }6" s6" `i" ͭʌ ! 5 !5 OG2"gx? G͖4*2*Hͨ+/6 x2y N y#  ͽ  ~ ! 5/6 !5>2 9: N >9L>XTFYNtfyn.+- #9AXL!DELETED INSERT "F#7y*w*wN DIIDIIDDIDIDDI#{: o&)))}6: N* : OD2: *  s6͉4* |n: G: O* 2* " ͭ* N͆ #: * ~ }6" ~CKLf#F#}6N~@2 ͍͔!" !" 2 2 2 * ," :T=$." ͭ* #" * |: <2 `6~͐ 2 * +" * |: =2 `6~͐ 2/6 A2 O2~;] #  :3 yj y`6~ E >2W +~ W + F yj yj >2 y/< O͆ #ͤ' \ * |\  ͆ ͤ: I ^* |:Dq :9ͤu* * x6" }6" ~CʬL#F#}6N2 #F#}6g~HG> ͎6#7 ##}6g~6T 6F 4M4E*p# : ! Ϳ8O: 9L#LA3LB!8X7y56y56?_Oy! Ϳ87y! Ϳ8yP6G*  N##s6yʮʉ~€FÂQͨ+ҋ 2ɯ22*6!  *+": g~*~#~#"" }6" F#N#s6xC L x D2*͉4 *7N *x #N.,DIN#F#xw:Ø *w# XN g~w] Ͷ͓1ڃT9͖ͤ4* |ʚnâ* N!2!ï#* |N͆ #ͤ¹* " 7* w#" 9#A ! Xw&j"Ϳ5N#~2#^#V#~#F#"x2:/<.Qx2 :ͽ :_:<2*~ /6=T}6}6"! N#}6> `6~#s6y7 N x ~*w1 ~*_T/ Y/ 61 6N OG"gxq ~@X : G2 O!" " 2X #" 2 " ͭ* |g ~j ͐ 2 : 2 * " * "  >v:Ø Ͷ@1 Ͷ61 ͶZ0 DIIDIIDDIDIDDI*N#7y`6~P6&#O~56y!~&_w&~&> wO͆ #ͤ* 6#" ͍* " ͭ^" ͭu~O͆ #ͤ^~#.q~ ҄O7 }6" ~CʴL##s6g7 #NgFxH)WDp#q#s6x6+N͌6x#s6q#7 ##s6g~ p#0w#gT]Ny`6~ +  *q#7 N gN#*7i&6 9N'͕'͂+_$>'DI͇6"xʘ†yʒ~(#~)#>! *>'x66#x6Ny6C6L#" >">> xG>> > A>~(#͚~,#͚{/#"r/:~/O:/0<͐$DM:/<$+:/$+8*r/!={:n/O7*r/:n/`6*{x6!/4:p/mͬ#:/J$*{/"/~2/<g:z/}%|27~=•>#Ÿ><¿#~=ʺ>µ>> > >#~=>> #ɯ͠.xF~+#͠-x-1#.F..T.CDEFILPSTV#@$!*INT#VALLEN@TESTPEEK4STRK$!ZCHRmDATETYPETRIM*EOFFIi&Û!ͼ3;2Þ!Û!ͼ3 4n&ͼ3 gͣ4g͖4gg*͉4NͶ61*]͉4#"+~:+D.N >#7~(>#͚>~)>#7͍xtD2*>'x6͉4*>`6"7~C6¯x#~)#>~( %66$#͂6 x>%~(#x~,#s7چ~)ʂ,/*x/";{ͯ#:/g:z/ʖ$|2z/2/$={:n/7:/2/O:/2/͐$DM:/<$++*t/++7*l/"{ͯ#:/O:~/2~/*l/"x/##*l/#"l/>2/>-#͠-x-1>7xG|;GyBMxGɱM~+s#͠ڜxœʜyO> M-˜#͠LEM()!d!`*/~**/*/"/͉,*/#"/2/2/l6DM*/> `67 6x2q/y2n/2o/_!#~N#6*]#"+x7F#N#6*]#"+6 6 *]i&"*x6"*+V+^"`i"8͚*ʹ6ʮO>'x6y`6#"#7~TYFN7>*w6'#x6#"#o ~N#{È>2x~)ʾ,#x~)>#:O>.~(#͚~,#x~*/*/e6q*/#!;{:o/O7*t/:n/`6*{x6>2/*l/ͯ#*l/"j/#"l/J$*/*{/l6DM*{/+T]8#"/*j/*/x66#z#$>$ڜxœʜyO>M7x¯~*#xyxGOxG>ï/#xx=|G|x2p/!"j/#"l/J$2/!ͯ#>$/R=F1:/Fw" Pկ2z/.,"={ͅ$a#2/!";{"{*/"/*j/"x/}#:ژ960#q#p#60*DM7xxʺ7>áѷ.OR. x x7>ѷ.ANDF###N>&x6*7oB ~CA#N6*7ol ~Lk6*7͓*ʊ"͗)I,#s7"~)"{$>2x~)#:O>/#>>/ > x> ͙"á>$ ͅ$!?{:d/7B |ʵe6ʵ͌!ҡ!>$a##> z#:~/O:/O͐$DM$++:~/<$++7!/5#ͬ#!~/5!Gy Mxï7A~+<-@#IG>#IGevEͲ ~!Ϳ8s7#ͥ-/»*t/!={:n/O7*t/:n/`66#6*/#6#6>2/2~/#ͬ#>2~/*t/>2}/!?{:n/O͠$t$++}6z#"x/}#û#*/".%7%7-%7'3x+>37.NOT.ڈxW͊2xʈ:ɱ͊m~$>i#2xˆʈ:Š722~+ʤ-¦#~0ڰ:.2:¤ä >2ä:O:Hyx<ɯ~   /5ͬ#:/$={:n/O7#> z#$!={:n/O7ͬ#:~/O:/ ɷO2}/"r/a#*/"/*j/"x/}#:/ >2~/*/*r/͠$ʞ ڄ tß&:R/™&:W/œ&*/|2~/*/"/a#*j/"x/}##:/"*/#s6|ª"*/###s6!*/"/a#*j/"x/}#:/<2~/#:/#<$++s6:8"/!95WD͕'͂+-)'#-m,*/9>:WD*/"/*/> `6xv)yl)6A##}6z§)+pí)6#6})6#6 #$r ++}6z #"x/}#e ++}6zʸ #"x/}#e #s62/*/"/!>$*/ 9u!`i"v/#}6z>C+++6& &=:/2/:/!/`6s6:/2/w/!/7:/2//!/7!/:R/h':W/u'=*/!v */!v t.2/2/:/ͅ;2//ͅ;(% ą-7! "/~ [% ~#*/x6`6"/#;%*/}o|gx6ͅ;{%ą-7/!ͅ;Ø+2/ą-7"/͉,x~³+> ͈5# y¬+*/"/>2/*/*/DM:/ͅ;+*/#"/2/<,ą->2/|":/$7D!>$/+#ͅ;Å-#2/>$a###z#$x6ͬ#O!/~Z##Q#q:/*/h/ 7*/###"t/*x/"}6zʭ)ҧ))ھ)p#N͌6x6ú)##ú))ڿ)p#x6q)6>:WD͓*)x))## `&ɯN6*2c/{2d/#X/x6>$/P!6!?!*!:/?!w".,}N!O ͅ$a##}!#z#$?{:n/O>2}/͠$!=7"/"/|͉,+!/͌6/8=(#~:'+~56=(B(8B(88=( =(.=(B(8(( ((,((. (B('8(( ((7ͅ; Å-!P/͌68ʼ%/ͥ-»%9!%ҝ%ü%K&>2P/K&>2S/%K&>2T/8s7zWD9"/>2W/%>2R/!w7:m,7:/ͅ;%,,,ą-7*/:/!/7/ͅ; Y,ͅ-!"/͉,E$~,͙"ͅ'2/ɯ2/://ͅ; Å-:/*/ͅ;Å-*/~2/*x/"/://ͅ; Å-*/:/w:/ͅ;Å-*x/*/x6:~/w#"/*/*/e6$7je6)"*T]H#~) *je6#*7!Q*A) }6+N͌6͌6!"/͓*d*>:WD*/)ʐ*!`~ʇ* t*>͸P>a##!z#t$!#!z#:~/O:/ڠ!:~/<2~/$++}6#"x/>2~/#z#*/#}6z!!#$s6!>2/7ɷ,((.'B(89( 9(,9(B((=(!/`677aI(_͓*ʼ(xʀ(s(¼(:D0ʹ((ù(:0ʹ((ù(vu`i"/>2V/>2Q/:T/'&͉,+:V/2&m,:Q/E$D&*/ͅ'"ͅ':U/£&=2U/"/:P/d&Ù&:S/q&*/ß&:T/ʄ&͉,+!/!ͅ'!/͌6*/|,+*/e6,"/"/*/"/! "/!/ -,/!/,!/,*/|º,/:/ͅ; Å->Å-w# ,+~2~/+V+^"x/"/ѷ:~/*t/=O:o/W yO:$x5$G)$ E$33:/:/ͅ;Å-*/!h/ 7*/:/ͅ;Å-:o/`6!~/4:WD*/7~56*_w #~.* #P¶**S**M** +*~56*_w*P6*:*# *yͳ5*/+"/}E$a##j"z#:~/=2~/^"#j"z#:~/"=2~/*/#4"$}6#"x/}#:/2~/#:/<$++}6z:"a"#$s6s">2/7ɷ2/ͅ:/ʢ(:0ʕ((ʹ(:D0ʼ((ù(:D0ʯ((ʹ(:0ʼ((ɯ<## *)0&## *V0&!`͌6!d͌6!d6 :/> ~w# -~w+ -:/ͅ;Å--:/ */ͅ;Å-*/DM*/~j-#s6"/*/0%*/++s6"/$'>ͅ-*/DM*/> > .R40„3.~ʹ3O>..R40  3ù3>*±3!j J4'33d3 33>I2j4}o|g3 zIwx1~w4!j~2j.~722j.6@.6> 2jZ0.~1 1õ161.~=wy.R4:j=°12y 1.R4:j=22j.R41>7x8~+ 8x8t8͢8t8W`i͢8c8O8G͢8c8OT]x`6Ͳ8c8/ ͈5A[?a{?G'"[]0:?`6s6o$z{}o|g~#fos#r#^#V͎6:WD!wvuڢ-PY!v %7-#¯-##~<§-=~0-:-A-í--s6:/ͅ; -ɯ2/:/://<Wxʜ6r# Ñ6> #á6žʲ6# ¨6 G~66# ¹6y6# 6x66x296y29H6/w/<2/:/*/#"/"/- */wz,t4!jA4jA4jA4!j~@5 4 /m4.4,1.7>'w- 6"7x"7 7:9O~ 7# 7"7xO~a07_q7m7S7O~AI7_g7#87~0m7;o7Am7o7xo7DM! ƒ76#*/x6: Dw#: Dw#: Dw:/ͅ;Å-*/6#"//ͅ; Å-!z"/*/:/w#:/w#:/w#:/w#"/*/+~."/G*/ze6/5!jR4 4!jJ49 z5Y5Y5f5f5u5ʄ5S5 5͈5 w# 5>#͈5Ϳ55y 5>͈5+ 5w͈56j~.60 36-@T3/<.w> #33.~yʹ3>..F>0C3 63ù3.R40 C3ù3<.q/  x3d3.~3Ä3.~-ʂ3ͧ66 #6 ͅ; Ü9:WD:9ʷ9ʵ9ɷ9 2EC:^92EC*"9"9"9<2D99990)1.ƙw- 1.7~'w- 1.~w4.6,1!j~wZ0!jjA4.J4 .l4l1GZ0e1.4 V1.~GO.~Wy7 0گ7:ү70e6ڬ7zT])))o҃7$ƒ77 `i9_7͈5> ͈5N Y7ɷ7Ϳ5>?͈5ö7H77y8~# +~</"/xͅ; Å-ALL%NEXT%RECORD%FOR%TOP &BOTTOM&WHILE%KEY C?{y29ͳ5:9::9ʬ59ͅ;v29͢9:*DWD> ͈5> ͈5Ϳ5~͈5#55&o6&o5'66d6 ::?C2?C9 *:> 1::B:1:G::CM:xI:a>_d:O9 Z:!B4d: d:!B6O:?CyY }:!B4 _@:9Cշ@ҹ@=!QCʥ@= @~ʹ@#"FCHC7>uB!QC~@@!QC~@@> uB6#"FCHC7!"HC"JB"B*OCl6"HCè>B"B*OCl6"HCXA*@Cl6"@CH>\!\6# > ͎6͌6:D2\!]w#:>+~@2\. ?E SIZE OF THE OPERATING SYSTEM dBASE WILL OPERATE ON MOST 48K CP/M (tm) SYSTEMS THAT HAVE A STANDARD BIOS a<>uBͼ>͵><>uB͵>\B͇@>2DC*B"@CD>YB͇@2DC*B"@CD>YB͇@>2DC*B"@CD>YB͇@>2DC*B#"@CD>YB͇@z=X@DBASE OVRCʒ6Z!B6!B4:` =Ì::?Cʰ:  2B2B:B:B2:C::C9:?C2?C2Bͼ>:B2CB!:B;!C2LC>*HC!l6|*JC#"JC!"HC!͊@#}6s6"OCALB:9CG!C~ȸTA6JA*6C######6!e?w# ?:LC@'?:_ͼ>*MC:LC@2LC)):ECQ?*MC! x6}G)L*MC yʖ??qͼ>*MC<•?:DC(2k:E!9`66>͕'͂+E:D!D`6'w2D!D4ͫ.;¯F!E5;F!E5MESSAGE FILE (DBASEMSG.CO?YB!"JC"HCYB͇@2DC!"@C*B!5C"BD>*HC+"HC"BYB͇@2DCX@@A?*FC+6YB͇@*HC}|*JC}|\B͇@*BxN#F#^#Vʈ="JC~Ɠ2Vz”5ͼ>B:_/;:C /;CC7! C6!C7ͼ>C<};";C!D"=CCy;*=CZ;*;C>x!ÆA±A:ECʬA*MC!}6++x6lA:DCx>uB*OC:ECAA͌B*MC:EC$B"ڟ?*MC uB*MC p>uB!C"6C~ʿ??:9C? ë?#s6e6¿?###}6"OC6*BC "BC~?!C"BC#####~?5?#~M) CANNOT BE OPENED2 D>r: 98ʯFs7{EE E2 D98s7zF{F: DqFqF qF qFzF{ FÀF{FÀF{F`i"HCYBixg"HCz{gxo"JCYBͼ> _!QC"MC2B*MC~=^#V=*MC6:B<=2B*MC"MC=:9C͊@\s6#!~/5#>ü>2D2-D>'>26D!pDD;MAI19*:WD29C"B"B`i"B!9"B~#W6;;Y<<<<=:=<>ͼ>͵>;> uB͵>\B> uB>!QC"MC~;B@;< y GBBB*MC!}6++x65BBBGBA:LC@2LC> uB> uB*FC!HC7LB*B###*BDM*B*B:B2B*BeB:@6LB*BC~)A:9C͊@*BC###s6"OC*JCdA*JC*BC"6C:9Cw#x6##6#6^#V!\ #N@:9CG!C~ȸ€@#####6#~@6x)A2 D98gGs7zE{2 DʯF: D¯F: DFͿ5Ϳ5!FFTTT@@Ȅ@@@@@@@d\~F:#F!G5:D[DWDͿ5!F5EThiB*B>!\7*BMD͵><(>> uB!\7<\B>uB28C:8C*@C| A*@Ce6a>DM*JCͤ?*HC*OC*B:DCҔ>e6nEnE!D5INSUFFICIENT MEMORY IN SYSTEM, dBASE REQUIRES AT LEAST 41984 BYTES (0A400 HEX) OF MEMORY IN IN ADDITION TO TH<*MC;ͼ>͵><>uB:j2j;@<2B*MC!\$7YBy<2B!"HC"JC2LC*MC6#"FCYB>!QC"MC~suBx~ B BB# íB#>28Cx~ # BB>28CDBASEMSGCOM rty days hath September April, June and November All the rest have thirty one Except February ... ERROR!xG!GERROR NO DATABASE FILE IN USE, ENTER FILENAME: NOT A dBASE II DATABASE DISK IS FULL DIRECTORY IS FULL BAD FILE NAME COMMAND FILE CANNOT BE FOUND7 *** dBASE II Ver 2.  DESTROY EXISTING FILE? (Y/N) *** UNKNOWN COMMANDG~@@ʑG:#~G##~#fo5ERROR3B 22 FEB 82  FILE ALREADY EXISTS NO FIND NESTING LIMIT VIOLATION EXCEEDED DELETION(S)t FILE DOES NOT EXIST UNASSIGNED FILE NUMBER COUNT = ENTER RECORD STRUCTURE AS FOLLOWS:: RECORDS ADDED DO CANCELLED TOO MANY MEMORY VARIABLES OUT OF MEMORY FOR MEMORY VARIABLES *** END RUN dBASE II *** TO MANY RETURNS ENCOUNTERED FILE IS CURRENTLY OPEN END OF FILE FOUND UNEXPECTEDLY" FIELD NAME,TYPE,WIDTH,DECIMAL PLACES INPUT DATA NOW? & BAD NAME FIELD BAD TYPE FIELD ILLEGAL VARIABLE NAME TOO MANY CHARACTERS ENTER RECORD #,FIELD (# OR NAME),NEW VALUE+ ILLEGAL DATA TYPE RECORD OUT OF RANGE TOO MANY FILES ARE OPEN MACRO IS NOT A CHARACTER STRING RECORDS COPIEDdBASE IICOPYRIGHT (C) 1980 BY SOFTWARE CONSULTATION, DESIGN, AND PRODUCTION (SCDP) 6542 GREELEY ST, TUJUNGA, CA 910427 BAD DECIMAL WIDTH FIELD BAD WIDTH FIELD   SORTER INTERNAL ERROR, NOTIFY SCDP CORRECT AND RETRY?  NO EXPRESSION TO SUM: NON-NUMERIC EXPRESSION> "WITH" PHRASE NOT FOUND ENTER SUBTOTALS FIELD:  CHANGE FROM : CHANGE TO : RECORDS COPIED RECALL(S)~ "ON" PHRASE NOT FOUND FORMAT FILE HAS NOT BEEN SET FILE HAS BEEN DELETED ILLEGAL GOTO VALUE2 MORE THAN 5 FIELDS TO SUM *** SYNTAX ERROR *** SUBTOTALS IN REPORT? (Y/N) PAGE HEADING? (Y/N) > MORE CORRECTIONS (Y/N)? O ENTER FILENAME:  COL WIDTH,CONTENTS DOUBLE SPACE REPORT? (Y/N)  SYNTAX ERROR IN FORMAT SPECIFICATION "FIELD" PHRASE NOT FOUND3 SYNTAX ERROR, RE-ENTER CANNOT INSERT - THERE ARE NO RECORDS IN DATABASE FILE ARE TOTALS REQUIRED? (Y/N) NONEXISTENT FILE2 ENTER PAGE HEADING:  SORT COMPLETE** TOTAL ** RECORD:  REPLACEMENT(S) ENTER REPORT FORM NAME:  CANNOT OPEN FILE FORMAT FILE CANNOT BE OPENEDQ END OF FILE ENCOUNTERED END OF LOCATE SCOPE SUMMARY REPORT ONLY? (Y/N) INDEX FILE CANNOT BE OPENED "TO" PHRASE NOT FOUND** SUBTOTAL ** NO FINDPAGE NO.  ENTER HEADING: DATA ITEM NOT FOUND COORD: CORRECT AND RETRY (Y/N)?  MACRO NOT FOUND PACK COMPLETE,  VARIABLE CANNOT BE FOUND SOURCE AND DESTINATION DATA TYPES ARE DIFFERENT    SINGLE STEP Y:=STEP, N:=KEYBOARD CMD, ESC:=CANCEL WAITING 7 RECORD NOT IN INDEX INDEX DOES NOT MATCH DATABASE ENTER TODAYS DATE AS MM/DD/YY OR RETURN FOR NONE : DATE OF LAST UPDATE:  X'TGH.$*S#"S*S+"S|TG:6DTG*SͿ55>:!d"STG$:6DG*SͿ55>:>'ͦ&Ϳ+ͅ'+ÑR>$:>2)DÑR>:>2)D NO "FROM" PHRASEG KEYS ARE NOT THE SAME LENGTH#}68'‘EÖE"¡EO8EèE,E,ʻE8%F¨EE8%FE,»EE#F#}6N8dD2928,Ey,E8%F,E FLD NAME TYPE WIDTH DECE STRUCTURE FOR FILE:  RECORDS INDEXED RECORD LENGTH EXCEEDS MAXIMUM SIZE (OF 1000)R(͐%2wS8ʗH͜%ډR8ʗH*S%74H>S:>2)DÑR>2wS9!"Sx68͓*^H>:>2)DÑR8M(uH>N:>2)DÑR*Sx6"S PRIMARY USE DATABASEY SECONDARY USE DATABASE8%F*S"SkEͧ#:rS'm%ھG>'X'EEH.$*S#"S*S+"S|EE:6DEE*SͿ55>:!d"SEE QtF$hFͦ&Ϳ+ͅ'+ ENTER OPTIONS, M=LEFT MARGIN, L=LINES/PAGE, W=PAGE WIDTH ENTER SUBTOTAL HEADING: 0 *** ZERO DIVIDE *** BEYOND STRINGx698, H8HH:wS«H>D:>2)DÑR!W&X'HͧHͿ5>]:.,5Ϳ5!"S*S}6"SzHOHHͲH.*HұHÑR NUMBER OF RECORDS: DATABASE IN USE IS NOT INDEXEDÑR͂+G'2rS ,:G!0%!"S!"S~ NG"nSM(AG"pS ~NF*S6(#*nSx6*pSx660"SAG*nS ~N G*S6 ENTER SUBTOTAL FOOTING: EJECT PAGE AFTER SUBTOTALS? (Y/N) ÒDHHKMÍN(2xS2uS2vS͐%8D͜%ډR8D0S%7D9"S͕'G>2xSâD@S%7D9>2uSâDS%7‰R9>2uS2vSâDͿ+ *** OVERLAY CANNOT BE OPENED ENTER RECORD # : $'#'8I>[: 9ʑR͕'%گK͂+2rS8=I0S%7‰RpJ>:> :ͮ͌6!"SͿ5/6`i+))))ͮy!2J5#6 98 MORE THAN 7 INDEX FILES SELECTED MODIFY ERASES ALL DATA RECORDS ... PROCEED? (Y/N) &&#*nSx66#6,#*pSx660"SAG*S6&#*nSx66,#*pSx660"SAG*S"SõFu- *DM:rS',ھG: TG>'ͧ6 ! NO "FOR" PHRASE JOIN ATTEMPTED TO GENERATE MORE THAN 65,534 RECORDS|Eͅ'+E:xSeF!"S!d"S :uSʃF*S9>͕'͂+G'2rS>'u-:vSF!9:rS'm%ھGͮ"S*S~ %F ~NE#F   2Jbk͌68͓*~,‡K8>,ʹ6ʇK ҇K9! 8_CINILK>J88s7ڗK{ʗKz—K{<ʗK=98J,P!!S5 9PO8*S͙OOP!͌62S:SG7!"SP!S5!5ʠP:PʀP!QS5!5!8P>2S>P7‰R>2tS9M.,:sSN#"S"S͡+=)DM,ڂN*S͡+:tSGNu-H.JNQͧ7,*S#"S͡+H.JNͿ+#+ͦ&m,*Sͅ'ÒDÅIKLANN͐%2rQ2pQ2qQ2mQ2nQ2oQͮ7!"Q8E͜%ڥO8EP%7D"tQ9͕'sI>2rQúD|P%7[E>2pQ9!6 ,"Sͮ"}S>2yS8LL2yS: %L>*::yS‘R: ;L>V:@L>y: 9LL͍ÑR8 ڑRs7Ϳ+e6M98|qL*S"Sͅ'*S͊: :>2)DÑR>2)DÑR!RD;MAI[!W&5)"/DX'R*RҤR:6DʀD>2:ÀD:6DʀD>3:ÀD:6DʀD>]:.,5ÀD!9͐%͜%ڝ[*/D9ŸK8s7ڟK98ŸK{*S`6e6ڧK"SYI> !+t.ͦ&$>!:Ͷ7ʑR͂+#-ͦ&m,u-Q^Jͦ&t.$ÑR98͕'K͂+!͌6!QS5!5ʠP>2S>P:SP:SGʾPw#¯PP6 #¾PP*SͿ55>:͈5/6*S:S_~͈5#P7>ɯ> :R>1:m,ÑR8ʉR2zS2wS8O5S%7N98"SuډR8~N+"S#~O#F>2wSÚNNS%7‰R#98>͕'N>$:ÁR>2z"Q8͓*E>zI8M(!E>NzI*Q7!6 "Q*Q6(#x6x660"Q98,ºD8EP%7ƒE>2qQ98sP%7ºD>2oQ9/Mͮ"S*S*SQ>%LGҧL%Mx%LxLxLE$L!%LqL*S+"S|%LqLE$M͌!%LqLxMͮ*Se6ҹL"S)BEFOREBLANKCHANGE? DELIMITEDTO: FIELDFROMONRECORD SDFRECORD # TOTO dSͿ5gS8*_uڝ[`i"_6-#K#-ͮ7ͮ"S ͌6!"S*S+aKͧ~ ¤J#98͓* 8 J8 J8_CJNJLK>>K8>Pͮ"S:DQu-: ʎQ2Sͮ"S.,#*SQ>QGO:S2Sx|QxjQͮ*Se6|Q"S&Q*fS~ |Q*fS"S&Q:SSÚN:wS>P~R:zS>D~R%͂+'L#*S*S'>'!ͅ'ږO !"S!d"S$*S#"S*S+"S|{O:6D{O*SͿ55>t:!d"S+JúDP%7—E>2mQ9úDKP%7¥O>2mQ2nQ98P%7ºD98ʥO2#Q8úD:rQxI*tQ9:mQEE>͕'%͂+'2"Q:mQ)F!6#ÊL*fS~ L*fS"SÊL+%L*S#"SqLͲH.!8ʺM,%L8,ʕM:{M0ڕMs79%Lz%L{!%L+))))ͮ~%L %L"}SÕM8͓6x–SyNKCHANGE? DELIMITEDTO: FIELDFROMONRECORD SDFRECORD # TOTO dSͿ5gS8*_uڝ[`i"_6-#jS79!jSs7K{ʟKzŸK{8jS79!jSs7K{*S`6e6K"S*S"SäJ$*S6 !+:rS'-t.ͦ&#ҊQH.7Ϳ5!8S5.,#5Ϳ5*SͿ5 ͨ+>:͈5/6 9O8QQxQQ*S͙OڣQ*S"S~ ¦QH.7"fS͊!DSO:6DʖO*SͿ55>t:ÑR ~NO#y=ON#s6T]> ͎67D2#F#}6N2>:7"S V#~2S#s6"SzCPw#w#ͮ+++++7:oQ°H 9.:qQ3I>'!0%!W&!"Q!d"Q.,|IX'ʤHIͧʤH*Q#"Q*Q+"Q|ŒF:6DʌF*QͿ5*%L8M("}S%L98ʺM8ͧ6l6M8*}S͙O%LM*}SOڑR%LͲH.%L>:ÑR(2tS2sS8NS%7M>2sS9MS%-m,ÑR>:ZI>:ZI>:ZI>:ZI>u:ZI>:Ͷ7ʑR%I>:ÁR>:ÁR>:ÁR>:ÁR>u:ÁR>$:ÁR>:Ͷ7ʑR%I(.55!"{S*fS N! :T_ l6#Ry2S*{SO:U![S > ͎6*fS[S~TR#IR[S*{SDM!fSh*{S:Sg"{S*fS"fS~ R   5>#:!d"Q:pQʍG:nQ³F*DM!> ͎6! ÑG!"Q!"Q*Q~0sG#}6##"Q ~N%G#F#}6*QyF6,#:#Q,Fw#7x 7MͿ5ðO!Q"Q6 \N0M!P5*Q7 "Q6 N0M!Q"QͿ5*Q~ ]7"Q2h!]ͨ+/6ͨ+#62|>HzI8P%7¥O98C6¥Ox68ʥO%K88FK,¥O88K"Q!"Q*Q++"Qe6dK҅K}6C6*Q~{K#pK#"O*wQ"wQ9.*Q#"QH:6D3I*QͿ55>#::"Q'ͦ&:oQQI:qQjI:mQjI-*Q!6#x69.$>'ðO>$zI>D>'>2ʉO>5:*Q+"Q+:6DʰO5>6:ðO>'>2)DðO!OD;MAI&odO OO/}o|gO z\QMs6"SzCP`6:#Q,Gw#"QoG+~ G+G#"QoG#F#}6*Qy6G6,#:#Q,MG7x`6"QoG~# [GhGMGMG"QoG60#"Q F*Q6 #6 #\\Mog5#65>/͈55>/͈55Ϳ5O>:Ϳ5O\NM!P5Ϳ5ͨ+>.͈5ͨ+NQPK*Q6!͓K& |ʪK02QQQ~K #Ky2Q#~KQ |L)DðO(͐%!"|Q!"Q>A2P2Q2Q2sQ!Q"Q8͜%ڥO8ʓJP%7BJ:Q<2QK*|QDM*QuڥO>2sQ`i"|Q"Q#͇6xJ!P4**!P!!S5 9PO8*S͙OOP!͌62S:SG7!"SP!S5!DELIMITED VARIABLES USED BYTES USEDEXTENDEDFIELl6DM:"Q̈́%äHͧ:mQ¬G*DM:"Q'9.>'äH:nQG*6 #6 :"Q*DM̈́%äH!"Qͮ"Q*Q~ ʍH ~N5H#F#}6*QyG6,#:#6)6 NͿ5NMͿ5"N\1N7(͈5 ~͈5>)͈5,O 6:D2\2lQ8LP%7KL98ʥO_@2\8:L8LP%7¥O98ʥO!P>  ͎6P8*ʐLL L.ʡ s6͌6*Q6f#6*#x660"Q*Q6+#x660"Q8ʓJ,¬I8ìI9>2Q!Q"Q8ʓJ)_J1**Q~ʰO#}6"Qbk ͌68͓*8DSA:::::::::ALIKECOMMAND FILESDATABASE FILES # RCDS LAST UPDATE NoneONSDFSTRUCTURETO ????????DBFWITH#Q, Hw#7x`6:#Q,"Hw#"QH+~ .H+#H#"QH#F#}6*QyFH6,#:#Q,]H7x`6"QH~# kHxH]H]H"QH60#"Q*6~NʙN#~2(Q2vQ2)QêN#~2)Q###~2(Q>2vQ!$Q :vQ*zQ`6"zQ~ NNͿ5>\:#6:yQ5!UP5*zQ5!gP5ðO(!"~Q"QͿ+|LaڈL_8sL>?͎68.L8P*LL LaڼL_8ìL>?8>2lQLͿ5:lQL!P5!P] 7MͿ5ðO!P]798,¬I8VJ:sQJ!W&X'ʹJJͧʹJ*|Q! *JҠJ:6DJ!QͿ5 >A2P:Q°O!Q~0ʰO#}61*J>FzI>GzI$$$ SUB'&S),#0FIELD:NAMEC FIELD:TYPEC FIELD:LENN FIELD:DECN ????????DBFWITHQ"Q G*Q6 #6 #l6DM:"Q̈́%*IOFI!+QA7 9.ͮ"wQ!"Q*wQ~ I>  ~H> #H#~#~ͼO###~ͼ}O!d"QͿ+*~Qe6qOͅ'͊*~Q#"~QͧkO*Q͡+H.*Q0#*Q#"Q:6D O*Q+"Q| OͿ5*Q+5>6:!d"Q O͸ O*Q͡+ͦ&m,:6D   ~ IF ~N'!W&:H'*DM,*H* H: HO6!GF G:HF*H : HG*HF*G "GôE!"G!G"G*G98͓*"G8M(OG"G*G7*G6(#*Gx6*Gx660"G*G"G*G98,yF8 F*G6 !(2H2H2H2 H8^E:H»DG%7»D98͕'2HÐD:HDG%7D98"H͓*DG2 H9>2HÐD:H#EG%7#E98w&G*H6p#60"H*H#"H"H!"H*H~ FM(F*H6(#x6*Hx660"H*H"HéF!W&*DM!> ͎6m,ͧ~*GX' (͐%2uH2vH2tH87E͜%G87E:vHDpH%7D9͕'ڸG>2vHÐD:tHDfH%7D>2tH9"wH8͓*G98,D8D:uHG >'ͲH.:H'*DM,-GF>'*-GF:H'$>'G>$:lG>:wG>j:lG>P:lG>N:wG>k:lG>'>2)DG>2)DG!0%> 2:G' 9.>'>-m,-m,!"-*G! F*G!G :G'*DM9.>'*#"|-*FóFmG"H8͓*DG9>2H8,D8E: HwGG%7wG98wG" H8͓*DG9>2 H8,D8?E:HLG:HTG͂+'2H ,(-(-2G2G2G8,E:GDG%7D98͕'/G>2G×D:GDG%7D98ubG`i"G>2G×D:GbGG%7bG*uGFuG*HH !"HcG:uH3G*yHH ?G!H cG:sH'*DM9.>'*H#"H*HH *uGuGX'cGG*H":sHmH%7G>2uH98G"~H͓*G2{H8M(G"|H9ÐD:vHG͂+VE'2sH ,uE%͂+'2sHͮ 79.>'!0GD;MAI:8 ʣ!y Ī:8O*7"7*8{!z̘zB"|G|!|"!"|/G}/O!>! !7>{ADDFROMONREPLA,-*GóF:G'ͦ&-> 9.$>'mG>$:WG>D:WG>h:WG>i:WG>:bG>'>2)DmG>'>2)DmG!vGD;MAI :8!0%*HM(\G F#s6"H*H: HO&\G N#s6" HxdG2 H!"H"H:HGF*H"H*H98"HM(\G"H*H͓*"H*H&\GG9>2G8bG"G8͓*OG98,—D8E:G7G:G?G%͂+'2G>'-:GFͮ"G!"G!G"G*G~ ʩE*G7*G6(#'*DM9.:sH'ͦ&- 9.$>'*HͿ55>#:G>$:G>N:G>:G>D:G>N:G>'>2)DG>'>2)DG!GD;M%!"H60:tHE*wH98͓*"wH8M(G! ~NE*H6"H8&G*H6f#6,#x660"H*wH98,IF8ÖE!"H*HCED;MAI:8 ʣ!y Ī:8O*7"7*8{!z̘zB"|G|!|"!"|/G}/O!>! !7>{ADDFROMONREPLAĪ Ī*8:8 ʣ!y Ī:8O*7"7*8{!z̘zB"|G|!|"!"|/G}/O!FIELDSFORTOmG!vGD;MAI :8*H6f&#*Hx66#6,#*Hx6"H*H98~,>F8"HE*H60#"H: HʰF*H"H* H98" HM(\G"H* H͓*"H* H&\G**Gx6*Gx660"G*G "G*G "GfE>-ͮ"G*G~ yF&F*G*G7*G6(#*Gx6*Gx660"G*G "Ge6yAIg}oɯO_yW{!z,"|,"|ͪ!">OFGÿ|"6 X"|"6 ?X"|"6 W_ |"q"FIELDSONTO6G!GD;M  (> 2I2I> 2I!"I2I8E~I%7D98͓*HM(H"I9ÚDI%7DD9ÚDI%7DD9> 2I2I>2IÚDI! ID;MAI~("x ʶ27xGF#:7ªF#*7*76 ª:7G*7"7:6ă"7 :7m#:6ĩ:8A::::::::AONêDI ~PҙG:IPڿG:IʢG7~/2Ix2I͍2IH"I2I*I~ E͆GE!I4*I"IE:II%7H9͕'H>2IÚD*I|H:IH*+l6=)|;EGE xPERE>2I*I ~LH2I2I2ICƒE:I2I2I:IASCENDINGDESCENDINGTO3>28G27*7J##3&& 07COPYRIGHT 771978 SCDP ^#V*C.W.RATLIFF27&&I 0&I*0$:AON H:IPH:IH7>2I7 H?~2I*IDMI!Ih*I:I-!I͎62J7~2IÉH?~2IOy!`6x6:IOH*"I*I"I:IF*I+"I|F:I'=)DM!"I:I*I}6"I*Il69.=G:IE%F:I'$:I'$>'*FI2I:I9FͲH.E$9F!2I9F.,"I"I͊2I:I:G:IF!I6#:I/2I2I%F2I:I'ͦ&&*I+t.>-!I͎6I~ʛH#ÐH!I:I`66*IDMI!Ih*I:IC:I:IOH H:I2I:IGyH==H!I"I!I"I!`6}6s6"I"I!I |H*Ix6*Ix6ÇH:I+"I|ʽF:IG:I2IFdE*Ie6F"I>2I:I2IîDm,.,"I*I"I2IêD!I6#:IwE$ G͌!-G"I:I-G:IG:IO:I#-͂+'2I>2I:I_*Il6"I|G:IG2I:IKF*I&:Iol6KF{2I2I2I=)DM!"I:I'_,:I'_,:IʏF,F͐%!W&.,"I"I2I͊:D2I2D2I2I2I2I2I͊!"I*Iͅ'H"I2I>2I*I~ D͆GD!I4*I"ID:IG:I2IgH z>2)DI͊:I2D!$ID;MAIGF#:7ªF#*7*76 ª:7G*7"7:6ă"7 :7m#:6ĩ:8ȯ28 ʤʇHÐHʐH=AHx:I"I:IʶH!I ʶH>2I!I >2I>,:WD>+:H>:H>N:H>D:H>$:H>2)DI>2)D2I-GdE*-G*I#"I:IG:IO:I2I-GdE*I"I2IêD:I0ʃGXG:I=vG2I!I4vGH~ vG:I<2I:I=vG2I*I"I2I yF*I#"IÕF,H*I*Ix6"I`i!I4:IrFH*"I!I"I*I"I:IF:I_*Il6|HʱG"I"IF:I2IHñG:I'E*I:Ig."I!I4*D!"IH"I2I*I~ JE@HJE!I4*I"I*E:IO:IG!y=aEOxgUE"I*IIHI!Ih*Iͅ' #3>G27<2RECORD # :00000;MAIGF#:7ªF#*7*76 ª:7G*7"7:6ă"7 :7m#:6ĩ:8ȯ28 ʤ+Gu-H.ͦ& $Ϳ+ͅ'+ÀD͙H:5DʇH:2_>::2_:*_DM͸:/':6DʀD>.:ÀD:>'ÀD(>*2_L:6DʀD>':ÀD͜%ڝ[8[!W&:_WͿ+#wDJDJ DJʘJwCJ6 DJ*_*_~KJ#J~K#J9¯JwîJ~K#J9J#J60#J!~KXJKw#J#_:ÀD*_DM*_!_hÀD2_2_:5D¯H: ¯H!"_!"_O+ڝ[}2_8,K8O+ڝ[}2_22!"_8^%7I9>2_898IGF8F98F<\ͥ-¯F9~P6:G(BQ8W6sQPDOPKPKYGSCVV8WHNGG)KGKKKKKLL4MRPPP|&MX'M&MͧMrͲH.*&MM`i:6DͿ55!"_!"_^8%7N(>c:>'T'5>n:Ϳ+5>s:ͮ+++++5>/͈51:)D•[2_:DE͢9ʢD:*DGK:4DD:DD:2_>::2_:>`:Ͷ7:DD:_::_:GKE:D͵.:D>9ڕV8E#~J6 #J!"_>RÏ[: ʀD(!&KD;BRO8:>'ÀDuڝ[`i"__6,#Ns#Frx/I2_y2_>N2_MI2_yCIA2_>C2_MI2_>L2_!x`668^%7I98C6[8xʹ6ʝ[#9!0QPQQQR]RiRuRPSSSiTTTTUVUV\WXYZZZZ6[>Ï[>"Ï[>Ï[>4Ï[Ϳ58C6yG8~ʝ[#^G9l6DM ͨ+8^%75>/͈55-ʞM>l:ãM>m:>b:ͮ Ϳ5y5#6 ͨ+)6 ~͈5&6#~5&6###F~)6xM5)6~ ­MͿ5>E/wDͿ5>.͈5/6 998ʀDʀD*ʀD:-DʍE8AE_^%7HE!_4ÀD8YE:^%7gE:_€D2-DÀD8xE^%7€D:_†E>2_ÀD(!GD;8K$'#-$'#-: D'ͦ&$(2k2 Dͯ5-ÀDV^%7KZ^%7[͍ÀD(!ZD;(͐%2_`662>2_8V^%7I98K͓*K͗"_ʽI>NÏ[98Iv^%7K98C6[8xuʹ6ʝ[9!u"_`662t:_>R#98Q*>:͈5 98GK阯ʹ6¬G> >O!6'#x66*#x660A)ڀD! ÀD(81^%7G!GD;APPͿ+|Gͅ'\:#6#6)6=)5ÀD9h^%7ʰOD^%7ʹO(2_2_͐%!"_!"_8ʻN͜%ڝ[8ʻNo^%7jN>2_9DN*_DM*_uڝ[>2_`2-DÀD=2_ÀD:_EE^%7E9!"_DM͋-ڝ[8[ʀD2_ÀD^%7E2_ÀD^%7€D2_ÀD:(DF:DF:2_>:%ڝ[89L^%7[98ʝ[**"_>2_89L +LKͿ+|]L!W&X'TL]L*]LJL:6DnL>:`i5:_ʀD`iͼ3*_ *_! :_!:_NJ~(J.(J#J"_!~  i"_6-#͇6xŸNyšN6àN6áNp4#6#60"_8ʻN,DN8DN:2D-O:_-Oͮ"_*_~ -O*_6f-# ~#N###FNOCO6#6U"_^8y`698%7U98*_DM*_uڝ[`i"_N##~JUC+~JUL*_ ~\U>OÏ[*_6,#x660"_>2_8ʐU,U8)ðRD! S;MOD!ZD;O+ڝ["_8,[8O+ڝ[}*_w#"_8,*SÀD!"_!"_8ʿS?dSͿ5gS8*_DM*_uڝ[`i"_6-#Y*_ͅ'øYͳ&"ͅ'ͺ&øY.,ͅ'øYE$ʵY͌!ڊYͅ'øY+:6DʀD>]:.,5ÀD!YD;SRT!"_DMuڝ["_`i"_8^%7|Z8xʹ68A ͅ'|€D:6DʀD> :ÀD>oÏ[(͐%͜%BQ&ÀDO+ڝ[|iQͿ+e6DGT]ͅ'͊|nQÀD>/Ï[>zÏ[!"_DM͋-ڝX:ÀD8^%7W9>͕': DʯW'ͦ&$%͂+'2 D>'ÀDXW: Dͯ5ÀDX:ÀD8^%7W9<!k͌68kʹ62#6O6#p#6Op#q#q4#6#60"_*_"_N*_W&.,|ʀDX'ʤOڀD*_+"_|cO!"_>a:9ʀDͿ5:_|O.,5/6͈ͧ5:_T-^%7T9T:_U!W&X'UUͧU*_! ͳ&ͲH.!ͺ&*UҠU:6DʀD`iͿ55>::ÀD>=Ï[>>Ï[D!U;RPG6x–Sy‘S6×S6ØSp4#6#60"_8ʲS,[8gS*_! ÀDͿ5ÀD$#-$#>(:: D'ͦ&$8&!ZD;: ʀD:,9*_#N#F8***_6*#x6"_"_8͓*98LZ,[*_*_6"_8 Z:6DcZ*_*_6+#x6"_*_60*_:6DĿ5! ÀD>DÏ[€D>2-D2_ÀD(!GD;Ϳ58C6Q8~ʝ[#¬Q9l6DM ͨ+88^%7>R988Q*>:͈5 98GK!"_DMuFDXO+ڝ["DÀD:,D%X'$2,D>'X^%7]XO^%7VX>͕'͂+JX>UÏ['2,D>'ÀD25DÀD>25DÀDX8ʝ[~_@2DÀDXs7{šO:2DʚO=)DMͧ #ͨ+äO*_! *ʀD;OÀD!ZD;9!ZD;8^%7ʍP^%7 P8>͕'P8[͂+P:DP!D`68ʝ[J^%7[9>͕'͂+!V>TÏ[ͣM*#DM,͟&*DM,$>'ÀD8)^%7UV(ÀD8ʀD͓*fV>Ï[8)sV1*98ʀD,DAT'-͊:,D>9>T8T*T@8͙H>*_DM*_!_hT>'>DҀD'ʀD.,|ʀDͲH.!ÀD(͐%> 2_L:6DʀD>7[!ZD;MSC!ZD;TTL!ZD;UPD$'#8ʀD͕''[͂+"['#-m,8ʀDb^%7[98ZÀD>͕''[͂+,['L#8,R`i"_6*#͇6++x6A)CR:6D1R6+#x660Ϳ5*_! ÀD>DÏ[ÀD>0:Ϳ5Q(!GD;!fRD;JOI!"_"_@M(8~2 D98s7{2 D98s7{2 DÀDXO+ڝ[}2`ÀDX#8ʀDZÀD8^%7[988s^%7Xo^%7[>(8-Y'w2D!D4ͫ.>'ÀD>%P>&:GK:DʅP9͋-ڝ[P2_:D>98NP7^%7dP98^%77P!_47P8uP^%77P!_57PÀD[8UV'm,-ÀD:DʀD'$>'.:DV=VV2D=!D`6~2D2-DÀD2D2D2-DÀD>):ÀD8.W^%7.W9>͕'3W%͂+:ÀD85ÀD8ʝ[͕'6,8ʝ[^%7[98͕'G,ÀD(.,|U͐%!"_!"_8ʐU͜%ڝ[8ʐU8͓*T>Ï[8M([8 Z>pÏ[]#w" 1[>'m,>Ï[>$Ï[>MÏ[>{Ï[>a:9GK8ʋ[^%7[98ʝ[)f[1*** s66# [> wʉR#~R!9͐%͜%ڝ[8[!W&5)"/DX'R*RҤR:6DʀD>2:ÀD:6DʀD>3:ÀD:6DʀD>]:.,5ÀD!9͐%͜%ڝ[*/D98 Y+ Y88ʣYO+ڝ[|ʀDyfYE$QY.,"_!HY"_z0Y*_ͅ'øY͙"ͅ'øY.,l6`Yͅ'øYm,øYE$ʙY.,"_͌!ڊY"_zr.ÀD>%:ÀD>2_ÀD(!GD;>2-D2_ÀD2_ÀD2_:DʀD.ÀD:G:5DP>:͛::ÀD͊ÀD(E$+Q88C6QQ.W'2_ͣM*#DM9.͟&*DM9.ͦ&$>'ÀD>DÏ[>$Ï[8~^%7KW-ÀD^%7[>-ÀD8^ͥ-tW9XwÀDX_ͥ-[9 ͈5> ͈5ÀDÀD:[:)D[>I:Ϳ589l6M [/6ñ[>?͈52)Dr9:]GK>W:Ͷ7GKʀD>X:!5ʀD>Y:!59P:PF>B:L!T#8<'F>/F4F8>4F8>@2Pʹ6F2TO M!T6'#x66-#q#:Pw#:PG:Pw#p#602P:PwF>9:L8_:!"P!W&:PK!iQR~0ʨJ#ÜJ#N#F!M4**"P6*#x6606&#*Px66xJ6#60!R6+#*Px660ͧJX'KfL*fLEZWAIT6[CASEKENDCASEPOTHERWISEKALLANDBLANKDOELSEFILEFILESFROMSCREENGETGETSIFINDEXMEMORYOFFONPICTUREPR6 M:P‘H><:L ʝH®H*Q> 2P>H*Q#8HH8>H8>@2Pʹ6ʅHO M*P6'#x66-#q#:Pw#:Pw#:Pw#60"8[r9>Z:Ͷ7GK[19E6S6y6Ϳ6_~6{„6{STOREY?GSELSEPENDDOPENDIFD*DDOONOTEDLOOPPRELEASECVY‰F>2P M2Q:PœF>J:L8_Y¾F>2Q!M**"P2P M:QG:PF>@:L8_YF>2P M:PG:PF>?:L(2P2P2P2P2P!Y ͌6>2P2P>92P>P2P:2P2P͐%8E͜%IM8EM%7D9>͕'>2PúDM%7 E98IMM%7IMfLJ*P!iQ Ͱ::3D)KͿ5͛:)KͿ5͛:2P:PxKͿ5,M>_:*P#"P5#6!k5,M: DxK5>/͈5: D5>/͈5: D5Ϳ5,M:PIMARYPRINTSAYSECONDARYSTRUCTURETOUSINGWHILEWITHENDDOENDIFCASEENDCASEOTHERWISEBELLDCARRYDCOLONDCONFIRMDDEBUP*Qqy`6#"QxBJ:QBJ:P'I>J:L M8_YBJ*P6*#x6:P_I6f-#͂6:Pw#:Pw#6*M"P!"M! p!q6RETURNVSELECT8W@HACCEPTNGAPPENDGBROWSEKCALL)KCANCELGKCHANGEKCLEARKCOPYKCOUNTKCREATELDELETELDISPLAY4MCON MQiQuڱL:PG>L:L8_Y,G>2P M2P:P?G>g:L8YOG>2P M:P^G>e:L jGvGX> >âGX8<9>2PúDM%7IM9>2PúD:P;E>;: 98=M>͕'>2P͂+PE%͂+2P'2P2P:PfE>d:L M8E E_M™EK!TT Ϳ5,M*P!U ,M:PK,M>*͈5/6*P!Y *P!R ͧL:P#K͸:O:P#KX'LfL:P,M*P! :PL,MGDECHO(DEJECT3DESCAPE*DEXACT+DINTENSITY.DLINKAGE1DRAW2DSTEP4DSCREEN TALK6DALTERNATEWCALLXCONSOLEWDATEyXDEFAf#6*#x6:PI*P6*M"P!"M! p!q6f#6*#x660"P*P*Q6f-#͂6:P_:Pw#6#60"Q:P(J*P*TINUEREDITPEJECTPERASEPGOTO0QGO0QIFsQFINDPINDEXQINPUTQINSERTQRJOIN]RLISTiRLOCATEuRMODIFYSPACKSPOKESQUG>ʓGØG8>ØG8>@2Pʹ6RGO2X M!Y6'#x66-#q#:Pw#q#:Pw#60:PG>8:!"P!"P60!Q"Q60!U"Q60!U"P60!R"P608=IM8s7{2P2P9EL¶E8=IM8s7{2P9EWE8=IM8s7{2P9E8,E8lE:PE>A:L M8_YgF>2*fLfLͧLX'L:PK*P!R KL:PK͸:O:P#KͿ5,M>*͈5/6*P!Y *P!R KL:QʥL:Q0ʥL,M>\:ULTeXFORMATXHEADINGWINDEXXMARGINXPRINTW.EDBASE DBASEXCONSOLEWDATEyXDEFAP6f-#͂6:PG:Pw#6#6#6*#x660"P2P:P<2P:P_:P<2PH:P_:P<2P:P<2P:P<2PH:PqJ:P'ͦ&:P'$>':PITSREADSRECALLiTREMARKTRENAMETREPLACETREPORTURESETVRESTOREUSAVEVSET\WSKIPXSORTYSUMZTOTALZUPDATEZUS>2P:PHͿ5:P5#6L8aJs7{2P9~,±L8*PDM*PuڱL8±L`i"P:PzH6-#N#FxgHw#:Pw#:Pw#60"PÁH"P#͇ ,M*P!Q !M)™L1*!M5~AҐL6AͿ5:P:=M:PIM>0:H:P:R0L,M>E:,M*P!R *P!iQ :PL>2PͿ5:Pt.ͦ&#-m,L>:õL>:õL>:õL>:õL>u:õL8G>[: 9L>͕'J͂+G!cM5>2MG'2MMK%͂+'2M:D2YO6#p#6OY4#6#60"_*Y"_N*_Y|ʀDX'ʤOY_+"_|cO!Y>a:9Y:_|O.,Y͈ͧ5:_:MGx2MGELCF:M_:M!OʵE=°E"M!Sl6|EDMS!S~+ xE*M> ͎6+60ExʇF2Mx"F*M"M 98:P'$=M:P>9:P:Py9Ϳ5:POy/6 3M!FMD;MAI>2)D=M:>'T'5>n:Ϳ+5>s:ͮ+++++5>/͈5M2D:TPH> 2M!N6O#x6! N6 #6 #"M"M"M"M#"M2M*M!`l6DM*M>͎6K͊!"M!"M*M"M*MJښH##"M&o62YʚO=)DMͧY+äO*_!Y*ʀD;OÀD!Y;9!ZY8^%7ʍPY7 P8>͕Y8[͂+PYP!D`6MMe6F!M"M2M0E:M2M0E*M"MyOe68FÇF:M2M0E:M_:M!OZF=UF"M!Sl6|vFDM*M!7!S> ͎5>/͈55-ʞM>l:ãM>m:>b:ͮ Ϳ5yA::::::::AFORMPLAINPRINTTOM5&6###FYxM5)6"Y~ ­MͿ5>!Mh:M ҔHxjH͍!M"M*MJ"M:MGM!MhGG8IʤJI7KRK*M*Ml6DM*M+T]8#"M*M6 #6 5LRY!D4ͫ.>'YP>&:GK:YP9͋-ڝ[Y_:D>98Z7^%7dP9Z^%77P!_4 Z8uP^%Z_57PÀD6+60E!͌6!"M!"M!M"M*M~ gG s698ZG*M8͓*~8> ʹ6ʎG ҎG9! 8_CFNFL–G>:G\(Y6#6)6=).Y9h^%7ʰ4Y%7ʹO(2:Y%!"_!@Y8ʻN͜%ڝ[FYo^%7jN>LY9DN*_DM*RYڝ[>2_`8M%7ʛDM%7L9öG>q:Ͷ7LL(!O > ͎6!P w Dͮ7!"M!M"M!"M*M~ *E*M s6 ~EH*M##*Ml6DM*M*M##7 "M*M~RH6 #6 #6#"MRHx6JxʰI7KRK*M*Me6ҚHJ"M!M5:M jI5~H2M*M"M*M*MZ%:ÀD>2Z(!GD;$Z2_ÀD2_*Z_:DʀD0Z:G:5DP6Z%77P!_4 Z8uP^%Z_57PÀD88s7ڦG{ʦGz¦G{98:Gs7ڞG98žG{*M`6e6ڮG"M*M"M*M"MâF*M6 ͮ!7!+iXY-#͇6xŸNy^YàN6áNp4dY0"_8ʻNjY8DN:2D-pY-Oͮ"_*vY-O*_6&#x|Y ~#N###FYOCO6#6#D~L###~L*M"M*M"MD!M"M͊!"M M!Mh*M"M!"M*MDM*M"M!Mh*M"M~ ʀE*M$"M|QE e6ҧIJ"M:M<2MG:M ҡIx2Mx yI*M"MRHxI7KRK*MJ##"M~I6 #6 #6#"M5L!M4:M I4~ښH2M*M"MRHRK:1 COFIELD 02 CPFIELD 03 C,PFIELD 04 CEPFIELD 05 C^PFIELD 06 CwPFIELD 07 CPFIELD 08 CPFIELD 0 $ ATYPE "D" FOR DECIMAL OR "H" FOR HEXADECIMAL $ _D_H>2` q $b ìCOMM "M:M',xL L*M+6 #6 #6#"M*M_e6*M*Ml6e6ҦL*M:M'9.*MT] *Ml6DM7*M"NAL COMMANDS $  $ _YaZhA^!e _~#foUx~# JRJx>2d x $i M > J>2M*MJ##~)J"M:M=2MJ*M"M2MRHRK:MLJ*M"MK9J*M*Ml6DM:M'9.ͦ&$:MJ'$MK&M1'<ʀ $ OdBASE II INSTALLATION PROGRAM VER 2.7$( ] $Z k $h àARE FULL S9 CPFIELD 10 CPFIELD 11 CPFIELD 12 C QFIELD 13 C&QFIELD 14 C?QFIELD 15 CXQFIELD 16 CqQFIELD 1ANDS ARE ENTERED AS A SEQUENCE OF NUMBERS $| TYPE A CARRIAGE RETURN TO END A SEQUENCE $  $ 1 -M*M"M*M"M*M"M*M> ͧ6#"M!qM5Ͷ7ʤJ9J>a:9*E&odL LL/}o|gL z!LD;MAI>2)DL2åMODIFY EXISTING SPECS ROUTINE $ FOR THIS METHOD, YOU WILL NEED THE HEX OR $ DECIMAL CODES THAT CAN BEK6,MKG,MK6,MKG,ýJ:MJ'$:M'$&>':M2D͊L++~ J#T' >.ͧ6#"MM7O> !͎66CREEN OPERATIONS WANTED (Y/N)? $v _Yʻ2x>2 $ SELECT TERMINAL TYPE$  $  7 CQFIELD 18 CQFIELD 19 CQFIELD 20 CQFIELD 21 CQFIELD 22 CRFIELD 23 C RFIELD 24 C9RFIELD 2 DELETE A CHAR SEQUENCE $ V2 - DIRECT CURSOR POSITIONING SEQUENCE $) É3 - CLEAR AND HOME SCREEN C 7 2 7 2 7 >2 7 >2 7 2 7 >2 7 >26 26 >26%26zt:7 {=tt NEW FILEBUFFER FULL, TY SENT FROM YOUR $ LCOMPUTER TO THE VIDEO TERMINAL TO CONTROL IT $ Z $W ÈTYPE "Y" IF YOU WISH TO CON"M*M+e6K*M~.K 1K 'K> # K7y!"M:MG!Mh*M> ͢8G!P +~ bKy2M2MK*M*Ml6 A - HP 2621 $ 5 B - HP 125 $  e C - HP 87 (WITH INTENSITY) $@ Ø D - HP 85 CRRFIELD 26 CkRFIELD 27 CRFIELD 28 CRFIELD 29 CRFIELD 30 CRFIELD 31 CRFIELD 32 CS +ELD 2OMMAND $a ø4 - BRIGHT/STD VIDEO COMMANDS $ 5 - DIM/REVERSE VIDEO COMMANDS $ 6 - INITIPE Y TO SAVE, OR N TO ABORTNAME TYP LEN DECCOMMANDSTRUCTURE$$$BAK+F'͑Gö=2 7*#7~#"#7!{ (t FIELD 0TINUE $e _Y^â $ ü $ WILL YOU BE ENTERING COMMANDS AS HEX OR DECIMAL?$ "MҪKy*M`6*MDM*M7:M_*M"MK*M+`6*MDM*M+8#"M*M:MO75L*M7:M"L*M^e6K?LKT]7 (WITHOUT INTENSITY) $p æ $  Y - MODIFY PREVIOUS INSTALLATION $  Z - USER SUPPLIED TERMI ALIZATION SEQUENCE $ 87 - EXIT SEQUENCE $  j8 - RESET TO STANDARD VIDEO MODE $C Ñ9 - ALT TERMINAL, THEN TYPE "Y" $  é $  _Y!s# $   ENTER THE CHARACTER DELETE E ENTERING COMMANDS AS HEX OR DECIMAL?$v  õ $   TYPE "D" FOR DECIMAL OR "H" FOR HEXADECIMAL $  _ ENTER A ZERO IN THE PLACES WHERE $ LCOLUMN AND LINE NUMBERS GO $/ g(11 BYTE MAX) $W :d ʂ!F#ͱAT YOU WILL NEED ARE:$e  ä $  ò $   DELETE A CHAR SEQUENCE $   DIRECT CURSOR POSITIO $ =2 $ NNEXT, ENTER THE POSITION IN THE SEQUENCE $# vTHAT HOLDS THE LINE NUMBER $Y :dER SCREEN SIZE $u ß $  SELECT ITEM TO CHANGE $  ANY CHAR OTHER THAN 1 - 9 TERMINATES SESSION $SEQUENCE $  %(3 BYTE MAX) $ >! ͱ N $? --- DIRECT CURSOR POSITIONING --- $D H¯ >2` $  [ COMMANDS ARE ENTERED AS A SEQUENCE OF NUMBERS $+  Ó TYPE A CARRIAGE RETURN TO > ! :_ 2ͱ<á $ ---- DIM/BRIGHT VIDEO/REVERSE VIDEO ---- $  $ ENTER THENING SEQUENCE $  7 CLEAR SCREEN COMMAND $  ] HOME CURSOR COMMAND $B  Õ (CLEAR AND HOM ʶÙCURRENT VALUE = $ :! :_ 2ͱ—ß $ ENTER THE COMMAND THAT WILL SWITCH TO $ LOW INTENSITY OR REVERSE VIDEO $ $  7 TYPE "Y" IF YOU WISH TO CONTINUE $  _Y^Q $N  k $\  ç WILL YOU BLUE = $v :/Û $ 2ó $ NOW ENTER THE SKELETON FOR THE DIRECT CURSOR $ $COMMAND. SENT FROM YOUR $ L COMPUTER TO THE VIDEO TERMINAL TO CONTROL IT $  Z $W  Ö THE CODES (OR SEQUENCES) THR THE POSITION IN THE SEQUENCE $u THAT HOLDS THE COLUMN NUMBER $ :d CURRENT VALUE = $ :! :_ 2ͱ•R $K Ã---- CLEAR AND HOME COMMAND(S) ----CTION $` ùDIALOGUE IS TO BE USED OR ANY OTHER $ KEY IF NO DIALOGUE IS WANTED :$  2 ÞENTER THE SCREEN WIDTH $ :d CURRENT VALUE = $ :/ $ 2 $ $NEXT, ENTER CE : $ x~/  $ #:` VRDƐ'@'_;o&Pu ILLEGAL PARAMETER$a $Z óLEAVING THE FULL-SCREEN EDITING MODE $  $ SUGGESTION: USE DIRECT CURSOR POSITIONING $  "b 2a 2_  $ >ENTER CONTROL CODE BYTE $$ :_ &2>2ò DBASE.COM FILE IS NOT ON THE DEFAULT DRIVE $ DBASE COM _YCURRENT SEQUEN4TO PUT CURSOR ON THE BOTTOM LINE OF THE SCREEN $ O(11 BYTE MAX) $? :d j!F#ͱ> ! :_ 2ͱE| *b ~/Ó $ ڽʨ*b w*b #"b !_ 4!a 5ʽ $  $ :_ !s#  >:ʬ:$ *LEFT CORNER OF THE TERMINAL $  E(11 BYTE MAX) $5 :d `!F#ͱ> ! :_ 2ͱH $ B - CDOS SYSTEM $ ù C - CROMIX SYSTEM $  D - MP/M II SYSTEM $  $  $ 22Ï $ Ý $ ENTER A CHARACTER TO BE USED FOR $ INDICATING MACROS OR A RETURN FOR $ CE : $ x~/  $ #:` VRDƐ'@'_;o&P I;%;% '' ~ $ üENTER THE COMMAND THAT WILL SWITCH TO $ STANDARD INTENSITY OR NORMAL VIDEO $ *TO RESET Y:` H6!G_0' O))))  }u|u<}f0 ?))) O O!K}|u<}{ $x x ñENTER THE COMMANDS TO BE ISSUED WHEN $ ENTERING THE FULL-SCREEN EDITING MODE $ (IF ANY) $ _A6BC&D1>26>226>2B $9 ÀTYPE "Y" TO SAVE, ANY OTHER KEY TO ABORT INSTALL $*DEFAULT CHARACTER OF AMPERSAND (&) :$  A2G $D U $R ÈTYPE A RETURN IF THE ERROR CORRE~~~~~~PP   =()(*(=7 THE SCREEN AFTER FULL SCREEN OPERATIONS $ D(5 BYTE MAX) $5 :d _!F#ͱ>! :_ 2ͱz $w áERROR IN INPUT, RE-ENTER $ !7ù $ IS THIS CORRECT (Y/N) $ _YCURRENT SEQUEN(11 BYTE MAX) $ :d 0!F#ͱ> ! :_ 2ͱuO $H ÁENTER THE COMMANDS TO BE ISSUED WHEN M _Yú SAVING INSTALLATION PARAMETERS $ :22 ABORTING INSTALLATION $ PPHLKJ  XYKHX7Y PP   YpqPP   YEY7 PP  ( deposits to cancel? (Y/N)' to ANSWER IF .NOT.ANSWER RETURN ENDIF ENDDO RETURNY7 PP   =())=7 (P splay date and amount of deposit * MAKE SURE THIS IS THE THE RIGHT ONE DISP OFF 'Deposited on ',DATE,' Amount = ',AMqEqY7 PP  ==7 P(?PP   Y0A Y7 PPHPP   Y Y7 T INPUT ' Cancel this one? (Y/N)' TO ANSWER * - ask if deposit is to be cancelled IF ANSWER * - chaP   =()((=7 PP   =LKJ  ==7 PP   =C0 C4 C0 *NOTE - BALANCE COMMAND FILE TO BALANCE CHECKBOOK * SUM AMT TO OUTSTAND FOR .NOT.CAN.AND.NO>0 SUM AMT TO T:OUT FOR .NOT.CANPP     PP   =(nge logical flag for cancelled deposit REPLACE CAN WITH T ENDIF ELSE * END OF FILE ? * - tell us=7 PP   .P0P note - DEPOSIT CANCELLATION PROGRAM * * - position to top of database file GO TOP DO WHILE T * - find first uncalcelled C0 =7 PP   =*=7 PPHLKJ.AND.NO=0 ? ? * - display total of outstanding checks DISP OFF ' TOTAL OUTSTANDING CHECKS = $',OUTSTAND ? * )((=7 P P &a000y000C&dB&d@&d@ HJH &a23y1Cer there are not more deposits ? 'No more uncancelled deposits' RETURN ENDIF * IF NOT EOF ? INPUT 'Any more  ="!""=7 PP   Y deposit LOCATE FOR NO=0.AND..NOT.CAN NEXT 65535 * - if not at end of character field IF .NOT.EOF ? * - di - display total of outstanding deposits DISP OFF ' TOTAL OUTSTANDING DEPOSITS = $'T:OUT ? * - request ending balance fors check is not in file. DISP OFF 'Check ',C:CAN,' cannot be found' ENDIF ENDDO RETURN search for cancelled check number LOCATE FOR C:CAN=NO * - testing to see if at end of database file IF .NOT.EOF FICE SUPPLIES P - POSTAGE' @ 16,0 SAY 'R - RENT T - TELEPHONE X - TAXES' @ 18,0 SAY 'ENTER PURP SAY 'IF CHECK NUMBER=0, ENTER CARRIAGE RETURNS FOR OTHER ENTRIES' @ 7,0 SAY 'CHECK NUMBER ' GET M:NO @ 8,0 SAY 'm check book INPUT "ENTER ENDING BALANCE FROM BANK STATEMENT" TO BEGIN DISP OFF 'CURRENT BALANCE = $',BEGIN+T:OUT-OUTSTAND WANOTE - EXTENDED NEWENTR COMMAND FILE TO ENTER NEW CHECKS * * - clear screen ERASE * - position to bottom of database fi* - if not at end of file ? * - display check data DISP OFF 'Payed to ',TO,' on ',DATE DISP OFF 'AmounOSE LETTER' GET CH:MEMO READ IF M:NO=0 RETURN ENDIF * - put blank card into database file APPEND BLANK *NOTE - CANCELS COMMAND FILE TO ENTER CANCELLED CHECKS * * - message to be displayed on screen REMARK ENTER CHECK NUMBER OPAY TO THE ORDER OF ' GET CH:TO @ 9,0 SAY 'AMOUNT OF CHECK ' GET M:AMT @ 10,0 SAY 'DATE WRITTEN ' GET CH:DAT PIT RETURN le GO BOTTOM * - initialize date STORE '01/01/81' TO CH:DAT DO WHILE T * initialize memory variables so that READ will ht of check is ',AMT * - ask if this is right check INPUT 'Is this the one? (Y/N)' to ANSWER IF ANSWER  - 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,MEMF 0 TO EXIT * - loop while check number not equal to zero DO WHILE T ? INPUT "ENTER CANCELLED CHECK NO" TO C:CAN * ICTURE '99/99/99' @ 11,0 SAY 'PURPOSE OF CHECK' @ 13,0 SAY 'A - ADVERTISING B - BANK CHARGES C - CAR + TRUCave a length to mark STORE ' ' TO CH:TO STORE 0.00 TO M:AMT STORE ' ' TO CH:MEMO STORE  * - change logical flag for cancelled check REPLACE CAN WITH T ENDIF ELSE * - message to tell user hiO WITH !(CH:MEMO) ENDDO  - testing for zero check number IF C:CAN=0 RETURN ENDIF * - position to top of database file GO TOP * - K' @ 14,0 SAY 'D - DUES + PUBLICATIONS F - FREIGHT I - INSURANCE' @ 15,0 SAY 'L - LEGAL EXPENSES S - OFNO+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  O 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 OGO * - test for correct data IF .NOT.GO:NOGO LOOP ENDIF * - put blank card into database file APPEND BLAN 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 DTORE '01/01/81' TO C:DAT DO WHILE T ? ? * - reading deposit entries INPUT "Amount of Deposit " TO C:A ENDIF ENDIF ? ' START DATE = ' ?? DATE RETURN K * - put deposit data into database structure REPLACE NO WITH 0,TO WITH 'DEPOSIT',AMT WITH C:AMT REPLACE DATE WITH C:ATE =' ?? DATE IF ANSWER SET PRINT OFF ENDIF RETURN MT * - if deposit amount equals 0, exit command file IF C:AMT=0 RETURN ENDIF STORE C:DAT TO OLD:DATE * - DAT,CAN WITH F ENDDO 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 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 IACCEPT '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 T ' STORE OLD:DATE TO C:DAT ENDIF * - ask if all fields are correct INPUT "ARE ALL FIELDS CORRECT ? " TO GO:NF 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 TONOTE - DEPOSIT COMMAND FILE TO ENTER NEW DEPOSITS * REMARK ENTER DEPOSIT AMOUNT OF 0 TO EXIT * - initialize date value S  3T SMITH OFFICE RENTAL 234.56801201800613 5.00R 1F HURTZ BUSINESS CAR LEASING INC 300.0080072IPNAMECrAMTN rDDATECrLDATECrLAMTNrTYPEC rPERIODNrVARIABLETYPEC XPERIODNXVARIABLELX  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)0800529 20.00C 1F PRESSURE ADVERTIZING AGENCY 500.00800823 0.00A 1T TIDY LAUNDRY Lr +'/'+$(DATE,5,2)+'/'+$(DATE,1,2) DATE;WRITTEN 12,AMT >AMOUNT Y  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  NOTE - report on the checks in a database * - this dBASE II system uses the database file generated by the * - check balanci INPUT 'Enter number of times you want iterval' TO TOT * - initialize counter INPUT 'Do you want output to printer? (Y/N)' TOR(27)+CHR(52)+CHR(48)+CHR(50)+CHR(50) * - turn off echo SET PRINT OFF * - echo output to console SET CONSOLE ON * - set - index on variable MEMO in database file INDEX ON MEMO TO &DBNAME * - enter title to be printed at top of each output page F CODE TO SET UP AN ANADEX PRINTER FOR' ? ' PRINTING CHECKS. USE YOUR TEXT EDITOR TO MODIFY THIS FOR YOUR' ? ' PRINTER. ' ng system initiated by XMENU. This check report * - system reads the XMENU data base and report the subtotals for * - each ANSWER STORE 1 TO CNT IF ANSWER SET PRINT ON ? ' START DATE = ' ?? DATE SET PRINT OFF ELSE ? ' START DATEloop variable true STORE T TO STAY * - request current date ACCEPT "Enter Today's Date (YYMMDD)" TO TODAY * - ask for begACCEPT 'Enter report title (up to 60 chars)' to TITLE * - set header to title value SET HEAD TO &TITLE * - generate report * - turn off printing commands to screen SET TALK OFF * - send results of @ statements to printer SET FORMAT TO PRINT * - of the various user memos. * * note: uses database with structure same as XMENU * ? 'THIS PROGRAM IS SET TO RUN ON YOUR PRI = ' ?? DATE ENDIF DO WHILE CNT<=TOT * - increment date STORE X+DELTA TO X DO JULCAL STORE 1+CNT TO CNT Linning check number for this run INPUT 'Enter Beginning Check No. ' TO NNO * - ask for disk drive with database files Aform using CHREPORT.FRM REPORT FORM CHREPORT FOR NO#0 TO PRINT RETURN  echo output to printer SET PRINT ON * - turn off console SET CONSOLE OFF * - go to top of page on printer EJECT * - thNTER. IF PRINTER IS NOT READY' ? ' THE PROGRAM MAY HANG UP.' * - enter name of database file from XMENU ACCEPT 'Enter check NOTE - THIS IS THE ACCOUNT PAYING COMMAND FILE * * * - explanatory text ? 'THIS PROGRAM USES THE PRINTER. IFOOP ENDDO CCEPT 'Enter Data Disk Drive ' TO DRV * - set system default to database disk drive SET DEFAULT TO &DRV USE CHECKS NOTE - DRIVER program for date calculation SET TALK OFF DO CALJUL INPUT 'Enter interval in days between dates' TO DELTA ? ?is is the ANADEX 9500 text * SET FORM LENGTH TO 22 LINES ON ANADEX 9500 * ESC 4 022 * - create ASCII string of esc4022 ? CHdatabase name' to DBNAME * - assign data basefile to this command system * - database has name of xxxx.DBF USE &DBNAME *  YOUR PRINTER IS NOT READY IT' ? ' MAY HANG UP AT THIS POINT. 5 LINES FURTHER DOWN IN THIS FILE' ? ' YOU WILL FIND A SECTION O * - select primary database file SELE SECO USE ACCNTS * - set up program loom DO WHILE STAY * - select secona * - show user on screen proposed check values DISP OFF 'Check #',XNO,' Pay ',XAMT,' To ',NAME * - ask if you want to pAMT TO MAMT ENDIF ELSE * - user option on amount to pay this time INPUT 'Enter Amount To Pay '@NONlTOClAMTN lCANLlDATEClMEMOC m ENDIF * - check to see if writing check not in ACCNTS IF ACCNT=0 * - request data for check ACCEPT 'Enter PaY,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 INry file ACCNTS SELECT SECONDARY ? ? * - list data from ACCNTS LIST PNAME,S.AMT,DDATE ? ? ? ? ' ENrint 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) * TO MAMT ENDIF IF PERIOD>0 IF (VAL($(DDATE,3,2))+PERIOD)>12 STORE VAL(DDATE)+((88+PERIOD)*100) yee ' TO NAME INPUT 'Enter Amount ' TO MAMT ELSE * - locate account number in ACCNTS file GOTO ACCNT T(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 NTER OPTION YOU WANT' ? ' -1 - EXIT' ? ' 0 - WRITE CHECK TO ACCOUNT NOT IN DATABASE' ? ' N  - select primary file SELE PRIMARY APPEND BLANK * - put check data into primary file REPLACE TO WITTO NDATE ELSE STORE VAL(DDATE)+100*PERIOD TO NDATE ENDIF REPLACE DDATE WITH STR(NDATE,6)  * - store payee name to variable NAME STORE PNAME TO NAME * - is check hasn't been canceled IF .NOT.VARIA T S' @ 20,12 SAY 'Type: ' @ 20,18 SAY TYPE @ 20,41 SAY '----------------------------------------' EJECT ENDIF ENDDO RETU- NUMBER OF ACCOUNT TO WRITE CHECK FOR' * - ask for account number to print check for INPUT 'Which Account' TO ACCNT *H NAME,NO WITH NNO,AMT WITH MAMT,CAN WITH F REPLACE DATE WITH TODAY,MEMO WITH TYPE STORE NNO+1 TO NNO * NOW PRINT C ENDIF ENDIF * - store variables to be printed on check STORE STR(NNO,4) TO XNO STORE STR(MAMT,10,2) TO XAMT BLE * - check to get amount still owed STORE S.AMT TO MAMT IF TODAY>=LDATE STORE S.AMT+LRN  - check to see if exit IF ACCNT<0 * - set loop variable false to exit program STORE F TO STAY LOOP HECK ON PRINTER @ 3,67 SAY 'Check No.' @ 3,77 SAY XNO @ 5,67 SAY 'Date:' @ 5,73 SAY $(TODAY,3,2)+'/'+$(TODAY,5,2)+'/'+$(TODA  101MITCHELL OFFICE SUPPLY 77.34F04/07/80O 102POSTMASTER 22.41F05/07/80P * - enter user database file name ACCEPT "Enter check database name" to DBF * - access database file USE &DBF * - specifncelled checks CASE ACTION='3' * - enter cancelled check data DO XCANCEL * - test for cancelled depo 1001SMITH OFFICE RENTAL 239.56F811130 R 1002HURTZ BUSINESS CAR LEASING INC 320.00F811130 C? ' 4 - ENTER CANCELLED DEPOSITS' ? ' 5 - BALANCE' ? ? ' ENTER DESIRED ACTION' * - reading user respo 103FIRST NATIONAL 55.10F05/07/80B 104Newton Physics Labs 1000.00F01/01/81Zy disk containing command files ACCEPT "Enter disk drive containing command files as 'A:' or 'B:'" to DISK SET DEFAULT TO &DISsits CASE ACTION='4' * - enter cancelled deposit data DO XDEPCANC * - test for balancing check book  1003PRESSURE ADVERTIZING AGENCY 500.00F811130 A 1025SMITH OFFICE RENTAL 239.56F811130 Rnse WAIT TO ACTION DO CASE * - testing to exit CASE ACTION='0' SET TALK ON * - return to dBASE s 105Harvey Mudd 169.34F01/01/81D 106SHYSTER LEGAL CLINIC 333.22F01/05/81LK * - 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 CASE ACTION='5' * - compute ending balance DO XBALANCE * - non-valid entry to the menu OTHERWISE 1026CLIPUM MOTORS 123.45F811130  DO WHILE STAY SELECT SECONDARY ? ? LISTystem CANCEL * - test for new checks CASE ACTION='1' * - enter new check data DO XNEWENTR  108TIDY LAUNDRY 40.00F01/25/81J 108PRESSURE ADVERTIZING AGENCY 500.00F01/25/81A WHILE will be terminated by a CANCEL command internally ? ? ? ? ' CHECK BOOK BALANCER MENU' ? ? ' NOTE - EXAMPLE dBASE CHECK BALANCER COMMAND FILE PROGRAM * * * - turn off display of commands to screen SET TALK OFF  ? 'Invalid entry, re-enter' ENDCASE ENDDO RETURN  * - test for new deposits CASE ACTION='2' * - enter new deposit data DO XDEPOSIT * - test for ca 109SMITH OFFICE RENTAL 239.56F01/25/81R 110MUNICIPAL WATER DEPARTMENT 5.45F01/25/81U 0 - EXIT' ? ' 1 - ENTER NEW CHECKS' ? ' 2 - ENTER DEPOSIT' ? ' 3 - ENTER CANCELLED CHECKS'   IF ACTION='3' * - print form letter to names in MAIL.DBF DO MAILLTTR ENDIF ENDDO RETURN ew entries' ? ' 2 - Make Labels' ? ' 3 - Write Letters' ? ? ' enter desired action' * - wt?~p!s 1Jones John J. Micro Enterprises 1234 Chip Road Silicon CA90002 The user can use the dBASE commands EDIT and/or * - DELETE to modify the database file MAIL.DBF to change the * - mailingxTITLENlNAMEClOFClADDRClCITYCmSTATECmZIPCm ait for user response WAIT TO ACTION * - test for exit IF ACTION='0' SET TALK on CANCEL ENDIF  1Jones John J. Micro Enterprises 1234 Chip Road Silicon CA90002 1Brown list. * * - turn off display of commands to screen SET TALK OFF * - assign database file to command stream. USE MAIL * NOTE Example dBASE Command file program * * - this is a sample form letter generator and mailing label * - dBASE II system * - test for new entries IF ACTION='1' * - add new names to MAIL.DBF DO MAILENTR ENDIF * - test  Thomas 1234 West Winchester Dr. Boston MA10024 1Pixler J - enter current date to print on form letter ACCEPT 'Enter date as mm/dd/yy' TO DATE * - select system option DO WHILE T . The system allows the user to add new * - entries to a mailing list, print the mailing list on gummed * - labels or printo make labels IF ACTION='2' * - print mail labels DO MAILLAB ENDIF * - test to write form letters oseph W. 1125 Singing Meadow Rd Diamond Bar CA91710 2Franklin Josephine ? ? ? ? ' Form Letter Writing System' ? ? ? ' 0 - EXIT' ? ' 1 - Enter n:r=5p=8o*p!^t#p6*p6:^topXp!_t4:s=>2_toXp~Gp5>Åoo!^t~4:r=:_t a form letter addressed to all the people * - in the mailing list. No provision is made to modify the * - mailing list.  12 Country Club Dr Cucamonga CA9l733 1Mason James P. ANK to exit entry program' @ 6,1 SAY ' After BLANK, enter carriage return for entries' @ 7,1 SAY 'Enter title code ' GETfor different' ? 'states, then this condition can be checked and the appropriate action' ? 'can be taken.' ? ? ? ' hen modified to become a command file. The modifications' ? 'are: placement of question marks at the beginning of each li 2245 Freeman Dr. Pomona CA9l876 1Taxpayer John Q.  MTTL @ 8,1 SAY 'Enter Surname ' GET MSNAM @ 9,1 SAY 'Enter other names ' GET MGNAME @ 10,1 SAY 'Enter Co. name  Yours truly' ? ? ? ? ? ' Mike R. O.ne and' ? 'enclosing the text in single quotes or square brackets. In this way,' ? 'each line of text is written to th 1277 N San Bernadino Rd Chino CA9l710 4Soda Scotch N. Temperance Soci ' GET MOF @ 11,1 SAY 'Enter Address ' GET MADDR @ 12,1 SAY 'Enter City ' GET MCITY @ 13,1 SAY 'Enter St Chip' ? ? 'Example:' ? IF STATE='CA' ? 'California residents add 6% sales tax' ENDIF RETURN e ALTERNATE file by means of the SET' ? 'ALTERNATE commands in MAILLTTR.CMD (which calls this command file).' ? ? 'The textety 4800 Hallaluh Dr. Las Vegas NV82345 ter Dr. Boston, MA 10024 NOTENOTE - THIS IS THE TEXT FOR THE USER FORM LETTER * * - the text presented here describes how to generate the * - letter. ate ' GET MSTATE @ 14,1 SAY 'Enter ZIP code ' GET MZIP @ 1,1 SAY ' 1 = "Mr."' @ 2,1 SAY ' 2 = "Mrs."' @ 3,1 SAY ' 3 = "Ms."' @ 4,1 SAY ' 4 = "Dr."' @ 5,1 SAY ' BL of the letter can be altered based on the database data fields.' ? 'For instance, if the content of the letter should change The user will put in own text. ? 'This is the body of a form letter. It was first written with a word' ? 'processor and t '+DATE * - print name and address of client ? $(NAME,13,18)-(' '+$(NAME,1,12)) IF OF#' ' ? OF ENDIF ? ADDR IF VAL(ZIP)TCH, PAGE OFFSET, LINE HEIGHT, AND FOOTNOTES * EXAMPLE: * ? '.OFFSET = 8' * ? '.CHARACTER WIDTH = 12/INCH' * etc. * - priNOTE - MAIL SYSTEM NAME AND ADDRESS ENTRY PROGRAM * * - move pointer to bottom of MAIL.DBF GO BOTTOM * - send output of @ RN =0 ? CITY-(', '+STATE) ELSE ? CITY-(', '+STATE)-(' '+ZIP) ENDIF ? ? * - print salutation IF TITLE=1 ? 'Dear Mr. nt letter DO WHILE .NOT.EOF ? ' Your Company' ? ' commands to MAILFMT.FMT SET FORMAT TO MAILFMT * - read name and address data DO WHILE T * - initialize address variableNOTE - THIS COMMAND FILE WRITES THE FORM LETTER * * - position pointer at top of MAIL.DBF GO TOP * - sets up to store ever'+$(NAME,1,12) ENDIF IF TITLE=2 ? 'Dear Mrs. '+$(NAME,1,12) ENDIF IF TITLE=3 ? 'Dear Ms. '+$(NAME,1,12) ENDIF IF TIT 8080 Micro St.' ? ' Silicon, CA 93002' ? 's to blank STORE ' ' TO MTTL STORE ' ' TO MSTATE STORE ' ' TO MZIP STORE ' ' TO MSNAM,MCITY STORything that appears on the screen into * - a file called PRINT.TXT which the user can later list using * - his work processoLE=4 ? 'Dear Dr. '+$(NAME,1,12) ENDIF ? * - print text of letter DO MAILINFO * * PUT A WORD PROCESSOR COMMAND TO SKIP  (213) 555-1234' ? ' E ' ' TO MGNAME STORE ' ' TO MOF,MADDR * - read format file READ * r. SET ALTERNATE TO PRINT SET ALTERNATE ON * PUT PRINT FORMATTER SETUP DIRECTIVES HERE, SUCH AS PAGE NUMBERING, * PRINTER PITO THE NEXT PAGE HERE * EXAMPLE * ? '.SKIP' * - this is a wordstar page skip ? '.pa' SKIP ENDDO SET ALTERNATE OFF RETU   - check to see if ready to exit this command file IF MTTL=' ' RETURN ENDIF * - combine first and last name and s *************************************************************** SET TALK OFF * THIS SECTION DIMENSIONS THE MEMORY VARIABLES  * - print city, state, zip DISP OFF $(CITY,1,20)-(', '+$(STATE,1,2))-(' '+$(ZIP,1,5)) ? ENDIF ? SKIP . |" @ 10, 0 SAY "| |" @ 1- echo printed information to screen SET PRINT ON * - position to top of MAIL.DBF GO TOP * - print labels DO WHILE .NOT.E ================================ |" @ 5, 0 SAY "| tore STORE MSNAM+MGNAME TO MNAME * - add blank card to MAIL.DBF APPEND BLANK * - store name and address data to MNEEDED TO DO ENTRY * STORE " " TO NAME,ADDRESS STORE " " TO CITY STORE " ENDDO * - turn off echo of labels SET PRINT OFF REMARK ALL DONE RETURN 1, 0 SAY "| LET US DO A TEST TO SHOW YOU THE POWER OF ZIP. |" @ 12, 0 SAY "| OF * - print name DISP OFF $(NAME,13,17)-(' '+$(NAME,1,12)) * - checking to see if office address IF OF#' '  |" @ 6, 0 SAY "| |" @ AIL.DBF * - substitute input variables for database file variables REPLACE TITLE WITH &MTTL,NAME WITH MNAME,OF WITH MOF,A " TO STATE,ZIPCODE * DISPLAY THE FIRST SCREEN * ERASE @ 1, 0 SAY "+---------------------------------------------------- |" @ 13, 0 SAY "+----------------------------------------------------- * - print office name DISP OFF OF * - print address DISP OFF ADDR * - print city, state, zip  7, 0 SAY "| THIS IS THE NEW SCREEN BUILDER YOU HAVE BEEN WAITING FOR |" @ 8, 0 SAY "| FROM ASHTON-TDDR WITH MADDR REPLACE CITY WITH MCITY,STATE WITH !(MSTATE),ZIP WITH MZIP ENDDO RETURN --------------------------+" @ 2, 0 SAY "| |" @ *************************************************************** * THIS COMMAND FILE WAS CREATED BY THE NEW SCREEN BUILDER ZIP *-------------------------+" @ 14, 0 SAY "| |" @ 1 DISP OFF $(CITY,1,20)-(', '+$(STATE,1,2))-(' '+$(ZIP,1,5)) ELSE * - print home address DISP OFF ADDR ATE. THIS WILL ALLOW THE EVEN THE HARDEST OF |" @ 9, 0 SAY "| SCREENS TO BE DESIGNED IN MINUTESNOTE - THIS COMMAD FILE PRINTS MAILING LABELS ON THE PRINTER * REMARK WHEN LABELS ARE IN PLACE, HIT CARRIAGE RETURN WAIT *  3, 0 SAY "| WELCOME TO THE WORLD OF ZIP |" @ 4, 0 SAY "| ! 5, 0 SAY "| ENTER YOUR: |" @ 16, 0 SAY "| =========== ͣ^RʹG*kWFͣ^>2b:bog |3!b4áy>!&a>]!`>]G!(lc>L=X!&lC͕>!b |3!b42$c2%c{ ͸*:3c :$c!*c2&c:,cog:&cogͶ>}2,c:$c2(c:%c2)c>2$c2%c{ RʹGI! bE!LS ANOTHER PROGRAM DO (PROGRAM NAME) * DO ZIPSCRN NX*k !wk>GNX*k !tk>GNX*k !uk>GNX*k>WU2yk*k/nb*k;nbͶ>}2+c:+cog*kGnbͶ>}2+c:+co |" @ 17, 0 SAY "| NAME" @ 17,14 GET NAME @ 17,79 SAY "|" @ 1X!b>W!c>W!c>W ?!c=W6:'cog |2$c2%c{ 2b:,c2ul:ulog:bogYRʹGI*$k:bogPm/TBMEQSVH@#.-DI5NPAK_FL= ABCD wd>Wͬ?:&cog>_Vͬ?!zd>Wͬ?:)cog>_Vͬ?!c>Wͬ?ͣ^:(c2$c:)c2%c{ ͕>!bX!b>W!-c>Wk?|̓ } !bn&g*kSnbͶ>}2+c*kSKWW*kGKWW*k;KWW*k/KWG͹WWW!-cX!&kc>CGNXR ʹG*k8, 0 SAY "| ADDRESS" @ 18,14 GET ADDRESS @ 18,79 SAY "|" @ 19, 0 SAY "| CITY" @ 19,14 GET CITY @ 19,79 SAY "|" @X>PWFͣ^!b4N>2b:bog |RʹG>I*$k>PWFͣ^!b4ÚRʹG*kkWFͣ^RʹG*kWFCOPYRIGHT 1982, PAWLUK CORPORATION5455 Wilshire BoulevardLos Angeles, CA 90036(213) 937-0551^#VN#F!}~#z'_! |}} !bn& |!bn& |3!bn& |”:%cog:ykogPYY:%cog:ykogX}2b:bog |Y3!b412$c2%c{ RʹG>I!bE!c>W 20, 0 SAY "| STATE" @ 20,14 GET STATE @ 20,79 SAY "|" @ 21, 0 SAY "| ZIPCODE" @ 21,14 GET ZIPCODE @ 21,79 SAY "|ͣ^>2b:bog |03!b4y>F!bc>NX!}Y"k!{k!Y"$k2b:bog |*$k:bogPa>]F!4c>*W!ikͷW!kLX!kC͕>!bX!b^c>NX!zk6!&a>]!k^c>L(=X!kC!&aͽFRʹG*kkWFmX}2%cÑ2%cJ!bn& |©J!bn& |2%cJ} *kbxSW} *$k:&cogPmX:%cogb>GNX?!c>,Wͬ?!+d> Wͬ?ͣ^ /RʹG>I!Kd>,WFͣ^͕>!bX!bwd>NXRʹG*kWFͣ^:"k>2b:bog" @ 22, 0 SAY "+------------------------------------------------------------------------------+" READ * THIS IS HOW DBASE CALmXc>PNX!b4c*k{~_U!bPX!bWW͗U|2!k!bWW͗U|2"k!bWW͗U|2#k!b6>2'c*k !xk>G!" !kͧ>:%cog | !%c4} 2%c:$cog |8 !$c4} :&cog:'cogY} Ry ʹGI*$k:&cog#PmX>PWFͣ^!*c4,l}3>!lGX!lͧ>ö*k#:l_WG!l>NX!lͧ>!l4G:#k*$k:&cogPmX:%cogc>GNX*$k:&cogPmX>2l*k#nb}2l:log:logY*k#:l_WG!d>SW :$cog*kw^#V>_V!bPX2*k#:l_WG!dogPmXb>PJX:*cog :bogYYRYʹGI*$k:bogPmX>PWFͣ^*$k!b>PG=X!b4Ú!b6ð#*kog#PmX:bog"zl!zlͧ>!b4e :bN¹ !|lͧ> :bog | :%c2)c:$c2(c>O2%c>2$c{ !~lͧ>:(c2$c:)c2%c2bx :%c2b4:(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{ ͕>!b !zk6!bb>P=X:zk !zk6*k;b,W :$cog | !$c4 :&cog:'cogY *k/b,W !$c !$:%cog"l!lͧ>!%c#!%c5F>O2%c!$c7!$c5F!&cF!*c5 z:$cog |a!$c4y:&cog:'cogYy @:%c>SW-:%cog*kw^#V>_V!bPX2!b6!bn&!b!bW!c>Wk?WG!b>P=X>2l!bn&}2l:log:lobxSW:,cog:&cogY/!,c5:&c2b:,c2l:log:bogYG*$k:bog#PmX*$k:bogPmX>PGNX:*cog)c:$c2(cR! ʹG*kWFͣ^:"kU >2b:bog |U 3!b4- 2$c2%c{ :*c2b:*c2l:log:bogYX!dbxSW?!bdxSW?!b>_w*kbxSW!`>2[ð#*kbxSWʹ#ð#*kbxSW'ð#*kc5 !*c !*c5  *kSb,Wb !%c9 !%c5_ >O2%c!$cM !$c5_ !&c_ !*c5 _ *kGb,W :%cog |2b:bog |*$k:&cogPmX:bog#*$k:&cogPmX:bog>GNX*$k:&cogPmX:bog"l!lͧ>!b4gY!b:l_WG!l>NX!lͧ>!l4r*k#:l_WG!l>NX!lͧ>!l4Ô ý>2l*k#nb}2l:log:logY* :bogY@R=ʹGI*$k:bogPmX>PWFͣ^@!b4õ*$k:,cog#PmXc>PNX:*cog :,cog#Yg *$k:bogPmX>PW!c>Wk?+}2%c:%c\ { >O2b:%c<2l:bog:logY/*$k:bogPmX:bog!cxSWbxSWy*$k:&cogPmX!b>PG=X*$k:&cogPmXc>PNXRtʹGI*$k:&cogPmX>PWFͣ^:,cog:'co !%c4ÿ 2%c:$cog | !$c4ÿ :&cog:'cogY ÿ !bn&:+cogY ͕>!bṔW!zk6Õ !b6 !*c4>O2b*$k:&Ã*$kO:&cogmXc>GNX*$kO:&cogmX"l!lͧ>^#V"l:$c2(c:%c2)c>2$c2%c{ !c*lL>͛W*ln&}2%c>2bk#:l_WG!d>SW6:$cog*kw^#V"lt*k#:l_WG!d>SWn:%cog*kw^#V"lt!"l!l#*RʹGI*$k:,cog#PmX>PWFͣ^ïð#*kbxSW:*cog :'cogY:*cog, :'cogY!*c~ !b~w :%c2b:b2l:log:bogY\ *$k:bogPmX:bog"l!lͧ>!b4 !$c4!b4m :)c2%c:(c2$c2bþ:!kgY!,c4:&c<2b:'c2l:log:bogYq:bog:'cogY*$k:bogPmX*$k>PGNX*$kc>PNX*$k:bcog#PmX:bog!cxSW:b/: !b~w RK ʹG>Iͣ^2b:bog>ogͶ>}2yl:ylog:bogY *$k:&c:%c2l:log:bogY*l:b_WG!l>NX!lͧ>!b4Æ>3>!lGX!lͧ>RʹGIͣ^2b:bog |!lͧ>!"# w :'c2*c ð#*kbxSW!*cT:*cog |J!*c~wN2*c ð#*kbxSW!*c|2*c ð#*kNX!b4X:'cog :*cogY:'c2*c:'cog:,cogY:'c2,c!b>W!e>W!e>W ?!e=W!b6!be>!dtkxSW!lͧ>RʹG>I!/e>WFͣ^D!b>W!Ke>W!Le>W ?!Ke=WNRʹG>I!Me>WF!&aͤJ!&aR_!͹G!!bE2b:,c2Nn:Nnog:bogY\!*$k:bogPmX>PWͬ?!b4%!ͣ^!&aͽF!kf>W!ikW!Tf͹W^:"k>2b:bog |3!b4Î2$c2%c{ RʹG>I!bE!d>W!ikW!d͹WWͬ?ͣ^ /RʹG!be<NX!b6!be>NX!be>NX2$c2%c{ ͸*K!be>NXð#*kbxSW°#!e>$W!ikW!e͹WW!mLbxSW:*cog :'cogY:'c2*c ð#*k bxSW}ð#*kbxSW*$k:&cogPmX:%cogNX2b*kyw#wR/ʹG>I!e>WFͣ^!bn& |:bog+++|͕>!bX!bebxSW?!bdexSW?!bͣ^!bbe>GNX!cebxSW!bdexSW=͕>!bX!b>WU2yk!b>W!ee>W!fe>W ?!ee=W!b6!bgW!QnLX!OnC!kf>W!ikͷWG3!R!.P!&aͤJ!&aR!͹G!&bE!d>W!ikW!of ͹WWͬ?ͣ^!&aR!͹G>Iͣ^!&aR>I!d>WF!d>"WFͣ^͕>!bX!b>W!d>W!d>W ?!d=WRmʹG>I!d>WFͣ^!ukd>GNX!dukX!mC͕>!bX!dbxSW?!bdxSW?!b>_w!2c6!ebxSW!ebxSW#!ebxSWI !cme>L!b>GNX*$k:&cogPmX:%cogc>GNX*$k:&cogPmX:%cog"l!lͧ>:%c<2b:bog |:bog |*!bP>͛W!lͧ>!b4/!bWU*kys#r*ky#~*kyw#w*ky^#V |*ky6#6!zk6b!be>NXe>NX2b2'cRʹG>I!ge>WFͣ^!bn& |:bog++|͕>!bX!bebxSW?!bdexSW?!b!bP"͹G!+bE2b:,c2n:nog:bogYM"*$k:bogPmX>PWͬ?!b4"ͣ^!&aRd"͹G>Iͣ^!&aͽF!ebxSW"!zf>xSW!dukxSW͕>!ukX!dukxSW!dukxSW!lͧ>RʹG>I!d>WFͣ^y!b>W!e%=X!amC͕>!bX!b>W!c>W!c>W ?!c=WC !2c6I !f>*W!ikW! f͹WW!mLX!mC͕>!bX!b>$k:&cogPmX:bog!b>GNXö!bd>NX*$k:&cogPmX:bogb>GNX!lͧ>!bb>GNX!b4_ð#*k#b:(c2$c:)c2%c ð#*kbxSWN!le>L=X!lC͕>!bX!b>W!c>W!c>W ?!c=W;RʹG*kWP>͛W!lͧ>!b4ë!bWU}2'c!'c5:'cog |<>2'cQ:'cog |Q>W2'c:'c<2b:bog |*$k:bogPmXc>PW!ikͷWG3!R!.d!&aͤJ!zf>W!ikW!~f͹WW!nLX!nC)#!ebxSW)#!f>W!ikͷWG3!R!.d!&aͤJ>W!e>W ?!e=W¿R8ʹG>I!e>WFͣ^!tkd>GNX!dtkxSW!dtkxSW͕>!tkX!dtkxSWW!c>W!c>W ?!c=W¼ !b;f>P=X͸*!b6ÿ !Pf>W!ikW!W!ikͷWG3!R!xSW2$cð#*k##bxSW(>2$cð#*k###bxSWB>(2%cð#*kbxSW:$c2(c:%c2)c!zk6:zkRʹG*kWFFͣ^:"k>2b:bog |3!b4Ð2b:bog |*$k:bogPmXc>PNX!b4ü2(c2)c2*c2,c2&c#$ !f>W!ikW!~f͹WW!nLX!nCͧ3!&aͽF:1c#2*c:&cog |^#!&c~w!*c~w=#:'cog :*cogY#:*c!'cgPmX:%cog+!cxSW*$k:bogPmX:%cog#!cxSW)*$k:bogPmX:%cogvk>GNX!**$k:*$k:&cog#PmX:%cog!tkxSW*$k:&cog#PmX:%cog!fxSW'!vkc>GNX'!vktk>GNX(!vktkW!f>W ?!f=W/!Pf>W!ikͷWG3!N!!!aͤJ:zk/!Pf>W!ikW!g ͹WW!9pLX!7pC!a>]}.!3c6!aPmX:bog+!cxSW*$k:&cogPmX:bog+!tkxSW%*$k:&cogPmX:bogtk>GNXð&!$c& |:bog |,!bn& |i,!bf,!%c5{ !oͧ>{ !ik!ikn&+MWG!ik> =X!b5f,,!b>W!&k>CWk?|!&c2&c:'c2*c:&c2$c !1c6ã#!bf>NX'*$k:&cogPmX:%cog!ukxSW#!vkc>GNXÝ$*$k:&cogPmXbogPmX:%cogf>GNX$*M**$k:bogPmX:%cogvk>GNX!b4(:$c2(c:(c2$c:$cog |*{ *$k:$c_W:*c>GNX:&c2b:'c2@o:@oog:bogYT**$k:bogPmX:%cog!ukxSW*$k:bogPmX:%cog!fxSW'.͹G!0bE2b:bog |:3c/.͞C*$k:bogPmXPX!b4Ó.ͣ^:b=2,c:,cog>ogͶ>}2'c!3c6!aͽF2$c2%c2&*$k:&cog+PmX:bog!cxSW*$k:&cog#PmX:bog!cxSW&*$k:&cogPmX:bogvk>,!dbxSW?!bdxSW?,!b>_w!b!ik >͛W!oͧ>!b4!%c4,>3>!oGX!oͧ>͕>!bX+!bf>NX!fik>:%cog!fxSW‘$*$k:&cogPmX:%cog#!ukxSW*$k:&cogPmX:%cog#!fxSW$!vkc>GNXogPmX:%cog"Ao!Aoͧ>!$c4`*:(c2$c:'c2,c/!zk6:zk/!zk6!;fb>4W*!bf>GNXÚ+!Eof>L =X!CoC>2'c!*!tkvkxSW¹(*$k:bogPmX:%cogf>GNX$*:b(*$k:bogPmX:%coguk>GNX$**$k:bog+PmX:%c*c *$kc>PNXý*Yä3R}/ʹG>I!5bE!g>W*k >W!c͹WWͬ?!3g>W*k >W!c͹WWͬ?ͣ^RGNXí&*$k:&cogPmX:bogf>GNXð&&*$k:&cogPmX:bogvk>GNX*$k:&cogPmX:bog!b>P=>|!ikn& |//-!ikWG!ik> =X!ikKWG!f>SW!ikn&|!ikWG!f>SW!ikn&++|$!vkuk>GNXÝ$!vkuk>GNX:%c2b:bog |'*$k:&cogPmX:bog!tkxSW*$k:&cogPmX:bog!fbf>NX!b>W!f>W!f>W ?!f=W!b>W!f>W!f>W ?!f=W!b>W!f>W!f>W ?!fog!cxSW*$k:bog+PmX:%cog!ukxSWn)*$k:bogPmX:%coguk>GNX$*!(c$**$k:bo/ʹG>I!#Wͬ?ͣ^R/ʹG>I!AbE!fg>W*k#>W*k͹WWͬ?!vg>W*k##>W*k͹WWͬ?ͣ^R00ʹGX!?ob>JX!=oͧ>!b4ã$õ**$k:&cogPmX:%cog!tkxSWV'!vkc>GNX(*$k:&cogPmX:%cog!fxSW'!fik>>+++|/-!zk6!f>W!f>W!ikW!f͹WWW!oLX!oC͕>!bX!bg>NX/!b>W!f>xSW&!ukvkxSWE%*$k:&cogPmX:bogf>GNXð&:bu%*$k:&cogPmX:bogtk>GNXð&*$k:&cog=W+͕>!bX +!b>W!f>W!f>W ?!f=W+!`>2[!zk6/!of>L=X!oC!ik62b͕>!bX!bn$% >I!HbE!g>W*k###>W*k͹WWͬ?ͣ^R0ʹG>I!MbE!g>W*k>W*k͹WWͬ?!g>W*k>W*k6!&aR6͹G>I!i>WFͣ^{7!ebxSW{7:2c57!&aR6͹G>I!i>WFͣ^!p27!qi>L+=X!qC!&aR4͹G>I!bE!i>Wͬ?*ky^#V> _Vͬ?ͣ^4!&aR4͹G>I!i>WFͣ^5!ebxSW5!&aR5͹GI!f>W!b!bX!b>W!c>W!c>W ?!c=WP;RM;ʹG!bE!j>Wͬ?ͣ^P;!b>W!c>W!c>W ?!c=Wʀ;!1c61>>W*k͹WWͬ?!h>W*k>W*k͹WWͬ?ͣ^R2ʹG>I!~bE!h>Wͬ?ͣ^R"3ʹG>I!bE!h>W!tk>W!!Pj>Wͬ?:pog>_Vͬ?!Rj>Wͬ?:pog+>_Vͬ?!pWͬ?ͣ^o>!p62p:p<2p!p:p_WW!Dq>Wk?|:pog:͹WWͬ?ͣ^R0ʹG>I!TbE!g>W*k>W*k͹WWͬ?!g>W*k>W*k͹WWͬ?ͣ^RG1ʹG>I![bE!7͹G>I!j>WFͣ^͕>!bX!b#j>NX27\7!p\7!&aR\7͹G>I!#j>WFͣ^!&aR{7͹G>I!'j>WFͣ^B9!W!i͹WWFͣ^!b62p:,c2q:qog:pogY/:1c/|6!p6!p6!p6>2p*$k:pogPmX>PW!c>Wk?}2p!p!p:p_WG!wk>SW¸=:2cI!bE!i>Wͬ?!j>Wͬ?!pW!j>W!pW!j ͹WWWͬ?!#j>Wͬ?!c͹WWͬ?!h>W!uk͹Wͬ?ͣ^Rn3ʹG>I!bE:ykog>_Vͬ?!i>Wͬ?:'cog#>_Vͬ?!&i>Wͬ?ͣ^R3ʹG>I!bpogY/9:p2p1>!p:p_WG!d>SW:pog:pogY1>:pog:pogY/!p:p_WW!Fq>?Wk?|:g>W*k >W*k͹WWͬ?!g>W*k>W*k͹WWͬ?ͣ^R1ʹG>I!bbE!g>W*k>W*k͹WWͬ?!p:p_WW!c>Wk?:pog+}2p!p:p_WG!c>SW:pog:pogY7!p5æ7:pog:pogYA9!p:p_Wu6>P2p*$k:pogPmX:pog+!cxSW:pog:pogY5!p5É5*$k:pogPmX:pO>PWG!p>P=X:p2i>Wͬ?ͣ^>2põ=!&aRu<͹G>I!bE!Pj>Wͬ?:pog>_Vͬ?!Rj>Wͬ?:pog+>_Vͬ?!pW!j͹Wͬ?ͣ^!p4:p@µE*ky^#V> _Vͬ?!?i> Wͬ?ͣ^p>!xk>W!wk͹W!DqX!Fq_i>?GNX2p!1c6!fik<>}2p!p4!ik:pog#WG!bpog |1:!p:p_W!p ͛W!p4!p49!bc>GNX!pn&|l:!'rSj>L!=X!%rC͕>!bXP;!pKWG!f>SWh>W*k>W*k͹WWͬ?ͣ^R2ʹG>I!ibE!,h>W*k>W*k͹WWͬ?!Hh>W*k>W*k͹WWͬ?ͣG!d>SW©8!p:p_WG!d>SWg8!&aRd8͹G>I!p:pog#:p_W:pogY+MWWFͣ^æ8!q-j>L=X!qC!1cp:p2q:qog:pogY/:1c/u6!p:p_WW!Dq>Wk?|[6:p=2p~7:1cX6E9n6:p!pn6:p2p~7!p46!p4#5:1c=!&aR<͹G>I!#j>WFͣ^2p!&aR<͹G>I!j>WFͣ^:pog>_V!bPX!b!bn&+++WG!b>P=X!k>W!>P=X4!bik>P9X!ebxSW4!&aRR4͹GI!zf>W!bW!i͹WWFͣ^:2c4!&aRx4͹G>I!i>WFͣ^!&aR!p:p_WG!f>SW:!vrtj>L#=X!trC͕>!bXP;!p:p_WG!wk>SW:2cP;!rj>L#=X!rC͕>^R^2ʹG>I!pbE!fh>W*k>W*k͹WWͬ?!{h>%W*k>W*k͹WWͬ?ͣ^R2ʹG>I!wbE!h>W*k6:p2&c:p2%c͕>!bX!bIj>NXA9!Oj>W!p:po:p_W:pogY#MWW!Ij͹WW!pYX!&aRA9͹G>I!bE%& bW!j͹WW!sLX!sC͕>!bX!bk>NX!b6!ebxSWx=!zf>W!ikW!~f͹WW!csLX!asCò=!ebҍC> ͕C> ͕C͕C2t!tI͐E²Cy<>¹C= ùCGDOEoWE####W?EC60#DEC>ew#.CeCxDbE CA YͤA~A:[aҟAͷAÐAy2_aʫA~#z0 0!ca_w![a~A4_!KasYY2^aG:_a<2[a=Y:KaY:BB!!!`ͤJ!`"Mu!KuhLHH!9u>WG3!R.!!aͤJ!a"Qu!OuhL]H*Au"Su!SuhL!UuJ*Eu^#V!qas#r*Gu^#V!sas#r*Cu^#?~ ʚ?ʓ?#Ç?#|?H o&ͱB"Ia?¿?BZ!9??~#qC?> qC?&9@x2\ay ?2]a"s@fFͧF^ͲF^#V?FFfFF#F8F#N8F#^#r+s#^#V++r+s~F5FͧF5^ͲFq#pFOͧF4~ ҄F_ͲFs#r#s#xSW²=!f>W!ikW!~f͹WW!sLX!sCò=õ=1>!p:p_WG!xk>SW1>!&aR1>͹G>I!bE!Pj>Wͬ?:pog>_VJEGZ+y=+Dx=#D0 +D60$-Dw 7D+6.$y= Dx= D²Dx<D!9xE xE wD wDw# Y_DH !9 :KaB!_a5!ba4Y:]aG:\a B!`aA>2aa]BqC!\a5,B:]a!_a<_!Ka>w w>+OB!^a~5>.͕BG:aax0|B:^a> !`a~VV|*aV|GʢH!YuI*Cu^#V}*a}GH![uI:aH*Cu^#V}*a}GH!]uI:aI*Cu^#V}I!_EqC:ba+g@-/Wͬ?:pog+>_Vͬ?!pW!k͹Wͬ?ͣ^:1cH>:p2&c:p=2%cn>:p!p2p:pog:pogYn>:p<2pp`^#V^ÆʊD+wDxOo>g9x xEY ʝD ʝDw#ÚDE=D<E<_EKE DoWWE##?E$EK0Y D0_Y ʏB5!^a4![a5-2aax![a^4{BҮB!Ka~0>0F Bx=BG9CñB B:{aBB!jaxʱBBhCñB;IñB CʱB> quI^#V"au!a"gu*au"ku!cuB[2ou!mu(I^#V"tu:a7I:acI*tu`I*tu5!vu6:vu ]I͐IOI>IÏI!wuI*tuI*tu5!pa6!yuIC0qC*s@x2\ay2]a"s@:B:\a!]aAͳ>G@!9~#qCñ@*s@E2Ka2`a2ca<2[a!9ͤA @+@ͤAA-A>2`aͤFy GO:aGcG͖G#G{+G*ya|TGj& *ya*haY#Y> ܞG> ܞG͖G> G{=>'ĞG!9ʅG=~#'~G{>'̞G͞>Ï>3>s>!>*3>s>K* E|>|{zͶ>F>>O>># ?>>>DYK0w# Ex$EbE DJEGZ:E+w/ExbE?ExbEYJEo>g9##xEY bE bE YLCB CxC>hCñB "C9CñBx,C>ʱB=;I,CfCx!haNCfC9C:yaYCfC:ha> qCNC>2t!t(I:yaʍC!ha:paʌI*tu6iIL2vu:vu½I!a"u!"u!{uB[!ha6#6!vu6 :aI!uI^#V"u!da"u*u"u!uͮQJ!a"u!"u!uB[IAͮAAA A ͷAͤAA.1AͤAͮA1AͷAͤA"Ae;AE~AͤA+KAͤATA-TAͤAͮAYGͤAͮArAxGGGͤAzAGyOGiG{=>'ĞG{>b̞G*ha++|2t!tIɯûG>ûG>2t"t"t`i"t!9"t!tG?u ~# G*?u~KH*?u~ H!9u>WG3gl ^?#~w&?!9_#F#O >ŒE!tB[> F ¥EʐELÙE ·Ex±E>EÐE EÐEEx!haEEE:yaEE:haLE>2t!t(I!tB[&' J:aJ*u~ J*ha#"haãJ*u~ 0J!ha6#6ãJ:aJ*u~ RJ*la#"la!ja6#6ãJ*u~ £J*ja#"ja!ja#tJ!ja6#6*ja*{a#YP+}oM"M~2S"M"S3M:SґQ;NPG:SґQ*Sp¾P4#6rSNM:SP|P*S++"SP}+P͂P}|2|S"zSNM|P"S1}N*S##^ ~?”N# NxCON CON RDR PUN LST M!N ~ͅM$,OMUM1N\Nl,O$,O!~ ,OM!N:=vO*;v:?vUy O2U:=vĪS*8vw# ,UͱS:>vLU*;v!SLU0T*8v"8vT:>v/g.xqU}03|g}o eUxg.[2aO!a”L6ÙL +~#w!a s#r!a4ͯ^ɲLLaLL I/O Stack Overflow:paL!da"u!u͛QL!u6L:pa2u!pa6:u M*ha^#V6+6++̈́ZrSMEMrS>rS"N#F#~"Mq#p#w>rSMEMrS>rS*~NM!aS=SS>!*S" s#r#w=rS*S|£J!a"u!"u!uB[J;I!pa6"u!9"u!uJ! 9^u~# J*u^#V|J*u*u W*u nbK*Y|ʑQ##"S6*Ss#rMR{ R*S:Sw/Q6RQ*S"}Sɯ*S+.O^#V6O#{#z.O6#66O r+s!uF#~ڍO!u6P  _ _!u^>Gx|g}oÅU YYG!9!yUU)0ʾU1Y# çUyU) UxDMox&9`iG!9!x8V 3V+V$%Y#"ha:u M!ha6#6:u"S"S*S^#V#"S^#V"M.M"S.M"S|3M|~"M.MyacMA =.:;<>[]y }!?v6 4>2>v*;v!4#4#4~#N#F#y#x#:>v*;v!!:=vSSҪS:?v~G~#~O?*T#u !u>JX,K!u>W*uͷW!uX*u~#XK*u^#V)))|XK*u6P#6*u~#’K*u^#V))|K*u6#rS*Sw#wrSM3MrS͗O"MqrSM3MrS"MNOrS*S~" 4#4#4M3MrS~Q%RͮTrSGO>4RrSM3MrSr+s6 #6 !u4^N*S|½O}=ªO]OùO͵NʵOO>~OO> PN*S|OY͵N=OyO _O>~P=Pg3V-U0Y:Y0T])Y)YY)Yo|gYU{HV$%Y}IV|Yz- Yo&9}/2u*~GO>4RrS*S~R>rS%RͳTrS*S!*~!/2S*S|IR(^#VNMNM{z\RzR2SzʋR:SR͗OqÆRN> Pq2S*S/"S=ObP{GO6O*S*S#:SOKP6O#s#rTPPO=O$PGO P6Or+s{sP!S4*S+>|ʂ6 +=‚VDM)ҙVO>G!V ¨V>0V ­V>-3ùVT]))V寕iO>`G>0 V ȇV)M+͗M(N#UM4N#* N6?$NwMNUM;NM(N#6 4N.tNM ͗MhNUMtN#*`N6?dNwMONUM{NMhN#6 tN%#6ڇTTFNfTwxG>O>G!$q#p#6õT"8v";v2:vx2=v͑S2>v͡S!:v~5YUST=&U:=v&U*;vM3MrS|}rS~> rS #wZERO DIVIDE END OF FILE UNDEFINED FILE KEYNULCONCONRDRPUNLSTBADG!a~]]Ë` Condition Stack Overflow$4Ox!Bv [>ڧ[!a{#z*qa*saͣ^xyx[ \_!C]^#Vb\\>(\y>\>)\|[[\|[[b\t\p`>,\   PPP ( ( ( ( ( ( ( ( (Z*v|ʫY^#V#N#F!9yxҫY"v̈́ZÄY:aY!9!sa{z#Yͣ^ëY!Y!9:aO!a {#z!a5Y#}OD*v~0Z##~#d`=`!+~O~#~G!/x?`y\` >O6# 6` &`=ɯ ~#fo++_!v~#ʈ`*v_W!9Oo>gy͛W~#o>gxGҰWGNXwF#"@vxWW*@v!9G_>WObk++W~+Wy~#/ _ _ _ _0:\\\\\|#\}#\ N\dP\ P\[\R\x\N #~\d\!5]b\*v!  ) ( '  foY! ZB[ZZZZZ Free Space Exhausted##^#V#{_zWZ{_zWY4zVZ{Z##^#V# ##s#rs#r#s#r+++~sw#r#p``Ë``  Insufficient Memory$ Invalid I/O List End of Execution$`b bb SNXOxA!9NXl&9XG#!9OxANXwo&9F##DXxNXwFSXGOcXw# ZX 6 #eX{E͡XD͡XzE͡Xw^#~#ʛ^+{–^#zʛ^++~w^#^#V=!a~^5:a_!a^#V"ada.~# ^*a)))))a )| ^*da|}*b"ha:a*a9{_z•\{ڕ\ ک\ͧ\\>#\*v>=^#V#/\é\\>: \>?\!-]b\b\>=\^#V|\}\.))]b\# W .ZIP does not exist (any key to continue).NO MORE DISK SPACE--saving partial###}*v}|Z*{zZ+F+N+V+5^{Z{zZ}|Z{ZZi`~sw#r##q#p i`N#F#^#V~Zq4#p+i`##s#rZË`[Ë` YSININOUTD͡X\e. ҏX ҕXS\e. ҠX.HEg)ҫX )ҰX )ҵX )ҺX )ҿX )X )X )X z| YDM| YX Yx>)X Ydaw# _*b{ _ "_!#"bT_Copyright (c) 1980 Digital Research, v1.3 !"v"v"v2a2a*v ړ_"vq#p##}oF>AĻ\> #]~ >.\~ \= ]^#V# File: Traceback:S]Z]j]t]]]]] ERROR FIXED OVERFLOW OVERFLOW UNDERFLOW  file.QUIT to system (Yes or No)?Yy $:@#/0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ZIPT FREE Request Out-of-Range$ Free Space Overwrite$GKZ[MbkZ[']F&]N&]N#F&]^#V"by2axm[i&g^ʤ[x[x„SYSPRINT= Y)Xɯo>g{ozg!"YB[*Y+Y,Y.Y0Y Conversion2NY!EYB[MYNYOYQY*v|ʁY^#V"v###^#V#N#Fx}Y #~pŸ́"v*}o|ҙ_`Ë`+w+w+r+s4w#w#s#r<2v++*vs#r"v*v#"v*vDM!vx~f`#~+f`+F+Nq#p*v+"v_() he dBASE II screen and printout Form Writer Copyright 1982 Hal Pawluk Press any key to continue.Row, ColN: continue (Y or N)? "GET" in PRINTOUT: Okay (Y or N)? Yes @ 23, 0 SAY "" GET GET ** 64th GET **Writing READ for 64 GET's, rVE screen, write .CMD/.FMT file. : QUIT to system. : Display this screen.CHANGEABLE DYNAMIC VALUES: : ertical marker. : or?oEoiting command file .FMT+N or file (Q to Quit)?nOoQqFILE NAME (drive optional)::** ** is not a valid file name (anymmcm az*** WORK FILE: ***Enter of value tochange, any other key to continue.HhNew horizontal marker: []RESEow (Any key to continue.) SAY kk izontal marker. : ab spacing (1-9). :

age length (23-88). : argin for printer (0-127).0123456789:ABCDEFGHIJKLMNOPQRSTUVocboo key to continue).Loading file : DISPLAY variable. : GET variable.[] : RESERVED for EMBEDDED COMMANDS : Top of screen : Bottom mRVED--Enter new symbol: VvNew vertical marker: RESERVED: Enter new symbol: TtNew tab value (1-9): 019PpNew page length (23 - 88)k bk  + 1 +ik\>H WXYZabcdefghijklmnopqrstuvwxyz* SET FORMAT TO PRINTSET MARGIN TO ERASEINCOMPLETE FILESET FORMAT TO SCREENGETs in PRINTER file (a9pof screen : Middle of line : Previous screen. : Next screen. : First screen. : Last screen. : Delete character. : Insert space. nQn: MmNew page margin (0 - 127): Erase everything (Yes or No)?SAVE as CMD or FMT file (C, F or stop)? CFIs this form to be printe )$%' , %l(lxlccny key to continue).@ 23,79 SAY " "READRETURNCOMMAND ERROR -- please fix. SAY ""@ ,NO VARIABLE: continue (Y or N)? HANGING COLO: Kill cursor line. : Line insert at cursor. : Draw/Erase vertical line. : Draw/Erase horizontal line. : ERASE screen data. : SAnnd (Y or N)? File : do you want to change its name (Y or N)?*Writing screen file .ZIPWriting printable file .ZPR***** File .CMDWrlllllllclbluktkbbl)* u uuuuuuuu.datuuuuuuuuu- Y - MODIFY PREVIOUS INSTALLATION $ c Z - USER SUPPLIED TERMINAL COMMANDS $8 q $n _s -HAZELTINE 1500 B -SOROC, TELEVIDEO $ ]C -HEATH 89 D -PERKIN ELMER 1100 $3 ÇE -ADM-3A F -ADqqYʵZʼ Aڲ !!_~#foéx~# ÞR͞>2! $ MODIFY EXISTING SPECS ROUTINE $ ttttatttta t"t Invalid Format ItemM-31 $h ôG -VDP-80 H -INTECOLOR $ I -GNAT-SYSTEM 10 J -TRS-80 II (P&T) $ K -APPLE 'rvrv0FOR THIS METHOD, YOU WILL NEED THE HEX OR $ fDECIMAL CODES THAT CAN BE SENT FROM YOUR $; àCOMPUTER TO THEttttttt Stream/Rec L -VECTOR GRAPHICS $ HM -SUPERBRAIN N -VISUAL 100 $% {O -OSBORNE P -HP 2621, HP-125 $S r1)!< ! $ OdBASE II INSTALLATION PROGRAM VER 2.7$( ] $Z k $h àARE FULL S VIDEO TERMINAL TO CONTROL IT $q î $ TYPE "Y" IF YOU WISH TO CONTINUE $ _Y²  $ ord Sequen/Direct Input/Output Keyed Access P< $conMuQuda-utuuu=u>ukuou puqurusuëQ -CROMEMCO 3102 R -TRS-80 (FMG) $ S -ADDS VIEWPOINT T -XEROX 820 $ U -NEC $  $ scsCREEN OPERATIONS WANTED (Y/N)? $v _Yʻ2>2 $ SELECT TERMINAL TYPE$  $ (A*+  $ LWILL YOU BE ENTERING COMMANDS AS HEX OR DECIMAL?$ Z $W ÕTYPE "D" FOR DECIMAL OR "CONTINUE $h  _Y² å $  ÿ $   WILL YOU BE ENTERING COMMANDS AS HEX OR DECIMAL?$   VIDEO TERMINAL TO CONTROL IT $q  î $   THE CODES (OR SEQUENCES) THAT YOU WILL NEED ARE:$   $  THAT HOLDS THE COLUMN NUMBER $ :!_BCURRENT VALUE = $1 :<̓ W $T 1=2l $i âNEXT, ENT SEQUENCE $t þ8 - RESET TO STANDARD VIDEO MODE $ 9 - ALTER SCREEN SIZE $  $  S _Y!s# . $ _ENTER THE CHARACTER DELETE SEQUENCE $9 y(3 BYTE MAX) $j H" FOR HEXADECIMAL $e _DʳHT>2! $ COMMANDS ARE ENTERED AS A SEQUENCE OF NUMBERS $ $  D TYPE "D" FOR DECIMAL OR "H" FOR HEXADECIMAL $  _Db H >2!t $e  ï C $  / DELETE A CHAR SEQUENCE $  d DIRECT CURSOR POSITIONING SEQUENCE $:  Ë CLEAR SCREENER THE POSITION IN THE SEQUENCE $w THAT HOLDS THE LINE NUMBER $ :! CURRENT VALUE = $ :<̓  ELECT ITEM TO CHANGE $ R ANY CHAR OTHER THAN 1 - 9 TERMINATES SESSION $"  ` $]  1:1__>!] Eâ $ --- DIRECT CURSOR POSITIONING --- $  THE CURSOR CONTROL SEQUENCE IS USU 8TYPE A CARRIAGE RETURN TO END A SEQUENCE $  F $C r1 - DELETE A CHAR SEQUENCE $Q ê2 -OMMANDS ARE ENTERED AS A SEQUENCE OF NUMBERS $   TYPE A CARRIAGE RETURN TO END A SEQUENCE $   ͐͜ COMMAND $o  ñ HOME CURSOR COMMAND $   (CLEAR AND HOME CAN BE COMBINED) $   OPTIONA $ 1=2 $ ) $" `MANY TERMINALS ADD A CONSTANT TO THE LINE $4 ÙAND COLUMN NUMBERS. E!  @͐@͜@@@@͙@@@ $   USER SUPPLIED SPECS ROUTINE $  ALLY A 3 $ BTO 4 BYTE SEQUENCE. THE FIRST ONE OR TWO $ yBYTES ARE USUALLY FIXED AND THE REMAINING $M  DIRECT CURSOR POSITIONING SEQUENCE $} 3 - CLEAR AND HOME SCREEN COMMAND $  4 - BRIGHT/STD VIDEO͙=NOW ENTER THE CODES FOR CHARACTER DELETION $ :![!A  ÑTHIS IS THE SEQUENCE "BACKSPACE,SPL: BRIGHT/DIM COMMANDS OR $  O VIDEO/REVERSE COMMANDS $'  ] $Z  Ë TYPE "Y" IF YOU WISH TO NTER THE CONSTANT BIAS $k øFOR YOUR TERMINAL $ :!CURRENT VALUE = $ :̓  $ 120 FOR THIS METHOD, YOU WILL NEED THE HEX OR $  f DECIMAL CODES THAT CAN BE SENT FROM YOUR $;  à COMPUTER TO THEðBYTES CONTAIN THE LINE AND COLUMN NUMBERS $ þ $ FIRST, ENTER THE POSITION IN THE SEQUENCE $  COMMANDS $ <5 - DIM/REVERSE VIDEO COMMANDS $ i6 - INITIALIZATION SEQUENCE $G Ì7 - EXITACE,BACKSPACE" $^ ON MOST TERMINALS IF THIS IS TRUE FOR YOUR $ TERMINAL, THEN TYPE "Y" $  $+,  $ ANOW ENTER THE SKELETON FOR THE DIRECT CURSOR $ xCOMMAND. ENTER A ZERO IN THE PLACES WHERE $L  Ø(5 BYTE MAX) $ :!ʳ!F#A  >!]:!2  $ ENTER THE SCREEN WIDTH $ :!1 > !]:!2 ã $ ENTER THE COMMANDS TO BE ISSUED WHEN $ LEAVING THE FULL-SCREEN EDITING  PARAMETERS $ :!2!21!!!R ABORTING INSTALLATION $8 "!2!2!m $j ÒENTER COA  >!]:!2 æ $ ---- CLEAR AND HOME COMMAND(S) ---- $  $ ENTER THE CO ANY OTHER $ 8KEY IF NO DIALOGUE IS WANTED :$  P2V $S d $a r $o ÔENTàCOLUMN AND LINE NUMBERS GO $ û(11 BYTE MAX) $ :!!F#A  > !]:!2  $ .CURRENT VALUE = $ :̓ ) $& 12= $: xNEXT, ENTER THE NUMBER OF LINES ON THE SCREEN $H MODE $  $ LSUGGESTION: USE DIRECT CURSOR POSITIONING $  ÈTO PUT CURSOR ON THE BOTTOM LINE OF THE SNTROL CODE BYTE $x :!&2>222 $  $ ENTECREEN $W ã(11 BYTE MAX) $ :!ʾ!F#A  > !]:!2 ™ $ ENTER THE COMMAND THAT W"!!!4!!5g $ % $" :!!3!s# 8 3!>:4! :5!Y:!ʜÊ!Gm_0{ O Ù(11 BYTE MAX) $ :!ʴ!F#A  > !]:!2 œ $ ENTER THE COMMANDS TO BE ISSUED WHMIX SYSTEM $ 0 D - MP/M II SYSTEM $ > $; L $I _AʊBrCzDʅP>2Ê>22GH INTENSITY OR NORMAL VIDEO $~ ù(5 BYTE MAX) $ :!!F#A  >!]:!2  $ &ENR A CHARACTER TO BE USED FOR $ NINDICATING MACROS OR A RETURN FOR $* ~DEFAULT CHARACTER OF AMPERSAND (&) :$YILL SWITCH TO $ @STANDARD INTENSITY OR NORMAL VIDEO $ ~TO RESET THE SCREEN AFTER FULL SCREEN OPERATIONS $K)))) c5!`}|<}ú0 ?))) O ã!5!͟}|<} $ ERROR IN INPUT, RE-ENTER $ 1EN $ 8ENTERING THE FULL-SCREEN EDITING MODE $ N(IF ANY) $C i(11 BYTE MAX) $Y :!ʄ!F#A Ê>2Ö $ TYPE "Y" TO SAVE, ANY OTHER KEY TO ABORT INSTALL $ _Y5 SAVING INSTALLATIONTER THE COMMAND THAT WILL SWITCH TO $ RLOW INTENSITY OR REVERSE VIDEO $1 l(5 BYTE MAX) $] :!ʇ!F#  ʕ2Û $ é $ TYPE A RETURN IF THE ERROR CORRECTION $  DIALOGUE IS TO BE USED OR,- !7 $  / IS THIS CORRECT (Y/N) $  _Y[ CURRENT SEQUENCE : $F  x~̓ t $q  #((=7 P P &a000y000C&dB&d@&d@ HJH &a23y1CPP"!""=7 PP   Y Y7 G4G*sNP>G4G*sNP>G4G*sNP>G4G*sNP>G4G*sN P>G4G*sN P>G4G*sN  P>G4G*sN !P>PHLKJ  XYKHX7Y PP   YpqqÝe :!ʪ æ ͘ Ɛ'@'_͏ o&ͤ ILLEGAL PARAMETER$  ! DBASE.COM FILE IS NOT ON THE DEFAULT DR   YEY7 PP  (PP   =())=7 (P G4G*sN "P>G4G*sN#P>G4G*sN$P>G4G*sN%P>G4G*sN&P>G4G*sN'P>G4G*sN(P>G4G*sN)P>EqY7 PP  ==7 PP ZIP COMCOPYRIGHT 1982, PAWLUK CORPORATION5455 Wilshire BoulevardLos Angeles, CA 90036(213) 937-0551IVE $  DBASE COM _Y[ CURRENT SEQUENCE : $F  x~̓ t $q  #(?PP   Y0A Y7 PPHLKJ PP   Y Y7 G4G*sN*P>G4G*sN+P>G4G!W6:WS!W6RXͺ6>%8!WO%5!,P>0F-17LRVͺ6>%8!\O%5!\P>%F-1!P>F  =()((=7 PP   =^#VN#F<%0  ZIP.COM NOT PRESENT ON DEFAULT DISK $:22!}~e :!ʪ æ ͘ Ɛ'@'_͏ o&ͤ I!5"""+#}##!$s$$%i%% &_&&'U'''K( ~~~ ==7 PP   =C0 C4 C0 *CPP     PP   =()-1!P>,F-1!P>F-1!P>JF-1!P>/F-1!&Q>1F-1!WQ>@F-1!Q>=F-1!Q>CF-1!R>>F-1!UR>;F-1!R>6F-1!R>5=7 PP   .P0P   =#z~!} w#z’ͻL!}͂G"sN!Wu*sNyw#w*sNPG4G*sN##P>G4G*sN###P>G4G*sNP>~~~~PP   =()(*(=7 P0 =7 PP -. F-1!R>F-1!S>F-1!S>CF-1!RS>F-1!RS>;F-1!S>-F-1!S>=F-17L2P! P6:Pog+++|!PS>4G!S2P! P6!PFU<4G!PFU>4G~R ͺ6>%8!O%5!FU>"F-17LR ͺ6>%8!O%5!hU>F*sN >F!T͟FͱF-1!|P! PFD*sNys#r*sNy^#V | *sNy6#6 *sNy#~ *sNyw#w | !PSxQF!SPxQF ! P͟FͱF-1!W>F*sN ͟F-17LR}ͺ6>%8!O%5!W>F*sN>F!T͟FͱF-1*sNy^#V> eE-1!W>$F-17Lͺ6!rO%5*sNF-17L͒0)Rͺ6>%8!wO%5!JT>3F-17Lͮ0!PFRͺ6%8!|O%5!}T>F-1!}T>F-17L!P>F*sN͟FͱF-1!oV>F*sN>F*sN͟FͱF-17LRͺ6>%8!O%5!V>F*sN>F*sN͟FͱF-1!V>F*sN>PxQF!PSxQF!Pn& |ͮ0!PF{!Pn& |>2P!W0!P! P >́F!P4_! PFD}2uN:uNoU>F*sN ͟F-17LR: ͺ6>%8!O%5!U>#F-17LR ͺ6>%8!O%5!U>F*sN>F!T͟FͱF-1!U>F*sN>F*sP> #GR* ͺ6>%8!O%5!T>+F-17L!PT>G4G!P P>2Fu !!UPxQF!PSxQFr ͮ0!PFD !PTxQNRͺ6>%8!X%5!X>=F-1!X>F-1!X>AF-1!Y>BF-1!]Y>>F-1!Y>F-1!Y>IF-1!Y>IF-1!-Z>KF-1!xZ>GFF!HT>F!IT>F0!HT;F(!W6â RNͺ6>%8!O%5!T>.F-17L! P6!PT>G4G!PTxQF?!Pn& |/F*sN͟FͱF-17LRͺ6>%8!O%5!V>F*sN>F*sN͟FͱF-1!V>F*sN>F*sN͟FͱF-17LRNͺ6>%8!g |/:uNog+|<R9ͺ6>%8!cO%5!S>%F-17L<RMͺ6>%87L͢*:uN~!uN:uNog |x\{́~!N͟FͱF-17LR ͺ6>%8!O%5!U>F*sN###>F*sN͟FͱF-17LR ͺ6>%8!O%5!U>F*sN#>F*sN͟FͱF-1!V>F?!Pn& |/ ͮ0!PF!"UPxQF!#UPxQF !W0R ͺ6>%8!O%5!$U>"F-17L!PT>G4Gu !T-1!Z>5F-1!Z>IF-1!=[>GF-1![>IF-1![>HF-1!\>:F-1!O\>JF-1!\>JF-1!\>IF-1!,]>9F-1!e]>F-1!e]>0!PF_!TPxQF?!PTxQF?!P>_w!W0!TPxQF ! P62PRͺ6>%8!O%5!T>*F-17L:Pog+++O%5!V>F*sN>F*sN͟FͱF-1!V>&F*sN>F*sN͟FͱF-17LRͺ6>%8!O%5!W>F*sN>F*sN͟FPT>4G!P>F!*P>F!T>F0!*P;FqRͺ6!hO%5*sNF-17L>2P:Pog |3F*sN͟FͱF-17LR} ͺ6>%8!O%5!V>F*sN>F*sN͟FͱF-1!-V>F*sN>F*sN͟FͱF-17LRPxQF?!PTxQF?$ !P>_w>2P>2W:Wog:Pog[G| *sN+:Pog!PxQFu *sN+:PogP>G4G!P4. 2P:F-17Lͮ0!XF!X]>4GRͺ6>%8!X%5!]>DF-1!]>2F-17L*sN"'e!'e^+Rͺ6!X%5*sNF-17L>| !PT>4G!SPxQF!PSxQF!Pn& |R ͮ0!PF !Pn& |} !W0!P! P >́F!P4 >2F-1!0W>F*sN>F*sN͟FͱF-17LRͺ6>%8!O%5!GW>(F-1!oW>F-17LR%ͺ6>%8!O%5!W>F*sN >F!T R$ͺ6>%8!mO%5!T>)F-17LR5ͺ6>%87Lͮ0!PF!P>F!HT>F!IT>F0!HT;Fn,nË!W͉XR ͺ6>%8!O%5!F*sN>F*sN͟FͱF-1!LV>F*sN>F*sN͟FͱF-17LR7ͺ6>%8!O%5![V>F*sN >./ 2X:Xog |+3%8!X%5!^>F-1!4^>F-17Lͮ0!XF!X>F!N^>F!O^>F0w6#6ã*sNw#~*sNww#wÍ!&e62X2vN!X b<4G!X6Rͺ6!KX%5*sNF-17L>2X:Xog |32X:Xog |3FR-ͺ6%8!X%5!e>F-1!e>F-17L!X>F!$e>F!%e>F0!$e;FZ!&e6:uN=l!"iô:uN}!U"iô:uN:&e!&e6Rͺ6>%87L2X!X6Rͺ6>%8!-X%5!2a>"F-17L:Xog++|W!XTa>4G!`XxQF!XTaxQFF!Le0!XF`4G7!Ne0!XF`4G!XF͝D|*sN{w+Rnͺ6!pX%5*sNF-17L>2X:Xog |!N^;F…!&e6:&e !&e6Rͺ6!X%5*sNF-17L>2X:Xog |3%8!X%5!P^>eGF!>e0!X4R4ͺ6>%8!PX%5! b>F-17L*sN/"Ae!Ae^+Rfͺ6>%8!UX%5!&b>F-17L*sN;"Ce!Ce^+Rͺ6>%8!EF-1*sNw^#V>eE-1!a>#F-17Lͮ0!XF!&e6!X>F!N^>F!O^>FŽ!"iô:uNŸ! "iô:uN°!h""iô:uN!""iô:uN!#"iô:uN!1$"iô:uN !$"iô:uN !m%"!Xn& |$ͮ0!XF!Xn& |;>2XT!5e0!X!X >́F!X4!XFD}2X:Xog+|y>2XÑ:Xog3%8!uX%5!c>'F-1!c>!F-1!d>,F-1!.d>F-17Lͮ0!XF*sN{KF-1!^>F-1!^>+F-1!^>F-1!^>IF-1!_>HF-1!W_>=F-1!_>F-1!_>DF-1!_>8F-1!`>F-17Lͮ0!X%8!ZX%5!Bb>F-17L*sNG"Ee!Ee^+Rͺ6>%8!_X%5!_b>F-17L*sNS"Ge!Ge^+Rͺ6!dX%5*sNF-17L>2X:0!N^;F©:&e!&e6!X62XRͺ6>%8!FX%5!a>(F-17L:Xog+++|S!X b>4G!`XxQF!XTaxQF!Xiô:uN !&"iô:uN '!&"iô:uN :uN:uNQ!.'"iô:uNb!'"iô:uNs!k("iô:uN„!)" |> 2XÑ2X!X6Rͺ6>%8!2X%5!Ua>%F-17L:Xog++|J!Xza>4G!`XxQF!XTaxQF!Xn& |~eD!X G!X>F!N^>F!O^>F0!N^;FR!Se0!XF`4Gj!Ue0!XF`4G!XF͝D|*sN{wF*sN{~eD!X G!X>F!N^>F!O^>F0!N^;F!/e0!XF`4G!1e0!XF`4G!XF͝D|*sNXog |&3%8!iX%5!{b>-F-1!b>,F-1!b>*F-1!b>#F-1!X>Fn& | ͮ0!XF!Xn& |K!́F!X4P>2X!XFD*sNws#r*sNw^#V8 |*sNiô:uN•!)"iô:uN¦!5*"iô:uN´!*"i!*iR*sN^e> #G*sN#_e> #G*sN/ce> #G*sN;de> ͮ0!XF!Xn& |.>2XG!7e0!X!X >́F!X4ü!XFD}2vN:vNog+|l>2vNÄ:vNog |> 2vRͺ6>%8!|X%5!Ld>*F-1!vd>.F-1!d>0F-17LRͺ6>%87L͒0[Rͺ6>%8!X%5!d>3F-17Lͮ0!X{wÐRdͺ6>%8!&X%5!`>KF-1!^`>JF-1!`>KF-1!`>)F-1!a>F-1!a>F-17L*sN#"3e!3e^+!vN!&e6-1!!c>*F-1!Kc>*F-1!uc>F-1!X>F-1!c>&F-17Lͮ0!XF*sN{~eD!X G!X>F!N^>F!O^>F0!N^;/0 #G*sNGee> #G*sNSfe> #G*sN_6*sNk6*sNw6 #6> ̈́D}*sN{w>3>!ge͟F*sN G*sN#ie> #GN#_e> #G*sN/ue> #G*sN;we> #G*sNGse> #G*sNSqe> #G*sN_6*sNk6*sNw6 #6> ̈́D}*sN{ẅ́D}*sN{w.$>3>!oe͟F*sN G*sN#ie> #G*sN/i> #G*sN;i> #G*sNGi> #G*sNSi>  #G*sN_6*sNk6*sNww#w> ̈́D}*sN{w**sNi> #G*sN#i> #G*sN/i> #G*sN;i> #G*sNG-1!e>-F-1!f>-F-1!Lf>-F-1!yf>-F-1!f>F-1!f>JF-1!f>IF-1!9g>+F-1!dg>GF-1!g>IF-1!g>F-1! h>/ G*sN;i> #G*sNGi> #G*sNSi> #G*sN_6*sNk6*sNw6 #6> ̈́D}*sN{w(*sN^e> #G*sN*sN/me> #G*sN;de> #G*sNG^e> #G*sNSne> #G*sN_6*sNk6*sNw6 #6̈́D}*sN{wÍ >3>!ceG͟FÖ&*sNi> #G*sN#_e> #G*sN/ue> #G*sN;we> #G*sNGse> #G*sNSqe> #G*sN_6*sNk6*sNw#G*sN_6*sNk6*sNw6 #6̈́D}*sN{w$*sNi> #G*sN#i> #G*sN/ue> #G*sN;we> #G*sNGse>i> #G*sNSi> #G*sN_6*sNk6*sNww#w>̈́D}*sN{w]+*sNce> #G*sN#ie> #G*sN/i> #G*sNFF-1!Ph>IF-1!h>BF-1!h>LF-1!'i>FF-1!mi>F-1!mi>.F-17Lͮ0!iF!ii>4G"*sNi> #G*sN##_e> #G>3>*sN/ G*sN;i> #G*sNGi> #G*sNSi> #G*sN_6*sNk6*sNw6 #6> ̈́D}*sN{w*sN G*sN#ie> #G*sN/me> #G*sN;de> #G*sNG^e> #G*sNSne> #G*sN_6*sNk6*sNw6 #66 #6> ̈́D}*sN{w+'*sNi> #G*sN#_e> #G*sN/ce> #G*sN;de> #G*sNGee> #G*sNSne> #G* #G*sNSqe> #G*sN_i> #G*sNki> #G*sNww#w>̈́D}*sN{wj%*sNi> #G*sN#i> #G*sN/;i> #G*sNGi> #G*sNSi> #G*sN_6*sNk6*sNw6 #6> ̈́D}*sN{w^#V"Lk!OkJj>4G>2Nk*Lkn&}2]_e> #G*sN/ue> #G*sN;we> #G*sNGse> #G*sNSqe> #G*sN_6*sNk6*sNw6 #6> ̈́D}*sN{wÐ#*s)>3>!oe͟F*sN G*sN#ie> #G*sN/me> #G*sN;i> #G*sNG^e> #G*sNSne> #G*sN_6*sNk̈́D}*sN{we">3>!oe͟F*sN G*sN#ie> #G*sN/qe> #G*sN;se> #G*sNGue> #G*sNSwe> #G*sN_6*sNk6*sNw6 #6̈́D}*sN{w'>3>!oe͟F*sN G*sN#ie> #G*sN/me> #G*sN;de> #G*sNGi> #G*sN;i> #G*sNGi> #G*sNSi> #G*sN_6*sNk6*sNww#w>`̈́D}*sN{w&*sNi> #G*sk:]kog:Nkog[G,*Lk:Nk_FG!Ok>4G!JjOkxQF҅,!KjOkxQF+R+ͺ6!i%5!Lj>F-17LÂ,!PjOkxQF,R,Ni> #G*sN#i> #G*sN/ge> #G*sN;i> #G*sNGi> #G*sNSi> #G*sN_6*sNk6*sNw6 #66*sNw6 #6̈́D}*sN{w2**sNi> #G*sN#i> #G*sN/fe> #G*sN;i> #G*sNGce> #G*sNSi>sN_6*sNk6*sNw6 #6̈́D}*sN{wRC!ͺ6*sNF57LRL"ͺ6>%8!We%5!ye>IF-1!e>F-1!e>0F-1!e>F^e> #G*sNSne> #G*sN_6*sNk6*sNw6 #6̈́D}*sN{wh(>3>!ceG͟F*sN G*sN#ie> #G>3>*sN01 6!i%5!Qj>F-17LÂ,!WjOkxQFH,RE,ͺ6!j%5!Xj> F-17LÂ,R,ͺ6! j%5!Jj>F!Okn&@ }3>>^3>ͱFͱF-1%3/3қ2‘2 ʕ2 83%3Â2.²2%3/3Ҳ283%3ã2eʼ2E2%3+2%32-2%3/3bGG%3/32xGGG%32GyO;FŠ0!Pk6^#V^ß0è03>͌0!0*3>͌0K* 5!9DM_###^#6~4#+(1##o0$~`i#FG3!!!Nͪ9!N"l!ln;N7!l>FG3!R.!! Oͪ9! O"l!ln;c7*l"l!ln;!l9*l^#V!Ns#r*l^#V!Ns#j> F-1:Nkog>eE-1!j>F-17Lͮ0!OkF!Okn& |.R.ͺ6!,j%5!j>F-17L!Nk5/!JjOkxQFT/!Okn& |5> 5> 552hk!fk8!lkHÍ55^5^#Vf5D5͍5)5#F_5#N_5#^#r+s#^#V++r+s~)55)57Lê,R,ͺ6!j%5!Jj>F!Ok͟F-17L!Nk4Á+!Qkaj> #G>2Nk:Nkog |,!Qk:Nk_FG!`k>4G!^k0!Nk4,!Qk6!Okd3 bG%32:N 3833y2N,3~#z0 0!N_w!N~U34_!yNsbGbG2NG:N<2N=bG:yNbGͻ3“N # 11#1#{> 1#~w024"wNg1@1BZ!9_1V1~#4F1> 4V1&9‰1x2Ny v12N"dkM2r*l^#VF|*NF|Gʨ7!l 8*l^#V}*N}G7!l 8:N7*l^#V}*N}G7!l 8:N 8*l^#V}#/R /ͺ6!1j%5!j>F-17LQ/RQ/ͺ6!6j%5!Okn&@ }3>>^3>ͱF-17L/*sN{~eD!Qk G!jOkxQF?!Okj55^5q#p)5O54~ ҫ5_5s#r#s#r#q!5H55N55 Format Overflow*N-&N!k6O:Ny6!9G 6~j>4GR*-ͺ6>%8!j%5!dj>!F-17L!Pk6:Pk0!Pk6!Okj>4G2Nk!Qk6Rs-ͺ6>%8!j%5!j>1F-17L!Okn& |3:yNʓ3!N5!N4bG:NG:Nʡ3!N\3>2N34!N5­3:N!N<_!yN>w w>+3!N~5>.4G:Nx03:N> !NE4:N+1-/QF/!Ok>_wï/!Qk6R/ͺ6!;j%5!Ok>F-17L!Ok*Lk >́F!Nk4V.0/R/ͺ6>%87L/#'55y6O:N 6i6͜6)6{16*N|Z6j& *N*N[G#[G> ܤ6> ܤ6͜6> 6{=>'Ĥ6!9ʋ6=~#'„6{>:Nkog++|-ͮ0!OkF!jOkxQF?!OkjxQF?-!Ok!Qk >́F!ak0!Nk4s-!QkFD}2vN!Qk6!vN/:vNog ~45!N4!N5-2Nx!N^4{/4/4!yN~0>0)5 K4x=E4Gͺ424 r4:N[4l4!Nx24l4424824 †424> 404*dkJ2x2Ny2N"dkM2ͻ3:N!N\30GC2!9~#422*dkC252yN2N2N<2N!9%3 b2+u2%3Â2-‚2>2N!l8:Nʒ8*l6o8;2l:l8!N"l!"l!lH!N6#6!l6 :N8!l8^#V"l!N"l*l"l!lʹ@9!N"l!"l!l-Ë0R&0ͺ6>%8!@j%5!j>3F-17Lͮ0!OkFR]0ͺ6%8!Ej%5!-k>F-1!-k>F-17L!Ok>F!Jk>F!Kk>F0!Jk'̤6ͤ6o6{=>'Ĥ6{>b̤6*N++|2/l!-l8ɯ6>6>2:l";l"=l`i"?l!9"Al!0l6l ~# 6*l~Q7*l~&7!l>|F.> 2vNRF.ͺ6>%8!j%5!j>F-1:vNog>eE-1!j> F-17L*Lk6>2Nk:vN2ck:ckog:Nkog[G/R.ͺ6>%8!"j%5!4x4 ˜4x’4>424 £4ͺ424x­4>24=8í44x!N44ú4:N44:N> 44>2kk!ik.8:N5!N12 H9é9:N9*l~ "9*N#"Né9*l~ 69!N6#6é9:N9*l~ X9*N#"N!N6#6é9*l~ ©9*N#"N!N#z9!N6#6*N*|ʈ?+}o<(<~2B(<"B9<:Bҗ@=?G:Bҗ@*Bp?4#6xBT<:B?͂?*B++"B?}+?͈?}|2B"BT<͂?"=%#6ƒ=*B##^ ~?š=# “=xCON CON RDR PUN LST M!= ~͋<$2>ͅ<[<1=\=l2>$2>!~ 2>ͅxB"N#F#~(xBxB*~T!*B" s#r#w=xB*BN#[G|©9!N"l!"l!lH98!N6"l!9"l!l9! 9^m~# 9*m^#V|9*m*m F*m nbB1͂G|ʗ@##"B6*Bs#r<B{ B*B:Bw5@6X@*B"B '>ͅ<#>x=G>ͅ<>ɯ*B+4>^#V<>#{#z4>6#6<> r+s!2mF#~ړ>!2m6P  ͡L Dxg.>Gx|g}oËD bGbGG!9!yDD)0D1bG# íDyD) DxDMox&9`iG!9!x>E 9E+ E <*N#"N:+m  }!m6 4>2m*m!4#4#4~#N#F#y#x#:m*m!!:mBBҰB:m~G~#~O:*m !m>0G2:!l>F*m͝F!mF*m~#^:*m^#V)))|^:*m6P#6*m~#˜:*m^#V))|:*mz@*B~#BC*BIM>xB*Bw#wxB<9(xB*B~" 4#4#4<9>:AxB<L!3m^r+s6 #6 !3m4^N*B|>}=°>c>ÿ>ͻ=ʻ>O>~>>>?N*B|>Yͻ==>y>͡L>>~$%bGg9E-E0bG:bG0T])bG)bGbG)bGo|gbGD{NE$%bG}OE|bGz-SGo&9}/>:AxB*B~"A>xB+A͹CxB*B!*~!/2B*B|OA(^#VT?=?>?q2B*B/"BC>h?{M><>*B*B#:BOQ?<>#s#rZ?V>C>*?M>?<>r+s{y?!B4*B+>9_6 +=ˆEDM)ҟEO>G!E ®E>0E ³E>-3ÿET]))E寕iO>`G>0 E ȇ =p4ͅ<+͝<.=#[<:=#*&=6?*=wͅ<=[O>G!$q#p#6ûC"m"m2mx2m͗B2mͧB!m~5_DBD=,D:m,D*m<DͰB,>2m*m^#V}0;*m~#0;*m6#6*m"m*m"m*m"m!m͑?*m^#V|m;*m"'m!")m!mH^#V^#V͋L:NڋqÌAN>#lA*B|A*~A=!BA:B?A¼AwãA@><9 xB #uF}*UO"N:N*NNw# ˜L*UO{ ҲL ¶L!#"UOLCopyright (c) 1980 Digital Research, v1.3 !"m"m"m24O2N*m J}ڊJ.))BKI#F>AOJ> #®J~ >.TJ~ TJ=ßJ^#V# File: Traceback:JJJKK K-K=K ERROR FIXED OVERFLOW O2. ADM-31, Ampex Dialog 80 13. NEC 3. ADM-3, -5 14. SOROC 4. Apple (24 x 80) 1`##s#rHNHN FREE Request Out-of-Range$ Free Space Overwrite$GKHMbkHͻJFͺJNͺJN#FͺJ^#V"2Oy21OxIi&SYSINSYSPRINT ~#o>gxGҖFG4GwF#"mxFͱF*m!9G_>WObk++F~+Fy~#/;I!N{#z*N*N7LxyxGI͟I_!J^#VI͙I>(͛IyI>)͛I||I͎IcJ| ( (  ( ( ( ( ( ( ( ( ) 'GG#!9OxA4Gwo&9F##*Gx4GwF9GGOIGw# @G 6 #KGo>g{ozg!hGHpGqGrGtGvG Conversioq#p*m+"mʑMM=«M!+~O~#~G!/xMyM >O6# M ʺM=ɯ ~#fo+ Overflow$4Ox!m w#s#r#s#r!9!5O s#r!4ON!m +++++K#{K#zK++~K++!4O5!~# KK!4ONTelevideo 910, -12, -20 7. HP 80 Series 18. Televideo 925, -50 8. HP 2621, 125 19.I͎IIJN>,͛I͙I> _áL ͡L áL0:ڛIÛIͩIéI͙I|ͷI}÷I IdI IIIxͩIN #~ /TBMEQSVH@#.-DI5NPAK_FL dBASE II ZIP: copyright 1982 Hal Pawluk. TERMINAL INSTALLATIOn#}OD*m~G##~#fo‹G!GHGGGGG Free Space Exhausted##^#V#{_zWڍH{_zWڐG4zG{H##^#V# ##s#rs#r#+iM!m~#N*m`MN=NNON  Insufficient Memory$ Invalid I/O List End of Execution$dNb bb !m +++++ L#~#/L+{*L#z/L++~ L#^#V=!N~͋L5:N_!N^#V"NN.~# ]L*N)))))N )| rL*N| Vector Graphics 9. Hazeltine 1500 20. Visual 100 10. Heath 89 21. Xerox 820 ͛II!JI*m!9{_z)J{)J =J;J͙I>#͛I*m>=^#V#I=JTJ>: ^J>?͛I!JII>=͛I^#V|N 0. To install an unlisted terminal. 1. ADDS Viewpoint,Regent 12. INTERTEC SuperBrain, CompuStar s#r+++~sw#r####}*m}|҇H*{z҇H+F+N+V+5^{ڍH{zҍH}|ҍH{gHgHi`~sw#r##q#p i`N#F#^#V~ҍHq4#p+i34  11. IBM 3101 22. SKIP to ZIP commands for previously installed terminal.If your terminal is listed, enter the number t(usually 1 or 2 characters)You may enter up to 11 characters for each sequence, using any characters(printing or non-printing) ee running ZIP: : Vertical marker. : Horizontal marker. : Tab spacing (1-9). : Margin sNPWsNPPPRSOR, current value (Type "Y" if the screen cleared.Otherwise, press any key: YyNow the sequence to POSITION THE CURSOR, often lET variable.[] : RESERVED for EMBEDDED COMMANDS : Command lead-in marker. : HELP during ZIP session. : Middle of line : Top of snd single characters,enter a length of "1" and press the appropriate arrow key. On some terminals a single key (such as CLEAhen .Enter 22 to change ZIP command defaults only.Enter 0 for the first installation of an unlisted terminal. 09Will inxcept RETURN. ZIP will accept the charactersonly, not the ASCII codes or names for the characters. Use the translationchart in        ike this on ASCII terminals Most terminals send the ROW and COLUMN values as single nucreen. : Bottom of screen. : Previous screen. : Next screen. : First screen. : Last screen. : Delete character. : Insert space. R or the ARROWS) may senda sequence of two or more characters. These must be entered one characterat a time rather than by presstall user-supplied sequences.fEnter C to CHANGE symbols, F if FINISHED.CcType C to CHANGE entry, any other key to continue.  the ZIP manual to find the keys to press if your sequences aregiven as decimal or hexadecimal codes or ASCII names. To ente  We'll need the following control sequences for your terminal: * CLEAR SCREEN & HOME CURSOR (usmbers, but some(e.g., HP125, VT100) send the digits individually. The value for ROW 20for example, would be sent as "2" then "0: Kill cursor line. : Add line at cursor. : Draw/Erase vertical line. : Draw/Erase horizontal line. : ERASE screen data. : SAVE sing the single key. First enter the lengthof the sequence, then enter the characters one at a time. Press any key to in Type the symbol or number you want to change: az?Enter new value (0 - 127), then : Now type tr a control function, hold the control key down and press thecharacter key shown in the chart in the ZIP manual. To enter controually 2 or more characters) * DIRECT CURSOR POSITIONING (often 4, 6 or more characters) * CURSOR ARROWS ", rather than "20".Does this terminal send individual digits for positioning (Y or N)? Most terminals do NOT, so if you're not screen, write .CMD/.FMT files. : QUIT to system. : Display this screen.The following values can also be changed dynamically whilstall the control sequences. (Use the carriage after entering the length of a sequence.)First, CLEAR SCREEN & HOME CUhe replacement symbol or number: 1[]RESERVED--Enter alternate choice: ZIP: copyright 1982 Hal Pawluk : DISPLAY variable. : Gl-L,hold down the control key and press "L". To enter ESCAPE, type control-[or simply press the ESC key. If your arrow keys se45 certain try "N".1N0For both types of addressing, enter a "0" at the positions in the sequenceswhere the and valueCURSOR UP = ESC D control-E"Cursor lock" does not work with ZIP, but you can speed up cursor movementby installing thnal may require a lead-in character that you over-looked when entering the sequence.Type C to CHANGE entry, any other key to con to CHANGE entry, any other key to continue. Cc `k Ok hk kk tkukNvkxk Invalidterminals, like the Hazeltine 1500, needa short delay after the screen is cleared orthe first few dozen characters will not bedins about CURSOR POSITIONING, BACKSPACE,terminal DELAY, and terminal INITIALIZATION and TERMINATION sequences. Press go. For the sample at the top of thisscreen, the length would first be entered as "4", then "0" would be enteredwhen ZIP askse control functions shown on the right. You'll find thatthe "diamond" arrangement is easier to use. The simplest way to instinue. Cc+e.eX`XX;eX@eKeX`ReX` Y  ;= *DCABYour te Format Item 1}W1=e 0s'0W.0V500֟splayed at the top of the screen.Most terminals do NOT need this delay, andZIP will run faster if the delay (about 45milliseconds any key to continue. E ?a <=>HJH&ay C&s1a&s0a~~ EHL  [; H  you for characters 3 and 4.The current value is (ROW position is character number: 9COLUMN position is character number:  The tall these is to type "F" at the end of thenext screen, then go through ZIPIN again, but this time choose the custominstallationrminal has been installed with the standard APPLE cursor controls: INSTALLED: YOU MAY PREFER: CURSOR /l:l;l=l?lAl Stream/Record Sequen/Direct Input/Output Keyed Access P<s) is not installed.Do you want to install the delay now? Does your keyboard have a BACKSPACE keythat erases characters (Y or N) ESC  ). to leave it unchangcurrent value of the OFFSET for the cursor positioning codes is: Do you want to change it (Y or N)? Enter new value (0-199), the sequence. ZIP will have installed the CLEAR SCREEN & HOME CURSOR and DIRECTCURSOR POSITIONING sequences, and you can skip bRIGHT = ESC A control-D CURSOR LEFT = ESC B control-S CURSOR DOWN = ESC C control-X  $conllN{lClQl_lmlllll lllll llllllll.dat? (Enter any key except "Y" if you do not wantyour backspace key to erase.) Please check the manual for your terminal.Your termied orEnter the sequence length (1-11), then : 09Okay, it is then.Character: RESERVED CHARACTER--try again.ESCaz1Type Cn : CURSOR UP, current value (CURSOR DOWN, current value (CURSOR RIGHT, current value (CURSOR LEFT, current value (Some y them using the carriagereturn. Install the control codes as described in the ZIP manual. Answer "NO" to the other questio56 mmmll'm)m0m+mrs new deposits into user database file. 4. XCANCEL - Enters cancelled checks into user lancing and check register maintenance. The program helps automate the procedure we all experience when we receive the  - The check number, INTEGER TO - The recipient of the check, CHARACTER CAN - The cancelled/not-cancelled stasignifies a user keyboard carriage return. Lower case text enclosed in square brackets [] denotes document explanatormdatabase file. 5. XDEPCANC - Enters cancelled deposits into user monthly statement from the bank. This system could be used for personal or business applications. The system uses an ustus of a check or deposit, LOGICAL. DATE - Date when the check was written, CHARACTERS MEMO - Code y text and is not part of any file or run stream and should not be entered into the user's runstream. Prior to using th database file. 6. XBALANCE - Sums the total outstanding checks and deposits. Ask for eer defined database file and six associated command files. The six dBASE command files and their functions are: 1for users accounting files: A-Advertising B-Bank Charges C-Car + Truck D-De system a user specified database file must be available for the command files to access. In any database project, onding balance from bank statement and computes the current checkbook ba. XMENU - System controller. 2. XNEWENTR - Enters new checks into user database file. 3. XDEPOSIT - Enteues + Publications F-Freight I-Insurance L-Legal Expenses O-Office Suppli CHECKBOOK BALANCING SYSTEM This example illustrates how a dBASE system can be designed for checkbook bane must plan the data fields that will be required. For this example, the following fields are selected: NOlance. The following conventions are used in the text that follows. The character > sigifies the system prompt. (cr) 67 es P-Postage R-Rent T-Telephone X-Taxes .PA Enter the followf T is .TRUE.". Since T is a literal .TRUE., its value is always TRUE and the loop will never terminate. Well almost nev (a word processor can be used). The CP/M extension should be specified. For dBASE command files, it is ".CMD". For exET TALK OFF * - enter user database file name ACCEPT "Enter check database name" to DBF * - access database file USE &DBF ,C,30(cr) [field name is TO with 30 Characters] 003 AMT,N,10,2(cr) [similar explanations for rest of file] 004 CA This permits this system of command files to be used with any number of seperate checkbook databases. 4. In general, ing to CREATE the database structure. The database file name is CHECKER. >DBASE(cr) [initiate the dBASE system ter, there is a CANCEL command inside the DO WHILE that aborts the entire command file. This is called a "DO FOREVER" inample, the first command file is XMENU, it is entered into the text processor as "XMENU.CMD". Things to especially n * - specify disk containing command files ACCEPT "Enter disk drive containing command files as 'A:' or 'B:'" to DISK SET DEFN,L(cr) 005 DATE,C,8(cr) 006 MEMO,C,10(cr) 007 (cr) INPUT NOW?:N [indicates not going to enter data to ficommand files should not be written that make explicit references to specific disk drives. This is avoided in this examo begin processing] ENTER TODAYS DATE AS MM/DD/YY OR RETURN FOR NONE : (cr) *** dBASE II VER 2.xx .CREATE(cr)  some structured languages. 3. In general, command files should not be written that make explicit references to spotice in this example are: 1. How the menu entries are distinguished by the DO CASE programming structure. 2. AULT TO &DISK * - this is text that is displayed on the screen DO WHILE T * DO WHILE T means DO WHILE TRUE I.E. DO FOREVERle now] .QUIT(cr) [exit the dBASE system] *** END RUN dBASE II *** [dBASE message to user] .pa The dBple by the lines 'ACCEPT "Enter disk drive containing command files as 'A:' or 'B:'" to DISK' and 'SET DEFAULT TO &D [tells dBASE you want to create a file] FILENAME:CHECKER(cr) [asks what you want to name file] ENTER RECORD STRUCTURE ASecific database files. This is avoided in this example. The database name is supplied by the user in response to the liA "DO WHILE T" is used to repeat the menu. DO WHILE T essentially says "DO this segment of commands WHILE the value o * The DO WHILE will be terminated by a CANCEL command internally ? ? ? ? ' CHECK BOOK BALANCER MENU' ?ASE command files that are used to do the checkbook processing are listed below. These were built with a text editor ISK'. NOTE - EXAMPLE dBASE CHECK BALANCER COMMAND FILE PROGRAM * * * - turn off display of commands to screen S FOLLOWS: FIELD NAME,TYPE,WIDTH,DECIMAL PLACES 001 NO,N,4(cr) [field name is NO with 4 Numeric chars] 002 TOne 'ACCEPT "Enter check database name" to DBF' and the subsequent 'USE &DBF' instead of something like 'USE B:CHECKS'.78  ? ' 0 - EXIT' ? ' 1 - ENTER NEW CHECKS' ? ' 2 - ENTER DEPOSIT' ? ' 3 - ENTER CANCELLED ' 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  recording the name and amount of the check in our checkbook as we write them. Notice the '@' commands that "paint" a pictsits to the checkbook. NOTE - DEPOSIT COMMAND FILE TO ENTER NEW DEPOSITS * REMARK ENTER DEPOSIT AMOUNT OF 0 TO EXIT * test for cancelled checks CASE ACTION='3' * - enter cancelled check data DO XCANCEL * - test for ca EXPENSES S - OFFICE SUPPLIES P - POSTAGE' @ 16,0 SAY 'R - RENT T - TELEPHONE X - TAXES'  CHECKS' ? ' 4 - ENTER CANCELLED DEPOSITS' ? ' 5 - BALANCE' ? ? ' ENTER DESIRED ACTION' * - readinZERO TO EXIT' @ 6,0 SAY 'IF CHECK NUMBER=0, ENTER CARRIAGE RETURNS FOR OTHER ENTRIES' @ 7,0 SAY 'CHECK NUMBER ' Gure on the screen NOTE - EXTENDED NEWENTR COMMAND FILE TO ENTER NEW CHECKS * * - clear screen ERASE * - position t - initialize date value STORE '01/01/81' TO C:DAT DO WHILE T ? ? * - reading deposit entries INPUT "Amount ofncelled deposits CASE ACTION='4' * - enter cancelled deposit data DO XDEPCANC * - test for balancing @ 18,0 SAY 'ENTER PURPOSE LETTER' GET CH:MEMO READ IF M:NO=0 RETURN ENDIF * - put blank card into database fig user response WAIT TO ACTION DO CASE * - testing to exit CASE ACTION='0' SET TALK ON * - returET 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 WRITTEo bottom of database file GO BOTTOM * - initialize date STORE '01/01/81' TO CH:DAT DO WHILE T * initialize memory variab Deposit " TO C:AMT * - if deposit amount equals 0, exit command file IF C:AMT=0 RETURN ENDIF STOR check book CASE ACTION='5' * - compute ending balance DO XBALANCE * - non-valid entry to the menu le APPEND BLANK * - put check data into database file REPLACE NO WITH M:NO,TO WITH CH:TO,AMT WITH M:AMT; DATE WITn to dBASE system CANCEL * - test for new checks CASE ACTION='1' * - enter new check data DON ' GET CH:DAT PICTURE '99/99/99' @ 11,0 SAY 'PURPOSE OF CHECK' @ 13,0 SAY 'A - ADVERTISING B - BANK CHARles so that READ will have a length to mark STORE ' ' TO CH:TO STORE 0.00 TO M:AMT STORE 'E C:DAT TO OLD:DATE * - read date of deposit ACCEPT "Date of Deposit as MM/DD/YY " TO C:DAT * - if date is blank, us OTHERWISE ? 'Invalid entry, re-enter' ENDCASE ENDDO RETURN .pa The XNEWENTR command file is analogous toH CH:DAT,CAN WITH F,MEMO WITH !(CH:MEMO) ENDDO .pa The XDEPOSIT command file records the date and amount of any depo XNEWENTR * - tesfot r new deposits CASE ACTION='2' * - enter new deposit data DO XDEPOSIT * -GES C - CAR + TRUCK' @ 14,0 SAY 'D - DUES + PUBLICATIONS F - FREIGHT I - INSURANCE' @ 15,0 SAY 'L - LEGAL89 e current date IF C:DAT=' ' STORE OLD:DATE TO C:DAT ENDIF * - ask if all fields are correct INPUT "ARE ALL FIEtement. note - DEPOSIT CANCELLATION PROGRAM * * - position to top of database file GO TOP DO WHILE T *- find firstDISP OFF 'Payed to ',TO,' on ',DATE DISP OFF 'Amount of check is ',AMT * - ask if this is right check INPUT 'I * - display total of outstanding checks DISP OFF ' TOTAL OUTSTANDING CHECKS = $',OUTSTAND ? * - display total of ge to be displayed on screen REMARK ENTER CHECK NUMBER OF 0 TO EXIT * - loop while check number not equal to zero DO WHILE T * - tell user there are not more deposits ? 'No more uncancelled deposits' RETURN ENDIF * IF NOT EOF ? LDS CORRECT ? " TO GO:NOGO * - test for correct data IF .NOT.GO:NOGO LOOP ENDIF * - put blank card into  uncancelled deposit LOCATE FOR NO=0 .AND. .NOT. CAN NEXT 65000 * - if not at end of character field IF .NOT.EOF s this the one? (Y/N)' to ANSWER IF ANSWER * - change logical flag for cancelled check REPLACE CAN WITHoutstanding deposits DISP OFF ' TOTAL OUTSTANDING DEPOSITS = $'T:OUT ? * - request ending balance form check book INPUT ? INPUT "ENTER CANCELLED CHECK NO" TO C:CAN * - testing for zero check number IF C:CAN=0 RETURN ENDIF  INPUT 'Any more deposits to cancel? (Y/N)' to ANSWER IF .NOT. ANSWER RETURN ENDIF ENDDO RETURN .pa The XBALAdatabase file APPEND BLANK * - put deposit data into database structure REPLACE NO WITH 0,TO WITH 'DEPOSIT',AMT WITH C ? * - display date and amount of deposit * MAKE SURE THIS IS THE THE RIGHT ONE DISP OFF 'Deposited on ',DATE T ENDIF ELSE * - message to tell user his check is not in file. DISP OFF 'Check ',C:CAN,' cannot be found "ENTER ENDING BALANCE FROM BANK STATEMENT" TO BEGIN DISP OFF 'CURRENT BALANCE = $',BEGIN+T:OUT-OUTSTAND WAIT RETURN .PA  * - position to top of database file GO TOP * - search for cancelled check number LOCATE FOR C:CAN=NO * - testinNCE command file does the final reconciliation of the bank statement with the user checkbook. NOTE - BALANCE COMMAND FI:AMT REPLACE DATE WITH C:DAT,CAN WITH F ENDDO .pa The XCANCEL command file is analogous to checking off the ca,' Amount = ',AMT INPUT ' Cancel this one? (Y/N)' TO ANSWER * - ask if deposit is to be cancelled IF ANSWER ' ENDIF ENDDO RETURN .pa The XDEPCANC command file enters the cancelled deposit data furnished on the bank sta CHECKBOOK REPORTING SYSTEM This dBASE sample illustrates the use of the INDEX and REPORT commands. g to see if at end of database file IF .NOT.EOF * - if not at end of file ? `* - display check data LE TO BALANCE CHECKBOOK * SUM AMT TO OUTSTAND FOR .NOT. CAN .AND. NO>0 SUM AMT TO T:OUT FOR .NOT. CAN .AND. NO=0 ? ? nceled checks we receive with the bank statement. NOTE - CANCELS COMMAND FILE TO ENTER CANCELLED CHECKS * * - messa * - change logical flag for cancelled deposit REPLACE CAN WITH T ENDIF ELSE * END OF FILE ? 9:  This dBASE system uses the database file generated by the XMENU check balancing system discussed previously. The sys database file from XMENU ACCEPT 'Enter check database name' to DBNAME * - assign data base file to this command system * -entered: The CHREPORT command file: NOTE - report on the checks in a database * - this dBASE II system uses the dat,1,2) [width,contents] DATE;WRITTEN [enter heading] 12,AMT [width,content] >AMOUNT [enter heading] Y [are totals requireave already been created for using this system. A listing of the file structure follows. FIELD NAME,TYPE,WIDTH,DECIMAL P Y [page heading? (y/n)] Checks subtotalled by type [enter page heading:] n [double space report? (y/n)] y [are totals retem list the checks by MEMO type and their subtotals and totals. The system uses a command file, a database file and database has name of xxxx.DBF USE &DBNAME * - index on variable MEMO in database file INDEX ON MEMO TO &DBNAME * - enter abase file generated by the * - check balancing system initiated by XMENU. This check report * - system reads the XMENU datd? (y/n)] .pa A sample run using these command files follows. First the user is presumed to have "CREATEd" a databaseLACES 001 NO,N,4(cr) [field name is NO with 4 Numeric chars] 002 TO,C,30(cr) [field name is TO with 30 Characters] quired? (y/n)] y [subtotals in report? (y/n)] MEMO [enter subtotals field:] N [summary report only? (y/n)] N [eject page a report form file. The files associated with this system and their names are: 1. CHREPORT - System controtitle to be printed at top of each output page ACCEPT 'Enter report title (up to 60 chars)' to TITLE * - set header to title a base and report the subtotals for * - each of the various user memos. * * note: uses database with structure same as XMEN file called CHECKER. >DBASE [initiate the dBASE system] ENTER TODAYS DATE AS MM/DD/YY OR RETURN FOR NONE: 11/04/8 003 AMT,N,10,2(cr) [similar explanations for rest of file] 004 CAN,L(cr) 005 DATE,C,8(cr) 006 MEMO,C,10(cr)  after subtotals? (y/n)] Check type : [enter subtotals heading:] 5,NO [width, contents] CHECKNO [enter heading] N [are toller. 2. CHREPORT - Report forms file generated when the user uses the REPORT dialog. value SET HEAD TO &TITLE * - generate report form using CHREPORT.FRM REPORT FORM CHREPORT FOR NO#0 TO PRINT RETURN .pa U * ? 'THIS PROGRAM IS SET TO RUN ON YOUR PRINTER. IF PRINTER IS NOT READY' ? ' THE PROGRAM MAY HANG UP.' * - enter name of1(cr) *** dBASE II VER 2.xx .DO CHREPORT(cr) [initiate the check report system] THIS PROGRAM IS SET TO RUN ON YO 007 (cr) .pa A text editor is then executed and the following command file sources with the extention ".CMD" are tals required? (y/n)] 33,TO [width, contents] PAY TO THE ORDER OF [enter heading] 10,$(DATE,3,2)+'/'+$(DATE,5,2)+'/'+$(DATE 3. CHECKER - Database file generated by XMENU system. The data base structure is presumed to h The CHREPORT.FRM file is listed here. The notations in square brackets indicate the REPORT prompts being answered. :; UR PRINTER. IF THE PRINTER IS NOT READY THE PROGRAM MAY HANG UP. Enter check databse name:CHECKER(cr) [enter name of database L 01/25/81 239.56 ** SUBTOTAL ** 239.56 NSURANCE 01/05/81 40.00 ** SUBTOTAL ** 40.00 lier. The system accesses a database file called ACCNTS and asks the user if he wants to pay any checks to the accounts i BANK 05/07/80 55.10 ** SUBTOTAL ** 55.10 7.76 ** TOTAL ** 2444.7file] Enter report title (up to 60 chars): THIS IS A SAMPLE CASE(cr) .pa PAGE NO. 00001 THIS IS A SAMPLE CASE  .pa PAGE NO. 00002 THIS IS A SAMPLE CASE Checks subtotalled by type CHECK P * Check type : L 1006 SHUSTER LEGAL CLINIC 01/05/81 333.22 ** SUBTOTAL ** n the file. When a check is paid, a record of the check is made in the CHECKS database file. The system also allow * Check type : D 1005 HARVEY MUDD 01/01/81 169.34 ** SUBTOTAL ** 3 .QUIT [leaving dBASE system] *** END RUN dBASE II *** .PA SIMPLE ACCOUNTS PAYABLE SYSTEM Thi Checks subtotalled by type CHECK PAY TO THE ORDER OF DATE AMOUNT NO AY TO THE ORDER OF DATE AMOUNT NO WRITTEN * Check type : S 1 333.22 * Check type : P 1002 POSTMASTER 05/05/80 22.41 s the user to write checks to accounts not in the ACCNTS database. The system uses a command file and two database f 169.34 * Check type : F 1004 NEWTON PHYSICS LAB 01/01/81 1000.0s is a check printer system. This example demonstrates direct formatting of printer output and the usage of PRIMARY a WRITTEN * Check type : A 1008 PRESSURE ADVERTIZING AGENCY 04/05/80 500001 MITCHELL OFFICE SUPPLY 04/05/80 77.34 ** SUBTOTAL **  ** SUBTOTAL ** 22.41 * Check Type : R 1009 SMITH OFFICE RENTAiles. The files associated with this system and their names are: 1. ACCNTPAY - System controller. 2. ACCNT0 ** SUBTOTAL ** 1000.00 * Check type : I 1007 PIECES OF ROCK Ind SECONDARY databases. This system uses the CHECKS data base file generated by the check balancing system discussed ear.00 ** SUBTOTAL ** 500.00 * Check`type : B 1003 FIRST NATIONAL 77.34 * Check type : X 1010 GOV MEDFLY STATE TAX BOARD 01/25/81 7.76 ** SUBTOTAL ** ;< S - Database file used to display the accounts to be paid. 3. C 008 006 MEMO C 010 ** TOTAL ** 00064 .pa For the ACCNTS file the following field to have already been created for using this system. A listing of the file structure follows. STRUCTURE FOR FILE: CHECK - explanatory text ? 'THIS PROGRAM USES THE PRINTER. IF YOUR PRINTER IS NOT READY IT' ? ' MAY HANG UP AT THIS  check or deposit, LOGICAL. DATE - Date when the check was written, CHARACTERS MEMO - Code for usersLD NAME TYPE WIDTH DEC 001 PNAME C 030 002 AMT N 010 002 003 DDATE HECKS - Database file generated by check balancing system. Prior to using the system, user ds were selected: PNAME - Payees name AMT - Amount outstanding in account DDATE - Date S.DBF NUMBER OF RECORDS: 00010 DATE OF LAST UPDATE: 00/00/00 PRIMARY USE DATABASE FLD NAME TYPE WIDPOINT. FURTHER DOWN IN THIS FILE' ? ' YOU WILL FIND A SECTION OF CODE TO SET UP AN ANADEX PRINTER FOR' ? ' PRINTING CHECKS. US accounting files: A-Advertising B-Bank Charges C-Car + Truck D-Dues + Pub C 006 004 LDATE C 006 005 LAMT N 008 002 006 TYPE C 010 007 PERIOD specified database files must be available for the command files to access. In any database project, one should consiaccount was opened LDATE - Last date a payment was made LAMT - Last amount still owed TYPETH DEC 001 NO C 004 002 TO C 030 E YOUR TEXT EDITOR TO MODIFY THIS FOR YOUR' ? ' PRINTER. ' * - turn off printing commands to screen SET TALK OFF * - selications F-Freight I-Insurance L-Legal Expenses O-Office Supplies  N 001 008 VARIABLE L 001 ** TOTAL ** 00073 .pa A text editor is then executed and the folder what data fields will be required. For the CHECK file, the following fields were selected: NO - The  - Account memo PERIOD - Payment period VARIABLE- Logical flag The structue of the database file is 003 AMT N 010 002 004 CAN L 001 005 DATE C nd results of @ statements to printer SET FORMAT TO PRINT * - echo output to printer SET PRINT ON * - turn off console SE P-Postage R-Rent T-Telephone X-Taxes The data base structure is presumelowing command file source with the extention "CMD" is entered: NOTE - THIS IS THE ACCOUNT PAYING COMMAND FILE * * * check number, INTEGER TO - The recipient of the check, CHARACTER CAN - The cancelled/not-cancelled status of a a follows: STRUCTURE FOR FILE: ACCNTS.DBF NUMBER OF RECORDS: 00007 DATE OF LAST UPDATE: 00/00/00 PRIMARY USE DATABASE F<= T CONSOLE OFF * - go to top of page on printer EJECT * - this is the ANADEX 9500 text * SET`FORM LENGTH TO 22 LINES ON ANAAME * - is check hasn't been canceled IF .NOT.VARIABLE * - check to get amount still owed STORE number to print check for INPUT 'Which Account' TO ACCNT * - check to see if exit IF ACCNT<0 * - set loop var 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,6efault to database disk drive SET DEFAULT TO &DRV USE CHECKS * - select primary database file SELE SECO USE ACCNTeck STORE STR(NNO,4) TO XNO STORE STR(MAMT,10,2) TO XAMT * - show user on screen proposed check values DISP OFF 'ChDEX 9500 * ESC 4 022 * - create ASCII string of esc4022 ? CHR(27)+CHR(52)+CHR(48)+CHR(50)+CHR(50) * - turn off echo SET PS.AMT TO MAMT IF TODAY>=LDATE STORE S.AMT+LAMT TO MAMT ENDIF ELSE * - user option iable false to exit program STORE F TO STAY LOOP ENDIF * - check to see if writing check not in ACCNTS IF 7 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,1S * - set up program loop DO WHILE STAY * - select seconary file ACCNTS SELECT SECONDARY ? ? * - list dataeck #',XNO,' Pay ',XAMT,' To ',NAME * - ask if you want to print this check ? 'OK? (Y/N)' WAIT TO X * - see if cheRINT OFF * - echo output to console SET CONSOLE ON * - set loop variable true STORE T TO STAY * - request current date on amount to pay this time INPUT 'Enter Amount To Pay ' TO MAMT ENDIF IF PERIOD>0 IF (VAL($(DDATE,ACCNT=0 * - request data for check ACCEPT 'Enter Payee ' TO NAME INPUT 'Enter Amount ' TO MAMT ELSE 2 SAY NAME @ 11,68 SAY MAMT USING '$$,$$$,$$$.99' @ 17,12 SAY INT(MAMT) USING '$$,$$$,$$$' @ 1wl23 SAY 'D O L L A R S and  from ACCNTS LIST PNAME,S.AMT,DDATE ? ? ? ? ' ENTER OPTION YOU WANT' ? ' -1 - EXIT' ? ' ck is to be written IF X=$('Yy',1,1) .OR. X=$('Yy',2,1) * - select primary file SELE PRIMARY APPEND BLANKACCEPT "Enter Today's Date (YYMMDD)" TO TODAY * - ask for beginning check number for this run INPUT 'Enter Beginning Check 3,2))+PERIOD)>12 STORE VAL(DDATE)+((88+PERIOD)*100) TO NDATE ELSE STORE VAL(DDATE)+100*PERIOD T * - locate account number in ACCNTS file GOTO ACCNT * - store payee name to variable NAME STORE PNAME TO N' @ 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 '--0 - WRITE CHECK TO ACCOUNT NOT IN DATABASE' ? ' N - NUMBER OF ACCOUNT TO WRITE CHECK FOR' * - ask for account  * - put check data into primary file REPLACE TO WITH NAME,NO WITH NNO,AMT WITH MAMT,CAN WITH F REPLACE DATENo. ' TO NNO * - ask for disk drive with database files ACCEPT 'Enter Data Disk Drive ' TO DRV * - set system dO NDATE ENDIF REPLACE DDATE WITH STR(NDATE,6) ENDIF ENDIF * - store variables to be printed on ch=> --------------------------------------' EJECT ENDIF ENDDO RETURN .pa A sample run using these files follows. First T IN DATABASE N - NUMBER OF ACCOUNT TO WRITE CHECK FOR Which Account: 0(cr) Enter Payee: CLIPUM MOTORS Enter AmouO ACCOUNT NOT IN DATABASE N - NUMBER OF ACCOUNT TO WRITE CHECK FOR Which Account: 1(cr) Check # 1025 Pay  -------------------------- Type: R -------mm-----------------------------RINTING CHECKS. USE YOU TEXT EDITOR TO MODIFY THIS FOR YOUR PRINTER. Enter Today's Date (YYMMDD):811130(cr) Enter Beginningcr) . QUIT [exiting dBASE system] *** END RUN dBASE *** .pa The following is the printed output from the ACCNTPAY sy the user is presumed to have "CREATE"d a database file called CHECKS and a database file call ACCNTS. >DBASE [initnt: 123.45 Check # 1026 Pay 123.45 to CLIPUM MOTORS OK? (Y/N) WAITING Y 0001 SMITH OFFICE RENTAL 23 234.56 to SMITH OFFICE RENTAL OK? (Y/N) WAITING Y 0001 SMITH OFFICE RENTAL 234.56 801001 0002 HURTZ BUSINESS CAR --------------------------- Check No. 1026  Check No. :1025(cr) Enter Data Disk Drive :B:(cr) 0001 SMITH OFICE RENTAL 234.56 800901 0002 HURTZ BUSINESstem. ----------------------------------------------------------------- iate the dBASE system] ENTER TODAYS DATE AS MM/DD/YY OR RETURN FOR NONE: 11/04/81(cr) *** dBASE II VER 2.xx 4.56 801001 0002 HURTZ BUSINESS CAR LEASING 300.00 800620 0003 PRESSURE ADVERTIZING AGENCY 500.00 800723 0004 TIDY LAUNDRYLEASING 300.00 800620 0003 PRESSURE ADVERTIZING AGENCY 500.00 800723 0004 TIDY LAUNDRY 40.00 800701 0005 MUN Date: 11/30/81 Pay to the Order of CLIPUM MOTORS $$$S CAR LEASING 300.00 800620 0003 PRESSURE ADVERTIZING AGENCY 500.00 800723 0004 TIDY LAUNDRY 40.00 800701  Check No. 1025 Date: 11/30/81 Pay to the Order of SMITH OFF.DO ACCNTPAY(cr) [initiate the check report system] THIS PROGRAM USES THE PRINTER. IF YOUR PRINTER IS NOT READY IT M 40.00 800701 0005 MUNICIPAL WATER DEPARTMENT 10.00 800705 ENTER ACCOUNT OPTION -1 - EXITICIPAL WATER DEPARTMENT 10.00 800705 ENTER ACCONT OPTON -1 - EXIT 0 - WRITE CHECK TO ACCOUNT NO$$$$$$123.45 $$$$$$123.45 D O L L A R S AND 56 C E N T S - 0005 MUNICIPAL WATER DEPARTMENT 10.00 800705 ENTER ACCOUNT OPTION -1 - EXIT 0 - WRITE CHECK TICE RENTAL $$$$$$$$234.56 $$$$$$$$$234 D O L L A R S and 56 C E N T S AY 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 P 0 - WRITE CHECK TO ACCOUNT NOT IN DATABASE N - NUMBER OF ACCOUNT TO WRITE CHECK FOR Which Account: -1(>? --------------------------- Type: R ----------------------------------------------------------------- .PA here. TITLE - Title code of person, Mr, Mrs, etc. NAME - Name of person in mailing list. ted. 6. MAILINFO.CMD - Contains text of form letter to be printed. 7. MAILFMT.FMT the follwoing command file sources with the extention "CMD" are entered: First the MAIL commmand file: NOTE Example e command files, a dBASE II format file and generates and text file. The files and their functions are: 1. MAIREATE FILENAME:MAIL(cr) [asks what you want to name the file] ENTER RECORD STRUCTURE AS FOLLOWS: FIELD NAME,TYPE,WID MAILING SYSTEM This example illustrates a dBASE II system for mailing list generation, ma OF - Name of addressee's company. ADDR - Address of person and/or company. CITY - Ci - Format file for reading in name and address data in MAILENTR.CMD 8. PRINT.TXT - OdBASE Command file program * * - this is a sample form letter generator and mailing label * - dBASE II system. The systemL.DBF - Database file containing mailing list 2. MAIL.CMD - System controller. 3. MAILENTR.CMD -TH,DECIMAL PLACES 001 TITLE,N,1 002 NAME,C,30 003 OF,C,30 004 ADDR,C,30 005 CITY,C,20 00il label printing or form letter printing. The system does not have provisions for modifying the mailing list. The uty of residence. STATE - Postal abbreviation of state. ZIP - Zip code. .pa Enter the follutput file containing form letters. Prior to using the system a mailing list database file mus allows the user to add new * - entries to a mailing list, print the mailing list on gummed * - labels or print a form lett Enters names and addresses to mailing list file MAIL.DBF 4. MAILLAB.CMD - Prints mailing6 STATE,C,2 007 ZIP,C,6 008 (cr) INPUT NOW?:N [indicates not going to enter data to file now] . QUIT [leaser can change entries in the mailing list using the dBASE II commands DELETE and/or EDIT. This system illustrates the use owing to CREATE the mailing list database structure. The database file name is MAIL. >DBASE(cr) [initiate the dBASEt be available for the command files to access. The following variable names are accessed by the system presented er addressed to all the people * - in the mailing list. No provision is made to modify the * - mailing list. The user ca labes from mailing list file MAIL.DBF 5. MAILLTTR.CMD - Generates form letter to be prinving dBASE system for now *** END RUN dBASE II *** [dBASE message to user] A text editor is then executed and  of format files, text files and the SET ALTERNATE command. The system uses a user defined mailing list database file, fiv system to begin processing] ENTER TODAYS DATE AS MM/DD/YY OR RETURN FOR NONE : (cr) *** dBASE II VER 2.xx .C?@ n use the dBASE commands EDIT and/or * - DELETE to modify the database file MAIL.DBF to change the * - mailing list. * * ' ' TO MOF,MADDR * - read format file READ * - check to see if ready to exit this commanommand file add names to the MAIL.DBF file using the MAILFMT.FMT format file. NOTE - MAIL SYSTEM NAME AND ADDRESS ENTRY PRress] @ 11,1 SAY 'Enter Address ' GET MADDR [enter city name] @ 12,1 SAY 'Enter City ' GET MCITY [enter tworesponse WAIT TO ACTION * - test for exit IF ACTION='0' SET TALK on CANCEL ENDIF * - test fta @ 1,1 SAY ' 1 = "Mr."' @ 2,1 SAY ' 2 = "Mrs."' @ 3,1 SAY ' 3 = "Ms."' @ 4,1 SAY ' 4 = "Dr."' @ 5,1 SAY  - turn off display of commands to screen SET TALK OFF * - assign database file to command stream. USE MAIL * - enter currd file IF MTTL=' ' RETURN ENDIF * - combine first and last name and store STORE MSNAM+MGNAME TO MNAME * -OGRAM * * - move pointer to bottom of MAIL.DBF GO BOTTOM * - send output of @ commands to MAILFMT.FMT SET FORMAT TO MAILF letter postal abbreviation for state name] @ 13,1 SAY 'Enter State ' GET MSTATE [enter zip code number] @ 14,1 SAY or new entries IF ACTION='1' * - add new names to MAIL.DBF DO MAILENTR ENDIF * - test to make label' BLANK to exit entry program' @ 6,1 SAY ' After BLANK, enter carriage return for entries' [enter title code] @ 7,1 SAY 'Enent date to print on form letter ACCEPT 'Enter date as mm/dd/yy' TO DATE * - select system option DO WHILE T ? ?  add blank card to MAIL.DBF APPEND BLANK * - store name and address data to MAIL.DBF * - substitute input variables fMT * - read name and address data DO WHILE T * - initialize address variables to blank STORE ' ' TO MTTL STORE ' 'Enter ZIP code ' GET MZIP .pa The MAILLAB command file print the mailing list onto the system printer. The text s IF ACTION='2' * - print mail labels DO MAILLAB ENDIF * - test to write form letters IF ACTIONter title code ' GET MTTL [enter surname] @ 8,1 SAY 'Enter Surname ' GET MSNAM [enter given and middle names] @  ? ? ' Form Letter Writing System' ? ? ? ' 0 - EXIT' ? ' 1 - Enter new entries' or database file variables REPLACE TITLE WITH &MTTL,NAME WITH MNAME,OF WITH MOF,ADDR WITH MADDR REPLACE CITY WITH MCITY,ST' TO MSTATE STORE ' ' TO MZIP STORE ' ' TO MSNAM,MCITY STORE ' ' TO MGNAME STORE of the file follows: NOTE - THIS COMMAND FILE PRINTS MAILING LABELS ON THE PRINTER * REMARK WHEN LABELS ARE IN PLACE, HIT C='3' * - print form letter to names in MAIL.DBF DO MAILLTTR ENDIF ENDDO RETURN .pa The MAILENTR c9,1 SAY 'Enter other names ' GET MGNAME [enter company name] @ 10,1 SAY 'Enter Co. name ' GET MOF [enter street add ? ' 2 - Make Labels' ? ' 3 - Write Letters' ? ? ' enter desired action' * - wait for user ATE WITH !(MSTATE),ZIP WITH MZIP ENDDO RETURN .pa The format file MAILFMT follows: This file reads the mail list input da@A ARRIAGE RETURN WAIT * - echo printed information to screen SET PRINT ON * - position to top of MAIL.DBF GO TOP * - prin (213) 555-1234' ? ' '+DATE * - print name and address oNATE ON * PUT PRINT FORMATTER SETUP DIRECTIVES HERE, SUCH AS PAGE NUMBERING, * PRINTER PITCH, PAGE OFFSET, LINE HEIGHT, AND FOe a command file. The modifications' ? 'are: placement of question marks at the beginning of each line and' ? 'enclosi ENDIF ? SKIP ENDDO * - turn off echo of labels SET PRINT OFF REMARK ALL DONE RETURN .pa The MAILLTTR comm '.SKIP' * - this is a WordStar (tm) page skip ? '.pa' SKIP ENDDO SET ALTERNATE OFF RETURN .pa The MAILINFO commant labels DO WHILE .NOT.EOF * - print name DISP OFF $(NAME,13,17)-(' '+$(NAME,1,12)) * - checking to see if officef client ? $(NAME,13,18)-(' '+$(NAME,1,12)) IF OF#' ' ? OF ENDIF ? ADDR IF VAL(ZIP)=0 ? CITY-(', '+STATE) ELSE ? OTNOTES * EXAMPLE: * ? '.OFFSET = 8' * ? '.CHARACTER WIDTH = 12/INCH' * etc. * - print letter DO WHILE .NOT.EOF ? ' ng the text in single quotes or square brackets. In this way,' ? 'each line of text is written to the ALTERNATE file by mand file generates the form letter for the system. The text of the file follows. NOTE - THIS COMMAND FILE WRITES THE Fd file accessed by this file contains the text of the form letter. A sample MAILINFO file follows. NOTE - THIS IS THE TE address IF OF#' ' * - print office name DISP OFF OF * - print address DISP OFF ADDR * CITY-(', '+STATE)-(' '+ZIP) ENDIF ? ? * - print salutation IF TITLE=1 ? 'Dear Mr. '+$(NAME,1,12) ENDIF IF TITLE=2  Your Company' ? ' 8080 Means of the SET' ? 'ALTERNATE commands in MAILLTTR.CMD (which calls this command file).' ? ? 'The text of the letter can beORM LETTER * * - position pointer at top of MAIL.DBF GO TOP * - sets up to store everything that appears on the screen intXT FOR THE USER FORM LETTER * * - the text presented here describes how to generate the * - letter. The user will put in - print city, state, zip DISP OFF $(CITY,1,20)-(', '+$(STATE,1,2))-(' '+$(ZIP,1,5)) ELSE * - print home address? 'Dear Mrs. '+$(NAME,1,12) ENDIF IF TITLE=3 ? 'Dear Ms. '+$(NAME,1,12) ENDIF IF TITLE=4 ` ? 'Dear Dr. '+$(NAME,1,12) Eicro St.' ? ' Silicon, CA 93002' ? '  altered based on the database data fields.' ? 'For instance, if the content of the letter should change for different' ? 'o * - a file called PRINT.TXT which the user can later list using * - his work processor. SET ALTERNATE TO PRINT SET ALTERown text. ? 'This is the body of a form letter. It was first written with a word' ? 'processor and then modified to becom DISP OFF ADDR * - print city, state, zip DISP OFF $(CITY,1,20)-(', '+$(STATE,1,2))-(' '+$(ZIP,1,5)) ? NDIF ? * - print text of letter DO MAILINFO * * PUT A WORD PROCESSOR COMMAND TO SKIP TO THE NEXT PAGE HERE * EXAMPLE * ?AB states, then this condition can be checked and the appropriate action' ? 'can be taken.' ? ? ? ' itle code :1: Enter Surname :Brown(cr) : Enter other names :Thomas(cr) : Enterer title code :1: Enter Surname :Jones(cr) : Enter other names :John J.(cr) :  : Enter Co. name :(cr) : Enter Address :(cr) : Enter Ci *** dBASE II VER 2.xx .MAIL [initiate mailing list system] Enter date as mm/dd/yy:11/29/81(cr) e :(cr) : Enter Address :12 Country Club Dr.(cr) : Enter City : Yours truly' ? ? ? ? ? ' Mike R. O. Chip' ? ? 'Example Co. name :(cr) : Enter Address :1234 West Winchester Dr.(cr) : Enter City Enter Co. name :Micro Enterprises(cr) : Enter Address :1234 Chip Road(cr) : Enter City ty :(cr) : Enter State :(cr): Enter ZIP code :(cr) : Form LetForm Letter Writing System 0 - EXIT 1 - Enter new entries 2 - Make Labels Chino(cr): Enter State :CA: Enter ZIP code :9l710(cr): 1 = "Mr." 2 = "Mrs." 3 = ":' ? IF STATE='CA' ? 'California residents add 6% sales tax' ENDIF RETURN .pa A sample run using these command fil :Boston(cr): Enter State :CA: Enter ZIP code :10024(cr): 1 = "Mr." 2 = "Mrs."  :Silicon(cr): Enter State :CA: Enter ZIP code :90002(cr): 1 = "Mr." 2 = ter Writing System 0 - EXIT 1 - Enter new entries 2 - Make Labels  3 - Write Letters enter desired action WAITING 1 [entering names to mailing list] 1 = "Mr." Ms." 4 = "Dr." BLANK to exit entry program After BLANK, enter carriage return for entries Enter title code es follows. First the user is presumed to have "CREATE"d a database file called MAIL using the commands presented in the 3 = "Ms." 4 = "Dr." BLANK to exit entry program After BLANK, enter carriage return for entries Enter title cod"Mrs." 3 = "Ms." 4 = "Dr." BLANK to exit entry program After BLANK, enter carriage return for entries Enter t 3 - Write Letters enter desired action WAITING 2 [printing mailing labels] WHEN LABELS ARE IN PLACE, HIT CARRIAGE 2 = "Mrs." 3 = "Ms." 4 = "Dr." BLANK to exit entry program After BLANK, enter carriage return for entries Ent: :[exiting this command file] Enter Surname :(cr) : Enter other names :(cr)  database discussion. >DBASE(cr) [initiate the dBASE system] ENTER TODAYS DATE AS MM/DD/YY OR RETURN FOR NONE : (cr) e :2: Enter Surname :Franklin(cr) : Enter other names :Josephine(cr) : Enter Co. namBC RETURN WAITING (cr) John J. Jones Micro Enterprises 1234 Chip Road Silicon, CA 90002 Thomas Brown 1234 West Winchester  marks at the beginning of each line and enclosing the text in single quotes or square brackets. In this way, each li 8080 Micro St. Silicon, CA 93002 ontroller 2. CALJUL - Computes pseudo-Julian date from user input calendar date. 3. JULCired action WAITING 0 [exiting MAIL system] DO CANCELLED . QUIT [exit from dBASE processor] *** END RUN dBASE II * California Residents add 6% sales tax .PA DATE MANAGEMENT SYSTEM The following example demonsDr. Boston, MA 10024 Josephine Franklin 12 Country Club Dr. Chino, CA 9l710 Form Letter Writing System ne of text is written to the ALTERNATE file by means of the SET ALTERNATE commands in MAILLTTR.CMD (which call this command f (213) 555-1234 11/29/81 Josephine FranAL - Computes calendar date from pseudo-Julian date. First the DATER command file: NOTE ** At the end of processing the form letters are in a file called PRINT.TXT. The user needs to print this file usintrates the capability to use dBASE to perform computations without using a database file. This program allows the listing  0 - EXIT 1 - Enter new entries 2 - Make Labels 3 - Write Lettile). The text of the letter can be altered based on the database data fields. For instance, if the content of the letter klin 12 Country Club Dr. Chino, CA 9l710 Dear Mrs. Franklin This is the body of a form letter. It was first w- DRIVER program for date calculation * * - turn off display of commands to screen SET TALK OFF * - ask user for start dag his system word processor. When the printing is completed, he should delete the TXT file from his disk. A sample foof dates that are a specified number of days apart, such as treatment dates at a hospital or payroll dates. The system ers enter desired action WAITING 3 [writing form letters] Form Letter Writing System should change for different states, then this codition can be checked and the appropriate action can be taken. ritten with a word processor and then modified to become a command file. The modifications are: placement of question te DO CALJUL INPUT 'Enter interval in days between dates' TO DELTA ? ? INPUT 'Enter number of times you want interval' TO Trm letter for this version of the MAIL system follows: .pa Your Company  consists of three command files. The three dBASE command files and their functions are: 1. DATER - System c 0 - EXIT 1 - Enter new entries 2 - Make Labels 3 - Write Letters Enter des Yours truly Mike R. O. Chip Example: CD OT * - initialize counter INPUT 'Do you want output to printer? (Y/N)' TO ANSWER STORE 1 TO CNT IF ANSWER SET PRINT ON  SET PRINT ON ENDIF ? 'CALENDAR DATE =' ?? DATE IF ANSWER SET PRINT OFF ENDIF RETURN .pa A sample run using theTE FROM PSEUDO-JULIAN DATE * * - strip off year STORE INT(X/365.26)+1 TO Y * - strip off day STORE X+INT(395.25-365.25*Y) 9/10/81 CALENDAR DATE = 9/24/81 CALENDAR DATE =10/ 8/81 CALENDAR DATE =10/22/81 CALENDAR DATE =11/ 5/81 CALENDAR DATE * - strip off day from date STORE VAL($(DATE,4,2)) TO D * - strip off year from date St to printer? (Y/N):Y(cr) START DATE = 01/01/81 CALENDAR DATE = 1/15/81 CALENDAR DATE = 1/29/81 CALENDAR DATE = 2/12/ ? ' START DATE = ' ?? DATE SET PRINT OFF ELSE ? ' START DATE = ' ?? DATE ENDIF DO WHILE CNT<=TOT * - in command files follows. This case is to compute the payroll date for a company that pays every two weeks starting on New TO D * - do leap year adjustment IF INT(Y/4)*4=Y STORE 1 TO D1 ELSE STORE 2 TO D1 ENDIF IF D>(91-D1) STORE D+D1  =11/19/81 CALENDAR DATE =12/ 3/81 CALENDAR DATE =12/17/81 CALENDAR DATE =12/31/81 . QUIT *** END RUN dBASE II ***TORE VAL($(DATE,7,2))+1900 TO Y * - calculate integer julian date STORE INT(30.57*M)+INT(365.25*Y-395.25)+D TO X * - perfor81 CALENDAR DATE = 2/26/81 CALENDAR DATE = 3/12/81 CALENDAR DATE = 3/26/81 CALENDAR DATE = 4/ 9/81 CALENDAR DATE = 4/2crement date STORE X+DELTA TO X DO JULCAL STORE 1+CNT TO CNT LOOP ENDDO .pa The CALJUL command file calculat Years day 1981. >DBASE [initiate the dBASE system] ENTER TODAYS DATE AS MM/DD/YY OR RETURN FOR NONE : (cr) ***TO D ENDIF * - do month computation 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 T m leap year calculation IF M>2 IF INT(Y/4)=Y/4 STORE X-1 TO X ELSE STORE X-2 TO X ENDIF ENDIF RETURN .pa 3/81 CALENDAR DATE = 5/ 7/81 CALENDAR DATE = 5/21/81 CALENDAR DATE = 6/ 4/81 CALENDAR DATE = 6/18/81 CALENDAR DATE = 7es the pseudo-Julian day date from the user input calendar date. NOTE - PSEUDO-JULIAN DAY COMMAND FILE PROGRAM * - ask  dBASE II VER 2.xx .DO DATER(cr) ENTER DATE AS MM/DD/YY:01/01/81(cr) [request for start date] Enter interval in dO Y ENDIF STORE Y-1900 TO Y * - create output format for date STORE STR(M,2)+'/'+STR(D,2)+'/'+STR(Y,2) TO DATE IF ANSWER  The JULCAL command file computes the calendar date from the pseudo-Julian day date. NOTE - CALCULATE CALENDAR DA/ 2/81 CALENDAR DATE = 7/16/81 CALENDAR DATE = 7/30/81 CALENDAR DATE = 8/13/81 CALENDAR DATE = 8/27/81 CALENDAR DATE =user for start date ACCEPT 'ENTER DATE AS MM/DD/YY' TO DATE * - strip off month from date STORE VAL($(DATE,1,2)) TO M ays between dates:14(cr) [two weeks] Enter number of times you want interval:26(cr) [# of weeks/yr] Do you want outpuDE  * *-------+------------------------------------------------------+---------------* * |  * *==============================================================================* * QTY. |  ADDRESS" @ 6,12 SAY ADDRESS @ 6,49 SAY "9929 W. JEFFERSON BLVD. *" @ 7, 0 SAY "* CITY" @ 7,12 SAY CITY @  FROM: * * NAME @NAME ASHTON-TATE  * SCREEN.CMD ERASE @ 1, 0 SAY "********************************************************************************" @ 2, 0 SA TAX | $$.00 * *-------+------------------------------------------------------+---------------* * DESCRIPTION | PRICE * *-------+------------------------------------------------------ 7,49 SAY "CULVER CITY, CA 90230 *" @ 8, 0 SAY "* STATE" @ 8,12 SAY STATE @ 8,79 SAY "*" @ 9, 0 SAY "* ZIP* * ADDRESS @ADDRESS 9929 W. JEFFERSON BLVD. * * CITY @CITY Y "* INVOICE NO. 000001 *" @ 3, 0 SAY "* ***** File SCREEN *** *********************** | TOTAL | $$,$$$.00 * ***********************************************+---------------* * 1 | ZIP | $$$$$.00 * *-------+------------------CODE" @ 9,12 SAY ZIPCODE @ 9,79 SAY "*" @ 10, 0 SAY "*  CULVER CITY, CA 90230 * * STATE @STATE * * ZIP *" @ 4, 0 SAY "* TO: FROM: ********************************************************* * INVOICE NO. 000001 ********************************* YOU ASKED FOR IT, YOU GOT IT. ------------------------------------+---------------* * | THE GREAT NEW SCREEN BUILDER FROM ASHTON-TATE |  *" @ 11, 0 SAY "*==============================================================================*" @ 12, 0 SAY "* QTYCODE @ZIPCODE * *  *" @ 5, 0 SAY "* NAME" @ 5,12 SAY NAME @ 5,49 SAY "ASHTON-TATE *" @ 6, 0 SAY "* * * * * TO: EF . | DESCRIPTION | PRICE *" @ 13, 0 SAY "*-------+-----------------------------* STATE @STATE ** ZIPCODE @ZIPCODE ********************************* INVOICE NO. 000001 ** FOR IT, YOU GOT IT. $$.00 *" @ 19, 0 SAY "*-------+------------------------------------------------------+---------------*" @ 20, 0 SAY "* * | THE GREAT NEW SCREEN BUILDER FROM ASHTON-TATE | **-------+----------------------------------------------------------------+---------------*" @ 14, 0 SAY "* 1 | ZIP | $$$ ** **=============== ** TO: FROM:  | TOTAL | $$,$$$.00 *" @ 21, 0 SAY "**************************************---------------+---------------** | TAX | $$.00 **-------+-------$$.00 *" @ 15, 0 SAY "*-------+------------------------------------------------------+---------------*" @ 16, 0 SAY "* ===============================================================** QTY. | DESCRIPTION | ** NAME @NAME ASHTON-TATE ** ADDRESS @ADDRESS  INTRODUCTION The command files which are essential to the operation of your dBASE II program are ******************************************" @ 22,22 SAY "YOU ASKED FOR IT, YOU GOT IT." RETURN-----------------------------------------------+---------------** | TOTAL | | THE GREAT NEW SCREEN BUILDER FROM ASHTON-TATE | *" @ 17, 0 SAY "*-------+----------------------------- PRICE **-------+------------------------------------------------------+---------------** 1 | ZIP  9929 W. JEFFERSON BLVD. ** CITY @CITY CULVER CITY, CA 90230 *as follows: DBASE.COM DBASEMSG.COM DBASEJOI.OVR DBASEBRO.OVR  ************************************************ $$,$$$.00 ********************************************************************************* YOU ASKED -------------------------+---------------*" @ 18, 0 SAY "* | TAX |  | $$$$$.00 **-------+------------------------------------------------------+---------------*FG  DBASETTL.OVR DBASEMAI.OVR DBASEAPP.OVR DBASEUPD.OVR DBASERPG.OVRn can be changed with the help of a word processor. IF RUNNING UNDER MP/M YOU MUST MAKE A PATCH TO DBASE.COM AT LOCATe suggest that you study these and the programs in the first part of the dBASE Manual for hints on how to construct your data DBASEMSC.OVR DBASESRT.OVR DBASEMOD.OVR INSTALL.COM These fiION 3D4E. IT IS CURRENTLY MVI M,01, CHANGE TO MVI M,0. If you have not made two back-up copies of this disk PLEASE DO base and command files. The ZIP (tm) Screen Formatting Program currently does not install on the Osborne or the Applles may be moved to your working disks by employing the PIP command on your CP/M system. After you INSTALL dBASE II for your  SO NOW. e 40-column board. Apples with 80-column boards can be installed with other menu options. For a demonstration of ZIP, bring uterminal, the install parameters will be copied along with the dBASE command files. Print out EXAMPLES.DOC for an expp dBASE and run the program ZIPTEST.CMD. The ZIPSCRN files show you what ZIP can do for you. ZIPTEST shows how a ZIP screelanation of the sample programs contained on this disk. These programs may be immediately used for the purposes described. WGH HI IJ JK KL L