Размеры со всеми заголовками и депакерами (если без него нельзя).
По факту, без депакера там только HRiP/RAR/ZIP/ZXZIP
У остальных форматов (кроме MegaLZ) в коде депакера содержится часть информации о сжатых данных (как минимум, размер). Так что просто вычесть из длины упакованного блока размер распаковщика нельзя.
Все это хорошо и замечательно, но где расписание что и когда будут показывать, где хотя бы предварительные ссылки на стрим, где вообще вся собранная в одном месте информация о VERVE?
Приложи пожалуйста сам файл — я хочу добавить цифру для LZ4 — т.к. сейчас очень большая лагуна между LZ4 и всем остальным. Интересно посмотреть, какие байтовые пакеры жали получше — думаю, мне бы не помешал упаковщик нацеленный на быструю распаковку, но нацеленный на нашу платформу (LZ4 достаточно ощутимо неэффективен по формату, ну и сам формат не вполне удобен для Z80).
Байтовые упаковщики встречались иногда в 1990е, но быстро проиграли смешанным битовым-байтовым пакерам, т.к. не могли конкурировать по коэффициенту сжатия.
CharPres. Настолько херово жмет, что им по два раза жали:)
Offtopic.
Нарыл у себя в тестах немного данных по разным архаичным и не очень упаковщикам.
16384 байта TR-DOS Ver 5.03 (md5 0da70a5d2a0e733398e005b96b7e4ba6)
Она пакует задом наперёд. Это упрощает распаковщик (на несколько байт), плюс, не нужно так же много возиться со стеком, так что и побыстрее распаковка. Выигрыш/проигрыш зависит только от конкретного набора данных, как повезёт. По сути — один хрен. По-хорошему, нужно было встраивать опцию упаковки задом наперёд в ZX7, как это сделано в Exomizer, но Einas — довольно странный чувак.
Главное достоинство распаковки задом наперёд — можно иметь кодовый блок заканчивающийся на самом верху памяти и распковывать внахлёст просто загрузив упакованный блок так, чтобы его начало оказалось немного ниже начала распакованного блока. В 1990е я написал несколько пакеров на спектруме; они были очень примитивные, но паковали они все задом наперёд как раз из-за того, что я переделывал мультифейсные кассетные релизы и мне часто бывало нужно распаковать в упор до конца памяти.
Отличная статья.
Немного скажу за zx7. Cуществует версия пакера zx7b * Modified in 2013 by Antonio Villena, какие то файлы жмет лучше, какие то хуже, но думаю автора депакера хуже бы делать не стал? Он сам ей всегда и пользуеЦЦа.
Потому что спектрумовские прерывания Бейсика (которые IM 1) модифицируют системные переменные через IY. Поэтому, если взять распаковщик использующий IY и не запретить прерывания — Бейсик будет гадить вокруг текущего значения IY, что может дать большое кол-во непредсказуемых багов. Ошибка, конечно, детская, но неприятная и распространённая.
В принципе, мне бы нужно было точно так же сказать про HL', потому что если в HL' неправильная величина, вернуться из распаковщика в Бейсик будет затруднительно.
По факту, без депакера там только HRiP/RAR/ZIP/ZXZIP
У остальных форматов (кроме MegaLZ) в коде депакера содержится часть информации о сжатых данных (как минимум, размер). Так что просто вычесть из длины упакованного блока размер распаковщика нельзя.
CharPres. Настолько херово жмет, что им по два раза жали:)
Offtopic.
Нарыл у себя в тестах немного данных по разным архаичным и не очень упаковщикам.
16384 байта TR-DOS Ver 5.03 (md5 0da70a5d2a0e733398e005b96b7e4ba6)
Размеры со всеми заголовками и депакерами (если без него нельзя). Для архивов — размеры блока файла со всеми заголовками.
Так получилось, что CodeCruncher3 и Data SQueezer тестировались на других данных, поэтому в сравнении не участвуют.
Главное достоинство распаковки задом наперёд — можно иметь кодовый блок заканчивающийся на самом верху памяти и распковывать внахлёст просто загрузив упакованный блок так, чтобы его начало оказалось немного ниже начала распакованного блока. В 1990е я написал несколько пакеров на спектруме; они были очень примитивные, но паковали они все задом наперёд как раз из-за того, что я переделывал мультифейсные кассетные релизы и мне часто бывало нужно распаковать в упор до конца памяти.
Немного скажу за zx7. Cуществует версия пакера zx7b * Modified in 2013 by Antonio Villena, какие то файлы жмет лучше, какие то хуже, но думаю автора депакера хуже бы делать не стал? Он сам ей всегда и пользуеЦЦа.
В принципе, мне бы нужно было точно так же сказать про HL', потому что если в HL' неправильная величина, вернуться из распаковщика в Бейсик будет затруднительно.