dBASEII  QSYSTEM 100*QH 02288A 02289A QUAD.CAPDISKETTECPM FROMNORTH * STAR ---------SYSTEM--TRACKS-BIOS USER CPM CCP CPM BDOS --------DIR.SEC1DIR.SEC2DIR.SEC3DIR.SEC4--------CPM DATADATASEC1DATASEC2DATASEC3DATASEC4........ N*S DBASEMSGTXTy DBASEOVRCOM DBASEOVRCOM8!"#$DBASE COM%&'()*+,-.INSTALL COMU/01234XDEPCANCCMD5XBALANCECMD6XCANCEL CMD7XNEWENTRCMD 8XDEPOSITCMD9CALJUL CMD:JULCAL CMD;CHREPORTFRM<ACCNTS DBF =CHREPORTCMD>DATER CMD?ADB COMmnDBLOADERASM'opqDBASEIO2ASM!rstuvwxyz{|DBASEMSGOLD}~DBASEOVROLDDBASEOVROLD6N*S*HELP > Help is available for the following commands: ACCEPT DISPLAY IF READ SAVE APPEND DO INDEX RECALL SELECT BROWSE EDIT INPUT REINDEX SET CANCEL EJECT INSERT RELEASE SKIP CASE ELSE JOIN REMARK SORT CHANGE ENDCASE LIST RENAME STORE CLEAR ENDDO LOCATE REPLACE SUM CONTINUE ENDIF LOOP REPORT TOTAL COPY ERASE MODIFY RESET UPDATE COUNT FIND NOTE RESTORE USE CREATE GO PACK RETURN WAIT DELETE GOTO QUIT > Help is also available for the follotrol keys for full screen operation: ctl-E,A or - Backs up to previous data field. Up arrow (cursor lock 8) --ADVANTAGE use only-- ctl-X,F or - Advances to next data field. Down arrow (cursor lock 2) --ADVANTAGE use only-- ctl-S or - Backs up one character in data field. Left arrow (cursor lock 4) --ADVANTAGE use only-- ctl-D or - Advances one character in data field. Right arrow (cursor lock 6) --ADVANTAGE use only-- ctl-Y or - Clears out current field to blanks. Shifted addition, when in EDIT: ctl-U - Switches (toggles) the current record between being marked or for deletion and unmarked. Function key 4 --ADVANTAGE use only-- ctl-R - Writes current record back to disk and displays previous or record i.e. backs up a record. Cursor lock 1 --ADVANTAGE use only-- ctl-C - Writes current record back to disk and displays next record or i.e. advances to next record. Cursor lock 3 --ADVANTAGE use only-- ctl-W or - WriteACCNTPAYCMD @ACHECKS DBF BXMENU CMDCMAIL CMD DMAIL DBF EMAILFMT FMTFMAILINFOCMD GMAILLTTRCMD HMAILENTRCMDIMAILLAB CMDJZIPTEST CMDKLZIP COMlMNOPQRSTUVWXYZ[ZIPIN COMZ\]^_`abcdefghiZIPSCRN ZPRjZIPSCRN CMDkZIPSCRN ZIPlwing dBASE functions: ? @ # $ DATE FILE LEN STR TYPE ?? * ! CHR EOF INT RANK TRIM VAL > Other help topics include: COMMANDS LIMITATIONS ERROR (messages) NEW (features) KEYS (control) SYMBOLS ADV (Advantage keys) *END *AID *MORE > Additional help can be inserted into the help text file (DBASEMSG.TXT) using a text editor such as WordStar. One set of information can have several key words. For example, this text is keyed to MORE and AID. *END *KEYS The following are cursor confunction key 5 --ADVANTAGE use only-- ctl-V or - Switches (toggles) between overwrite and insert modes. Function key 8 --ADVANTAGE use only-- ctl-G or - Deletes character under cursor. Function key 15 --ADVANTAGE use only-- RUBOUT or - Deletes character to left of cursor. or - means any valid dBASE statements; it also means -whole- statements. An IF without an ENDIF (or a DO WHILE without an ENDDO) is only half of a statement. REPORT is a whole statement in itself. or- means any character string; character strings are those characters that are enclosed in single quotes ('), double quotes ("), or square brackets ([]). - means any special character; special characters are thoof the examples in the previous paragraph are rather complicated, the first one could be considered as simple. - means any record field name; in one of the examples that are in the following commands, one of the databases has field names like ITEM, COST, DATE, etc. or - means a list of record field names separated by commas. or - means any filename; these are file names that must obey the rules for file names that were stated - Switches (toggles) the current record between being marked or for deletion and unmarked. Function key 4 --ADVANTAGE use only-- ctl-R - Writes current record back to disk and displays previous or record i.e. advances to next record. Cursor lock 1 --ADVANTAGE use only-- ctl-W or - Writes current record to disk and exits screen edit mode. Function key 13 --ADVANTAGE use only-- ctl-Z or - Pans the window left one field. Cursor lock 7 --ADVANTAGE use only-- ft; backs up one character in data field. Cursor lock 6 - Cursor right; advances one character in data field. Cursor lock 7 - BROWSE mode: Pans the window left one field. Cursor lock 8 - Cursor up; backs up to previous data field. Cursor lock 9 - BROWSE mode: Pans the window right one field. Function Keys ------------- F1 - EDIT F2 - APPEND F3 - Delete field F4 - Toggle record between being marked for deletion and unmarked. F5 - Insert field F6 - Toggles pLETE Shifted F9 - GOTO TOP Shifted F10 - GOTO BOTTOM Shifted F11 - SELECT PRIMARY Shifted F12 - SELECT SECONDARY Shifted F13 - Exits without saving any changes. Shifted F14 - QUIT Shifted F15 - Stops listing. For more detailed explanations, consult the specific command. *END *SYMBOLS Understanding the special symbols in the general command formats is vitally important. Not only does it help in understanding the form of the commands, it helps show the potential of each command. - means an expression; an expression can be created by tacking together numbers, functions, field names or character strings in any meaningful manner. "4+8", and "doc = '3' .or. doc = '4'", are both expressions as well as "$('abc'+&somestr,n,3) = 'abcdefg'". - means a list of expressions separated by commas; usually simple expressions are used. Two in section 3.0.
- means the name of a report form filename; see section 3.4 and the REPORT command for the how and why of this type of file. - means the name of the file where indexing information is placed; see section 3.6 and the INDEX command for the how and why of this type of file. - means the field name which will be indexed on; keys are important. There may be several indexes for any given database, each on different (or on a combination of) keys. Keys may be or field names. See the INDEX command for more information. - means any memory variable; memory variables are those variables that are created by STOREs or by use of a command that saves some value for later use (ACCEPT, INPUT, etc.) There is a maximum of 64 memory variables allowed in dBASE. - means a list of memory variables separated by commas. - means a literal; literals are numbers which ares. For other commands the default will be the current record (specially for the more potentially destructive commands like DELETE). Each command description tell what is the default scope. In the case of using a FOR phrase in any of the commands, ALL will be the default. NEXT n - means the next n records, including the current record; NEXT also begins with the record currently being pointed at. And n must have a literal value, that is, it must not be a memThe controlling command stops the first time the expression is false. The presence of a WHILE clause implies NEXT 65534 unless otherwise specified and does not rewind the database. There are other special symbols used in the command formats. These are special to the command and will be explained in the body of the command. *END *NEW > New commands and changes to dBASE II version 2.35 New commands: HELP - user aid command REINDEX - rebuild index file TEXT - display mult UPDATE - replace clause can have WITH phrases *END *? *?? > ? - displays an expression list ? [,] > ?? - display an expression list without a preceeding line eject *END *@ > @ - displays user formated data on CRT or printer @ [SAY [USING '']] [GET [PICTURE '']] can be numeric expressions or $+ for relative addressing e.g. @ $,$+5 say 'HI' Possible error messages: SYNTAX ERROR IN Possible error messages: VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END *BROWSE > BROWSE - full screen window viewing and editing BROWSE *END *CANCEL > CANCEL - cancels command file execution CANCEL *END *CASE > CASE - one possible execution path in a DO CASE structure CASE e.g. DO CASE CASE X=1 . any statements . CASE X=" . any statements . OTHERWISE . any statements . ENDCASE *END *C not gotten from memory variables or calculations. "4+8" is not a literal, while "4" and "9876" are literals. - means a specification of the scope of the command; scope means how much does the command cover. There are three values that may take on. ALL - means all the records in the file. ALL means that the file is rewound and whatever the command, ALL the records in the file are searched for compliance. ALL is the default for some of the commandory variable or an expression. RECORD n - means only record n; again, n must not be a memory variable or an expression -- it must be literal before it will work. FOR - Any record so long as some logical expression has a true value. Unless otherwise specified, the presence of a FOR clause causes ALL records to be scanned (with a rewind of the database). WHILE - All sequential records as long as some logical expression () has a true value. iple lines of text, terminated by ENDTEXT Supplemented Commands: APPEND, INSERT, EDIT, CREATE - can use a format file for screen control DISPLAY STATUS - shows databases/indexes in use and SET settings READ & REPLACE - can be directed to NOT update indexes via NOUPDATE RELEASE - can release subsets of memory variables RESTORE - can restore additively to existing memory variables SAVE - can save subsets of memory variables SET RAW ON - eliminates extra spaces in DISPLAY and ? commands FORMAT SPECIFICATION VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END *ACCEPT > ACCEPT - allows input of character strings into memory variables ACCEPT [""] TO Possible error messages: SYNTAX ERROR IN FORMAT SPECIFICATION "TO" PHRASE NOT FOUND *END *APPEND > APPEND - append dBASE files or files in System Data Format (SDF) or delimited files APPEND [FROM [SDF] [DELIMITED [WITH ]] [FOR ]] or [BLANK]HANGE > CHANGE - edit columns of fields CHANGE FIELD [] [FOR ] Possible error messages: "FIELD" PHRASE NOT FOUND VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END *CLEAR > Clear out database files in use OR screen variables CLEAR [GETS] *END *CONTINUE > Continue the action of a LOCATE command CONTINUE *END *COPY > COPY - copy existing databases to create copies COPY TO [] [FIELD ] [FOR ] [SDF] [DELIMITED [WITH ]] or [STRUCTURE] NOTE: COPY always destroys the previous contents of the TO file Possible error messages: BAD FILE NAME Syntax error in filename. "TO" PHRASE NOT FOUND VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END *COUNT > COUNT - count the number of records that meet some conditional expression COUNT [] [FOR ] [TO ] Possible error messages: OUT OF MEMORY FOR MEMORY VARIABLES Reduce iles and mark records for deletion DELETE [] [FOR ] DELETE FILE *END *DISPLAY > DISPLAY - displays records, fields, and expressions DISPLAY [] [FOR ] [] [OFF] DISPLAY STRUCTURE DISPLAY MEMORY DISPLAY FILES [ON ] [LIKE ] DISPLAY STATUS *END *DO > DO - causes command files to be executed and allows structured loops in command files DO DO WHILE DO CASE Possible error messages: COMMAND FILE CANSE - alternate path of command execution within IF ELSE *END *ENDCASE > ENDCASE - terminate a CASE structure ENDCASE *END *ENDDO > ENDDO - terminator for DO WHILE command ENDDO *END *ENDIF > ENDIF - terminator for IF command ENDIF *END *ERASE > ERASE - clears the CRT ERASE *END *FIND > FIND - positions to record corresponding to a key on indexed files FIND or FIND '' Possible error messages: DATABASE IN USE IS NOT INDEXED FIND is only permitted onnds create database and associated files: CREATE - create new structured database files COPY - copy existing databases to create copies INDEX - creates an index file JOIN - outputs the JOIN of two databases MODIFY - allows editing of command files and database structures REINDEX - realigns an old index file REPORT - creates a report form file SAVE - copy the memory variables to mass storage SORT - create a copy of a database which is sorted on one of columns of fields DELETE - delete files and mark records for deletion EDIT - alter specific data fields in a database PACK - removes records marked for deletion READ - replaced data from user defined full-screen RECALL - erases mark for deletion REPLACE - replaces data fields with values UPDATE - allows batch updates of a database DATA DISPLAY: these commands display selected data from a database: ? - displays an expression list ?? - display an expressiothe number or size of memory variables. *END *CREATE > CREATE - create new structured database files CREATE [] Possible error messages: BAD DECIMAL WIDTH FIELD BAD FILE NAME Syntax error in filename. BAD NAME FIELD BAD TYPE FIELD Must be C, N, or L. BAD WIDTH FIELD RECORD LENGTH EXCEEDS MAXIMUM SIZE (OF 1000) SYNTAX ERROR IN FORMAT SPECIFICATION VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END *DELETE > DELETE - delete fNOT BE FOUND Check spelling. NESTING LIMIT VIOLATION EXCEEDED *END *EDIT > EDIT - alter specific data fields in a database EDIT [] Possible error messages: RECORD OUT OF RANGE Record number greater than number of records in database. The Record doesn't exist. SYNTAX ERROR IN FORMAT SPECIFICATION VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END *EJECT > EJECT - ejects a page on the list device EJECT *END *ELSE > EL indexed databases. NO FIND More a diagnostic type message than an error message. dBASE couldn't find the key. *END *GO *GOTO > GOTO - position to a specific record GO or GOTO [RECORD], or [TOP], or [BOTTOM], Possible error messages: RECORD NOT IN INDEX Index file was not updated after a record was added. Reindex. RECORD OUT OF RANGE Record number greater than number of records in database. The Record doesn't exist. *END *COMMANDS CREATION OF FILES: these comma the data fields TOTAL - outputs a database of totalled records ADDITION OF DATA: these command add new data records to databases: APPEND - append dBASE files or files in System Data Format (SDF) or delimited files CREATE - allows addition of data after creation INSERT - insert data into a file UPDATE - allows batch updates of a database EDITING DATA: these commands edit the data within a database: BROWSE - full screen window viewing and editing CHANGE - editn list without a preceeding line eject @ - displays user formated data on CRT or printer BROWSE - full screen window viewing and editing COUNT - count the number of records that meet some condional expression DISPLAY - displays records, fields, and expressions LIST - identical to the DISPLAY command except that the default scope READ - displays data and prompting information in full-screen mode REPORT - format and display a report of data SUM - compute and display the sum of an expression POSITIONING: these commands position the current database record pointer: CONTINUE - continue the action of a LOCATE command (toward the file end) FIND - positions to record corresponding to a key on indexed files (then use skip to find subsequent duplicate keys) GOTO - position to a specific record (or index top/bottom) LOCATE - find a record that fits a condition (from the file beginning) SKIP - position forwards or backwards (in index ary and secondary) SORT - create a copy of a database which is sorted on one of the data fields USE - specifies the database file to be used for all operations until another USE is issued, also closes files MEMORY VARIABLES: these commands manipulate memory variables: ACCEPT - allows input of character strings into memory variables CLEAR - clear out database files in use OR screen variables COUNT - count the number of records that meet some condional expressioommands assist in the control and use of command files: CANCEL - cancels command file execution CASE - one possible execution path in a DO CASE structure CLEAR - Clear out database files in use OR screen variables DO - causes command files to be executed and allows structured loops in command files ELSE - alternate path of command execution within IF ENDCASE - terminate a CASE structure ENDDO - terminator for DO WHILE command ENDIF - terminator for IF c - sets dBASE device use and format parameters QUIT - terminate dBASE and optionally run other programs *END *IF > IF - allows conditional execution of commands IF . . (any statements) . ELSE ] ELSE is optional . ] . (any statements) ] . ] ENDIF *END *INDEX > INDEX - creates an index file INDEX ON TO Possible error messages: BAD FILE NAME Syntax error in filename. "ON" PHRASE NOT FOUND "TO" PHRASE *JOIN > JOIN - outputs the JOIN of two databases JOIN TO FOR [FIELDS ] Possible error messages: JOIN ATTEMPTED TO GENERATE MORE THAN 65,534 RECORDS The FOR clause allows too many joined output records, make it more stringent. NO "FOR" PHRASE *END *LIST > LIST - identical to the DISPLAY command except that the default scope is ALL records LIST *END *LOCATE > LOCATE - find a record that fits a condition LOCATE [] [FOR ] order) USE - specifies the database file to be used and positions to the beginning (of the index) FILE MANIPULATING: these commands affect entire database files: APPEND - append dBASE files or files in System Data Format (SDF) or delimited files COPY - copy existing databases to create copies DELETE - delete files and mark records for deletion RENAME - rename a file RESET - reset system to allow diskette swapping SELECT - switches between USE file (primn DISPLAY - displays records, fields, and expressions INPUT - allows input of expressions into memory variables RELEASE - eliminates unwanted memory variables and returns space to dBASE RESTORE - retrieves sets of stored memory variables SAVE - copy the memory variables to mass storage STORE - stores expressions into memory variables SUM - compute and display the sum of an expression WAIT - accepts a single keystroke into a memory variable COMMAND FILES: these command IF - allows conditional execution of commands LOOP - skips to beginning of DO WHILE MODIFY - allows editing of command files RETURN - ends a command file SET - sets dBASE control parameters TEXT - heads a block of information for output only WAIT - suspends command file processing DEVICE CONTROL: these commands control printers and the display screen: EJECT - ejects a page on the list device (printer) ERASE - clears the CRT display SET NOT FOUND *END *INPUT > INPUT - allows input of expressions into memory variables INPUT [""] TO Possible error messages: "TO" PHRASE NOT FOUND *END *INSERT > INSERT - insert data into a file INSERT [BEFORE], or [BLANK] Possible error messages: CANNOT INSERT - THERE ARE NO RECORDS IN DATABASE FILE Use the APPEND command instead. SYNTAX ERROR IN FORMAT SPECIFICATION VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END Possible error messages: NO "FOR" PHRASE *END *LOOP > LOOP - skips to beginning of DO WHILE LOOP *END *MODIFY > MODIFY - allows editing of command files and database structures MODIFY STRUCTURE MODIFY COMMAND Possible error messages: BAD FILE NAME Syntax error in filename. RECORD LENGTH EXCEEDS MAXIMUM SIZE (OF 1000) *END *NOTE NOTE or * *END *PACK > PACK - removes records marked for deletion PACK *END *QUIT > QUIT - terminate dBASE and return to the system optionally starts up other programs QUIT [TO ] example: . QUIT TO 'DIR B:','PIP B:MYONLY.BAK=MYFILE.DBF','DBASE RESUME' note: QUIT TO... only works when dBASE is run from Drive A: *END *READ > READ - displays data and prompting information in full-screen mode READ Possible error messages: SYNTAX ERROR IN FORMAT SPECIFICATION VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END lues REPLACE [] WITH [AND WITH ] Possible error messages: DATA ITEM NOT FOUND SOURCE AND DESTINATION DATA TYPES ARE DIFFERENT *END *REPORT > REPORT - format and display a report of data REPORT [] [FORM ] [TO PRINT] [FOR ] [PLAIN] Possible error messages: SYNTAX ERROR, RE-ENTER *END *RESET > Reset system to allow diskette swapping RESET [] *END *RESTORE > RESTORE - retrieves sets of stored memory varF] SET ALTERNATE TO SET DEFAULT TO SET DATE TO SET FORMAT TO SET HEADING TO SET INDEX TO SET MARGIN TO *END *SKIP > SKIP - position forwards or backwards SKIP <+/-> [] *END *SORT > SORT - create a copy of a database which is sorted on one of the data fields SORT ON TO [ASCENDING], or [DESCENDING] *END *STORE > STORE - stores expressions into memory variables STORE TO [FIELDS ] *END *UPDATE > UPDATE - allows batch updates of a database UPDATE FROM ON [ADD ] [REPLACE [ ] ] [ WITH ] Possible error messages: NO "FROM" PHRASE "ON" PHRASE NOT FOUND *END *USE > USE - specifies the database file to be used for all operations until another USE is issued USE [INDEX ] Possible error messages: BAD FILE NAME Syntax err** * - deleted record function *END *# # - record number function *END *! !() - upper case function *END *$ $(,,) - substring function *END *CHR CHR() - number to ASCII character function *END *DATE DATE() - system date function *END *EOF EOF - end-of-file function *END *FILE FILE() - existance function *END *INT INT() - integer function *END *LEN LEN() - length function *RECALL > RECALL - erases mark for deletion RECALL [] [FOR ] *END *REINDEX > REINDEX realigns an old index file REINDEX *END *RELEASE > RELEASE - eliminates unwanted memory variables and returns space to dBASE RELEASE [], or [ALL] RELEASE ALL LIKE RELEASE ALL EXCEPT *END *REMARK REMARK *END *RENAME > RENAME - rename a file RENAME TO *END *REPLACE > REPLACE - replaces data fields with vaiables RESTORE [ADDITIVE] Possible error messages: CANNOT OPEN FILE *END *RETURN > RETURN - ends a command file RETURN *END *SAVE > SAVE - copy the memory variables to mass storage SAVE TO [ALL LIKE ] Possible error messages: BAD FILE NAME Syntax error in filename. "TO" PHRASE NOT FOUND *END *SELECT > SELECT - switches between USE file SELECT [PRIMARY or SECONDARY] *END *SET > SET - sets dBASE control parameters SET [ON], or [OFr> Possible error messages: OUT OF MEMORY FOR MEMORY VARIABLES Reduce the number or size of memory variables. "TO" PHRASE NOT FOUND *END *SUM > SUM - compute and display the sum of an expression over a group of database records SUM [] [TO ] [FOR ] Possible error messages: MORE THAN 5 FIELDS TO SUM NO EXPRESSION TO SUM NON-NUMERIC EXPRESSION *END *TOTAL > TOTAL - outputs a database of totalled records TOTAL TO ON WAIT - suspends command file processing WAIT [TO ] *END *@ @(,) - AT function *END *END *RANK RANK() - character to integer function *END *STR STR(,[,]) string function *END *VAL VAL() - value function *END *TRIM TRIM() - trims strings *END *TYPE TYPE() - supplies data type *END *LIMITATIONS number of fields per record 32 max number of characters per record 1000 max number of records per database 65535 max number of characters per character string 254 max accuracy of numeric fields 10 digits largest number 1.8 x 10**63 approx smallest number 1.0 x 10**-63 approx number of memory variables 64 max number of characters per command line 254 max number of expressions in SUM command 5 max number of characters in REPORT header 254 max number of characters in index key 100 max number of pending GETS 64 max number of files open at one time 16 max *END *ERROR BAD DECIMAL WIDTH FIELD BAD FILE NAME Syntax error in filename. format. If all records are correct and present, then PACK and re-INDEX the database. "FIELD" PHRASE NOT FOUND FILE ALREADY EXISTS FILE DOES NOT EXIST FILE IS CURRENTLY OPEN Type a USE or CLEAR command to close the file. FORMAT FILE CANNOT BE OPENED FORMAT FILE HAS NOT BEEN SET ILLEGAL DATA TYPE ILLEGAL GOTO VALUE ILLEGAL VARIABLE NAME Only alphanumerics and colons are allowed in variable and field names. INDEX DOES NOT MATCH DATABASE dBASE cannot matchore a diagnostic type message than an error message. dBASE couldn't find the key. NON-NUMERIC EXPRESSION NONEXISTENT FILE "ON" PHRASE NOT FOUND OUT OF MEMORY FOR MEMORY VARIABLES Reduce the number or size of memory variables. RECORD LENGTH EXCEEDS MAXIMUM SIZE (OF 1000) RECORD NOT IN INDEX Index file was not updated after a record was added. Reindex. RECORD OUT OF RANGE Record number greater than number of records in database. The Record doesn't exist. SOURCE AND DESTINr support. *** UNKNOWN COMMAND VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END " PHRASE NOT FOUND TOO MANY CHARACTERS TOO MANY FILES ARE OPEN There is a maximum of 16 files allowed to be open at one time. TOO MANY MEMORY VARIABLES There is a maximum of 64 memory variables. TOO MANY RETURNS ENCOUNTERED Probably an error in the structure of a command file. "WITH" PHRASE NOT FOUND UNASSIGNED FILE NUMBER Internal error, contact dealer fo ;M_b o {y͠@!7 ~#fo!0Iѵ!0I}_|W>2 *7*9Iw**#: w ҋ**#IdBASE II COPYRIGHT (C) 1982 BY RATLIFF SOFTWARE PRODUCTION, INCORPORATED (RSP, INC.) 2705 RIDGEPINE DR, LA CRESCENTA, CA 91214 *** dBASE II Ver 2. File is inaccessible, already open elsewhere. BAD NAME FIELD BAD TYPE FIELD Must be C, N, or L. BAD WIDTH FIELD CANNOT INSERT - THERE ARE NO RECORDS IN DATABASE FILE Use the APPEND command instead. CANNOT OPEN FILE COMMAND FILE CANNOT BE FOUND Check spelling. DATA ITEM NOT FOUND DATABASE IN USE IS NOT INDEXED FIND is only permitted on indexed databases. DIRECTORY IS FULL The CP/M disk directory cannot hold anymore files. DISK IS FULL END OF FILE FOUND UNEXPECTEDLY The database in USE is not in the correct the key with the database. Try another index file. INDEX FILE CANNOT BE OPENED Check spelling or INDEX the database. JOIN ATTEMPTED TO GENERATE MORE THAN 65,534 RECORDS The FOR clause allows too many joined output records, make it more stringent. KEYS ARE NOT THE SAME LENGTH MACRO IS NOT A CHARACTER STRING ¯os must be character strings. MORE THAN 5 FIELDS TO SUM NESTING LIMIT VIOLATION EXCEEDED NO EXPRESSION TO SUM NO "FOR" PHRASE NO "FROM" PHRASE NO FIND MATION DATA TYPES ARE DIFFERENT *** SYNTAX ERROR *** SYNTAX ERROR IN FORMAT SPECIFICATION SYNTAX ERROR, RE-ENTER "TO" PHRASE NOT FOUND TOO MANY CHARACTERS TOO MANY FILES ARE OPEN There is a maximum of 16 files allowed to be open at one time. TOO MANY MEMORY VARIABLES There is a maximum of 64 memory variables. TOO MANY RETURNS ENCOUNTERED Probably an error in the structure of a command file. "WITH" PHRASE NOT FOUND UNASSIGNED FILE NUMBER Internal error, contact dealer fo That file does not exist! Unassigned file number. That file is currently open. An end-of-file was found unexpectedly." That record number is out of the current range. Too many files are open. THE DISK IS FULL. THE DIRECTORY IS FULL. That file already exists. No record was found. TOO MANY MEMORY VARIABLES ARE IN USE. OUT OF MEMORY FOR MEMORY VARIABLES. Illegal variable name. Too many characters. No database file is in use. Please enter a file name: That is not a dBASE II database. OK to destroy the existing file? (Y/N) *** unknown command *** Count = Enter the record structure as follows: Field Name,Type,Width,Decimal places Do you want to enter data now?& The macro used is not a character string. records were copied. Called from Do you want to correct and retry? The file has been deleted. Illegal GOTO value.2 There is a syntax error at the "^"; please re-enter. Cannot insert - there are no records in the database file. The end-of-file was encountered. End of locate scope. Enter the report heading: Data item not found. "WITH" phrase not found. Enter the subtotals field: Do you want subtotals in the report? (Y/N) Do you want a page heading (Y/N) > Enter the page heading:  records sorted. Summary report only? (Y/N) The index file cannot be opened. That variable cannot be found. The source and destination data types are different. "ON" phrase not found. A format file has not been set. There is a syntax error in the format specification. "FIELD" phrase not found.3 There is no room in the system lock list. System input/output error. records were added. Do cancelled. Bad name field. Bad type field. Bad decimal width field. Bad width field. Bad file name. That command file cannot be found.7 VIOLATION: Nesting limit exceeded. deletion(s) were made.t *** End of run: dBASE II *** TOO MANY RETURNS ENCOUNTERED.7 Enter record #, Field (# or name), New value+ Illegal data type. Macro not found. Pack complete, records copied. recall(s)~ Col Width,Contents Do you want the report double spaced? (Y/N) replacement(s) were made. Enter the report form name: "TO" phrase not found.** Subtotal ** No expression to sum.: Non-numeric expression.> More than 5 fields to sum. *** syntax error *** Are totals required? (Y/N) Record is locked...waiting Cannot open that file. The format file cannot be opened.Q Coord: Do you want to correct and retry? (Y/N) Change from : Change to : More corrections? (Y/N) O Enter filename: ** Total ** Record: No find.Page no. Single step mode. Y:=step, N:=keyboard cmd, ESC:=cancel Waiting... 7 Field Name Type Width DecE Structure for file: Primary use database.Y Secondary use database. Number of records: The database in use is not indexed. More than 7 index files selected. Modify erases ALL data records ... OK to proceed? (Y/N) Enter today's date or press RETURN for none Date of last update: 1::DZ2_:'DʈE4:"E:;DiD:FDhE:$DEEH;2_>L;9;2_5;>dP;H8:$DaE:_L;:_5;iDʈE:'DK/:'D9jVi9E#~ʖE/w}E!6>.5̈́6͟9͘9y9EE*E:\Gy9&FʽE#~ðE!}6!ř6}#*~.E }~8!~)* F ~C0H##6N#ř~8}ř͘9ͨ8:H2TéEo9éE͘9y9:?DʍFAF&^ͷ7HF!_4Ei9YF]ͷ7gF:_E2?DEi9xF^ͷ7E:_†F2?DE=2_E: D:Gi9ʴF]ͷ7»F͔9y9^ͷ7»F!_4E:_"G: D Gi9F^ͷ7F͔9o9(.[y9[E2 DEi9H..&c!̓ͤ,9,5,ͳ'B,E͜I:GDʊIH;2_>L;9;2_5;*_DM-;/2_y9}[_6/#Ns#FrxSJ2_y2_>N2_qJ2_ygJA2_>C2_qJ2_>L2_!ƛx66y9^ͷ7´J͔9y9ͤ6[o9x&7[#͔9!662>2_y9^ͷ7K͔9y9AL*AL"_J>RZ͔9y9KF^ͷ7AL͔9y9ͤ6[Eç;%y9 ^ͷ7;M͔9''2Mw':HDE>2P;EP;w'ER)>*2_UM:HDE>+P;E%[y9[!q&ښM:_W5,|ʚM͎'ʑMښMʑMr .R+ʚMyM`i:HD!6;6!"_!"_x^y9ͷ7MR)>!Eç;͔9/^ͷ7nO^ͷ7vOq^ͷ7ʁOR)2_2_%!}"_y9zN%[y9zN?^ͷ7"N>2_͔9M^ͷ7.N͔9*_[>2_:DDdN60#6x_NyZN6`N6hNp4hN6,###6#63"_͘6zNM:DDN:_N"_*_~ N*_6'#660# ~#N###FNNCN6#6#6N6#p#6Np#q#q4#6#63"_*_"_ÎN*_q&Eͤ,|E͎' Enter options, M=left margin, L=lines/page, W=page width Enter subtotal heading: 0 Enter subtotal footing: Eject page after subtotals? (Y/N) No "FOR" phrase found. Join attempted to generate more than 65,534 records. No "FROM" phrase found.G The keys are not the same length. records were indexed. Record length exceeds maximum size (of 1000) *** zero divide *** *** beyond string *** *** overlay file DBASEOVR.COM cannot be opened. Enter the record # : That record is not in the index. The index file does not match the database.G^ͷ7Gi9G^ͷ7E2 DEi93G^ͷ7E!_5Ei9zG:9DzG:$DdGH;2_>L;9;2_5;::$DzG:_L;:_5;͘9y9G[=.’G͔9~ͱ6+HR)Qo9͸6QiPEO|P~L~LuPOVPY'S VjVV"I?HHFLXLvLLLLLLMMR^PPP QPQQQ4R?RGR[R|PRRRSS\TyTTTTU]VVVVXYZ!ZLZTZ\ZZ>!Z>&Z> Z>8Z͚H>:5͟9i9`H:;DiD!6CH&7oH> >O~!}6)##y66-#663͜)E!}, E!6y9ͤ6Ho9~[#ªH͔96DM ,y9^ͷ7!R#͔9y9ͬ*R)y9]ͷ7H>!Eç;5,|Hͳ'B,o9x&7[͔9!"_662:_!}, :_!:_NL~HK.HK#:K"_!ƛ~\K.\K#NK"_*_+~ʽK$ʥK*ʥK#ʯK9ʯK,dKʒK-ʯK dK+~$ʠK*ʠK> #wdKdK dKʸKwcK6 dK*_*_~:LK#K~:L#K9KwK~:L#K9K#K60#K!ƛ~:LXL4Lw#L9'L#/Lͱ64Lw#L6 #L!"_>VZ: ER)> !Eç;y9kL)*[ 6!E*D>P;iD>2 DER)>!Eç;y9LZ%Z'͡#͎.Z%Z'͡#͎.:DV'&Z%6)2@2D2!D͔.E^ͷ7L!^ͷ7[ER)>!Eç;R)>!Eç;>!bOE*_+"_|%O!"_>eP;n:E!6:_>Oͤ,;6̈́65:_\O:DD\O͘)DM #,bO!}, R+ENE>! Eç;͔9>! Eç;͔9>!Eç;y9^ͷ7VP^ͷ7Oi9>'Oy9[>+O:(DO!)D6R'w2'D!(D4A/w'E>)O>*P;vL:'DNP͔9(.[HP2_:'D9y9&P]ͷ7-P͔9y9^ͷ7P!_4Pi9>P^ͷ7P!_5PE_/E>)P;E>2 DER)>! Eç;>2?D2_E2 DE2_:'DE͈/EH;G:GDʡP>L;;L;EER)ʹ$Qy9ͤ6PPo9xƛ&7Oi9y ͳ'|P:&DEEi9!P:HDE>P;E>sZR)\^y9ͷ7#Q͔9y9SQ^ͷ72Q,E]ͷ7SQʹ$JQ5,ͳ'EV#ͳ'E+[|zQ5,65HT]ͳ' |QE>3Z>~Z> !Eç;(.[y9[E>2?D2_ER)y9ʺQ>!Eç;c!̓E͚H>:5͟9i9Q:;DiD!6Q})R6-#6++6͜)&R:HDR6.#663!6!}, E>HZE>4P;!6QR)>! Eç;> !Eç;!"_"_ôM>!!Eç;R)i9~oR#dR!͔9%%[i9[!q&ڱR͐)"AD͎'RR+ʱRҍR:HDE>6P;E:HDE>7P;E:HDE>aP;ͤ,;6E!͔9%%[*AD͔)ÙR>!Eç;>!Eç;+y9*U>Zi9ͨ(U"_^i9y6͔9y9ͷ7U͔9*_[N##~RUC+~RUL*_ ~dU>SZ*_6/#663"_>2_͘6ʓUڄUU]ͷ7T͔9U:_U!q&U͎'UUU!ƛ, & .:_Uͣ!&R+UҦU:HDE`i!6;6>>P;E>AZ>BZ>!Eç;>!Eç;y9]ͷ7/V͔9y9)V>!Eç;6)Ey9E*@V>([i9)*MV͌*͔9͘6E[/Vy9dV|.E:'DEV'Z%w'z/:(DʭV=VʠV2(D=!)D6~2'D2?DE2'D2(D2?DE>-P;E>!Eç;y9N^ͷ7V͔.Eg^ͷ7[>͔.Ey9^=.V͔9eXwED_=.XWY,WYʹ$DYͤ,"_ "5Y"_zY*_ͳ'rYYWY&V#ͳ'&WYͤ,ͳ'rYWYB,KY:HDE>aP;ͤ,;6ER+E:&D>!Eç;}["_y9^ͷ7Z͔9*_#N#Fy9ͅ**_6-#6"_"_i9*͔9͘6Y[*_*_6'#6"_êY:HDY*_*_6.#6"_*_63:HD!6!}, E>HZ>!Eç;6Zy9]ͷ7E͘9.6:'DFZ9jV$Z͟9$Z> !Eç;> !Eç;Z%Z'͡#y9E'Z>@+ZZ'-,y9E)^ͷ7[͔9y9͞ZE>'Z>@+ZR'ͻ#͘6ZZ  Z>tZ#"c!Zw',>Z>(Z>QZ>Z>!Eç;P;([::DFYRPACKRPOKERQUITSREADSRECALL\TREINDEXyTREMARKTRENAMETREPLACETREPORTURESET]VRESTOREVSAVEVSETVSKIPXSORTYSUMZTEXT!ZUSE\ZWAITZCASE~LENDCASEuPOTHERWISE~LBROWSEFLJOIN?RTOTALLZUPDATETZALLANDBLANKBOTTOMDOELSEENDTEXTFIELDSFILEFILESSCREENGETGETSIFINDEXMEMORYNOUPDATEOFFONPICTUREPRIMARYPRINTRECORDSAYSECONDARYSTATUSSTRUCTURETOTOPUSINGWHILEWITHENDDOENDIFCASEENDCASEOTHERWISEBELLDCARRYDCOLON"DCONFIRM#DDEBUG$DDELETED&DECHO9DEJECTEDEQF#F#6i9'FF"%FOo9qF,F,ʂF,?Fo9ʩF,FqFo9ʩFqF,?FÂF#F#6Ni9dͦ2͔9T3i9,ʂFy,ʂFo9ʩF,wFo9ʩF*V"VE#:VV'%\H͎'E\Hw'.̓*V#"V*V#"V*V+"V|E:HDE*V!6;6>P;!d"VEP Gc!̓*V#"VF&5,ͳ'B,ÃH>A+ڌHR'2V ͅ,:™Hƛ!ř͊%!"V!ř"V~ G"Vͨ(G"V ~NʆG*V6+#*V6*V663"VG*V ~NʷG*V6'#*V66#6/#*V663"VG*V6'#*V66/#*V663"VG*V"VLG.c!ƛ*ÙDM:VV'ͅ,\H:["_͘6[+[}*_w#"_͘6E SE!}"_y9ʔS?>S!6ASo9*_[:DDrS60#6xmSyhS6nS6vSp4vS6,###6#63"_͘6ʋS[AS!}, E!6EZ%͡#͎.Z%͡#>,P;:DV'&Z%y9'>!Eç;2_y9S6^ͷ7[>2_: E:=D-TV'ͳ-:=D9*Ty9S*S@o9͜I>*_DM*_!_͎Sw'>EER'Eͤ,|E .:_Eͣ!ER)%> 2_UM:HDE>;P;ER)>!Eç;i9.6Ey9['ͬ,y9[^ͷ7[͔9y9'ͽ,ER)2_ͤ,|U%!ƛ"_!"_y9ʓU6^ͷ7T͔9>2_T%[i9ʓU[͔9eX5;Ey9^ͷ7OW͔9:D/WV'&Z%2Dy9E>'>+R'2Dw'EeXXW:D2!DEeXL;Ey9^ͷ7vW͔9<!@6i9@&72|ERX+["DE:=DʳWV'Z%2=Dw'RXWV^ͷ7W^ͷ7W>'>+W>YZR'2=Dw'E2GDE>2GDERX[~_@2%DERX8{2D͔9o98{2D͔9o98{2DERX+[}2aERX͡#i9E͞ZEy9^ͷ7[͔9y9y9C^ͷ7|X?^ͷ7([>R)y9 Y-›Xo9ãX+£Xo9]ͷ7lY+[|Ey Yʹ$Xͤ,"_z"X"_zX*_ͳ'rYXWY#ͳ'WYͤ,6Yͳ'rY([>MP;!6i9͘96M #[̈́6[>?52:D͘9y9vL::'Db[:(D2_!_5b[>0P;:_!)D6~%F[:]iD>[P;H8iDE>\P;!}~5E>]P;!ř~5͘9}řͨ8w[:>^P;H8iDw[1͘9ÖESTOREY?'SELSEiPENDDO|PENDIFEDOONOTEELOOP|PRELEASE VRETURNjVSELECTV@"IACCEPT?HAPPENDHCALLXLCANCELvLCHANGELCLEARLCOPYLCOUNTLCREATELDELETEMDISPLAYMCONTINUEREDIT^PEJECTPERASEPGOTO QGO QHELPQIFQFINDPINDEXQINPUTQINSERT4RLISTGRLOADSRLOCATE[RMODISCAPE;DEXACT2VEwVͷ7cE͔9>2VEAVͷ7§U͔9>2V2VE5,"V|ʈEͳ'B,҈E:VF!"V!d"Vc!:VG*V͔9>'>A+ڌHR'2Vw'.:VʕF!Ǜ͔9:VV'%\H"V*V~ ʩF ~Nƛ G6 !, ͎'G\Hw'.̓*V#"V*V#"V*V+"V|G:HDG*V!6;6>P;!d"VGZ%:HDtH*V!6;6>P;w'&5,ͳ'B,*V9,ïU>P;>2:DïU>P;>2:DïUR)%2Vy9;I%ڧUy9;ITVͷ7H>WP;>2:DïU>2V͔9!"V6y9*I>P;>2:DïUi9ͨ(I>RP;>2:DïU*V6"V6͔9y9,°Ho9H:VOI>WP;>2:DïU!q&͎'ʙIڢIʙI!6>aP;ͤ,;6!6!"V*V6"VzʓIOڢI{I .R+ʢIUIïUZ%Z'͡#Z'y9I>_P;͟9ʯU'>+2Vy9IZVͷ7§UIK>#P;>$P;6!"V!"V*V#"V!6̈́6*V+))))"V:V!KH6x6͟9i9Kbk66 i9*~,aLi9''aL*Vi9>,&7aL aL͔9! o9_2VCʗJNʗJLiL>Jo9o98qL{qLzqL{ *V+|ʉL!9, /&Z%>%P;H8ʯU>A+-&,.P7K& /Z%ïU͔9y9'ڷL+ڷL-ř̈́8"V 6!"V*VB,;L~ ~K#͔9i9* i9 ¦Ko9  Ki9_CKNKL—L>Lo9V~8͔9!V8ڧL{yLzyL{i9*V"VTMB,L*V#"V;M .ͣ!i9ʮN,Lo9,ʉN:oN0ډN8͔9LzL{!L+))))~L L"VÉNi9*Li9ͨ("VL͔9i9ʮNo976Mi9*V͋OLúN*VOگUL .L> P;ïUR)2V2Vy9O+Vͷ7N>2V͔9N2Vͷ7§U>2V͔9Nʹ$Eͤ,:VO#"V"V,͘)DMƛͅ,ڀO*V,:VBO..HOPگUƛ̈́8ƛͅ,*V#"V,.HO5,#9,&,*Vͳ'ïU>5P;,ïU ~NʷO#y=ON#6T]> 7~8ͦ2#F#6NT3>P;7"V V#~2V#6"VzCPͺP!KV.6͟9PO*V͋OQ*V"V~ Q.7V'ͳ-:=D9ZRy9@/Ro9^R>*VDM*V!V͎/Rw'ɯ2V2V:GDtR: tR!"V!"Vy9$–Ro9,.ʜR+ڧU}2V͘6 Uy9$½Ro9 .R+ڧU}2V2ś2ƛ!ƛ"Vy9sVͷ7vS͔9>2Vy9}ڧUV6/#Ns#FrxS2'Vy2*V>N2&V3S2*Vy)SA2'V>C2&V3S2'V>L2&V!ƛx66y9Vͷ7vS͔9y9ͤ6§Uo9x&7ʧU#͔9!662>2Vy9_Vͷ7S͔9y9 U* U"VʫS>RP;>2:DïU͔9y9ScVͷ7 U͔9y9ͤ6§Uo9x&7ʧU͔9!"V662:V!}, :V!:&Vy9)V>!Eçƛ6BEFOREBLANKCHANGE? DELIMITEDTO: FIELDFROMGETPICTURERECORD SAYSDFRECORD # TO USING~2'D2?D2?DE>-P;E>!Eçy9N^ͷ7VTO: FIELDFROMGETPICTURERECORD SAYSDFRECOR$E4JíKLOOÑP{QQwRASÚS%29V27V28V24V25V26Vř̈́8!}"KVy9[F%"Ty9[FUͷ7|E";V͔9'J>29VLE27V͔9!ř6 "MVy9*£E>&Ji9ͨ(ʳE>R&J*MV~8!6 "MV*KV6+#6663"KV͔9y9,LEo9ÕE|Uͷ7F>28V͔9yG"QVH60#"QV UGƛ*QV6 #6 #6DM:U%PI:4VLH*ÙDM:UV'.w'PI:5VmH*Ù6 #6 :U*ÙDM%PI!ƛ"QV"KV*KV~ 9I ~NH#F#6*QVyʟH6,#:U,ʩHw#w8x6+~ ½H²H#:U,Hw#"QV+I+~ H+H#"QV+I#F#6*QVyH6,#:U, Iw8x6"QV+I~# I$I I I"QV+I60#"QV*KV"KV {Hƛ*QV6 #6 #6DM:U%R+IFI!UřÄ́8 ."AV!"MV*AV~ Iƛ>  ~–I> #I#~#~=T###~=T*AV"AVƛ.*MV#"MV}I:HDI*MV!6;6>'P;:UV'&:6VI:8VJ:4VJͳ-V~8͔9!V8ڟL{*V66گL"V*V"V~KZ%*V6 !9,:VV'ͳ- /&-,ïU>P;J>P;J>P;J>P;J>yP;JZ%'>2P;ïU>P;ßU>P;ßU>P;ßU>yP;ßU>(P;ßUR)!"Vͤ,"V"V>2Vy9M2V: L>.P;:V¯U: M>ZP; M>}P;͟9MïUi9 گU8͔95,6Ny9|;M*V"Vͳ'*V : #N"V:=D~M&RGLGoMNxLxMíM*V*VU>LGқMNxLxMxMʹ$ʼMz"L;M*V+"V|L;Mʹ$ N "L;MxM*V6ҭM"VTM*V~ Mi9*V͋OOP!ƛ62V:VGƛw8!ƛ"VͺP!8V.6!ř~5ʒP:řPrP!V.6!~5!ƛřͨ8P>2V0P!ƛ6!V.6!ƛ~5ʒP>2V0P:VP:VGƛʰPw#¡PP6 #°PP*V!6.6>:5̈́6*V:V_~5#P7>ɯ>P;0P"Vͤ,| Q:DQ.: ʽQ>2V2V"V:=DEQ&R>"R"R.ͤ,#*VU:V"RGO:V2Vx«QxʏQ*V6ҫQ"V>2VEQxҫQ*V~ ʫQ*V"V>2VEQ:VҹQ.7!6!kV.6ͤ,#;6!6*V!6 ,>:5̈́6͟9Oi9PRx"R RNT~T.T#T"V!ƛ~&T.&T#T"V*V+~ʇT$oT*oT#yT9yT,.T\T-yT .T+~$jT*jT> #w.T.T .TʂTw-T6 .T*V*V~UʳT#ʳT~U#ʮT9™TwØT~U#T9T#óT60#óT!ƛ~UXTTw#T9T#Tͱ6Tw#T6 #T!"V>VP;>2:DïU"V!{V16;6!"V*V N! :T_ 6DUy2V*VO:U!V > 7*VV~uU#jUV*VDM!V͎*V:Vg"V*V"V~ .U>2:DïU>2:DïU>!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,93Uͷ7LE>26V͔9LEUͷ7)F>24V͔9LEUͷ7"T>24V25V͔9y9Uͷ7LE͔9y9"T2Uo9LE:9V$J*;V͔9:4VsFuF>'>+R'2U:4VºF!6#w#w#+++++~8:6V\I .:8VIw'ƛ!ř͊%!q&!"MVI!d"IVͤ,|I͎'PIIPI*MV#"MV*IV+"IV| G:HD G*MV!6;6>'P;!d"IV:7V-H:5VGG*ÙDM!ƛ> 7!}, ƛ1H!}"FV!ƛ"QV*FV~3H#6##"FV ~NG#F#6*QVyʃG6,#:U,ʍGw#w8x6+~ ¡G–G#:U,ʲGw#"QVH+~ ¾G+³G#"QVH#F#6*QVyG6,#:U,Gw8x6"QVH~# GHG*MV!6#6.Z%w'5T>(&J>HP;w'>2:D5TR)%!}"FV>A2U2PV2OV2:V!SV"KVy9%"Ty9?KUͷ7J:OV<2OVҨK*FV"T>2:V"FV#6xʣK!U4ͅ*! 66*FV6'#66#6-#663"FV*KV6.#663"KVi9?K,UJo9UJ͔9>2PV!SV"KVy9?K)*J͌**KV~5T#6"KVbk 6y9*i9~͊6'K_# K͔9y9,UJo9J::VʞK!q&mK͎'dKmKdK!}, R+mKOK:HD}K!SV!6, >A2U:PV5T!SV~35T#6͌*ÌK>J&J>K&J>L&Ji9Uͷ7"T͔9y9řͤ6"T6o9"TKo9y9K,"To9y9K"MV!ƛ"QV*MV++"MVř6 L-L6ͤ6*QV~#L#L#"QVK*QV6!ƛ;L' |RL02UUU~|L #pLy2U#~kLU |LO 6:%D2\23Vy9ʍMyUͷ7L͔9y9"T_@2\o9:Lo9LHUͷ7"T͔9y9"T!U>  7Ui9ʅM ʅM.TM*DMa;M_o9!M6?#EMo9.…Mo9UʅM ʅM*zMaqM_o9\M6?#{Mo9>23VL!6:3V²M!MU.6!U] ̈́8M!65T!U] ̈́8M!65T!V"V6 \NM!tU.6*V:3VM ̈́8 ""T͔9>25VO:7V"T:5VP6)SVͅ,ڈP! ~FPTP#Ny<2HV\P#F###N>2HV\P>2HV!SVͅ*"U:HVOVͅ,*U 6:HVO!V~8PZ%w'5T27V25Vy9 QUͷ7P͔9>'vQ>+vQR'2U"AV>27VØPUͷ7"T͔9y9"THUͷ7"T͔9y9"T"MVo9 QP>25VØP:7VqQ*AV~UQ:5V)Q*MVhTUQ.! F#N#6xIQNQ PQPQ.*AV"AV~ Q&Z%w'5T>H-T>(-T25Vi9HUͷ7ʜQ>25Vi9,Uͷ7"T͔9y9"T"KV"AV*AV*KV:5VQhTQQhTQ͌**AV"AV~ ®Q5T%29V%"Ty9#RUͷ7"T͔_0T O))))  Sw'>2:D5TP;>2:D>!Eç;&odUT UTUT/}o|gXT zʏT ʏT*ʑT?ʊT͊6چT_‘T#jT~TTT@@Ȅ@@@PR@brpb@@@@@@@d\,ADDITIVEALLDELIMITED variables used bytes usedEXCEPTEXTENDEDFIELDSFROMLIKEDatabase files # records Last updateNoneONSTRUCTURETOFILE UNAVAILABLEWITHA::::::::ASDF ????????DBF$$$ SUB'',3FIELD:NAMEC R)!"G"G5,!d"G!9,*G,B,qF*G#"GF*G,.*G*G#"G:HDF*G+"G|F!6*G+;6>:P;!d"GF*G,&,:HDʉF>9P;*G+"G9,:HD G*G;6>:P;ðE!ͳ' Gc!!"G!d"Gͯ*G#"G*G+"G|F:HDF*G!6;6>xP;!d"GB,F:HD G*G!6;6>xP;w'>2:D GP;>2:D>!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,ONReindexing index file - TOȄ@@@PR@brpb@@@@@@@d\,9_Y G>22Q{M2TQ:.Q G>NP;FMy9_YBG>2TQ! Nͅ*"DP;FMy9_YjG>2EQ{M:EQVH:.Q€G>CP;FMWQқG:.Q M>4P;{G{M:.QªG>PP;FMy9_Y¼G>2LQ{M2MQ:.QG>kP;FMy9YG>2MQ{M:.QG>iP;!X6)FM G HY> >5HYi9<H>&H+Ho9>+Ho9>@26Q&7GO2Y{M!Yy660#q#:6Qw#q#:;Qw#63:.QbH>2KQ:.QšH!6:KQH6x6FMy9J8{2JQ͔9~,Mo9*0QMy9M:LQH60#N#FxHw#:JQw#:;Qw#63"0QH"0Q#6{M:.QV6 NM!V"V!6*V~ :3VN]̈́8"V2h!],̈́6,x62|\N\ŸNog;6x6@6>/5@6>/5@6!6:_N\N>P;!6:_N\N!U16!6N,>.5,"VNx6~6N!6NN\O7(5 ~5>)5́6~NuO#~2UkO<2@V2UÆO#~2U###~2U>2@V!U, :@V*DV6#"DV~ %O!6>`P;x6:CV@6!U16*DV;6! U165T27V25Vy9PCUͷ7O͔9>'>27V>+O>X-TTͷ79y9"Tͅ*"MV>29Vo9#R RQ5,|JR!q&JR͎'ARJRR+JR7R:HD[R>"P;`i;6:9V5T`i4*MV 645T>gP;w'R'%>rP;5,;6>wP;+++++@6>/5@6>/5@6͊.R>pP;R>qP;>fP;~ 'S !6yH6x6 ,~6 ~5{6#~H6{6###F~~6xSH6~6R!6>`P;x6x6~6͘);65T>eP;n:iDy9ʖSUͷ7"T͔9y9"T)*qS͌*ͅ* 66# ҊS> w5> 55T5Ty9>'>+S2U:Uƛ%SǛS}2?VSS"=VS}*=Vw#"=V!?V5SíSw'5T>X-T!GTFIELD:TYPEC FIELD:LENN FIELD:DECN ????????DBF$$$ SUB'',3FIELD:NAMEC D # TO USING~2'D2?D2?DE>-P;E>!Eçy9N^ͷ7VTO: FIELDFROMGETPICTURERECORD SAYSDFRECOR EðEEy9 G2G2Gy9}EGͷ7SE͔9y9"G} Gi9~@E+"G#~O#F>2GEGͷ7 G͡#͔9y9>'uE>(P;G>2GE:G>TG:G>HG>+R'ͻ#*G*GR'w'ͨF Gʹ$ G͹$"G*G~E2G":HDE!6!G.6:G%#gͨF*G#"GüE#"c! GR)23Q2LQ2-Q2EQ2/Q!mY 6>28Q2;Q>927Q>P2BQH;2>Q2?Q%y9ʟE%ڠMy9ʟENͷ7eE͔9>'>23Q:E(Nͷ7‹E͔9y9ʠM"Nͷ7 M͔9>2?Q:ENͷ7 M͔9>2/Q:E:3Q¾E>?P;͟9i9ʘMʘM>'>2.Q>+E>+2.QR'2>D2IQ:.QE>hP;FM{My9eF eF_MFo9= Mo98{2;Q28Q͔9WFL:Fo9= Mo98{27Q͔9WFWeFo9= Mo98{2BQ͔9WFi9,eFo9E:.QqF>EP;FM{My9_YF>2IQ:.Q’F>FP;!eT6)FMgTi9<ʮF>ʶFûFo9>ûFo9>@26Q&7ʆF2fTO{M!gTy660#q#:6Qw#:;QG:BQw#p#6322Q:.QF>=P;FMy I>@P;*4Q6)#"4QFM I/I*4Q> 26Q>\I*4Q#i9MIRIo9>RIo9>@26Q&7HO{M*4Qqy6#60#q#:6Qw#:JQw#:;Qw#63"4QxʶJ:TQʶJ:.Q›I>NP;FM{My9_Y¶J*DV'&:>DV'Z%2>Dw':?QL;!"9Q!q&:EQʄK!WQR~3 K#K#N#F! N4ͅ*"@Q6-#6636'#*@Q66xPK6#63!S6.#*@Q663rK͎'~KڻLR+ʻLڻLcK!WQ, %;:EDʝK!6;ÝK!6;2-Q:/QK!6͇M>cP;*9Q#"9Q;6x6!@16͇M:DK@6>/5:D@6>/5:D@6!6͇M:IQK!eT, !6͇M!nU, ͇M:EQ)L͇M>*5̈́6!X, !S, aL:-Q—K-;O:7QڗK͎'aLڻL:LQ̇M!Z, :2QaL͇MR+ʻLڻLaL͎'aL:EQ)L!R, )LM:-Q)L-;O:7QڗK!6͇M>*5̈́6!X, !S, )LM:TQL:R3L͇M>`P;͇M!R, ! N)*L͌*! N5~AL6A!6:>QL;bOE*Y|%O!"_Yn:E!6Y>Oͤ,;6̈́6Y5:_\O:DDY)DM #Y}, R+EYE>! Eç;͔YEç;͔9>!Yy9^ͷ7VPY7Oi9>Yy9[>+YO!)D6Z'D!(D4A/w Z)O>*P;vZNP͔9(.Z2_:'D9yZP]ͷ7-P!Z^ͷ7P!'Zi9>P^-ZP!_5PE3ZE>)P;E>9ZER)>! Eç?ZD2_E2 EZ2_:'DEKZH;G:GDʡQZ;;L;EWZER)ʹ$Q]ZPPo9cZ&7Oi9y iZP:&DEoZEi9!P:uZE>E:NG>x2NGjFNF:N_:N!P8F=3F"N!S6|YFDM T!S~+ xOF*N> 7+6ðEx G2NxʥF*N"NN6ښF!N"N2NðE:N2NðE*N"NjP6һF G:N2NðE:N_:N!PF=F"N!S6|FDM*N!̈́8!S> 7+6ðE!ř6!"N!ř"N!N"N*N~ G 6͔9y9G*Ni9*~ Hi9> &7H H͔9! y9_CʇGNʇGLH>Go9y98.H{.Hz.H{͔9y9G8&H͔9y9&H{*N666H"N*N"N*N"N%G*N6 !ř̈́HxKxyJ0LKL*N*N6RIͩK"N!N5:N 3J5~RI2N*N"N*N*N6pJͩK"N:N<2NG:N jJx2Nx BJ*N"NHxJ0LKL*NK~›J6 #6 #6++##"N~µJ6 #6 #6#"NPM!N4:N J4~RI2N*N"NHKL:N J>2N*NK~K##~K"N:N=2NJ*N"N2NHKL:N)K*N"NLK*N*N6DM:NV'.&Z%:NlKV'Z%NL'NLͬ,NLͽ,NLͬ,NLͽ,ÚK:NKV'Z%:NV'Z%'w':N2"DN+~ ±K++~ ±K#~ #~' >.7#"NN~8:NO> !}76:NK~'L}"N z>!Eç;>2:DNCOMMANDName Type Len DecABORTING MODIFY (Y/N) BUFFER FULL, TYPE Y TO SAVE, OR N TO ABORTSTRUCTURE$$$BAK16!6N,>.5,"VNx6~6N!6Field 01 CPField 02 CQField 03 CQField 04 C6QField 05 COQField 06 ChQField 07 CQField 08 CQField 09 CQField 10 CQField 11 CQField 12 CQField 13 CRField 14 C0RField 15 CIRField 16 CbRField 17 C{RField M:.Q M>4P;ÇH:EQ:DS3/M͇M>IP;͇M!DS, !WQ, :MQBM>2-Q!6:.QbM͟9i9:>DV'Z%ØM:>D9i9wo9kM͘9i9:.Q:>D :!6:8QOÿ́6 ÎM>!Eç;>2:DØMTTT@@Ȅ@@@PR@brpb@@@@@@@d\,A::::::::AFORMPLAINPRINTTO-N9*_[mY:DDdN60#sY_NyZN6yYhNp4hN6,##Y3"_͘6zNYN:_NY_*_~ NY#660# Y##FNNCY#6#6N6YNp#q#q4#6Y_*_"Y_q&Eͤ,Y͎'P;E>s{Z)\^y9ͷ7Zy9SQ^ͷZR)ʹ$Q]ZPPo9cZ&7Oi9y iZP:&DEoZEi9!P:uZE>i9HUͷ7ʜQ>25Vi9,Uͷ7"T͔9y9"T"KV"AV*AV*KV:5VQhTQQhTQ͌**AV"AV~ ®Q5T%29V%"Ty9#RUͷ7"T͔y9Nͷ7EHNͷ7N͔9>H>uP;H8NNR)!P > 7!Q w @Eř̈́8!ř"N!N"N!"N*N~ ʪE*N 6 ~ʁE#{E~M###~M*N"N*N"NdE!N"N!"N PN!N͎*N"N!"N*NDM*N"N!N͎*N"N~ F*N$"N:U=8!9, /&-,N>P;M>P;M>P;M>P;M>yP;M2Ny9SH>_P;͟9N>'ͿK>+qH!}N.6>2NwHR'2NNL>+R'2N:"D2N2"D:T=2N:T@ұH:U=2N:N=2N!N:Nw#}6!N6 #6 #"N"N"N"N#"N2N*N!`6DM*N>7L!"N!"N*N"N*NKRIO~ $I#~ $I#y"N&o6!}:N66!N͎:N LIx I!N"N*NK"N:NGN!N͎>GJ•I!gN.6H8KHI0LKL*N*N6DM*N+T]͖8#"N*N6 #6 PMH*N##*N6DM*N*N##̈́8 "N*N~H6 #6 #6#"N*N+6L*N~*L *L L> # K7}y!"N}:NG!N͎*N~ bLbL#RL:NO !}6 +~ mLy2N2NL*N*N6"NҵLy*N6*NDM*N̈́8:N_*N"NL*N+6*NDM*N+͖8#"N*N}:NO~8PM*N~8:N8M*N^6MZMLT] "N:NV'ͅ,x4M M"N>2N*N+6 #6 #6#"N>2N*N_6*N*N66M*N:NV'.*NT] *N6DM̈́8*N"N*N"N*N"N*N"N*N> 7#"N!N.6H8ʁKK>eP;n:êE&odM MM/}o|gM18 CRField 19 CRField 20 CRField 21 CRField 22 CRField 23 CSField 24 C*SField 25 CCSField 26 C\SField 27 CuSField 28 CSField 29 CSField 30 CSField 31 CSField 32 CS 9ELD 25 CCSFIELD R)> 2"J2qJ> 2#J!"J2Jy9ʙEJͷ7GE͔9y9*YIͨ(aI"J͔9EJͷ7UE\E͔9E Jͷ7jE~E͔9> 2"J2qJ>2#JEJͷ7iI͔9'qI>2JE*J|ʁI:JiI*+ƛ6͘)|EE xEE>2*J*J ~LQI2FJ2VJ2fJCF:"J2"J2qJ:#J2#J#~2GJ2WJ2gJ#6~2JJ2ZJ2jJ6"/J:GJG:JJO!Iͅ*"lJ"wJ,'R'21J>+R'2J /!"'J>2:J2+JåF2+J:JV'&'*'J9, /-+R'21J>2:J:*J_*'J6"'J|fH::JfH2:J:+JF*'J&:*Jo6F{2*J2)J2,Jƛ͘)DM!ř"-J:JV',:1JV',:+JGͅ,nG F*'J#"'JGͅ,II*/J*-J6"-J`i!)J4:*JF͟H*ř"XJ!KJ"6J*J"3J:+JzG:*J_*'J6|II.H"'J"%JzG:)J2*J͟H.H:1JV':+JʝGB,.HʇG*'J#"'JãGB,II:#J28J!2J, G:JV'.*JIH:JV'*/J*ř6͘)DM.*XJḮ8*řř!Ǚ:*J=O~8y!ONASCENDINGDESCENDINGTO6RIͩK"N!N5:N 3J'' 3COPYRIGHT *N1978 SCDP N<2C.W.RATLIFFx2Nx''[J 3'[J-3:::A0LKL*NK~›J6 #6 #6++##"N~µJ6 #6 #6#"NPM!N4:N J4~RI2N*N"NHKL:N J>2N*NK~K##~K"N:N=R'wE>2G!6!I.6R'%͊.+E>pP;0E>qP;!6͹$~wE"`I!'I.6!6̈́6*`I~wE#"`IV'%~6ͳ-nIͅ,! J16!6GEw'͎.R'E>2G!6!II.6R'%͊.ʨE>pP;íE>qP;!6͹$~E"`I!'I.6!6̈́6*`I~E#"`IV'%~6ͳ-nIͅ,! J16!6E͎.!6:Gy's date - Default disk drive - Alternate - Bell - Carry - Colon - Console - Confirm - Debug - Delete - Echo - Eject - Escape - Exact - Intensity - Linkage - Print - Raw - Step - Talk - Database selected - Indexes: Key expression:Unselected database - Jy667~2JÅI?~2JO>-!J7J~ʗI#ÌI!J:J66*JDMJ!J͎*J:J2YHE:XHiEOHͷ7iE͔9y9}G>2XHE:WHGHHͷ7G͔9>2WHy9G"ZHy9*ʾG͔9y9,Eo9ÊE:YHʦG:XHʮG>+R'2VHw'͔.:WH…F"\H!ř"^H!dH"`H*\H~ F*^Ḧ́8*`H6+#*\H6*^H663"`H*\H "\H*^H "^HE>͔."\H*\H~ Fř''xF*^H*\Ḧ́8*`H6+#*\H6*^H663"`H*^H "^Hś6F*\H "\H+F!ř"^H!dH"`H*ZH͔9y9*"bHi9ͨ(¾G"\H*^Ḧ́8*`H6+#*\H6*^H663"`H*^H"^H*bH͔9y9,Fo9×F*^H6 !řƛ͊%> R)%2H2H2Hy9ʷE%`Hy9ʷE:HDEHͷ7DE͔9'-H>2HE:HyEHͷ7yE>2H͔9"Hy9*5H͔9y9,Eo9_E:H`HHͷ7`H>2H͔9y9=H"H*=H2Hi9ͨ(=H"H͔9E:HEH>+ER'2H ͅ,E>+R'2H ̈́8.w'ƛ!ř͊%!}"H63:HxF*H͔9y9*"Hi9ͨ(MH! ~NdF*H6'#6"Hi9ř''MH*H6'#66#6/#663"H*H͔9y9,Fo9F!ř"H*H~ F ~N½F*Hͨ(MH*H6'#6*H6'#66#6/#663"H*H"H~F:HG*H#"H"H*H! ~NF*H6'#6"H:HO*H66:*JOͫH*ř"XJ*J"3J:+JzG*%J+"%J|zG:JV'͘)DM!ř"-J:*J*-J6"-J*/J6.=BH:+JfFåF:JV'Z%:1JV'Z%w'*lJ͌*:HDʉI!H.6ÉISort complete:*JOͫH ãH:"J28J:*JGyH==I!KJ"6J!;J"3J!ř666"XJ"HJ!2J, I*XJ6*HJ6I:,JIII=Hx::J"hJ:,J2:J!sJ, >2,J>P;iD>/P;yI>P;yI>RP;yI>HP;yI>(P;yI>2:DÉI>2:DÉI>!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,A::::::::AF!6!6!6>eP;n:lG!6!G.6:D@6>/5:D@6>/5:D@6!H.6:%D@5>:5:DeF!G.6:D%!6!(H.6:!D[G~6!5H16:D[G!BH.6:D[G~6!OH16:"D[G!iH.6:#D[G~6!\H169;[G!vH.6:$D[G~6!H16:&D[G!H.6:9D[G~6!H16:ED[G!H.6:;D[G~6!H16:!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,Off On Alternate file - Toda2Fy9EF&7o&6!bF͔9:%D2F2%D>'>+2F:F2%D:U2FE:F9Ei9*BE#Fͷ7BE>2F!6E:F9Ei9~*iEâEE:F9Ei9]Fͷ7BE~*ʯE͘9.6:F=2FE!6>eP;n:E!6:U2FÁE4::;D:FE!kF.6:FV'Z%w'E>!Eç;6:GF!6!6!6>eP;n:lG!6!G.6:D@6>/5:D@6>/5:D@6!H.6:%D@5>:5:DeF!G.6:*ENDDBASEMSGNo help messages foundHELP!6>eP;n:lG!6!G.6:D@6>/5:D@6>/5:D@6!H.6:%D@5>:5:DeF!G.6:*ENDDBASEMSGNO HELP MESSAGES FOUN2ƛ:VHV' .w'>͔.,͔.,!"͔.!}, _G!dH, :VHV'*ÙDMƛ.w'*#"|<ʶG>͔.R+mG*G,͔.R+}G*G:VHV'&ͳ-> .Z%w'G>(P;G>HP;G>lP;G>mP;G>P;Gw'>2:DGw'>2:DG>!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,FIELDSFORTO2:DG>!Eç;TTT@@Ȅ@@@PR@brpb@@- DELETE - ECHO - EJECT - ESCAPE - EXACT - INTENSITY - LINKAGE - PRINT - RAW - STEP ř''=H*H6'#6p#63"H*H#"H"H!ř"H*H~ ]Gͨ(PG*H6+#6*H663"H*H"H*G!q&*ÙDM!ƛ> 7,~*ʂG͎'ŽGR+GsGG*H, !"HG:HʮG*H, ʷG!}, G:HV'ƛ*ÙDM.w'*H#"H*H, R+GG͎'GÝG*H":HV'ƛ*ÙDM.:HV'&ͳ- .Z%w'*H!6;6>'P;kH>(P;UH>RP;UH>P;UH>HP;UH>RP;UHw'>2:DkHw'>2:DkH>!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,FIELDSONTODDkH>!Eç;TTT@@Ȅ@R)2I2I2I2I2Iy9+F:I>EwIͷ7>E͔9y9'ڴH>2IE:IkE|Iͷ7kE͔9y9"I*ʼH2I͔9>2IE:I¦EsIͷ7¦E͔9y9H"Iy9*ʼH͔9>2Iy9,Eo9ÇE:I FIͷ7 F͔9y9H"Iy9*ʼH͔9>2Iy9,Eo9Ey9Iͷ7E͔9y9*ʼH͔9y9,Eo9E:IHIͷ7H͔9>2Iʹ$HE:IH:IH>+R'2I ͅ,ƛ!ř͊%:I™F*Iͨ(H F#6"I*Iř:IO''H N#6"IxH2IøF*Iř:IO''H ~2I#6"I!}"I"I:I?G*I"I*I͔9y9"Iͨ(H"I*I*"I*Iř''H*I6'#2:DI>!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,ADDFROMONRANDOMREPLACEWITH@Ȅ@@@PR@brpb@@@@@@@d\,ADDFROMONR2J!K"Jy9jEJͷ7J͔9>2Jy9*2E>P;Ji9ͨ(DE>RP;J*J̈́8!"J6 ͔9y9,jEo9!E%!q&ͤ,"J"J2J :"D2J2"D2J2J2J2J2J!"J*Jͳ';I"J2J>2J*J~ EuHE!J4*J"JýE:UO:JG:J2J F*J:Jg."J!J#"J:JG:JO:J2JHSF*J"J2JÔE:J0rHGH:J=eH2J!J4eH;I~ eH:J<2J:J=eH2J*J"J2JÔE J:TO ~ҊH:JڳH:JʓH7~/2J7I?~2J*JDMJ!J͎*J:J-!J7!Jy667~2JÅI?~2JO>-!J7J~ʗI#ÌI!J:J66*JDMJ!J͎*J:Js2 2 ! ͗ Gwág:Y:ʓ ¸Y:!WŸY:!Xt#ʡ#K#w͸6wK`pKtwK*ww{t7rD:Mwwwww>s66'#*I66#6/#*I6"I*I͔9y9~,6Go9"IF*I63#"I:IG*I"I*I͔9y9"Iͨ(H"I*I*"I͔9y9Iͷ7ˆG͔9y9"I*"I*Iř''H*I6+#6*I6"I*I͔9y9~,Go9"ILG*I63:IGHw'!q&ڥH:IV'*ÙDMƛͅ,*I*I:IOC7;HH$H:IH*I, :IH*I, w' .:IV'*ÙDMƛͅ,ڥHGw'R+ڥHG:IV'*ÙDMƛͅ,w'*I:I ͳ'|ʎH:I{H*I, :IʈH*I, .:IV'*ÙDMƛͅ,ڥHXH:IV'Z%w'I>(P;H>P;H>nP;H>TP;H>RP;H>oP;H>sP;H>SP;Hw'>2:DI>J4R+ҮE!"J;I"J2J*J~ 9F6I9F!J4*J"JF:JO:JG!y=PFOxgDF"J*JJIJ!J͎*Jͳ' ;I"J2J*J~ ʛFHڛF!J4*J"J{F:J!JڪF~=2J:JG>2Jx2J2J;I"J2J*J~ FuHF!J4*J"JF:JF J2J:J(G .ʹ$(Gͣ!2J(Gͤ,"J"J 2J:J)H:JG!J6#:J/2J:J2JØE,ͤ,"J*J"J2JÔE!J6#:Jwʹ$G "H"J:JH:JG:JO:J2JHSFR+H*/}o|gJ z>2:D J>#J:J2"D>!Eç;J'' 3COPYRIGHT *N1978 SCDP N<2C.W.RATLIFFx2Nx''[J 3'[J-3J0LKL*NK~›J6 #6 # FieldsRecord # :00000W.RATLIFFx2Nx''[J 3'[J-3J * - deleted record function *END *# # - record number function *END *! !() - upper case function *END *$ $(,,) - substring function *END *CHR CHR() - numeric to ASCII *END *DA:$ ~*% *" "% ͳ* ~#" Oa:: =2 42$ ;g:*% "" "% ͳw: =e: h: s2 Gwá2 * *% 6K-:T=o%"% #ͳGwt* *% 6ͳGwá:#D:Da:* "% ͳ:Da:>2 wSy:D a:w>2 : &* wOa:á* : 6* " N:' 2( * 6ZySZ* ~qO>:( 2' * " wOa:͟ á: 2 ʃ! Æ! !͗w* +* 6w#Gʰw*% -"% :T=o%"% ͳ>2 : O* * y6+" :' 2( * " * * 6#G :) * N#yS#* q#* 6 :( 2' * " ͟ w>2 * 6 *% ,"% * *% 6dG?D͟ w: s: s: ©: *% * 6©: s: N*% * 6: * 6: 2 w: w>@s: w>s: s: w: 0s: w: s͎: G: ʌ: 2 6"* 6" xG:& 2& yO:% =2% ͳg ͎͚!"% !" !" 2 2 2 *% ,"% :T=$."% ͳ*  **  64* |" * : G: O* T3* "% ͳ* Nͷ #> : * ~_Yd Td 66͂~‰ ** |Œ  ͷ :% y ʹ** |:"Dʡ :a:v*% * 6" **  ~͝*% - :T=o%* 6** 6* 6" ͂:"D :a:! 4ɯ2 " "% 2' 6" 6"* 6" **  ~O2 #~6 <2 #6y ~  4* |f x2 y2 o : G2 O!ƛ" " T3É #" 2 " ͳ* |ʘ ~Û 2) : 2 * " * "" >2$ a:: N >9L>XTFYNtfyn.+- #9AXL!DELETED 4*T3*H,̈́6C x2y6 N( y#K C C ~!ZB !V16̈́6C A2V O2~;ʢ # \ :x yï y6~ Š >2Ü +~ ʜ + ‹ yï yï >2 y/<2ɯ2`2*6!j"!6N#~2#^#V#~#F#"x2:`/ 6~#6O~8C 6"͚F##6NͿF~8x@<<<(ʕÐ(Õ(Õ(ʐÕN#y6F#w8xw͵6#"C N#F#x*wͦC AʐÕAʕÐAʕڕÐAڐÕAҐÕAڐʐÕ*wͦC *wͦC Ϳ~/w͵C 5C ͤ,4C ͿN#ͦ2C Ϳn&4C *ͦʐÕ*ͦͤ,ÕN#F#x<]GC7xs#^x/<ѷ.OR.axRXLDaxB7>)ѷ.AND.ͷ7ͷ7ͷ7}D͉x>͉7.NOT.-xʫ-xɱ~$>ʽ#D-x7~=>%#>%<#~= >>%> &> %>+#~=#>&> #Dɯځxʙ~+[#Dڀxʀ̈́>9-d#Dڀxʀ̈́>97xG|ڎGyҕMxGɱ ~+#DxyO> à-#DxyO>à7mjx #" * |:' <2' 6~ 2) * +" * |@:' =2' 6~C 2) :) ! Q9O:) 9ʐ#ʐAwLʆ!|X7y͊6y͊6?_Oy! Q97y! Q9yͱ6G**  N##6y~FTa:4* |**  p###q!" ** N!ƛT3!ƛ#* | Nͷ #* " ʍ* w#" 9V#VA`!`Xuw|~ͱ6|yO~͊6uy!~|_w|~|> wOͷ #(* 6#" ͎*% "% ͳʹ"% ͳv~Oͷ #ô~#.~ #: o&)))6: NH * : Oͦ2:INSERT "!j"!j"a!j"*~#"4 ͸6 +P (;N>e  T )J *+":7Ϳ~ !"C *N̈́8"ͦC #"C *a6"a6" F#N#6x͡I a x7 ͦ2*4A *~8ͦC *xT #y~8 ͦC xn ~*wÅ ~*_Tʃ Yʃ 6Å 6ͦC OG"Ϳx ~@ڬ #6q#w8= ##6Ϳ~C 6"͚ړʮ#F#6N~@z 7#w8= ##6Ϳ~#6T= 6F= ?5M ?5E *p#T3H ͦC ?5M ?5E|ŠͿxҊyq=t~O#x6*q#~8 ͦC >{P; *w# ˜ͦC Ϳ~w͵C 1C >zP; ͢1C ͘1C ͼ0C (ʐÕ(ʕÐC *6#:D*6/#:D*6/#:D* ͦC 0 7 ,p#0w#ͿT]Ny6~ T+ H *q#~8 ͦC ͿN#*~8i&6 i9͔9ͦZ''+ڗZ%w'͔9ҐÕ6"xyi&!4͝2!!4C ?5n&4C Ϳ#n&4C Ϳ5 Ϳ4ͿͿ*4ͦ͘1*͵4#"+~:P; y9͔963#q#p#637"xX~*.#DmixiyxGOxG>/7#Dmixix=|GWGy]Mx7~+ʏ-“#D͜ښ>#D͜ښ͸vJ͛ͤ~!cQ97t=. DͤڡxʡG>Ú>Úͤڡ9¡>Úͤڡ9¡A>Ú~( #Dڡ9¡~,¡#Dڡ9¡~)¡#D>Ú~( ͤx66$#6Üͤڡxʡ>%Úͤڡ9¡>&Ú~(¡#D-ڡxʡ~,¡#D8D~),{>2-ڡxʡD~)),¡#D-ڡxʡ~)¡->#D:O>1Ú~(¡#Dڡ9¡~,¡#D-ڡxʡ~)ʴ,¡#D8ڍD~){Ï>2-ڡxʡ~)¡#D:O>2Ú#D>>2Úͤڡ9¡>Úͤڡxʡ> Ú~( #D~) #D>!Úͤ.xNMy)CMLM~(¡#D*ʡD~)¡#DU6)#6#p#Üͤڡ9¡>"Ú>Ú>Úͤڡ9¡>#Ú7~(#D~)#D7xͦ26(#4!D7~ͤ6x#&70~**|0*c0"0&-*c0#"c02b02k06DM*x0> 6̈́8 6xA2/y2/2/_!|Ux2/g!"/#"/ͽ$20!$ͭ$m0ʱʜͥÐ:l0ͥ"c!ͯկ2/ͤ,"{$#20!"{"Z|*z0"t0*/"/#:0*/!{:/O~8*/:/66#6*v0#6#6>2020J$$>20*/>20!{:/O%=$#++6zWJ$"/#J$*t0"/_$"/:0O:0ڏ<$DM:0<͇$+:0͇$+͖8*/!{:/O~8*/:/6*Z|6!04:/$:0Ľ$*/"t0~2 0<g:/%|20*/"{$:0g:/$|2/20͇$*/%.!!$!++6zW!J$"/# ++6zH!J$"/# J$62b0*z0"t0!ͭ$*x0 ͔9}ڠ!#6z>C+++6/ʒ!>N6-2/{2/#/6ͭ$m0¸!!!!ø!:l0!"ͤ, |ͤ,H ͯ>O ""̈́$%"6!#_$m"#$a"_$m"#:0O:0":0<20͇$++6J$"/>20J$#*v0#6zC"d"J$̈́$6v">2b07ɷ#_$"#:0=20"_$"#:0ʒ"=20*v0#ʱ"͊$6J$"/#:020J$:0<͇$++6z·""J$̈́$6">2b07ɷ2k0;:/_! %##:/@%5:0-%ͦ20%4͘1U47:2/e&>2/=&e&>2/y98ziD͔9"0>2/^&>2/z:/&=2/"!0:/~&&:/ʋ&*0&:/ʹ&*0|&*g06&T]ͳ' |&!&:/&:/&*!0|<,!"!0>3".>~".> ".iD:#0;".:b020: )-)):0) )ɯ<## *0''## *0''!`6!d6!d6 :#0>P;i9"0!}͔9~5iD'+ڈ)Z'-,*0͔9>P;iD*!0"!0*e0> 6x)y)6A##6z*+p*6#6)6#6 #6z**M**p#N66*##*M**p#6q%*6>P;iD*H*x?*H*## `''ɯP;iD*0)**!`~* *>P;iD*0~͊6*_# *~O6)## #D7~_T3Y3F8N87>96*#w##DͿs͚rr#F###N>'6*^7Ϳژ͚җ#N6'#6*^7Ϳڼ͚»6'#6*^7*D"^D722~+-#~0:. 2: >2:(O:3HyxB<ɯ~ R R#E.F..T.CDEFILPRSTV#@$!*INT#VALLEN@%TESTePEEKRANKSTR$<!CHRDATETYPE TRIM]*pEOFzFILEͨ()*!d!`*~{:/~8:020O: 020$DM:0<͇$++*/++̈́8*/"Z|$:0O:0S20*/"/J$_$*/#"/>20*z0*t06*v0#!{:/O~8*/:/6*Z|6>20*/$*/"/#"/ͽ$*z0*/6DM*/+T]͖8#"t0*/*z066_$#̈́$eͭ$#|6 "! ͭ$"0c!$!{:/7 "0*0*06E "B "0̈́${:/O% !ͭ$#_$ #:0O:0ʊ O$DM̈́$++:0<͇$++̈́8!05J$$!05!05$:0P ̈́${:/O~8_$ #̈́$!{:/O~8$:0O:0ʜ ɷO20"/#*z0"t0*/"/#:0W!>20*v0".:k0*x0n;".>20*z0"t0#*/"/#J$:0M#*v0#6|'#*v0###6>2b0!*z0"t0#*/"/#:0<20J$:0ʝ#<͇$++6|b#:0͇$6_$!05J$!l0ʶ#;".ä#2k0O!l0~###q:l0*x0/ ~8*v0###"/*/" 0:k0 0; ".:k0*v0;".*v0~20*/" 0:k0 0; ".*v0:0w:k0;".*/*t06:0w#"t0*z0*t06p$7+~20+V+^"/"t0ѷ:0*/=O:/W yOʩ$xҤ$GØ$ ʹ$33:k0!l0:k0;".*x0!/ ~8*x0:k0;".:/6!04:0!}, O02b0:#0;".$0;%'7Q7<'<'O'~A' )'=:#02#0:]0!^066:#02j0w:j02#0!$0Y0; ".:/ž':/§'=!z, !z, =7"0"c0|&-B,!$06$0y9k(#~:'+~͊6k(p(o9p(o9i9k( k(.k(p(o9V( V(,V(.8(p((o9V( V(,V(.#(p(o9g( g(,g(p(=(k(!306~87aw(_$0~@>:#~ ‹(>.#~›(*)x(():0)))):0))):]0(:0( )):0)-)):0͊6O+ #~.7+ #_P+8+S(+8+M2+8+ +8+~͊6J+ͱ6J+:O+# 8+y6*!0+"!0}ʹ$y+B,:&Dʗ+e+×+ "ڒ+ͳ':&Dʗ+y+×+V#7:CD+͎.ʹ$³+B,+͎.< "+ͳ'͎. 5# y",*g0"g0>2i0*~0*e0DM:#0;f,*c0#"c02b0< z, ".>2b07P;,7:#0;Û,ʢ, ".7*c0:b0!$0ƛ̈́8ƛ$0; ,".!"0&-ʹ$-2b0#ͳ':&D$- "ͳ',2b0!ͳ':&D$-B,-!06*0|ʆ-+*g06ډ-"0"c0*e0"0! "0! 0ͧ-i-0!0͎-!0͛-*0|W-0:#0; ".> ".w# ‘-~w# ž-~w+ ª-:#0;".ͳ-:#0 *|0;".*~0DM*|0~.#6"g0*|0͊%*|0++6"e0Z%Z'>".*e0DM*~0> 7P;iDz:.!z, ͷ7X.#G.##~2i0:b0* 1WX1P_i,4z1i~怲w.FnM1.'w- 31Ҏ1.>4.4Î1.7>'w- U1ڋ1.ƙw- l1.7~'w- {1.~wj4.6Î1!n~wü0!nnͣ4.ͬ4 .41Gͼ01.4 ¸1.~GO.~WIwx1~wj4!n~2n.~ʙ22n.6@.6> 2nͼ0.~)2 C22͘1.~=wy.ʹ4:n=2u2y a2.ʹ4:n=u22n.ʹ4N2> .ʹ4:n=u22na2:nG.N@._y怳wnͣ4j47:n2n!n ͬ4 ¿2 F3ñ2.6?+2-26 F30353:F3.6G.~42ƞoxw3ƞ4nͣ4!n~@t5 =5 / 56yy>5+ 2K:6:K:͊::!D6K:;v4::;DiD> 5> 5!6~5#16P6&ob6&o\6'q6q6dq6 q6q665̈́6̈́6̈́6̈́6> 5A[?a{?y9,7o9G'"[]0:?66o$z{/}o|g6 z}o|g~#fos#r#^#V#q#p#N#F#>~87~/9"9# 919#~09 9=@9# 79y~+ F9͊6Z9_O~g9#~\9=*L:~*L:#"L:~*L:~ †9#|9 9#|9"L:"L:!U"L:͘9*L:~5O*L:=6~;96 #"L:!6 å9͘9y͘9g|;9;9i99: .:2U7!U.6!U76 #6 U; .:P;iD=;F:D:ɷn:U<2%Dg:Y:YY:†::OC2OCq: Ÿ:> ͦ::B’:ͦ:G:JC:x¾:p>_:Oa: :!B4: :!B6O:OCyY :!B4 !B6!B4:aB@>2TC*B"PC>dB@2TC*B"PC>dB@>2TC*B"PC>dB@>2TC*B#"PC>dB@z_=@dB!"ZC"XC?dB@2TC!"PC*B!EC"B>*XC+"XC"BdB@2TC@͵?*VC+:_ʳ=6dB6dB@*XC}|*ZC}|*]C"BgB@*BxN#F#^#V="ZC`i"XCdBixg"XCz{gxo"ZCdB:ICt>!_C"]C2B*]C~@>>>^#VO:IC> ʀB@>6:B<Y>2B*]C"]C>!:IC=k>k>)=`>%gBW? _gB*B`?̀@Ҡ>> ÀB*!\~8*B`?W?P?<>>ÀB:!\~8*ÀB2HC:HC*PC|sA*PC6>DM*c0#"c0"g0ͳ- *|06#*g06:Dw#:Dw#:Dw:#0;".*W06#"W0Y0; ".!{"W0*W0:Y0w#:Z0w#:[0w#:\0w#"W0*W0+~}/"W0G*W0{6ʰ/+~<ʰ/"W0x; ".ALL &NEXT*&RECORD5&FORY&WHILEQ&KEY C{.DBF.CMD.FRM.MEM.TXT.NDX.FMT.$$$.HEX{007}\|np7}\|np|.tv!n~0!n~ʑ1ͣ4Î1G.~ʎ1!10/< 0~ڎ1n0~o~w.~2.42.~(3.4.~2.42.~2.52.F3.~F362.~P3.wy_3x=G!n~.60n36-@3/<.w> ʅ3|3.~y4>..F>0ʥ3 ˜34.ʹ40 ¥34<.q/<34O>  33.~43.~-3> .ʹ403.~4O>..ʹ40 44>*4!n ͬ4'S4S4dS4 S4S4>I2nj4}o|gU4 z!nʹ4!n~,,,,,ʞ4!n~O,~–4 ʞ4.ʹ4.Â4.~怱w.w~#£4ɯw,­4_~Wwz+·4ɯ_~Wwz,4!nͣ4nWx7r# 7> #7ž$7# 7 G~;7@7# +7yO7# D7~͊6[7_G͊6e7_o7# R7xʎ7ڄ7x2N:Ð7y2N:HÐ7C7´7xʴ77:N:O~ ²7# ¤7ô7xO~a7_877O~A7_7#7x8~07;8A78DM! 8 8 0A8:A806>8zT])))o8$87 `in:_i85> 5N Yl8ɷ7!6>?5H8HÅ8Å8yʓ8~# Æ8xʥ8~+ Ø8 99499W`i4988G498OT]x6D98/>`?!_C"]C~><ͯ@ʻ ÀB yg<*]C/ÀB>ÀB:j2j*VC+6dBy<2B!"XC"ZC2\C*]C6#"VCdB`?̀@<> ÀBW?P?<>ÀBP?gZC?*XC*CC*B:TC/?͊B"B*CC6"XCC?͊B"B*CC6"XCͲA*PC6"PC>\!\6# > 76:%D2\!]w#:”?+~@2\.ʤ?ʲ?w#Ô?!eʲ?w#ç?:\C@?:_W?*]C:\C@2\C))*]C! 6!C"FC~@@:IC@ ?#66@###6"CC6*RC "RC~1@!C"RC#####~?@5@#~T@WB*RC͑A:IC@*RC###6"CC*ZC;A*ZC*RC"FC:ICw#6##6#6!_C"]C~ʠ@ͯ@ @*]C~ʞ@76 y*]CÅ@^#V!\ #»@:ICG!C~ȸ@######~@͑A6@:ICշ#A#A=!_CA= A~#A#"VCXC~8> ÀB!_C~TA/A!_C~TAAA> ÀB#"VCXC~8!"XC"ZC2\C>*XC!6|*ZC#"ZC!"XC!~@#66"CCB##6#6WB*FC######6?*CC*]C!A*]C!6++6A:TCx> ÀB?*CC*]C"RBMB*]C!6++6B:\C@2\C>ÀB>ÀB*VC!XC~8WB*B###*BDM*B*B:B2B*BpB:TCBʢBx~# ×B~ ®B# x~¸B> ÀBx~ B BB# øB#>2HCx~ # BB>2HCDAST 41984 BYTES (0A400 HEX) OF MEMORY IN IN ADDITION TO THE SIZE OF THE OPERATING SYSTEM dBASE WILL OPERATE ON MOST 48K CP/M (tm) SYSTEMS THAT HAVE A STANDARD BIOS 6)2@:F!͔966>'+F:(D!)D6R'w2'D!(D4A/{;3G!"F.6{;OF!"F.6OVERLAY FILE (DBASEOVR.COM) CANNOT BE OPENED2D2D2D>vP;:`nF!aH.6tF!oH16͟9y93G8{2D2_H͔9o98{2D2^H͔9o9§F>ëF8{2D2`H:`F:^HG:_H2^Hx2_H:_HOFOF OF:^HʊG:_HGG G GG:^H ҊGERROR!H!8HERROR&H~@@*HŠ:#H##~#fo;6 .#ERROR (DD/MM/YY) : (MM/DD/YY) :35 4 Nov 1982: "!\~# 1+"2 $ SELECT TERMINAL TYPE$   $ ?A -HAZELTINE 1500 B -SOROC, TELEVIDEO $ tC -HEATH 89 D -PERKIN ELMER 1100 $J ÞE -ADM-3A F -ADM-31 $ G -VDP-80 H -INTECOLOR $ I -GNAT-SYSTEM 10 J -TRS-80 II (P&T) $BASEOVRCOMDBASEOVRCOMC_˓7[ǔ3W{________!(D~ʆD=5!)D6~V'Z%X/iD:>DʓDV'Z%2'D2?D2 Dw'>2HD>!Eç;1O:*6ʩEکE!D.6INSUFFICIENT MEMORY IN SYSTEM, dBASE REQUIRES AT LEG:^HҊGG:^HҊG:`HH3G:_H3G:^HҊG!6!6!?GmGPR@brpd@@\TTT@@Ȅ@@@@@@@d\~zG͊:#mG!}H16:'D—DÓD!6!G.6OFThirty days hath September April, June and November All the rest have thirty one Except February ... ERROR!H!8HERROR&H~@@*HŠ:#H##~#fo;6 .#ERROR (DD/MM/YY) : (MM/DD/YY) :35 4 Nov 1982 1K -APPLE L -VECTOR GRAPHICS $  fM -SUPERBRAIN N -VISUAL-100/VT-100 $< ÙO -OSBORNE P -HP 2621, HP-125 $q Q -CROMEMCO 3102 R -TRS-80 II (FMG) $ S -ADDS VIEWPOINT T -XEROX 820 $ &U -NEC V -EAGLE AVL $ ]W -TRS-80 III X -NorthStar ADVANTAGE $1 k $h Þ Y - MODIFY PREVIOUS INSTALLATION $v  Z - USER SUPPLIED TERMINAL COMMANDS $  $ _Y&Z- AB"!`#_~#fox~# R>2_#= $. jMODIFY EXISTING SPECS ROUTINE $H áFOR THIS METHOD, YOU WILL NEED THE HEX OR $u DECIMAL CODES THAT CAN BE SENT FROM YOUR $ COMPUTER TO THE VIDEO TERMINAL TO CONTROL IT $  $ MTYPE "Y" IF YOU WISH TO CONTINUE $* _YB"g $d Á $r ýWILL YOU BE ENTERING COMMANDS AS HEX OR DECIMAL?$  $ TYPE "D" FOR DECIMAL OR "H" FOR HEXADECI / 8 - RESET TO STANDARD VIDEO MODE $  V 9 - ALTER SCREEN SIZE $:  d $a  È SELECT ITEM TO CHANGE $o   ANY CHAR OTHER THAN 1 - 9 TERMINATES SESSION $   $  1:1__! ~ññͳññññͰñññ? $0  j USER SUPPLIED SPECS ROUTINE $J  á FOR THIS METHOD, YOU WILL NEED THE HEX OR $u   DECIMAL CODES THAT CAN BE SENT FROM YOUR $   COMPUTER TO THE VIDEO TERMINAL _YB" $  0 $!  l WILL YOU BE ENTERING COMMANDS AS HEX OR DECIMAL?$;  z $w  õ TYPE "D" FOR DECIMAL OR "H" FOR HEXADECIMAL $  _D Ht >2[# $   COMMANDS ARE ENTERED AS A SEQUENCE OF NUMBERS $  XTYPE A CARRIAGE RETURN TO END A SEQUENCE $+ ~ͳͰîNOW ENTER THE CODES FOR CHARACTER DELETION $ :_#!!͕!ÍTHIS IS THE SEQUENCE "BACKSPACE,SPACE,BACKSPACE" CONTAIN THE LINE AND COLUMN NUMBERS $ 5 $2 rARE THE CURSOR ADDRESSES SINGLE BINARY BYTES OR $@ ôSEVERAL ASCII DIGITS?, TYPE A "Y" IF THEY ARE BINARY $} 2_Y>2 $  NOW, ENTER THE POSITION IN THE SEQUENCE $ 6THAT HOLDS THE COLUMN NUMBER $ :_#vYCURRENT VALUE = $H :<"n $k  =2à $ ùNEXT, ENTER THE POSITION IN THE SEQUENCE $ THAT HOLDS THE LINE NUMBER $ :_#!CURRENT VALUE  $ E---- DIM/BRIGHT VIDEO/REVERSE VIDEO ---- $ W $P ÊENTER THE COMMAND THAT WILL SWITCH TO $b öHIGH INTENSITY OR NORMAL VIDEO $ (5 BYTE MAX) $ :_#!F#!͕!>!:Z#2͕!  $ =ENTER THE COMMAND THAT WILL SWITCH TO $ iLOW INTENSITY OR REVERSE VIDEO $H Ã(5 BYTE MAX) $t :_#ʞ!F#!͕!>!:Z#2͕!ý $ ---- CLEAR AND HOME COMMAND(S) ---- $  $MAL $ _D$H>2[#6 $' qCOMMANDS ARE ENTERED AS A SEQUENCE OF NUMBERS $A éTYPE A CARRIAGE RETURN TO END A SEQUENCE $| ÷ $ 1 - DELETE A CHAR SEQUENCE $ 2 - DIRECT CURSOR POSITIONING SEQUENCE $ N3 - CLEAR AND HOME SCREEN COMMAND $& }4 - BRIGHT/STD VIDEO COMMANDS $Y í5 - DIM/REVERSE VIDEO COMMANDS $ 6 - INITIALIZATION SEQUENCE $ 7 - EXIT SEQUENCE $ TO CONTROL IT $   $  [ THE CODES (OR SEQUENCES) THAT YOU WILL NEED ARE:$*  i $f  w $t  à DELETE A CHAR SEQUENCE $   DIRECT CURSOR POSITIONING SEQUENCE $   CLEAR SCREEN COMMAND $  " HOME CURSOR COMMAND $  Z (CLEAR AND HOME CAN BE COMBINED) $-  Í OPTIONAL: BRIGHT/DIM COMMANDS OR $e   VIDEO/REVERSE COMMANDS $   $   TYPE "Y" IF YOU WISH TO CONTINUE $  $ ;ON MOST TERMINALS IF THIS IS TRUE FOR YOUR $  `TERMINAL, THEN TYPE "Y" $F n $k _Y!s# ‡ß $ ENTER THE CHARACTER DELETE SEQUENCE $ (3 BYTE MAX) $ >!:Z#2͕!¶ $  J--- DIRECT CURSOR POSITIONING --- $$ ÃTHE CURSOR CONTROL SEQUENCE IS USUALLY A 3 $U ùTO 4 BYTE SEQUENCE. THE FIRST ONE OR TWO $ BYTES ARE USUALLY FIXED AND THE REMAINING $ 'BYTES = $ :<" $  =2. $+ @ $9 wMANY TERMINALS ADD A CONSTANT TO THE LINE $K ðAND COLUMN NUMBERS. ENTER THE CONSTANT BIAS $ FOR YOUR TERMINAL $ :_#CURRENT VALUE = $ :" $  2 $ XNOW ENTER THE SKELETON FOR THE DIRECT CURSOR $) ÏCOMMAND. ENTER A ZERO IN THE PLACES WHERE $c ÷COLUMN AND LINE NUMBERS GO $ (11 BYTE MAX) $ :_#!F#!͕!> !:Z#2͕! 6ENTER THE COMMAND(S) THAT WILL CLEAR THE $  lSCREEN AND PLACE THE CURSOR IN THE UPPER $A ÕLEFT CORNER OF THE TERMINAL $w ð(11 BYTE MAX) $ :_#!F#!͕!> !:Z#2͕!³ $ ENTER THE COMMANDS TO BE ISSUED WHEN $ OENTERING THE FULL-SCREEN EDITING MODE $' e(IF ANY) $Z À(11 BYTE MAX) $p :_#ʛ!F#!͕!> !:Z#2͕!ú $ ENTER THE COMMANDS TO BE ISSUED WHEN $ LEAVING THE FULL-SCREEN EDITING MODE $ , $) cSUGGESTION: USE DIRECT CURSOR POSITIONING $7 ßTO PUT CURSOR ON THE BOTTOM LINE OF THE SCREEN $n ú(11 BYTE MAX) $ :_#!F#!͕!> !:Z#2͕!° $ 'ENTER THE COMMAND THAT WILL SWITCH TO $ WSTANDARD INTENSITY OR NORMAL VIDEO $2 ÕTO RESET THE SCREEN AFTER FULL SCREEN OPERATIONS $b ï(5 BYTE MAX) $ :_#!F#!͕!>!:Z#2͕! $  ENTER THE SCREEN2  $  $ JTYPE A RETURN IF THE ERROR CORRECTION $" {DIALOGUE IS TO BE USED OR ANY OTHER $U æKEY IF NO DIALOGUE IS WANTED :$  ʾ2 $  $  $ ENTER OPERATING SYSTEM$  $  9 A - CP/M 1.4 OR CP/M 2.2 $ \ B - MP/M II SYSTEM $D j $g x $u _AʬBʧþ>2ì>22ì>2ò $  $ USE DD/MM/YY DATE FORMAT (Y/N)? (ELSE MM/DD/YY)$ ! O))))  " }Y!|Y!<}J!0 ?))) O 3!!"/!}|Y!<}_! $\! Å!ERROR IN INPUT, RE-ENTER $j!  !7Ý! $! ÿ!IS THIS CORRECT (Y/N) $! _Y!CURRENT SEQUENCE : $! x~"" $" #!:[#:"6"("Ɛ'@'_"o&4 Y" ILLEGAL PARAMETER$E" j" $g" !" ^# w"í" FILE IS NOT ON THE DEFAULT DRIVE $" DBASE COMENT SEQUENCE : $! x~"=7 PP   =()((=7 PP   ==7 PP   .P0P   ="!""=7 PP   Y Y7 PP   =())=7  ((?PP   Y0A Y7 PPHLKJ  ==7 PP   =C0 C4 C0 *C0 =7 PP   =*=7 PPHLKJ@  = WIDTH $ :_#H,CURRENT VALUE = $ :"@ $=  2T $Q ÏNEXT, ENTER THE NUMBER OF LINES ON THE SCREEN $_ :_#òCURRENT VALUE = $ :" $  2 $  $  $ #CHANGE SYSTEM PARAMETERS (Y/N)? $ _Y>&2>2222Q $N _ $\ ÍENTER A CHARACTER TO BE USED FOR $j üINDICATING MACROS OR A RETURN FOR $ DEFAULT CHARACTER OF AMPERSAND (&) :$   _ Y>2& $ dTYPE "Y" TO SAVE, ANY OTHER KEY TO ABORT INSTALL $1 _YÞ SAVING INSTALLATION PARAMETERS ${ :"2"2""" ABORTING INSTALLATION $ "]#2\#2Z# $ " ENTER CONTROL CODE BYTE $  :Z#:"ʐ!:"Y:[#,!!!G _0" $" #!:[#:"6"("Ɛ'@'_"o&4 Y" ILLEGAL PARAMETER$ ##$4$$*%|%% &r&&'h'' (^(()T)))J*** ~~~~~~~PP   =()(*(=7 PPHLKJ  XYKHX7Y PP   YpqqEqY7 PP  =(P PP   Y Y7 PP     PP[DCAB  =()((=7 P P &a000y000C&dB&d@&d@ HJH &a23y1CPP   YEY7 PP =6 PY7 PPHLKJ  ==7 PP   =C0 C4 C0 *C0 =7 PP   =*=7 PPHLKJ@  =note - DEPOSIT CANCELLATION PROGRAM * * - position to top of database file GO TOP DO WHILE T * - find first uncalcelled deposit LOCATE FOR NO=0.AND..NOT.CAN NEXT 65535 * - if not at end of character field IF .NOT.EOF ? * - display date and amount of deposit * MAKE SURE THIS IS THE THE RIGHT ONE DISP OFF 'Deposited on ',DATE,' Amount = ',AMT INPUT ' Cancel this one? (Y/N)' TO ANSWER * - ask if deposit is to be cancelled IF ANSWER * - chaNOTE - BALANCE COMMAND FILE TO BALANCE CHECKBOOK * SUM AMT TO OUTSTAND FOR .NOT.CAN.AND.NO>0 SUM AMT TO T:OUT FOR .NOT.CAN.AND.NO=0 ? ? * - display total of outstanding checks DISP OFF ' TOTAL OUTSTANDING CHECKS = $',OUTSTAND ? * - display total of outstanding deposits DISP OFF ' TOTAL OUTSTANDING DEPOSITS = $'T:OUT ? * - request ending balance form check book INPUT "ENTER ENDING BALANCE FROM BANK STATEMENT" TO BEGIN DISP OFF 'CURRENT BALANCE = $',BEGIN+T:OUT-OUTSTAND WAnge logical flag for cancelled deposit REPLACE CAN WITH T ENDIF ELSE * END OF FILE ? * - tell user there are not more deposits ? 'No more uncancelled deposits' RETURN ENDIF * IF NOT EOF ? INPUT 'Any more deposits to cancel? (Y/N)' to ANSWER IF .NOT.ANSWER RETURN ENDIF ENDDO RETURNT INPUT ' Cancel this one? (Y/N)' TO ANSWER * - ask if deposit is to be cancelled IF ANSWER * - chaIT RETURN .AND.NO=0 ? ? * - display total of outstanding checks DISP OFF ' TOTAL OUTSTANDING CHECKS = $',OUTSTAND ? * - display total of outstanding deposits DISP OFF ' TOTAL OUTSTANDING DEPOSITS = $'T:OUT ? * - request ending balance form check book INPUT "ENTER ENDING BALANCE FROM BANK STATEMENT" TO BEGIN DISP OFF 'CURRENT BALANCE = $',BEGIN+T:OUT-OUTSTAND WANOTE - CANCELS COMMAND FILE TO ENTER CANCELLED CHECKS * * - message to be displayed on screen REMARK ENTER CHECK NUMBER OF 0 TO EXIT * - loop while check number not equal to zero DO WHILE T ? INPUT "ENTER CANCELLED CHECK NO" TO C:CAN * - testing for zero check number IF C:CAN=0 RETURN ENDIF * - position to top of database file GO TOP * - search for cancelled check number LOCATE FOR C:CAN=NO * - testing to see if at end of database file IF .NOT.EOF NOTE - EXTENDED NEWENTR COMMAND FILE TO ENTER NEW CHECKS * * - clear screen ERASE * - position to bottom of database file GO BOTTOM * - initialize date STORE '01/01/81' TO CH:DAT DO WHILE T * initialize memory variables so that READ will have a length to mark STORE ' ' TO CH:TO STORE 0.00 TO M:AMT STORE ' ' TO CH:MEMO STORE NO+1 TO M:NO * - this is text to read check data @ 5,0 SAY 'CHECK ENTRY ENTER CHECK NUMBER OF ZERO TO EXIT' @ 6,0 FICE SUPPLIES P - POSTAGE' @ 16,0 SAY 'R - RENT T - TELEPHONE X - TAXES' @ 18,0 SAY 'ENTER PURPOSE LETTER' GET CH:MEMO READ IF M:NO=0 RETURN ENDIF * - put blank card into database file APPEND BLANK * - put check data into database file REPLACE NO WITH M:NO,TO WITH CH:TO,AMT WITH M:AMT; DATE WITH CH:DAT,CAN WITH F,MEMO WITH !(CH:MEMO) ENDDO NOTE - DEPOSIT COMMAND FILE TO ENTER NEW DEPOSITS * REMARK ENTER DEPOSIT AMOUNT OF 0 TO EXIT * - initialize date value STORE '01/01/81' TO C:DAT DO WHILE T ? ? * - reading deposit entries INPUT "Amount of Deposit " TO C:AMT * - if deposit amount equals 0, exit command file IF C:AMT=0 RETURN ENDIF STORE C:DAT TO OLD:DATE * - read date of deposit ACCEPT "Date of Deposit as MM/DD/YY " TO C:DAT * - if date is blank, use current date IF C:DAT='* - if not at end of file ? * - display check data DISP OFF 'Payed to ',TO,' on ',DATE DISP OFF 'Amount of check is ',AMT * - ask if this is right check INPUT 'Is this the one? (Y/N)' to ANSWER IF ANSWER * - change logical flag for cancelled check REPLACE CAN WITH T ENDIF ELSE * - message to tell user his check is not in file. DISP OFF 'Check ',C:CAN,' cannot be found' ENDIF ENDDO RETURN  SAY 'IF CHECK NUMBER=0, ENTER CARRIAGE RETURNS FOR OTHER ENTRIES' @ 7,0 SAY 'CHECK NUMBER ' GET M:NO @ 8,0 SAY 'PAY TO THE ORDER OF ' GET CH:TO @ 9,0 SAY 'AMOUNT OF CHECK ' GET M:AMT @ 10,0 SAY 'DATE WRITTEN ' GET CH:DAT PICTURE '99/99/99' @ 11,0 SAY 'PURPOSE OF CHECK' @ 13,0 SAY 'A - ADVERTISING B - BANK CHARGES C - CAR + TRUCK' @ 14,0 SAY 'D - DUES + PUBLICATIONS F - FREIGHT I - INSURANCE' @ 15,0 SAY 'L - LEGAL EXPENSES S - OF ' STORE OLD:DATE TO C:DAT ENDIF * - ask if all fields are correct INPUT "ARE ALL FIELDS CORRECT ? " TO GO:NOGO * - test for correct data IF .NOT.GO:NOGO LOOP ENDIF * - put blank card into database file APPEND BLANK * - put deposit data into database structure REPLACE NO WITH 0,TO WITH 'DEPOSIT',AMT WITH C:AMT REPLACE DATE WITH C:DAT,CAN WITH F ENDDO ACCEPT 'ENTER DATE AS MM/DD/YY' TO DATE STORE VAL($(DATE,1,2)) TO M STORE VAL($(DATE,4,2)) TO D STORE VAL($(DATE,7,2))+1900 TO Y STORE INT(30.57*M)+INT(365.25*Y-395.25)+D TO X IF M>2 IF INT(Y/4)=Y/4 STORE X-1 TO X ELSE STORE X-2 TO X ENDIF ENDIF ? ' START DATE = ' ?? DATE RETURN 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 IF D>(91-D1) STORE D+D1 TO D ENDIF STORE INT(D/30.57) TO M STORE D-INT(30.57*M) TO D IF M>12 STORE 1 TO M STORE Y+1 TO Y ENDIF STORE Y-1900 TO Y STORE STR(M,2)+'/'+STR(D,2)+'/'+STR(Y,2) TO DATE IF ANSWER SET PRINT ON ENDIF ? 'CALENDAR DATE =' ?? DATE IF ANSWER SET PRINT OFF ENDIF RETURN  Y Checks subtotalled by type n y y MEMO N N Check type : 5,NO CHECKNO N 33,TO PAY TO THE ORDER OF 10,$(DATE,3,2)+'/'+$(DATE,5,2)+'/'+$(DATE,1,2) DATE;WRITTEN 12,AMT >AMOUNT Y XCANCEL CMD5XNEWENTRCMD 6XDEPOSITCMD7CALJUL CMD8JULCAL CMD9CHREPORT$$$IPNAMECrAMTN rDDATECrLDATECrLAMTNrTYPEC rPERIODNrVARIABLELr 3TTYPEC XPERIODNXVARIABLELX NOTE - report on the checks in a database * - this dBASE II system uses the database file generated by the * - check balancing system initiated by XMENU. This check report * - system reads the XMENU data base and report the subtotals for * - each of the various user memos. * * note: uses database with structure same as XMENU * ? 'THIS PROGRAM IS SET TO RUN ON YOUR PRINTER. IF PRINTER IS NOT READY' ? ' THE PROGRAM MAY HANG UP.' * - enter name of database file from XMENU ACCEPT 'Enter check SMITH OFFICE RENTAL 234.56801201800613 5.00R 1F HURTZ BUSINESS CAR LEASING INC 300.00800720800529 20.00C 1F PRESSURE ADVERTIZING AGENCY 500.00800823 0.00A 1T TIDY LAUNDRY 40.00800701800615 0.00J 1T MUNICIPAL WATER DEPARTMENT 10.00800705 0.00U 1T LONG DISTANCE TELEPHONE CO. 200.00800628 0.00T 1T EVENING NEWSPAPER LTD. 15.00800731 0.00 database name' to DBNAME * - assign data basefile to this command system * - database has name of xxxx.DBF USE &DBNAME * - index on variable MEMO in database file INDEX ON MEMO TO &DBNAME * - enter title to be printed at top of each output page ACCEPT 'Enter report title (up to 60 chars)' to TITLE * - set header to title value SET HEAD TO &TITLE * - generate report form using CHREPORT.FRM REPORT FORM CHREPORT FOR NO#0 TO PRINT RETURN NOTE - DRIVER program for date calculation SET TALK OFF DO CALJUL INPUT 'Enter interval in days between dates' TO DELTA ? ? INPUT 'Enter number of times you want iterval' TO TOT * - initialize counter INPUT 'Do you want output to printer? (Y/N)' TO ANSWER STORE 1 TO CNT IF ANSWER SET PRINT ON ? ' START DATE = ' ?? DATE SET PRINT OFF ELSE ? ' START DATE = ' ?? DATE ENDIF DO WHILE CNT<=TOT * - increment date STORE X+DELTA TO X DO JULCAL STORE 1+CNT TO CNT LNOTE - THIS IS THE ACCOUNT PAYING COMMAND FILE * * * - explanatory text ? 'THIS PROGRAM USES THE PRINTER. IF YOUR PRINTER IS NOT READY IT' ? ' MAY HANG UP AT THIS POINT. 5 LINES FURTHER DOWN IN THIS FILE' ? ' YOU WILL FIND A SECTION OF CODE TO SET UP AN ANADEX PRINTER FOR' ? ' PRINTING CHECKS. USE YOUR TEXT EDITOR TO MODIFY THIS FOR YOUR' ? ' PRINTER. ' * - turn off printing commands to screen SET TALK OFF * - send results of @ statements to printer SET FORMAT TO PRINT * -inning check number for this run INPUT 'Enter Beginning Check No. ' TO NNO * - ask for disk drive with database files ACCEPT 'Enter Data Disk Drive ' TO DRV * - set system default to database disk drive SET DEFAULT TO &DRV USE CHECKS * - select primary database file SELE SECO USE ACCNTS * - set up program loom DO WHILE STAY * - select seconary file ACCNTS SELECT SECONDARY ? ? * - list data from ACCNTS LIST PNAME,S.AMT,DDATE ? ? ? ? ' ENOOP ENDDO  INPUT 'Enter number of times you want iterval' TO TOT * - initialize counter INPUT 'Do you want output to printer? (Y/N)' TO ANSWER STORE 1 TO CNT IF ANSWER SET PRINT ON ? ' START DATE = ' ?? DATE SET PRINT OFF ELSE ? ' START DATE = ' ?? DATE ENDIF DO WHILE CNT<=TOT * - increment date STORE X+DELTA TO X DO JULCAL STORE 1+CNT TO CNT L echo output to printer SET PRINT ON * - turn off console SET CONSOLE OFF * - go to top of page on printer EJECT * - this is the ANADEX 9500 text * SET FORM LENGTH TO 22 LINES ON ANADEX 9500 * ESC 4 022 * - create ASCII string of esc4022 ? CHR(27)+CHR(52)+CHR(48)+CHR(50)+CHR(50) * - turn off echo SET PRINT OFF * - echo output to console SET CONSOLE ON * - set loop variable true STORE T TO STAY * - request current date ACCEPT "Enter Today's Date (YYMMDD)" TO TODAY * - ask for begTER OPTION YOU WANT' ? ' -1 - EXIT' ? ' 0 - WRITE CHECK TO ACCOUNT NOT IN DATABASE' ? ' N - NUMBER OF ACCOUNT TO WRITE CHECK FOR' * - ask for account number to print check for INPUT 'Which Account' TO ACCNT * - check to see if exit IF ACCNT<0 * - set loop variable false to exit program STORE F TO STAY LOOP ENDIF * - check to see if writing check not in ACCNTS IF ACCNT=0 * - request data for check ACCEPT 'Enter Payee ' TO NAME INPUT 'Enter Amount ' TO MAMT ELSE * - locate account number in ACCNTS file GOTO ACCNT * - store payee name to variable NAME STORE PNAME TO NAME * - is check hasn't been canceled IF .NOT.VARIABLE * - check to get amount still owed STORE S.AMT TO MAMT IF TODAY>=LDATE STORE S.AMT+LAMT TO MAMT ENDIF ELSE * - user option on amount to pay this time INPUT 'Enter Amount To Pay 'rint this check ? 'OK? (Y/N)' WAIT TO X * - see if check is to be written IF X=$('Yy',1,1).OR.X=$('Yy',2,1) * - select primary file SELE PRIMARY APPEND BLANK * - put check data into primary file REPLACE TO WITH NAME,NO WITH NNO,AMT WITH MAMT,CAN WITH F REPLACE DATE WITH TODAY,MEMO WITH TYPE STORE NNO+1 TO NNO * NOW PRINT CHECK ON PRINTER @ 3,67 SAY 'Check No.' @ 3,77 SAY XNO @ 5,67 SAY 'Date:' @ 5,73 SAY $(TODAY,3,2)+'/'+$(TODAY,5,2)+'/'+$(TODA@NONpTOCpAMTN pCANLpDATECpMEMOC p 109SMITH OFFICE RENTAL 239.56F01/25/81R 110MUNICIPAL WATER DEPARTMENT 5.45F01/25/81U 1001SMITH OFFICE RENTAL 239.56F811130 R 1002HURTZ BUSINESS CAR LEASING INC 320.00F811130 C 1003PRESSURE ADVERTIZING AGENCY 500.00F811130 A 1025SMITH OFFICE RENTAL 239.56F811130 R 1026CLIPUM MOTORS 123.45F811130  DO WHILE STAY SELECT SECONDARY ? ? LISTNOTE - EXAMPLE dBASE CHECK BALANCER COMMAND FILE PROGRAM * * * - turn off display of commands to screen SET TALK OFF * - enter user database file name ACCEPT "Enter check database name" to DBF * - access database file USE &DBF * - specify disk containing command files ACCEPT "Enter disk drive containing command files as 'A:' or 'B:'" to DISK SET DEFAULT TO &DISK * - this is text that is displayed on the screen DO WHILE T * DO WHILE T means DO WHILE TRUE I.E. DO FOREVER * The DO TO MAMT ENDIF IF PERIOD>0 IF (VAL($(DDATE,3,2))+PERIOD)>12 STORE VAL(DDATE)+((88+PERIOD)*100) TO NDATE ELSE STORE VAL(DDATE)+100*PERIOD TO NDATE ENDIF REPLACE DDATE WITH STR(NDATE,6) ENDIF ENDIF * - store variables to be printed on check STORE STR(NNO,4) TO XNO STORE STR(MAMT,10,2) TO XAMT * - show user on screen proposed check values DISP OFF 'Check #',XNO,' Pay ',XAMT,' To ',NAME * - ask if you want to pY,1,2) @ 10,1 SAY 'Pay to the' @ 11,1 SAY 'Order of' @ 11,12 SAY NAME @ 11,68 SAY MAMT USING '$$,$$$,$$$.99' @ 17,12 SAY INT(MAMT) USING '$$,$$$,$$$' @ 17,23 SAY 'D O L L A R S and ' @ 17,44 SAY (MAMT-INT(MAMT))*100 USING '99' @ 17,47 SAY 'C E N T S' @ 20,12 SAY 'Type: ' @ 20,18 SAY TYPE @ 20,41 SAY '----------------------------------------' EJECT ENDIF ENDDO RETURN  101MITCHELL OFFICE SUPPLY 77.34F04/07/80O 102POSTMASTER 22.41F05/07/80P 103FIRST NATIONAL 55.10F05/07/80B 104Newton Physics Labs 1000.00F01/01/81Z 105Harvey Mudd 169.34F01/01/81D 106SHYSTER LEGAL CLINIC 333.22F01/05/81L 108TIDY LAUNDRY 40.00F01/25/81J 108PRESSURE ADVERTIZING AGENCY 500.00F01/25/81A WHILE will be terminated by a CANCEL command internally ? ? ? ? ' CHECK BOOK BALANCER MENU' ? ? ' 0 - EXIT' ? ' 1 - ENTER NEW CHECKS' ? ' 2 - ENTER DEPOSIT' ? ' 3 - ENTER CANCELLED CHECKS' ? ' 4 - ENTER CANCELLED DEPOSITS' ? ' 5 - BALANCE' ? ? ' ENTER DESIRED ACTION' * - reading user response WAIT TO ACTION DO CASE * - testing to exit CASE ACTION='0' SET TALK ON * - return to dBASE system CANCEL * - test for new checks CASE ACTION='1' * - enter new check data DO XNEWENTR * - test for new deposits CASE ACTION='2' * - enter new deposit data DO XDEPOSIT * - test for cancelled checks CASE ACTION='3' * - enter cancelled check data DO XCANCEL * - test for cancelled deposits CASE ACTION='4' * - enter cancelled deposit data DO XDEPCANC * - test for balancing check book NOTE Example dBASE Command file program * * - this is a sample form letter generator and mailing label * - dBASE II system. The system allows the user to add new * - entries to a mailing list, print the mailing list on gummed * - labels or print a form letter addressed to all the people * - in the mailing list. No provision is made to modify the * - mailing list. The user can use the dBASE commands EDIT and/or * - DELETE to modify the database file MAIL.DBF to change the * - mailingait for user response WAIT TO ACTION * - test for exit IF ACTION='0' SET TALK on CANCEL ENDIF * - test for new entries IF ACTION='1' * - add new names to MAIL.DBF DO MAILENTR ENDIF * - test to make labels IF ACTION='2' * - print mail labels DO MAILLAB ENDIF * - test to write form letters IF ACTION='3' * - print form letter to names in MAIL.DBF DO MAILLTTR ENDIF ENDDO RETURN xTITLENlNAMEClOFClADDRClCITYCmSTATECmZIPCm :r=5p=8o*p!^t#p6*p6:^topXp!_t4:s=>2_toXp~Gp5>Åoo!^t~4:r=:_ 12 Country Club Dr Cucamonga CA9l733 1Mason James P. 2245 Freeman Dr. Pomona CA9l876 1Taxpayer John Q. 1277 N San Bernadino Rd Chino CA9l710 4Soda Scotch N. Temperance Society 4800 Hallaluh Dr. Las Vegas NV82345 ter Dr. Boston, MA 10024 NOTE CASE ACTION='5' * - compute ending balance DO XBALANCE * - non-valid entry to the menu OTHERWISE ? 'Invalid entry, re-enter' ENDCASE ENDDO RETURN ncelled checks CASE ACTION='3' * - enter cancelled check data DO XCANCEL * - test for cancelled deposits CASE ACTION='4' * - enter cancelled deposit data DO XDEPCANC * - test for balancing check book list. * * - turn off display of commands to screen SET TALK OFF * - assign database file to command stream. USE MAIL * - enter current date to print on form letter ACCEPT 'Enter date as mm/dd/yy' TO DATE * - select system option DO WHILE T ? ? ? ? ' Form Letter Writing System' ? ? ? ' 0 - EXIT' ? ' 1 - Enter new entries' ? ' 2 - Make Labels' ? ' 3 - Write Letters' ? ? ' enter desired action' * - wt?~p!s 1Jones John J. Micro Enterprises 1234 Chip Road Silicon CA90002 1Jones John J. Micro Enterprises 1234 Chip Road Silicon CA90002 1Brown Thomas 1234 West Winchester Dr. Boston MA10024 1Pixler Joseph W. 1125 Singing Meadow Rd Diamond Bar CA91710 2Franklin Josephine@ 1,1 SAY ' 1 = "Mr."' @ 2,1 SAY ' 2 = "Mrs."' @ 3,1 SAY ' 3 = "Ms."' @ 4,1 SAY ' 4 = "Dr."' @ 5,1 SAY ' BLANK to exit entry program' @ 6,1 SAY ' After BLANK, enter carriage return for entries' @ 7,1 SAY 'Enter title code ' GET MTTL @ 8,1 SAY 'Enter Surname ' GET MSNAM @ 9,1 SAY 'Enter other names ' GET MGNAME @ 10,1 SAY 'Enter Co. name ' GET MOF @ 11,1 SAY 'Enter Address ' GET MADDR @ 12,1 SAY 'Enter City ' GET MCITY @ 13,1 SAY 'Enter StNOTE - THIS IS THE TEXT FOR THE USER FORM LETTER * * - the text presented here describes how to generate the * - letter. The user will put in own text. ? 'This is the body of a form letter. It was first written with a word' ? 'processor and then modified to become a command file. The modifications' ? 'are: placement of question marks at the beginning of each line and' ? 'enclosing the text in single quotes or square brackets. In this way,' ? 'each line of text is written to th Chip' ? ? 'Example:' ? IF STATE='CA' ? 'California residents add 6% sales tax' ENDIF RETURN  of the letter can be altered based on the database data fields.' ? 'For instance, if the content of the letter should change for different' ? 'states, then this condition can be checked and the appropriate action' ? 'can be taken.' ? ? ? ' Yours truly' ? ? ? ? ? ' Mike R. O.NOTE - THIS COMMAND FILE WRITES THE FORM LETTER * * - position pointer at top of MAIL.DBF GO TOP * - sets up to store everything that appears on the screen into * - a file called PRINT.TXT which the user can later list using * - his work processor. SET ALTERNATE TO PRINT SET ALTERNATE ON * PUT PRINT FORMATTER SETUP DIRECTIVES HERE, SUCH AS PAGE NUMBERING, * PRINTER PITCH, PAGE OFFSET, LINE HEIGHT, AND FOOTNOTES * EXAMPLE: * ? '.OFFSET = 8' * ? '.CHARACTER WIDTH = 12/INCH' * etc. * - priate ' GET MSTATE @ 14,1 SAY 'Enter ZIP code ' GET MZIP ANK to exit entry program' @ 6,1 SAY ' After BLANK, enter carriage return for entries' @ 7,1 SAY 'Enter title code ' GET MTTL @ 8,1 SAY 'Enter Surname ' GET MSNAM @ 9,1 SAY 'Enter other names ' GET MGNAME @ 10,1 SAY 'Enter Co. name ' GET MOF @ 11,1 SAY 'Enter Address ' GET MADDR @ 12,1 SAY 'Enter City ' GET MCITY @ 13,1 SAY 'Enter Ste ALTERNATE file by means of the SET' ? 'ALTERNATE commands in MAILLTTR.CMD (which calls this command file).' ? ? 'The text of the letter can be altered based on the database data fields.' ? 'For instance, if the content of the letter should change for different' ? 'states, then this condition can be checked and the appropriate action' ? 'can be taken.' ? ? ? ' Yours truly' ? ? ? ? ? ' Mike R. O.nt letter DO WHILE .NOT.EOF ? ' Your Company' ? ' 8080 Micro St.' ? ' Silicon, CA 93002' ? ' (213) 555-1234' ? ' '+DATE * - print name and address of client ? $(NAME,13,18)-(' '+$(NAME,1,12)) IF OF#' ' ? OF ENDIF ? ADDR IF VAL(ZIP)=0 ? CITY-(', '+STATE) ELSE ? CITY-(', '+STATE)-(' '+ZIP) ENDIF ? ? * - print salutation IF TITLE=1 ? 'Dear Mr. '+$(NAME,1,12) ENDIF IF TITLE=2 ? 'Dear Mrs. '+$(NAME,1,12) ENDIF IF TITLE=3 ? 'Dear Ms. '+$(NAME,1,12) ENDIF IF TITLE=4 ? 'Dear Dr. '+$(NAME,1,12) ENDIF ? * - print text of letter DO MAILINFO * * PUT A WORD PROCESSOR COMMAND TO SKIP TO THE NEXT PAGE HERE * EXAMPLE * ? '.SKIP' * - this is a wordstar page skip ? '.pa' SKIP ENDDO SET ALTERNATE OFF RETUNOTE - MAIL SYSTEM NAME AND ADDRESS ENTRY PROGRAM * * - move pointer to bottom of MAIL.DBF GO BOTTOM * - send output of @ commands to MAILFMT.FMT SET FORMAT TO MAILFMT * - read name and address data DO WHILE T * - initialize address variables to blank STORE ' ' TO MTTL STORE ' ' TO MSTATE STORE ' ' TO MZIP STORE ' ' TO MSNAM,MCITY STORE ' ' TO MGNAME STORE ' ' TO MOF,MADDR * - read format file READ * NOTE - THIS COMMAD FILE PRINTS MAILING LABELS ON THE PRINTER * REMARK WHEN LABELS ARE IN PLACE, HIT CARRIAGE RETURN WAIT * - echo printed information to screen SET PRINT ON * - position to top of MAIL.DBF GO TOP * - print labels DO WHILE .NOT.EOF * - print name DISP OFF $(NAME,13,17)-(' '+$(NAME,1,12)) * - checking to see if office address IF OF#' ' * - print office name DISP OFF OF * - print address DISP OFF ADDR * - print city, state, zip RN '+$(NAME,1,12) ENDIF IF TITLE=2 ? 'Dear Mrs. '+$(NAME,1,12) ENDIF IF TITLE=3 ? 'Dear Ms. '+$(NAME,1,12) ENDIF IF TITLE=4 ? 'Dear Dr. '+$(NAME,1,12) ENDIF ? * - print text of letter DO MAILINFO * * PUT A WORD PROCESSOR COMMAND TO SKIP TO THE NEXT PAGE HERE * EXAMPLE * ? '.SKIP' * - this is a wordstar page skip ? '.pa' SKIP ENDDO SET ALTERNATE OFF RETU - check to see if ready to exit this command file IF MTTL=' ' RETURN ENDIF * - combine first and last name and store STORE MSNAM+MGNAME TO MNAME * - add blank card to MAIL.DBF APPEND BLANK * - store name and address data to MAIL.DBF * - substitute input variables for database file variables REPLACE TITLE WITH &MTTL,NAME WITH MNAME,OF WITH MOF,ADDR WITH MADDR REPLACE CITY WITH MCITY,STATE WITH !(MSTATE),ZIP WITH MZIP ENDDO RETURN  DISP OFF $(CITY,1,20)-(', '+$(STATE,1,2))-(' '+$(ZIP,1,5)) ELSE * - print home address DISP OFF ADDR * - print city, state, zip DISP OFF $(CITY,1,20)-(', '+$(STATE,1,2))-(' '+$(ZIP,1,5)) ? ENDIF ? SKIP ENDDO * - turn off echo of labels SET PRINT OFF REMARK ALL DONE RETURN  * - print office name DISP OFF OF * - print address DISP OFF ADDR * - print city, state, zip *************************************************************** * THIS COMMAND FILE WAS CREATED BY THE NEW SCREEN BUILDER ZIP * *************************************************************** SET TALK OFF * THIS SECTION DIMENSIONS THE MEMORY VARIABLES NEEDED TO DO ENTRY * STORE " " TO NAME,ADDRESS STORE " " TO CITY STORE " " TO STATE,ZIPCODE * DISPLAY THE FIRST SCREEN * ERASE @ 1, 0 SAY "+---------------------------------------------------- 7, 0 SAY "| THIS IS THE NEW SCREEN BUILDER YOU HAVE BEEN WAITING FOR |" @ 8, 0 SAY "| FROM ASHTON-TATE. THIS WILL ALLOW THE EVEN THE HARDEST OF |" @ 9, 0 SAY "| SCREENS TO BE DESIGNED IN MINUTES. |" @ 10, 0 SAY "| |" @ 11, 0 SAY "| LET US DO A TEST TO SHOW YOU THE POWER OF ZIP. |" @ 12, 0 SAY "| 8, 0 SAY "| ADDRESS" @ 18,14 GET ADDRESS @ 18,79 SAY "|" @ 19, 0 SAY "| CITY" @ 19,14 GET CITY @ 19,79 SAY "|" @ 20, 0 SAY "| STATE" @ 20,14 GET STATE @ 20,79 SAY "|" @ 21, 0 SAY "| ZIPCODE" @ 21,14 GET ZIPCODE @ 21,79 SAY "|" @ 22, 0 SAY "+------------------------------------------------------------------------------+" READ * THIS IS HOW DBASE CALLS ANOTHER PROGRAM DO (PROGRAM NAME) * DO ZIPSCRN /TBMEQSVH@#.-DI5NPAK_FL= ABCD COPYRIGHT 1982, PAWLUK CORPORATION5455 Wilshire BoulevardLos Angeles, CA 90036(213) 937-0551^#VN#F!}~#z'_!a>]F!4c>*W!ikͷW!kLX!kC͕>!bX!b^c>NX!zk6!&a>]!k^c>L(=X!kC!&aͽFRʹG*kkWFͣ^RʹG*kWFͣ^>2b:bog |3!b4áy>!&a>]!`>]G!(lc>L=X!&lC͕>!b--------------------------+" @ 2, 0 SAY "| |" @ 3, 0 SAY "| WELCOME TO THE WORLD OF ZIP |" @ 4, 0 SAY "| ================================ |" @ 5, 0 SAY "| |" @ 6, 0 SAY "| |" @ |" @ 13, 0 SAY "+------------------------------------------------------------------------------+" @ 14, 0 SAY "| |" @ 15, 0 SAY "| ENTER YOUR: |" @ 16, 0 SAY "| =========== |" @ 17, 0 SAY "| NAME" @ 17,14 GET NAME @ 17,79 SAY "|" @ 1X!b>W!c>W!c>W ?!c=W6:'cog |2$c2%c{ 2b:,c2ul:ulog:bogYRʹGI*$k:bogPmX>PWFͣ^!b4N>2b:bog |RʹG>I*$k>PWFͣ^!b4ÚRʹG*kkWFͣ^RʹG*kWFͣ^>2b:bog |03!b4y>F!bc>NX!}Y"k!{k!Y"$k2b:bog |*$k:bogPmXc>PNX!b4c*k{~_U!bPX!bWW͗U|2!k!bWW͗U|2"k!bWW͗U|2#k!b6>2'c*k !xk>GNX*k !wk>GNX*k !tk>GNX*k !uk>GNX*k>WU2yk*k/nb*k;nbͶ>}2+c:+cog*kGnbͶ>}2+c:+cog*kSnbͶ>}2+c*kSKWW*kGKWW*k;KWW*k/KWG͹WWW!-cX!&kc>CGNXR ʹG*k_WFͣ^R%ʹG*kWFͣ^:"kY>2b:bog |Y3!b412$c2%c{ RʹG>I!bE!c>Wͬ?!c>,Wͬ?!+d> Wͬ?ͣ^ /RʹG>I!Kd>,WFͣ^͕>!bX!bwd>NXRʹG*kWFͣ^:"k>2b:bog!kͧ>:%cog | !%c4} 2%c:$cog |8 !$c4} :&cog:'cogY} Ry ʹGI*$k:&cog#PmX>PWFͣ^!*c4, !zk6!bb>P=X:zk !zk6*k;b,W :$cog | !$c4 :&cog:'cogY *k/b,W !$c !$c5 !*c !*c5  *kSb,Wb !%c9 !%c5_ >O2%c!$cM !$c5_ !&c_ !*c5 _ *kGb,W :%cog | !%c4ÿ 2%c:$cog | !$c4ÿ :&cog:'cogY ÿ !bn&:+cogY ͕>!bṔW!zk6Õ !b6 !*c4>O2b*$k:& !b~w :%c2b:b2l:log:bogY\ *$k:bogPmX:bog"l!lͧ>!b4 !$c4!b4m :)c2%c:(c2$c2bþ:!k>2l*k#nb}2l:log:logY*k#:l_WG!d>SW :$cog*kw^#V>_V!bPX2*k#:l_WG!d>SW-:%cog*kw^#V>_V!bPX2!b6!bn&!b!bW!c>Wk?WG!b>P=X>2l!bn&}2l:log:logY!b:l_WG!l>NX!lͧ>!l4r*k#:l_WG!l>NX!lͧ>!l4Ô ý>2l*k#nb}2l:log:logY*Ã*$kO:&cogmXc>GNX*$kO:&cogmX"l!lͧ>^#V"l:$c2(c:%c2)c>2$c2%c{ !c*lL>͛W*ln&}2%c>2b:%c2l:log:bogY*l:b_WG!l>NX!lͧ>!b4Æ>3>!lGX!lͧ>RʹGIͣ^2b:bog |!lͧ>!b4:(c2$c:)c2%c{ ñ#:$c2(c:%c2)c>2$c2%c{ RVʹG!bE!d>W*k͹Wͬ?ͣ^>3>!lGX!lͧ>:(c2$c:)c2%c{ ͕>!bX!dbxSW?!bdxSW?!b>_w*kbxSW!`>2[ð#*kbxSWʹ#ð#*kbxSW'ð#*k :bogY@R=ʹGI*$k:bogPmX>PWFͣ^@!b4õ*$k:,cog#PmXc>PNX:*cog :,cog#YRʹGI*$k:,cog#PmX>PWFͣ^ïð#*kbxSW:*cog :'cogY:*cog, :'cogY!*c~w :'c2*c ð#*kbxSW!*cT:*cog |J!*c~wN2*c ð#*kbxSW!*c|2*c ð#*kbxSW:*cog :'cogY:'c2*c ð#*k bxSW}ð#*kbxSW*$k:&cogPmX:%cog |3!b42$c2%c{ ͸*:3c :$c!*c2&c:,cog:&cogͶ>}2,c:$c2(c:%c2)c>2$c2%c{ RʹGI! bE!wd>Wͬ?:&cog>_Vͬ?!zd>Wͬ?:)cog>_Vͬ?!c>Wͬ?ͣ^:(c2$c:)c2%c{ ͕>!bX!b>W!-c>Wk?|̓ } !bn& |}} !bn& |!bn& |3!bn& |”:%cog:ykogPYY:%cog:ykogX}GNXcog#PmX:bog!cxSW:b/: !b~w RK ʹG>Iͣ^2b:bog>ogͶ>}2yl:ylog:bogY *$k:&cog#PmX:bog"zl!zlͧ>!b4e :bN¹ !|lͧ> :bog | :%c2)c:$c2(c>O2%c>2$c{ !~lͧ>:(c2$c:)c2%c2bx :%c2)c:$c2(cR! ʹG*kWFͣ^:"kU >2b:bog |U 3!b4- 2$c2%c{ :*c2b:*c2l:log:bogYg *$k:bogPmX>PW!c>Wk?+}2%c:%c\ { >O2b:%c<2l:bog:logY/*$k:bogPmX:bog!cxSWk#:l_WG!d>SW6:$cog*kw^#V"lt*k#:l_WG!d>SWn:%cog*kw^#V"lt!"l!l#*l}3>!lGX!lͧ>ö*k#:l_WG!l>NX!lͧ>!l4G:#k*$k:&cogPmX:%cogc>GNX*$k:&cogPmX:%cog"l!lͧ>!%c#!%c5F>O2%c!$c7!$c5F!&cF!*c5 z:$cog |a!$c4y:&cog:'cogYy @:%c2b:bog |*$k:&cogPmX:bog#*$k:&cogPmX:bog>GNX*$k:&cogPmX:bog"l!lͧ>!b4bxSWy*$k:&cogPmX!b>PG=X*$k:&cogPmXc>PNXRtʹGI*$k:&cogPmX>PWFͣ^:,cog:'cogY!,c4:&c<2b:'c2l:log:bogYq:bog:'cogY*$k:bogPmX*$k>PGNX*$kc>PNX*$k:bogPmXb>PJX:*cog :bogYYRYʹGI*$k:bogPmX>PWFͣ^*$k!b>PG=X!b4Ú!b6ð#*kbxSW:,cog:&cogY/!,c5:&c2b:,c2l:log:bogYG*$k:bog#PmX*$k:bogPmX>PGNX:*cog!b>GNX*$k:&cogPmX:%cogc>GNX*$k:&cogPmX:%cog"l!lͧ>:%c<2b:bog |:bog |*$k:&cogPmX:bog!b>GNXö!bd>NX*$k:&cogPmX:bogb>GNX!lͧ>!bb>GNX!b4_ð#*k#bxSW2$cð#*k##bxSW(>2$cð#*k###bxSWB>(2%cð#*kbxSW:$c2(c:%c2)c!zk6:zkRʹG*kWFͣ^:"k>2b:bog |3!b4Î2$c2%c{ RʹG>I!bE!d>W!ikW!d͹WWͬ?ͣ^ /RʹG>I!d>WF!d>"WFͣ^͕>!bX!b>W!d>W!d>W ?!d=WRmʹG>I!d>WFͣ^!ukd>GNX!dukxSW!dukxSW͕>!ukX!dukxSW!dukxSW!lͧ>RʹG>I!d>WFͣ^y!b>W!e>W!e>W ?!e=W¿R8ʹG>I!e>WFͣ^!tkd>GNX!dtkxSW!dtkxSW͕>!tkX!dtkxSW!dtkxSW!lͧ>RʹG>I!/e>WFͣ^D!b>W!Ke>W!Le>W ?!Ke=WNRʹG>I!Me>WFNX2b*kyw#wR/ʹG>I!e>WFͣ^!bn& |:bog+++|͕>!bX!bebxSW?!bdexSW?!b!bP>͛W!lͧ>!b4/!bWU*kys#r*ky#~*kyw#w*ky^#V |*ky6#6!zk6b!be>NX:(c2$c:)c2%c ð#*kbxSWN!le>L=X!lC͕>!bX!b>W!c>W!c>W ?!c=W;RʹG*kWFͣ^:"k>2b:bog |3!b4Ð2b:bog |*$k:bogPmXc>PNX!b4ü2(c2)c2*c2,c2&c!&aͤJ!&aR_!͹G!!bE2b:,c2Nn:Nnog:bogY\!*$k:bogPmX>PWͬ?!b4%!ͣ^!&aͽF!kf>W!ikW!Tf͹WW!QnLX!OnC!kf>W!ikͷWG3!R!.P!&aͤJ!&aR!͹G!&bE!d>W!ikW!of ͹WWͬ?ͣ^!&aR!͹G>Iͣ^!&aRP"͹G!+bE2b:,c2n:nog:bogYM"*$k:bogPmX>PWͬ?!b4"ͣ^!&aRd"͹G>Iͣ^!&aͽF!ebxSW"!zf>W!ikͷWG3!R!.d!&aͤJ!zf>W!ikW!~f͹WW!nLX!nC)#!ebxSW)#!f>W!ikͷWG3!R!.d!&aͤJxSW&!ukvkxSWE%*$k:&cogPmX:bogf>GNXð&:bu%*$k:&cogPmX:bogtk>GNXð&*$k:&cogPmX:bog+!cxSW*$k:&cogPmX:bog+!tkxSW%*$k:&cogPmX:bogtk>GNXð&!$c&*$k:&cog+PmX:bog!cxSW*$k:&cog#PmX:bog!cxSW&*$k:&cogPmX:bogvk>GNXí&*$k:&cogPmX:bogf>GNXð&&*$k:&cogPmX:bogvk>GNX*$k:&cogPmX:bog!b>P=og!cxSW*$k:bog+PmX:%cog!ukxSWn)*$k:bogPmX:%coguk>GNX$*!(c$**$k:bogPmX:%cog+!cxSW*$k:bogPmX:%cog#!cxSW)*$k:bogPmX:%cogvk>GNX!**$k:bogPmX:%cogf>GNX$*M**$k:bogPmX:%cogvk>GNX!b4(:$c2(c:(c2$c:$cog |*{ *$k:$c_W:*cogPmX:%cog"Ao!Aoͧ>!$c4`*:(c2$c:'c2,c/!zk6:zk/!zk6!;fb>4W*!bf>GNXÚ+!Eof>L =X!CoC>2'c!ͣ^!bbe>GNX!cebxSW!bdexSW=͕>!bX!b>WU2yk!b>W!ee>W!fe>W ?!ee=W!b6!bge>NX2b2'cRʹG>I!ge>WFͣ^!bn& |:bog++|͕>!bX!bebxSW?!bdexSW?!b!bP>͛W!lͧ>!b4ë!bWU}2'c!'c5:'cog |<>2'cQ:'cog |Q>W2'c:'c<2b:bog |*$k:bogPmXc>PNX!b4X:'cog :*cogY:'c2*c:'cog:,cogY:'c2,c!b>W!e>W!e>W ?!e=W!b6!be>!be<NX!b6!be>NX!be>NX2$c2%c{ ͸*K!be>NXð#*kbxSW°#!e>$W!ikW!e͹WW!mLX!mC͕>!bX!dbxSW?!bdxSW?!b>_w!2c6!ebxSW!ebxSW#!ebxSWI !cme>L%=X!amC͕>!bX!b>W!c>W!c>W ?!c=WC !2c6I !f>*W!ikW! f͹WW!mLX!mC͕>!bX!b>W!c>W!c>W ?!c=W¼ !b;f>P=X͸*!b6ÿ !Pf>W!ikW!W!ikͷWG3!R!!f>W!ikW!~f͹WW!nLX!nCͧ3!&aͽF:1c#2*c:&cog |^#!&c~w!*c~w=#:'cog :*cogY#:*c!'c!&c2&c:'c2*c:&c2$c !1c6ã#!bf>NX'*$k:&cogPmX:%cog!ukxSW#!vkc>GNXÝ$*$k:&cogPmX:%cog!fxSW‘$*$k:&cogPmX:%cog#!ukxSW*$k:&cogPmX:%cog#!fxSW$!vkc>GNXÎ$!vkuk>GNXÝ$!vkuk>GNX:%c2b:bog |'*$k:&cogPmX:bog!tkxSW*$k:&cogPmX:bog!fX!?ob>JX!=oͧ>!b4ã$õ**$k:&cogPmX:%cog!tkxSWV'!vkc>GNX(*$k:&cogPmX:%cog!fxSW'*$k:&cog#PmX:%cog!tkxSW*$k:&cog#PmX:%cog!fxSW'!vkc>GNX'!vktk>GNX(!vktk>GNX:&c2b:'c2@o:@oog:bogYT**$k:bogPmX:%cog!ukxSW*$k:bogPmX:%cog!fxSW'*!tkvkxSW¹(*$k:bogPmX:%cogf>GNX$*:b(*$k:bogPmX:%coguk>GNX$**$k:bog+PmX:%cbf>NX!b>W!f>W!f>W ?!f=W!b>W!f>W!f>W ?!f=W!b>W!f>W!f>W ?!f=W+͕>!bX +!b>W!f>W!f>W ?!f=W+!`>2[!zk6/!of>L=X!oC!ik62b͕>!bX!bn& |:bog |,!bn& |i,!bf,!%c5{ !oͧ>{ !ik!ikn&+MWG!ik> =X!b5f,,!b>W!&k>CWk?|,!dbxSW?!bdxSW?,!b>_w!b!ik >͛W!oͧ>!b4!%c4,>3>!oGX!oͧ>͕>!bX+!bf>NX!fik>>|!ikn& |//-!ikWG!ik> =X!ikKWG!f>SW!ikn&|!ikWG!f>SW!ikn&++|!fik>>+++|/-!zk6!f>W!f>W!ikW!f͹WWW!oLX!oC͕>!bX!bg>NX/!b>W!f>W!f>W ?!f=W/!Pf>W!ikͷWG3!N!!!aͤJ:zk/!Pf>W!ikW!g ͹WW!9pLX!7pC!a>]}.!3c6!a.͹G!0bE2b:bog |:3c/.͞C*$k:bogPmXPX!b4Ó.ͣ^:b=2,c:,cog>ogͶ>}2'c!3c6!aͽF2$c2%c2g>W*k >W*k͹WWͬ?!g>W*k>W*k͹WWͬ?ͣ^R1ʹG>I!bbE!g>W*k>W*k͹WWͬ?!h>W*k>W*k͹WWͬ?ͣ^R2ʹG>I!ibE!,h>W*k>W*k͹WWͬ?!Hh>W*k>W*k͹WWͬ?ͣ^R^2ʹG>I!pbE!fh>W*k>W*k͹WWͬ?!{h>%W*k>W*k͹WWͬ?ͣ^R2ʹG>I!wbE!h>W*k>W*k͹WWͬ?!h>W*k>W*k͹WWͬ?ͣ^R2ʹG>I!~bE!h>Wͬ?ͣ^R"3ʹG>I!bE!h>W!tk>W!W!i͹WWFͣ^!b62p:,c2q:qog:pogY/:1c/|6!p6!p6!p6>2p*$k:pogPmX>PW!c>Wk?}2p!pu6>P2p*$k:pogPmX:pog+!cxSW:pog:pogY5!p5É5*$k:pogPmX:pO>PWG!p>P=X:p2p:p2q:qog:pogY/:1c/u6!p:p_WW!Dq>Wk?|[6:p=2p~7:1cX6E9n6:p!pn6:p2p~7!p46!p4#5:1c6!&aR6͹G>I!i>WFͣ^{7!ebxSW{7:2c57!&aR6͹G>I!i>WFͣ^!p27!qi>L+=X!qC!&aR!Pj>Wͬ?:pog>_Vͬ?!Rj>Wͬ?:pog+>_Vͬ?!pWͬ?ͣ^o>!p62p:p<2p!p:p_WW!Dq>Wk?|:pog:pogY/9:p2p1>!p:p_WG!d>SW:pog:pogY1>:pog:pogY/!p:p_WW!Fq>?Wk?|:pog |1:!p:p_W!p ͛W!p4!p49!bc>GNX!pn&|l:!'rSj>L!=X!%rC͕>!bXP;!pKWG!f>SW!p:p_WG!f>SW:!vrtj>L#=X!trC͕>!bXP;!p:p_WG!wk>SW:2cP;!rj>L#=X!rC͕>bW!j͹WW!sLX!sC͕>!bX!bk>NX!b6!ebxSWx=!zf>W!ikW!~f͹WW!csLX!asCò=!ebxSW²=!f>W!ikW!~f͹WW!sLX!sCò=õ=1>!p:p_WG!xk>SW1>!&aR1>͹G>I!bE!Pj>Wͬ?:pog>_Vͬ?!Rj>Wͬ?:pog+>_Vͬ?!pW!k͹Wͬ?ͣ^:1cH>:p2&c:p=2%cn>:p!p2p:pog:pogYn>:p<2pp`^#V^Æ>Ï>3>s>!>*3>s>K* E|>|{zͶ>F>>O>># ?>>>*c *$kc>PNXý*Yä3R}/ʹG>I!5bE!g>W*k >W!c͹WWͬ?!3g>W*k >W!c͹WWͬ?ͣ^R/ʹG>I!#Wͬ?ͣ^R/ʹG>I!AbE!fg>W*k#>W*k͹WWͬ?!vg>W*k##>W*k͹WWͬ?ͣ^R00ʹG>I!HbE!g>W*k###>W*k͹WWͬ?ͣ^R0ʹG>I!MbE!g>W*k>W*k͹WWͬ?!g>W*k>W*k͹WWͬ?ͣ^R0ʹG>I!TbE!g>W*k>W*k͹WWͬ?!g>W*k>W*k͹WWͬ?ͣ^RG1ʹG>I![bE!c͹WWͬ?!h>W!uk͹Wͬ?ͣ^Rn3ʹG>I!bE:ykog>_Vͬ?!i>Wͬ?:'cog#>_Vͬ?!&i>Wͬ?ͣ^R3ʹG>I!bE*ky^#V> _Vͬ?!?i> Wͬ?ͣ^p>!xk>W!wk͹W!DqX!Fq_i>?GNX2p!1c6!fik<>}2p!p4!ik:pog#WG!b>P=X4!bik>P9X!ebxSW4!&aRR4͹GI!zf>W!bW!i͹WWFͣ^:2c4!&aRx4͹G>I!i>WFͣ^!&aR4͹G>I!bE!i>Wͬ?*ky^#V> _Vͬ?ͣ^4!&aR4͹G>I!i>WFͣ^5!ebxSW5!&aR5͹GI!f>W!b7͹G>I!j>WFͣ^͕>!bX!b#j>NX27\7!p\7!&aR\7͹G>I!#j>WFͣ^!&aR{7͹G>I!'j>WFͣ^B9!p:p_WW!c>Wk?:pog+}2p!p:p_WG!c>SW:pog:pogY7!p5æ7:pog:pogYA9!p:p_WG!d>SW©8!p:p_WG!d>SWg8!&aRd8͹G>I!p:pog#:p_W:pogY+MWWFͣ^æ8!q-j>L=X!qC!1c6:p2&c:p2%c͕>!bX!bIj>NXA9!Oj>W!p:po:p_W:pogY#MWW!Ij͹WW!pYX!&aRA9͹G>I!bE!bX!b>W!c>W!c>W ?!c=WP;RM;ʹG!bE!j>Wͬ?ͣ^P;!b>W!c>W!c>W ?!c=Wʀ;!1c61>!p:p_WG!wk>SW¸=:2cI!bE!i>Wͬ?!j>Wͬ?!pW!j>W!pW!j ͹WWWͬ?!#j>Wͬ?!i>Wͬ?ͣ^>2põ=!&aRu<͹G>I!bE!Pj>Wͬ?:pog>_Vͬ?!Rj>Wͬ?:pog+>_Vͬ?!pW!j͹Wͬ?ͣ^!p4:p@µ=!&aR<͹G>I!#j>WFͣ^2p!&aR<͹G>I!j>WFͣ^:pog>_V!bPX!b!bn&+++WG!b>P=X!k>W!gl ^?#~w&?!9_#F#O >ʤ?~ ʚ?ʓ?#Ç?#|?H o&ͱB"Ia?¿?BZ!9??~#qC?> qC?&9@x2\ay ?2]a"s@EqC:ba+g@-/G@!9~#qCñ@*s@E2Ka2`a2ca<2[a!9ͤA @+@ͤAA-A>2`aͤAͮAAA A ͷAͤAA.1AͤAͮA1AͷAͤA"Ae;AE~AͤA+KAͤATA-TAͤAͮAYGͤAͮArAxGGGͤAzAGyOʍA YͤA~A:[aҟAͷAÐAy2_aʫA~#z0 0!ca_w![a~A4_!KasYY2^aG:_a<2[a=Y:KaY:BB:KaB!_a5!ba4Y:]aG:\a B!`aA>2aa]BqC!\a5,B:]a!_a<_!Ka>w w>+OB!^a~5>.͕BG:aax0|B:^a> !`a~ʏB5!^a4![a5-2aax![a^4{BҮB!Ka~0>0F Bx=BG9CñB B:{aBB!jaxʱBBhCñB;IñB CʱB> qDYK0w# Ex$EbE DJEGZ:E+w/ExbE?ExbEYJEo>g9##xEY bE bE YLŒE!tB[> F ¥EʐELÙE ·Ex±E>EÐE EÐEEx!haEEE:yaEE:haLE>2t!t(I!tB[fFͧF^ͲF^#V?FFfFF#F8F#N8F#^#r+s#^#V++r+s~F5FͧF5^ͲFq#pFOͧF4~ ҄F_ͲFs#r#s#r#q!FB[FFaFF Format Overflow*a-&a!7t"t!tF^#V"t*t"t!tRF GO:ayG!9GG~#'FuI^#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!yuI: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[Iã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#Y|£J!a"u!"u!uB[J;I!pa6"u!9"u!uJ! 9^u~# J*u^#V|J*u*u W*u nbK*#"ha:u M!ha6#6:u"S"S*S^#V#"S^#V"M.M"S.M"S|3M|~"M.MyacMA =.:;<>[]y *SUM MËMUM$MUM1ڭM o&))))\xH  M#w MMͅM*S#MAMGMUM:M 6Np4M+͗M(N#UM4N#* N6?$NwMNUM;NM(N#6 4N.tNM ͗MhNUMtN#*`N6?dNwMONUM{NMhN#6 tN%#6}N*S##^ ~?”N# NxCON CON RDR PUN LST M!N ~ͅM$,OMUM1N\Nl,O$,O!~ ,OM!NY|ʑQ##"S6*Ss#rMR{ R*S:Sw/Q6RQ*S"}SrS*Sw#wrSM3MrS͗O"MqrSM3MrS"MNOrS*S~" 4#4#4M3MrS~Q%RͮTrSGO>4RrSM3MrS~GO>4RrS*S~R>rS%RͳTrS*S!*~!/2S*S|IR(^#VNMNM{z\RzR2SzʋR:SR͗OqÆRNO#fR*S|R*~R=!SڽR:S PʺR¶RwÝRQ>M3MrS|}rS~> rShCñB "C9CñBx,C>ʱB=;I,CfCx!haNCfC9C:yaYCfC:ha> qCNC>2t!t(I:yaʍC!haҍC> ͕C> ͕C͕C2t!tI͐E²Cy<>¹C= ùCGDOEoWE####W?EC60#DEC>ew#.CeCxDbE CJEGZ+y=+Dx=#D0 +D60$-Dw 7D+6.$y= Dx= D²Dx<D!9xE xE wD wDw# Y_DH !9 ʊD+wDxOo>g9x xEY ʝD ʝDw#ÚDE=D<E<_EKE DoWWE##?E$EK0Y D0_Y Fy GO:aGcG͖G#G{+G*ya|TGj& *ya*haY#Y> ܞG> ܞG͖G> G{=>'ĞG!9ʅG=~#'~G{>'̞G͞GiG{=>'ĞG{>b̞G*ha++|2t!tIɯûG>ûG>2t"t"t`i"t!9"t!tG?u ~# G*?u~KH*?u~ H!9u>WG3!!!`ͤ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^#VV|*aV|GʢH!YuI*Cu^#V}*a}GH![uI:aH*Cu^#V}*a}GH!]uI:aI*Cu^#V}I!_u !u>JX,K!u>W*uͷW!uX*u~#XK*u^#V)))|XK*u6P#6*u~#’K*u^#V))|K*u6#6ÒK*u6<#6*u6#6*u6#6*u6#6*u 6*u^#V}~U}2u*u^#V}K!u44*u^#V}K>2u*u^#V}*L*u~#*L*u6#6*u"u*u"u*u"u!u͋P*u^#V|gL*u"u!"u!uB[^#V^#V^:aڅL!LB[2aO!a”L6ÙL +~#w!a s#r!a4ͯ^ɲLLaLL I/O Stack Overflow:paL!da"u!u͛QL!u6L:pa2u!pa6:u M*haUMO !OM#Ox=GNM>ɯ*S+.O^#V6O#{#z.O6#66O r+s!uF#~ڍO!u6P  _ _!u^r+s6 #6 !u4^N*S|½O}=ªO]OùO͵NʵOO>~OO> PN*S|OY͵N=OyO _O>~P=P> Pq2S*S/"S=ObP{GO6O*S*S#:SOKP6O#s#rTPPO=O$PGO P6Or+s{sP!S4*S+>|ʂP+}oM"M~2S"M"S3M:SґQ;NPG:SґQ*Sp¾P4#6rSNM:SP|P*S++"SP}+P͂P}|2|S"zSNM|P"S1^#V6+6++̈́ZrSMEMrS>rS"N#F#~"Mq#p#w>rSMEMrS>rS*~NM!aS=SS>!*S" s#r#w=rS*S }!?v6 4>2>v*;v!4#4#4~#N#F#y#x#:>v*;v!!:=vSSҪS:?v~G~#~O?*T#~*T! p! y! q<.T<ͪSɯ~#N#F#w#q#p͡S͑S~XT#!!0T! 6?<ʓT= _!xڇTTFNfTwxG>O>G!$q#p#6õT"8v";v2:vx2=v͑S2>v͡S!:v~5YUST=&U:=v&U*;vvLU*;v!SLU0T*8v"8vT:>v/g.xqU}03|g}o eUxg.>Gx|g}oÅU YYG!9!yUU)0ʾU1Y# çUyU) UxDMox&9`iG!9!x8V 3V+V$%Yg3V-U0Y:Y0T])Y)YY)Yo|gYU{HV$%Y}IV|Yz- Yo&9}/G!V ¨V>0V ­V>-3ùVT]))V寕iO>`G>0 V ȇV)= Y)Xɯo>g{ozg!"YB[*Y+Y,Y.Y0Y Conversion2NY!EYB[MYNYOYQY*v|ʁY^#V"v###^#V#N#Fx}Y #~pŸ́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##~#foY! ZB[ZZZZZ Free Space Exhausted##^#V#{_zWZ{_zWY4zVZ{Z##^#V# ##s#rs#r#s#r+++~sw#r####}*v}|Z*{zZ+F+N+V+5^{Z{zZ}|Z{ZZi`~sw#r##q#p i`N#F#^#V~Zq4#p+i`##s#rZË`[Ë` F>AĻ\> #]~ >.\~ \= ]^#V# File: Traceback:S]Z]j]t]]]]] ERROR FIXED OVERFLOW OVERFLOW UNDERFLOW ZERO DIVIDE END OF FILE UNDEFINED FILE KEYNULCONCONRDRPUNLSTBADG!a~]]Ë` Condition Stack Overflow$4Ox!Bv w#s#r#s#r!9!a s#r!aN!Bv +++++/^#{H^#zM^++~/^++!a5!~# \^X^!aN!Bv +++++w^#~#ʛ^+{–^#zʛ^++~w^#^#V=!a~^5:a_!a^#V"ada.~# ^*a)))))a )| ^*da|}*b"ha:a*aYSININOUTSYSPRINT   PPP ( ( ( ( ( ( ( ( (  ) ( '  RVED--Enter new symbol: VvNew vertical marker: RESERVED: Enter new symbol: TtNew tab value (1-9): 019PpNew page length (23 - 88): 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 printed (Y or N)? File : do you want to change its name (Y or N)?*Writing screen file .ZIPWriting printable file .ZPR***** File .CMDWriting command file .FMT+N or file (Q to Quit)?nOoQqFILE NAME (drive optional)::** ** is not a valid file name (anyVyw# W~#W~#W #wW!9Oo>gy͛W~#o>gxGҰWGNXwF#"@vxWW*@v!9G_>WObk++W~+Wy~#/)X Y FREE Request Out-of-Range$ Free Space Overwrite$GKZ[MbkZ[']F&]N&]N#F&]^#V"by2axm[i&g^ʤ[x[x„[>ڧ[!a{#z*qa*saͣ^xyx[ \_!C]^#Vb\\>(\y>\>)\|[[\|[[b\t\p`>,\\> _ _ _ _0:\\\\\|#\}#\ N\dP\ P\[\R\x\N #~\d\!5]b\*v!9{_z•\{ڕ\ ک\ͧ\\>#\*v>=^#V#/\é\\>: \>?\!-]b\b\>=\^#V|\}\.))]b\#daw# _*b{ _ "_!#"bT_Copyright (c) 1980 Digital Research, v1.3 !"v"v"v2a2a*v ړ_"vq#p##}o"v*}o|ҙ_`Ë`+w+w+r+s4w#w#s#r<2v++*vs#r"v*v#"v*vDM!vx~f`#~+f`+F+Nq#p*v+"v_d`=`!+~O~#~G!/x?`y\` >O6# 6` &`=ɯ ~#fo++_!v~#ʈ`*v_p``Ë``  Insufficient Memory$ Invalid I/O List End of Execution$`b bb S W .ZIP does not exist (any key to continue).NO MORE DISK SPACE--saving partial file.QUIT to system (Yes or No)?Yy $:@#/0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ZIPThe dBASE II screen and printout Form Writer Copyright 1982 Hal Pawluk Press any key to continue.Row, Col az*** WORK FILE: ***Enter of value tochange, any other key to continue.HhNew horizontal marker: []RESE key to continue).Loading file : DISPLAY variable. : GET variable.[] : RESERVED for EMBEDDED COMMANDS : Top of screen : Bottom of screen : Middle of line : Previous screen. : Next screen. : First screen. : Last screen. : Delete character. : Insert space. : Kill cursor line. : Line insert at cursor. : Draw/Erase vertical line. : Draw/Erase horizontal line. : ERASE screen data. : SAVE screen, write .CMD/.FMT file. : QUIT to system. : Display this screen.CHANGEABLE DYNAMIC VALUES: : ertical marker. : orizontal marker. : ab spacing (1-9). :

age length (23-88). : argin for printer (0-127).0123456789:ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz* SET FORMAT TO PRINTSET MARGIN TO ERASEINCOMPLETE FILESET FORMAT TO SCREENGETs in PRINTER file (any key to continue).@ 23,79 SAY " "READRETURNCOMMAND ERROR -- please fix. SAY ""@ ,NO VARIABLE: continue (Y or N)? HANGING COLON: 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, rmmcmmnQnnnqq'rvrrord Sequen/Direct Input/Output Keyed Access P< $conMuQuda-utuuu=u>ukuou puqurusuu uuuuuuuu.datuuuuuuuuuvÝZIP COMCOPYRIGHT 1982, PAWLUK CORPORATION5455 Wilshire BoulevardLos Angeles, CA 90036(213) 937-0551^#VN#F<%0  ZIP.COM NOT PRESENT ON DEFAULT DISK $:22!}~#z~!} w#z’ͻL!}͂G"sN!Wu*sNyw#w*sNPG4G*sN##P>G4G*sN###P>G4G*sNP>ow (Any key to continue.) SAY kk k bk  + 1 +ik\>H  )$%' , %l(lxlcclllllllclbluktkbbl?oEoocboo9pscssttttatttta t"t Invalid Format Itemttttttt Stream/RecG4G*sNP>G4G*sNP>G4G*sNP>G4G*sNP>G4G*sN 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>G4G*sN'P>G4G*sN(P>G4G*sN)P>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-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>5F-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!SPxQF!PSxQF!Pn& |ͮ0!PF{!Pn& |>2P!W0!P! P >́F!P4_! PFD}2uN:uNog |/:uNog+|<R9ͺ6>%8!cO%5!S>%F-17L<RMͺ6>%87L͢*:uN~!uN:uNog |x\{́~!PT>4G!P>F!*P>F!T>F0!*P;FqRͺ6!hO%5*sNF-17L>2P:Pog |34G!SPxQF!PSxQF!Pn& |R ͮ0!PF !Pn& |} !W0!P! P >́F!P4 >2P! PFD*sNys#r*sNy^#V | *sNy6#6 *sNy#~ *sNyw#w | !PSxQF!SPxQF ! PP> #GR* ͺ6>%8!O%5!T>+F-17L!PT>G4G!P P>2Fu !!UPxQF!PSxQFr ͮ0!PFD !PTxQF?!Pn& |/ ͮ0!PF!"UPxQF!#UPxQF !W0R ͺ6>%8!O%5!$U>"F-17L!PT>G4Gu !TF*sN##>F*sN͟FͱF-17LR} ͺ6>%8!O%5!V>F*sN>F*sN͟FͱF-1!-V>F*sN>F*sN͟FͱF-17LR ͺ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 >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>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!-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]>:F-17Lͮ0!XF!X]>4GRͺ6>%8!X%5!]>DF-1!]>2F-17L*sN"'e!'e^+Rͺ6!X%5*sNF-17L>2X:Xog |+3%8!X%5!^>F-1!4^>F-17Lͮ0!XF!X>F!N^>F!O^>F0!N^;F…!&e6:&e !&e6Rͺ6!X%5*sNF-17L>2X:Xog |3%8!X%5!P^>!Xn& |$ͮ0!XF!Xn& |;>2XT!5e0!X!X >́F!X4!XFD}2X:Xog+|y>2XÑ:Xog |> 2XÑ2X!X6Rͺ6>%8!2X%5!Ua>%F-17L:Xog++|J!Xza>4G!`XxQF!XTaxQF!Xn& |ͮ0!XF!Xn& |.>2XG!7e0!X!X >́F!X4ü!XFD}2vN:vNog+|l>2vNÄ:vNog |> 2vNÄÁ*sN#:X_Fza4G*sN#:vN_F{a4G2X2vN2X!X6Rͺ6!7X%5*sNF-17L>2X:Xog |3 R$ͺ6>%8!mO%5!T>)F-17LR5ͺ6>%87Lͮ0!PF!P>F!HT>F!IT>F0!HT;Fn,nË!W͉XRͺ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!HT>F!IT>F0!HT;F(!W6â RNͺ6>%8!O%5!T>.F-17L! P6!PT>G4G!PTxQF?!Pn& |/ͮ0!PF_!TPxQF?!PTxQF?!P>_w!W0!TPxQF ! P62PRͺ6>%8!O%5!T>*F-17L:Pog+++PxQF?!PTxQF?$ !P>_w>2P>2W:Wog:Pog[G| *sN+:Pog!PxQFu *sN+:PogP>G4G!P4. 2P2P! 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!|U>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*sN͟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>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͟FͱF-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͟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-17LNRͺ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>GFKF-1!^>F-1!^>+F-1!^>F-1!^>IF-1!_>HF-1!W_>=F-1!_>F-1!_>DF-1!_>8F-1!`>F-17Lͮ0!XF*sN{~eD!X G!X>F!N^>F!O^>F0!N^;F!/e0!XF`4G!1e0!XF`4G!XF͝D|*sN{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:&e!&e6Rͺ6>%87L2X!X6Rͺ6>%8!-X%5!2a>"F-17L:Xog++|W!XTa>4G!`XxQF!XTaxQF%8!EF-1*sNw^#V>eE-1!a>#F-17Lͮ0!XF!&e6!X>F!N^>F!O^>F0!N^;F©:&e!&e6!X62XRͺ6>%8!FX%5!a>(F-17L:Xog+++|S!X b>4G!`XxQF!XTaxQF!Xn& | ͮ0!XF!Xn& |K!́F!X4P>2X!XFD*sNws#r*sNw^#V8 |*sNw6#6ã*sNw#~*sNww#wÍ!&e62X2vN!X b<4G!X6Rͺ6!KX%5*sNF-17L>2X:Xog |3e0!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!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:Xog |&3%8!iX%5!{b>-F-1!b>,F-1!b>*F-1!b>#F-1!X>F-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^;FR-ͺ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Ž!"iô:uNŸ! "iô:uN°!h""iô:uN!""iô:uN!#"iô:uN!1$"iô:uN !$"iô:uN !m%"iô:uN !&"iô:uN '!&"iô:uN :uN:uNQ!.'"iô:uNb!'"iô:uNs!k("iô:uN„!)"iô:uN•!)"iô:uN¦!5*"iô:uN´!*"i!*iR*sN^e> #G*sN#_e> #G*sN/ce> #G*sN;de> 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-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>FF-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*sN/ue> #G*sN;we> #G*sNGse> #G*sNSqe> #G*sN_6*sNk6*sNw6 #6> ̈́D}*sN{wÐ#*si> #G*sN;i> #G*sNGi> #G*sNSi> #G*sN_6*sNk6*sNww#w>`̈́D}*sN{w&*sNi> #G*sN#_e> #G*sN/ue> #G*sN;we> #G*sNGse> #G*sNSqe> #G*sN_6*sNk6*sNw6 #6> ̈́D}*sN{wÖ&*sNi> #G*sN#_e> #G*sN/ue> #G*sN;we> #G*sNGse> #G*sNSqe> #G*sN_6*sNk6*sNw6 #6> ̈́D}*sN{w+'*sNi> #G*sN#_e> #G*sN/ce> #G*sN;de> #G*sNGee> #G*sNSne> #G*)>3>!oe͟F*sN G*sN#ie> #G*sN/me> #G*sN;i> #G*sNG^e> #G*sNSne> #G*sN_6*sNk6*sNw6 #6̈́D}*sN{w2**sNi> #G*sN#i> #G*sN/fe> #G*sN;i> #G*sNGce> #G*sNSi> #G*sN_6*sNk6*sNww#w> ̈́D}*sN{w**sNi> #G*sN#i> #G*sN/i> #G*sN;i> #G*sNGi> #G*sNSi> #G*sN_6*sNk6*sNww#w>̈́D}*sN{w]+*sNce> #G*sN#ie> #G*sN/i> #G*sNF!Le0!XF`4G7!Ne0!XF`4G!XF͝D|*sN{w+Rnͺ6!pX%5*sNF-17L>2X:Xog |3%8!uX%5!c>'F-1!c>!F-1!d>,F-1!.d>F-17Lͮ0!XF*sN{~eD!X G!X>F!N^>F!O^>F0!N^;FR!Se0!XF`4Gj!Ue0!XF`4G!XF͝D|*sN{wàRͺ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#G*sNGee> #G*sNSfe> #G*sN_6*sNk6*sNw6 #6> ̈́D}*sN{w>3>!ge͟F*sN G*sN#ie> #G*sN/me> #G*sN;de> #G*sNG^e> #G*sNSne> #G*sN_6*sNk6*sNw6 #6̈́D}*sN{wÍ >3>!ceG͟F*sN G*sN#ie> #G*sN/me> #G*sN;de> #G*sNG^e> #G*sNSne> #G*sN_6*sNk6*sNw6 #6̈́D}*sN{we">3>!oe͟F*sN G*sN#ie> #G*sN/qe> #G*sN;se> #G*sNGue> #G*sNSwe> #G*Ni> #G*sN#i> #G*sN/ge> #G*sN;i> #G*sNGi> #G*sNSi> #G*sN_6*sNk6*sNw6 #6̈́D}*sN{w.$>3>!oe͟F*sN G*sN#ie> #G*sN/i> #G*sN;i> #G*sNGi> #G*sNSi> #G*sN_6*sNk6*sNw6 #6̈́D}*sN{w$*sNi> #G*sN#i> #G*sN/ue> #G*sN;we> #G*sNGse> #G*sNSqe> #G*sN_i> #G*sNki> #G*sNww#w>̈́D}*sN{wj%*sNi> #G*sN#i> #G*sN/sN_6*sNk6*sNw6 #6̈́D}*sN{w'>3>!oe͟F*sN G*sN#ie> #G*sN/me> #G*sN;de> #G*sNG^e> #G*sNSne> #G*sN_6*sNk6*sNw6 #6̈́D}*sN{wh(>3>!ceG͟F*sN G*sN#ie> #G>3>*sN/ G*sN;i> #G*sNGi> #G*sNSi> #G*sN_6*sNk6*sNw6 #6> ̈́D}*sN{w(*sN^e> #G*sN#_e> #G>3>*sN/ G*sN;i> #G*sNGi> #G*sNSi> #G*sN_6*sNk6*sNw6 #6> ̈́D}*sN{w;i> #G*sNGi> #G*sNSi> #G*sN_6*sNk6*sNw6 #6> ̈́D}*sN{w^#V"Lk!OkJj>4G>2Nk*Lkn&}2]k:]kog:Nkog[G,*Lk:Nk_FG!Ok>4G!JjOkxQF҅,!KjOkxQF+R+ͺ6!i%5!Lj>F-17LÂ,!PjOkxQF,R,ͺ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-17Lê,R,ͺ6!j%5!Jj>F!Ok͟F-17L!Nk4Á+!Qkaj> #G>2Nk:Nkog |,!Qk:Nk_FG!`k>4G!^k0!Nk4,!Qk6!Okdj>4GR*-ͺ6>%8!j%5!dj>!F-17L!Pk6:Pk0!Pk6!Okj>4G2Nk!Qk6Rs-ͺ6>%8!j%5!j>1F-17L!Okn& |:Nkog++|-ͮ0!OkF!jOkxQF?!OkjxQF?-!Ok!Qk >́F!ak0!Nk4s-!QkFD}2vN!Qk6!vN/:vNog |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!j> F-1:Nkog>eE-1!j>F-17Lͮ0!OkF!Okn& |.R.ͺ6!,j%5!j>F-17L!Nk5/!JjOkxQFT/!Okn& |N # 11#1#{> 1#~w024"wNg1@1BZ!9_1V1~#4F1> 4V1&9‰1x2Ny v12N"dkM2E4:N+1-/2N%3/3қ2‘2 ʕ2 83%3Â2.²2%3/3Ҳ283%3ã2eʼ2E2%3+2%32-2%3/3bGG%3/32xGGG%32GyO5> 5> 552hk!fk8!lkHÍ55^5^#Vf5D5͍5)5#F_5#N_5#^#r+s#^#V++r+s~)55)555^5q#p)5O54~ ҫ5_5s#r#s#r#q!5H55N55 Format Overflow*N-&N!k6O:Ny6!9G 6~#'55y6O:N 6i6͜6)6{16*N|Z6j& *N*N[G#[G> ܤ6> ܤ6͜6> 6{=>'Ĥ6!9ʋ6=~#'„6{>'̤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>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*N#[G|©9!N"l!"l!lH98!N6"l!9"l!l9! 9^m~# 9*m^#V|9*m*m F*m nb:*m !m>0G2:!l>F*m͝F!mF*m~#^:*m^#V)))|^:*m6P#6*m~#˜:*m^#V))|:*m6#6Ø:*m6<#6*m6#6*m6#6*m6#6*m 6*m^#V}̈́D}2m*m^#V}:!m44*m^#V}; =p4ͅ<+͝<.=#[<:=#*&=6?*=wͅ<=[ͅ<[<1=\=l2>$2>!~ 2>ͅ '>ͅ<#>x=G>ͅ<>ɯ*B+4>^#V<>#{#z4>6#6<> r+s!2mF#~ړ>!2m6P  ͡L ͡L!3m^r+s6 #6 !3m4^N*B|>}=°>c>ÿ>ͻ=ʻ>O>~>>>?N*B|>Yͻ==>y>͡L>>~#/R /ͺ6!1j%5!j>F-17LQ/RQ/ͺ6!6j%5!Okn&@ }3>>^3>ͱF-17L/*sN{~eD!Qk G!jOkxQF?!OkjxQF?!QkFG!j>QF/!Ok>_wï/!Qk6R/ͺ6!;j%5!Ok>F-17L!Ok*Lk >́F!Nk4V.0/R/ͺ6>%87L/-Ë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;FŠ0!Pk6^#V^ß0è03>͌0!0*3>͌0K* 5!9DM_###^#6~4#+(1##o0$~`i#3 bG%32:N 3833y2N,3~#z0 0!N_w!N~U34_!yNsbGbG2NG:N<2N=bG:yNbGͻ3“3:yNʓ3!N5!N4bG:NG:Nʡ3!N\3>2N34!N5­3:N!N<_!yN>w w>+3!N~5>.4G:Nx03:N> !N~45!N4!N5-2Nx!N^4{/4/4!yN~0>0)5 K4x=E4Gͺ424 r4:N[4l4!Nx24l4424824 †424> 4x4 ˜4x’4>424 £4ͺ424x­4>24=8í44x!N44ú4:N44:N> 44>2kk!ik.8:N5!NFG3!!!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#r*l^#VF|*NF|Gʨ7!l 8*l^#V}*N}G7!l 8:N7*l^#V}*N}G7!l 8:N 8*l^#V} 8!l 8^#V"l!N"l*l"l!lH2l!l.8^#V"l:N=8:Ni8*lf8*l5!l6:l c8͖8U8D8Õ8!l8*l8*l5!N6!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>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ڋ;!;H2NO!Nš;6ß; +~#w!N s#r!N4CLɸ;;N;; I/O Stack Overflow:N;!N"0m!,m͡@;!+m6;:N2+m!N6:+m <*N#"N:+m []y *B[< ͅ<Ñ<[<$ͅ<[<1ڳ< o&))))\xH  <#w <ͅ<͋<*B#?q2B*B/"BC>h?{M><>*B*B#:BOQ?<>#s#rZ?V>C>*?M>?<>r+s{y?!B4*B+>|ʈ?+}o<(<~2B(<"B9<:Bҗ@=?G:Bҗ@*Bp?4#6xBT<:B?͂?*B++"B?}+?͈?}|2B"BT<͂?"B1͂G|ʗ@##"B6*Bs#r<B{ B*B:Bw5@6X@*B"BxB*Bw#wxB<9(xB*B~" 4#4#4<9>:AxB<9>:AxB*B~"A>xB+A͹CxB*B!*~!/2B*B|OA(^#VTqÌAN>#lA*B|A*~A=!BA:B?A¼AwãA@><9 xBxB"N#F#~(xBxB*~T!*B" s#r#w=xB*B }!m6 4>2m*m!4#4#4~#N#F#y#x#:m*m!!:mBBҰB:m~G~#~O$%bGg9E-E0bG:bG0T])bG)bGbG)bGo|gbGD{NE$%bG}OE|bGz-SGo&9}/G!E ®E>0E ³E>-3ÿET]))E寕iO>`G>0 E ȇE)Fyw# F~# F~#W #uF~#o>gxGҖFG4GwF#"mxFͱF*m!9G_>WObk++F~+Fy~#/;I!N{#z*N*N7LxyxGI͟I_!J^#VI͙I>(͛IyI>)͛I||I͎IcJ|ʈI͎IIJN>,͛I͙I> _áL ͡L áL0:ڛIÛIͩIéI͙I|ͷI}÷I IdI IIIxͩIN #~͛II!JI*m!9{_z)J{)J =J;J͙I>#͛I*m>=^#V#I=JTJ>: ^J>?͛I!JII>=͛I^#V|“J}ڊJ.))BKI#F>AOJ> #®J~ >.TJ~ TJ=ßJ^#V# File: Traceback:JJJKK K-K=K ERROR FIXED OVERFLOW O'M"mq#p##}o"m*}o|-M'NN+w+w+r+s4w#w#s#r<2m++*ms#r"m*m#"m*mDM!mx~M#~+M+F+Nq#p*m+"mʑMM=«M!+~O~#~G!/xMyM >O6# M ʺM=ɯ ~#fo++iM!m~#N*m`MN=NNON  Insufficient Memory$ Invalid I/O List End of Execution$dNb bb 2. ADM-31, Ampex Dialog 80 13. NEC 3. ADM-3, -5 14. SOROC 4. Apple (24 x 80) 15. TRS-80 II (Lifeboat) 5. Cromemco 3102 16. TRS-80 II (P & T) 6. HDS 108 17. Televideo 910, -12, -20 7. HP 80 Series 18. Televideo 925, -50 8. HP 2621, 125 19. Vector Graphics 9. Hazeltine 1500 20. Visual 100 10. Heath 89 21. Xerox 820 ?0C#~0C! p! y! q<4C<ͰBɯ~#N#F#w#q#pͧB͗B~^C#!!6C! 6?<ʙC= _!xڍC“CFNlCwxG>O>G!$q#p#6ûC"m"m2mx2m͗B2mͧB!m~5_DBD=,D:m,D*m<DͰB,D*m:mO*m:mDy O8D:mİB*mw# 2DͷB:mRD*m!BRD6C*m"mC:m/g.xwD}03|g}o kDxg.>Gx|g}oËD bGbGG!9!yDD)0D1bG# íDyD) DxDMox&9`iG!9!x>E 9E+ EGG#!9OxA4Gwo&9F##*Gx4GwF9GGOIGw# @G 6 #KGo>g{ozg!hGHpGqGrGtGvG Conversion#}OD*m~G##~#fo‹G!GHGGGGG Free Space Exhausted##^#V#{_zWڍH{_zWڐG4zG{H##^#V# ##s#rs#r#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+i`##s#rHNHN FREE Request Out-of-Range$ Free Space Overwrite$GKHMbkHͻJFͺJNͺJN#FͺJ^#V"2Oy21OxIi&VERFLOW UNDERFLOW ZERO DIVIDE END OF FILE UNDEFINED FILE KEYNULCONCONRDRPUNLSTBADG!4O~ڊKoKN Condition Stack Overflow$4Ox!m w#s#r#s#r!9!5O s#r!4ON!m +++++K#{K#zK++~K++!4O5!~# KK!4ON!m +++++ L#~#/L+{*L#z/L++~ L#^#V=!N~͋L5:N_!N^#V"NN.~# ]L*N)))))N )| rL*N|}*UO"N:N*NNw# ˜L*UO{ ҲL ¶L!#"UOLCopyright (c) 1980 Digital Research, v1.3 !"m"m"m24O2N*m SYSINSYSPRINT  ( (  ( ( ( ( ( ( ( ( ) ' /TBMEQSVH@#.-DI5NPAK_FL dBASE II ZIP: copyright 1982 Hal Pawluk. TERMINAL INSTALLATION 0. To install an unlisted terminal. 1. ADDS Viewpoint,Regent 12. INTERTEC SuperBrain, CompuStar 11. IBM 3101 22. SKIP to ZIP commands for previously installed terminal.If your terminal is listed, enter the number then .Enter 22 to change ZIP command defaults only.Enter 0 for the first installation of an unlisted terminal. 09Will install user-supplied sequences.fEnter C to CHANGE symbols, F if FINISHED.CcType C to CHANGE entry, any other key to continue. Type the symbol or number you want to change: az?Enter new value (0 - 127), then : Now type the replacement symbol or number: 1[]RESERVED--Enter alternate choice: ZIP: copyright 1982 Hal Pawluk : DISPLAY variable. : GET variable.[] : RESERVED for EMBEDDED COMMANDS : Command lead-in marker. : HELP during ZIP session. : Middle of line : Top of screen. : Bottom of screen. : Previous screen. : Next screen. : First screen. : Last screen. : Delete character. : Insert space. : Kill cursor line. : Add line at cursor. : Draw/Erase vertical line. : Draw/Erase horizontal line. : ERASE screen data. : SAVE ually 2 or more characters) * DIRECT CURSOR POSITIONING (often 4, 6 or more characters) * CURSOR ARROWS (usually 1 or 2 characters)You may enter up to 11 characters for each sequence, using any characters(printing or non-printing) except RETURN. ZIP will accept the charactersonly, not the ASCII codes or names for the characters. Use the translationchart in the ZIP manual to find the keys to press if your sequences aregiven as decimal or hexadecimal codes or ASCII names. To entesing the single key. First enter the lengthof the sequence, then enter the characters one at a time. Press any key to install the control sequences. (Use the carriage after entering the length of a sequence.)First, CLEAR SCREEN & HOME CURSOR, current value (Type "Y" if the screen cleared.Otherwise, press any key: YyNow the sequence to POSITION THE CURSOR, often like this on ASCII terminals Most terminals send the ROW and COLUMN values as single nu you for characters 3 and 4.The current value is (ROW position is character number: 9COLUMN position is character number:  The current value of the OFFSET for the cursor positioning codes is: Do you want to change it (Y or N)? Enter new value (0-199), then : CURSOR UP, current value (CURSOR DOWN, current value (CURSOR RIGHT, current value (CURSOR LEFT, current value (Some terminals, like the Hazeltine 1500, needa short delay after the screen is cleared orthe first few dozen characters will not beditinue. Cc+e.eX`XX;eX@eKeX`ReX` Y  ;= *DCABYour terminal has been installed with the standard APPLE cursor controls: INSTALLED: YOU MAY PREFER: CURSOR RIGHT = ESC A control-D CURSOR LEFT = ESC B control-S CURSOR DOWN = ESC C control-X CURSOR UP = ESC D control-E"Cursor lock" does not work with ZIP, but you can speed up cursor movementby installing thscreen, write .CMD/.FMT files. : QUIT to system. : Display this screen.The following values can also be changed dynamically while running ZIP: : Vertical marker. : Horizontal marker. : Tab spacing (1-9). : Margin sNPWsNPPP          We'll need the following control sequences for your terminal: * CLEAR SCREEN & HOME CURSOR (usr a control function, hold the control key down and press thecharacter key shown in the chart in the ZIP manual. To enter control-L,hold down the control key and press "L". To enter ESCAPE, type control-[or simply press the ESC key. If your arrow keys send single characters,enter a length of "1" and press the appropriate arrow key. On some terminals a single key (such as CLEAR or the ARROWS) may senda sequence of two or more characters. These must be entered one characterat a time rather than by presmbers, but some(e.g., HP125, VT100) send the digits individually. The value for ROW 20for example, would be sent as "2" then "0", rather than "20".Does this terminal send individual digits for positioning (Y or N)? Most terminals do NOT, so if you're not certain try "N".1N0For both types of addressing, enter a "0" at the positions in the sequenceswhere the and values go. For the sample at the top of thisscreen, the length would first be entered as "4", then "0" would be enteredwhen ZIP askssplayed at the top of the screen.Most terminals do NOT need this delay, andZIP will run faster if the delay (about 45milliseconds) is not installed.Do you want to install the delay now? Does your keyboard have a BACKSPACE keythat erases characters (Y or N)? (Enter any key except "Y" if you do not wantyour backspace key to erase.) Please check the manual for your terminal.Your terminal may require a lead-in character that you over-looked when entering the sequence.Type C to CHANGE entry, any other key to cone control functions shown on the right. You'll find thatthe "diamond" arrangement is easier to use. The simplest way to install these is to type "F" at the end of thenext screen, then go through ZIPIN again, but this time choose the custominstallation sequence. ZIP will have installed the CLEAR SCREEN & HOME CURSOR and DIRECTCURSOR POSITIONING sequences, and you can skip by them using the carriagereturn. Install the control codes as described in the ZIP manual. Answer "NO" to the other questions about CURSOR POSITIONING, BACKSPACE,terminal DELAY, and terminal INITIALIZATION and TERMINATION sequences. Press any key to continue. E ?a <=>HJH&ay C&s1a&s0a~~ EHL  [; H  ESC  ). to leave it unchanged orEnter the sequence length (1-11), then : 09Okay, it is then.Character: RESERVED CHARACTER--try again.ESCaz1Type Cmmmll'm)m0m+mm/l:l;l=l?lAl Stream/Record Sequen/Direct Input/Output Keyed Access P< $conllN{lClQl_lmlllll lllll llllllll.dat***** File SCREEN *** ******************************************************************************** * INVOICE NO. 000001 * * * * TO: FROM: * * NAME @NAME ASHTON-TATE DESCRIPTION | PRICE * *-------+------------------------------------------------------+---------------* * 1 | ZIP | $$$$$.00 * *-------+------------------------------------------------------+---------------* * | THE GREAT NEW SCREEN BUILDER FROM ASHTON-TATE | * *-------+------------------------------------------------------+---------------* * | * SCREEN.CMD ERASE @ 1, 0 SAY "********************************************************************************" @ 2, 0 SAY "* INVOICE NO. 000001 *" @ 3, 0 SAY "* *" @ 4, 0 SAY "* TO: FROM: *" @ 5, 0 SAY "* NAME" @ 5,12 SAY NAME @ 5,49 SAY "ASHTON-TATE *" @ 6, 0 SAY "* to CHANGE entry, any other key to continue. Cc `k Ok hk kk tkukNvkxk Invalid Format Item 1}W1=e 0s'0W.0V500֟/l:l;l=l?lAl Stream/Record Sequen/Direct Input/Output Keyed Access P< $conllN{lClQl_lmlllll lllll llllllll.dat* * ADDRESS @ADDRESS 9929 W. JEFFERSON BLVD. * * CITY @CITY CULVER CITY, CA 90230 * * STATE @STATE * * ZIPCODE @ZIPCODE * * * *==============================================================================* * QTY. | TAX | $$.00 * *-------+------------------------------------------------------+---------------* * | TOTAL | $$,$$$.00 * ******************************************************************************** YOU ASKED FOR IT, YOU GOT IT.  * *-------+------------------------------------------------------+---------------* * | ADDRESS" @ 6,12 SAY ADDRESS @ 6,49 SAY "9929 W. JEFFERSON BLVD. *" @ 7, 0 SAY "* CITY" @ 7,12 SAY CITY @ 7,49 SAY "CULVER CITY, CA 90230 *" @ 8, 0 SAY "* STATE" @ 8,12 SAY STATE @ 8,79 SAY "*" @ 9, 0 SAY "* ZIPCODE" @ 9,12 SAY ZIPCODE @ 9,79 SAY "*" @ 10, 0 SAY "* *" @ 11, 0 SAY "*==============================================================================*" @ 12, 0 SAY "* QTY. | DESCRIPTION | PRICE *" @ 13, 0 SAY "*-------+------------------------------------------------------+---------------*" @ 14, 0 SAY "* 1 | ZIP | $$$$$.00 *" @ 15, 0 SAY "*-------+------------------------------------------------------+---------------*" @ 16, 0 SAY "* | THE GREAT NEW SCREEN BUILDER FROM ASHTON-TATE | *" @ 17, 0 SAY "*-------+----------------------------- ********************************************************************************* INVOICE NO. 000001 ** ** TO: FROM: ** NAME @NAME ASHTON-TATE ** ADDRESS @ADDRESS PRICE **-------+------------------------------------------------------+---------------** 1 | ZIP | $$$$$.00 **-------+------------------------------------------------------+---------------** | THE GREAT NEW SCREEN BUILDER FROM ASHTON-TATE | **-------+------------------------------------------------------+---------------** | TAX | $$.00 **-------+-------=C*""."|2:22*!~>:w## y4*" "X(f{Ây͏*#b"#b"# b""*"n" ")*>w#ls#r:v{y͂G>2îDBASE COM̈́>2̈́  dBASE.COM not on logged drive or A:$ͷ!:e2e*_*a"cOfE D I T A P P E N D H E L P G O T O B R O W S E F I N D L O C A T E L I S T D I S P L A Y D I S P L A Y S T R U C T U R ER E C A L L E R A S E D I S P L A Y S T A T U SD E L E T E G O T O T O PG O T O B O T T O MS E L E C T P R I M A R YS E L E C T S E C O N D A R YQ U I T-------------------------+---------------*" @ 18, 0 SAY "* | TAX | $$.00 *" @ 19, 0 SAY "*-------+------------------------------------------------------+---------------*" @ 20, 0 SAY "* | TOTAL | $$,$$$.00 *" @ 21, 0 SAY "********************************************************************************" @ 22,22 SAY "YOU ASKED FOR IT, YOU GOT IT." RETURN 9929 W. JEFFERSON BLVD. ** CITY @CITY CULVER CITY, CA 90230 ** STATE @STATE ** ZIPCODE @ZIPCODE ** **==============================================================================** QTY. | DESCRIPTION |-----------------------------------------------+---------------** | TOTAL | $$,$$$.00 ********************************************************************************* YOU ASKED FOR IT, YOU GOT IT. ---------------+---------------** | TAX | $$.00 **-------+-------"*!9|=6"+ A Application too large to load.$Ns#Fr#m͉{͉‚Ò͌Q*""###"XxʻxG{G{G*+~*W!*Ъ͂**#b*#b*#b*>w#w#w@4>G:e:\>F:eYY>> :\{*]F#~2\"]x({ʹʾ!(G#~ ž#F#~2\x"]:(:2Of:2Of:e>2e*a"cf*c+"c|(f{Âq.*#b"#b"# b""*"n" ")*>w#ls#r:v{y͂G>2îDBASE COM̈́>2̈́  dBASE.COM not on logged drive or A:$ A!"*!9|=6"+ A Application too large to load.$Ns#Fr#m͉{͉‚Ò *""###"XxʻxG{G{G*+~*W!*Ъ͂**#b*#b*#b*>w#w#w@4>G:e:\>F:eYY>> :\{*]F#~2\"]x({ʹʾ!(G#~ ž#F#~2\x"]:(:2Of:2Of:e>2e*a"cf*c+"c|:e2e*_*a"cOfE D I T A P P E N D H E L P G O T O B R O W S E F I N D L O C A T E L I S T D I S P L A Y D I S P L A Y S T R U C T U R ER E C A L L E R A S E D I S P L A Y ;-------------------------------------------------------------------- ; ;PROGNAME=DBLOADER.ASM ; ;Copyright 1982 by NorthStar Computers Inc. v 9/2/82 #1 ; ;-------------------------------------------------------------------- ;PROGRAM ; DBLOADER INSTALLS DBASEIO, A CUSTOM I/O AREA FOR THE ; ADVANTAGE VERSION OF dBASE AND LOADS dBASE.COM ; ;-------------------------------------------------------------------- ;USAGE ; THIS MODULE IS THE LOADER PORTION OF ADB.COM ; ;------------------------ ; ;-------------------------------------------------------------------- ;EXAMPLE ; ADB ; DBLOADER INSTALLS DBASEIO, THEN dBASE ; WITH CONTROL FINALLY TRANSFERRING TO dBASE. ; ;--------------------------------------------------------------------- ;BUGS ; NONE AS OF 9/2/82. ;-------------------------------------------------------------------- ; ;-------------------------------------------------------------------- ; *** INSTRUCTIONS FOR BUILDING ADB.COM *** ;---------------------------DBASEIO1.ASM from DBASEIO2.ASM by just ; changing the ORG to 0F400 and saving into DBASEIO2.ASM. ;-------------------------------------------------------------------- ; ;-------------------------------------------------------------------- ; *** CODE STARTS HERE *** ;-------------------------------------------------------------------- ; ORG 100H START: JMP BEGIN CURST: DB 1 ;Cursor lock state on entry, 1=on 0=off. DEST: DS 2 ;BDOS-500H stored here. RELOC: DS 1 ;Relocatio S T A T U SD E L E T E G O T O T O PG O T O B O T T O MS E L E C T P R I M A R YS E L E C T S E C O N D A R YQ U I T:e2e*_*a"cOfE D I T A P P E N D H E L P G O T O B R O W S E F I N D L O C A T E L I S T D I S P L A Y D I S P L A Y S T R U C T U R ER E C A L L E R A S E D I S P L A Y -------------------------------------------- ;FUNCTION ; DBLOADER INSTALLS A MODULE CONTAINING THE FOLLOWING ROUTINES: ; 1) CONSOLE STATUS ; 2) CONSOLE INPUT ; 3) CURSOR LOCK SET ON ENTRY TO dBASE ; AND RESET ON EXIT FROM dBASE ; 4) KEY CLICKS TOGGLE ; 5) SMOOTH SCROLL TOGGLE ; 6) BLINKING CURSOR TOGGLE ; ; THE I/O MODULE IS INSTALLED AT CP/M's BDOS-500H AND IS PROTECTED ; BY HAVING THE JUMP AT 5 POINT TO THE BASE OF THIS CODE. AT THE ; BASE OF THIS CODE IS A JUMP TO THE ACTUAL BDOS. ----------------------------------------- ; ; 1) DDT DBLOADER.HEX Places DBLOADER in ram at 100h ; 2) IDBASEIO1.HEX (this is the one orged at F400) ; RE00 Places BDASEIO1 in ram at 200h ; 3) IDBASEIO2.HEX (this is the one orged at 00) ; R700 Places DBASEIO2 in ram at 700h ; 4) ^C ; SAVE 11 ADB.COM ; ; NOTE - Drive designators may be required depending on ; where the various modules are located. ; ; Also edit just DBASEIO2.ASM as needed. Then create the ; new copy of n factor stored here. BEGIN: LHLD 6 ;Old BDOS pointer SHLD START+101H ;placed at beginning SHLD START+601H ;of DBASEIO modules. LXI D,-500H ;Calculate base address of DAD D ;DBASEIO module MVI L,0 ;Make sure DBASEIO ends up SHLD DEST ;at the highest page possible. SPHL ;Set up our own stack. MOV A,H STA RELOC ;This is the relocation constant. LDA CURST ;Now place the desired state STA START+115H ;of the Cursor Lock Key STA START+615H ;after the jump table in DBASEIO ; ;-------------------------------------------------------------------- ; *** NOW RELOCATE DBASEIO CODE *** ;-------------------------------------------------------------------- ; LXI B,500H ;Number of bytes to relocate. LHLD DEST ;Point to destination. PUSH H ;Three 16 bit register pairs are needed. LXI H,START+600H ;Pt to 1st byte of DBASEIO2, org = 00h. LXI D,START+100H ;Pt to 1st byte of DBASEIO1, org = f400h. ; ;-----------------------------------------------------------ired get ready to JZ NORELOC ;move the byte; LDA RELOC ;else get the relocation constant ADD M ;and add it to produce the correct value. NORELOC: XTHL ;Point to destination MOV M,A ;and move the byte. INX H ;Increment the destination pointer. XTHL INX H ;Increment the source pointers. INX D DCX B ;Decrement the counter of MOV A,C ;bytes to move. ORA B JNZ LOOP ; ;-------------------------------------------------------------------- ; *** ADJUST VARIOUS JMPS IN CP/M TO ;-------------------------------------------------------------------- ; ;PROGNAME=DBASEIO2.ASM ; ;Copyright 1982 by NorthStar Computers Inc. v 9/2/82 - 11:36 AM ; ;-------------------------------------------------------------------- ;PROGRAM ; DBASEIO, A CUSTOM I/O AREA FOR THE ADVANTAGE VERSION OF dBASE ; ;-------------------------------------------------------------------- ;USAGE ; HANDLES ALL KEYBOARD INPUT TO THE ADVANTAGE VERSION OF dBASE ; ALSO HANDLES ALL EXITS FROM dBASE ; ;----UAL BDOS. ; ;-------------------------------------------------------------------- ;EXAMPLE ; SINCE THIS CODE IS INSTALLED BY DBLOADER IT IS USED ONLY ; WHEN THE ENHANCED ADVANTAGE dBASE IS USED. ; ;--------------------------------------------------------------------- ;BUGS ; NONE KNOWN AS OF 9/2/82 ; ;-------------------------------------------------------------------- ; ;-------------------------------------------------------------------- ; *** CODE STARTS HERE *** ;-------------- ; Relocation occurs by comparing on a byte for byte basis the ; contents of two copies of DBASEIO that differ only in their ; origins. If bytes match move the byte from the origin 0 file ; if they don't match add the relocation constant to the byte ; from the origin 0 file and then move it. ;-------------------------------------------------------------------- ; LOOP: LDAX D ;Byte from origin f400h file. CMP M ;Compare with byte from origin 00h file. MOV A,M ;If no relocation requPOINT TO CORRECT LOCATIONS *** ;-------------------------------------------------------------------- ; LHLD DEST ;Protect DBASEIO by passing BDOS SHLD 6 ;calls through its 1st three bytes. LXI D,0CH DAD D ;Point to initialization routine SHLD INIT+1 ;in DBASEIO INIT: JMP $-$ ;Jump to init code of DBASEIO. ZEND: END ;End of this module. RA B JNZ LOOP ; ;-------------------------------------------------------------------- ; *** ADJUST VARIOUS JMPS IN CP/M TO ---------------------------------------------------------------- ;FUNCTION ; DBASEIO IS A MODULE CONTAINING THE FOLLOWING ROUTINES: ; 1) CONSOLE STATUS ; 2) CONSOLE INPUT ; 3) CURSOR LOCK SET ON ENTRY TO dBASE ; AND RESET ON EXIT FROM dBASE ; 4) KEY CLICKS TOGGLE ; 5) SMOOTH SCROLL TOGGLE ; 6) BLINKING CURSOR TOGGLE ; ; THIS MODULE IS INSTALLED AT CP/M's BDOS-500H AND IS PROTECTED ; BY HAVING THE JUMP AT 5 POINT TO THE BASE OF THIS CODE. AT THE ; BASE OF THIS CODE IS A JUMP TO THE ACT--------------------------------------------------------------- ORG 00H ;origin of this module HERE: JMP HERE ;HERE is overlayed with addr of BDOS JEXIT: JMP EXIT ;1,2 point to here NCONST: JMP CONST NCONIN: JMP CONIN JMP INIT JMP CURSORLKON JMP CURSORLKOF CURST: DS 1 ;Cursor Lock Flag stored here. OWBOOT: DS 2 ;Dispatch addr at original BIOS warm boot. OCONST: DS 2 ;Dispatch addr at original BIOS constat. OCONIN: DS 2 ;Dispatch addr at original BIOS conin. ; ;-------------------------------------------------------------------- ; *** INITIALIZATION ROUTINE *** ;-------------------------------------------------------------------- ; ; The first part of this section saves the BIOS dispatch ; addresses for warm boot, constat, and conin and replaces ; them with pointers to JEXIT, NCONST, and NCONIN which are ; in this module (see above). ; INIT: LHLD 1 INX H LXI D,JEXIT CALL SWAP SHLD OWBOOT XCHG ;So that H/L again points to INX H ;next BI A,0C3H ;Implant a jump to MOV M,A ;our routine so as to INX H ;properly deal with a ^C LXI D,DISKER ;after a disk error. MOV M,E INX H MOV M,D LDA CURST ;Now set the cursor lock PUSH PSW ;key as per user request. ANA A JZ OFF CALL CURSORLKON JMP TOGGLE OFF: CALL CURSORLKOF TOGGLE: POP PSW MOV B,A MVI A,1 SUB B STA CURST ; ;-------------------------------------------------------------------- ; THIS SECTION LOADS dBASE .COM AT 100H AND TRANSFERS CONTROL TO.COM not on logged drive or A:$' ; ; *** READ ROUTINE *** ; READ: LXI D,FCB MVI C,14H CALL 5 RET ; DMAAD: DS 2 L20: LXI H,80H ;Set DMA address to 80h SHLD DMAAD ;and increment by 80h LOOP1: ;each time through the loop. LXI D,80H LHLD DMAAD ;This will place the loaded DAD D ;program at 100h. PUSH H LXI H,0 DAD SP MOV A,H DCR A POP H ;Make sure loading process CMP H ;doesn't overwrite JZ TOBIG ;this module. SHLD DMAAD XCHG ------- ; ; Bytes pointed to by H/L end up in H/L and bytes in D/E end up ; at locations pointed to by H/L at the call to SWAP. ; Upon return D/E contains pointer sent in H/L. ; SWAP: MOV C,M MOV M,E INX H MOV B,M MOV M,D INX H XCHG ;H/L <---> D/E PUSH B POP H RET ; ;-------------------------------------------------------------------- ; *** TRAP DISK ERRORS HERE *** ;-------------------------------------------------------------------- ; DISKER: RNZ *** ;-------------------------------------------------------------------- ; CURSORLKOF: CALL CURSOR JNZ CURSORLKOF RET ; ;-------------------------------------------------------------------- ; *** ACTUAL CODE TO TOGGLE CURSOR LOCK *** ;-------------------------------------------------------------------- ; IOSR2 EQU 0D0H ;Address of I/O status register 2. CURSOR: JMP START ;Skip storage. USERAD: DS 2 ;Save address of USER area here. RDREG: DS 2 ;Address of JMP RDREG iOS entry and INX to point LXI D,NCONST ;to the 'dispatch' address. CALL SWAP SHLD OCONST XCHG INX H LXI D,NCONIN CALL SWAP SHLD OCONIN XCHG SHLD CONOUT+1 ;This will avoid a recursive LHLD 1 ;BDOS call. LXI D,700H+200H-3 ;Now build pointer DAD D ;to upper BIOS. SHLD CONSOLI1+1 SHLD CONSOLI+1 ;See listing of GCP/M's LXI D,0CH ;USER.ASM to see where I DAD D ;got these addresses from. SHLD OFTENS+1 LHLD 1 LXI D,6EAH-3 DAD D ;Point to DISKERR in BIOS MVI IT ;-------------------------------------------------------------------- ; JMP L10 ; ; *** OPEN ROUTINE *** ; OPEN: MVI C,0FH ;Open LXI D,FCB CALL 5 RET FCB: DB 0,'DBASE COM' DB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 ; L10: CALL OPEN ;First check currently logged drive. CPI 0FFH JNZ L20 MVI A,1 ;If not there check drive A. STA FCB CALL OPEN CPI 0FFH JNZ L20 MVI C,9 ;dBASE not found. LXI D,MSG1 CALL 5 JMP 0 MSG1: DB 0DH,0AH,'dBASEMVI C,1AH CALL 5 CALL READ ORA A JNZ L30 JMP LOOP1 ; ; *** CLOSE ROUTINE *** ; L30: MVI C,10H LXI D,FCB CALL 5 JMP 100H ;Now go to the application at 100h ; TOBIG: MVI C,9 LXI D,MSG2 CALL 5 JMP 0 MSG2: DB 0DH,0AH,'Application too large to load.$' ; ;-------------------------------------------------------------------- ;*** THIS ROUTINE SWAPS BYTES POINTED TO BY H/L WITH BYTES IN D/E *** ;-------------------------------------------------------------RETRY: CONSOLI1: CALL $-$ CPI 01H ;^A - force acceptance of bad data RZ CPI 03H ;^C - force normal warm boot JZ EXIT JMP RETRY ; ;-------------------------------------------------------------------- ; *** TURN ON CURSOR LOCK *** ;-------------------------------------------------------------------- ; CURSORLKON: CALL CURSOR JZ CURSORLKON RET ; ;-------------------------------------------------------------------- ; *** TURN OFF CURSOR LOCK n upper BIOS. WRREG: DS 2 ;Address of JMP WRREG in upper BIOS. ; START: LHLD 1 ;Get address of BIOS+3. LXI D,700H-3 ;Displacement to USER area. DAD D ;Add the two to point to SHLD USERAD ;the USER area. LXI D,206H ;Displacement from USER to JMP RDREG. DAD D ;Store the address of this jump for SHLD RDREG ;use in this module. INX H ;Now do the same for INX H ;JMP WRREG. INX H SHLD WRREG DI ;Be safe and disable interrupts. CURL1: CALL RDREG1 ;Determine the last command sent to the 8035 MOV E,B ;and save it in E for future use. MOV A,B ;If it wasn't a 4 (toggle cursor) then ANI 04H ;skip ahead else send a different command JZ AGAIN ;to the 8035 - 0 is safe. MOV A,B ;Build the command to send ANI 0F8H ;with the 5 high order bits = to those MOV B,A ;just read, plus command bits = 0. CALL WRIOC ;Now send it. AGAIN: MOV A,E ;Now build the toggle cursor command. ANI 0F8H ;Use the same 5 high order bits as before; ORI 04H ;cursor locre to be reenabled MOV A,M ;before finally exiting. ANI 10H JZ NOINT EI NOINT: POP PSW RET ; ; *** SUBROUTINE TO READ THE I/O CONTROL REGISTER *** ; RDREG1: MVI C,4H ;Code to access I/O control register. LHLD RDREG ;Address of RDREG to H/L. PCHL ;Now do it - will return properly. ; ; *** SUBROUTINE TO SEND A COMMAND TO THE 8035 *** ; WRIOC: IN IOSR2 ;Read I/O status register 2 MOV D,A ;to get at its command acknowledge bit. MVI C,4 ;Code to access I/------------------------------------------------- ; EXIT: CALL CURSORLKOF LHLD OWBOOT XCHG LHLD 1 ;Restore dispatch to warm boot, INX H CALL SWAP LHLD OCONST ;constat, XCHG INX H CALL SWAP LHLD OCONIN ;conin. XCHG INX H CALL SWAP LHLD 1 ;Now restore LXI D,6EAH-3 ;DISKERR in BIOS DAD D ;to its MVI A,0C9H ;original state. MOV M,A INX H XRA A MOV M,A INX H MOV M,A JMP 0 ;Then go to CP/M. ; ;-----------------------------------------------------------ERVICE OFTEN FOR SCROLL, ETC. IN 0D0H ;INTERROGATE KEYBOARD STATUS ANI 040H ;TEST KEYBOARD READY BIT JZ CONST1 ;NO DATA, RETURN WITH A=0 MVI A,0FFH ;DATA WAITING, SEND FF CONST1: MOV B,A ;save for final OR of statuses LDA CSTATE ORA A ;Service cursor blink CNZ BLINK ;NZ-yes, attend to blink, else skip it LDA NCHAR ;test for key ready from table ORA A ;MSB=1 not from table, =0 read from table MVI A,0FFH ;assume table read JP CONST2 ;P -read from table XRA A ;M -not fray count for blinking cursor ONDLY: DW 0B00H ;on delay count COUNT: DW 0B00H ; dcrm to zero means toggle cursor state CSTATE: DB 00H ;current state of blinking cursor ( on=CON, off=COFF) ; (0=disabled) ; ;-------------------------------------------------------------- ; **** CONSOLE INPUT **** ;-------------------------------------------------------------- ; CONIN: LDA NCHAR ;Key available from table? ORA A JM CONIN1 ;M -no, get from keybd (NOT available from tk toggle command = 4 & MOV B,A ;value to write is sent in B. CALL WRIOC ;Send it to the I/O control register. ANI 01H ;Look at bit 0 to determine the present ; ;state of the cursor lock. PUSH PSW ;Save this state and MOV A,E ;send a 0 command. ANI 0F8H ;This is either the last command or MOV B,A ;it is between toggles CALL WRIOC ;to the I/O control register. POP PSW ;Now see if the cursor lock is on. LHLD USERAD ;Now check the OPTION byte to see if DCX H ;interrupts aO control register. LXI H,AWRREG ;Save return address on the stack PUSH H ;for the return from the CALL to LHLD WRREG ;WRREG. PCHL AWRREG: ;Value sent in B. WAIT: IN IOSR2 ;Wait until the command XRA D ;acknowledge bit JP WAIT ;complements. IN IOSR2 ;Bit 0 indicates the current stae of the RET ;cursor lock (1=on 0=off). ; ;-------------------------------------------------------------------- ; *** ROUTINE THAT HANDLES THE EXIT FROM dBASE *** ;---------------------------- ; CMDS: EQU 0D3H ;COMMAND S ;Smooth scroll toggle CMDC: EQU 0C3H ;COMMAND C ;Blinking cursor toggle CMDK: EQU 0CBH ;COMMAND K ;Key clicks toggle ; ;-------------------------------------------------------------------- ; **** CONSOLE STATUS TEST FOR DATA READY **** ;-------------------------------------------------------------------- ; ; Return result of Keyboard OR Table ready ; CON: EQU 18H ;cursor on code COFF: EQU 19H ;cursor off code ; CONST: OFTENS: CALL $-$ ;Som table CONST2: ORA B ;combine two flags RZ ;Z -no key ready LDA CSTATE ;NZ-something is ready, ensure cursor on ORA A JZ CONST4 ;Z -not in blinking state= cursor on, return ready CPI CON JZ CONST4 ;Z -cursor on, return ready MVI A,CON CALL SETCURSOR ;turn on CONST4: MVI A,0FFH RET ;return constat true, key available ; NCHAR: DB 0FFH ;MSB=1 don't read from table @PTR, =0 read from table PTR: DW $-$ ;pointer to next possible table data code ; OFFDLY: DW 0C00H ;off delable) ; P -yes, get from table LHLD PTR ;HL--> next table datum MOV B,M ;B=next datum INX H ;Advance pointer MOV A,M ;A=next possible datum or next data code. STA NCHAR ;Set table data availability flag. ; ; If MSB of NCHAR =1, automatically signals end of table input. ; If " =0, NCHAR is next item of table-supplied ASCII text. ; ; /table code/ ...ascii data... /table code/ ...ascii data.../0FFH/ ; msb=1 msb=0 msb=1 msb=0 msb=1 ; end of table ; SHLD PTR ;Save advanced pointer (only used if points to ; table data element with MSB=0). MOV A,B RET ;A=next element of ASCII data from table ; CONIN1: CALL CONST ;STATUS is just of KEYB, not table! ORA A ;key ready from KEYBD? JZ CONIN1 ;Z -no, wait for one CONSOLI: CALL $-$ ;A=new key ; ;Test for key being in one of three sets using CPI 7F: ; ; 00-7E 7F 80-FE ; z ; c ; ascii New commands and changes to dBASE II version 2.31 New commands: HELP - user aid command REINDEX - rebuild index file TEXT - display multiple lines of text, terminated by ENDTEXT Supplemented Commands: APPEND, INSERT, EDIT, CREATE - can use a format file for screen control BROWSE - can be given a list of fields to work with DISPLAY STATUS - shows databases/indexes in use and SET settings READ & REPLACE - can be directed to NOT update indexes via NOUPDATE RELEASE - can re']] [GET [PICTURE '']] can be numeric expressions or $+ for relative addressing e.g. @ $,$+5 say 'HI' Possible error messages: SYNTAX ERROR IN FORMAT SPECIFICATION VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END *ACCEPT > ACCEPT - allows input of character strings into memory variables ACCEPT [""] TO Possible error messages: SYNTAX ERROR IN FORMAT SPECIFICATION "TO" possible execution path in a DO CASE structure CASE e.g. DO CASE CASE X=1 . any statements . CASE X=" . any statements . OTHERWISE . any statements . ENDCASE *END *CHANGE > CHANGE - edit columns of fields CHANGE FIELD [] [FOR ] Possible error messages: "FIELD" PHRASE NOT FOUND VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END *CLEAR > Clear out database files in use OR screen elling. *END *COUNT > COUNT - count the number of records that meet some conditional expression COUNT [] [FOR ] [TO ] Possible error messages: OUT OF MEMORY FOR MEMORY VARIABLES Reduce the number or size of memory variables. *END *CREATE > CREATE - create new structured database files CREATE [] Possible error messages: BAD DECIMAL WIDTH FIELD BAD FILE NAME Syntax error in filename. BAD NAME FIELD BAD TYPE FIELD Must be C, N, or L.KE ] DISPLAY STATUS *END *DO > DO - causes command files to be executed and allows structured loops in command files DO DO WHILE DO CASE Possible error messages: COMMAND FILE CANNOT BE FOUND Check spelling. NESTING LIMIT VIOLATION EXCEEDED *END *EDIT > EDIT - alter specific data fields in a database EDIT [] Possible error messages: RECORD OUT OF RANGE Record number greater than number of records in database. The Recorlease subsets of memory variables RESTORE - can restore additively to existing memory variables SAVE - can save subsets of memory variables SET RAW ON - eliminates extra spaces in DISPLAY and ? commands UPDATE - replace clause can have WITH phrases *END *? *?? > ? - displays an expression list ? [,] > ?? - display an expression list without a preceeding line eject *END *@ > @ - displays user formated data on CRT or printer @ [SAY [USING 'PHRASE NOT FOUND *END *APPEND > APPEND - append dBASE files or files in System Data Format (SDF) or delimited files APPEND [FROM [SDF] [DELIMITED [WITH ]] [FOR ]] or [BLANK] Possible error messages: VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END *BROWSE > BROWSE - full screen window viewing and editing BROWSE [] *END *CANCEL > CANCEL - cancels command file execution CANCEL *END *CASE > CASE - one variables CLEAR [GETS] *END *CONTINUE > Continue the action of a LOCATE command CONTINUE *END *COPY > COPY - copy existing databases to create copies COPY TO [] [FIELD ] [FOR ] [SDF] [DELIMITED [WITH ]] or [STRUCTURE] NOTE: COPY always destroys the previous contents of the TO file Possible error messages: BAD FILE NAME Syntax error in filename. "TO" PHRASE NOT FOUND VARIABLE CANNOT BE FOUND Need to create the variable, or check the sp BAD WIDTH FIELD RECORD LENGTH EXCEEDS MAXIMUM SIZE (OF 1000) SYNTAX ERROR IN FORMAT SPECIFICATION VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END *DELETE > DELETE - delete files and mark records for deletion DELETE [] [FOR ] DELETE FILE *END *DISPLAY > DISPLAY - displays records, fields, and expressions DISPLAY [] [FOR ] [] [OFF] DISPLAY STRUCTURE DISPLAY MEMORY DISPLAY FILES [ON ] [LId doesn't exist. SYNTAX ERROR IN FORMAT SPECIFICATION VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END *EJECT > EJECT - ejects a page on the list device EJECT *END *ELSE > ELSE - alternate path of command execution within IF ELSE *END *ENDCASE > ENDCASE - terminate a CASE structure ENDCASE *END *ENDDO > ENDDO - terminator for DO WHILE command ENDDO *END *ENDIF > ENDIF - terminator for IF command ENDIF *END *ERASE > ERASE - clears the CRT ERASE *END *FIND > FIND - positions to record corresponding to a key on indexed files FIND or FIND '' Possible error messages: DATABASE IN USE IS NOT INDEXED FIND is only permitted on indexed databases. NO FIND More a diagnostic type message than an error message. dBASE couldn't find the key. *END *GO *GOTO > GOTO - position to a specific record GO or GOTO [RECORD], or [TOP], or [BOTTOM], Possible error messages: RECORD NOT IN INDEX - full screen window viewing and editing > CANCEL - cancels command file execution > CASE - one possible execution path in a DO CASE structure > CHANGE - edit columns of fields > CLEAR - Clear out database files in use OR screen variables > CONTINUE - Continue the action of a LOCATE command > COPY - copy existing databases to create copies > COUNT - count the number of records that meet some > CREATE - create new structured database files > DELETE - delete files and mark records for deletion > D GOTO - position to a specific record > IF - allows conditional execution of commands > INDEX - creates an index file > INPUT - allows input of expressions into memory variables > INSERT - insert data into a file > JOIN - outputs the JOIN of two databases > LIST - identical to the DISPLAY command except that the default scope > LOCATE - find a record that fits a condition > LOOP - skips to beginning of DO WHILE > MODIFY - allows editing of command files and database structures > PACK - removes sets of stored memory variables > RETURN - ends a command file > SAVE - copy the memory variables to mass storage > SELECT - switches between USE file > SET - sets dBASE control parameters > SKIP - position forwards or backwards > SORT - create a copy of a database which is sorted on one of the data fields > STORE - stores expressions into memory variables > SUM - compute and display the sum of an expression > TEXT - heads a block of information for output only > TOTAL - outputs a database of todex file INDEX ON TO Possible error messages: BAD FILE NAME Syntax error in filename. "ON" PHRASE NOT FOUND "TO" PHRASE NOT FOUND *END *INPUT > INPUT - allows input of expressions into memory variables INPUT [""] TO Possible error messages: "TO" PHRASE NOT FOUND *END *INSERT > INSERT - insert data into a file INSERT [BEFORE], or [BLANK] Possible error messages: CANNOT INSERT - THERE ARE NO RECORD Index file was not updated after a record was added. Reindex. RECORD OUT OF RANGE Record number greater than number of records in database. The Record doesn't exist. *END *HELP > ? - displays an expression list > ?? - display an expression list without a preceeding line eject > @ - displays user formated data on CRT or printer > ACCEPT - allows input of character strings into memory variables > APPEND - append dBASE files or files in System Data Format (SDF) or delimited files > BROWSEISPLAY - displays records, fields, and expressions > DO - causes command files to be executed and allows structured loops in command files > EDIT - alter specific data fields in a database > EJECT - ejects a page on the list device > ELSE - alternate path of command execution within IF > ENDCASE - terminate a CASE structure > ENDDO - terminator for DO WHILE command > ENDIF - terminator for IF command > ERASE - clears the CRT > FIND - positions to record corresponding to a key on indexed files >records marked for deletion > QUIT - terminate dBASE and return to the system optionally > READ - displays data and prompting information in full-screen mode > RECALL - erases mark for deletion > REINDEX - realigns an old index file > RELEASE - eliminates unwanted memory variables and returns space to dBASE > RENAME - rename a file > REPLACE - replaces data fields with values > REPORT - format and display a report of data > RESET - Reset system to allow diskette swapping > RESTORE - retrieves talled records > UPDATE - allows batch updates of a database > USE - specifies the database file to be used for all operations until another USE is issued > WAIT - suspends command file processing OTHER TOPICS > NEW (FEATURES) > LIMITATIONS (AND CONSTRAINTS) > ERROR (MESSAGES) *END *IF > IF - allows conditional execution of commands IF . . (any statements) . ELSE ] ELSE is optional . ] . (any statements) ] . ] ENDIF *END *INDEX > INDEX - creates an inS IN DATABASE FILE Use the APPEND command instead. SYNTAX ERROR IN FORMAT SPECIFICATION VARIABLE CANNOT BE FOUND Need to create the variable, or check the spelling. *END *JOIN > JOIN - outputs the JOIN of two databases JOIN TO FOR [FIELDS ] Possible error messages: JOIN ATTEMPTED TO GENERATE MORE THAN 65,534 RECORDS The FOR clause allows too many joined output records, make it more stringent. NO "FOR" PHRASE *END *LIST > LIST - identical to the DISPLAY command except that the default scope is ALL records LIST *END *LOCATE > LOCATE - find a record that fits a condition LOCATE [] [FOR ] Possible error messages: NO "FOR" PHRASE *END *LOOP > LOOP - skips to beginning of DO WHILE LOOP *END *MODIFY > MODIFY - allows editing of command files and database structures MODIFY STRUCTURE MODIFY COMMAND Possible error messages: BAD FILE NAME Syntax error in filename. RECORDable, or check the spelling. *END *RECALL > RECALL - erases mark for deletion RECALL [] [FOR ] *END *REINDEX > REINDEX realigns an old index file REINDEX *END *RELEASE > RELEASE - eliminates unwanted memory variables and returns space to dBASE RELEASE [], or [ALL] RELEASE ALL LIKE RELEASE ALL EXCEPT *END *REMARK REMARK *END *RENAME > RENAME - rename a file RENAME TO *END *REPLACE > REPretrieves sets of stored memory variables RESTORE [ADDITIVE] Possible error messages: CANNOT OPEN FILE *END *RETURN > RETURN - ends a command file RETURN *END *SAVE > SAVE - copy the memory variables to mass storage SAVE TO [ALL LIKE ] Possible error messages: BAD FILE NAME Syntax error in filename. "TO" PHRASE NOT FOUND *END *SELECT > SELECT - switches between USE file SELECT [PRIMARY or SECONDARY] *END *SET > SET - sets dBASE control parvariables STORE TO Possible error messages: OUT OF MEMORY FOR MEMORY VARIABLES Reduce the number or size of memory variables. "TO" PHRASE NOT FOUND *END *SUM > SUM - compute and display the sum of an expression over a group of database records SUM [] [TO ] [FOR ] Possible error messages: MORE THAN 5 FIELDS TO SUM NO EXPRESSION TO SUM NON-NUMERIC EXPRESSION *END *TOTAL > TOTAL - outputs a database of totalled recages: BAD FILE NAME Syntax error in filename. END OF FILE FOUND UNEXPECTEDLY The database in USE is not in the correct format. If all records are correct and present, then PACK and re-INDEX the database. INDEX DOES NOT MATCH DATABASE dBASE cannot match the key with the database. Try another index file. INDEX FILE CANNOT BE OPENED Check spelling or INDEX the database. *END *WAIT > WAIT - suspends command file processing WAIT [TO ] *END *@ @( PACK - removes records marked for deletion PACK *END *QUIT > QUIT - terminate dBASE and return to the system optionally starts up other programs QUIT [TO ] *END *READ > READ - displays data and prompting information in full-screen mode READ Possible error messages: SYNTAX ERROR IN FORMAT SPECIFICATION VARIABLE CANNOT BE FOUND Need to create the variLACE - replaces data fields with values REPLACE [] WITH [AND WITH ] Possible error messages: DATA ITEM NOT FOUND SOURCE AND DESTINATION DATA TYPES ARE DIFFERENT *END *REPORT > REPORT - format and display a report of data REPORT [] [FORM ] [TO PRINT] [FOR ] [PLAIN] Possible error messages: SYNTAX ERROR, RE-ENTER *END *RESET > Reset system to allow diskette swapping RESET [] *END *RESTORE > RESTORE - ameters SET [ON], or [OFF] SET ALTERNATE TO SET DEFAULT TO SET DATE TO SET FORMAT TO SET HEADING TO SET INDEX TO SET MARGIN TO *END *SKIP > SKIP - position forwards or backwards SKIP <+/-> [] *END *SORT > SORT - create a copy of a database which is sorted on one of the data fields SORT ON TO [ASCENDING], or [DESCENDING] *END *STORE > STORE - stores expressions into memory ords TOTAL TO ON [FIELDS ] *END *UPDATE > UPDATE - allows batch updates of a database UPDATE FROM ON [ADD ] [REPLACE [ ] ] [ WITH ] Possible error messages: NO "FROM" PHRASE "ON" PHRASE NOT FOUND *END *USE > USE - specifies the database file to be used for all operations until another USE is issued USE [INDEX ] Possible error mess1>,) - AT function *END ** * - deleted record function *END *# # - record number function *END *! !() - upper case function *END *$ $(,,) - substring function *END *CHR CHR() - numeric to ASCII *END *DATE DATE() - system date function *END *EOF EOF - end-of-file function *END *FILE FILE() - existance function *END *INT INT() - integer function *END *LEN LEN() - length function *END *STR STR(,[,]) string function *END *VAL VAL() - value function *END *TRIM TRIM() - trims strings *END *TYPE TYPE() - supplies data type *END *LIMITATIONS number of fields per record 32 max number of characters per record 1000 max number of records per database 65535 max number of characters per character string 254 max accuracy of numeric fields 10 digits largest number 1.8 or L. BAD WIDTH FIELD CANNOT INSERT - THERE ARE NO RECORDS IN DATABASE FILE Use the APPEND command instead. CANNOT OPEN FILE COMMAND FILE CANNOT BE FOUND Check spelling. DATA ITEM NOT FOUND DATABASE IN USE IS NOT INDEXED FIND is only permitted on indexed databases. DIRECTORY IS FULL The CP/M disk directory cannot hold anymore files. DISK IS FULL END OF FILE FOUND UNEXPECTEDLY The database in USE is not in the correct format. If all records are correct and presefile. INDEX FILE CANNOT BE OPENED Check spelling or INDEX the database. JOIN ATTEMPTED TO GENERATE MORE THAN 65,534 RECORDS The FOR clause allows too many joined output records, make it more stringent. KEYS ARE NOT THE SAME LENGTH MACRO IS NOT A CHARACTER STRING ¯os must be character strings. MORE THAN 5 FIELDS TO SUM NESTING LIMIT VIOLATION EXCEEDED NO EXPRESSION TO SUM NO "FOR" PHRASE NO "FROM" PHRASE NO FIND More a diagnostic type message than an error messa*** SYNTAX ERROR IN FORMAT SPECIFICATION SYNTAX ERROR, RE-ENTER "TO" PHRASE NOT FOUND TOO MANY CHARACTERS TOO MANY FILES ARE OPEN There is a maximum of 16 files allowed to be open at one time. TOO MANY MEMORY VARIABLES There is a maximum of 64 memory variables. TOO MANY RETURNS ENCOUNTERED Probably an error in the structure of a command file. "WITH" PHRASE NOT FOUND UNASSIGNED FILE NUMBER Internal error, contact dealer for support. *** UNKNOWN COMMAND VARIABLE CANNOkette swapping SELECT - switches between USE file (primary and secondary) SORT - create a copy of a database which is sorted on one of the data fields USE - specifies the database file to be used for all operations until another USE is issued, also closes files MEMORY VARIABLES: these commands manipulate memory variables: ACCEPT - allows input of character strings into memory variables CLEAR - clear out database files in use OR screen variables COUNT - co x 10**63 approx smallest number 1.0 x 10**-63 approx number of memory variables 64 max number of characters per command line 254 max number of expressions in SUM command 5 max number of characters in REPORT header 254 max number of characters in index key 100 max number of pending GETS 64 max number of files open at one time 16 max *END *ERROR BAD DECIMAL WIDTH FIELD BAD FILE NAME Syntax error in filename. BAD NAME FIELD BAD TYPE FIELD Must be C, N,nt, then PACK and re-INDEX the database. "FIELD" PHRASE NOT FOUND FILE ALREADY EXISTS FILE DOES NOT EXIST FILE IS CURRENTLY OPEN Type a USE or CLEAR command to close the file. FORMAT FILE CANNOT BE OPENED FORMAT FILE HAS NOT BEEN SET ILLEGAL DATA TYPE ILLEGAL GOTO VALUE ILLEGAL VARIABLE NAME Only alphanumerics and colons are allowed in variable and field names. INDEX DOES NOT MATCH DATABASE dBASE cannot match the key with the database. Try another index ge. dBASE couldn't find the key. NON-NUMERIC EXPRESSION NONEXISTENT FILE "ON" PHRASE NOT FOUND OUT OF MEMORY FOR MEMORY VARIABLES Reduce the number or size of memory variables. RECORD LENGTH EXCEEDS MAXIMUM SIZE (OF 1000) RECORD NOT IN INDEX Index file was not updated after a record was added. Reindex. RECORD OUT OF RANGE Record number greater than number of records in database. The Record doesn't exist. SOURCE AND DESTINATION DATA TYPES ARE DIFFERENT *** SYNTAX ERROR T BE FOUND Need to create the variable, or check the spelling. *END NY FILES ARE OPEN There is a maximum of 16 files allowed to be open at one time. TOO MANY MEMORY VARIABLES There is a maximum of 64 memory variables. TOO MANY RETURNS ENCOUNTERED Probably an error in the structure of a command file. "WITH" PHRASE NOT FOUND UNASSIGNED FILE NUMBER Internal error, contact dealer for support. *** UNKNOWN COMMAND VARIABLE CANNOunt the number of records that meet some condional expression DISPLAY - displays records, fields, and expressions INPUT - allows input of expressions into memory variables RELEASE - eliminates unwanted memory variables and returns space to dBASE RESTORE - retrieves sets of stored memory variables SAVE - copy the memory variables to mass storage STORE - stores expressions into memory variables SUM - compute and display the sum of an expression WAIT - accepts a singl ;M_b o {y͠@!7 ~#fo!0Iѵ!0I}_|W>2 *7*9Iw**#: w ҋ**#IdBASE II COPYRIGHT (C) 1982 BY RATLIFF SOFTWARE PRODUCTION, INCORPORATED (RSP, INC.) 2705 RIDGEPINE DR, LA CRESCENTA, CA 91214 *** dBASE II Ver 2. FILE IS INACCESSIBLE, ALREADY OPEN ELSEWHERE FILE ALREADY EXISTS NO FIND TOO MANY MEMORY VARIABLES OUT OF MEMORY FOR MEMORY VARIABLES ILLEGAL VARIABLE NAME TOO MANY CHARACTERS NO DATABASE FILE IN USE, ENTER FILENAME: NOT A dBASE II DATABASE DESTROY EXISTING FILE? (Y/N) *** UNKNOWN COMMAND COUNT = ENTER RECORD STRUCTURE AS FOLLOWS:: FIELD NAME,TYPE,WIDTH,DECIMAL PLACES INPUT DATA NOW? & MACRO IS NOT A CHARACTER STRING RECORDS COPIED CALLED FROM CORRECT AND RETRY? FILE HAS BEEN DELETED ILLEGAL GOTO VALUE2 SYNTAX ERROR, RE-ENTER CANNOT INSERT - THERE ARE NO RECORDS IN DATABASE FILE END OF FILE ENCOUNTERED END OF LOCATE SCOPE ENTER HEADING: DATA ITEM NOT FOUND "WITH" PHRASE NOT FOUND ENTER SUBTOTALS FIELD: SUBTOTALS IN REPORT? (Y/N) PAGE HEADING? (Y/N) > ENTER PAGE HEADING:  RECORDS SORTED FILE DOES NOT EXIST UNASSIGNED FILE NUMBER FILE IS CURRENTLY OPEN END OF FILE FOUND UNEXPECTEDLY" RECORD OUT OF RANGE TOO MANY FILES ARE OPEN DISK IS FULL DIRECTORY IS FULL NO ROOM IN SYSTEM LOCK LIST SYSTEM INPUT/OUTPUT ERROR RECORDS ADDED DO CANCELLED BAD NAME FIELD BAD TYPE FIELD BAD DECIMAL WIDTH FIELD BAD WIDTH FIELD BAD FILE NAME COMMAND FILE CANNOT BE FOUND7 NESTING LIMIT VIOLATION EXCEEDED DELETION(S)t *** END RUN dBASE II *** TOO MANY RETURNS ENCOUNTERED7 ENTER RECORD #,FIELD (# OR NAME),NEW VALUE+ ILLEGAL DATA TYPE MACRO NOT FOUND PACK COMPLETE, RECORDS COPIED RECALL(S)~ COL WIDTH,CONTENTS DOUBLE SPACE REPORT? (Y/N) REPLACEMENT(S) ENTER REPORT FORM NAME: "TO" PHRASE NOT FOUND** SUBTOTAL ** NO EXPRESSION TO SUM: NON-NUMERIC EXPRESSION> MORE THAN 5 FIELDS TO SUM *** SYNTAX ERROR *** ARE TOTALS REQUIRED? (Y/N) RECORD IS LOCKED...WAITING SUMMARY REPORT ONLY? (Y/N) INDEX FILE CANNOT BE OPENED VARIABLE CANNOT BE FOUND SOURCE AND DESTINATION DATA TYPES ARE DIFFERENT "ON" PHRASE NOT FOUND FORMAT FILE HAS NOT BEEN SET SYNTAX ERROR IN FORMAT SPECIFICATION "FIELD" PHRASE NOT FOUND3** TOTAL ** RECORD: NO FINDPAGE NO. SINGLE STEP Y:=STEP, N:=KEYBOARD CMD, ESC:=CANCEL WAITING 7 FLD NAME TYPE WIDTH DECE STRUCTURE FOR FILE: PRIMARY USE DATABASEY SECONDARY USE DATABASE NUMBER OF RECORDS: DATABASE IN USE IS NOT INDEXED MORE THAN 7 INDEX FILES SELECTED MODIFY ERASES ALL DATA RECORDS ... PROCEED? (Y/N) ENTER TODAYS DATE OR RETURN FOR NONE  DATE OF LAST UPDATE: 1::DZ2_:'DʈE4:"E:;DiD:FDhE:$DEEH;2_>L;9;2_5;>dP;H8:$DaE:_L;:_5;iDʈE:'DK/:'D9jVi9E#~ʖE/w}E!6>.5̈́6͟9͘9y9EE*E:\Gy9&FʽE#~ðE!}6!ř6}#*~.E }~8!~)* F ~C0H##6N#ř~8}ř͘9ͨ8:H2TéEo9éE͘9y9:?DʍFAF&^ͷ7HF!_4Ei9YF]ͷ7gF:_E2?DEi9xF^ͷ7E:_†F2?DE=2_E: D:Gi9ʴF]ͷ7»F͔9y9^ͷ7»F!_4E:_"G: D Gi9F^ͷ7F͔9o9(.[y9[E2 DEi9H..&c!̓ͤ,9,5,ͳ'B,E͜I:GDʊIH;2_>L;9;2_5;*_DM-;/2_y9}[_6/#Ns#FrxSJ2_y2_>N2_qJ2_ygJA2_>C2_qJ2_>L2_!ƛx66y9^ͷ7´J͔9y9ͤ6[o9x&7[#͔9!662>2_y9^ͷ7K͔9y9AL*AL"_J>RZ͔9y9KF^ͷ7AL͔9y9ͤ6[ CANNOT OPEN FILE FORMAT FILE CANNOT BE OPENEDQ COORD: CORRECT AND RETRY (Y/N)? CHANGE FROM : CHANGE TO : MORE CORRECTIONS (Y/N)? O ENTER FILENAME: ENTER OPTIONS, M=LEFT MARGIN, L=LINES/PAGE, W=PAGE WIDTH ENTER SUBTOTAL HEADING: 0 ENTER SUBTOTAL FOOTING: EJECT PAGE AFTER SUBTOTALS? (Y/N) NO "FOR" PHRASE JOIN ATTEMPTED TO GENERATE MORE THAN 65,534 RECORDS NO "FROM" PHRASEG KEYS ARE NOT THE SAME LENGTH RECORDS INDEXED RECORD LENGTH EXCEEDS MAXIMUM SIZE (OF 1000) *** ZERO DIVIDE *** BEYOND STRING *** OVERLAY CANNOT BE OPENED ENTER RECORD # : RECORD NOT IN INDEX INDEX DOES NOT MATCH DATABASEG^ͷ7Gi9G^ͷ7E2 DEi93G^ͷ7E!_5Ei9zG:9DzG:$DdGH;2_>L;9;2_5;::$DzG:_L;:_5;͘9y9G[=.’G͔9~ͱ6+HR)Qo9͸6QiPEO|P~L~LuPOVPY'S VjVV"I?HHFLXLvLLLLLLMMR^PPP QPQQQ4R?RGR[R|PRRRSS\TyTTTTU]VVVVXYZ!ZLZTZ\ZZ>!Z>&Z> Z>8Z͚H>:5͟9i9`H:;DiD!6CH&7oH> >O~!}6)##y66-#663͜)E!}, E!6y9ͤ6Ho9~[#ªH͔96DM ,y9^ͷ7!R#͔9y9ͬ*R)y9]ͷ7H>!Eç;5,|Hͳ'B,o9x&7[͔9!"_662:_!}, :_!:_NL~HK.HK#:K"_!ƛ~\K.\K#NK"_*_+~ʽK$ʥK*ʥK#ʯK9ʯK,dKʒK-ʯK dK+~$ʠK*ʠK> #wdKdK dKʸKwcK6 dK*_*_~:LK#K~:L#K9KwK~:L#K9K#K60#K!ƛ~:LXL4Lw#L9'L#/Lͱ64Lw#L6 #L!"_>VZ: ER)> !Eç;y9kL)*[ 6!E*D>P;iD>2 DER)>!Eç;y9LZ%Z'͡#͎.Z%Z'͡#͎.:DV'&Z%6)2@2D2!D͔.E^ͷ7L!^ͷ7[ER)>!Eç;R)>!Eç;>!Eç;%y9 ^ͷ7;M͔9''2Mw':HDE>2P;EP;w'ER)>*2_UM:HDE>+P;E%[y9[!q&ښM:_W5,|ʚM͎'ʑMښMʑMr .R+ʚMyM`i:HD!6;6!"_!"_x^y9ͷ7MR)>!Eç;͔9/^ͷ7nO^ͷ7vOq^ͷ7ʁOR)2_2_%!}"_y9zN%[y9zN?^ͷ7"N>2_͔9M^ͷ7.N͔9*_[>2_:DDdN60#6x_NyZN6`N6hNp4hN6,###6#63"_͘6zNM:DDN:_N"_*_~ N*_6'#660# ~#N###FNNCN6#6#6N6#p#6Np#q#q4#6#63"_*_"_ÎN*_q&Eͤ,|E͎'P;E>sZR)\^y9ͷ7#Q͔9y9SQ^ͷ72Q,E]ͷ7SQʹ$JQ5,ͳ'EV#ͳ'E+[|zQ5,65HT]ͳ' |QE>3Z>~Z> !Eç;(.[y9[E>2?D2_ER)y9ʺQ>!Eç;c!̓E͚H>:5͟9i9Q:;DiD!6Q})R6-#6++6͜)&R:HDR6.#663!6!}, E>HZE>4P;!6QR)>! Eç;> !Eç;!"_"_ôM>!!Eç;R)i9~oR#dR!͔9%%[i9[!q&ڱR͐)"AD͎'RR+ʱRҍR:HDE>6P;E:HDE>7P;E:HDE>aP;ͤ,;6E!͔9%%[*AD͔)ÙR>!Eç;>!Eç;+y9*U>Zi9ͨ(U"_^i9y6͔9y9ͷ7U͔9*_[N##~RUC+~RUL*_ ~dU>SZ*_6/#663"_>2_͘6ʓUڄUU]ͷ7T͔9U:_U!q&U͎'UUU!ƛ, & .:_Uͣ!&R+UҦU:HDE`i!6;6>>P;E>AZ>BZ>!Eç;>!Eç;y9]ͷ7/V͔9y9)V>!Eç;6)Ey9E*@V>([i9)*MV͌*͔9͘6E[/Vy9dV|.E:'DEV'Z%w'z/:(DʭV=VʠV2(D=!)D6~2'D2?DE2'D2(D2?DE>-P;E>!Eç;y9N^ͷ7V͔.Eg^ͷ7[>͔.Ey9^=.V͔9eXwED_=.XWY,WYʹ$DYͤ,"_ "5Y"_zY*_ͳ'rYYWY&V#ͳ'&WYͤ,ͳ'rYWYB,KY:HDE>aP;ͤ,;6ER+E:&D>!Eç;}["_y9^ͷ7Z͔9*_#N#Fy9ͅ**_6-#6"_"_i9*͔9͘6Y[*_*_6'#6"_êY:HDY*_*_6.#6"_*_63:HD!6!}, E>HZ>!Eç;6Zy9]ͷ7E͘9.6:'DFZ9jV$Z͟9$Z> !Eç;> !Eç;Z%Z'͡#y9E'Z>@+ZZ'-,y9E)^ͷ7[͔9y9͞ZE>'Z>@+ZR'ͻ#͘6ZZ  Z>tZ#"c!Zw',>Z>(Z>QZ>Z>!Eç;P;([::DFYRPACKRPOKERQUITSREADSRECALL\TREINDEXyTREMARKTRENAMETREPLACETREPORTURESET]VRESTOREVSAVEVSETVSKIPXSORTYSUMZTEXT!ZUSE\ZWAITZCASE~LENDCASEuPOTHERWISE~LBROWSEFLJOIN?RTOTALLZUPDATETZALLANDBLANKBOTTOMDOELSEENDTEXTFIELDSFILEFILESSCREENGETGETSIFINDEXMEMORYNOUPDATEOFFONPICTUREPRIMARYPRINTRECORDSAYSECONDARYSTATUSSTRUCTURETOTOPUSINGWHILEWITHENDDOENDIFCASEENDCASEOTHERWISEBELLDCARRYDCOLON"DCONFIRM#DDEBUG$DDELETED&DECHO9DEJECTEDEbOE*_+"_|%O!"_>eP;n:E!6:_>Oͤ,;6̈́65:_\O:DD\O͘)DM #,bO!}, R+ENE>! Eç;͔9>! Eç;͔9>!Eç;y9^ͷ7VP^ͷ7Oi9>'Oy9[>+O:(DO!)D6R'w2'D!(D4A/w'E>)O>*P;vL:'DNP͔9(.[HP2_:'D9y9&P]ͷ7-P͔9y9^ͷ7P!_4Pi9>P^ͷ7P!_5PE_/E>)P;E>2 DER)>! Eç;>2?D2_E2 DE2_:'DE͈/EH;G:GDʡP>L;;L;EER)ʹ$Qy9ͤ6PPo9xƛ&7Oi9y ͳ'|P:&DEEi9!P:HDE>["_͘6[+[}*_w#"_͘6E SE!}"_y9ʔS?>S!6ASo9*_[:DDrS60#6xmSyhS6nS6vSp4vS6,###6#63"_͘6ʋS[AS!}, E!6EZ%͡#͎.Z%͡#>,P;:DV'&Z%y9'>!Eç;2_y9S6^ͷ7[>2_: E:=D-TV'ͳ-:=D9*Ty9S*S@o9͜I>*_DM*_!_͎Sw'>EER'Eͤ,|E .:_Eͣ!ER)%> 2_UM:HDE>;P;ER)>!Eç;i9.6Ey9['ͬ,y9[^ͷ7[͔9y9'ͽ,ER)2_ͤ,|U%!ƛ"_!"_y9ʓU6^ͷ7T͔9>2_T%[i9ʓU[͔9eX5;Ey9^ͷ7OW͔9:D/WV'&Z%2Dy9E>'>+R'2Dw'EeXXW:D2!DEeXL;Ey9^ͷ7vW͔9<!@6i9@&72|ERX+["DE:=DʳWV'Z%2=Dw'RXWV^ͷ7W^ͷ7W>'>+W>YZR'2=Dw'E2GDE>2GDERX[~_@2%DERX8{2D͔9o98{2D͔9o98{2DERX+[}2aERX͡#i9E͞ZEy9^ͷ7[͔9y9y9C^ͷ7|X?^ͷ7([>R)y9 Y-›Xo9ãX+£Xo9]ͷ7lY+[|Ey Yʹ$Xͤ,"_z"X"_zX*_ͳ'rYXWY#ͳ'WYͤ,6Yͳ'rY([>MP;!6i9͘96M #[̈́6[>?52:D͘9y9vL::'Db[:(D2_!_5b[>0P;:_!)D6~%F[:]iD>[P;H8iDE>\P;!}~5E>]P;!ř~5͘9}řͨ8w[:>^P;H8iDw[1͘9ÖESTOREY?'SELSEiPENDDO|PENDIFEDOONOTEELOOP|PRELEASE VRETURNjVSELECTV@"IACCEPT?HAPPENDHCALLXLCANCELvLCHANGELCLEARLCOPYLCOUNTLCREATELDELETEMDISPLAYMCONTINUEREDIT^PEJECTPERASEPGOTO QGO QHELPQIFQFINDPINDEXQINPUTQINSERT4RLISTGRLOADSRLOCATE[RMODISCAPE;DEXACT2VEwVͷ7cE͔9>2VEAVͷ7§U͔9>2V2VE5,"V|ʈEͳ'B,҈E:VF!"V!d"Vc!:VG*V͔9>'>A+ڌHR'2Vw'.:VʕF!Ǜ͔9:VV'%\H"V*V~ ʩF ~NQF#F#6i9'FF"%FOo9qF,F,ʂF,?Fo9ʩF,FqFo9ʩFqF,?FÂF#F#6Ni9dͦ2͔9T3i9,ʂFy,ʂFo9ʩF,wFo9ʩF*V"VE#:VV'%\H͎'E\Hw'.̓*V#"V*V#"V*V+"V|E:HDE*V!6;6>P;!d"VEP Gc!̓*V#"VF&5,ͳ'B,ÃH>A+ڌHR'2V ͅ,:™Hƛ!ř͊%!"V!ř"V~ G"Vͨ(G"V ~NʆG*V6+#*V6*V663"VG*V ~NʷG*V6'#*V66#6/#*V663"VG*V6'#*V66/#*V663"VG*V"VLG.c!ƛ*ÙDM:VV'ͅ,\H:V#"V!6̈́6*V+))))"V:V!KH6x6͟9i9Kbk66 i9*~,aLi9''aL*Vi9>,&7aL aL͔9! o9_2VCʗJNʗJLiL>Jo9o98qL{qLzqL{ *V+|ʉL!9, /&Z%>%P;H8ʯU>A+-&,.P7K& /Z%ïU͔9y9'ڷL+ڷL-ř̈́8"V 6!"V*VB,;L~ ~K#͔9i9* i9 ¦Ko9  Ki9_CKNKL—L>Lo9V~8͔9!V8ڧL{yLzyL{i9*V"VTMB,L*V#"V;M .ͣ!i9ʮN,Lo9,ʉN:oN0ډN8͔9LzL{!L+))))~L L"VÉNi9*Li9ͨ("VL͔9i9ʮNo976Mi9*V͋OLúN*VOگUL .L> P;ïUR)2V2Vy9O+Vͷ7N>2V͔9N2Vͷ7§U>2V͔9Nʹ$Eͤ,:VO#"V"V,͘)DMƛͅ,ڀO*V,:VBO..HOPگUƛ̈́8ƛͅ,*V#"V,.HO5,#9,&,*Vͳ'ïU>5P;,ïU ~NʷO#y=ON#6T]> 7~8ͦ2#F#6NT3>P;7"V V#~2V#6"VzCPͺP!KV.6͟9PO*V͋OQ*V"V~ Q.7V'ͳ-:=D9ZRy9@/Ro9^R>*VDM*V!V͎/Rw'ɯ2V2V:GDtR: tR!"V!"Vy9$–Ro9,.ʜR+ڧU}2V͘6 Uy9$½Ro9 .R+ڧU}2V2ś2ƛ!ƛ"Vy9sVͷ7vS͔9>2Vy9}ڧUV6/#Ns#FrxS2'Vy2*V>N2&V3S2*Vy)SA2'V>C2&V3S2'V>L2&V!ƛx66y9Vͷ7vS͔9y9ͤ6§Uo9x&7ʧU#͔9!662>2Vy9_Vͷ7S͔9y9 U* U"VʫS>RP;>2:DïU͔9y9ScVͷ7 U͔9y9ͤ6§Uo9x&7ʧU͔9!"V662:V!}, :V!:&Vy9)V>!Eçƛ6BEFOREBLANKCHANGE? DELIMITEDTO: FIELDFROMGETPICTURERECORD SAYSDFRECORD # TO USING~2'D2?D2?DE>-P;E>!Eçy9N^ͷ7VTO: FIELDFROMGETPICTURERECORD SAYSDFRECOR$E4JíKLOOÑP{QQwRASÚS%29V27V28V24V25V26Vř̈́8!}"KVy9[F%"Ty9[FUͷ7|E";V͔9'J>29VLE27V͔9!ř6 "MVy9*£E>&Ji9ͨ(ʳE>R&J*MV~8!6 "MV*KV6+#6663"KV͔9y9,LEo9ÕE|Uͷ7F>28V͔9yƛ G6 !, ͎'G\Hw'.̓*V#"V*V#"V*V+"V|G:HDG*V!6;6>P;!d"VGZ%:HDtH*V!6;6>P;w'&5,ͳ'B,*V9,ïU>P;>2:DïU>P;>2:DïUR)%2Vy9;I%ڧUy9;ITVͷ7H>WP;>2:DïU>2V͔9!"V6y9*I>P;>2:DïUi9ͨ(I>RP;>2:DïU*V6"V6͔9y9,°Ho9H:VOI>WP;>2:DïU!q&͎'ʙIڢIʙI!6>aP;ͤ,;6!6!"V*V6"VzʓIOڢI{I .R+ʢIUIïUZ%Z'͡#Z'y9I>_P;͟9ʯU'>+2Vy9IZVͷ7§UIK>#P;>$P;6!"V!"V*V~8͔9!V8ڟL{*V66گL"V*V"V~KZ%*V6 !9,:VV'ͳ- /&-,ïU>P;J>P;J>P;J>P;J>yP;JZ%'>2P;ïU>P;ßU>P;ßU>P;ßU>yP;ßU>(P;ßUR)!"Vͤ,"V"V>2Vy9M2V: L>.P;:V¯U: M>ZP; M>}P;͟9MïUi9 گU8͔95,6Ny9|;M*V"Vͳ'*V : #N"V:=D~M&RGLGoMNxLxMíM*V*VU>LGқMNxLxMxMʹ$ʼMz"L;M*V+"V|L;Mʹ$ N "L;MxM*V6ҭM"VTM*V~ Mi9*V͋OOP!ƛ62V:VGƛw8!ƛ"VͺP!8V.6!ř~5ʒP:řPrP!V.6!~5!ƛřͨ8P>2V0P!ƛ6!V.6!ƛ~5ʒP>2V0P:VP:VGƛʰPw#¡PP6 #°PP*V!6.6>:5̈́6*V:V_~5#P7>ɯ>P;0P"Vͤ,| Q:DQ.: ʽQ>2V2V"V:=DEQ&R>"R"R.ͤ,#*VU:V"RGO:V2Vx«QxʏQ*V6ҫQ"V>2VEQxҫQ*V~ ʫQ*V"V>2VEQ:VҹQ.7!6!kV.6ͤ,#;6!6*V!6 ,>:5̈́6͟9Oi9PRx"R RNT~T.T#T"V!ƛ~&T.&T#T"V*V+~ʇT$oT*oT#yT9yT,.T\T-yT .T+~$jT*jT> #w.T.T .TʂTw-T6 .T*V*V~UʳT#ʳT~U#ʮT9™TwØT~U#T9T#óT60#óT!ƛ~UXTTw#T9T#Tͱ6Tw#T6 #T!"V>VP;>2:DïU"V!{V16;6!"V*V N! :T_ 6DUy2V*VO:U!V > 7*VV~uU#jUV*VDM!V͎*V:Vg"V*V"V~ .U>2:DïU>2:DïU>!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,93Uͷ7LE>26V͔9LEUͷ7)F>24V͔9LEUͷ7"T>24V25V͔9y9Uͷ7LE͔9y9"T2Uo9LE:9V$J*;V͔9:4VsFuF>'>+R'2U:4VºF!6#w#w#+++++~8:6V\I .:8VIw'ƛ!ř͊%!q&!"MVI!d"IVͤ,|I͎'PIIPI*MV#"MV*IV+"IV| G:HD G*MV!6;6>'P;!d"IV:7V-H:5VGG*ÙDM!ƛ> 7!}, ƛ1H!}"FV!ƛ"QV*FV~3H#6##"FV ~NG#F#6*QVyʃG6,#:U,ʍGw#w8x6+~ ¡G–G#:U,ʲGw#"QVH+~ ¾G+³G#"QVH#F#6*QVyG6,#:U,Gw8x6"QVH~# GHGG"QVH60#"QV UGƛ*QV6 #6 #6DM:U%PI:4VLH*ÙDM:UV'.w'PI:5VmH*Ù6 #6 :U*ÙDM%PI!ƛ"QV"KV*KV~ 9I ~NH#F#6*QVyʟH6,#:U,ʩHw#w8x6+~ ½H²H#:U,Hw#"QV+I+~ H+H#"QV+I#F#6*QVyH6,#:U, Iw8x6"QV+I~# I$I I I"QV+I60#"QV*KV"KV {Hƛ*QV6 #6 #6DM:U%R+IFI!UřÄ́8 ."AV!"MV*AV~ Iƛ>  ~–I> #I#~#~=T###~=T*AV"AVƛ.*MV#"MV}I:HDI*MV!6;6>'P;:UV'&:6VI:8VJ:4VJͳ-ř6 L-L6ͤ6*QV~#L#L#"QVK*QV6!ƛ;L' |RL02UUU~|L #pLy2U#~kLU |LO 6:%D2\23Vy9ʍMyUͷ7L͔9y9"T_@2\o9:Lo9LHUͷ7"T͔9y9"T!U>  7Ui9ʅM ʅM.TM*DMa;M_o9!M6?#EMo9.…Mo9UʅM ʅM*zMaqM_o9\M6?#{Mo9>23VL!6:3V²M!MU.6!U] ̈́8M!65T!U] ̈́8M!65T!V"V6 \NM!tU.6*V:3VM ̈́8 ""T͔9>25VO:7V"T:5VP6)SVͅ,ڈP! ~FPTP#Ny<2HV\P#F###N>2HV\P>2HV!SVͅ*"U:HVOVͅ,*U 6:HVO!V~8PZ%w'5T27V25Vy9 QUͷ7P͔9>'vQ>+vQR'2U"AV>27VØPUͷ7"T͔9y9"THUͷ7"T͔9y9"T"MVo9 QP>25VØP:7VqQ*AV~UQ:5V)Q*MVhTUQ.! F#N#6xIQNQ PQPQ.*AV"AV~ Q&Z%w'5T>H-T>(-T25Vi9HUͷ7ʜQ>25Vi9,Uͷ7"T͔9y9"T"KV"AV*AV*KV:5VQhTQQhTQ͌**AV"AV~ ®Q5T%29V%"Ty9#RUͷ7"T͔_0T O))))  Sw'>2:D5TP;>2:D>!Eç;&odUT UTUT/}o|gXT zʏT ʏT*ʑT?ʊT͊6چT_‘T#jT~TTT@@Ȅ@@@PR@brpb@@@@@@@d\,ADDITIVEALLDELIMITED VARIABLES USED BYTES USEDEXCEPTEXTENDEDFIELDSFROMLIKEDATABASE FILES # RCDS LAST UPDATENoneONSTRUCTURETOFILE UNAVAILABLEWITHA::::::::ASDF ????????DBF$$$ SUB'',3FIELD:NAMEC R)!"G"G5,!d"G!9,*G,B,qF*G#"GF*G,.*G*G#"G:HDF*G+"G|F!6*G+;6>:P;!d"GF*G,&,:HDʉF>9P;*G+"G9,:HD G*G;6>:P;ðE!ͳ' Gc!!"G!d"Gͯ*G#"G*G+"G|F:HDF*G!6;6>xP;!d"GB,F:HD G*G!6;6>xP;w'>2:D GP;>2:D>!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,ONREINDEXING INDEX FILE - TOȄ@@@PR@brpb@@@@@@@d\,*MV!6#6.Z%w'5T>(&J>HP;w'>2:D5TR)%!}"FV>A2U2PV2OV2:V!SV"KVy9%"Ty9?KUͷ7J:OV<2OVҨK*FV"T>2:V"FV#6xʣK!U4ͅ*! 66*FV6'#66#6-#663"FV*KV6.#663"KVi9?K,UJo9UJ͔9>2PV!SV"KVy9?K)*J͌**KV~5T#6"KVbk 6y9*i9~͊6'K_# K͔9y9,UJo9J::VʞK!q&mK͎'dKmKdK!}, R+mKOK:HD}K!SV!6, >A2U:PV5T!SV~35T#6͌*ÌK>J&J>K&J>L&Ji9Uͷ7"T͔9y9řͤ6"T6o9"TKo9y9K,"To9y9K"MV!ƛ"QV*MV++"MVV6 NM!V"V!6*V~ :3VN]̈́8"V2h!],̈́6,x62|\N\ŸNog;6x6@6>/5@6>/5@6!6:_N\N>P;!6:_N\N!U16!6N,>.5,"VNx6~6N!6NN\O7(5 ~5>)5́6~NuO#~2UkO<2@V2UÆO#~2U###~2U>2@V!U, :@V*DV6#"DV~ %O!6>`P;x6:CV@6!U16*DV;6! U165T27V25Vy9PCUͷ7O͔9>'>27V>+O>X-TTͷ79y9"Tͅ*"MV>29Vo9#R RQ5,|JR!q&JR͎'ARJRR+JR7R:HD[R>"P;`i;6:9V5T`i4*MV 645T>gP;w'R'%>rP;5,;6>wP;+++++@6>/5@6>/5@6͊.R>pP;R>qP;>fP;~ 'S !6yH6x6 ,~6 ~5{6#~H6{6###F~~6xSH6~6R!6>`P;x6x6~6͘);65T>eP;n:iDy9ʖSUͷ7"T͔9y9"T)*qS͌*ͅ* 66# ҊS> w5> 55T5Ty9>'>+S2U:Uƛ%SǛS}2?VSS"=VS}*=Vw#"=V!?V5SíSw'5T>X-T!GTFIELD:TYPEC FIELD:LENN FIELD:DECN ????????DBF$$$ SUB'',3FIELD:NAMEC D # TO USING~2'D2?D2?DE>-P;E>!Eçy9N^ͷ7VTO: FIELDFROMGETPICTURERECORD SAYSDFRECOR EðEEy9 G2G2Gy9}EGͷ7SE͔9y9"G} Gi9~@E+"G#~O#F>2GEGͷ7 G͡#͔9y9>'uE>(P;G>2GE:G>TG:G>HG>+R'ͻ#*G*GR'w'ͨF Gʹ$ G͹$"G*G~E2G":HDE!6!G.6:G%#gͨF*G#"GüE#"c! GR)23Q2LQ2-Q2EQ2/Q!mY 6>28Q2;Q>927Q>P2BQH;2>Q2?Q%y9ʟE%ڠMy9ʟENͷ7eE͔9>'>23Q:E(Nͷ7‹E͔9y9ʠM"Nͷ7 M͔9>2?Q:ENͷ7 M͔9>2/Q:E:3Q¾E>?P;͟9i9ʘMʘM>'>2.Q>+E>+2.QR'2>D2IQ:.QE>hP;FM{My9eF eF_MFo9= Mo98{2;Q28Q͔9WFL:Fo9= Mo98{27Q͔9WFWeFo9= Mo98{2BQ͔9WFi9,eFo9E:.QqF>EP;FM{My9_YF>2IQ:.Q’F>FP;!eT6)FMgTi9<ʮF>ʶFûFo9>ûFo9>@26Q&7ʆF2fTO{M!gTy660#q#:6Qw#:;QG:BQw#p#6322Q:.QF>=P;FMy9_Y G>22Q{M2TQ:.Q G>NP;FMy9_YBG>2TQ! Nͅ*"DP;FMy9_YjG>2EQ{M:EQVH:.Q€G>CP;FMWQқG:.Q M>4P;{G{M:.QªG>PP;FMy9_Y¼G>2LQ{M2MQ:.QG>kP;FMy9YG>2MQ{M:.QG>iP;!X6)FM G HY> >5HYi9<H>&H+Ho9>+Ho9>@26Q&7GO2Y{M!Yy660#q#:6Qw#q#:;Qw#63:.QbH>2KQ:.QšH!6:KQH6x6FMy9J8{2JQ͔9~,Mo9*0QMy9M:LQH60#N#FxHw#:JQw#:;Qw#63"0QH"0Q#6{M:.QQ!q&:EQʄK!WQR~3 K#K#N#F! N4ͅ*"@Q6-#6636'#*@Q66xPK6#63!S6.#*@Q663rK͎'~KڻLR+ʻLڻLcK!WQ, %;:EDʝK!6;ÝK!6;2-Q:/QK!6͇M>cP;*9Q#"9Q;6x6!@16͇M:DK@6>/5:D@6>/5:D@6!6͇M:IQK!eT, !6͇M!nU, ͇M:EQ)L͇M>*5̈́6!X, !S, aL:-Q—K-;O:7QڗK͎'aLڻL:LQ̇M!Z, :2QaL͇MR+ʻLڻLaL͎'aL:EQ)L!R, )LM:-Q)L-;O:7QڗK!6͇M>*5̈́6!X, !S, )LM:TQL:R3L͇M>`P;͇M!R, ! N)*L͌*! N5~AL6A!6:>QL;bOE*Y|%O!"_Yn:E!6Y>Oͤ,;6̈́6Y5:_\O:DDY)DM #Y}, R+EYE>! Eç;͔YEç;͔9>!Yy9^ͷ7VPY7Oi9>Yy9[>+YO!)D6Z'D!(D4A/w Z)O>*P;vZNP͔9(.Z2_:'D9yZP]ͷ7-P!Z^ͷ7P!'Zi9>P^-ZP!_5PE3ZE>)P;E>9ZER)>! Eç?ZD2_E2 EZ2_:'DEKZH;G:GDʡQZ;;L;EWZER)ʹ$Q]ZPPo9cZ&7Oi9y iZP:&DEoZEi9!P:uZE>E:NG>x2NGjFNF:N_:N!P8F=3F"N!S6|YFDM T!S~+ xOF*N> 7+6ðEx G2NxʥF*N"NN6ښF!N"N2NðE:N2NðE*N"NjP6һF G:N2NðE:N_:N!PF=F"N!S6|FDM*N!̈́8!S> 7+6ðE!ř6!"N!ř"N!N"N*N~ G 6͔9y9G*Ni9*~ Hi9> &7H H͔9! y9_CʇGNʇGLH>Go9y98.H{.Hz.H{͔9y9G8&H͔9y9&H{*N666H"N*N"N*N"N%G*N6 !ř̈́HxKxyJ0LKL*N*N6RIͩK"N!N5:N 3J5~RI2N*N"N*N*N6pJͩK"N:N<2NG:N jJx2Nx BJ*N"NHxJ0LKL*NK~›J6 #6 #6++##"N~µJ6 #6 #6#"NPM!N4:N J4~RI2N*N"NHKL:N J>2N*NK~K##~K"N:N=2NJ*N"N2NHKL:N)K*N"NLK*N*N6DM:NV'.&Z%:NlKV'Z%NL'NLͬ,NLͽ,NLͬ,NLͽ,ÚK:NKV'Z%:NV'Z%'w':N2"DN+~ ±K++~ ±K#~ #~' >.7#"NN~8:NO> !}76:NK~'L}"N I>@P;*4Q6)#"4QFM I/I*4Q> 26Q>\I*4Q#i9MIRIo9>RIo9>@26Q&7HO{M*4Qqy6#60#q#:6Qw#:JQw#:;Qw#63"4QxʶJ:TQʶJ:.Q›I>NP;FM{My9_Y¶J*DV'&:>DV'Z%2>Dw':?QL;!"9M:.Q M>4P;ÇH:EQ:DS3/M͇M>IP;͇M!DS, !WQ, :MQBM>2-Q!6:.QbM͟9i9:>DV'Z%ØM:>D9i9wo9kM͘9i9:.Q:>D :!6:8QOÿ́6 ÎM>!Eç;>2:DØMTTT@@Ȅ@@@PR@brpb@@@@@@@d\,A::::::::AFORMPLAINPRINTTO-N9*_[mY:DDdN60#sY_NyZN6yYhNp4hN6,##Y3"_͘6zNYN:_NY_*_~ NY#660# Y##FNNCY#6#6N6YNp#q#q4#6Y_*_"Y_q&Eͤ,Y͎'P;E>s{Z)\^y9ͷ7Zy9SQ^ͷZR)ʹ$Q]ZPPo9cZ&7Oi9y iZP:&DEoZEi9!P:uZE>i9HUͷ7ʜQ>25Vi9,Uͷ7"T͔9y9"T"KV"AV*AV*KV:5VQhTQQhTQ͌**AV"AV~ ®Q5T%29V%"Ty9#RUͷ7"T͔y9Nͷ7EHNͷ7N͔9>H>uP;H8NNR)!P > 7!Q w @Eř̈́8!ř"N!N"N!"N*N~ ʪE*N 6 ~ʁE#{E~M###~M*N"N*N"NdE!N"N!"N PN!N͎*N"N!"N*NDM*N"N!N͎*N"N~ F*N$"N:U=8!9, /&-,N>P;M>P;M>P;M>P;M>yP;M2Ny9SH>_P;͟9N>'ͿK>+qH!}N.6>2NwHR'2NNL>+R'2N:"D2N2"D:T=2N:T@ұH:U=2N:N=2N!N:Nw#}6!N6 #6 #"N"N"N"N#"N2N*N!`6DM*N>7L!"N!"N*N"N*NKRIO~ $I#~ $I#y"N&o6!}:N66!N͎:N LIx I!N"N*NK"N:NGN!N͎>GJ•I!gN.6H8KHI0LKL*N*N6DM*N+T]͖8#"N*N6 #6 PMH*N##*N6DM*N*N##̈́8 "N*N~H6 #6 #6#"N*N+6L*N~*L *L L> # K7}y!"N}:NG!N͎*N~ bLbL#RL:NO !}6 +~ mLy2N2NL*N*N6"NҵLy*N6*NDM*N̈́8:N_*N"NL*N+6*NDM*N+͖8#"N*N}:NO~8PM*N~8:N8M*N^6MZMLT] "N:NV'ͅ,x4M M"N>2N*N+6 #6 #6#"N>2N*N_6*N*N66M*N:NV'.*NT] *N6DM̈́8*N"N*N"N*N"N*N"N*N> 7#"N!N.6H8ʁKK>eP;n:êE&odM MM/}o|gM z>!Eç;>2:DNCOMMANDNAME TYP LEN DECABORTING MODIFY (Y/N) BUFFER FULL, TYPE Y TO SAVE, OR N TO ABORTSTRUCTURE$$$BAK16!6N,>.5,"VNx6~6N!6FIELD 01 CPFIELD 02 CQFIELD 03 CQFIELD 04 C6QFIELD 05 COQFIELD 06 ChQFIELD 07 CQFIELD 08 CQFIELD 09 CQFIELD 10 CQFIELD 11 CQFIELD 12 CQFIELD 13 CRFIELD 14 C0RFIELD 15 CIRFIELD 16 CbRFIELD 17 C{RFIELD 2#J#~2GJ2WJ2gJ#6~2JJ2ZJ2jJ6"/J:GJG:JJO!Iͅ*"lJ"wJ,'R'21J>+R'2J /!"'J>2:J2+JåF2+J:JV'&'*'J9, /-+R'21J>2:J:*J_*'J6"'J|fH::JfH2:J:+JF*'J&:*Jo6F{2*J2)J2,Jƛ͘)DM!ř"-J:JV',:1JV',:+JGͅ,nG F*'J#"'JGͅ,II*/J*-J6"-J`i!)J4:*JF͟H*ř"XJ!KJ"6J*J"3J:+JzG:*J_*'J6|II.H"'J"%JzG:)J2*J͟H.H:1JV':+JʝGB,.HʇG*'J#"'JãGB,II:#J28J!2J, G:JV'.*JIH:JV'*/J*ř6͘)DM.*XJḮ8*řř!Ǚ:*J=O~8y!ONASCENDINGDESCENDINGTO6RIͩK"N!N5:N 3J'' 3COPYRIGHT *N1978 SCDP N<2C.W.RATLIFFx2Nx''[J 3'[J-3:::A0LKL*NK~›J6 #6 #6++##"N~µJ6 #6 #6#"NPM!N4:N J4~RI2N*N"NHKL:N J>2N*NK~K##~K"N:N=R'wE>2G!6!I.6R'%͊.+E>pP;0E>qP;!6͹$~wE"`I!'I.6!6̈́6*`I~wE#"`IV'%~6ͳ-nIͅ,! J16!6GEw'͎.R'E>2G!6!II.6R'%͊.ʨE>pP;íE>qP;!6͹$~E"`I!'I.6!6̈́6*`I~E#"`IV'%~6ͳ-nIͅ,! J16!6E͎.!6:GYS DATE - DEFAULT DISK DRIVE - ALTERNATE - BELL - CARRY - COLON - CONSOLE - CONFIRM - DEBUG - DELETE - ECHO - EJECT - ESCAPE - EXACT - INTENSITY - LINKAGE - PRINT - RAW - STEP - TALK - DATABASE SELECTED - INDEXES: KEY EXPRESSION:UNSELECTED DATABASE - Jy667~2JÅI?~2JO>-!J7J~ʗI#ÌI!J:J66*JDMJ!J͎*J:J2YHE:XHiEOHͷ7iE͔9y9}G>2XHE:WHGHHͷ7G͔9>2WHy9G"ZHy9*ʾG͔9y9,Eo9ÊE:YHʦG:XHʮG>+R'2VHw'͔.:WH…F"\H!ř"^H!dH"`H*\H~ F*^Ḧ́8*`H6+#*\H6*^H663"`H*\H "\H*^H "^HE>͔."\H*\H~ Fř''xF*^H*\Ḧ́8*`H6+#*\H6*^H663"`H*^H "^Hś6F*\H "\H+F!ř"^H!dH"`H*ZH͔9y9*"bHi9ͨ(¾G"\H*^Ḧ́8*`H6+#*\H6*^H663"`H*^H"^H*bH͔9y9,Fo9×F*^H6 !řƛ͊%> 18 CRFIELD 19 CRFIELD 20 CRFIELD 21 CRFIELD 22 CRFIELD 23 CSFIELD 24 C*SFIELD 25 CCSFIELD 26 C\SFIELD 27 CuSFIELD 28 CSFIELD 29 CSFIELD 30 CSFIELD 31 CSFIELD 32 CS 9ELD 25 CCSFIELD R)> 2"J2qJ> 2#J!"J2Jy9ʙEJͷ7GE͔9y9*YIͨ(aI"J͔9EJͷ7UE\E͔9E Jͷ7jE~E͔9> 2"J2qJ>2#JEJͷ7iI͔9'qI>2JE*J|ʁI:JiI*+ƛ6͘)|EE xEE>2*J*J ~LQI2FJ2VJ2fJCF:"J2"J2qJ:#J66:*JOͫH*ř"XJ*J"3J:+JzG*%J+"%J|zG:JV'͘)DM!ř"-J:*J*-J6"-J*/J6.=BH:+JfFåF:JV'Z%:1JV'Z%w'*lJ͌*:HDʉI!H.6ÉISORT COMPLETE:*JOͫH ãH:"J28J:*JGyH==I!KJ"6J!;J"3J!ř666"XJ"HJ!2J, I*XJ6*HJ6I:,JIII=Hx::J"hJ:,J2:J!sJ, >2,J>P;iD>/P;yI>P;yI>RP;yI>HP;yI>(P;yI>2:DÉI>2:DÉI>!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,A::::::::AF!6!6!6>eP;n:lG!6!G.6:D@6>/5:D@6>/5:D@6!H.6:%D@5>:5:DeF!G.6:D%!6!(H.6:!D[G~6!5H16:D[G!BH.6:D[G~6!OH16:"D[G!iH.6:#D[G~6!\H169;[G!vH.6:$D[G~6!H16:&D[G!H.6:9D[G~6!H16:ED[G!H.6:;D[G~6!H16:!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,OFF ON ALTERNATE FILE - TODA2Fy9EF&7o&6!bF͔9:%D2F2%D>'>+2F:F2%D:U2FE:F9Ei9*BE#Fͷ7BE>2F!6E:F9Ei9~*iEâEE:F9Ei9]Fͷ7BE~*ʯE͘9.6:F=2FE!6>eP;n:E!6:U2FÁE4::;D:FE!kF.6:FV'Z%w'E>!Eç;6:GF!6!6!6>eP;n:lG!6!G.6:D@6>/5:D@6>/5:D@6!H.6:%D@5>:5:DeF!G.6:*ENDDBASEMSGNO HELP MESSAGES FOUNDHELP!6>eP;n:lG!6!G.6:D@6>/5:D@6>/5:D@6!H.6:%D@5>:5:DeF!G.6:*ENDDBASEMSGNO HELP MESSAGES FOUN2ƛ:VHV' .w'>͔.,͔.,!"͔.!}, _G!dH, :VHV'*ÙDMƛ.w'*#"|<ʶG>͔.R+mG*G,͔.R+}G*G:VHV'&ͳ-> .Z%w'G>(P;G>HP;G>lP;G>mP;G>P;Gw'>2:DGw'>2:DG>!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,FIELDSFORTO2:DG>!Eç;TTT@@Ȅ@@@PR@brpb@@- DELETE - ECHO - EJECT - ESCAPE - EXACT - INTENSITY - LINKAGE - PRINT - RAW - STEP R)%2H2H2Hy9ʷE%`Hy9ʷE:HDEHͷ7DE͔9'-H>2HE:HyEHͷ7yE>2H͔9"Hy9*5H͔9y9,Eo9_E:H`HHͷ7`H>2H͔9y9=H"H*=H2Hi9ͨ(=H"H͔9E:HEH>+ER'2H ͅ,E>+R'2H ̈́8.w'ƛ!ř͊%!}"H63:HxF*H͔9y9*"Hi9ͨ(MH! ~NdF*H6'#6"Hi9ř''MH*H6'#66#6/#663"H*H͔9y9,Fo9F!ř"H*H~ F ~N½F*Hͨ(MH*H6'#6*H6'#66#6/#663"H*H"H~F:HG*H#"H"H*H! ~NF*H6'#6"H:HO*HR)2I2I2I2I2Iy9+F:I>EwIͷ7>E͔9y9'ڴH>2IE:IkE|Iͷ7kE͔9y9"I*ʼH2I͔9>2IE:I¦EsIͷ7¦E͔9y9H"Iy9*ʼH͔9>2Iy9,Eo9ÇE:I FIͷ7 F͔9y9H"Iy9*ʼH͔9>2Iy9,Eo9Ey9Iͷ7E͔9y9*ʼH͔9y9,Eo9E:IHIͷ7H͔9>2Iʹ$HE:IH:IH>+R'2I ͅ,ƛ!ř͊%:I™F*Iͨ(H F#6"I*Iř:IO''H N#6"IxH2IøF*Iř:IO''H ~2I#6"I!}"I"I:I?G*I"I*I͔9y9"Iͨ(H"I*I*"I*Iř''H*I6'#2:DI>!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,ADDFROMONRANDOMREPLACEWITH@Ȅ@@@PR@brpb@@@@@@@d\,ADDFROMONR2J!K"Jy9jEJͷ7J͔9>2Jy9*2E>P;Ji9ͨ(DE>RP;J*J̈́8!"J6 ͔9y9,jEo9!E%!q&ͤ,"J"J2J :"D2J2"D2J2J2J2J2J!"J*Jͳ';I"J2J>2J*J~ EuHE!J4*J"JýE:UO:JG:J2J F*J:Jg."J!J#"J:JG:JO:J2JHSF*J"J2JÔE:J0rHGH:J=eH2J!J4eH;I~ eH:J<2J:J=eH2J*J"J2JÔE J:TO ~ҊH:JڳH:JʓH7~/2J7I?~2J*JDMJ!J͎*J:J-!J7!Jy667~2JÅI?~2JO>-!J7J~ʗI#ÌI!J:J66*JDMJ!J͎*J:J 7,~*ʂG͎'ŽGR+GsGG*H, !"HG:HʮG*H, ʷG!}, G:HV'ƛ*ÙDM.w'*H#"H*H, R+GG͎'GÝG*H":HV'ƛ*ÙDM.:HV'&ͳ- .Z%w'*H!6;6>'P;kH>(P;UH>RP;UH>P;UH>HP;UH>RP;UHw'>2:DkHw'>2:DkH>!Eç;TTT@@Ȅ@@@PR@brpb@@@@@@@d\,FIELDSONTODDkH>!Eç;TTT@@Ȅ@66'#*I66#6/#*I6"I*I͔9y9~,6Go9"IF*I63#"I:IG*I"I*I͔9y9"Iͨ(H"I*I*"I͔9y9Iͷ7ˆG͔9y9"I*"I*Iř''H*I6+#6*I6"I*I͔9y9~,Go9"ILG*I63:IGHw'!q&ڥH:IV'*ÙDMƛͅ,*I*I:IOC7;HH$H:IH*I, :IH*I, w' .:IV'*ÙDMƛͅ,ڥHGw'R+ڥHG:IV'*ÙDMƛͅ,w'*I:I ͳ'|ʎH:I{H*I, :IʈH*I, .:IV'*ÙDMƛͅ,ڥHXH:IV'Z%w'I>(P;H>P;H>nP;H>TP;H>RP;H>oP;H>sP;H>SP;Hw'>2:DI>J4R+ҮE!"J;I"J2J*J~ 9F6I9F!J4*J"JF:JO:JG!y=PFOxgDF"J*JJIJ!J͎*Jͳ' ;I"J2J*J~ ʛFHڛF!J4*J"J{F:J!JڪF~=2J:JG>2Jx2J2J;I"J2J*J~ FuHF!J4*J"JF:JF J2J:J(G .ʹ$(Gͣ!2J(Gͤ,"J"J 2J:J)H:JG!J6#:J/2J:J2JØE,ͤ,"J*J"J2JÔE!J6#:Jwʹ$G "H"J:JH:JG:JO:J2JHSFR+H*/}o|gJ z>2:D J>#J:J2"D>!Eç;J'' 3COPYRIGHT *N1978 SCDP N<2C.W.RATLIFFx2Nx''[J 3'[J-3J0LKL*NK~›J6 #6 # FIELDSRECORD # :00000W.RATLIFFx2Nx''[J 3'[J-3JI:J I7>2J7I?~2J*JDMJ!J͎*J:J-!J7!Jy667~2JÅI?~2JO>-!J7J~ʗI#ÌI!J:J66*JDMJ!J͎*J:J