Short: Port of LZX extractor for VP and Linux/X86 with C source Author: Simon N Goodwin (support@amiga.com) Original: David Tritscher (dt14@uow.edu.au) Type: util/arc Version: 1:0 LZX is a variant of the ubiquitous LHA format standard on the classic Amiga, which is particularly good at compressing groups of files with a lot in common. It was invented by Jonathan Forbes and Tomi Poutanen. This version is a port of the generic ANSI C UnLZX source from Aminet's misc/unix directory. This archive includes the Linux executable, source code modified for VPCC, and the corresponding VP code file unlzx.00. It compiled instantly with Red Hat's GCC and needed only a couple of changes to compile into VP code inside the SDK. Credit for this is due to the original author David Tritscher, to whom any questions about the workings of the body of the source should be directed. The key change was to #include which is needed for Tao's implementation of the ANSI MKDIR function. Also, the version string has been altered to the new Amiga format though the date is unchanged '$VER: unlzx 1:0 (1998/02/22)$' Note the terminal $, ISO 8601 standard date format, to allow easy lexical ordering and avoid the problem of 3/4/99 being March in the USA and April in Europe and the millennial issue, and the colon between parts of the version number this 'chapter and verse' format, means no one should be tempted to think that 5:5 is more recent than 5:11 - as happened with Directory Opus despite the old pseudo-decimal 'standard', and then MSDOS 3.3 is more recent than 3.21, and so on. A lot of thought has gone into these 'minor' changes! A final twist is that Tao's linker eliminates any data that is not explicitly referenced by the code it links, so the version string would not appear in the binary without another small change - the 'help' displayed when you type unlzx' with no parameters now shows the version with fprintf(stderr, "VP %s\n",VERSION), so it persists. The VP version was compiled with: vpcc unlzx.c -o unlzx -O2 if you prefer it somewhere else in your directory tree you'll have to recompile it, specifying the new location, e.g: vpcc unlzx.c -o /ami/shell/unlzx -O2 /ami is the standard place for Amiga extensions to Elate, and /shell/ is a subdirectory of this reserved for executable commands. Cheers - Simon N Goodwin, Warwick, UK, 16th January 2001