Автор Тема: Как перевести ром с японского?  (Прочитано 2911 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5191
    • Просмотр профиля
Как перевести ром с японского?
« Ответ #90 : 31 Март 2025, 14:48:49 »
к сожалению да графика запакована так просто текст не перерисуешь
Там простое сжатие - RLE с улучшениями. Написал скрипт на Python 3 для сжатия и разжатия, сжимает лучше оригинала в некоторых случаях.
Выполнить в командной строке для разжатия и сжатия шрифта:
rle_dungeon_kid.py "Dungeon Kid (Japan).nes" prg7759_unc.bin 0x7769
rle_dungeon_kid.py prg7759_unc.bin prg7759_edit.bin
0x7769 - позиция в файле. Файл prg7759_edit.bin вручную скопировать через Hex-редактор.
У сжатия есть возможность повторять байт заданный в RAM $67, но в начале игры не используется, это не проблема при сжатии, но, если использовать мой скрипт для разжатия данных, которые используют эту возможность, то нужно в скрипте изменить RAM_67 = 0x00 на нужное значение. К шрифту с позиции 0x7769 не относится.

Сложнее с текстом, он кодируется где-то блоками по 4 тайла (2x2, действия справа), где-то текст копируется из рома в SRAM и оттуда берётся (текст внизу). Лучше не мучиться, расширить ром и изменить код вывода текста.

Оффлайн Ojisun

  • Пользователь
  • Сообщений: 53
    • Просмотр профиля
Как перевести ром с японского?
« Ответ #91 : 31 Март 2025, 15:17:42 »
Там один вид текста? Может есть текст который используеться для написание в игре своих реплик и т.д. для конструктора, а текст для меню игры в инвентаре и магазинах другой. Хорошо бы добавить просто алфавит русский для написания реплик  и диалогов.