1 nspark - New Spark unarchiver
2 =============================
4 THIS PROGRAM IS *FREE* -- YOU MAY DO WHAT YOU LIKE WITH IT AS LONG AS
5 THIS FILE REMAINS INTACT, AND YOU DO NOT MAKE ANY MONEY FROM IT! IF
6 YOU MAKE IMPROVEMENTS TO THIS PROGRAM THEN PLEASE SEND A COPY OF THE
7 SOURCES TO THE MAINTAINER OF THAT VERSION OF THE PROGRAM.
9 nspark is a rewritten version of !Spark for UNIX. The original version
10 of spark (sometimes known as "cark") was based upon the BASIC program
11 "bark", written by David Pilling, and was improved and fixed by the
14 Philip Colmer (pcolmer@acorn.co.uk),
15 Alun Jones (auj@uk.ac.aber),
16 Andy Duplain (duplain@rtf.bt.co.uk),
17 Martin Percival (martin@thed.uk22.bull.com),
18 Denis Howe (dbh@doc.ic.ac.uk).
20 I decided to re-write the program to add functionality and make it
21 easier to port to other Operating Systems (such as MSDOS and even RISC
22 OS :-). The new version has the following enhancements:
24 o Supports all archive methods used by !Spark 1 and 2. The old
25 version didn't support "Squashing" and used to handle "Compressed"
26 archives by using the UNIX uncompress program. The new version
27 supports both these and has them built-in, allowing easier porting
30 o Supports Cyclic Redundancy Checking (CRC). The integrity of an
31 archive can now be checked without having to unarchive it.
33 o Supports verbose option to allow archive file details to be
34 displayed (time/date or exec/load address, size, type).
36 o Supports selective file unarchiving, so the whole archive needn't
37 be unarchived if not all the files are wanted).
39 o Supports user-prompting before overwriting a file, allowing the
40 user to either (1) overwrite the file, (2) overwrite all the
41 files, (3) unarchive the file to a different name, or (4) not to
42 unarchive the file at all.
44 o Supports file-stamping so the date and time of the file, when
45 unarchived, matches the date and time it was archived (not 4.2BSD
46 or SysV.2 as these systems lack vital library functions).
48 I have not included support for creating !Spark archives, and I am not
49 really sure if I need to as: (1) !Spark for RISC OS is cheap (#5.99
50 from David Pilling), (2) !SparkPlug can unpack archives created with
51 zip (which is available in source form for UNIX, VMS and MSDOS), and
52 (3) it's a lot of work. Let me know what you think.
54 To compile nspark; copy the relevant makefile from the "mkfiles"
55 directory, and rename it "Makefile" or "makefile", edit it to suite C
56 compiler preference, change the "SYSTYPE" variable setting, etc, then
57 simply type "make" (or "nmake" or "amu" or whatever).
59 There are some problems with nspark if it is compiled with gcc v2 (it
60 core dumps). To fix this try recompiling everything ("make clean"
61 first) with "-O" off, and if nspark still won't work try adding
62 "-fno-builtin" after "gcc" in the "CC" line, then recompile. I have
63 had some strange problems with optimisation in gcc v2, for example
64 basename() in misc.c core dumps (looking at the assembler gcc v2
65 produced I can see why!).
67 Please send bug reports/suggestions etc to the maintainer of the
68 particular version of nspark you are using (the maintainer's e-mail
69 address can be found using the -V option).
74 Andy Duplain, BT Customer Systems, Brighton, UK. (duplain@btcs.bt.co.uk).