============================================================ SOLID SOFTWARE inc. Архиваторы серии PR версия 1.30 (некоммерческая) описание программ ============================================================ Архиваторы серии PR предназначены для высокоэффективного сжатия информации на компьютерах MSX. Благодаря применению для сжатия информации алгоритма LZW-M, более мощного, чем Хуффмановское сжатие, удалось получить быстрый однопроходный архиватор, по производительности приближающийся к используемым на IBM архиваторам. По коэффициенту сжатия архиватор PR немного лучше архиватора ZOO. Kоэффициент сжатия архиватора PR лучше коэффициента ARC в среднем на 7%. Особенно хорошо архиватор PR сжимает тексты, графику и ассемблерные программы. (Однако, весьма плохо сжимает REL-файлы.) 0. Общие замечания. ------------------- В новой версии (1.30) архиватора существенно изменена структура заголовка файла, что позволило деархиватору значительно быстрее находить в архиве нужный файл. Кроме того, теперь архиватор записывает в архив файлы, которые не может сжать, "так, как они есть", что улучшает характеристики сжатия. Избавление от части кода, унаследованной "по историческим причинам" от системы сжатия изображений PICPRESSOR, позволило значительно улучшить производительность архиватора - теперь он работает несколько быстрее, чем стандартный ARC. 1. Использование архиватора PR. ------------------------------- В комплект поставки входят 4 файлов: PR .COM - архиватор PRD .COM - деархиватор PRSFX .COM - изготовитель самораскр. архивов PR .DOC - настоящий файл заархивированные в одном самораскрывающемся архиве PRINST .COM Архиватор запускается командой: PR [-gma] <имя архива> [<файл(ы)> ...][@список] Имя архива может быть указано без расширения, расширение по умолчанию ".AR". <Файлы> - несколько спецификаций име файлов, простых или с wildchards "?","*". Если не указано ни одного имени файла по умолчанию архивируются все файлы на диске. Конструкция <@список> позволяет считывать имена файлов, подлежащие архивации из текстового файла с именем "список". В этом файле перечислены спецификации файлов, каждая с новой строки. Спецификации файлов могут содержать wildchards. После запуска программа запрашивает, какие именно файлы архивировать, выводя на экран файлы. Ответы: Y/N/G - имеют традиционное значение: Да/Нет/Все. Нажатие клавиши Q прекращает процесс архивации, архив закрывается. Значения ключей: -g: архивация потоком, без запросов, имена файлов выводятся на консоль. -m: файлы переписываются в архив и удаляются с диска -a: файлы дописываются в существующий архив. Отсутствие архива не является ошибкой: создается новый архив. Деархиватор запускается командой: PRD [-d|v|-oX|-f] <имя архива> <спецификация>.., После запуска программа выдает по очереди имена файлов из архива, ответить на которые также можно Y/N/G. При нажатии Q или CTRL-C процесс деархивирования прекращается. <Спецификация> является маской имени файла для извлечения из архива нужных файлов. Пустая спецификация соответствует *.*. Значения ключей: -d: вывод оглавления архива -v: деархивация на экран (печать текста из архива) -oX:деархивированные файлы выводятся на диск X Kак понятно из описания, эти ключи не могут комбинироваться, а используются только по одному. -f: при деархивации не производить проверку наличия файла на диске. В противном случае будет каждый раз запрашиваться разрешение на перезапись файла. 2. PRSFX - изготовитель самораскрывающихся архивов -------------------------------------------------- PRSFX запускается командой: PRSFX <имя архива> [d:[<имя SFX-архива>]] Создание самораскрывающегося архива проходит в 2 этапа. Сначала следует создать обычный архив, а затем обработать его программой PRSFX. При этом создается COM-файл, а обычный архив удаляется. При создании SFX-архива следует помнить, что поскольку на MSX нет EXE-файлов, то объем SFX-архива может быть не более, чем 50 Кбайт. 3. Требования к компьютеру. --------------------------- Программы PR, PRD и PRSFX работают на MSX-компьютере любой марки и любого поколения. Используются только стандартные вызовы DOS. Обе программы не используют ни маппер, ни видеопамять, а также не используют никаких областей основной памяти, кроме зоны TPA, отведенной под COM- программы. Программа PR использует память не ниже, чем до AF00h Программа PRD использует всю доступную память. Программа PRSFX может испоьзовать всю TPA. Использование для вывода сивола на консоль не функции BIOS, а функции DOS(2) позволяет достичь следующих удобств при пользовании архиваторами PR: а) Возможность использования CTRL-S/CTRL-Q для приостановки/продолжения вывода на экран и CTRL-P для копирования вывода на принтер. б) Возможность использования переопределения вывода в файл в тех системах, где оно предусмотрено (я знаю две: MSXDOS-2 и MISIX). Действительно, можно написать: PRD -d foo >prn для того, чтобы оглавление вашего архива попало на принтер. 4. Формат архивного файла. -------------------------- а) заголовок архива: +0: 'AR' - сигнатура архиватора +2: db 13 - максимальное число бит на слово LZ +3: db 2 - версия алгоритма. б) один или несколько скомпрессированных файлов +0: ds 1 - флаговый байт +1: ds 11 - имя файла +12:ds 4 - длина файла до архивации +16:ds 4 - дата и время +20:ds 4 - ссылка на следующий заголовок +24 .... файл, закодированный по LZW-M алгоритму. Значения битов флагового байта: 0й бит: 0- файл сжат, 1- файл не сжат 7й бит: 1- признак конца архива (сейчас в последний байт архива пишется 0xFF) Остальные биты зарезервированы. Данные пишутся пословно, начиная с длины слова 9 бит. Специальными кодами являются следующие: 256: конец файла. 257: увеличить длину слова на 1 бит 258: сбросить таблицу кодов. 259: зарезервировано 260: CR/LF 261: два пробела 262: три пробела 263: точка и пробел 264: запятая и пробел 265: точка и CR 266: дефис и CR Более подробное описание LZW-алгоритма можно прочитать в журнале BYTE (9/1990). Там же есть хорошее описание Хуфф. сжатия за один проход. LZW-M алгоритм отличается от стандартного алгоритма тем, что длина слова увеличивается не при заполнении таблицы, а при передаче, что улучшает коэффициент сжатия. 5. Перспективы. ---------------- Вскоре появится новая версия семейства PR, включающая: - богатые сервисные функции. - более удобный интерфейс, объединение архиватора и деархиватора в одной программе. - версии архиватора для других операционных систем (MISIX, CP/M). - REL модули для деархивации, совместимые с ASCII-C. 6. Фирма SOLID Software также предлагает: ----------------------------------------- - ОС MISIX (инструментальная quasi-POSIX система) - Компилятор V-BASIC версии 2.5 и 3.0 - Систему архивации для файлов SCREEN8 (архивирует в 2 раза лучше, чем GIF) - Библиотеки для ASCII-C. - Утилиты для работы с дисками (форматирование, проверка, увеличение емкости) - TURBO - версию MSX-2 SUB-ROM (с исправленными ошибками и улучшенными характеристиками.) ============================================================ С предложениями обращаться к Егору Вознесенскому тел. (095)141-40-69 после 9:00pm. BBS. (095)258-54-85 24h 2400/MNP 8N1 mail. (095)141-40-69 11:00..18:00 1200 8N1 ============================================================