Squash (RISC OS)
Ccawley2011 (Talk | contribs) |
Dexvertbot (Talk | contribs) m (Change telparia.com samples link to template) |
||
(4 intermediate revisions by 3 users not shown) | |||
Line 3: | Line 3: | ||
|subcat=Compression | |subcat=Compression | ||
}} | }} | ||
− | + | '''Squash''' files ([[RISC OS filetype|file type]] FCA, Squash) contain compressed data for single files on RISC OS systems. | |
− | + | ||
− | + | ||
− | Squash files (file type FCA, Squash) contain compressed data for single files on RISC OS systems. | + | |
The [[file command]] calls this format "squished". | The [[file command]] calls this format "squished". | ||
− | == Format == | + | == Format details == |
According to the help text for the Squash application, "The Squash module currently compresses using a 12-bit LZW algorithm but no guarantee is made that this will be so in the future." | According to the help text for the Squash application, "The Squash module currently compresses using a 12-bit LZW algorithm but no guarantee is made that this will be so in the future." | ||
Line 35: | Line 32: | ||
|} | |} | ||
− | As with a number of data formats related to filing systems on RISC OS, the load and execution addresses are actually used to hold the file type and date stamp of the original file. | + | As with a number of data formats related to filing systems on RISC OS, the load and execution addresses are actually used to hold the [[RISC OS filetype|file type]] and date stamp of the original file. |
− | The remaining data in the file (from offset 20 to the end) can be decompressed using gunzip. One way to do this is to run the following in a bash shell: | + | The remaining data in the file (from offset 20 to the end) is in [[compress]] format, and can be decompressed using gunzip. One way to do this is to run the following in a bash shell: |
dd if=input_file skip=20 bs=1 | gunzip -c - > output_file | dd if=input_file skip=20 bs=1 | gunzip -c - > output_file | ||
+ | |||
+ | == Software == | ||
+ | * [https://github.com/mjwoodcock/riscosarc/ RISC OS de-archiver] | ||
+ | * {{Deark}} | ||
+ | * Or see the [[#Format details]] section above, for a way to convert to [[compress]] format. | ||
== Sample files == | == Sample files == | ||
− | * http://www.arcade-bbs.net/filepages/file77.htm → | + | * http://www.arcade-bbs.net/filepages/file77.htm → {{ArcadeBBSLink|078954|Time1}}, {{ArcadeBBSLink|073941|WATERFALL}} |
+ | * {{DexvertSamples|archive/squash}} | ||
== References == | == References == | ||
Line 48: | Line 51: | ||
* [http://acorn.riscos.com/riscos3/35/35DiscImage/Apps/!Squash/!Help Help file] for the Squash application | * [http://acorn.riscos.com/riscos3/35/35DiscImage/Apps/!Squash/!Help Help file] for the Squash application | ||
* [http://acorn.riscos.com/riscos3/37/37DiscImage/Manuals/Manual/BOOK2AB/E_18.HTM Manual page] in the RISC OS 3.7 user guide | * [http://acorn.riscos.com/riscos3/37/37DiscImage/Manuals/Manual/BOOK2AB/E_18.HTM Manual page] in the RISC OS 3.7 user guide | ||
− | |||
[[Category:RISC OS]] | [[Category:RISC OS]] |
Latest revision as of 02:50, 28 December 2023
Squash files (file type FCA, Squash) contain compressed data for single files on RISC OS systems.
The file command calls this format "squished".
Contents |
[edit] Format details
According to the help text for the Squash application, "The Squash module currently compresses using a 12-bit LZW algorithm but no guarantee is made that this will be so in the future."
The compressed data is preceded by a header, with offsets measured in bytes and all values stored in little-endian byte order:
Offset | Description |
---|---|
0 | "SQSH" (4 byte ID) |
4 | Length of the original, uncompressed file in bytes |
8 | Load address of the original file |
12 | Execution address of the original file |
16 | Reserved (should be 0) |
As with a number of data formats related to filing systems on RISC OS, the load and execution addresses are actually used to hold the file type and date stamp of the original file.
The remaining data in the file (from offset 20 to the end) is in compress format, and can be decompressed using gunzip. One way to do this is to run the following in a bash shell:
dd if=input_file skip=20 bs=1 | gunzip -c - > output_file
[edit] Software
- RISC OS de-archiver
- Deark
- Or see the #Format details section above, for a way to convert to compress format.
[edit] Sample files
[edit] References
- Help file for the Squash application
- Manual page in the RISC OS 3.7 user guide