| Разработка и ромхакинг > Ромхакинг и программирование |
| Сhecksum в играх (проверить и исправить)?! |
| (1/1) |
| Maksim86:
Здравствуйте! Подскажите пожалуйста - 1. Как исправить Сhecksum в игре Disney's Aladdin II (SMD) - показывает Сhecksum incorrect, а после Fix-a, при включении появляется красный экран. Можно ли исправить Сhecksum в этой игре с Incorrect на Ok? Программы скачивал отсюда: https://www.romhacking.net/utilities/342/ https://www.romhacking.net/utilities/499/ https://www.romhacking.net/utilities/1479/ https://www.romhacking.net/utilities/1343/ 2. Интересует проверка и возможность исправления Сhecksum в ромах следующих консолей, (список ниже, после дефиса напишите варианты проверки ромов, если они есть). Atari Jaguar - Commodore 64 - Commodore Amiga - Dendy (NES) - Game Boy Advance - MAME (игровые автоматы) - Nintendo 64 - Nintendo DS - Sega DreamCast - Sega Game Gear - Sega Master System - Sega Saturn - TurboGrafx-16 - Для тех, кто не знает: Checksum (контрольная сумма) - полученная из блока цифровых данных с целью обнаружения ошибок, которые могли возникнуть при ее передаче или хранении. |
| Yoti:
Работает - не трогай. |
| Rumata:
--- Цитата: Maksim86 от 04 Сентябрь 2020, 22:26:04 ---Для тех, кто не знает: --- Конец цитаты --- Сумма - это не база, а сумма. В первом приближении просто сумма всех байт в файле. И самое интересное: программа подсчёта суммы и сама сумма находится в самом файле. В принципе Сега даёт стандартный алгоритм и место хранения суммы. Но многие разработчики используют свои. И при попытке сделать "как надо" в реальности ты всё рушишь и получаешь тот самый красный экран. Как уже было сказано: не чешется - не чеши |
| Sharpnull:
Есть uCON64 (https://sourceforge.net/projects/ucon64/), поддерживает исправление сумм: GBA, NDS, N64, SNES, GEN, GB/GBC, SMS, WS/WSC/SC. В архиве readme.html, там список аргументов. Если просто передать ром, то будет написано "Checksum: Bad" для неправильной суммы. Для исправления: --- Код: ---ucon64 РОМ_ФАЙЛ --chk --- Конец кода --- Файл будет изменён и оригинальный файл сохранится как .bak файл. |
| MetalliC:
Maksim86, для начала стОит понимать что ты делаешь и зачем. в оригинальных ромах, типа сетов no-intro, ничего исправлять не нужно. и зачастую при помощи прог для вычисления-изменения сумм ты наоборот испортишь ромы. эти утилиты стоит применять лишь для всяких ромхаков или переводов, и то, лишь если известно что игра использует "стандартный" алгоритм контрольной суммы. |
| MetalliC:
Maksim86, нене, ты скажи зачем ты делаешь то что пытаешься делать ? правильная сумма - это та которую туда решили прописать разработчики игры, а не та которую насчитал какой-то Вася или Максим. |
| SeregaZ:
да тут видимо совсем тяжелый случай... для того, чтобы не запускать командную строку каждый раз и парится там с путями - можно сделать следующее: 1. убедится что в Моем Компьютере (Windows жеть правда?) показывает файлы с расширением файлов. типа "текстовой блокнот.txt", "резюме.docx", "моя фотка.jpg"... и так далее. 2. зайти в папку с этой программой. 3. создать текстовой документ и вбить в него название программы и добавить в конце pause 0. --- Код: ---uCON64 pause 0 --- Конец кода --- 4. сохранить. после нажать переименовать. и сделать вместо "текстовой блокнот.txt" что-то типа "start.bat" после запускаем этот start.bat и он должен запустить эту программу и показать черное окошко. там может быть будет список команд, или будет писать что не верная команда типа... после уже можно положить в эту-же папку ром. и дальше уже смотреть в документации каким образом сообщать этой программе параметр с ромом и какие там нужны команды. может там должно стать что-то типа uCON64 igra.bin и это, как здесь тебе пытаются втолковать, а не ты все не понимаешь - касается стандартной системы по определению этой самой чек суммы. если там что-то не стандартное то ничего у тебя не выйдет. там могут быть какие-то сложности. |
| MetalliC:
--- Цитата: Maksim86 от 06 Сентябрь 2020, 00:03:23 ---Я все понимаю, например при проверке игр Сеги программой FixCheckSum.exe, конкретно показывает OK или Incorrect, почти во всех играх после фикса этой программой показывает OK. Так вот я хочу, что бы везде было OK. Это говоря и об обычных ромах и о хакнутых. --- Конец цитаты --- давай я тебе скомпилю программку вида int main(int argc, char **argv) { printf("ROM checksum is OK!\n"); return 0; } так, чисто для успокоения и релакса |
| SeregaZ:
как тут не вставить Фишборна, с его мемной фразой: самбоди гив дис мэн а ган... ту застрелится :) нахрена ты засунул программу в папку с русскими буквами? то есть смотри там указано Максим в пути. консоль не то чтобы совсем не работает, но мягко говоря не любит русские буквы в пути. зайди на диск С, создай папку типа: TEST. туда ложи как саму программу, так и ром. после создавай бат файл, как я расписал выше. и запускай батником, а не через cmd. тупо запуск cmd через меню пуск не поможет, потому что тебе надо будет указывать полные пути до программы. это ты не осилишь. посему создавай бат файл и запускай оттуда. сейчас на скринах у тебя не правильные пути и поэтому не работает. |
| McSIM:
--- Цитата: Maksim86 от 06 Сентябрь 2020, 00:03:23 ---Ребята спасибо всем, я понимаю, как запустить cmd и включить программу, но дальше что? Как правильно написать команду? Покажите, если не трудно в виде скрина или просто напишите буквами, на примере любой игры для Super Nintendo. --- Конец цитаты --- Вот, без командной строки и с русскими буквами. :) Для Super Nintendo. |
| Навигация |
| Главная страница сообщений |