Главное достоинство lzsa1 - скорость и любые варианты его распаковщиков плохо подходят для sfx версий суперкомпактных программ. Для микродем и других подобных применений есть zx7mini, а еще лучше saukav с соответствующими настройками.
Главное достоинство lzsa1 - скорость и любые варианты его распаковщиков плохо подходят для sfx версий суперкомпактных программ. Для микродем и других подобных применений есть zx7mini, а еще лучше saukav с соответствующими настройками.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Einar Saukas сделал отдельный упаковщик ZX2 и для решения этой задачи. К сожалению мне негде выложить распаковщики, но их сравнительно просто можно переделать из уже выложенных (проще взять за основу ZX0). Для 8080 получилось 68-79 байт (в зависимости от опций).
Oleg N. Cher(02.04.2021)
Спасибо всем за интерес к ZX0, ZX1 и ZX2, я очень ценю это. Отдельное спасибо ivagor за отличную работу по портированию их на PDP11 и 8080!
К сожалению, репозитории ivagor на gitlab перестали работать несколько дней назад. Кто-нибудь знает, переехали ли они по другому адресу? Я хотел бы дать ссылку на них в своей документации, но нигде не могу их найти.
nzeemin(03.04.2021), Oleg N. Cher(02.04.2021)
Оказалось, что для упрощения изобретения велосипеда с быстрым циклом не обязательно было вспоминать msxную статью. Уже год лежат распаковщики lzsa для ГеймБоя использующие эту фишку.
Einar, thank you for very good compressors! I'm searching for a new place for decompressor sources.
Oleg N. Cher(02.04.2021)
Я очень рекомендую https://github.com/
nzeemin(03.04.2021), Oleg N. Cher(03.04.2021)
Пробую github, для начала распаковщики для ZX0/1/2. Про ZX0/1 писал раньше, добавлен ZX2 (хорошо подходит для небольших файлов, замена для zx7mini/saukav). Поддерживаются все опции, в зависимости от них размер распаковщика 68-79 байт. Это больше, чем самый компактный распаковщик zx7mini (53 байта), но на примере теста техпрогона (исходно 1024 байта):
zx7mini: 53 байта распаковщик + 898 байт упакованный файл = 951 байт
zx0: 97 байт распаковщик + 813 байт упакованный файл = 910 байт
zx2: 68 байт распаковщик + 822 байта упакованный файл = 890 байт
Пока я не нашел маленьких файлов, на которых zx7mini был бы лучше zx2 по суммарному размеру связки распаковщик+упакованный файл. Слишком маленькие и плохо сжимаемые файлы в соревновании не участвовали, т.к. если распаковщик+упакованный файл больше исходного, то конечно нет смысла в такой упаковке.
благодарю вас!
Einar, it would be great to add option to force limited block length (maybe modified -y ?) for ZX2 even if it is not optimal. For example we got 100 short separately compressed fragments in programm and for 99 of them limited length is enough. I want to use limited block length unpacker for all 100 of them in this case.
Последний раз редактировалось ivagor; 05.04.2021 в 20:17.
Yes, I was already planning to make parameter -y work this way, but I need more time.
It's easy to make ZX2 compressor generate a non-optimal output with limited length. But not so easy to make ZX2 compressor generate the best possible output within this length limit. Some of my current implementation optimizations assume unlimited length so I have to rethink everything to make this work properly.
Oleg N. Cher(07.04.2021)
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)