Описание: WonderSwan Color поиск алгоритма сжатия |
Поиск в теме | Версия для печати |
Griever |
Отправлено: 08 Мая, 2024 - 11:59:00
|
VIP
Покинул форум
Сообщений всего: 457
Дата рег-ции: Июнь 2015
|
Графика хранится в LZSS:
Формат блока:
CODE:+----------+--------+-------------------------------------------------------------------------+
| Смещение | Размер | Описание |
+----------+--------+-------------------------------------------------------------------------+
| 0 | 6 | Заголовок 10 00 00 00 05 00 |
| 6 | 2 | Размер распакованного блока в байтах 00 04 (0x400 байт) |
| 8 | X | Упакованный поток бит. Биты в байте проверяются от старшего к младшему.
+-------+------+------------------------------------------------------------------------------+
LZ:
CODE:0 XXXXXXXX YYY
| | |
| | 3 бита размера копирования
| 8 бит смещения в кольцевом буфере
Флаг сжатия
Кольцевой буфер размером 0x100 байт, не обнуляется, а переходит к нулевой позиции и начинает перезаписывать буфер с начала. Нулевая позиция буффера в первом проходе не используется, поэтому смещения начинаются с 1, а не с 0. Непонятно, зачем так сделано.
Размер копирования хранится как (размер - 3). Непонятно, почему не 2, т.к. хранить LZ пару уже выгодно, когда она сжимает хотя бы 2 байта.
Raw:
CODE:1 XXXXXXXX
| |
| |
| 8 бит несжатого байта
флаг несжатого байта |
|
|
PeacefulWarrior |
Отправлено: 13 Мая, 2024 - 00:57:15
|
Покинул форум
Сообщений всего: 7
Дата рег-ции: Май 2024
|
Griever пишет:Графика хранится в LZSS:
Формат блока:
CODE:+----------+--------+-------------------------------------------------------------------------+
| Смещение | Размер | Описание |
+----------+--------+-------------------------------------------------------------------------+
| 0 | 6 | Заголовок 10 00 00 00 05 00 |
| 6 | 2 | Размер распакованного блока в байтах 00 04 (0x400 байт) |
| 8 | X | Упакованный поток бит. Биты в байте проверяются от старшего к младшему.
+-------+------+------------------------------------------------------------------------------+
LZ:
CODE:0 XXXXXXXX YYY
| | |
| | 3 бита размера копирования
| 8 бит смещения в кольцевом буфере
Флаг сжатия
Кольцевой буфер размером 0x100 байт, не обнуляется, а переходит к нулевой позиции и начинает перезаписывать буфер с начала. Нулевая позиция буффера в первом проходе не используется, поэтому смещения начинаются с 1, а не с 0. Непонятно, зачем так сделано.
Размер копирования хранится как (размер - 3). Непонятно, почему не 2, т.к. хранить LZ пару уже выгодно, когда она сжимает хотя бы 2 байта.
Raw:
CODE:1 XXXXXXXX
| |
| |
| 8 бит несжатого байта
флаг несжатого байта
Здравствуйте! Спасибо вам огромное! Благодаря этим данным смог написать программу для распаковки графики. Не могли бы вы рассказать как на основе тех данных что у вас были вы смогли получить все эти данные о сжатии? |
|
|
PeacefulWarrior |
Отправлено: 14 Мая, 2024 - 00:18:43
|
Покинул форум
Сообщений всего: 7
Дата рег-ции: Май 2024
|
Griever пишет:Привет, в общих чертах, процесс такой:
в Mednafen нашел адрес распакованной графики, поставил останов на запись в него, поймал место в коде, которое пишет в этот адрес, загрузил дамп RAM в IDA, проанализировал процедуру распаковки, подтвердил её на паре примеров распакованной графики.
Слушайте, вы не хотели бы пополнить библиотеку переводом этой игры на chief net? Теперь когда с графикой всё решено. Я смогу перерисовать все ресурсы, шрифты и теперь могу поменять всю графику и текст. Думаю я в любом случае этим займусь, хотелось бы просто знать что могу загрузить перевод куда нибудь где он будет виден людям. |
|
|
Mefistotel |
Отправлено: 14 Мая, 2024 - 00:41:32
|
Chief-Net
Покинул форум
Сообщений всего: 7127
Дата рег-ции: Окт. 2014
Откуда: МАГАДАН
|
Ты занимайся, сюда скидывай готовый инструментарий и тексты по мере перевода (eng+rus). Нужно проверить твой уровень владения английским и русским языками. Если всë достойно, то проблем нет, добавлю перевод на сайт. Переводить текст сам собираешься? Судя по сообщениям, есть проблемы с пунктуацией. Но в любом случае перевод можно и просто в нашу Базу добавить, чтобы не пропал.
Предварительно необходимо согласовать глоссарий с нашей версией перевода. Поэтому прикладываю наш вариант для версии на Famicom. Также у меня есть и полностью переведëнный русский текст и английский оригинал. Могу поделиться также.
Хотелось бы сравнить скрипты из версий FAMI и WSC. На WSC текста наверняка больше, и он насыщеннее.
----- "Перевод старых игр - отличная возможность понять, как устроены программы, подучить иностранный язык и поднять уровень владения родным. Ну и конечно, это просто возможность "общения" со своей любимой игрой детства." © Dimouse |
|
|
kgn |
Отправлено: 06 Июля, 2024 - 20:23:17
|
Покинул форум
Сообщений всего: 3
Дата рег-ции: Июль 2024
|
Mefistotel пишет:Вот весь текст из версии на Famicom.
Извините, что вмешиваюсь, но ещё когда проходил игру с этим переводом, заметил пару опечаток. А тут повод удобно указать на них.
Message RUS.txt
строка 98 - обаяние (никак не обояние)
строка 315 - откачаны (не откачены; откачены, если откатить что-то, а откачать - откачаны. По смыслу именно откачать)
Magic RUS.txt
строка 179 - обаяние (опять же)
Это что запомнил. Если вдруг решите обновить патч.
P.S.: это вкусовщина, понимаю, что перевод самобытный и всё такое, но вступление "...сражались за свои земли, да проиграли", как-то ломает настрой. Вот это просторечное "да проиграли" напоминает русские сказки.))) Я бы заменил на нейтральное "но проиграли".
Если что, это файл Text_2 RUS.txt строка 1455 |
|
|
|
Поиск в теме | Версия для печати |
Страниц (1): [1] |
Сейчас эту тему просматривают: 7 (гостей: 7, зарегистрированных: 0) |
« Экстрим хакинг » |
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
|
|
|