LZXRepacker 1.78 ---------------------------------------------------------------------------- · Introduction LZXRepacker repacks different archive types to LZX with corrupt checking, variable compression rate (intelligent BEST MODE - if LZX archive is bigger than the previous one then the old archive will be the one that remains). The program removes uncorrect symbols like "( ) [ ] |" from directory names and replaces them by "underscore", because LZX does not support these symbols and does not pack them. LZXRepacker has priority options for background repacking. · Features Supported archive types: LZX, LHA, ARJ, ZIP, RAR, HA, TAR, TGZ, SHR, ZOO. All archives are recognized by contents (they do not need a proper extension) except for TAR, TGZ. To work, LZXRepacker calls external programs from C: directory, they are: LZX (1.21), LHA (1.62), UnZIP (5.4), UnARJ (AmigaPort 1.04 of UnARJ 2.41), UnRAR (2.02), HA (0.999b), UnTAR (37.1), UnTGZ (1.5), Shrink (1.1), ZOO (2.1). Program versions are the versions we use and the ones we recommend. If you use a different version, chances are you must adjust the s:LzxRepacker.config file. · Requirements AmigaOS 3.0 and higher. · Installation Copy LZXRepacker somewhere you've got a PATH to Copy LZXRepacker.config to s: directory · Usage FROM - Path of the archive to repack. Repacked archive will be stored here. STORE - 0 (without compression) FAST - 1 (fast compression) DEF or DEFINE - 2 (default compression) MORE - 3 (normal compression) MAX or MAXIMUM - 9 (maximum compression) PRI or PRIORITY - Priority for LZXRepacker and all archiving programs. DEL or DELETE - Enable deleting source archive. BM or BESTMODE - Block Size for BESTMODE comparing. VERIFY - Attempts to test target archive and amount of tries to repack the archive before aborting. BAD - Path to directory where bad archives should be stored QUIET - Disable output. You can break repacking process by pressing CTRL+C. More about BESTMODE. After repacking, target archive may be smaller or bigger than source archive. Depending on the filesystem, a file occupies a certain amount of blocks. LZXRepacker calculates total blocks of both source and target files and deletes the largest file. Block Sizes OFS - 488 bytes FFS/AFS/PFS2/SFS/FAT - 512 bytes CD-ROM - 2048 bytes If you want an exact file length comparison (in bytes), use BESTMODE=1. BESTMODE=0 disables the byte-compare mode. VERIFY keyword implemented for checking packed archive in case it's corrupt. If it's corrupt - repacking will be attempted the amount of times according to the number passed with VERIFY keyword. If this archive is not repackable, LZXRepacker will quit. · Known Bugs Current version works only with full path to archive to repack. · History o 1.78 - Fixed error in config parser. (tar.gz is not work) o 1.77 - If file type not supported LzxRepacker return code 0. o 1.76 - Minor update in Config file and Pack string. o 1.75 - Config file available. This text file contains unpack strings for archives supported in LzxRepacker. Bug Fix: 3 Enforcer Hits removed in Pack/Unpack and Test procedures. Bug Fix: Corrected VERIFY argument. o 1.74 - Added support for Shrink (SHR) and ZOO. o 1.73 - Bug Fix: Error unpack ARJ archive. o 1.72 - Optimize... Again changed output format and return codes. Reworked BADDIR argument. WARNING! Allowed show only EXIST directory. o 1.71 - Changed output format. Bug Fix: Error adding "lzx" suffix. Bug Fix: Error unpack lha archive if it does not have a suffix. o 1.7 - Changed output format. o 1.6 - Bug Fixes, more reliable CTRL+C. o 1.5 - Bugfixes, English error strings, optimization. o 1.4 - First Aminet release. · Author AmiS amis@cch.pmc.ru and amis@chat.ru · Thanks Big thanks Juan Solis Reche for English correction in documentation. ---------------------------------------------------------------------------- Russian Documentation. · Назначение lzxRepacker в автоматическом режиме перепаковывает архивы различных архиваторов в формат LZX. При этом контролируется целостность исходного и по желанию конечного архивов, задаётся степень сжатия конечного, может быть удалён исходный архив, может быть удалён архив большего объёма (если LZX проиграл в степени сжатия). Из имён директорий исходного архива удаляются некорректные с точки зрения LZX символы - ()[| и заменяются на знаки подчёркивания - LZX просто не запакует такие директории. Может быть задан приоритет, что удобно для фоновой перепаковки. Разрешена одновременная перепаковка неогранниченного (но, в пределах памяти) кол-ва архивов. По желанию, все "битые" архивы будут переписаны в указанную директорию. В любой момент, выполнение может быть прервано по CTRL+C. · Требования к системе Требуется система 3.0 (v39) и выше. · Инсталляция Положите lzxRepacker в любую директорию, прописанную в path. Скопируйте файл lzxRepacker.config в s: директорию. · Использование программы. Текущая версия программы работает только из CLI. Доступны следующие ключи: FROM - задаёт путь к архиву. Результат будет лежать в той же директории. STORE - 0 степень сжатия LZX (без упаковки) FAST - 1 DEF или DEFAULT - 2 (степень сжатия по умолчанию) MORE - 3 MAX или MAXIMUM - 9 (максимум) PRI или PRIORITY - приоритет, устанавливаемый программе, всем разархиваторам и LZX. DEL или DELETE - удаление исходного архива. BM или BESTMODE - размер блока на диске для сравнения размеров файлов. VERIFY - тестировать конечный архив и повторять упаковку при ошибке заданное количество раз. BADDIR - задаёт директорию куда отписывать битые архивы. QUIET - отключение вывода текста. Выполнение программы может быть прервано в любой момент нажатием CTRL+C. Немного подробнее о ключе BESTMODE. При перепаковке возможны две ситуации: LZX выигрывает в объёме либо проигрывает (такое иногда случается). Как известно, файл на диске занимает некоторое количество блоков определённого размера. lzxRepacker считает объёмы исходного и конечного файлов в блоках, и удаляет тот файл, объём которого в блоках больше. Если объёмы файлов в блоках одинаковы, будет оставлен LZX. Даже если LZX по длине в байтах в этом случае проигрывает, ввиду упомянутого ранее свойства дисковых носителей это не будет иметь значения. Объём блока на OFS дискете/винчестере составляет 488 байт, на FFS, AFS, PFS2, SFS и FAT - 512 байт, на CD-ROM - 2048 байт. Если Вы хотите вести точное сравнение длин файлов (в байтах), укажите BESTMODE=1. BESTMODE=0 соответствет выключенному режиму BESTMODE. Будьте внимательны!!! При включённой опции BESTMODE больший (в блоках) архив будет удалён. Ключ VERIFY введён на тот случай, если в результате аппаратного сбоя конечный архив окажется битым. Упаковка будет проведена указанное количество раз, если после этого архив не удаётся упаковать - lzxRepacker оставит исходный архив и выйдет по ошибке. · Поддерживаемые на данный момент форматы архивы lzxRepacker умеет перепаковывать архивы следующих архиваторов: LZX, LHA, ARJ, ZIP, RAR, HA, TAR, TAR/GZIP, Shrink, ZOO. LzxRepacker достаточно гибко распознаёт тип архива. В большинстве случаев расширение файла не играет роли для правильной идентификации, архивы распознаются по сигнатурам. Но в некоторых случаях наличие расширения необходимо. Это относится к архивам не имеющим явных сигнатур, таким как: TAR (.tar) и TARGZ (.tar.gz, .tgz). При работе распаковщиков устанавливается стек равный 20000. Рекомендации по использованию (раз)архиваторов. Для полноценной работы LzxRepacker'а у вас должны имется следующие программы: lzx 1.21 registered lha 1.62 unzip 5.4 unarj AmigaPort 1.04 of UnARJ 2.41 unrar Amiga V2.02 ha 0.999Я untar 37.1 untgz 1.5 shrink V1.1 ©1992 by Matthias Meixner zoo zoo 2.1 $Date: 91/07/09 02:10:34 $ Использование аналогичных программ других версий не приветствуется, но допускается. Если вы используете другие версии, внесите соответствующиа исправления в s:LzxRepacker.config файл. · Известные на данный момент ошибки Текущая версия работает только при указании абсолютного пути к архиву. Относительный путь от текущей директории пока не работает. Это будет исправлено в следующих версиях. · Отличия от предыдущих версий 1.78 - Исправлена ошибка при разборе файла кофигурации. (tar.gz не работал) 1.77 - Если тип файла не поддерживается LZXRepacker возвращает код ошибки 0. 1.76 - Небольшие изменения в конфиг-файле и в строке запаковки 1.75 - Поддержка текстового конфига. Bug Fix: Убраны 3 Enforcer Hits, найденные в процедурах паковки/распаковки и тестировании архивов. Bug Fix: Корректно работает параметр VERIFY. 1.74 - Поддержка Shrink (SHR) архивов. Поддержка ZOO архивов. 1.73 - Исправлена ошибка при распаковке arj - архивов. 1.72 - Небольшая оптимизация... Изменена логика работы параметра BADDIR. (ВНИМАНИЕ! В данной версии допускается указывать только СУЩЕСТВУЮЩИЕ директории! LzxRepacker не может создать BAD директорию!). Немного изменён (пока не окончательно) формат вывода, и возвращаемые в систему ошибки. 1.71 - Некоторые изменения в интерфейсе. Исправлена небольшая ошибка с добавлением расширения ".lzx" к имени файла. В случае архивов без расширений, существовала вероятность появления "двойного раширения" - "lzx.lzx". Небольшие исправления в работе Lha. Теперь могут перепаковываться "lha" архивы не имеющие расширений. 1.7 - Переработан интерфейс пользователя. 1.6 - правильно обрабатываются ошибки и CTRL+C во время работы запаковщика... 1.5 - теперь сообщения об ошибках выводятся на английском языке... 1.4 - первый релиз · Сведения об авторе AmiS amis@cch.pmc.ru и amis@chat.ru · Благодарности Огромное спасибо Juan Solis Reche за помощь в составленнии английской документации.