Например TDA7294

РадиоКот >Схемы >Цифровые устройства >Игрушки >

Теги статьи: Добавить тег

Немного ностальгии: самодельный перезаписываемый картридж для SEGA MEGA DRIVE | GENESIS

Автор: stalker1424
Опубликовано 31.07.2020
Создано при помощи КотоРед.

И ещё раз здравствуйте. "Ещё раз" потому, что проведя за написанием этой статьи около 4,5 часов, я нажал кнопку "Ну как там?"  и сайт перенаправил меня вместо страницы предварительного просмотра статьи на страницу создания новой статьи, и все мои труды не сохранились. Так что в этот раз я опишу кратко самую суть. У кого будут вопросы, спрашивайте, отвечу.

Инструкция по использованию картриджа следующая: 1) Форматируем micro-SD флешку в FAT32. Размер флешки не более 128 Гб. 2) Закидываем на флешку РОМ игры размером не более 4194304 байт (4Мб). Файл должен быть в корне диска с названием rom и расширением .bin .gen .md .32x либо .smd 3) Вставляем флешку с РОМ-ом в картридж 4) Вставляем в гнездо питания картриджа кабель питания от сеги 5) После подачи питания на картридж, не позднее 3 секунд, нужно нажать кнопку начала программирования. Если всё в порядке, начнёт моргать зелёный светодиод 6) Ждём от 8-ми минут до часа, в зависимости от размера РОМ-а игры. На программирование игры размером 512 Кб уходит около 8 минут 7) Если программирование успешно завершено, то зелёный светодиод перестанет мигать и загорится ровным светом 8) Отключаем питание, возвращаем кабель питания обратно в сегу, вставляем наш картридж в сегу и наслаждаемся игрой, ностальгируем=)

 В случае какой-либо ошибки процесс программирования прерывается и начинает моргать красный светодиод. Моргает он кодом ошибки с паузами между повторениями кода в 2,5 секунды. Пауза между блинками 300мс. Количество морганий (блинков) = номеру возникшей ошибки. Ошибки могут быть следующие:

  1. 1 блинк - ошибка инициализации карты
  2. 2 блинка - ошибка запроса идентификатора микросхемы H0
  3. 3 блинка - ошибка запроса идентификатора микросхемы L0
  4. 4 блинка - ошибка запроса идентификатора микросхемы H1
  5. 5 блинков - ошибка запроса идентификатора микросхемы L1
  6. 6 блинков - ошибка запроса идентификатора микросхемы H2
  7. 7 блинков - ошибка запроса идентификатора микросхемы L2
  8. 8 блинков - ошибка запроса идентификатора микросхемы H3
  9. 9 блинков - ошибка запроса идентификатора микросхемы L3
  10. 10 блинков - ошибка стирания микросхемы H0
  11. 11 блинков - ошибка стирания микросхемы L0
  12. 12 блинков - ошибка стирания микросхемы H1
  13. 13 блинков - ошибка стирания микросхемы L1
  14. 14 блинков - ошибка стирания микросхемы H2
  15. 15 блинков - ошибка стирания микросхемы L2
  16. 16 блинков - ошибка стирания микросхемы H3
  17. 17 блинков - ошибка стирания микросхемы L3
  18. 18 блинков - ошибка программирования микросхемы H0
  19. 19 блинков - ошибка программирования микросхемы L0
  20. 20 блинков - ошибка программирования микросхемы H1
  21. 21 блинк - ошибка программирования микросхемы L1
  22. 22 блинка - ошибка программирования микросхемы H2
  23. 23 блинка - ошибка программирования микросхемы L2
  24. 24 блинка - ошибка программирования микросхемы H3
  25. 25 блинков - ошибка программирования микросхемы L3
  26. 26 блинков - ошибка монтирования карты
  27. 27 блинков - ошибка открытия файла рома
  28. 28 блинков - ошибка чтения файла рома
  29. 29 блинков - ошибра чтения свойств файла рома
  30. 30 блинков - ошибка выхода адреса записи за пределы диапазона адресов памяти микросхемы (если ром больше, чем массив памяти платы)
  31. 31 блинк - неизвестная ошибка карты SD
  32. 32 блинка - неизвестная ошибка микросхемы AM29F040

Где H0-H3 - это чипы памяти в массиве памяти, подключенные к шине данных HB. (По схеме слева-направо H0 H1 H2 H3. На печатной плате они в нижнем ряду).

Где L0-L3 - это чипы памяти в массиве памяти, подключенные к шине данных LB. (По схеме слева-направо L0 L1 L2 L3. На печатной плате они в верхнем ряду).

Программирование также можно прервать вручную, в процессе нажав кнопку на плате картриджа. При этом перестанет моргать зелёный светодиод и загорится красный.

Крайне не рекомендуется отключать питание картриджа во время процесса программирования.

Картридж состоит из двух плат, схемы которых приведены ниже:

Прошивку и печатные платы DipTrace вложил. Фьюзы в микроконтроллере: L=0x1F, H=0xC7, Ext.=0xFF.

Ну а вот так выглядит готовый картридж:

В работе:

 

Спасибо за внимание) Если есть вопросы, то спрашивайте


Файлы:
Прошивка микроконтроллера
PCB


Все вопросы в Форум.




Как вам эта статья?

Заработало ли это устройство у вас?

24 3 1