home *** CD-ROM | disk | FTP | other *** search
- Determine BDOS Type - BDOSTYP
- Save and Restore DMA Address - GETDMA, PUTDMA
- Get CP/M Plus Label Data - CP3LBL
- Display Register Contents - REGDUMP
- Get Current ZSLIB Version - ZSVERS
- Data Tables - DPERMO, DSTRM3, DSTRMO, DSTRW3, DSTRWK
- Temporary Output Routine - ZOUT
- :
- BDOSTYP - Gets BDOS type and version.
-
- ENTER: None
- EXIT: A = extended BDOS code, zero flag reset (NZ), if extended BDOS,
- A = FFh, zero flag set (Z), if not extended BDOS,
- BDOSVER (global) = extended BDOS indentifier or 0FFh if none,
- CPMVER (global) = CP/M version (22h = CP/M 2.2).
- USES: AF
-
- Usage: BDOSVER and CPMVER are public variable bytes (globals) available
- after this routine is called. For convenience, A = BDOSVER on exit. The
- extended BDOS identifiers currently in use are:
- 0 = ZRDOS
- "S" = ZSDOS
- "D" = ZDDOS
- :
- GETDMA - Gets and stores current DMA address.
-
- ENTER: None.
- EXIT: None.
- USES: None.
-
- Usage: Gets current DMA address under ZSDOS, ZDDOS, and ZRDOS. The address
- is stored internally for later use by PUTDMA. CP/M does not return the
- current DMA address, so it the programmer's responsibility to make sure he
- is running under an extended BDOS.
-
- PUTDMA - Restores DMA address.
-
- ENTER: None.
- EXIT: None.
- USES: None.
-
- Usage: Restore DMA address stored internally by GETDMA under ZSDOS, ZDDOS,
- and ZRDOS. Do not call this routine if GETDMA has not been previously
- called or if not running under an extended BDOS.
- :
- CP3LBL - Gets CP/M Plus disk label data.
-
- ENTER: B = drive (A=0, B=1, etc.)
- EXIT: A = label data, zero flag reset (NZ), if okay,
- A = 0, zero flag set (Z), if no label exists,
- A = FFh, zero flag set (Z), if extended error,
- H = error code if A=FFh:
- 01 = disk I/O,
- 04 = invalid drive.
- USES: HL (on error only), AF
-
- Usage: Label data returned in A is bit-mapped as follows:
- b4 = create date file stamping available,
- b5 = update date file stamping available,
- b6 = access date file stamping available,
- b7 = passwords required on protected files.
- :
- REGDUMP - Debugging module displays register contents.
-
- ENTER: None.
- EXIT: None.
- USES: None.
-
- Usage: Displays contents of registers A, HL, BC, DE, IX, and IY on console
- in a single line. Execution stops until a key is pressed. Pressing
- control-C (^C) causes an immediate exit via a warm boot.
- :
- ZSVERS - Returns current ZSLIB version.
-
- ENTER: None.
- EXIT: HL = ZSLIB version in BCD:
- H = major version,
- L = minor version.
- USES: HL
-
- Usage: For ZSLIB version 3.0, for example, H = 3 and L = 0. An alpha
- revision level identifier and the revision date are included in a null-
- terminated text string beginning at ZSVERS + 4.
- :
- These data tables are used internally by some ZSLIB routines. Check a
- table's source code for the details of its contents.
-
- DPERMO - One-byte wide table of days per month (non-leap year).
-
- DSTRM3 - Three-byte wide month abbreviations table.
-
- DSTRMO - Two-byte wide table pointing to month names.
-
- DSTRW3 - Three-byte wide day of week abbreviations table.
-
- DSTRWK - One-byte wide table of offsets pointing to day of week names.
- :
- ZOUT - Switchable character output.
-
- ENTER: A = character to print.
- EXIT: None.
- USES: None.
-
- Usage: This is a temporary module and should not be used. It will probably
- not be included in future versions of ZSLIB. The module compensates for a
- bug in SYSLIB's SOUT routine, which does not preserve the flags.