|---------------/------------------------------------------------------------ | 19/08/2006 / |-----------/ _ __________________________ | | |_________________________ \_____ | |___ ________ _____ \__ _| | __ \ | _ _ \ / ___ | | | | |__) ) | | | | \ | ( (__/ | | | |_____/ |_| |_| |_| \___/\_\ __| |_ _________________________/ _ _| /__ |__________________________/ | | \ [==U==] /-------------------| / Version: 1.33 beta | -----------------------------------------------------/-----------------------| Description: ------------ BMA - The experimental archiver (only console version for Windows). It is still under development, so you use this program at your own risk. DON'T USE THIS ARCHIVER TO BACKUP YOUR CRITICAL DATA!!!!! The archiver works under following scheme: ------------------------------------------ 1. Set of filters; 2. Burrows-Wheeler Transform (BWT). 3. Advanced "Move To Front" (MTF). 4. 1-2 encoding. 5. Arithmetic coding with use of Peter Fenwick's structural model. The archiver has some methods of data preprocessing for improvement of ------------------------------------------------------------------------------ compression: ------------ * Preprocessing of texts data: EOL-coding and upper-case to lower-case convertion. * Two variants of preprocessing for 32 bit tables (gives better compression of executable files and Microsoft Office documents). * Transformation of relative addresses in absolute (call/jmp convertion) for better compression of executable files. * Delta-encoding improves compression of PCM WAVE files and 24 bit puctures (not compressed BitMap, Targa). * LZ preprocessing speeds up BWT, but essentially slows down decompression. * Run Length Encoding (RLE). Command line usage: ------------------- Usage: BMA [...] [...] [<@listfiles...>] a: Add files to archive e: Extract files from archive x: eXtract files with full pathname d: Delete files from archive l: List content of archive t: Test integrity of archive i: Info about archive h: Help message -mN sorting block size Nk: N = [1..16384](kBytes) Nm: N = [1..16](MBytes) (default -m2048k, maximum -m16m) -a[e] Adaptive block size [for PE Executable files only] -rv[-] enable/disable ReVerse sorting order (def.: auto) -pe[-] enable/disable Preprocessing of Executable files (def.: auto) -t<1|2|-> enable/disable preprocessing of 32 bit Tables (def.: auto) -d enable/disable Delta encoding (def.: auto) N = [1..4] - distance of Delta encoding -l enable/disable run Length encoding (def.: auto) N = [2..255] - order of RLE -z enable/disable LZP preprocessing (def.: auto) N = [2..255] - order of LZP -r Recurse subdirectories -o set Output directory -x eXclude files from operation of compression -tx[-] enable/disable preprocessing of TeXt files (def.: auto) Roadmap (I want to do:-): ------------------------- * Speed up BWT. * Improve compression. * Add solid mode. What's new: ----------- 1.33 beta (19/08/2006) * Switñh -mx added as default. * Better compression of DLL ('.reloc' section). * Fixed several small bugs. * Warning: This version is not compatible with previous! 1.32 beta (26/02/2006) * Added the new switch -tx[-]: Preprocedding of English and Russian (ANSI) texts. * Figed great bug: packing crash when used switch -x. * Better compression of 'none-comptessed' data (JPEG, MPEG, etc...). * Fixed several small bugs. 1.31 beta (22/09/2005) * Added the new switch -ae: Adaptive block size for PE executable files only. Because segmentation of this file type works much faster than of any other file type. * Added the new switch -x: Exclude files from compression. In next version I tried to implement this option for other operations. * The compression ratio was improved. * Fixed several small bugs. 1.30 beta (05/09/2005) * Fixed bug: Sometimes archiver crashes when using switch -a. * Program doesn't need libmmd.dll. * Fixed bug: Loss of memory at decompression. * Fixed several small bugs. 1.29 beta (31/08/2005) * Now the switch -a works on files of any type! * Fixed bug: Switch -r did not work correctly. * Fixed several small bugs. 1.28 beta (28/08/2005) * Fixed bug: Compression with use of the switch -m16m. * Speed of compression/decompresiion is a little increased. * Improved compression, especially of executable files. * Added the new switch -mx: Improves compression of big files. * Optimization: Reduced the file size. * Warning: The current version is not compatible with previous! 1.27 beta (28/06/2005) * First public release ------------------------------------------------------------------------------ Alexander Cherenkov, 2003-2006 E-mail: mailto:forrox@mail.ru Web: http://forrox.narod.ru ------------------------------------------------------------------------------