Spark

From Just Solve the File Format Problem
Revision as of 02:55, 28 December 2023 by Dexvertbot (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
File Format
Name Spark
Ontology
Extension(s) .spk, .arc

Spark (Acorn Spark compressed archive) is a type of compressed file archive traditionally found on RISC OS systems, with file type DDC (Archive). Created by SparkFS, these archives were often used to transfer data in a form that could be unpacked by the freely redistributable SparkPlug tool.

Contents

Format details

The format is an incompatible variant of ARC. The most obvious differences from ARC are that the high bit of the compression method byte is set, and the member file header has an additional 12 bytes, for RISC OS file attributes. Subdirectories are possible, in a way, by storing them as nested Spark archives.

Compression methods

Spark uses a subset of ARC's compression methods, with the same numbering scheme (taking the compression method to be the low 7 bits of the compression byte). It adds one method of its own ("compressed").

It's not completely clear which compression methods are supposed to be allowed in Spark format. Here are the methods supported by nspark, which claims to support all methods supported by !Spark for UNIX 1 and 2, as well as method 9.

ID (8-bit) ID (7-bit) Name Description and remarks
0x80 or 0x00 0 End-of-archive marker Refer to ARC for more information.
0x81 1 Uncompressed
0x82 2 Uncompressed
0x83 3 Packed
0x88 8 Crunched
0x89 9 Squashed
0xff 127 Compressed LZW. Like method #8, but does not use RLE, and has a configurable maximum code size up to 16 bits.

Software

Sample files

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox