User Tag List

Страница 24 из 26 ПерваяПервая ... 20212223242526 ПоследняяПоследняя
Показано с 231 по 240 из 252

Тема: Сжатие данных

  1. #231

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,390
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    38 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Для уровней 800 байт минимальное оправданное окно 1024 байта (а лучше больше), иначе проще паковать по одному уровню.

    - - - Добавлено - - -

    Для zx0 "словарем" являются распакованные данные, или кольцевой буфер, если он используется.

  2. #232

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,390
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    38 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Сам себя поправлю/дополню - для zx0 не только распакованные данные являются словарем, но и "префикс", если он использовался при упаковке. Возможно svofksi больше про этот вариант написал.

  3. #233

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,390
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    38 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Сравнил сжатие уровней Старой башни (Денис Грачев), 21 уровень по 880 байт=18480 байт. Каждый уровень сжимался отдельно.
    ZX0 (взял сжатые файлы из исходников игры): 7787 байт, распаковщик 92 байта
    Exomizer 3.1.2 -P43: 7608 байт, распаковщик 264 байта, временная таблица 156 байт
    ZX5 v2.0: 7579 байт, распаковщик 147(151) байт
    Exomizer 3.1.2 -P43 -E: <7337 байт + временная таблица 156 байт> или <7311 байт + на постоянку таблица 156 байт>, распаковщик 279 байт
    RIP v2023.03.30 -rb: 7211 байт, распаковщик 310 байт + временно 1474 байта рабочая область
    UPKR 0.2.2 --z80: 6590 байт, распаковщик 224 байта + временно 320 байт рабочая область

    Для полного счастья надо бы еще и время распаковки протестировать, но если не вдаваться в детали, то во всех случаях кроме UPKR им можно пренебречь. UPKR придется подождать, скорее всего больше секунды на уровень, но если экономить каждый байт, то хороший вариант применения этого специфического упаковщика.

    Этот пользователь поблагодарил ivagor за это полезное сообщение:

    CityAceE(18.10.2024)

  4. #234

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,299
    Спасибо Благодарностей отдано 
    1,028
    Спасибо Благодарностей получено 
    813
    Поблагодарили
    484 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Уровень это один экран, или сразу много?
    Больше игр нет

  5. #235

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,390
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    38 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    В Старой башне уровни со скроллом, поэтому нельзя сказать, что один экран. Для определенности - я о файлах mapXX.tmx.mapa, где XX от 00 до 20

  6. #236

    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    5,213
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    706
    Спасибо Благодарностей получено 
    1,643
    Поблагодарили
    572 сообщений
    Mentioned
    50 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    У меня пока ещё немножко места в памяти есть. Как в очередной раз упрусь, то буду экспериментировать. А пока же остановился на ZX0. Но уже прикинул, откуда взять 1,5 килобайта на распаковку.
    С уважением, Станислав.

  7. #237

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,299
    Спасибо Благодарностей отдано 
    1,028
    Спасибо Благодарностей получено 
    813
    Поблагодарили
    484 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    В Старой башне уровни со скроллом, поэтому нельзя сказать, что один экран. Для определенности - я о файлах mapXX.tmx.mapa, где XX от 00 до 20
    А как в Золоте Монтесумы, там по экранам или пачками? Это наверное скорее к @CityAceE вопрос.
    Больше игр нет

  8. #238

    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    5,213
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    706
    Спасибо Благодарностей получено 
    1,643
    Поблагодарили
    572 сообщений
    Mentioned
    50 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от svofski Посмотреть сообщение
    там по экранам или пачками?
    У меня по экранам запаковано. И распаковывается по мере перехода на соседний экран.
    С уважением, Станислав.

    Этот пользователь поблагодарил CityAceE за это полезное сообщение:

    parallelno(19.08.2025)

  9. #239

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,390
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    38 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Для полноты картины результаты сжатия уровней Старой башни в zx0 с окнами от 512 до 2048 байт и по 2 уровня.
    salvador -classic -w512: 7576 байт
    salvador -classic по 2 уровня: 7434 байта
    salvador -classic -w1024: 7037 байт
    salvador -classic -w2048: 6842 байт

    Признаю, что был неправ, когда написал, что в данном случае нужны окна >=1024. Начиная с 512 уже сжимает лучше за счет возможности ссылки на предыдущий уровень, пусть и неглубокой. Надо учитывать, что оконный распаковщик распухнет по сравнению с обычным.
    Последний раз редактировалось ivagor; 19.10.2024 в 07:10. Причина: salvador 1.4.2

  10. #240

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,390
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    38 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    В БК3D.Arena ("прямой") распаковщик zx0 догнал по размеру распаковщик 8080 - 92 байта. Посмотрел еще раз - новых идей по сокращению версии 8080 не появилось. Для вектора можно сократить на байт, но получится не универсальный вариант, если прерывания разрешены, то зависит от особенностей обработчика. Для БК тоже есть резерв с возможным повторным использованием RET. Достаточно интересная ситуация, инструкции PDP11 в среднем более толстые, но это компенсируется тем, что они и более емкие. Единственный плюс, что для 8080 версия без самомодификации, но это не особо критично для распаковщика современного формата, который практически всегда работает в озу. Версия dzx0 8080 с самомодификацией тоже есть, она быстрее, но больше по размеру.
    Последний раз редактировалось ivagor; 13.08.2025 в 11:01.

    Эти 3 пользователя(ей) поблагодарили ivagor за это полезное сообщение:

    Improver(14.08.2025), Oleg N. Cher(23.08.2025), Pyk(17.08.2025)

Страница 24 из 26 ПерваяПервая ... 20212223242526 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Архивирование, сжатие, упаковка.
    от GriV в разделе Программирование
    Ответов: 30
    Последнее: 22.07.2019, 17:25
  2. Существует ли идеальное сжатие без потери данных?
    от CodeMaster в разделе Программирование
    Ответов: 35
    Последнее: 06.10.2017, 00:15
  3. RLE сжатие (покритикуйте)
    от Vladson в разделе Программирование
    Ответов: 12
    Последнее: 16.03.2008, 12:29
  4. Ответов: 18
    Последнее: 18.06.2006, 16:50

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •