форум группы Chief-Net форум группы Chief-Net
Перевод приставочных игр и не только!
drako site Перейти на сайт группы     Наш чат      Помощь      Поиск      Пользователи


 Страниц (2): « 1 [2]   

> Без описания
Марат Супермодератор
Отправлено: 28 Февраля, 2016 - 03:27:24
Post Id



Chief-Net


Покинул форум
Сообщений всего: 2146
Дата рег-ции: Окт. 2014  
Откуда: Казахстан





Марат
Так я его уже написал.
Только ещё не выкладывал.
 
 Top
Mefistotel Администратор
Отправлено: 28 Февраля, 2016 - 03:28:25
Post Id



Chief-Net


Покинул форум
Сообщений всего: 7042
Дата рег-ции: Окт. 2014  
Откуда: МАГАДАН





Mefistotel
Марат, у нас gui другой к программе был, более развернутый.
Володя, исходники нужны, чтобы под твой gui сделать?
Прикреплено изображение
26654-1.png



-----
"Перевод старых игр - отличная возможность понять, как устроены программы, подучить иностранный язык и поднять уровень владения родным. Ну и конечно, это просто возможность "общения" со своей любимой игрой детства." © Dimouse
 
 Top
Guyver Администратор
Отправлено: 28 Февраля, 2016 - 03:28:41
Post Id



Chief-Net


Покинул форум
Сообщений всего: 9895
Дата рег-ции: Окт. 2014  
Откуда: Магадан





Guyver
Если я найду их, то скину...

-----
Я не волшебник - я только учусь...
 
 Top
Mefistotel Администратор
Отправлено: 28 Февраля, 2016 - 03:28:58
Post Id



Chief-Net


Покинул форум
Сообщений всего: 7042
Дата рег-ции: Окт. 2014  
Откуда: МАГАДАН





Mefistotel
Цитата:
Если я найду их, то скину...

Володя, я говорю, тебе же исходники нужны, чтобы под новый gui сделать программу?
Или достаточно того, что Марат выложил?

-----
"Перевод старых игр - отличная возможность понять, как устроены программы, подучить иностранный язык и поднять уровень владения родным. Ну и конечно, это просто возможность "общения" со своей любимой игрой детства." © Dimouse
 
 Top
Guyver Администратор
Отправлено: 28 Февраля, 2016 - 03:29:09
Post Id



Chief-Net


Покинул форум
Сообщений всего: 9895
Дата рег-ции: Окт. 2014  
Откуда: Магадан





Guyver
Если всё можно как раньше в батниках прописать, то исходники не нужны. Выложите мне ещё файлы для проверки, с описанием что и как делать...

-----
Я не волшебник - я только учусь...
 
 Top
Mefistotel Администратор
Отправлено: 28 Февраля, 2016 - 03:29:37
Post Id



Chief-Net


Покинул форум
Сообщений всего: 7042
Дата рег-ции: Окт. 2014  
Откуда: МАГАДАН





Программу можно скачать на нашем сайте.
Konami RLE [Utilities]

-----
"Перевод старых игр - отличная возможность понять, как устроены программы, подучить иностранный язык и поднять уровень владения родным. Ну и конечно, это просто возможность "общения" со своей любимой игрой детства." © Dimouse
 
 Top
ZetpeR Пользователь
Отправлено: 12 Ноября, 2020 - 21:19:03
Post Id






Покинул форум
Сообщений всего: 23
Дата рег-ции: Июнь 2015  
Откуда: Россия Москва





В программе есть ошибка она неправильно сжимает некоторые данные, заместо правильных байт в распакованном файле стоят другие вот пример https://ibb.co/zWcQ7vz

Ещё архив который лежит на сайте содержит только исходники сжатия а исходников распаковки нет.

Ещё картинка которая висит на http://chief-net.ru/index.php?op...78&Itemid=73 от другой версии программы.

Вот пример файлов.
Скачать файл: Файлы.7z
Скачан раз: 131

(Отредактировано автором: 12 Ноября, 2020 - 21:36:24)

 
 Top
Griever Пользователь
Отправлено: 13 Ноября, 2020 - 21:09:19
Post Id


VIP


Покинул форум
Сообщений всего: 452
Дата рег-ции: Июнь 2015  





ZetpeR пишет:
В программе есть ошибка она неправильно сжимает некоторые данные, заместо правильных байт в распакованном файле стоят другие.

Формат сжатого файла не совсем Konami RLE. Из какой игры ты его взял?
 
 Top
ZetpeR Пользователь
Отправлено: 13 Ноября, 2020 - 21:36:29
Post Id






Покинул форум
Сообщений всего: 23
Дата рег-ции: Июнь 2015  
Откуда: Россия Москва





Griever пишет:
ZetpeR пишет:
В программе есть ошибка она неправильно сжимает некоторые данные, заместо правильных байт в распакованном файле стоят другие.

Формат сжатого файла не совсем Konami RLE. Из какой игры ты его взял?


Сжатый файл который лежит в примере сделан вашей программой http://chief-net.ru/index.php?op...78&Itemid=73
с сжал свой файл а при распаковки получил не то что сжимал изначально.
 
 Top
Mefistotel Администратор
Отправлено: 14 Ноября, 2020 - 03:17:29
Post Id



Chief-Net


Покинул форум
Сообщений всего: 7042
Дата рег-ции: Окт. 2014  
Откуда: МАГАДАН





Марат обещал полные исходники поискать и выложить. И в итоге так и пропал.
Она не со всеми играми работает. К примеру, в первой кастле немного по другому реализовано сжатие, и программа не справляется.

-----
"Перевод старых игр - отличная возможность понять, как устроены программы, подучить иностранный язык и поднять уровень владения родным. Ну и конечно, это просто возможность "общения" со своей любимой игрой детства." © Dimouse
 
 Top
ZetpeR Пользователь
Отправлено: 14 Ноября, 2020 - 11:42:32
Post Id






Покинул форум
Сообщений всего: 23
Дата рег-ции: Июнь 2015  
Откуда: Россия Москва





Автор: Guyver
Дата: 14-11-2020 02:26:30
Текст сообщения:

Ну, а в игре как это отображается? Просто иногда алгоритм не совпадает, он может быть даже лучше оригинального по качеству сжатия. В игре при этом всё работает. Т.е. 100% совпадения с оригинальным файлом может и не быть при распаковке/упаковке обратно без изменений.
########################
Мой ответ

В игре отображается неправильно, использую игру Contra Force (U) [!].

Проблема в сжатие, если попадается подряд 126(0x7E)байт которые нельзя сжать он кладёт в сжатый файл 125 оригинальных байт а заместо последнего оригинального байта (Который под номером 126) кладёт байт 0x00 что неправильно. Игра и программа такой файл распакуют, но распакованный файл не будет 100% совпадать с оригиналом и за замены байт которые произвела программа и за внутренний ошибки кода.

Вот пример оригинальная картинка в Djinn Mapper 2.0.5 потом я её сжал и вставляем в ром и за пустил, видно что пропали две буквы заместо них стоят пустые тайлы которые обозначаются байтом 00.
Спойлер (Отобразить)

Дополнительно к картинки
Слева вертикальная строчка букв "A" не отображается это скорей всего особенность игры на неё можно не обращать внимания, в дампе видео памяти эти буквы присутствуют.

Спойлер (Отобразить)
 
 Top
Griever Пользователь
Отправлено: 15 Ноября, 2020 - 00:22:58
Post Id


VIP


Покинул форум
Сообщений всего: 452
Дата рег-ции: Июнь 2015  





ZetpeR прав. Тот, кто писал упаковщик не тестировал граничные случаи максимальной длины неупакованного блока. Потому что таких случаев в его файлах от игр не встречалось.
Исходник упаковщика есть, при сбросе блока уникальных байт забыли заполнить последний байт блока, вместо него остаётся и сбрасывается в упакованный поток ноль.

Graveduck, надо сказать, тоже сильно набажил: пишет двоичные данные в файл как в текстовый (чем в некоторых случаях портит распакованный поток) и тоже забыл последний байт в случае максимальной длины. Всё это висит 7 лет на github и romhacking.net без замечаний и исправлений.

Ну и ваша система с созданием из-под гуя батников для консольных приложений Джинни, конечно, те ещё костыли Улыбка
Я бы на вашем месте просто сделал простое Tkinter'овское приложение на питоне на основе graveduck и получил полный опенсорс на Windows и Linux.
 
 Top
Марат Супермодератор
Отправлено: 15 Ноября, 2020 - 21:39:54
Post Id



Chief-Net


Покинул форум
Сообщений всего: 2146
Дата рег-ции: Окт. 2014  
Откуда: Казахстан





ZetpeR пишет:
Проблема в сжатие, если попадается подряд 126(0x7E)байт которые нельзя сжать он кладёт в сжатый файл 125 оригинальных байт а заместо последнего оригинального байта (Который под номером 126) кладёт байт 0x00 что неправильно. Игра и программа такой файл распакуют, но распакованный файл не будет 100% совпадать с оригиналом и за замены байт которые произвела программа и за внутренний ошибки кода.

Что за файл такой? Это явно не графика. Если сжатые данные будут больше исходных, то это вызовет ошибку в программе. Для карты тайлов используется другой алгоритм.
 
 Top
Марат Супермодератор
Отправлено: 15 Ноября, 2020 - 21:44:19
Post Id



Chief-Net


Покинул форум
Сообщений всего: 2146
Дата рег-ции: Окт. 2014  
Откуда: Казахстан





ZetpeR пишет:
Ещё картинка которая висит на http://chief-net.ru/index.php?op...78&Itemid=73 от другой версии программы.

Кто-то что-то напутал. В файлах на сайте нет почему-то моей программы.
Вот эта утилита
Скачать файл: KonamiRLEAdvanced.zip
Скачан раз: 125
 
 Top
Марат Супермодератор
Отправлено: 15 Ноября, 2020 - 22:40:12
Post Id



Chief-Net


Покинул форум
Сообщений всего: 2146
Дата рег-ции: Окт. 2014  
Откуда: Казахстан





ZetpeR пишет:
В игре отображается неправильно, использую игру Contra Force (U) [!].


Ты напиши что ты хочешь извлечь/вставить, а то, может, ты что-то неправильно делаешь.
 
 Top
ZetpeR Пользователь
Отправлено: 15 Ноября, 2020 - 23:47:56
Post Id






Покинул форум
Сообщений всего: 23
Дата рег-ции: Июнь 2015  
Откуда: Россия Москва






Марат пишет:

Что за файл такой? Это явно не графика. Если сжатые данные будут больше исходных, то это вызовет ошибку в программе. Для карты тайлов используется другой алгоритм.


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

В игре я хотел заместо всего титульника добавить свой текст в итоге текст оказался не сжимаемым и при выводе на экран пропали пару букв, я начал анализировать что могло пойти не так и выявил закономерность. Я выше написал под спойлером при каких обстоятельствах возникает ошибка в программе, при которых если программа видит несжимаемые 126 байт она записывает последний байт из них в файл неправильно.
########################################################


Проверил твою программу под спойлером она правильно жмёт файл спасибо. Ха-ха Осталось за малым добавить её на сайт.

Хотя кажется там другой алгоритм надо ещё потестить...

(Отредактировано автором: 16 Ноября, 2020 - 08:18:14)

 
 Top
ZetpeR Пользователь
Отправлено: 16 Ноября, 2020 - 00:59:15
Post Id






Покинул форум
Сообщений всего: 23
Дата рег-ции: Июнь 2015  
Откуда: Россия Москва





Марат пишет:
ZetpeR пишет:
Ещё картинка которая висит на http://chief-net.ru/index.php?op...78&Itemid=73 от другой версии программы.

Кто-то что-то напутал. В файлах на сайте нет почему-то моей программы.
Вот эта утилита


Марат я проверил запаковщик который ты дал, он не подходит к игре Contra Force. Я сжал файл твоей программой и посмотрел его, похоже там алгоритм RLE + прогрессией скорей всего ты дал распаковщик запаковщик для игры Tiny Toon Adventures 2 - Trouble in Wackyland.

А версия которая лежит на сайте использует только RLE.
Марат пожалуйста посмотри исходный код той программы которая лежит сейчас на сайте вот ссылка на исходник со старого форума http://chief-net.ru/images/files/konami_up.rar

Там надо поправить код, который отвечает за несжатые байты, когда встречается несжимаемые 126 байт записать их все в файл правильно а сейчас он записывает последний байт как 00.


Под спойлером пример строчки из байт которая должна правильно распаковываться.
Спойлер (Отобразить)


Если это не получится тогда можно будет на основе твоей версии программы сделать просто сжатие RLE без прогресси.

(Отредактировано автором: 16 Ноября, 2020 - 08:33:17)

 
 Top
Марат Супермодератор
Отправлено: 16 Ноября, 2020 - 11:51:32
Post Id



Chief-Net


Покинул форум
Сообщений всего: 2146
Дата рег-ции: Окт. 2014  
Откуда: Казахстан





ZetpeR пишет:
Если это не получится тогда можно будет на основе твоей версии программы сделать просто сжатие RLE без прогресси.


Ну там же два вида сжатия. Если тебе не подходит сжатие для карты тайлов, используй сжатие для данных. По коду я вижу, что в Konami UP используется сжатие для данных. В моей программе нижняя группа кнопок Work with Data.
 
 Top
Марат Супермодератор
Отправлено: 16 Ноября, 2020 - 12:49:57
Post Id



Chief-Net


Покинул форум
Сообщений всего: 2146
Дата рег-ции: Окт. 2014  
Откуда: Казахстан





Да, там немного по-другому.
Вот исправил конами ап.

А нет, надо ещё пошаманить. Не так проверил.
 
 Top
Марат Супермодератор
Отправлено: 16 Ноября, 2020 - 14:08:12
Post Id



Chief-Net


Покинул форум
Сообщений всего: 2146
Дата рег-ции: Окт. 2014  
Откуда: Казахстан





Вот, вроде везде поправил.
Скачать файл: konami_coder.zip
Скачан раз: 125
 
 Top
ZetpeR Пользователь
Отправлено: 16 Ноября, 2020 - 20:44:41
Post Id






Покинул форум
Сообщений всего: 23
Дата рег-ции: Июнь 2015  
Откуда: Россия Москва





Марат пишет:
Вот, вроде везде поправил.


Спасибо Марат за исправления бага в программе, я проверил программу теперь она работает как надо, в игре всё нормально отображается.

Теперь осталось за малым обновить эту версию на сайте и подправить там картинку на правильную.
Только перед заливом на сайт надо добавить туда исходник для распаковки сжатия можно взять отсюда http://chief-net.ru/images/files/konami_up.rar из папки files\source\Konami_unpacker\konaunc.dpr только его перед этим надо переименовать чтобы он не затёр исходник запаковщика а то в версии архива с сайта, нет исходника кода распаковки.

Ещё надо на сайте опубликовать твою версию программы для распаковки запаковки сжатия Tiny Toon Adventures 2 - Trouble in Wackyland написать что есть два вида сжатия RLE + прогрессия и просто RLE.
 
 Top
Mefistotel Администратор
Отправлено: 17 Ноября, 2020 - 13:10:42
Post Id



Chief-Net


Покинул форум
Сообщений всего: 7042
Дата рег-ции: Окт. 2014  
Откуда: МАГАДАН





Сюда перенёс и обновил версию программы на сайте.
Konami UP

-----
"Перевод старых игр - отличная возможность понять, как устроены программы, подучить иностранный язык и поднять уровень владения родным. Ну и конечно, это просто возможность "общения" со своей любимой игрой детства." © Dimouse
 
 Top
Марат Супермодератор
Отправлено: 17 Ноября, 2020 - 23:34:40
Post Id



Chief-Net


Покинул форум
Сообщений всего: 2146
Дата рег-ции: Окт. 2014  
Откуда: Казахстан





ZetpeR пишет:
Марат я проверил запаковщик который ты дал, он не подходит к игре Contra Force. Я сжал файл твоей программой и посмотрел его, похоже там алгоритм RLE + прогрессией скорей всего ты дал распаковщик запаковщик для игры Tiny Toon Adventures 2 - Trouble in Wackyland.


А ты не пробовал второй вариант сжатия? Кнопки в группе Work with Data.
По идее он должен был подойти.
 
 Top
ZetpeR Пользователь
Отправлено: 18 Ноября, 2020 - 00:35:10
Post Id






Покинул форум
Сообщений всего: 23
Дата рег-ции: Июнь 2015  
Откуда: Россия Москва





Марат пишет:

А ты не пробовал второй вариант сжатия? Кнопки в группе Work with Data.
По идее он должен был подойти.


Пробовал, но у меня в сжатом файле с начало идёт много сжимаемых байт 00 при использование втором сжатие Work with Data я получаю вначале сжатого файла 4 байта которые выглядят так 7F 00 0B 00 алгоритм в игре думает что 7F это конец распаковки и дальше нечего в видео память не распаковывает, в игре получаю чёрный экран. В версии программы с сайта первые 4 байта получается 7E 00 0C 00 так всё распаковывает.
 
 Top
Марат Супермодератор
Отправлено: 21 Ноября, 2020 - 20:04:25
Post Id



Chief-Net


Покинул форум
Сообщений всего: 2146
Дата рег-ции: Окт. 2014  
Откуда: Казахстан







Переделал свой кодек. Добавил алгоритм сжатия из игры Castlevania. Добавил обработку в декомпрессор по ключу $7F. В игре ключ $7F означает считать новый адрес PPU из сжатого потока и продолжить распаковку по новому адресу PPU. По факту это используется для карт тайлов, когда одна карта распаковывается в первую страницу PPU, а вторая во вторую или третью. При распаковке, если такой код попадется, то программа выдаст сообщение, где спросит распаковывать следующую карту тайлов или нет.

В первой кастлевании алгоритм примитивный и сжатый блок не должен превышать 256 байт.
В итоге сжатая карта тайлов состоит из 4 блоков. На каждый блок есть поинтеры. Для распаковки поинтеры на блоки не нужны, достаточно указать адрес начала первого блока.
А вот после вставки запакованного блока, нужно будет руками править поинтеры на блоки.
Ориентировочно блоки будут размером 256 байт, возможно чуть меньше. В конце блока всегда есть байт $D9 - ключ конца распаковки блока.


 
 Top
Mefistotel Администратор
Отправлено: 22 Ноября, 2020 - 15:13:02
Post Id



Chief-Net


Покинул форум
Сообщений всего: 7042
Дата рег-ции: Окт. 2014  
Откуда: МАГАДАН





Марат, скинь прогу с исходниками. Добавлю на сайт.

-----
"Перевод старых игр - отличная возможность понять, как устроены программы, подучить иностранный язык и поднять уровень владения родным. Ну и конечно, это просто возможность "общения" со своей любимой игрой детства." © Dimouse
 
 Top
Марат Супермодератор
Отправлено: 22 Ноября, 2020 - 16:02:21
Post Id



Chief-Net


Покинул форум
Сообщений всего: 2146
Дата рег-ции: Окт. 2014  
Откуда: Казахстан





А я думал прикрепил файл с кодеком.
Скачать файл: KonamiRLEAdvanced.rar
Скачан раз: 143
 
 Top
Страниц (2): « 1 [2]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Экстрим хакинг »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



> Похожие темы: RLE - KONAMI (NES)
Темы Форум Информация о теме Обновление
Genghis Khan II - Clan of the Gray Wolf [GEN]
Основной текст. Часть 3
Закрытые переводы Ответов: 0
Автор темы: Mefistotel
25 Февраля, 2016 - 02:34:37
Автор: Mefistotel
Genghis Khan II - Clan of the Gray Wolf [GEN]
Основной текст. Часть 2
Закрытые переводы Ответов: 0
Автор темы: Mefistotel
25 Февраля, 2016 - 02:19:27
Автор: Mefistotel
Kruptar
...
Программирование Ответов: 0
Автор темы: Mefistotel
24 Июля, 2015 - 10:23:06
Автор: Mefistotel
Genghis Khan II - Clan of the Gray Wolf [GEN]
Имена и названия. Часть 2
Закрытые переводы Ответов: 0
Автор темы: Mefistotel
25 Февраля, 2016 - 02:01:53
Автор: Mefistotel
Genghis Khan II - Clan of the Gray Wolf [GEN]
Имена и названия. Часть 1
Закрытые переводы Ответов: 3
Автор темы: Mefistotel
23 Февраля, 2016 - 09:25:52
Автор: Guyver
 

Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®