home *** CD-ROM | disk | FTP | other *** search
- ;
- Z33LIB.LIB
-
- Size (recs) CRC Version Author/Latest Issue Disk
- Z33LIB.REL 2k (15) CD14 0.5 Jay Sage 10/87 Z3LIB2
-
-
-
- Z33LIB is a collection of the module headers from the source code for the
- Z33LIB routines that have been written to date.
-
- A - FCB1CHK I - GETER3 Q - PUTER1 Y - SCAN
- B - FCB2CHK J - GETSFCB R - PUTER3 Z - SETEPB
- C - FCBCHK K - GETSRUN S - PUTERC 1 - STOPXSUB
- D - GCMDDU L - GETSUB T - PUTSUB 2 - SUBON
- E - GDEFDU M - HALTSUB U - QERROR 3 - Z33CHK
- F - GETCCP N - HIGHUSER V - REPARSE 4 - Z33FNAME
- G - GETECP O - PARSE2 W - RESEPB
- H - GETER1 P - PDEFDU X - RETCST
- :a
-
-
- FCB1CHK
-
- This routine checks the first default file control block to see if the
- token parsed there was a valid file specification. If there was an error
- (signalled by a nonzero value in the record-count byte), then this routine
- returns NZ and register A nonzero. A zero value and Z flag signals a valid
- FCB.
- :b
-
-
- FCB2CHK
-
- This routine checks the second default file control block to see if the
- token parsed there was a valid file specification. If there was an error
- (signalled by a nonzero value in the record-count byte), then this routine
- returns NZ and register A nonzero. A zero value and Z flag signals a valid
- FCB.
- :c
-
-
- FCBCHK
-
- This routine checks the file control block pointed to by DE to see if it
- contains a validly parsed file specification. ZCPR33 sets the record-count
- byte to a nonzero value if there was an error in resolving the file spec.
- If the FCB is valid, this routine returns Z and A=0. No other registers are
- affected.
-
- :d
-
-
- GCMDDU
-
- This routine examines the external commmand file control block to determine
- the directory (drive/user) in which the file was located during the path
- search. The values are returned in the BC register pair, with the drive in
- B being in the range 0..15. No other registers are affected.
- :e
-
-
- GDEFDU
-
- This routine gets the values of the current default (logged) drive/user
- area into BC by reading the CURDR and CURUSR bytes in the message buffer. No
- registers other than BC are affected.
- :f
-
-
- GETCCP
-
- This routine calculates the starting address of the CCP based on the BIOS
- warmboot vector. The result is returned in HL. No other registers are
- affected.
- :g
-
-
- GETECP
-
- This routine locates the name of the ECP in the command processor and
- returns its address in HL. All other registers are preserved.
- :h
-
-
- GETER1
-
- This routine supercedes the same routine in Z3LIB. It examines the error
- command line to determine if an error command is present or not. If none
- is present, A=0 and the Z flag is set. If an error command line is present,
- then A<>0, and NZ is returned. No other register is affected.
- :i
-
-
- GETER3
-
- This routine returns the value of the command error flag in register A and
- sets the flags accordingly. No other registers are affected.
- :j
-
-
- GETSFCB
-
- This routine locates the submit FCB in the command processor and returns
- its address in DE. If SUBMIT is not enabled or if ZCPR33 is not in memory,
- then the routine returns with the Z flag set. All other registers are
- preserved.
- :k
-
-
- GETSRUN
-
- This routine determines whether or not a SUBMIT job is currently running.
- If one is, the routine returns NZ. Only register AF is affected.
- :l
-
-
- GETSUB
-
- This routine gets the XSUB input redirection flag into the A register. No
- other registers are affected.
- :m
-
-
- HALTSUB
-
- This routine stops a submit job by deleting the $$$.SUB file. It uses the
- submit FCB in the command processor so that it adapts automatically to the
- correct drive and file name and type. No registers are affected.
- :n
-
-
- HIGHUSER
-
- This routine tests to see whether or not the command processor supports
- user numbers above 15. If ZCPR33 is not running or if high user support
- is disabled, then HIGHUSER returns with the zero flag set. No registers
- except AF are affected.
- :o
-
-
- PARSE2
-
- This routine calls the REPARSE entry point in the command processor to
- reparse the command line pointed to by HL. It is the user's responsibility
- to be sure that the command processor has not been overwritten in memory.
- No registers are changed. The two default file control blocks are filled.
- :p
-
-
- PDEFDU
-
- This routine puts the drive/user values in BC into the CURDR and CURUSR
- bytes in the message buffer, making that directory the default directory. No
- registers are affected.
- :q
-
-
- PUTER1
-
- This routine supercedes the same routine in Z3LIB, and its purpose is to
- disable the function. In ZCPR33 there is no way to turn external error
- handling on and off other than loading or clearing the error command line.
- The flag formerly used for this purpose is now used for the command error
- flag, which indicates the kind of command error that was detected. This
- replacement routine does nothing
- :r
-
-
- PUTER3
-
- This routine stores the value in register A into the command error flag.
- No registers are affected.
- :s
-
-
- PUTERC
-
- This routine supercedes the same routine in Z3LIB and differs only in that
- it limits the length of the error command line to 28 bytes, since the four
- bytes at the end of the command line space have been assigned other purposes.
- On entry, HL points to a null-terminated command string. This string is
- copied to the error command line, if it will fit. If it will not fit, then
- the error command line is cleared, and on return A=0 and the Z flag is set.
- On exit, HL points to the character in the new command line just after the
- last one copied. Other registers are preserved.
- :t
-
-
- PUTSUB
-
- This routine stores the contents of the A register into the XSUB input
- redirection flag. No registers are affected.
- :u
-
-
- QERROR
-
- This routine returns Z if the command status flag in the message buffer has
- the error bit set. Only register AF is affected.
- :v
-
-
- REPARSE
-
- This routine calls the REPARSE entry point in the command processor to
- reparse the command line starting one token later. It is the user's
- responsibility to be sure that the command processor has not been overwritten
- in memory. No registers are changed. The two default file control blocks
- are filled.
- :w
-
-
- RESEPB
-
- This routine resets the external program bit in the command status flag.
- No registers are affected.
- :x
-
-
- RETCST
-
- This routine returns the address of the command status flag in HL. None of
- the other registers is affected.
- :y
-
-
- SCAN
-
- This routine first initializes the FCB pointed to by DE and then calls the
- SCAN entry point in the command processor to parse a single token pointed to
- by HL into it. It is the user's responsibility to be sure that the command
- processor has not been overwritten in memory. No registers are changed.
- :z
-
-
- SETEPB
-
- This routine sets the external program bit in the command status flag. No
- registers are affected.
- :1
-
-
- STOPXSUB
-
- This routine resets the XSUB input redirection flag in the message buffer.
- No registers are affected.
- :2
-
-
- SUBON
-
- This routine tests to see if SUBMIT processing is enabled in the command
- processor. If so, it returns NZ. It will return Z if SUBMIT is not enabled
- or if the ZCPR33 command processor cannot be detected. Only register AF
- is affected.
- :3
-
-
- Z33CHK
-
- This routine checks to see that the version of the CCP that is running is
- version 3.X. Two tests must be passed. First, the version byte must be 3xH.
- Secondly, the byte at offset 3 must be a relative jump instruction (opcode
- 18H). If both tests pass, the routine returns with the zero flag set (Z).
- Otherwise the flag is reset (NZ).
- :4
-
-
- Z33FNAME
-
- This routine first initializes the FCB pointed to by DE and then calls the
- SCAN entry point in the command processor to parse a single token pointed to
- by HL into it. It is the user's responsibility to be sure that the command
- processor has not been overwritten in memory. The routine returns with HL
- pointing to the character the delimited the token. Valid delimiters are
- space, comma, semicolon, equals, greater than, less than, underscore or any
- control character less than space. No other registers are affected.