Автор Тема: Запуск BIOS Sega Mega CD с флэш или UV EPROM  (Прочитано 491 раз)

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

Оффлайн gegmaster

  • Пользователь
  • Сообщений: 87
    • Просмотр профиля
Запуск BIOS Sega Mega CD с флэш или UV EPROM
« : 16 Апрель 2023, 17:25:46 »
Доброго дня всем. Интересует вопрос с запуском BIOS с флэш-картриджей по схеме Рюмика, FlashKit или EPROM (EverDrive, InviteDrive не предлагать). Пытался записать BIOS но при запуске на экране статическая картинка и далее ничего. Может кто знает особенности запуска BIOS? Возможно есть какая-то особенность в конструкции картриджа, не хватает какого-то сигнала или еще чего-нибудь.

Оффлайн HardWareMan

  • Модератор
  • Сообщений: 7548
    • Просмотр профиля
Запуск BIOS Sega Mega CD с флэш или UV EPROM
« Ответ #1 : 16 Апрель 2023, 17:37:21 »
Особенность этого BIOSа в том, что необходима сама MegaCD.

Оффлайн gegmaster

  • Пользователь
  • Сообщений: 87
    • Просмотр профиля
Запуск BIOS Sega Mega CD с флэш или UV EPROM
« Ответ #2 : 16 Апрель 2023, 17:54:45 »
С этим проблем нет, иначе оно бы мне и не нужно было. Дело в том, что у меня Mega CD model 1 (Japan), а консоль Sega Genesis model 1 VA6 (USA). При запуске с родным BIOS надпись на голубом фоне что-то вроде консоль предназначена для японского и азиатского региона.

Читал где-то что ранние версии EverDrive, InviteDrive не имели возможность запуска BIOS, но позже это было добавлено. А значит есть какие-то нюансы с запуском BIOS, знать бы какие.

UPD: Определенно есть какая-то особенность, не один я задавался таким вопросом, забугорные ребята тоже пытались: https://www.reddit.com/r/SegaCD/comments/88usu8/is_it_possible_to_create_a_bios_cart_for_the_sega/
« Последнее редактирование: 16 Апрель 2023, 19:29:07 от gegmaster »

Оффлайн gegmaster

  • Пользователь
  • Сообщений: 87
    • Просмотр профиля
Запуск BIOS Sega Mega CD с флэш или UV EPROM
« Ответ #3 : 17 Апрель 2023, 09:52:28 »
Немного поразмыслив, появились некоторые предположения.
Если посмотреть на организацию памяти Sega MD, то можно увидеть что адресное пространство с которого грузится картридж равно 000000-3FFFFF Cartridge ROM/RAM, поэтому BIOS не может быть загружен в этом диапазоне иначе произошел бы конфликт и игры на картридже не могли бы использовать Sega/Mega CD. Интересен так же второй диапазон 400000-7FFFFF Reserved (used by the Mega-CD and 32X) который резервируется для нужд Sega/Mega CD. Предполагаю что BIOS грузится именно в этом диапазоне. Тогда возникает вопрос как заставить картридж грузиться в этом диапазоне? В слоте Sega MD есть сигнал именуемый как /CART (B32), который детектирует сам факт присутствия картриджа в слоте и я опят таки предполагаю что возможно он переключает адресное пространство для загрузки картриджа в диапазон 000000-3FFFFF. Тогда получается, остается только управлять этим сигналом. Верны ли мои предположения или есть еще какие-то подводные камни?
« Последнее редактирование: 17 Апрель 2023, 10:21:02 от gegmaster »

Оффлайн HardWareMan

  • Модератор
  • Сообщений: 7548
    • Просмотр профиля
Запуск BIOS Sega Mega CD с флэш или UV EPROM
« Ответ #4 : 17 Апрель 2023, 12:33:03 »
Есть такой контакт !CART. В обычных картриджах он заземляется и тогда картридж отображается в первых 4х мегабайтах, а мегацд во вторых. Если этот сигнал висит в воздухе (он подтянут к + сопротивлением), то в первых 4х мегабайтах будет мегацд а во вторых - картридж. Обычно, это картридж с ОЗУ с батарейкой, тот самый для сохранений. Сам процессор стартует всегда с первого мегабайта. Т.е., правильный вариант когда мегацд внизу, иначе софт его не увидит. А значит, картридж должен быть "хитрым", который стартует от себя а потом подменяет себя на лету (так можно, сигнал !CART не сохраняется). Поэтому только флешкартриджи которые это умеют, а именно сложные. Например, первый эвердрайв не сможет так.

Но имей в виду, что если ты соберёшься делать подменный картридж с BIOS и, возможно, сразу со Save RAM, то тебе придётся вытащить ПЗУ из MegaCD чтобы не было конфликта.

Оффлайн gegmaster

  • Пользователь
  • Сообщений: 87
    • Просмотр профиля
Запуск BIOS Sega Mega CD с флэш или UV EPROM
« Ответ #5 : 17 Апрель 2023, 14:27:59 »
HardWareMan спасибо за информацию. Картина немного проясняется. Если я правильно понимаю картридж должен загрузится при !CART=0, что собственно он и делает. Как только он загрузится, необходимо отслеживать вызовы: для вызовов BIOS установить !CART=0, для вызовов не относящиеся к BIOS установить !CART=1. Для управления можно повесить какой-нибудь дешифратор аля 74HC138 на старшие адресные биты. Тогда остается только выяснить по каким адресам грузится BIOS.

UDP: В сети нашел еще один противоречивый момент.
Цитата
Если установлена Sega CD, организация памяти меняется. Sega CD становится владельцем $000000-$3FFFFF, в результате чего система загружается в Sega CD BIOS при включении питания, а адресное пространство слота для 4-мегабайтного картриджа становится $400000-$7FFFFF.
« Последнее редактирование: 17 Апрель 2023, 16:39:55 от gegmaster »

Оффлайн HardWareMan

  • Модератор
  • Сообщений: 7548
    • Просмотр профиля
Запуск BIOS Sega Mega CD с флэш или UV EPROM
« Ответ #6 : 17 Апрель 2023, 16:44:17 »
Ничего противоречивого. BIOS там в самом начале. Затем идёт внутреннее ОЗУ MegaCD. Это всё внутри первых 4 мегабайт. А во вторых будет сидеть картридж (вывод !CE0), при обычном сценарии который Save RAM. В Save RAM картриджке сигнал !CART не подключен никуда.