Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Темы - DrMefistO

Страницы: Назад 1 [2] 3 Далее
31
Привет,

Интересуют ресурсы (сайты) с тайловыми пиксельными шрифтами (для замены английского шрифта) различных вариаций и форм.

Ну или же кто-то, кто возьмётся перерисовать шрифт с определёнными ограничениями (размер данных со шрифтом ограничен по размеру).

32
Собственно, есть звуковой движок от игры Thunder Force 3.
Мне нужно его аккуратно раскочерыжить, разобрать формат сэмплов для последующего написания конвертера из MIDI, ну и в принципе, сделать самостоятельный исходник для встраивания в игры.

33
Лоадер ромов NES для IDA Pro v7.
Ссылка на исходники: https://github.com/lab313ru/inesldr
Ссылка на файлики: https://github.com/lab313ru/inesldr/releases

Процитирую тут Санчеза:
"Простейший вариант. Автоматические переменные получаются только с последним банком (или с первым, если он один), поддержка основных типов маппера, остальное - по дефолту банками по 32 кило. Кому чего надо, прикручивайте сами, дальше лень копаться в сдк по иде. Tip of Day: если надо перебросить вызов подпрограммы в другой банк, на имени функции в опкоде нажать Alt+R и выбрать нужный. Дальше все автоматически."

34
Собственно, если кому нужна помощь в переводе пожатых ресурсов, написании утилит к какой-то игре, с целью её перевести - пишите! Рассмотрю предложения.

Потому что у самого, похоже, не хватает желания самому всё делать.

35
Собственно, рад представить вам восстановленный исходный код RNC компрессора!
Много лет подходов начать декомпиляцию..., и, вот, мне удалось.

Собственно, поддерживаются режимы -m=1, -m=2, и шифрование ключом (-k=0x1234).

Исходники: https://github.com/lab313ru/rnc_propack_source
Релизы: https://github.com/lab313ru/rnc_propack_source/releases


36
Спасибо ARTYRRRRRR за предоставленные картриджи!

GemFire - перевод от MagicGame. На просторах сети перевода нет. Перевод в разы лучше Ньюгеймовского!
World of Illusion Starring Mickey Mouse & Donald Duck - перевод европейской версии (у Ньюгейма был для США). Автор неизвестен. Год перевода 2005.
Worms - более качественный перевод от Шедевр для компании "ГАСТИН". Перевод более проработан, чем тот, что у них есть (понятно, за деньги же!).

37
Вся инфа о нём здесь: https://hackaday.io/project/1507-usb-megadrive-devkit

Очень крутая штука. Чем больше наберётся человек, тем лучше.

Цитата
Мы хотим собрать людей на покупку 10 девайсов. 4 заказа уже есть.
batch of 5 @ $US 517.76/5 = 103.55 USD
batch of 10 @ $US 861.76/10 = 86.176 USD

Чем больше людей соберём, тем дешевле за один девайс.

38
Собственно, такая тема: пригодится ли кому эмулятор-дебагер для IDA, в котором можно будет отлаживать звуковые драйвера, которые грузятся в сеговских играх?

Будет делаться на основе Gensida. Т.е. вы сможете видеть Z80_RAM, пошагово выполнять код, будут работать бряки, и т.д. Будет загрузчик для таких драйверов, с портами и т.д.

39
Собственно, вот. Позволяет производить отладку старых MS-DOS игр и программ в IDA. Всего лишь форк исходника от Eric Fry с некоторыми улучшениями.

Исходники: https://github.com/lab313ru/idados_dosbox
Релизы: https://github.com/lab313ru/idados_dosbox/releases

Инструкция:
  • Put generated dosbox.exe in IDA\ directory (or create standalone dir somewhere, and put ida.wll and dosbox.exe there);
  • Run dosbox.exe;
  • Mount some directory (mount Y d:\somedir\), put your MS-DOS executable in "d:\somedir\";
  • Goto your mounted Y:\ disk (Y:);
  • Run "debug yourexe.exe". It will freeze. Just press Alt+Tab;
  • Open IDA Pro and your executable there;
  • Select "Remote Dosbox debugger";
  • Go to Debugger->Process options... menu and specify host as "localhost";
  • Press F9 to run debugging process.

40
Всем привет!

Рад сообщить Вам, что, спустя много лет, я решил переделать свой перевод этой замечательной игры!
Предыдущая версия зависала после заставки, некоторый текст был переведен с учетом оригинальных длин фраз. Что в итоге выглядело не очень красиво.

Теперь же, когда кодовая база игры была хорошо изучена, были написаны утилиты для упрощения работы с ресурсами игры.
Можно перевести всё: текстуры уровней, заставки, текст (на этот раз без ограничений на длину) и т.д.

На данный момент перевод только начат, но, то, что он идет уверенными темпами, это я могу сказать Вам точно!
Скринов не много, но, пока особо показывать нечего, если честно ^_^
Главное, есть инструментарий (который, кстати, будет выложен по окончании перевода вместе с исходниками).

164733-0
164737-1 164735-2

41

Данная утилита позволяет извлекать и вставлять обратно основную графику в играх от Codemasters для Sega Mega Drive. Основные возможности:
  • Поиск сжатых графических данных в ромах от Codemasters;
  • Извлечение сжатой графики в формат BMP;
  • Вставка переделанных изображений обратно в ром;
  • В случае, если сжатое изображение больше по размеру оригинального, файл будет сохранен отдельно, для ручной вставки.

Релизы: https://github.com/lab313ru/CodemastersBinImage/releases
Исходники: https://github.com/lab313ru/CodemastersBinImage

42

Собственно, это утилита компрессор-декомпрессор для игры Tecmo Cup Football Game, она же Captain Tsubasa, она же Boy Soccer Team 3. В большинстве случаев жмет значительно лучше оригинала.

Релизы: https://github.com/lab313ru/LZCapTsu/releases
Исходники: https://github.com/lab313ru/LZCapTsu

Благодарности: Марат.

P.S. Было бы классно перевести игру на русский язык! Но, это уже пусть кто-то другой. Если что, помогу в хакинге немного.

43
Цитата
Только зарегистрированные пользователи имеют доступ в этот раздел.
Пожалуйста, войдите или зарегистрируйтесь на форуме «Форум Emu-Land.net».

Только из одного вложения не дает качать, забавно.

P.S. В общем, удалите топик.

44
Gens+ GIR to GensRR GMV replay movie converter.

Позволяет конвертить из формата реплеев Gens+ в формат реплеев Gens ReRecordings. Мувики с сейвами также поддерживаются.

Как использовать (name.gir - имя вашего файла реплея):
girgmv.exe name.gir

На выходе получите output.gmv (и) output.gst (и) output.srm

Исходники: https://github.com/lab313ru/gir2gmv
Релизы: https://github.com/lab313ru/gir2gmv/releases

45

Да, и такое дерьмо случается... Это китайский хак на RRR!

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

В общем, сами судите по скринам:

46
Кто тестил еще? У меня так зависло на уровне где-то пятом, шестом. Точнее, между ними, рандомно.
Затем, во второй заход зависло при вызове магии на боссе.

У кого-нибудь на эмуле висло?

47
159511-0

Вот и дождались! =)

Что это такое: дебагер-плагин для IDA, который позволяет дебажить вашу любимые игры на "Соньку" PS1.
Базируется на PCSXR эмуляторе. Плагины и BIOS в поставке не идут.

Релизы тут: https://github.com/lab313ru/psxida/releases
Исходник: https://github.com/lab313ru/psxida/

Как использовать:
Из вложения качаете plw- и p64-файлики и кладете их в папку plugins вашей IDA Pro (версия не ниже 6.8).
Затем открываете стартующий бинарь игры/BIOS/что-то другое в IDA с помощью psx.ldw/psx.l64 загрузчика, в дебагерах выбираете плагин PsxIda.
Запускаете отладку. Плагины, биос и прочее настраиваете как хотите.

Самое важное: в Configuration->CPU ставите галки "Enable Interpreter Cpu", и "Enable Debugger":


В качестве стартующего файла выбираете всё как всегда: либо образ, либо дисковод. И дебажите!=)
P.S. В IDA в Options->General...->Analysis->Processor specific analysis options желательно подобавлять следующие маппинги:
  • From|To|Size
  • 0x00000000|0x80000000|0x00200000
  • 0xa0000000|0x80000000|0x00200000

История версий:
v1.0.0: Первая рабочая версия.

Видео:

48
Неправильный vimeo url
В этом видео показаны основные возможности специального дебагер-плагина для IDA, позволяющего отлаживать игры для Sega Mega Drive / Genesis. Если вы еще стеснялись использовать Gensida, то вот Вам отличная возможность начать.

Сссылка на тему по Gensida: http://www.emu-land.net/forum/index.php/topic,74337.0.html

49

В этом видео я покажу вам, как можно записать свою собственную демку для игры "Thunder Force 3".
Т.е., в итоге, демо будет встроена прямо в ром.

P.S. Видео старое довольно таки, но, на всякий случай, прикладываю сюда. Вдруг, кто не видел еще.

50
Наболело, вот и захотел поделиться мыслями на сию тему: ромхакинг.
За кадром еще многое осталось несказанным. Например: что такое ромхакинг в принципе; действительно, с чего начиналось все, и т.д.

Это исключительно мои мысли по теме, "мемуары" (с), можно сказать. Особо не трольте, мол, "Забыл того-то!", "Не сказал по NES/SNES!" и т.д. Да, в этом видео в основном по Сеге. И, я всех помню, всех люблю!=) О других платформах я мало что знаю.

Планирую еще сделать видео по теме перевода игр на Сегу. Т.е. особенности доставания ресурсов, хранения текста, и прочее. Утилиты, хитрости... Отличаться от имеющихся статей будет тем, что IDA тоже будет задействована.
На мой взгляд, она обязательна при переводе. Заодно попробую об основном функционале именно IDA расказать тоже.

В общем, камнями не кидаться...

Вообще, на мой взгляд, ромхакинг, это (цитата с Ютуба):
Цитата
Но суть в том: что есть ромхакинг? Юзать чей-то редактор уровней и сделать хак на Дюну? При этом не зная английского, и моторолы 68k? Смешно. Для меня ромхакинг, это когда ты своими исключительно силами разреверсил игру, сделал исправления, улучшения и т.д.
Да даже если собственными силами игру перевел - это тоже ромхак! А не тупо юзание чьего-нибудь редактора.
Сдк - это уже геймдевелопинг, а не ромхакинг, по-моему.

51

В данном видео показан процесс написания распаковщика для сжатой графики в игре Herzog Zwei.

Первая часть видео: https://youtu.be/ADUbNv-6G0M

P.S. Рассчитано на то, что вы знакомы с m68k ассемблером, и владеете хоть немного хоть одним высокоуровневым языком программирования.

52

В данном видео показан алгоритм поиска сжатой графики и процедуры ее распаковки в играх на Sega Genesis / Mega Drive.
В качестве основного инструмента использовался дебагер-плагин Gensida для всеми любимой IDA.

В качестве подопытного была использована игра Herzog Zwei.

53
Всем привет.
В этой статье я расскажу, как найти процедуру вывода текста в любой или почти любой игре на SMD.

Инструментарий:
  • Gensida - дебагер-плагин для IDA, позволяющий отлаживать ромы Sega Genesis / Mega Drive, унаследовавший некоторые фичи Gens Rerecordings, Gens KMod, Gens r57shell mod;
  • Smd Ida Tools - набор из загрузчика ромов Sega в IDA и подсказчика по отправляемым в VDP-регистры значениям;
  • Ром игры (возьмем, например, Caliber .50).
Приступаем:
Для начала, устанавливаем весь необходимый инструментарий (инструкции есть на репозиториях каждой из утилит).

Далее открываем IDA, кидаем в нее ром игры:

В качестве загрузчика у нас выбран smd_loader.ldw. Так и оставляем. Жмем ОК.

Теперь нужно указать дебагер-плагин:
157374-1
Выбираем "GensIDA debugger plugin".

Запуск процесса отладки и установка бряков:
Жмем клавишу F9 (или меню Debugger->Start process). После запуска процесса мы тут же прерываемся на самом старте эмуляции:
157376-2

Далее заходим в меню Tools->Plane Explorer. Откроется окно гляделки:
157378-3

Теперь давайте выберем текст, который мы хотим найти. Для этого снова нажмем в IDA клавишу F9. Мне понравился текст "20 YEARS LATER." (Вы можете выбрать совершенно другой текст. Принцип останется тем же.):

Жмем кнопку Pause на клавиатуре, либо на значок паузы в IDA. Переключаемся на окно Plane Explorer'а. Видим, что на Plane A черный экран. Пробуем Plane B - ага, вот и текст!

Наводим на первую букву курсор:
157382-5
И на последнюю букву:
157384-6

Красными рамками я выделил информацию о тайлах. Нам нужны значения ADDRESS, запомним их.

Теперь самое интересное и муторное: установка бряков и анализ каждого из срабатываний. Алгоритм такой:
  • Перезапустить эмуляцию;
  • Дать игре дойти до места, которое как можно ближе к месту, где текст уже отображен, нажать Pause;
  • В IDA перейти на первое значение ADDRESS (клавиша G), которое мы взяли из Plane Explorer'а;
  • Установить брейкпоинт (клавиша F2) на запись в VRAM;
  • Продолжить эмуляцию (клавиша F9);
  • Проанализировать место остановки.
Итак, с первым пунктом понятно. Далее, нужно дойти до места, где чуть далее будет показан искомый текст. У меня получилась такая вот картинка:

Установим бряк на адрес 0xE69A (у Вас адрес может быть другим):

Это окно можно просто пропустить нажатием OK.

Зато на следующем окошке - собственно установка брейкпоинта:

Обратите внимание на строку диапазона.
Это те самые два значения ADDRESS из Plane Explorer'а.

Жмем OK, и отпускаем эмуляцию дальше... И вот, первое срабатывание:


Судя по диапазону сработавшего бряка, и по коду, на котором остановилась IDA, это всего лишь очистка VRAM.

Отпускаем эмуляцию дальше... А вот это уже интереснее:
157396-12
(Я тут закрыл лишние окна, и оставил самые важные.)

Знающие люди сразу поймут, что этот код именно тот, что нужно. Для менее знающих поясню немного:
ROM:00000A36 movea.l $10(sp),a0Здесь в a0 заносится адрес чего-то, что идет сразу за адресом вызова процедуры. В Вашем случае передача адреса может выглядеть по другому. Главное найти регистр с адресом, откуда читаются символы, которые потом пишутся в VRAM.

Какой именно регистр нужен, станет понятно далее по коду.
ROM:00000A3A move.w  (a0)+,d0
ROM:00000A3C tst.b   d0
ROM:00000A3E beq.s   loc_A50
ROM:00000A40
ROM:00000A40 loc_A40:                                ; CODE XREF: sub_A2C+22j
ROM:00000A40 move.w  d0,(a6)
ROM:00000A42 move.b  (a0)+,d0
ROM:00000A44 move.b  (a0)+,d1
ROM:00000A46 tst.b   d0
ROM:00000A48 beq.s   loc_A50
ROM:00000A4A move.w  d0,(a6)
ROM:00000A4C move.b  d1,d0
ROM:00000A4E bne.s   loc_A40
Весь этот код просто читает из a0 по два байта (word) и пишет их в VDP_DATA. Запись прекращается, когда обнаруживается нулевой байт ($00).

Теперь посмотрим на места вызовов процедуры, чтобы узнать, какие там данные. Становимся на имя процедуры в IDA, жмем клавишу X, и видим три ссылки. Переходим по любой, и видим:
ROM:000040BA jsr     sub_A2C
ROM:000040BE or.b    $20(a2,d3.w),d0
ROM:000040C2 subq.w  #4,d5
ROM:000040C2 ; ---------------------------------------------------------------------------
ROM:000040C4 dc.b $41 ; A
ROM:000040C5 dc.b $52 ; R
ROM:000040C6 dc.b $53 ; S
IDA коряво распознала данные, идущие за вызовом процедуры (оно и понятно, т.к. при jsr ожидается, что возврат будет выполнен на последующий код. Поправим это.

Становимся на следующую за вызовом инструкцию, жмем U.
ROM:000040BA jsr     sub_A2C
ROM:000040BA ; ---------------------------------------------------------------------------
ROM:000040BE dc.b $80 ; А
ROM:000040BF dc.b $32 ; 2
ROM:000040C0 dc.b $30 ; 0
ROM:000040C1 dc.b $20
ROM:000040C2 dc.b $59 ; Y
ROM:000040C3 dc.b $45 ; E
ROM:000040C4 dc.b $41 ; A
ROM:000040C5 dc.b $52 ; R
ROM:000040C6 dc.b $53 ; S
ROM:000040C7 dc.b $20
ROM:000040C8 dc.b $4C ; L
ROM:000040C9 dc.b $41 ; A
ROM:000040CA dc.b $54 ; T
ROM:000040CB dc.b $45 ; E
ROM:000040CC dc.b $52 ; R
ROM:000040CD dc.b $2E ; .
ROM:000040CE dc.b   0
Ага, вот и текст!=)

На этом все... Всем спасибо за внимание!=)
© Dr. MefistO [Lab 313]

54
Релиз от Piko Interactive. Является переводом на английский игры "Shui Hu: Feng Yun Zhuan", плюс некоторые доработки.

55
Собственно, как снять с этого девайса зашитые там 80 ромов?
http://www.atgames.us/Sega-Genesis-Ultimate-Portable-Game-Player-GP2628-80B.htm



Скрины девайса и чипов прилагаю.

56
Все привет.

Что это: это самый, что ни на есть, дебагер-плагин для IDA Pro, чтобы отлаживать ромы для Sega Mega Drive / Genesis. Основан на, и собирается из исходников MESS.

Релизы тут: https://github.com/lab313ru/messida/releases
Исходник: https://github.com/lab313ru/messida/

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

Как использовать:
Желательно установить отсюда последние версии дополнительных модулей в помощь реверсеру: https://github.com/DrMefistO/smd_ida_tools/releases
Затем, из вложения качаете plw-файлик и кладете его в папку plugins вашей IDA Pro (версия не ниже 6.5). Открываете ром, в дебагерах выбираете плагин MESSIDA.

В меню Debug->Process options можно установить дополнительные флаги, которые понимает эмулятор MESS. По умолчанию передаются флаги:
"-debug -cart {путь_до_открытого_рома}", их поменять не выйдет. Ну и установленный по умолчанию "genesis", но его можно сменить на другую SMD-версию (чтобы регион учитывать).

История версий (бета тестирование):
Версия 1.5.5: Адаптировано под IDA v6.8, и свежие исходники MAME;
Версия 1.5.3: Добавлен MAME CLI интерпретатор в IDA. Теперь можно вводить команды MAME дебагера и видеть его консоль прямо в IDA. Некоторые улучшения в VDP VRAM окне. Пофикшен старый баг, когда бряка в цикле срабатывала только один раз. Пофикшено продолжение эмуляции после брейкпоинтов. Пофикшены бряки на read/write памяти.
Версия 1.5.2: добавлено VDP VRAM окно из Gens'а. Теперь окно MAME дебагера тоже отображается при старте эмуляции. Добавлена версия плагина для x64 версии IDA;
Версия 1.4.2: исправлено продолжение запуска эмуляции после первого бряка; исправлено отображение содержимого памяти для всех регионов;
Версия 1.4.1: добавлено отображение текущей позиции записи в VRAM. Исправлено отображение адреса WINDOW;
Версия 1.4: добавлены регионы на VRAM, VSRAM, CRAM. Добавлено отображение регистров VDP (Debugger windows->VDP Registers);
Версия 1.3: исправлен перезапуск процесса отладки, запись в консоль, открытие и закрытие консоли. Исправлен пункт меню выполнения MESS команд;
Версия 1.2: выполненные инструкции теперь отмечаются - можно легко находить код, которые никогда не выполняется. Исправлено выполнение по шагам. Исправлен вывод в консоль. Добавлена возможность выполнять команды дебагера MESS (в меню Debugger). Исправлены другие баги;
Версия 1.1: исправлен повторный запуск в том же сеансе. Исправлено сохранение конфига - теперь в каталоге с конфигом. Жрет меньше проц;
Версия 1.0: начальная версия.

155686-0

57
Собственно. Одному хорошему человеку отдам инвайт на Хабр, чтобы писал тот статьи хорошие и коменты серьезные)

58
Собственно, китайский покер. Игр, судя по меню, здесь 6.

Ничего, кроме того, что музыка здесь очень даже качественная и хорошая (поэтому и размер рома такой), сказать не могу. :lol: В покер играть не умею.

В архиве два рома:
  • Cha Oji Pu Ke - Super Poker (Ch).bin - оригинал, без фиксов в эмуляторы не запустится;
  • Cha Oji Pu Ke - Super Poker (Ch) [f1].bin - пофикшеный ром. Запускается везде.

59
Собственно, сабж. В хедере нет вообще никакой инфы.


60
Вот, нарыл. Но есть вопрос о наличии на них уже дампов:
http://www.ebay.com/itm/161679387674
http://www.ebay.com/itm/SONIC-MEGAMIX-Sega-Genesis-Mega-Drive-game-New-version-Russian-RARE-/221723162620?pt=LH_DefaultDomain_0&hash=item339fbaf7fc
http://www.ebay.com/itm/THE-LORD-OF-THE-RINGS-RARE-UNRELEASED-UNLICENSED-SEGA-MEGADRIVE-ASIA-IMPORT-/151657578207?pt=LH_DefaultDomain_71&hash=item234f7efedf

Было бы прикольно еще нарыть для меня кариков по запросу "sega megadrive rare" на ebay, которые не дампились ранее. Возможно, буду скупать.

Страницы: Назад 1 [2] 3 Далее