Автор Тема: SMD Дамп встроенных игр 62 in 1  (Прочитано 1148 раз)

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

Оффлайн binturong_reiko

  • Пользователь
  • Сообщений: 158
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« : 26 Январь 2026, 09:57:52 »
С одной стороны, тема про железо 4 поколения, с другой вопрос все же о дампе встроенных игр, а это ближе к картриджам, как ни крути.
Да рассудит модератор, и да перенесет он в случае необходимости в нужный раздел тему сию.

Попал в руки клон на tct-6801, а на нем встроенные игры в количестве 62. С обратной стороны платы подложка с bga чипом на 27 дата линий(я так думал), что интересно, они все уходят в 6801, va[1..23] на штатные места, еще четыре на пины с 61 по 64.
307477-0

Снял, навесил на плату, подключил старшие адреса через пачку переключателей и погнали.
307479-1

В общем, активных линий 25, при переключении 26й и 27й содержимое не меняется. либо флешка меньшего размера, чем расчитана подложка, либо содержимое записано 4 раза. Итого, общий дамп 64 мегабайта.
Первая "страница" в 1Мбайт содержит меню. Интересно то, что игр там прописано больше двух сотен.

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

Или если никто до сих пор не разбирался, то может быть тут есть люди, способные помочь, направить или хотя бы пнуть в нужном направлении.

Дамп первого мегабайта прилагаю, эмуль его запускает. Если будет нужно, выложу полный дамп микры.
Эмуляторы, естественно, им давятся и не работают
« Последнее редактирование: 26 Январь 2026, 10:17:02 от binturong_reiko »

Оффлайн JRBVZ

  • Пользователь
  • Сообщений: 554
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #1 : 26 Январь 2026, 11:19:10 »
Дампил флэшкитом? Посмотри в этой теме https://www.emu-land.net/forum/index.php/topic,83028.0.html
Там было похожее меню.

Бедная двухвольтовая память  :cry:

Оффлайн binturong_reiko

  • Пользователь
  • Сообщений: 158
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #2 : 26 Январь 2026, 11:24:41 »
Спасибо, почитаю.

Да, китайклоном. Сначала пытался софтом Migera, но у него косяк, его софт пытается считывать ровно тот объем, который указан в заголовке, а меня это категорически не устраивало, надо было читать блоками по 1Мб. Взял оригинальную утилиту, вот ей и снял кусками.

Да, память там интересная.. В консоли она питается от 3.6 стаба через 1 диод. Я поэтому преобразователь навесил и настроил его на 2.5 вольта, вышло удачненько)))

Оффлайн stargazer

  • Пользователь
  • Сообщений: 122
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #3 : 26 Январь 2026, 11:40:21 »
В TCT-6801 какой-то встроенный маппер  :-\  Меню много пишет по "нестандартным" адресам 0xA14ххх и 0xA16xxx

Оффлайн JRBVZ

  • Пользователь
  • Сообщений: 554
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #4 : 26 Январь 2026, 11:43:17 »
binturong_reiko,

Оффтоп: я в своем форке развел дополнительные адреса под колодку, но софт и прошивку не трогал, нет у меня таких знаний  :biggrin: А так можно было бы шить большие флэшки автоматически. https://github.com/JRBVZz/Flashkit-MD

Оффлайн binturong_reiko

  • Пользователь
  • Сообщений: 158
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #5 : 26 Январь 2026, 13:39:08 »
В TCT-6801 какой-то встроенный маппер  :-\  Меню много пишет по "нестандартным" адресам 0xA14ххх и 0xA16xxx
он явно там есть, потому что есть отдельные /ce и /oe под встроенные игры + этот камень умеет адресовать все 23 линии адреса, да еще и 4 дополнительных есть.
А как вы вообще это видите? можете кратко написать? я постараюсь дальше сам разобраться


Оффлайн stargazer

  • Пользователь
  • Сообщений: 122
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #6 : 26 Январь 2026, 15:39:08 »
Загрузил в дизассемблер (IDA) и посмотрел. Потом добавил пару строчек для логирования обращений по данным адресам в мою сборку эмулятора GenesisGX и запустил этот ром  :neznayu:
Используются следующие адреса:

При запуске:
0000 => A14406
0000 => A14404
4750 => A14408
0000 => A14404

5000 => A16302
1CF1 => A16304
0112 => A16306

0516 => A16310
0417 => A16312
08C0 => A16314
0547 => A16316
0546 => A16318

90C3 => A16300
9BC3 => A16300

После заставки (splash screen):
чтение (word) <= A14444
0068 => A1630C

При запуске выбранной игры:
0007 => A14406
000x => A14404 (0,3,2,...зависит от выбранной игры)
Последние 2 записи происходят из RAM.

Что находится по адресам A163xx неизвестно, но в коде эмулятора есть диапазон A144хх, и хотя специальной обработки нет, в комментариях написано, что это "Radica".
Возможно стоит поискать техническую информацию об этой штуке: https://segaretro.org/Arcade_Legends_Sega_Mega_Drive

P.S. Ко мне можно на ты :)

Оффлайн binturong_reiko

  • Пользователь
  • Сообщений: 158
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #7 : 26 Январь 2026, 15:50:14 »
спасибо, поковыряюсь
"по адресам A163xx " в какой-то теме натыкался на конфигурирование дополнительных регистров в mdp(это же сборник судя по сплэшскрину для mdp), типа настройка региона в 6803(или 6801)... надо освежить память

Оффлайн JRBVZ

  • Пользователь
  • Сообщений: 554
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #8 : 26 Январь 2026, 16:22:01 »
в комментариях написано, что это "Radica".
Скорее всего старая схема:

Оффлайн binturong_reiko

  • Пользователь
  • Сообщений: 158
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #9 : 26 Январь 2026, 16:29:12 »
о, интересно. затупил. надо попробовать урезать дамп до 16 мегабайт и на этой схеме запустить

Добавлено позже:
stargazer, вот, посмотри, это не оно?
Что-то типа того. Не совсем GPIO, ибо игра умеет обращаться только к стандартному порту, но какое-то переключение режима происходит.
Наиболее подозрительные места:
MOVE.W    #$00A0,$00A16106
и
MOVE.W    #$3000,$00A16302
MOVE.W    #$F0CC,$00A16304
MOVE.W    #$7828,$00A16306
Понятно, что $00A1xxxx - это диапазон регистров управления, но сами адреса очень странные.
Там должно быть два момента: настройка джойстика и конфигурирование дисплея по SPI
« Последнее редактирование: 26 Январь 2026, 16:57:26 от binturong_reiko »

Оффлайн stargazer

  • Пользователь
  • Сообщений: 122
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #10 : 26 Январь 2026, 21:04:09 »
stargazer, вот, посмотри, это не оно?
Оно  :) Только значения другие.
В той теме много интересной информации есть:
итого, единственный оставшийся вариант который может рулить режимом джойстиков это bit7 регистра 0xA16106
Здесь обращение к этому регистру отсутствует, что логично т.к. это не портативка со специфическим подключением джойстика :)
TCT-6801 и TCT-6803 (остальные надо проверять), консоль не запустила встроенные игры без инициализации регистра 0xA1630C, при активном /CART инициализация не обязательна

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

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

Оффлайн binturong_reiko

  • Пользователь
  • Сообщений: 158
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #11 : 27 Январь 2026, 03:06:06 »
Да, там долго ковырялись с портативками, вот мне и вспомнилось.
Полный дамп прилагаю. Но, как я понял, адреса эти нифига не стандартные, т.е. они реализовали отдельный маппер, а не засунули в кристалл кучку логики с управлением через /TIME, потому что если к куску с меню приклеить следующий, с After Burner II - эмуль не запускает, просто reset

https://disk.yandex.ru/d/YqsJNiBwIY3gTg

Оффлайн JRBVZ

  • Пользователь
  • Сообщений: 554
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #12 : 27 Январь 2026, 06:21:02 »
А почему эмулятор должен запускать? Он как раз не в курсе про доп логику.

Оффлайн binturong_reiko

  • Пользователь
  • Сообщений: 158
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #13 : 27 Январь 2026, 06:29:29 »
Вроде какие-то эмуляторы эмулируют стандартный маппер для многоигровок, нет? Может с 8-мибитками путаю
засовывали же в эмуль поддержку Pier Solar, а там логики дофига

Оффлайн JRBVZ

  • Пользователь
  • Сообщений: 554
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #14 : 27 Январь 2026, 07:18:49 »
У nes в заголовке прописан маппер, на сеге такого нет. Можно определять маппер по определенным местам, как например запись SSF (маппер Super Street Fighter), Pier Solar можно по названию внутри детектить. Но это мапперы конкретных игр, а многоигровки не прописывали. Но это не точно  :D

Оффлайн stargazer

  • Пользователь
  • Сообщений: 122
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #15 : 27 Январь 2026, 14:34:26 »
Скорее всего старая схема:
Да, это оно :)
Похоже, меню универсальное: и для картриджа и для встроенной памяти. Старшие адреса подключены A24 к D7,  A25 к D8, а также за них отвечает регистр по адресу 0xA14404.
Таким образом, адресами A16-A23 можно управлять записью значения 0 по адресам 0xA130xx (/TIME), а адресами A24, A25 записью значений 0000 000x x000 0000 по этим же адресам либо записью значений 0000 0000 0000 00xx в регистр 0xA14404.

Оффлайн binturong_reiko

  • Пользователь
  • Сообщений: 158
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #16 : 27 Январь 2026, 14:41:12 »
а в коде меню нет обращений по 0xA130xx или и они присутствуют?

я попробовал углубиться в разбор кода, но уперся в то, что нужен ida pro и еще куча софта накомпилить надо.. пока разбираться пытаюсь

меня собственно интересует вот что: если собрать схему с соответствующими изменениями, то оно будет работать и в виде картриджа? Просто это было бы проще в плане перезаливки при тестах

Оффлайн stargazer

  • Пользователь
  • Сообщений: 122
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #17 : 27 Январь 2026, 14:43:16 »
а в коде меню нет обращений по 0xA130xx или и они присутствуют?
Есть. Я их поначалу проглядел :)
Кстати, в ядре GenesisGX есть частичная поддержка таких многоигровок, запускаются игры в пределах первых 4МБ. Это Alien3,After Burner II,Rainbow Islands,Aladdin

Оффлайн binturong_reiko

  • Пользователь
  • Сообщений: 158
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #18 : 27 Январь 2026, 14:47:48 »
а каким либо образом можно понять из полного дампа, как собрана та часть маппера для управления по А130? какой там размер блока выходит?
хотя, в дампе игр меньше 512кБ нет, так что наверное ответ очевиден

Добавлено позже:
Есть. Я их поначалу проглядел :)
Кстати, в ядре GenesisGX есть частичная поддержка таких многоигровок, запускаются игры в пределах первых 4МБ. Это Alien3,After Burner II,Rainbow Islands,Aladdin
именно этот дамп?

Оффлайн stargazer

  • Пользователь
  • Сообщений: 122
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #19 : 27 Январь 2026, 14:51:36 »
а каким либо образом можно понять из полного дампа, как собрана та часть маппера для управления по А130? какой там размер блока выходит?
хотя, в дампе игр меньше 512кБ нет, так что наверное ответ очевиден
Это следует не из дампа, а из схемы маппера - 64кБ. В этом дампе нет игр меньше 512кБ.
именно этот дамп?
Да :)

Оффлайн binturong_reiko

  • Пользователь
  • Сообщений: 158
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #20 : 27 Январь 2026, 14:56:35 »
не совсем понял. 64 кБ у радики. реализован именно этот маппер в таком же виде?
307558-0

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

Надо доразобраться с дизассемблером

Оффлайн stargazer

  • Пользователь
  • Сообщений: 122
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #21 : 27 Январь 2026, 15:01:12 »
не совсем понял. 64 кБ у радики. реализован именно этот маппер в таком же виде?
Да. :) Только это его часть, схема, как на картинке может адресовать максимум 16МБ. А тут 64МБ (а возможно, можно и больше флешку поставить)
307560-0

Оффлайн binturong_reiko

  • Пользователь
  • Сообщений: 158
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #22 : 27 Январь 2026, 15:03:19 »
Можно, так как на подложке с памятью выведены 27 адресных линий и старшие 4 уходят в чип, а используются в данном случае только две из них. Если я все правильно понял, макс объем этого добра - 256Мб

Оффлайн stargazer

  • Пользователь
  • Сообщений: 122
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #23 : 27 Январь 2026, 15:05:51 »
Тогда в геистре 0xA14404 задействованы 4 младших бита, а к какие им соответствуют выводы данных не знаю, может D9, D10 :neznayu: Это надо в теме про многоигровки смотреть

Оффлайн binturong_reiko

  • Пользователь
  • Сообщений: 158
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #24 : 27 Январь 2026, 15:09:07 »
скорее всего так и есть, это можно поэкспериментировать. Если найду такую огромную память и смогу ее чем-то зашить.
Потому что даже эту память как шить я еще не нашел. Т.е. есть даташит, но вот поддержки такой микры нет ни в одном моем программаторе.
 А пока надо попробовать собрать это все на картридже, внешнем и запустить.

Огромное спасибо за помощь!

Оффлайн JRBVZ

  • Пользователь
  • Сообщений: 554
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #25 : 28 Январь 2026, 06:51:17 »
Если найду такую огромную память и смогу ее чем-то зашить.

Самая большая флэшка на сеге, с которой сталкивался, была 4 Гбита. Но полностью дампить, дергая старшие адреса, я бы не решился  :D
Менюшка во вложении.

Оффлайн binturong_reiko

  • Пользователь
  • Сообщений: 158
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #26 : 28 Январь 2026, 07:17:25 »
тут 512 мегабит (разобрался с маркировкой по даташиту). В принципе, я считал, что там должна стоять 2Гбита, 256 считываний всего. Подумал, что осилю))

Итак, оно живое! Схема работает, но не совсем правильно (либо я ошибся при монтаже, либо я ошибся при интерпретации адресов, либо схема не совсем та), некоторые игры Alien 3 например запускаются нормально, но вместо Lion king - Battletoads, вместо Tiny toon - Tom&Jerry. Дальше пока не проверял
307976-0

Вот так это выглядит:
307978-1
Можно вносить в базу "Ужасы нашего городка"  :biggrin:
« Последнее редактирование: 02 Февраль 2026, 07:04:49 от binturong_reiko »

Оффлайн binturong_reiko

  • Пользователь
  • Сообщений: 158
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #27 : 02 Февраль 2026, 09:42:58 »
Что-то я не пойму. С нумерацией адресов какато лажа. Вот две схемы радики, правая из этой темы, левая тоже с форума, не помню откуда. Если смотреть на нашу, правую, то страница выходит 128кбайт, а не 64
307986-0

Оффлайн JRBVZ

  • Пользователь
  • Сообщений: 554
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #28 : 02 Февраль 2026, 10:02:44 »
Схему использовал как здесь? https://www.emu-land.net/forum/index.php/topic,83028.msg1569725.html#msg1569725

Оффлайн binturong_reiko

  • Пользователь
  • Сообщений: 158
  • Пол: Мужской
    • Просмотр профиля
SMD Дамп встроенных игр 62 in 1
« Ответ #29 : 02 Февраль 2026, 10:04:37 »
Нет, схему использовал из этой темы с дополнением с D7 D8, в предыдущем моем сообщении она справа на картинке. В той схеме использованы адреса VA[1..7], а в нашей [0..7], что я думаю должно соответствовать VA[1..8].

Попробовал ее. Тоже косяки, не те игры запускаются. Например по Aladdin запуск After Burner
Стоп, не совсем так ее попробовал. Адресные надо перекидывать. Там страница 128килобайт

Итак. Заработала вот эта схема как раз:
307994-0
Запустил первые две игры. Ближе к концу дампа, одной из последних Castlevania. Тоже запускается
« Последнее редактирование: 02 Февраль 2026, 10:44:33 от binturong_reiko »