Unzip64/128 news:
11/6/2003 - Source code released
This is the source used to compile both versions of 2.15, in it's original turbo/macro assembler format and also exported to petscii.
If anyone makes use of it please let me know!
Wow, is it really like 3 years since I looked at this?? Anyway..
14/11/2000 - Unzip64v2.15 & Unzip128v2.15 released. What's new:
- overwriting of existing files with all/none/individual options
- decompresses D71 & D81 disk images as well as D64 images
- output files are now created with "correct" case
- renaming of the output file
- probably a few bugs as I'm releasing it as-is
- lots of other things I don't remember because I haven't looked at it in months
Unzip64v2 & Unzip128v2 are decompressors compatible with files created by PKZIP v2.04g & equivalent programs, as well as gzip (GNU zip). They will decompress deflated (and stored) files on a stock commodore 64 or 128 (respectively).
I started this project primarily as I was interested in learning compression theory, and there has always been demand for such a program. An unzip program already exists for the c64 & c128, but it is only compatible with PKZIP v1.10 or earlier.
Most everyone I've seen discussing the topic has said that an inflate routine would be impossible on a c64 (or even a 128) without ram expansion and/or a supercpu or similar. Unzip64v2's inflate code uses about 36k of memory in total, and decompresses at a rate of several k/sec or more on a 1Mhz 64!
The code is 100% 6502 assembler based partly on the infozip C source. See references below.
Features:
- Writes D64 files to 1541/71 drives and to 1541 partitions on CMD devices
- Fast decompression
- Decompresses both ZIP & GZIP compressed files!
- CRC-32bit data integrity checking
- Path support for directories/partitions on CMD drives etc..
- File type (PRG/SEQ) selection + individual override
- Filename correction for lowercase ascii filenames.
- Auto device detection.
- Directory functions F1 & F3 for viewing source & destination directories.
- Dos command functions.
- Uses 2mhz mode on a 128 in 64 mode + uses VIC-II blank screen speedup
- CMD device friendly (SCPU64, RamLink, HD/FDxxxx etc. etc. compatible)
- CMD SCPU optimized
- Compatable with just about any storage hardware, including ramdos/REU etc.
- It decompresses ZIP2.04g files - what more do you want?
- More? It decompresses GZIP files too
- Want more still? It decompresses d64 images straight to 1541 disks!
Notes:
- As with anything, it may have bugs. Feedback & bug reports are always welcome.
- This program will NOT decompress files created by PKZIP 1.xx. (unless ALL the files are stored) It does not implement the shrink, reduce or implode algorithms (methods 1, 2-5 & 6 respectively). Use David Schmolls unzip128/64 program for these files.
Credits:
- Gaelyne & Rod Gasson for their SCPU64
- Darren Gibbs for his 128 system
- Jeff Jones from Loadstar for sending me a C=128 Programmers Reference Guide
- Gerry Gallinat for his 128 Programming Secrets book
- Todd Elliot for a huge wad of 128 programming info
- Colin Thomson & Russell Prater for addition encouragement
- Also Rod Gasson & Nate Dannenburg for some of thier 128 programming experience
Some of the references / resources used:
Related C= sites: