HalBower's Home Page While
the 8-bit CP/M computers may be fading, some of us dinosaurs still keep
programming for them. In the process of preparing files for release of the
Banked and portable (B/P) Bios, several Y2K and related problems have been
uncovered. Fixes for some of the more critical ones (along with some
corrected and new Z-System utilities) are here.
The utility to extract elements from .LBR libraries with create and
modify date preservation improperly displays the year (last two) digits
for years > 1999 ('01' shows as 'A1'). A new option was also added so
that the default date presentation will be either 'dd.mm.yy' or
'mm/dd/yy'. Since this is the recommended program for accessing the
remaining packages, the .COM file alone is provided, defaulting to
automatically decompress files when extracting. You might want to rename
this simply 'LBREXT.COM'.
CP/M Library Extractor (default is decompress)
The .LBR file contains source, docs, history and a Config file for
the ZCNFG24 utility. ZSLIB, Z3LIB and SYSLIB are required for linking.
Version 1.6 (the last one released) of the Z-System Editor (ZDE)
does not retain the creation date for files greater than one extent.
Since no source for this program was released, only a patch file is
available for correction. A configuration flag was also added to set the
default 'Auto-Indent' feature for Non-Documents (it currently is always
ON when files are first opened). Before you apply this patch, insure
that your source ZDE16.COM matches the 'was:' code to avoid corruption
(and other interesting side effects).
Assembly patch to fix/modify ZDE16.COM
The CP/M 2.2 version (at least) of DosDisk(tm) does not correctly
convert Dates to MSDOS format when copying files to 5.25" '360k'
formatted disks for transferring to MSDOS machines for years > 1999.
2000 will be converted to '80' and 2001 to '29' with additional
corruption to the month value (17 July 2001 appears as 17th day, 15th
month, 2029 :^) This Assembly patch corrects the problem and _should_ be
good until 31 Dec 2076 when the rest of DateStamper(tm) and ZSDOS stamps
will fail. WARNING: This has only been tested for the CP/M 2.2 version
of DosDisk in the final 1.0 release version with subdirectory support
enabled. Check the 'was:' code in the patch source before applying to
- Assembly patch for DOSDISK.COM (CP/M 2.2)
The COPY.COM utility provided with ZSDOS, B/P Bios and on old RBBS
systems has a cosmetic Y2K glitch when copying a file where the file
already exists at the destination (1999 is 'newer' than 2001). This
package corrects the problem.
- Complete package for Copy utility with date preservation
It is possible that a buggy version of the ZXD Directory listing
program has been released since late 1993 and which would not display
dates for certain files. This updated package corrects the problem, and
also automatically sizes the screen(s) of data (lines and columns) to
values in the ZCPR3 Termcap (if one is detected). It also clears up the
printed output then the '/p' toggle is passed. NOTE: I usually rename
the executable to 'D.COM', set defaults to desired values, place it with
other utilities in A15: and set the 'SYStem' and 'PUBlic' bits for fast
and easy access.
Complete package for Z-System Directory Lister
To apply .HEX patches (such as the ZDE16 and DosDisk fixes above), a
utility such as the venerable MLOAD is usually used. Unfortunately, that
program does not work with odd sizes of BDOS and CCP/CPR which are
common with the B/P Bios (which allow banking of much of the code) so I
wrote one a number of years ago called MYLOAD. This is a re- release of
that package, and as with most other utilities, built-in help is
available by entering 'MYLOAD //' at the CP/M prompt.
Rather than access the CDROMs from 'big' machines and then transfer
files to CP/M 2.2 machines, a native utility was needed. Thanks to
Duncan Elvin who allowed me to use his C code (after converting to
assembly...naturally), the CDZSWP Z-System utility was produced. This
updated release corrects a bug which sometimes corrupted the program
when copying files from CDs to CP/M, and adds another driver. Drivers
are now included for the SB180FX, P112 (with SCSI mod per Dave Brooks'
site), and a generic one for B/P Bios with SCSI CDROM which can be
re-defined to transfer data in 512-byte blocks instead of the normal
2048-byte chunks. A template is also available to help anyone wanting to
write one for CDROM drives using 'hms' addressing. This program is
inspired by other 'SWEEP'-style programs and uses the ZCPR3 Termcap
definitions for screen attributes and the 'WordStar Diamond' for
================ ZSDOS/ZDDOS GPL Release ===============
ZSDOS (Z-System DOS) and the Companion ZDDOS (Z-System DOS with
Embedded DateStamper) are enhanced replacements for the CP/M 2.2 Basic
Disk Operating System. ZSDOS was a commercial product sold from 1988
through 1998 when the complete package (including source code) was
released under the GNU General Public License. These four packages
comprise the GPL release:
Ascii version of Manual (Formfeeds delimit pages)
====== Banked and Portable (B/P) Bios GPL Release ======
B/P Bios was developed to provide a common interface for CP/M 2.2
compatible systems with provisions to manage more than 64k of physical
memory. With permission of Jay Sage, a banked Command Processor
Replacement based on ZCPR 3.4 was added with many built-in commands;
ZSDOS was banked and extended to include multiple file date/time stamp
formats (courtesy of Bridger Mitchell and Joe Wright) and optional
directory hashing to speed access. Five hardware platforms were
ultimately supported in the commercial release which was sold from 1992
Packages will be added as they are updated, tested and built.
Ascii version of manual with embedded FormFeeds (500 kB unzipped)