ys2-intro/loader/tools/doynamite1.1
2025-11-13 19:07:39 +03:00
..
krill init files 2025-11-13 19:07:39 +03:00
simple init files 2025-11-13 19:07:39 +03:00
decrunch.asm init files 2025-11-13 19:07:39 +03:00
lz.c init files 2025-11-13 19:07:39 +03:00
readme.txt init files 2025-11-13 19:07:39 +03:00
sfx.asm init files 2025-11-13 19:07:39 +03:00
test.asm init files 2025-11-13 19:07:39 +03:00

What changed compared to v1.0?
· Literals are now copied forwards and thus the safety margin is low (typically 4 bytes or less) - Needless to say that the format is incompatible with v1.0
· Selfextracting executables can now be generated by the cruncher
· An optimal loading address can be generated, based on the estimated safety margin
· No more .prg/.bin autodetection. Default input filetype is now .prg, raw binaries can be packed with --binfile
· Iterative mechanism to find the best offset lengths and possibility to add the offset table to the output file
· Simple version in /simple/ generates ~0,5% bigger files but has a $e1 bytes big depacker and depacks around 5-10% faster. This is achieved by rearranging the encoding and forgoing on the offsets base adjustment.

The file to be compressed is a required argument, in addition the following switches are available:
· -o: Specify the output file name. By default the input file with an .lz extension.
· --window: Specify the window size for with streaming decompression.
· --per-page: Force the windowed encoding for regular files. This is handy when combining both types of data.
· --cut-input: Only specific segment of the file.
· --offset-lengths: Use an alternate set of offset lengths. For e.g. --offset-lengths 3/6/8/10:4/7/10/13
· --emit-offset-tables: Generate the appropriate decruncher tables for the chosen offset lengths.
· --statistics: Display some basic information about the types of matches made.
· --best-offset-tables: Find the best offset lengths for optimal compression results. This is still slow and done lazy.
· --binfile: Read from a raw binary without a preceeding loadaddress. As a default the cruncher expects a .prg-style file.
· --include-tables: Include the offset tables (24 byte without gaps) to the output file, straight after load- and depack-address.
· --sfx: Spit out a selfextracting .prg
· --level: Spit out a level-packed file, including a generated load- and depack-address (the load-address of the .prg).
· --raw: Spit out the raw pakced data without any additional bytes added before.

In case the readme.txt of the previous version might be a good read.