mirror of https://github.com/wwarthen/RomWBW.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
637 lines
28 KiB
637 lines
28 KiB
;
|
|
|
|
TITLE ZMDHDR.Z80 - 09/29/88 - ZMD Configuration Header
|
|
; Copyrighted (c) 1987, 1988
|
|
; Robert W. Kramer III
|
|
|
|
PAGE
|
|
;- -;
|
|
; Update History ;
|
|
; ;
|
|
; Date Release Comments ;
|
|
; -------- ------- ---------------------------------------------- ;
|
|
; ;
|
|
; 09/29/88 v1.50 - Changed file descriptor table. (Sorry, but as ;
|
|
; many times as I am required to reassemble the ;
|
|
; ZMD system, it saves alot of time for me). ;
|
|
; 03/18/88 v1.49 - No change(s) were made to this file ;
|
|
; 03/13/88 v1.48 - Added STDBUF switch to enable/disable automatic ;
|
|
; calculation of memory available for DBUF. If ;
|
|
; enabled, CHKTPA will set OUTSIZ with an even ;
|
|
; paged maximum memory comparison word according ;
|
|
; to the address contained at location 6 and 7. ;
|
|
; The value set as end of program during assembly ;
|
|
; is subtracted from it. If BYE is NOT running, ;
|
|
; an additional 806H is subtracted. The LSB of ;
|
|
; the result is discarded and the new even paged ;
|
|
; value is stored for later comparison as maximum ;
|
|
; Read/Write memory available for disk buffer ;
|
|
; operations. ;
|
|
; ;
|
|
; * * SPECIAL NOTE * * MOST ALL systems will benefit by enabling this ;
|
|
; feature. Some special CP/M systems which place ;
|
|
; buffers below location (6 and 7), may need to ;
|
|
; disable this feature in which case DBUF size ;
|
|
; will be set to 16k. This fix consumed 1 more ;
|
|
; byte in the switch/value table below. Previous ;
|
|
; configuration headers are incompatible with this;
|
|
; release. Additional program code is 9 bytes. ;
|
|
; (See explaination at STDBUF:) ;
|
|
; ;
|
|
; 02/25/88 v1.47 - No change(s) made to configuration file ;
|
|
; 01/27/88 v1.46 - No change(s) made to configuration file ;
|
|
; 01/17/88 v1.45 - First public release ;
|
|
; 11/19/87 v1.00 - Initial version ;
|
|
;- -;
|
|
|
|
;-------------------------------------------------------------------------;
|
|
; Introduction |
|
|
;-------------------------------------------------------------------------;
|
|
;
|
|
; This document is a detailed listing of all the program option toggles
|
|
; and their functions within the ZMD environment which when used in
|
|
; conjunction with the source listings, install program and reference
|
|
; manual, provide all the necessary documentation to support program
|
|
; maintenance.
|
|
|
|
;
|
|
;-------------------------------------------------------------------------;
|
|
; EQUates Header |
|
|
;-------------------------------------------------------------------------;
|
|
|
|
|
|
INCLUDE EQUATES.INS ; Include system constant definitions
|
|
|
|
;
|
|
;-------------------------------------------------------------------------;
|
|
; PUBLIC Declarations: |
|
|
;-------------------------------------------------------------------------;
|
|
|
|
|
|
PUBLIC ACCMAP,ASKAREA,ASKIND,CLRSCRN,CLRSTR,DESWAIT,DRV
|
|
PUBLIC LOCOFF,MHZ,MINKSPD,MSPEED,PAGLEN,PRDRV,PRUSR,USR,WHEEL
|
|
PUBLIC WRAP,WRTLOC,CONOUT,MDINST,MDINP,MDOUTST,MDCARCK,MDOUTP
|
|
PUBLIC KNDTBL,TYPTBL,MAXTYP,DESCRIB,FORNAM,MSGDESC,DSTAMP
|
|
PUBLIC INCLDU,UNINIT,DRIVE,USER,LOGNAM,SETAREA,CLOCK,RTC
|
|
PUBLIC TIMEON,CREDIT,EDATE,DSPTOS,STDBUF
|
|
|
|
;
|
|
;-------------------------------------------------------------------------;
|
|
; EXTERNAL Declarations: |
|
|
;-------------------------------------------------------------------------;
|
|
|
|
|
|
EXTRN MONTH,DAY,YEAR,HOUR,MINUTE,DEST,FILE,ZMDNAM,INSNAM
|
|
EXTRN MAPNAM,PRGUTL,PUBFOR,PUBNEW,SYSFOR,PUBFOR,INSNAM
|
|
EXTRN SYSNEW,FCBCLR,FCBLOG,TEMPFIL,BCDBIN,TIMBUF,DUD,DUU
|
|
|
|
;
|
|
;-------------------------------------------------------------------------;
|
|
; Program configuration starts here |
|
|
;-------------------------------------------------------------------------;
|
|
;
|
|
; Options that are most often changed are marked with ';*' at the start of
|
|
; the comment line for that option. Simple systems not using time clocks,
|
|
; user logs, etc. will keep most of those 'NO'. RCPM systems running the
|
|
; usual bulletin board systems, etc., will change most of those to 'YES'.
|
|
;
|
|
MHZ: DB 10 ; Microprocessor speed - use integer 1,4,5, etc.
|
|
;MSPEED: DW 003CH ; Location of modem speed indicator byte
|
|
MSPEED: DW 0600H ; Location of modem speed indicator byte
|
|
; [WBW] placed in I/O overlay
|
|
|
|
WRTLOC: DB NO ; Set/reset WRTLOC so BYE won't hang up. Check
|
|
LOCOFF: DB 12 ; your BBS documentation - many modern systems
|
|
; don't need WRTLOC. If unsure, set WRTLOC to NO.
|
|
; Code to set and reset WRTLOC assumes the WRTLOC
|
|
; byte to be located "LOCOFF" bytes from the JP
|
|
; COLDBOOT instruction at the beginning of the BYE
|
|
; BIOS jump table. (YES for MBBS and PBBS).
|
|
|
|
STDBUF: DB NO ; If the size of your TPA cannot be calculated by
|
|
; using one of the two following methods, disable
|
|
; this by setting to NO. ZMD will Automatically
|
|
; calculate the maximum disk buffer size allowed. If
|
|
; enabled, CHKTPA will determine whether or not
|
|
; BYE is running, if so uses (0006)-1. Else
|
|
; subtracts 806H from (0006). If disabled, DBUF
|
|
; setting will be used as default (Normally set to
|
|
; 16k). Either way, if descriptions are allowed,
|
|
; the total number of uploads allowed is set based
|
|
; on the value of OUTSIZ divided by maximum bytes
|
|
; per description entry.
|
|
|
|
DESWAIT:DB 2 ; This is the number of minutes of inactivity during
|
|
; an upload description or Help Guide prompt before
|
|
; logging aborting the input routine. If the
|
|
; caller was entering a description, the current
|
|
; description buffer is written to disk before
|
|
; resetting your BYE program's disk write lock flag
|
|
; (WRTLOC), if enabled.
|
|
|
|
MINKSPD:DB 1 ; Minimum speed acceptable for 1k packet file
|
|
; transfers. If you are on a network such as PC
|
|
; Pursuit, and are able to RECEIVE incoming calls,
|
|
; set this byte to 1. The delays these networks
|
|
; use to send data back and forth make 1k packets
|
|
; advantageous to even 300 bps users. If you are
|
|
; not on a network such as PC Pursuit, it's simply
|
|
; a matter of preference, but why not let the 300
|
|
; bps callers experience the 1k packet transfers?
|
|
; (1 = 300, 5 = 1200, 6 = 2400, ..., 9 = 19,200)
|
|
|
|
BUFSIZ: DB 16 ; Normal disk systems can transfer 16k from
|
|
; computer to disk in 2-3-4 seconds and less. Some
|
|
; very slow 5-1/4" floppy systems (such as North
|
|
; Star) may take up to 20-30 seconds to transfer
|
|
; 16k. This would cause several timeouts at 10
|
|
; seconds each. If you experience any timeouts,
|
|
; try changing BUFSIZ to something smaller, perhaps
|
|
; 8k or even 4k.
|
|
|
|
CLRSCRN:DB NO ; Yes, you want ZMD to clear your screen locally
|
|
CLRSTR: DB 1AH,00H ; during display of batch file transfers and all
|
|
DB 00H,00H ; the help menus. If you set CLRSCRN to YES, enter
|
|
DB 00H,00H ; your clear screen sequence in the 6 bytes aside.
|
|
DB '$' ; (If your terminal uses ^Z, leave as is, 1AH = ^Z)
|
|
|
|
PAGLEN: DB 24 ; This is the number of lines to display in between
|
|
; [more] pauses. (Set to 0 to disable pauses).
|
|
|
|
;
|
|
;-------------------------------------------------------------------------;
|
|
; Timekeeping Considerations |
|
|
;-------------------------------------------------------------------------;
|
|
;
|
|
; If you have a clock installed (either in your BYE program or internal),
|
|
; set the following switches to your liking. If running ZMD without a
|
|
; clock, set these all NO.
|
|
;
|
|
CLOCK: DB NO ; Clock/date reader code installed in BYE program
|
|
RTC: DB NO ; Clock/date reader code installed at RTCTIM:
|
|
|
|
TIMEON: DB NO ; Restrict downloads to maximum time allowed
|
|
MAXMIN: DB 60 ; Total minutes allowed for downloads. This should
|
|
; be set if TIMEON is YES and CLOCK is NO.
|
|
DSPTOS: DB NO ; Yes to display 'Online nn minutes' messages
|
|
LHOUR: DW 0000H ; Logon hour address (If RTC). LHOUR+2 = logon
|
|
; minute address.
|
|
|
|
;
|
|
;-------------------------------------------------------------------------;
|
|
; Bit Map Layout |
|
|
;-------------------------------------------------------------------------;
|
|
;
|
|
; The following byte contains information corresponding to the filename
|
|
; bytes of the file being considered for transfer. Enabling any of the
|
|
; options causes ZMD to look at the high bit of the byte position
|
|
; indicated below (F1=filename byte 1, T2=file type byte 2, etc). These
|
|
; restrictions are always bypassed when using ZCPR and the WHEEL is set.
|
|
;
|
|
; Bit: 76543210 ; Correspond to definitions below
|
|
; ||||||||
|
|
ACCMAP: DB 11111101B ; Set any bits of this byte according
|
|
; __________\______/ ; to your own preference.
|
|
; /
|
|
;
|
|
; 7 | F1 | File not for distribution. If file is a ARK/ARC/LBR
|
|
; | | file, individual members may be downloaded (no Batch)
|
|
; 6 | F3 | File can be downloaded regardless of user's access
|
|
; 5 | T2 | $SYS files not sent or reported
|
|
; 4 | T3 | .??# files with labels not sent
|
|
; 3 | T1/2/3 | .COM files not sent or reported
|
|
; 2 | T1/2/3 | Rename .COM to .OBJ and .PRL to .OBP on receive
|
|
; 1 | -- | RESERVED FOR FUTURE USE
|
|
; 0 | T1/2/3 | .SYS, .NDR, .RCP, file extents not accepted. (ZCPR)
|
|
|
|
;
|
|
;-------------------------------------------------------------------------;
|
|
; ZCMD/ZCPR |
|
|
;-------------------------------------------------------------------------;
|
|
;
|
|
; If using ZCPR low memory bytes to keep track of maximum drive and user,
|
|
; set USEMAX to yes. ZMD will use the values at locations DRIVMAX and
|
|
; USRMAX for maximum drive/user. If USEMAX is NO, hardcode MAXDRV and
|
|
; MAXUSR to your own requirements.
|
|
;
|
|
WHEEL: DW 3EH ; Location of ZCPR wheel byte
|
|
USEMAX: DB NO ;*Use values at DRIVMAX and USRMAX for maximum
|
|
; (Else use MAXDRV and MAXUSR values)
|
|
DRIVMAX:DW 3DH ; ZCPR maximum drive memory byte
|
|
USRMAX: DW 3FH ; ZCPR maximum user memory byte
|
|
MAXDRV: DB 16 ; Maximum download drive allowed
|
|
MAXUSR: DB 16 ; Maximum download user allowed
|
|
|
|
;
|
|
;-------------------------------------------------------------------------;
|
|
; Access Restrictions |
|
|
;-------------------------------------------------------------------------;
|
|
;
|
|
; If ACCESS is YES, ZMD will inspect AFBYTE (located ACBOFF bytes from JP
|
|
; COLDBOOT) for the following flag data:
|
|
;
|
|
;
|
|
; Bit: 7 6 5 4 3 2 1 0
|
|
; | | | | | | | |
|
|
; Privileged user ---* | | | | | | |
|
|
; Upload -----* | | | | | |
|
|
; Download -------* | | | | | * Of these bits, only 3, 5, 6
|
|
; CP/M ---------+ | | | | and 7 are used by ZMD. Bit
|
|
; Write -----------* | | | numbers are powers of 2, with
|
|
; Read -------------+ | | bit 0 being least significant
|
|
; BBS ---------------+ | bit of byte.
|
|
; System -----------------+
|
|
;
|
|
;
|
|
ACCESS: DB NO ;*Yes, your system sets BYE's bit-mapped flag
|
|
; register to restrict user's ability to upload,
|
|
; download, use the 'RM' option to upload message
|
|
; files to your BBS's message base, or to use the
|
|
; 'RW' option for 'privileged user' upload without
|
|
; being required to give upload descriptions.
|
|
|
|
ACBOFF: DB 21 ; If you set ACCESS to YES, you 'might' need to
|
|
; set this to reflect the number of bytes from JP
|
|
; COLDBOOT to ACCESS byte. In most cases, leave
|
|
; alone.
|
|
|
|
;
|
|
;-------------------------------------------------------------------------;
|
|
; Upload Configurations |
|
|
;-------------------------------------------------------------------------;
|
|
;
|
|
MSGFIL: DB NO ; Some BBS's allow callers to upload preformatted
|
|
; text files which are appended to the message
|
|
; base. (MBBS and PBBS are examples of this). If
|
|
; you're running MBBS or PBBS and wish to support
|
|
; this, simply set MSGFIL to YES. Message file
|
|
; uploads go to PRDRV and PRUSR.
|
|
|
|
HIDEIT: DB NO ; Yes, make all normal uploads $SYS files. This
|
|
; way, new uploads will not appear in a DIRectory
|
|
; listing and cannot be viewed or even downloaded
|
|
; until they are cleared by SYSOP. (New uploads
|
|
; will show up when the WHEEL byte is ON and a $S
|
|
; option is used to show SYSTEM files. Use the $O
|
|
; option to list ONLY $SYS files. Reference will
|
|
; be made to these files in the in the NEW and FOR
|
|
; listings if those features are enabled). Private
|
|
; uploads, and uploads made with the WHEEL byte
|
|
; set are NOT made $SYS. You can use POWER or
|
|
; NSWEEP to set to $DIR.
|
|
|
|
;
|
|
;-------------------------------------------------------------------------;
|
|
; Upload Routing Options |
|
|
;-------------------------------------------------------------------------;
|
|
;
|
|
; The following equates determine what drive/user area uploads will be sent
|
|
; to. If you prefer to enable upload routing (ASKAREA set YES), you will
|
|
; have to set MAXTYP to the letter of the highest category you wish to
|
|
; support, and configure TYPTBL: and KNDTBL: tables below for your own
|
|
; system. Do NOT set ASKAREA and SETAREA both to YES.
|
|
;
|
|
ASKAREA:DB NO ;*Yes, you want upload routing to multiple drive
|
|
; and user areas. The caller will be asked what
|
|
; the file (or files) he is uploading are for and
|
|
; his uploads will then be forwarded to the
|
|
; appropriate area. You will need to set up the
|
|
; categories at KNDTBL: for your own system and
|
|
; set the drive/user area each category belongs on
|
|
; at label TYPTBL:. There can be up to 26 different
|
|
; drive/user and category combinations. This applies
|
|
; for both private and normal uploads. Upload
|
|
; routing is disabled when the WHEEL byte is set,
|
|
; in which case, normal uploads will go to the
|
|
; current drive/user area and private uploads will
|
|
; go to the drive/user equated at PRDRV and PRUSR.
|
|
|
|
SETAREA:DB NO ;*Yes, you wish to have all regular uploads sent
|
|
DRV: DB 'B' ; to the drive/user equated at DRV and USR to left.
|
|
USR: DB 0 ; If WHEEL byte is set, regular uploads will go to
|
|
; the current or specified drive/user. Unless you
|
|
; ASKAREA is YES, all private files uploaded with
|
|
; the 'RP' option will be sent to PRDRV and PRUSR
|
|
; regardless of WHEEL status.
|
|
|
|
PRDRV: DB 'H' ;*This is the drive/user area where ALL files sent
|
|
PRUSR: DB 15 ;*to the sysop with the 'RP' option will go (unless
|
|
; ASKAREA below is YES). This permits experimental
|
|
; files, replacement and/or proprietary programs to
|
|
; be sent to an area only accessible by the sysop.
|
|
; This is also the drive and user area where message
|
|
; files are uploaded, if MSGFIL is set YES. (If
|
|
; ASKAREA is YES, this is the drive/user where
|
|
; uploads will go when 'RP' is specified, and WHEEL
|
|
; is set). (If MSGDESC is YES, this is the drive
|
|
; and user area the FOR text file will be placed
|
|
; before appending it to the BBS system's message
|
|
; base).
|
|
|
|
CREDIT: DB NO ;*Yes, callers are given credit for the amount of
|
|
; time they spend uploading non-private files. A
|
|
; caller who spends 30 minutes sending an upload
|
|
; gets 30 minutes added to his TLOS. (You must
|
|
; set either CLOCK or TIMEON to YES to use this
|
|
; feature).
|
|
|
|
;
|
|
;-------------------------------------------------------------------------;
|
|
; Upload Description Options |
|
|
;-------------------------------------------------------------------------;
|
|
;
|
|
; This section has to do with upload descriptions. If you do not intend
|
|
; on implementing upload descriptions, set DESCRIB and MSGDESC to NO. The
|
|
; rest of these values are then ignored. If using descriptions, set ONLY
|
|
; one of these to YES, not both.
|
|
;
|
|
MSGDESC:DB NO ; Yes, your BBS system supports message uploads,
|
|
; and you prefer upload descriptions to be placed
|
|
; in your BBS message system (set DESCRIB NO).
|
|
; MBBS users need to install MFMSG.COM with the
|
|
; MBBSINIT program. Then set your BYE program to
|
|
; know about message file uploads by setting the
|
|
; MSGFIL option in BYE/MBYE to YES. If set YES,
|
|
; ZMD will produce a FOR text file when writing
|
|
; upload descriptions. This FOR file will go to
|
|
; the drive and user area equated at PRDRV and
|
|
; PRUSR just before being appended to your BBS
|
|
; system's message base.
|
|
|
|
DESCRIB:DB NO ;*Yes, requiring users to provide descriptions for
|
|
; any files they upload. These descriptions will
|
|
; be added to the current FOR file where they can
|
|
; be viewed by callers with the ZFORP utility.
|
|
; Sysop can add new descriptions with the ZFORS
|
|
; utility (See ZMD.WS for more information on ZMD
|
|
; support files). Uploads sent to the SYSOP private
|
|
; upload area will not be require descriptions, nor
|
|
; will files uploaded with the 'RW' option - user
|
|
; must be a privileged user (bit 7 in ACCESS byte
|
|
; set) or have WHEEL access and PUPOPT must be set
|
|
; YES to use the 'RW' option.
|
|
|
|
FORNAM: DB 'FOR ' ; Description text file (Must be 11 bytes)
|
|
DRIVE: DB 'A' ;*If using with DESCRIB set YES, you must indicate
|
|
USER: DB 14 ;*what drive/user you want the 'FOR' file to be
|
|
; placed.
|
|
|
|
;
|
|
; If DESCRIB above is set to YES, you'll have to tell ZMD what information
|
|
; you want included in the first line of each description. Code is included
|
|
; in ZMD to place all (any) information in the upload description header in
|
|
; in the same column position no matter what the filename or file category
|
|
; length is. The following illustrates a full implementation of DESCRIB.
|
|
;
|
|
; Example upload description header:
|
|
;
|
|
; -----
|
|
; ZMD150.LBR - Communications (C3:) Rcvd: 09/21/88
|
|
; / / /
|
|
; _______/ ______/ _______/
|
|
; ASKIND INCLDU DSTAMP
|
|
;
|
|
;
|
|
ASKIND: DB NO ;*Yes, ask for the category of uploads and write it
|
|
; into the upload description header. If you set
|
|
; this to YES, make sure you set MAXTYP below to
|
|
; the highest letter choice you wish to support and
|
|
; edit the text at KNDTBL: up to and including your
|
|
; MAXTYP setting. (Used only with DESCRIB).
|
|
|
|
INCLDU: DB YES ;*Yes, include the drive/user area of the uploaded
|
|
; file into the upload description header.
|
|
; (Used only with DESCRIB).
|
|
|
|
DSTAMP: DB YES ;*Yes, include the date the upload was received into
|
|
; the upload description header. (NO if no clock)
|
|
; (Used only with DESCRIB).
|
|
|
|
PUPOPT: DB YES ;*Yes, description request of file upload will be
|
|
; skipped when "RW" is used in the ZMD command line
|
|
; (i.e. ZMD RW FILE.EXT). This command may only be
|
|
; used by those considered "priviledged" users on
|
|
; your system or WHEEL users. Uploads of this type
|
|
; will be tagged in the ZMD.LOG file as private, so
|
|
; as not to display with the NEW command. (See
|
|
; ACCESS equate description above for information
|
|
; on 'priviledged' users).
|
|
|
|
WRAP: DB 64 ; Column position where word wrap will occur. If
|
|
; you are using MSGDESC and have problems with an
|
|
; 'Invalid format' error from MFMSG.COM, try setting
|
|
; WRAP to something smaller, like 62 or 63. (Word
|
|
; wrap can be disabled by the user with ^W during
|
|
; description entry. Enter 72 here to disable
|
|
; completely).
|
|
|
|
;
|
|
;-------------------------------------------------------------------------;
|
|
; Special Sysop Downloads |
|
|
;-------------------------------------------------------------------------;
|
|
;
|
|
SPLDRV: DB 'H' ;*Drive/user area for downloading private files
|
|
SPLUSR: DB 14 ;*from sysop. This permits him to put a special
|
|
; file in this area, then leave a private note
|
|
; to that person mentioning the name of the file
|
|
; and how to download it (ZMD SP filename.ext).
|
|
; Although anybody 'could' download that program,
|
|
; they don't know what (if any) files are there.
|
|
; A high degree of security exists, while the
|
|
; SYSOP still has the ability to make special
|
|
; files available. Thus any person can be a
|
|
; temporary 'privileged user'.
|
|
|
|
;
|
|
;-------------------------------------------------------------------------;
|
|
; File Transfer Log |
|
|
;-------------------------------------------------------------------------;
|
|
;
|
|
LOGCAL: DB NO ;*ZMD.LOG is produced if LOGCAL is set YES. All
|
|
; file transfers are logged. You can then use
|
|
; ZNEWP.COM to show listings of recent uploads.
|
|
EDATE: DB NO ; Yes, show date in ZMD.LOG in dd/mm/yy format
|
|
; instead of mm/dd/yy format.
|
|
|
|
LOGNAM: DB 'ZMD LOG' ; File transfer log (Must be 11 bytes)
|
|
LOGDRV: DB 'A' ;*Drive to find ZMD.LOG on.
|
|
LOGUSR: DB 14 ;*User area to find ZMD.LOG on.
|
|
|
|
LSTCLR: DB 'LASTCALR???' ; Last caller file (Must be 11 bytes)
|
|
LASTDRV:DB 'A' ;*Drive to find LASTCALR??? file on.
|
|
LASTUSR:DB 14 ;*User area to find LASTCALR??? file on.
|
|
LCNAME: DB 0 ;*Position of last caller's name in the LASTCALR???
|
|
; file. (MBBS is 11, PBBS is 0).
|
|
|
|
LOGLDS: DB NO ;*Count number of up/down loads since login. Your
|
|
UPLDS: DW 0054H ; BBS program can check UPLDS and DNLDS when a user
|
|
DNLDS: DW 0055H ; logs out and update either the user's file or a
|
|
; file for this purpose. You can either modify
|
|
; your BBS entry program to check the LASTCALR file
|
|
; before updating and then update (risky), or make
|
|
; a separate program that BYE calls when logging off
|
|
; a user (preferred). (YES for PBBS). Clear UPLDS
|
|
; and DNLDS to 0 from your BBS program when somebody
|
|
; logs in. NOTE: Clear ONLY when a user logs in,
|
|
; not when he re-enters the BBS program from CP/M.
|
|
|
|
;
|
|
;-------------------------------------------------------------------------;
|
|
; File Descriptors |
|
|
;-------------------------------------------------------------------------;
|
|
;
|
|
; This table defines the text to be included in upload description headers
|
|
; (DESCRIB and ASKIND) and/or defines categories for uploading to multiple
|
|
; drive/user areas (If ASKAREA and NOT SETAREA). Change as desired, if
|
|
; this list is not suitable. Do NOT remove any of the text at KNDTBL:.
|
|
; Simply edit the text below up to/and including your MAXTYP setting.
|
|
; MAXTYP below must be set to whatever letter your maximum choice will be.
|
|
; Make sure you leave all the following categories EXACTLY 31 bytes long
|
|
; (29 bytes of text plus the CR,LF equals 31) or you will be CERTAIN to
|
|
; have problems with the double column formatting later on in the program.
|
|
;
|
|
MAXTYP: DB 'W' ; Letter of highest category you will support.
|
|
|
|
KNDTBL: DB ' A) - BBS Lists, PC Pursuit ',CR,LF
|
|
DB ' B) - CP/M Modem Program ',CR,LF
|
|
DB ' C) - CP/M Utility ',CR,LF
|
|
DB ' D) - CP/M Lbr, Ark, Catalog',CR,LF
|
|
DB ' E) - CP/M Plus Specific ',CR,LF
|
|
DB ' F) - CP/M Games & Humor ',CR,LF
|
|
DB ' G) - CP/M Wordprocessing ',CR,LF
|
|
DB ' H) - CP/M Printer Utility ',CR,LF
|
|
DB ' I) - CP/M OS Enhancement ',CR,LF
|
|
DB ' J) - CP/M BBS Software ',CR,LF
|
|
DB ' K) - CP/M Assemb/Disassemb ',CR,LF
|
|
DB ' L) - CP/M Language (Other) ',CR,LF
|
|
DB ' M) - Turbo Pascal ',CR,LF
|
|
DB ' N) - dBase & Database ',CR,LF
|
|
DB ' O) - "C" ',CR,LF
|
|
DB ' P) - Text & Information ',CR,LF
|
|
DB ' Q) - DOS Modem Program ',CR,LF
|
|
DB ' R) - DOS BBS Software ',CR,LF
|
|
DB ' S) - DOS Language ',CR,LF
|
|
DB ' T) - DOS Assemb/Disassemb ',CR,LF
|
|
DB ' U) - DOS Lbr, Arc, Catalog ',CR,LF
|
|
DB ' V) - DOS Wordprocessing ',CR,LF
|
|
DB ' W) - DOS Printer Utility ',CR,LF
|
|
DB ' X) - DOS Games & Humor ',CR,LF
|
|
DB ' Y) - DOS Application ',CR,LF
|
|
DB ' Z) - DOS Utility ',CR,LF
|
|
DB 0 ; leave the table terminator alone.
|
|
|
|
;
|
|
;-------------------------------------------------------------------------;
|
|
; Upload Routing Table |
|
|
;-------------------------------------------------------------------------;
|
|
;
|
|
; If ASKAREA is set YES, then set these areas up to match the message text
|
|
; in KNDTBL: above. Note that PRIVATE uploads may be sent to a different
|
|
; drive as well as a different user area. Each entry is expressed as
|
|
; 'drive letter',user area. Simply set MAXTYP above to the highest
|
|
; letter choice supported. (Do NOT comment out any of the following
|
|
; storage bytes).
|
|
;
|
|
; _________
|
|
; NOTE: / A \ <--- 'A' Corresponds to category 'A' above
|
|
; 'A',1,'B',15,
|
|
; \ / \ /
|
|
; Normal upload --+ |
|
|
; Private upload -------+
|
|
;
|
|
|
|
TYPTBL:
|
|
; _________ _________ _________ _________
|
|
; / A \ / B \ / C \ / D \
|
|
DB 'B',1,'F',15, 'B',0,'F',15, 'B',2,'F',15, 'B',4,'F',15
|
|
; _________ _________ _________ _________
|
|
; / E \ / F \ / G \ / H \
|
|
DB 'B',5,'F',15, 'B',6,'F',15, 'C',0,'F',15, 'C',1,'F',15
|
|
; _________ _________ _________ _________
|
|
; / I \ / J \ / K \ / L \
|
|
DB 'C',2,'F',15, 'C',3,'F',15, 'A',1,'F',15, 'A',5,'F',15
|
|
; _________ _________ _________ _________
|
|
; / M \ / N \ / O \ / P \
|
|
DB 'A',2,'F',15, 'A',3,'F',15, 'A',4,'F',15, 'A',6,'F',15
|
|
; _________ _________ _________ _________
|
|
; / Q \ / R \ / S \ / T \
|
|
DB 'E',0,'F',15, 'E',1,'F',15, 'E',2,'F',15, 'E',3,'F',15
|
|
; _________ _________ _________ _________
|
|
; / U \ / V \ / W \ / X \
|
|
DB 'F',0,'F',15, 'F',1,'F',15, 'F',2,'F',15, 'F',3,'F',15
|
|
; _________ _________
|
|
; / Y \ / Z \
|
|
DB 'G',0,'F',15, 'H',0,'F',15
|
|
|
|
;
|
|
;=========================================================================;
|
|
;>>>>>>>>>>>>>> DO NOT CHANGE ANYTHING BEYOND THIS POINT <<<<<<<<<<<<<<<|
|
|
;=========================================================================;
|
|
;-------------------------------------------------------------------------;
|
|
; Version Identification |
|
|
;-------------------------------------------------------------------------;
|
|
;
|
|
; If/when INSTALL is first ran, it checks these next 3 bytes to make sure
|
|
; it is installing the proper version of ZMD.COM. If these bytes do not
|
|
; match, the INSTALL procedure will abort. (Don't change this one)
|
|
;
|
|
INSVERS:DB '150' ; Don't change this one
|
|
|
|
;
|
|
;-------------------------------------------------------------------------;
|
|
; User Definable Storage Bytes |
|
|
;-------------------------------------------------------------------------;
|
|
;
|
|
; If you make changes to the configuration table, make them here. You
|
|
; are allowed 2 bytes for switches, or storage for an address, etc. Any
|
|
; changes before this point and ZINSTL will not run.
|
|
;
|
|
SPARE1: DB 0 ; User definable storage
|
|
SPARE2: DB 0
|
|
|
|
;
|
|
;-------------------------------------------------------------------------;
|
|
; Clock/Date Reader Code |
|
|
;-------------------------------------------------------------------------;
|
|
;
|
|
; Install your clock/date reader code here. RTCTIM gets called to retrieve
|
|
; the current date and time. All values must be stored in binary form.
|
|
; A 6 byte clock buffer called TIMBUF can be used as a work area. Call
|
|
; BCDBIN to convert your BCD (Binary Coded Decimal) value in A to binary
|
|
; value in A. Delete all ';<=' lines; after installing your custom
|
|
; routine.
|
|
;
|
|
ORG 4FEH ; Allow 130 bytes for RTC insert
|
|
;
|
|
RTCTIM::LD A,0 ;<= Delete lines if reader code installed
|
|
LD (MONTH),A ;<= Current month (1-12)
|
|
LD (DAY),A ;<= Current date (1-31)
|
|
LD (YEAR),A ;<= Current year (0-99)
|
|
LD (MINUTE),A ;<= Current minute (0-59)
|
|
LD (HOUR),A ;<= Current hour (0-23)
|
|
RET
|
|
|
|
;
|
|
;-------------------------------------------------------------------------;
|
|
; Input/Output Patch Area |
|
|
;-------------------------------------------------------------------------;
|
|
|
|
ORG 580H ; Modem routine starts here
|
|
|
|
CONOUT: JP 0000H ; BIOS local console output routine address
|
|
MINIT: JP 0000H ; Startup initialization routine
|
|
UNINIT: JP 0000H ; Exit uninitialize routine
|
|
MDOUTP: JP 0000H ; Send character out modem
|
|
MDCARCK:JP 0000H ; Test for carrier
|
|
MDINP: JP 0000H ; Get character from modem
|
|
MDINST: JP 0000H ; Check receive ready
|
|
MDOUTST:JP 0000H ; Check send ready
|
|
|
|
;ORG 600H ; Allow 128 bytes for I/O overlay
|
|
ORG 1000H ; Allow for large I/O overlay
|
|
|
|
|
|
;
|
|
; Overlay ends here
|
|
;
|
|
|