Автор Тема: Super Metroid (SNES) помогите вырезать защиту от пиратства  (Прочитано 3449 раз)

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

Оффлайн Nikooone

  • Пользователь
  • Сообщений: 951
  • Пол: Мужской
    • Просмотр профиля
Приветствую светлые умы по хакам. Помогите выдрать из кода игры эту защиту, на которой все и останавливается, я не понимаю что нужно этой игре еще.
Картридж собираю без MAD чипа на одной TSOP флешке 4мб, без ОЗУ для сейвов пока что, консоль (Е) региона с отключенным CIC.
Пробовал разные версии ромов, возвращал CIC в консоли, а на картридже PIC прошитый стоит. Бесполезно, получаю одно и тоже каждый раз, и дальше этого экрана дело не уходит.
А так же приносили мне картридж сборник с али для снес с озу и батарейкой, там аналогичная картина наблюдалась.
« Последнее редактирование: 26 Ноябрь 2018, 13:13:20 от Nikooone »

Оффлайн CaH4e3

  • Пользователь
  • Сообщений: 3588
    • Twitter
    • Просмотр профиля
хаха

Оффлайн Nikooone

  • Пользователь
  • Сообщений: 951
  • Пол: Мужской
    • Просмотр профиля
лаконично  :-\

Оффлайн CaH4e3

  • Пользователь
  • Сообщений: 3588
    • Twitter
    • Просмотр профиля
собери нормально карик с правильной озу и будет тебе счастье

"посмотрите, почему у меня машина не едет. я пока собрал без колес и двигателя, но она почему-то не едет" хаха

Оффлайн Nikooone

  • Пользователь
  • Сообщений: 951
  • Пол: Мужской
    • Просмотр профиля
Судя по тому что алишный имел на борту это озу, и другие игры на том сборнике работали с сохранениями - озу не причем.

Оффлайн CaH4e3

  • Пользователь
  • Сообщений: 3588
    • Twitter
    • Просмотр профиля
судя по всему проблема в логике. если у этой игры есть защита и проверяет она для этого озу, то алишный карик - первый, кто под эту защиту попадает. сколько у того карика озы, а? а сколько у оригинала? сам догадаешься в чем проблема?

Оффлайн Rumata

  • Супермодератор
  • Сообщений: 24660
    • Просмотр профиля
Картридж собираю без MAD чипа
mad - memory address decoder


Добавлено позже:
Да, и если НТСЦ игру запустить на ПАЛ приставке, то тоже будет не хорошо.
А CIC тут вообще ни при чём

Оффлайн Nikooone

  • Пользователь
  • Сообщений: 951
  • Пол: Мужской
    • Просмотр профиля
ориг 8кб. На алишном 32. не думаю что дело вообще в этом.

mad - memory address decoder

Вот даааа. Как бы обойти программно его просто напросто, тоже склоняюсь к нему, и лепить 2 пзу вообще желания нет из-за него

Оффлайн CaH4e3

  • Пользователь
  • Сообщений: 3588
    • Twitter
    • Просмотр профиля
ориг 8кб. На алишном 32. не думаю что дело вообще в этом.
ты не думай, ты слушай, что тебе умные люди говорят. ДЕЛО В СРАМ. ЕЕ ДОЛЖНО БЫТЬ 8К, ИГРА ПРОВЕРЯЕТ, МИРРОРЯТСЯ ЛИ 8К ДВА РАЗА ПОДРЯД. если нет - легал дискламер. замкни на али карике два старших адреса озу и проверь.

я конечно знаю и как это вообще отключить, но это за отдельную плату лол

Добавлено позже:
Да, и если НТСЦ игру запустить на ПАЛ приставке, то тоже будет не хорошо.
его дискламер указывает, что пускает он европейку. у нтсц более жесткий текст и он продублирован на английском и японском. кстати для несоответствия консоли региону карика в игре другое сообщение выводится. вот такое
203878-0
« Последнее редактирование: 26 Ноябрь 2018, 13:51:54 от CaH4e3 »

Оффлайн Rumata

  • Супермодератор
  • Сообщений: 24660
    • Просмотр профиля
У СНЕС достаточно сложная организация картриджа, это не Сега. Лепить 2 ПЗУ не обязательно
https://www.youtube.com/watch?v=10426ml6h6Q

Оффлайн Rumata

  • Супермодератор
  • Сообщений: 24660
    • Просмотр профиля
кстати для несоответствия консоли региону карика в игре другое сообщение выводится.
Я знаю (в эмуляторе легко проверяется). Просто для справки, а то всё обычно валят на CIC. А CIC работает только с сигналом сброса и если что не так то вообще никаких сообщений не будет

Оффлайн Nikooone

  • Пользователь
  • Сообщений: 951
  • Пол: Мужской
    • Просмотр профиля
У СНЕС достаточно сложная организация картриджа, это не Сега. Лепить 2 ПЗУ не обязательно
https://www.youtube.com/watch?v=10426ml6h6Q
О, это уже унтереснее, такой донор имеется.
Спасибо))) буду рисовать тсопку под дип.
Этих друзей отложу тогда на что-то по проще.

Оффлайн gegmopo3

  • Пользователь
  • Сообщений: 196
  • Пол: Мужской
  • sk8
    • Просмотр профиля
http://gegmopo3.magicteam.net/File/SM_AntiPiracy_cracked_MopoZ.rar
Тут только нужен дебаггер и 5 минут времени. Не за что.

PS На регион тоже защита убрана.

Оффлайн CaH4e3

  • Пользователь
  • Сообщений: 3588
    • Twitter
    • Просмотр профиля
дебаггер и спешка приводят к таким кривым хакам лол любой ром любого региона хачится одним и тем же байтом. найдешь сам?

Оффлайн gegmopo3

  • Пользователь
  • Сообщений: 196
  • Пол: Мужской
  • sk8
    • Просмотр профиля
регион проверятся по регистру $213f 0001 0000 (0х10) бит, если 1 = ппу пал, если 0 - нтсц.


Добавлено позже:
дебаггер и спешка приводят к таким кривым хакам лол любой ром любого региона хачится одним и тем же байтом. найдешь сам?
Если ты этим часто занимаешься, то в большинстве случаев знаешь, что делаешь.
« Последнее редактирование: 29 Ноябрь 2018, 08:49:14 от gegmopo3 »

Оффлайн CaH4e3

  • Пользователь
  • Сообщений: 3588
    • Twitter
    • Просмотр профиля
лол нене я снесом не занимаюсь. я про общий так сказать обзор через замочную скважину. вот у тебя 6 байт патча лол, обошел значит проверку региона, потом дал стереть сейвы, перепрыгнул проверку аж прямым полным жампом и дал вернуть сейвы. лол хотя можно было
А. от начала процедуры СРАЗУ прыгнуть на ее конец, обойдя все - прямой полный жамп - 5 байт патча
Б. отпатчить целиком вызов функции проверки защиты вообще - 3 байта патча
В. заменить любой относительный бранч сразу на конец файла или убрать что-то, чтобы прыгнуло сразу на конец - 2 байт патча
Г. ну и наконец найти один отладочный байт в роме, который использовали разрабы, чтобы включать дебаги и отключать проверики защит - 1 байт лол

и заметь, последний пункт вообще впринципе элементарно сделать, ну если нет спешки, конечно... там даже не надо в дебри лезть. в самой процедуре все есть лол. но ведь НЕТ!

ах да, совсем забыл. любую процедуру можно обойти, вставив в ее начало опкод возврата лол - 1 БАЙТ!
« Последнее редактирование: 30 Ноябрь 2018, 00:02:48 от CaH4e3 »

Оффлайн gegmopo3

  • Пользователь
  • Сообщений: 196
  • Пол: Мужской
  • sk8
    • Просмотр профиля
лол нене я снесом не занимаюсь. я про общий так сказать обзор через замочную скважину. вот у тебя 6 байт патча лол, обошел значит проверку региона, потом дал стереть сейвы, перепрыгнул проверку аж прямым полным жампом и дал вернуть сейвы. лол хотя можно было
А. от начала процедуры СРАЗУ прыгнуть на ее конец, обойдя все - прямой полный жамп - 5 байт патча
Б. отпатчить целиком вызов функции проверки защиты вообще - 3 байта патча
В. заменить любой относительный бранч сразу на конец файла или убрать что-то, чтобы прыгнуло сразу на конец - 2 байт патча
Г. ну и наконец найти один отладочный байт в роме, который использовали разрабы, чтобы включать дебаги и отключать проверики защит - 1 байт лол

и заметь, последний пункт вообще впринципе элементарно сделать, ну если нет спешки, конечно... там даже не надо в дебри лезть. в самой процедуре все есть лол. но ведь НЕТ!

ах да, совсем забыл. любую процедуру можно обойти, вставив в ее начало опкод возврата лол - 1 БАЙТ!
Я асм даже не писал. Можно было красиво сделать, интро забабахать и прочего. Но накой? Я мог бы все процедуры убрать проверки убрать, они делаются все на одном роуте, и заместо JSL поставить NOP #4 или 1 байтом, поставить rtl в начале процедуры. Я запустил дебаг, тресером прогнал участок, и тупо прямо в дебагере в хекс-редакторе поставил джамп и у проверки что-то сделал, толи bra, то ли два NOP. Вот если бы меня попросил товарищ, которые репродукцию делает, для него я всегда делаю все цивильно, кулюторно и гуманно. А тут хер с горы, мне не жалко было потратить 5 минут времени и особо не шарясь в отчетах трейсера. В пять минут входит, скачать ром, запустить, бряк поставить и тут же заменить не нужное и не делая проекта нового, создавать папку для асма, текстовый документ, компилятор, батник. это бы еще 2 минуты бы заняло, и еще пару минут проштудировать весь дизасм, до начала процедуры. Ну накой? Костыли - они и в Африки костыли. Результат есть? Есть. Ему то какая разница, как это сделано. Всегда можно что-нибудь оптимизировать.


Добавлено позже:
Я бы вообще даже поленился бы чей-то патч глядеть, что он там делал :) Так что, говори адрес, я тебе пирожок отправлю, за твоё любопытство.

Оффлайн CaH4e3

  • Пользователь
  • Сообщений: 3588
    • Twitter
    • Просмотр профиля
так а я о чем сказал? дебаггер и спешка. лол про лень я не верю - ты же взял ром и полез в него. было бы мне лень, я бы даже не стал лол остальные отмазки не катят. так и скажи, да, я сделал уродский патч, от которого кровь течет глазами, но мне пофик лол чего оправдываться то

Оффлайн gegmopo3

  • Пользователь
  • Сообщений: 196
  • Пол: Мужской
  • sk8
    • Просмотр профиля
Суть в том, что работает и нет багов. А на реализацию - пофиг, мне денег за это не платят