Автор Тема: Как пересчитать оффсеты в роме для Сеги, если ром содержит ошибки?  (Прочитано 4307 раз)

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

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Вот такой у меня вопрос. Если нужно, к примеру, что-то лишнее вырезать, то для этого придётся пересчитать оффсеты, чтобы игра не пострадала. Но если в игре куча ошибок, то без серьезной работы над ошибками не обойтись.
Или в данном случае выход всё-таки есть?

Оффлайн Doomguard45

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

С вырезанием как то проще - занопить функции, а если нужно добавлять, то затираешь какую нибудь строчку , куда надо добавлять - туда вставляешь прыжок в конец рома, в конце добавляешь свой код, предварительно поставив в начале удаленную функцию и потом свой код, а потом прыжок обратно

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Я про ромы Сеги спрашиваю, если что. У меня есть ром Экшн 52, откуда нужно вырезать Читаменов (некоторые баги были исправлены, а сама игра автономизирована). Но вынуть игру не получается, поскольку компилятор не хочет компилить игру из-за ошибок. Как быть в такой ситуации?

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1301
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
lancuster, а занулить игру в роме не пойдет?
Т.е. размер рома и адреса не изменятся, изменится только содержимое.
« Последнее редактирование: 02 Ноябрь 2015, 18:20:02 от DrMefistO »

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Эммм... А как это поможет отделению игры от всего остального? Поможет ли это компилятору?

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1301
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
lancuster, ты написал, что хочешь убрать игру из рома вообще, я и предложил вариант.
А почему компилятор не съест массив из нулей?

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Знакомый, который хотел мне помочь с вырезанием этой игры, сказал, что нули тоже будут весить, а компилятору это не поможет.
Хотя, если ты хочешь... может, сам попробуешь вырезать? Я выложу файл, и ты попробуешь вырезать игру. :)

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1301
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
lancuster, =)) ишь, хитрый)) Вообще выложи, может умелец какой и поможет.

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Я не хитрый, я нищий. :D У меня IDA Pro не тянет. Да и остальное, по сути, тоже не тянет.

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1301
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
lancuster, для зануления игры надо знать границы игры в роме, и хекс редактор.

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Да. А для определения границ без IDA Pro не обойтись.
Файл скоро скину. :)

Добавлено позже:
И ещё. Я не предлагал вырезать игру из рома, я хочу, чтобы её вынули из сборника, чтобы она была отдельно.

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля

Оффлайн DrMefistO

  • Пользователь
  • Сообщений: 1301
  • Пол: Мужской
  • Sega Mega Drive reversing
    • Просмотр профиля
lancuster, и что сделать с этим ромом?

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Вырезать всю лишнюю информацию, оставив только игру про Читаменов.

Добавлено позже:
Да. Мне говорили, что если тупо вырезать всё лишнее, то оффсеты собьются, и игра перестанет работать.

Оффлайн Smoke

  • Пользователь
  • Сообщений: 3430
  • Пол: Мужской
  • Get Serious!
    • Steam
    • Просмотр профиля
Цитата: lancuster
Вот такой у меня вопрос. Если нужно, к примеру, что-то лишнее вырезать, то для этого придётся пересчитать оффсеты, чтобы игра не пострадала. Но если в игре куча ошибок, то без серьезной работы над ошибками не обойтись.Или в данном случае выход всё-таки есть?

Как понять в игре куча ошибок? Сама игра забагована или кто?

А вообще, если игра часть рома, просто дизасмишь ром, пепеписываешь все абсолютные адресации, т.к. относительные будут работать в любом месте. Потом собираешь новый ром. Как то так вкратце

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
У меня нет таких навыков.
Ошибки в самом роме. Они не дают нормально работать компилятору.

Оффлайн Smoke

  • Пользователь
  • Сообщений: 3430
  • Пол: Мужской
  • Get Serious!
    • Steam
    • Просмотр профиля
lancuster, ну если ты пользуешься компилятором, то как минимум у тебя должен быть уже дизасмнутый файл. Ты же его хочешь в ром собрать.

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Я пользуюсь компилятором? Вовсе нет. Просто я до этого просил одного знакомого ромхакера сделать это, но он не захотел. Сказал, что мороки много, работы на месяц и т.д..
Все наработки, компилятор и дизасм - у него. А я в этом вообще не шарю. Пока что.

Оффлайн Smoke

  • Пользователь
  • Сообщений: 3430
  • Пол: Мужской
  • Get Serious!
    • Steam
    • Просмотр профиля
А, ну ясно. Вообще да, он все верно сказал :)

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
То есть, мне придётся об этом забыть?

Оффлайн s1nka

  • Пользователь
  • Сообщений: 1571
  • Пол: Мужской
    • Steam
    • Просмотр профиля
lancuster, Почему же? Можно подождать, вдруг у кого-то появится лишний "месяц" на "исправление" рома.

Оффлайн Smoke

  • Пользователь
  • Сообщений: 3430
  • Пол: Мужской
  • Get Serious!
    • Steam
    • Просмотр профиля
А можно посидеть и самому научиться ;)

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Я же не знаю, как работает сам ром, где находится игра. Вслепую редактировать бесполезно.

Оффлайн s1nka

  • Пользователь
  • Сообщений: 1571
  • Пол: Мужской
    • Steam
    • Просмотр профиля
lancuster, Люди и читать не умели, но научились.

Оффлайн CaH4e3

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

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
Я уже давно привык к тому, что ты Санчез, хамло плешивое. Искренне желаю, чтобы на твои просьбы помочь (вообще в чём-либо) люди реагировали так же, как ты - лолкали и посылали нахрен. :lol:

Оффлайн lancuster

  • Пользователь
  • Сообщений: 4256
  • Пол: Мужской
  • A nullo diligitur, qui neminem diligit...
    • Просмотр профиля
s1nka, а если занулить (или занопить) команды проверки? Ничего не даст?