Skip to content

Releases: agn453/UNZIP-CPM-Z80

Incorporate Jonathon Harston modifications

21 Oct 22:39
Compare
Choose a tag to compare

Junk (ignore) file paths if present in the ZIP file,
Return to the command processor instead of warm-booting on exit,
Added [Q]uiet and [O]verwrite options to extract files silently and to overwrite existing files of the same name, and
Output the sign-on message only when run without command-line parameters.

The ZIPDIR utility has been modified to display 4-digit years for file timestamps and the CRC as a 32-bit hexadecimal number.

Also adds a utility to create ZIP files (using the "Store" method without compression).

Source files can be assembled with Microsoft Macro-80, Hector Peraza's ZSM4 and ZMAC.

Further speed optimisations and backport some features

18 Oct 22:20
Compare
Choose a tag to compare

Some further speed optimisations by Russell Marks.

Further slight optimisations to bit-readers,

Backport some unzip 1.8 changes (buffer-overrun fixes, bit 7 strip on output filenames, less frequent ^C checking, and low-memory message), and add various comments.

Use self-modifying code with an unrolled end loop in rdbybits, and add a "rd1bit" macro, for about a 12% speed improvement on overall extraction time compared to version 1.5-3.

Fix long-filename buffer overrun, for filenames longer than 255 characters.

Backport Howard Goldstein's buffer-overrun fixes from unzip 1.8 - previously, a 255-byte buffer was repeatedly used to read up-to-65535-byte inputs.

Speed optimisations

18 Oct 21:21
Compare
Choose a tag to compare

Russell Marks contributed speed optimisations to the UnDeflate algorithm to significantly boost performance (by more than 30%).

A new routine rdbybits now processes eight or fewer bits at a time.

Checks whether the TPA size is large enough for UNZIP's tables

Use a table-based CRC algorithm. This increases the CP/M binary size by about 1Kbyte.

Implement UnDeflate algorithm

15 Oct 23:24
Compare
Choose a tag to compare

Martin has further translated and optimised the Z80 assembly code derived from Keir
Fraser's UnDeflate algorithm published in HiTech-C at
https://github.com/keirf/Amiga-Stuff/blob/master/inflate/degzip_portable.c
to produce a version that can expand ZIP file entries compressed with
the Deflate algorithm.

This new release is only for the v1.5 derived version at present.

With un-shrink and un-implode fixes

18 Jun 07:21
Compare
Choose a tag to compare

Both of the fixes recently reported by Martin on the USENET comp.os.cpm newsgroup have
been included and the sign-on banner updated to include a version of v1.5-1

Updated sourcecode is in the file UNZIP151.Z80 and an updated UNZIP151.COM has been
built. The sourcecode for Version 1.2 has also been updated into UNZIP121.Z80

For a discussion, please refer to the Googe Groups archive of the postings at

(Un-shrink fix) https://groups.google.com/forum/#!topic/comp.os.cpm/B0A4x59SX44

(Un-implode fix) https://groups.google.com/forum/#!topic/comp.os.cpm/rpjA1Q6RtDc

Original source from UNZIP15.LBR

16 Jun 08:52
Compare
Choose a tag to compare

This is the original Public Domain release for UNZIP for CP/M Z80 Version 1.5

The files have been extracted and uncompressed from the unzip15.lbr distribution library and are unmodified.

An additional file detailing the contents of the distribution library including dates and crc information has been added as unzip15.toc

The Zilog Z80 assembly language source code is written for the SLR Z80ASM macro assembler.