Netus News #10
04 февраля 1999
  Софт  

             ── Упаковщики ──

      Придумывать новый раздел я не считаю
нужным,  поэтому  пусть будет тот, что ис-
пользовался  ранее, хотя речь пойдет не об
"упаковщиках",  а наоборот, о "распаковщи-
ках".

          "Не учась и лаптя не сплетешь."
                             Пословица.

      Казалось  бы,  ну чего тут сложного?
Ну делов-то - архив раскрыть. Но это толь-
ко  с  первого  взгляда все так просто. На
самом  деле раскрытие архивов - дело слож-
ное  и ответственное, т.к. от правильности
выполнения  этой  непростой операции зави-
сит, например, ну хотя бы... Ну хоть почту
читать хотите? Тогда учитесь:
      Фишка  сия предназначена для раскры-
вания  (кому  то  больше  нравится  термин
"распаковка")  архивов,  закрытых (запако-
ванных)  PC-ковским ZIP'ом. Что может быть
внутри  архивов?  - оставим этот вопрос на
совести тех, кто их закрывает...
  Теперь о работе:
      Максимальный размер файла (как вход-
ного  так  и  выходного)  - 16777215 байт.
Раскрытие  файлов размером больше чем наз-
ванная цифра дело может, конечно, и захва-
тывающее по продолжительности и количеству
используемых  дисков, однако, что произой-
дет в этом случае - науке не ведомо. А ес-
ли и ведомо - то пусть наука лучше промол-
чит - все равно ничего хорошего!
      Управление программой осуществляется
клавишами  курсора или QAOP, выбор - ENTER
и  еще некоторыми кнопочками. Немного тер-
пения и вы их узнаете...
      Интеллект программы настолько велик,
что вся работа идет практически в автоном-
ном режиме. Правда, работать с диском пря-
мо  из  коробки она не сможет. Однако, как
бы не был велик интеллект программы, всег-
да найдется изобретательный идиот, который
сможет  завести самый совершенный алгоритм
в  тупик.  В таких ситуациях программа из-
вестит о встретившемся затруднении и пред-
ложит  пути его разрешения. В таких ситуа-
циях  вместо  Y/N  можно  смело  юзать EN-
TER/SPACE, если они западают.
      Раскрываются архивы, содержащие фай-
лы  закрытые  двумя  методами  "deflate" и
"store".  Другие  методы не поддерживаются
ввиду  их редкости. О причинах этого - ни-
же.
      Раскрытие архива может быть осущест-
влено с пропуском файлов - чтобы активизи-
ровать  /  дезактивировать эту возможность
надо в файловом меню нажать "F". Соответс-
вующая  надпись  сообщит неувернным в себе
пользователям о произведенных переключени-
ях.  В  этом режиме перед раскрытием файла
будет  выдана его длинна и имя, после чего
комп грозно спросит о пропуске файла. Если
согласится  на пропуск файл раскрыт не бу-
дет  и прога перейдет к следующему в архи-
ве...
      Раскрытие файла сопровождается мель-
канием  hex  цифр  (для наглядности полная
длина  файла  выдается радом с мелькающими
цифрами).  Поскольку этот процесс отнимает
машинное  время  в  процессе  распаковки -
данная  фенечка отключаема. Для выключения
достаточно в процессе загрузки держать на-
жатым пробел.
      Аналогично,  раскрытый файл проверя-
ется на соответствие закрытому путем подс-
чета  CRC.  Данный  процесс  отнимает  еще
больше  времени, и его дезактивация произ-
водится  удержанием ентера в процессе заг-
рузки.
      Раскрытие  может  быть произведено с
любого тырдос устройства на любое. Вся ра-
бота  с  диском  осуществлена через #3D13,
так что смело можно запускать на рамдисках
и  виртуальных  образах дискет на винте...
Выбор входного диска - <S>ourse, выходного
-  d<Е>stination.  Если раскрытие осущест-
вляется  на  то  же устройство, с которого
начитывается исходный файл - то можно сме-
нить  режим один диск - разные диски нажа-
тием  кнопки   "D". При работе с двумя уст-
ройствами  автоматически  выбирается режим
"разные диски".
      После  смены входного устройства его
каталог можно перечитать клавишей "R".
      Одновременно  на  экране  видно  100
файлов без удаленных. Файлы, находящиеся в
конце  каталога  (несчастные  28) раскрыты
быть не могут, ибо выбрать их нельзя.
      Унзип работает с трехбайтными расши-
рениями  файлов, если оные имеются (остав-
шиеся  2 буквы). Стандарт на длинные файлы
-  как в melon'е. т.е куски имеют одинако-
вые  имена и различаются по букве расшире-
ния увеличивающейся от файла к файлу. Кус-
ки  должны  иметь размер кратный сектору -
для  последнего куска - необязательно. Еще
условие - файлы-куски должны располагаться
на  диске подряд, без пробелов между ними.
если  файлы  имеют расширение .pkt, то оно
(расширение)  будет  преобразовано в .Ckt.
Это нужно для почтовых редакторов.
      При  выборе  архива производится его
сканирование  и  принадлежность  к системе
ZIP (с версии 0.6 алгорит проверки на зип-
ность  упрощен).  После сканирования выво-
дится  число  файлов в архиве и начинается
процесс раскрытия первого файла. В процес-
се  раскрытия  может  оказаться, что число
созданных  файлов меньше числа заявленных.
Дабы  отбросить  подозрения в нечистоплот-
ности  автора "мол, и файлы у них пропада-
ют" скажу, что если вычесть число подката-
логов  из  полного числа файлов в архиве -
получите  недостающие файлы. Кто таким ре-
шением  недоволен  - может претендовать на
приз  - конфетку, если сможет создать под-
каталоги в tr-dos. Для непонятливых скажу,
что  файлы из всех подкаталогов будут сва-
лены в одну кучу.
      Дисковые  ошибки  не отлавливаются и
после  надписи  о  неисправности  на диске
прога вывалится в главное меню.
      Особенного  описания заслуживает си-
туация с недостаточным местом на диске при
раскрытии  файла  -  в этом случае процесс
будет  приостановлен  и пользователю будет
предложено  назвать  новое  устройство для
продолжения  раскрытия. Выбор A-D произво-
дится  кнопками  1-4.  Если  будет выбрано
устройство  с  тем  же номером, что и уст-
ройство с исходным архивом, то прога авто-
матически  будет  считать, что работа идет
на разные диски и будет докучать просьбами
о их смене в процессе распаковки.
      Уникальной   возможностью  программы
является   возможность  раскрытия  образов
спековских  дискет прямо на реальный диск.
Встретив  файл  с  расширением  .trd прога
спросит  способ  раскрытия  на диск в виде
файла  или создания диска из этого образа.
В  первом  случае  созданный файл ничем не
будет  отличаться  от  обычного  файла, во
втором  будет  создан новый диск из образа
эмулятора,  при этом вся информация на вы-
ходном диске будет потеряна, так что прог-
рамма  сама  включит  режим "разные диски"
независимо  от установленного в меню. Осо-
бенность этого режима работы: раскрываеный
файл должен иметь длинну кратную сектору -
для  правильного подсчета контрольной сум-
мы.
      Некоторые  архивы  имеют внутри себя
комментарии.  Это не файлы, а составляющие
служебные  поля  архива.  Так  вот,  прога
встретив  в служебных полях архива коммен-
тарий   выведет   его,  но  на  расширении
512*192. Тем у кого оный режим не реализо-
ван остается только посочувствовать.
 (о расширении 512*192 точки читайте в пя-
том номере газеты)
      Данный  продукт  написан на базе ис-
досного  депакера by Михаил Кондратьев, за
что ему большое спасибо!
      Также спасибо Ренату Мамедову за на-
писание  данного  текста и Сергею Анискину
за его конкретное исправление.
      Связаться с автором данного продукта
можно  используя такое нехитрое приспособ-
ление  как FidoNet, мой адрес в этом самом
FidoNet: To: Andrey Isaev 2:5026/23.50 aka
2:5026/21.27
      Сам  unzip  смотрите  в приложении к
газете.


                  ────────
             ───────────────────
                  ────────



Other articles:


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Similar articles:
System - Overview of System Software: copyist Turbo Copier v 2. 0
demoscene - a portrait of the "new" Spektrumista.
Welcome to ... - The History of the descriptions of the professional text editor "ZX-Word perfect vX.XX".
Likbez - Recovery Programs (On the causes of recovery, characterized by acteristic multifeysnogo hacking types multifeysnyh hacks recovery method of searching for old bootloader).

В этот день...   21 November