Разработка и ромхакинг > Ромхакинг
Вопросы новичков
AuAurora:
Раздражает, что соники, особенно 2 на двоих игроков безбожно лагают на любом разгоне, в чём их фишка, почему так? Нужно ром хакнуть под разгон?
Dport:
Всем здравствуйте, у меня вопрос такой: как перевести код асма 68к на С? Я знаю, что есть Ghidra, но тамошний псевдокод на до же приводить в нормальный вид и с этим у меня сложновато пока, есть у кого-то примеры перевода 68k->С через Ghidra?
SeregaZ:
проблема заключается в том, что одним 68К ты погоду не сделаешь. это целая, мать её, экосистема! 68К шлет всяко разно в Z80. шлет в видео память, шлет в палитру... поэтому даже если ты и родишь конвертер 68К в С и как бы движок игры может и очухается и запустится, но вот все побрякушки работать не будут. надо будет изобретать костыли, чтобы заставить их работать. типа эмулировать Z80 (ладно, тут наверное есть какие-то дллки, которые можно будет подключить), эмулировать VDP, эмулировать палитру, эмулировать ввод - то есть кнопки с геймпада, эмулировать спрайтовую систему. ты готовый утонуть в сей вакханалии? это в одну каску на полгода-год пыхтения. хотя с ИИ может и пошустрей процесс пойдет. и тем не менее это полный швах :)
Беларус:
Dport, нет таково. Разве што нейросети смогут в будущем, а пока всё своими руками.
Dport:
--- Цитата: SeregaZ от 30 Апрель 2026, 23:14:59 ---проблема заключается в том, что одним 68К ты погоду не сделаешь. это целая, мать её, экосистема! 68К шлет всяко разно в Z80. шлет в видео память, шлет в палитру... поэтому даже если ты и родишь конвертер 68К в С и как бы движок игры может и очухается и запустится, но вот все побрякушки работать не будут. надо будет изобретать костыли, чтобы заставить их работать. типа эмулировать Z80 (ладно, тут наверное есть какие-то дллки, которые можно будет подключить), эмулировать VDP, эмулировать палитру, эмулировать ввод - то есть кнопки с геймпада, эмулировать спрайтовую систему. ты готовый утонуть в сей вакханалии? это в одну каску на полгода-год пыхтения. хотя с ИИ может и пошустрей процесс пойдет. и тем не менее это полный швах :)
--- Конец цитаты ---
Дело в том, что я хотел бы портировать spindash из sonic 2 в sonic cd (версию на win 95), соль в том, что весь код там был переведен интелловскими программистами в С с исходников от Сеги, у этой версии уже есть своя декомпиляция от доброго человека (https://git.sr.ht/~benoitren/soniccddecompilation) и именно туда я и хочу добавить spindash, все-таки с С проще работать, чем с ассемблером(тред на sonic retro: https://forums.sonicretro.org/index.php?threads/sonic-cd-decompilation.41878/)
Беларус:
Судя по первому сообщению декомпиляцыя не закончена и не компилируема. И часто такие проекты забрасываютса, т.е. нет смысла начать што-то делать заранее пока не закончено.
Про статический рекомпилятр MegaDriveRecomp перенёс в Программирование.
Dport:
Она закончена и компилируема, просто инструкции не в репозитории, а в треде на sonic retro (13, 14-15 страницы вроде) (есть makefile для сборки или cmakeLists.txt для visual studio)P.S. репозиторий (https://git.sr.ht/~benoitren/soniccdrespinned) P.P.S.(есть уже собранная версия:https://shc.zone/entries/contest2025/1412) нужно извлечь файл soniccd.cvm из sonic gems collection(.iso образ для ps2 вроде любым архиватором можно открыть), и распаковать cvm через 7-zip в директорию с экзешником) Чтобы появилась музыка нужно из оригинального образа пк версии извлечь файл pcm.cmp в ту же директорию с экзешником
radonur:
Всем привет! Как редактировать шрифты в играх для NDS в формате bin? Хотел перевести Rayman DS, а там шрифт в формате bin
Беларус:
Ты тоже не любитель ходить в Гугл и уж тем более к ИИ, да? :ohmy:
Это стандартный вопрос и там всё есть.
Скажу лиш, што bin, он как и dat или pak - это не стандартный формат с известной внутренней структурой, там внутри может быть што угодно. У последнево данные часто упакованы (packed).
Sharpnull:
--- Цитата: radonur от 30 Май 2026, 09:36:18 ---Хотел перевести Rayman DS, а там шрифт в формате bin
--- Конец цитаты ---
font16.bin какой-то второстепенный шрифт, можно отредактировать в любом тайловом редакторе, 8bpp, тайлы 8x8px, один символ 16x16px. Основные шрифты могут быть сжаты. И как уже сказали, не путайте "формат" и "расширение" файла.
radonur:
--- Цитата: Sharpnull от 30 Май 2026, 16:25:52 ---font16.bin какой-то второстепенный шрифт, можно отредактировать в любом тайловом редакторе, 8bpp, тайлы 8x8px, один символ 16x16px. Основные шрифты могут быть сжаты. И как уже сказали, не путайте "формат" и "расширение" файла.
--- Конец цитаты ---
А, это второстепенный.. Ну ладно. Я пытался для него нормальный тайловый редактор найти,но из всех редакторов только Кристалл Тайл один поддерживает 8bpp. Только он ужасно неудобный
lupus:
radonur, полно редакторов, которые 8bpp поддерживают. Сходу, кроме кристала ещё тайл молестер назову. К молестеру ещё и куча модов было.
Да, 8bpp разные бывают.
drakula1912:
Скажите, пожалуйста, есть какие-нибудь эмуляторы, кроме retro Arch, которые смогут посмотреть адреса в оперативной памяти Рома?
тем более я вроде нашел инструмент который может методом тыка изменить значение но для его работы нужно знать какое значение записалось в ромhttps://codehut.gshi.org/TableFinder.html
Sharpnull:
--- Цитата: drakula1912 от 07 Июнь 2026, 11:08:19 ---посмотреть адреса в оперативной памяти Рома?
--- Конец цитаты ---
Если вы про SRAM, в BizHawk можно посмотреть SRAM и RAM (консоли), нужно запустить libretro ядро. В этой игре адреса SRAM вроде 0x200000-0x20FFFF.
drakula1912:
Я всё понял, благодарю. Теперь можно обращаться ко мне на «ты», так как на «вы» мне не очень комфортно.
Навигация
Перейти к полной версии