Автор Тема: Дампинг, обсуждаем, делимся ромами своих дампов  (Прочитано 7131 раз)

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

Онлайн Guyver(X.B.M.)

  • Пользователь
  • Сообщений: 2613
  • Пол: Мужской
  • Уничтожим Кронос!
    • Facebook
    • Twitter
    • ВКонтакте
    • Youtube
    • Просмотр профиля
У меня для этих целей просто стоит древний комп с 98 виндой. Там работа с lpt портом не перекрыта и всё прекрасно работает...

И как я не пытался запустить устройства эти на xp и выше через всякие переходники - ничего не работает... И без переходников тоже (так как на уровне системы блочится часть порта), только 98 винда...

Оффлайн Yaranga

  • Администратор
  • Сообщений: 14287
  • Пол: Мужской
    • Просмотр профиля
Guyver(X.B.M.), так и я о том, отличие этого тк от древнего компа что он места гораздо меньше занимает.

293108-0

Оффлайн Rumata

  • Супермодератор
  • Сообщений: 25533
    • Просмотр профиля
Guyver(X.B.M.), у меня всё прекрасно работало через UserPort. На работе что-то другое установлено, не помню. Но программатор на LPT работает исправно.
Но это для ХР, выше уже не.

Тонкие клиенты с LPT можно найти очень за недорого
Наверно. Я взял Тошибу Сателлит 4300. При тех же габаритах ещё и с экраном.

Онлайн Guyver(X.B.M.)

  • Пользователь
  • Сообщений: 2613
  • Пол: Мужской
  • Уничтожим Кронос!
    • Facebook
    • Twitter
    • ВКонтакте
    • Youtube
    • Просмотр профиля
Я использую старый комп с 98 виндой для самодельного синтезатора и прочих самоделок, поэтому мне нет смысла ничего менять... Места у меня полно, так как кроме кошки у меня других домашних нет :lol:

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

Оффлайн Rumata

  • Супермодератор
  • Сообщений: 25533
    • Просмотр профиля
"дампер Рюмика" - это урезанный Willem

Оффлайн stargazer

  • Пользователь
  • Сообщений: 81
  • Пол: Мужской
    • Просмотр профиля
Выкладываю свой дамп недавно вышедшего скролл-шутера ZPF для SEGA MegaDrive\Genesis :)
Цитата
ZPF - это горизонтальный скролл-штуер, вдохновленный такими, ставшими классикой играми, как Lord of Thunder, Elemental Master и Thunderforce III/IV и сочетающий в себе элементы фэнтези и научной фантастики в одно большое приключение. С уровнями варьирующимися от цветущих королевств, до антиутопии будущего и кишащего чужими космоса, ZPF предлагает богатый, разнообразный геймплей, где вы встретитесь с уникальными врагами и сразитесь со строем свирепых 16-битных боссов.
  • Свирепые 16-битные боссы в конце и середине уровня
  • Захватывающая система очков
  • 3 доступных для игрока персонажа
  • Изобилие секретов
295318-0295320-1295322-2295324-3
* ZPF (W)(Aftermarket) [!].rar (1391.18 КБ - загружено 175 раз.)
« Последнее редактирование: 09 Июль 2025, 20:43:49 от stargazer »

Оффлайн murgatroid_79

  • Пользователь
  • Сообщений: 394
  • Пол: Мужской
    • Просмотр профиля
Выкладываю свой дамп недавно вышедшего скролл-шутера ZPF...
stargazer, спасибо  :thumbup:

Оффлайн Rumata

  • Супермодератор
  • Сообщений: 25533
    • Просмотр профиля
Вообще хорошим тоном считается указывать платформу. Только не надо "и так понятно", "и так все знают" и т.п.

Оффлайн Nhisti

  • Пользователь
  • Сообщений: 1042
    • Просмотр профиля
Кстати, да, я вот по снимкам не понял  :-\

Оффлайн stargazer

  • Пользователь
  • Сообщений: 81
  • Пол: Мужской
    • Просмотр профиля
Выкладываю свой дамп недавно вышедшей игры The Secret of the Four Winds в жанре Adventure/RPG для SEGA MegaDrive\Genesis :)
Цитата
Однажды ночью в городе начали происходить странные вещи, которые невозможно было объяснить ни наукой, ни здравым смыслом. Вы и ваши напарники должны выяснить причины этих событий, пока не стало слишком поздно.


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


ВНИМАНИЕ! Игра использует дополнительное железо в картридже - аппаратный MP3 плеер YX5200 с отдельной флешкой, на которой записан саундтрек, а также использует основную флеш память с ROMом игры для сохранений. На обычном эмуляторе игра не запустится! Для игры потребуется заменить ядро Genesis-GX на модифицированное, с поддержкой данной микросхемы. Архив с исходниками прилагаю. Для игры под Windows 32/64 можно скачать уже собранные бинарники.

Папка с названием "soundtrack" должна располагаться в той же папке, что и ROM с игрой.
https://www.mediafire.com/file/3qgpmemsnxkj8na/TheSecretOfTheFourWinds-soundtrack.rar/file

UPD: Поправил баг с цветами, обновил архив с исходниками и собранные ядра

* Genesis-Plus-GX-TheSecretOfTheFourWinds-Sources.rar (8953.53 КБ - загружено 427 раз.)
[ Указанное вложение недоступно ]
[ Указанное вложение недоступно ]
« Последнее редактирование: 23 Июль 2025, 23:34:54 от stargazer »

Оффлайн Sharpnull

  • Пользователь
  • Сообщений: 5439
    • Просмотр профиля
Выкладываю свой дамп недавно вышедшей игры
The Secret of the Four Winds. Есть проблемы эмуляции, когда происходит затухание экрана инвертируются цвета (проверял в RetroArch и BizHawk ядро x64), например это место https://youtu.be/-61Kuf78mkE?t=283 выглядит так:
Интересно где вы достали код эмуляции, на nextgenroms ещё не успели выложить, а они там ждут.
UPD: Фото платы с nextgenroms, чтобы не создавать ещё сообщение.
295840-1

Оффлайн Rumata

  • Супермодератор
  • Сообщений: 25533
    • Просмотр профиля
использует основную флеш память с ROMом игры для сохранений
Как Life On Mars?
Кстати, плату картриджа можно где-то увидеть?

Оффлайн stargazer

  • Пользователь
  • Сообщений: 81
  • Пол: Мужской
    • Просмотр профиля
Как Life On Mars?
Кстати, плату картриджа можно где-то увидеть?
Типа того, хотя тут проще, игра использует библиотечные функции из SGDK.
Я выкладывал ранее.
https://www.emu-land.net/forum/index.php/topic,77919.msg1647328.html#msg1647328
Интересно где вы достали код эмуляции, на nextgenroms ещё не успели выложить, а они там ждут.
Сам написал :cool: Возможно, есть ошибки, я все игру не проходил на эмуляторе  :neznayu:

Оффлайн Rumata

  • Супермодератор
  • Сообщений: 25533
    • Просмотр профиля
Ага, таки не с флешки, а SD. Хороший подарок любителям замены саундтреков :) Хотя, по ходу, можно SPI Flash поставить

Добавлено позже:
Типа того, хотя тут проще
Ну, я не имел в виду сам код. Просто общий принцип

Оффлайн stargazer

  • Пользователь
  • Сообщений: 81
  • Пол: Мужской
    • Просмотр профиля
The Secret of the Four Winds. Есть проблемы эмуляции, когда происходит затухание экрана инвертируются цвета (проверял в RetroArch и BizHawk ядро x64), например это место https://youtu.be/-61Kuf78mkE?t=283 выглядит так:
Сейчас проверил: такие искажения цветов при "fadeout" палитры возникают только на Release сборках :neznayu:, причем даже если просто собрать не модифицированное ядро, без моих изменений. На Debug сборках такого не наблюдается...Я собирал под VisualStudio 2019, может какие-то настройки проекта неправильно импортировались :-\

Оффлайн murgatroid_79

  • Пользователь
  • Сообщений: 394
  • Пол: Мужской
    • Просмотр профиля
...ВНИМАНИЕ! Игра использует дополнительное железо в картридже - аппаратный MP3 плеер YX5200 с отдельной флешкой, на которой записан саундтрек...
stargazer, очень любопытный картридж  0_0 ...
На шелкографии указано авторство doragasu,но почему то на его страничках на Gitlab и Githab такого проекта не углядел .
Это уже стандарт такой или пока одна игра только вышла?

P.S.: Помница ещё HardWareMan хотел к Sega чип VL1001K приконнектить  :-\

Оффлайн Rumata

  • Супермодератор
  • Сообщений: 25533
    • Просмотр профиля
Помница ещё HardWareMan хотел к Sega чип VL1001K приконнектить  :-\
В смысле VS1001K? Да, такое напрашивается само собой. Кстати, с этим китайцем намного проще. Он сам работает с SD / Flash

Оффлайн bgr

  • Пользователь
  • Сообщений: 591
    • ВКонтакте
    • Просмотр профиля
Готов ли кто-нибудь шарищий за ромхакинг проверить в чем отличие в защитах на разных ревизиях картриджа gunfight? Должно быть по меньшей мере три дампа с разной вариацией защиты и один - другая ревизия рома.

Добавлено позже:
Дампы я само собой выложу, если будут желающие поковыряться.

Оффлайн murgatroid_79

  • Пользователь
  • Сообщений: 394
  • Пол: Мужской
    • Просмотр профиля
В смысле VS1001K?...
  Надо у Хардыча спрашивать о смысле...
А он с форума ушёл 😬
« Последнее редактирование: 23 Июль 2025, 13:56:53 от ALEX_230_VOLT »

Оффлайн Rumata

  • Супермодератор
  • Сообщений: 25533
    • Просмотр профиля
Ну это просто опечатка. Была такая микросхема - VS1001K. Выпуск прекращён, кстати. https://www.vlsi.fi/en/products.html

Оффлайн stargazer

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

Вот функция, которая читает 16-битное слово из регистра VDP, в нашем случае из регистра данных с указателем в CRAM
/* vdp_ctrl.c */
static unsigned int vdp_68k_data_r_m5(void)
{
  uint16 data = 0;

  /* Clear pending flag */
  pending = 0;

  /* Check destination code (CD0-CD3) & CD4 */
  switch (code & 0x1F)
  {
    case 0x00:
    {
      /* read two bytes from VRAM */
      /* .... */
   
      break;
    }

    case 0x04:
    {
      /* VSRAM index */
      int index = addr & 0x7E;

      /* .... */

      break;
    }

    case 0x08:
    {
      /* Read 9-bit word from CRAM */
      data = *(uint16 *)&cram[addr & 0x7E];

      /* Unpack 9-bit CRAM data (BBBGGGRRR) to 16-bit bus data (BBB0GGG0RRR0) */
      data = ((data & 0x1C0) << 3) | ((data & 0x038) << 2) | ((data & 0x007) << 1);

      /* Unused bits are set using data from next available FIFO entry */
      data |= (fifo[fifo_idx] & ~0xEEE);

      /* .... */
      break;
    }

    case 0x0c: /* undocumented 8-bit VRAM read */
    {
      /* .... */
      break;
    }

    default:
    {
      /* Invalid code value (normally locks VDP, hard reset required) */
      break;
    }
  }

  /* Increment address register */
  addr += reg[15];

  /* Return data */
  return data;
}

А вот функция чтения 32-битного значения из памяти при эмуляции инструкций CPU 68000, например для инструкций типа "move.l (a0),d1".
Переменная "temp->read16" для данного случая содержит указатель на функцию, приведенную выше.
/* m68kcpu.h */
INLINE uint m68ki_read_32(uint address)
{
  cpu_memory_map *temp;
  uint val;

  m68ki_set_fc(FLAG_S | m68ki_get_address_space()) /* auto-disable (see m68kcpu.h) */
  m68ki_check_address_error(address, MODE_READ, FLAG_S | m68ki_get_address_space()) /* auto-disable (see m68kcpu.h) */

  temp = &m68ki_cpu.memory_map[((address)>>16)&0xff];
  if (temp->read16) val = ((*temp->read16)(ADDRESS_68K(address)) << 16) | ((*temp->read16)(ADDRESS_68K(address + 2)));
  else val = m68k_read_immediate_32(address);

#ifdef HOOK_CPU
  if (UNLIKELY(cpu_hook))
    cpu_hook(HOOK_M68K_R, 4, address, val);
#endif

  return val;
}

Найдете ошибку? :)

Оффлайн warezhunter_

  • Пользователь
  • Сообщений: 274
    • Просмотр профиля
Попалась мне в руки вот такая китайская многоигровка:
https://aliexpress.ru/item/1005003016654103.html
Она интересна тем, что содержит в себе хакнутые версии игр. Например на кнопку Select в некоторых играх восстанавливается здороаье, в Felix The Cat можно трансформироваться в различные формы на кнопку Select. Мне даже удалось сдампить меню этой многоигровки и запустить через Fceux. Надо как то игры все повытаскивать оттуда.

Оффлайн aquasnake

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

S29GL064: Spansion Nor-flash 64Mbit

YX5200:  悦欣  sigle chip mp3 decoder(www.yxin18.com)

HCT377: Latch, Octal D-type flip-flop

The dumpped 4MB ROM may not be the full data, the full ROM I guess should be the size of 8MB. Despite having almost half of the data redundancy, the data at certain addresses is different. In principle, a RAM chip is needed, but by doubling the redundant data and using a latch to control the switching of the highest address bit, cost reduction can be achieved.

Оффлайн Werton

  • Пользователь
  • Сообщений: 974
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
Этот баг относится к  классу "Undefined Behavior"
Нет, это Unspecified Behavior :)