                       ******************************************
                       *                                        *
                       *   SYSTEM MENU FOR ACCOUNTING PACKAGE   *
                       *   SYS.COM by Dennis E. Baker 6/03/82   *
                       *                                        *
                       ******************************************
                       
        B6A3 =         ACC      EQU   0B6A3H     ;FIXED POINT ACCUMULATOR
        B5A4 =         CHAIN    EQU   0B5A4H     ;ROUTINE CHAINS PROGRAMS
        B56C =         CLR79    EQU   0B56CH     ;CLEAR 79 COLUMNS
        B527 =         CLSCRN   EQU   0B527H     ;CLEAR CONSOLE DISPLAY
        B58C =         CRLF     EQU   0B58CH     ;CARRIAGE RETURN ROUTINE
        B26A =         CURSOR   EQU   0B26AH     ;ROUTINE SETS CRT CURSOR
        B589 =         DBCRLF   EQU   0B589H     ;DOUBLE CRLF
        B19D =         EVALUE   EQU   0B19DH     ;STRING NUMERICAL CONVERT
        B0BB =         HIZCHK   EQU   0B0BBH     ;CHECK FOR ACCUM < 256
        B4B8 =         INPUT    EQU   0B4B8H     ;KEYBOARD INPUT ROUTINE
        B6BC =         IOADDR   EQU   0B6BCH     ;I/O ADDRESS POINTER
        B55B =         MVPRNT   EQU   0B55BH     ;MOVE AND PRINT BUFFER
        B52A =         OUTROW   EQU   0B52AH     ;STRING OUTPUT ROUTINE
        B6BF =         PBUFER   EQU   0B6BFH     ;PRINT BUFFER
        B55E =         PRNTBF   EQU   0B55EH     ;OUTPUT BUFFER TO SCREEN
        B59E =         SETCON   EQU   0B59EH     ;SET CONSOLE OUTPUT
        00FF =         T        EQU   0FFH       ;TERMINATOR CHARACTER
                       
        0100                    ORG   100H       ;COM FILE START
                       
        0100 CD9EB5    SYSTEM:  CALL  SETCON     ;SET CONSOLE DEVICE
        0103 CD27B5    SCLR:    CALL  CLSCRN     ;CLEAR SCREEN
        0106 CD89B5             CALL  DBCRLF
        0109 3E0E               MVI   A,14       ;LINE COUNT
        010B 32DA02             STA   LCNTR      ;TO COUNTER
        010E CD6CB5             CALL  CLR79
        0111 212323             LXI   H,2323H    ;##
        0114 22C9B6             SHLD  PBUFER+10
        0117 11C9B6             LXI   D,PBUFER+10
        011A 21CCB6             LXI   H,PBUFER+13
        011D 0638               MVI   B,56
        011F CD5BB5             CALL  MVPRNT
        0122 217701             LXI   H,SYSMEN   ;MENU LOCATION
        0125 CD2AB5    MENLP:   CALL  OUTROW     ;OUTPUT LINE
        0128 CD8CB5             CALL  CRLF       ;CARR RET & LINE FEED
        012B 21DA02             LXI   H,LCNTR    ;CNTR LOC
        012E 35                 DCR   M          ;CNTR-1
        012F 2ABCB6             LHLD  IOADDR     ;RECALL LAST ADDRESS
        0132 C22501             JNZ   MENLP      ;IF NOT LAST LINE
        0135 CD5EB5             CALL  PRNTBF
        0138 211510             LXI   H,1015H
        013B CD6AB2             CALL  CURSOR
        013E 21B402             LXI   H,SYSPRM   ;GET PROMPT LOC
        0141 CDB8B4             CALL  INPUT      ;INPUT CHOICE
        0144 CD9DB1             CALL  EVALUE     ;GET NUMBER
        0147 CD89B5             CALL  DBCRLF
        014A CDBBB0             CALL  HIZCHK     ;TEST FOR <256
        014D C20301             JNZ   SCLR       ;TOO MUCH
        0150 3AA3B6             LDA   ACC
        0153 B7                 ORA   A          ;STATUS
        0154 CA0301             JZ    SCLR       ;NO ZERO
        0157 FA0301             JM    SCLR       ;OR NEG
        015A FE0A               CPI   10         ;COMPARE 10
        015C F20301             JP    SCLR       ;>9 NO
        015F 87                 ADD   A          ;X2
        0160 5F1600             MOV   E,A! MVI D,0
        0163 21BE02             LXI   H,ABBREV-2
        0166 19                 DAD   D
        0167 5E23               MOV   E,M! INX H
        0169 56EB               MOV   D,M! XCHG
        016B 22D302             SHLD  FNAMES+1
        016E 21D202             LXI   H,FNAMES   ;FILE NAMES LOC
        0171 CDA4B5             CALL  CHAIN      ;CALL PROGRAM
        0174 C30301             JMP   SCLR       ;IF NOT FOUND ON DISK
                       
        0177 8A2323B723SYSMEN:  DB    138,35,35,183,35,35,T
        017E 8A23239053         DB    138,35,35,144,'SOUTHERN OFFICE SYSTEMS'
        0199 902323FF           DB    144,35,35,T
        019D 8A2323964D         DB    138,35,35,150,'MASTER MENU',150,35,35,T
        01B0 8A2323B723         DB    138,35,35,183,35,35,T
        01B7 8A23238531         DB    138,35,35,133,'1. JOURNAL DATA ENTRY'
        01D0 84352E2050         DB    132,'5. PERSONNEL/PAYROLL',133,35,35,T
        01E9 8A2323B723         DB    138,35,35,183,35,35,T
        01F0 8A23238532         DB    138,35,35,133,'2. ACCOUNTS RECEIVABLE'
        020A 83362E2053         DB    131,'6. SPECIAL EDUCATION',133,35,35,T
        0223 8A2323B723         DB    138,35,35,183,35,35,T
        022A 8A23238533         DB    138,35,35,133,'3. ACCOUNTS PAYABLE'
        0241 86372E2046         DB    134,'7. FUND ACCOUNTING',135,35,35,T
        0258 8A2323B723         DB    138,35,35,183,35,35,T
        025F 8A23238534         DB    138,35,35,133,'4. INVENTORY CONTROL'
        0277 85382E2047         DB    133,'8. GENERAL LEDGER',136,35,35,T
        028D 8A2323B723         DB    138,35,35,183,35,35,T
        0294 8A23239E39         DB    138,35,35,158,'9. WORD PROCESSOR'
        02A9 882323FF           DB    136,35,35,T
        02AD 8A2323B723         DB    138,35,35,183,35,35,T
        02B4 594F555220SYSPRM:  DB    'YOUR CHOICE',T
        02C0 4A52415241ABBREV:  DB    'JRARAPINPRSEFAGLWP'
        02D2 004A523120FNAMES:  DB    0,'JR1    '
        02DA 00        LCNTR:   DB    0          ;MENU LINE COUNTER
        02DB                    END



        RESULT:


 138,35,35,158,'9. WORD PROCESSOR'
        02A9 882323FF           DB    136,35,35,T
        02AD 8A2323B723         DB    138