Repository navigation
Compression
All implemented in Pascal, with no external compression libraries:
storing, lzma, ppmd, grzip, dict, rep, delta, tor (Tornado), lzp, mm, tta, 4x4, exe (x86 BCJ), lz4, dispack070 (DisPack), srep (SREP) and cm (context mixing), alone or chained.
parc a x.parc data -mlzma
parc a x.parc data -m"srep+lzma:64mb:max"
parc a x.parc data -m"exe+dispack070+lzma"-
-m0: store. -
-m1…-m9: FreeArc-style presets, tuned in PArc for better ratio and speed than FreeArc 0.67.1 (see Benchmarks). -
-mx: maximum ratio with fast decompression; uses PPMd for text and LZMA for binaries. Slightly smaller than-m9and fast to extract. -
-mxx: absolute maximum ratio; uses the context-mixing codec (cm) on text and binaries. 8–16% smaller than-mx, but decompression is 5–40× slower. - Default:
-m4.
GRZip adapts its LZP parameters per block: BWT blocks of 4 MB or more use l64/h22, while small blocks keep the fast defaults. This is stored in the block mode, so existing archives remain readable.
Presets choose a method per file type (text, binary, already compressed, WAV/BMP, etc.) and group files into solid blocks. Without -s, PArc uses automatic 64 MB blocks for -m1…-m3 and 32 MB for -m4…-m9/-mx; -mxx keeps one block for maximum CM ratio. You can control blocking with -s- (non-solid), -se (by extension), -s<N>f (N files) or -s<N>m (minimum size). Independent data blocks are compressed in parallel (workers limited by PARC_THREADS). Extraction also decodes independent blocks in parallel before writing.
-
-m1…-m3: fast, good for interactive use. -
-m4/-m5: balance. -
-m6…-mx: large text/binary sets; more memory and time.-mxxonly when decompression time does not matter.
Local results and methodology are in Benchmarks. FreeArc external compressors (precomp, ECM, JPG, PPMonstr, Durilca, CCM, etc.) are out of scope.
PArc 0.0.2 · Repository · Issues · Wiki in English; all documentation is in English.