Автор Тема: Famicom Cartridge Schematics & PCBs  (Прочитано 78779 раз)

yaiba1989 и 2 Гостей просматривают эту тему.

Оффлайн max5775

  • Пользователь
  • Сообщений: 540
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #150 : 18 Июнь 2018, 13:01:42 »
Подскажите по поводу мирроринга для nrom игр.
Я не программист и не понимаю, в чем разница между горизонтальным и вертикальными и что это есть вообще.
Можно поменять мирроринг в самом роме, к примеру у марио и танков они разные и записать их на один картридж не получится.
Вернее получится, но толку от этого без переключения перемычек будет мало.

Оффлайн KykyPyky

  • Пользователь
  • Сообщений: 516
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #151 : 18 Июнь 2018, 17:28:56 »
Архитектурой приставки предусмотрено 4 экранные страницы в виде 2х2, но памяти только на 2.
Поэтому оставшиеся две, которым не досталось памяти, повторяют предыдущие.
Зеркалирование как раз и определяет каким двум экранным страницам достается память, а какие повторяют содержимое первых.
При вертикальном зеркалировании первые две горизонтальные получают память, две нижние повторяют.
При горизонтальном, первые две вертикальные память получают, второй столбец повторяет первый.

198448-0
У марио скроллинг горизонтальный, справа за границей экрана уже стоят элементы игры, те память нужна в первых двух горизонтальных экранах.
Поэтому зеркалирование вертикальное.

В танках заставка движется вертикально, память нужна на первый столбец, зеркалирование горизонтальное.

Зеркалирование ты не исправишь. То где ты хочешь поправить это заголовок ром файла, он нужен только для эмулятора. При записи на карик он вырезается.

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

Оффлайн max5775

  • Пользователь
  • Сообщений: 540
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #152 : 18 Июнь 2018, 20:47:11 »
Если хочешь записать на железо, то либо ставить мультиплексор и им уже программно управлять как и банками игры или переключатель.
Вот я и склоняюсь к такому варианту, спасибо.
Есть мультиплексор CD4053B, нашел от него схемку, только не совсем понятно, как подавать сигнал управления (какое напряжение, полярность?)
Допустим, я хочу использовать для переключения выводы 12,13,14.
И куда подключать 6,7 выводы?
« Последнее редактирование: 20 Июнь 2018, 12:49:14 от max5775 »

Оффлайн KykyPyky

  • Пользователь
  • Сообщений: 516
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #153 : 20 Июнь 2018, 17:50:18 »
Есть мультиплексор CD4053B, нашел от него схемку, только не совсем понятно, как подавать сигнал управления (какое напряжение, полярность?)
Хоть там и написано что это мультиплексор, но это скорее аналоговый ключ.
Тебе нужен нормальный мультиплексор для цифровых сигналов.
Например 74HC157

Оффлайн goodbye

  • Пользователь
  • Сообщений: 2423
  • Пол: Мужской
  • 6 66
    • Youtube
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #154 : 20 Июнь 2018, 19:34:22 »
было бы круто написать такой софт, который бы делал многоигровки без дополнительного железа (микросхем). :)
но, думаю, это утопия...

Оффлайн megavolt85

  • Пользователь
  • Сообщений: 1464
  • Пол: Мужской
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #155 : 20 Июнь 2018, 21:48:49 »
это скорее аналоговый ключ.

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

Допустим, я хочу использовать для переключения выводы 12,13,14.
И куда подключать 6,7 выводы?

6,7,8 на землю
16 к питанию
если на 11 логическая 1 (+), то соединенны 14,13
если на 11 логический 0 (-), то соединенны 14,12

Оффлайн max5775

  • Пользователь
  • Сообщений: 540
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #156 : 20 Июнь 2018, 22:32:04 »
А я что то не подумал, мне ж надо чтобы ключ каждый раз переключался при сбросе.
А в данном случае он будет постоянно включать в одно и то же положение.
Я думал писать ромы с разным миррорингом чередуя, соответственно при переключении рома переключался бы и мирроринг.
goodbye, вижу что дата выпуска твоей программки обновилась, а по ссылке вроде старая версия скачивается. Или ты еще не внес функцию сортировки, как я хотел?

Оффлайн goodbye

  • Пользователь
  • Сообщений: 2423
  • Пол: Мужской
  • 6 66
    • Youtube
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #157 : 20 Июнь 2018, 22:34:38 »
max5775, а как ты определяешь, что старая ?
запусти "командную строку" (терминал) по соответствующей кнопке в программе, там будет версия.

пока устранил немного глюков, по всем вопросам, лучше в теме о программе :) типа что нового и т.п...
менюшек от Кукуруку пока нет. но я скоро до этого дойду :) и тогда мы с Кукуруку сделаем всем подарок :DD

Оффлайн max5775

  • Пользователь
  • Сообщений: 540
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #158 : 21 Июнь 2018, 15:03:43 »
max5775, а как ты определяешь, что старая ?
запусти "командную строку" (терминал) по соответствующей кнопке в программе, там будет версия.

пока устранил немного глюков, по всем вопросам, лучше в теме о программе :) типа что нового и т.п...
менюшек от Кукуруку пока нет. но я скоро до этого дойду :) и тогда мы с Кукуруку сделаем всем подарок :DD
Я просто посмотрел по функциям, вроде все тоже самое.
Консоль у меня не откроется - я в Linux работаю через wine.
Так значит есть шанс интегрировать генератор менюшек в программу, ждем с нетерпением )

Оффлайн goodbye

  • Пользователь
  • Сообщений: 2423
  • Пол: Мужской
  • 6 66
    • Youtube
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #159 : 21 Июнь 2018, 20:10:46 »
в вайне есть смд и блокнот :) я тоже в линуксе если что.

Оффлайн max5775

  • Пользователь
  • Сообщений: 540
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #160 : 21 Июнь 2018, 20:38:28 »
в вайне есть смд и блокнот :) я тоже в линуксе если что.
Это да, но блокнот запускается, а cmd нет, по крайней мере у меня так...

Оффлайн max5775

  • Пользователь
  • Сообщений: 540
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #161 : 29 Август 2018, 13:12:41 »
А есть схемы мапперов MMC1 и MMC3 на логике, или это не возможно в принципе?

Оффлайн supremacy

  • Пользователь
  • Сообщений: 2276
  • Пол: Мужской
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #162 : 29 Август 2018, 14:40:43 »
Всё возможно, но схем нет. Китайцы делали частичные реализации под свои хаки, но воспроизводить то же самое не имеет смысла, т.к. там такое количество корпусов что дешевле купить донора либо использовать FPGA.
На форуме nesdev есть несколько тем, где человек срисовал китайские платы.

Оффлайн max5775

  • Пользователь
  • Сообщений: 540
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #163 : 29 Август 2018, 15:07:03 »
Всё возможно, но схем нет. Китайцы делали частичные реализации под свои хаки, но воспроизводить то же самое не имеет смысла, т.к. там такое количество корпусов что дешевле купить донора либо использовать FPGA.
На форуме nesdev есть несколько тем, где человек срисовал китайские платы.
мдаа, однако
дешевле купить сам маппер
спасибо

Оффлайн KykyPyky

  • Пользователь
  • Сообщений: 516
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #164 : 29 Август 2018, 17:53:50 »
Как правило такие схемы содержат дикое количество микросхем.
Но существуют схемы которые позволяют запускать mmc1 с минимальным хакингом рома.
Например highway star, игра на mmc1 с chr-ram, содержит всего 5 микрух мелкой логики.
Но игры там какая то японская дичь в основном. Эту схему я не ковырял.
200681-0

Маппер bmc12in1 (так же известная как кинамановская семиигровка), позволяет запускать почти все mmc1 игры с 128k prg + 128k chr
и содержат 7 микрух мелкой логики.
У меня не получилось пропатчить только Journey to Silius из интересных мне игр, появлялись артефакты графики.
Хакинг игр довольно простой. Я написал даже скриптик на питоне который делает это автоматически. Единственное, ему надо передать
3 адреса неиспользуемых ячеек в памяти.
200683-1
« Последнее редактирование: 29 Август 2018, 18:05:25 от KykyPyky »

Оффлайн max5775

  • Пользователь
  • Сообщений: 540
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #165 : 29 Август 2018, 19:33:06 »
Маппер bmc12in1 (так же известная как кинамановская семиигровка), позволяет запускать почти все mmc1 игры с 128k prg + 128k chr
и содержат 7 микрух мелкой логики.
У меня не получилось пропатчить только Journey to Silius из интересных мне игр, появлялись артефакты графики.
Хакинг игр довольно простой. Я написал даже скриптик на питоне который делает это автоматически. Единственное, ему надо передать
3 адреса неиспользуемых ячеек в памяти.
а можно поподробнее про этот вариант?
мне как раз нужно запустить патченный p.o.w на 2 игрока, он вроде 128+128
да и много нормальных игр с такой конфигурацией нашел под mmc1

Оффлайн KykyPyky

  • Пользователь
  • Сообщений: 516
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #166 : 29 Август 2018, 21:59:17 »
Пара 74HC374 одновременно хранит три регистра: банк prg игры и два банка chr. Поэтому при смене банка prg надо звать значения банков chr и при смене одно из банков chr надо знать значение prg.
Именно поэтому нужны три ячейки в памяти игры, в которые игра ничего не пишет.

Для выяснения я запускал игру с lua скриптом unused-zp.lua в терминале. И прогонял tas запись. Скрипт запоминает сколько раз игра записывает  в zero page ($00-$ff) и при клику по экрану пишет данные в терминал. Как правило игры при старте  очищают память и пишут нули во всю память, поэтому значений 1 пугаться не надо.

Потом запускаю питоновский скрипт и передаю адреса свободных ячеек.
./mmc2bmc.py --bank 0 --chr0 xc0 --chr1 xc1 --prg xc2 P.O.W.\ -\ Prisoners\ of\ War\ \(U\)\ \[\!\].rus.nesСоздается несколько файлов
P.O.W. - Prisoners of War (U) [!].rus.prg
P.O.W. - Prisoners of War (U) [!].rus.chr
P.O.W. - Prisoners of War (U) [!].rus.unf
prg и chr для записи в пзу, а unf для эмулятора.
Вновь записанный код содержит столько же байтов и исполняется за такое же количество такстов как и старый.
А это значит что для проверки успешности операции можно запустить tas.

74hc161 используется для хранения банков игр и  мирроринга. Если собирать многоигровки, то параметр --bank также надо указывать, в зависимости от того какой по счету идет игра.
Для первой можно не указывать, у нее и так этот параметр равен нулю.

На форуме выкладывали уже разводку этой платы https://www.emu-land.net/forum/index.php/topic,53818.msg971942.html#msg971942 . Я приложил измененную разводку под флешки и адаптированную под лут.
« Последнее редактирование: 29 Август 2018, 22:32:21 от KykyPyky »

Оффлайн max5775

  • Пользователь
  • Сообщений: 540
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #167 : 29 Август 2018, 22:33:35 »
Спасибо, попробую сделать, надо пару микросхем логики докупить
Расположение м/с логики такое же, как на фото? А то в печатке они не подписаны.

Оффлайн KykyPyky

  • Пользователь
  • Сообщений: 516
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #168 : 29 Август 2018, 22:45:20 »
Да, точно как на фотке.
Когда я собирал у меня была идея фикс собрать все на 555/1533 отечественной серии. :lol:
Нигде не мог найти аналог 74LS139 ид14. Заменил на ид4, чуть изменив разводку.

Оффлайн max5775

  • Пользователь
  • Сообщений: 540
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #169 : 29 Август 2018, 23:06:00 »
Да, точно как на фотке.
Когда я собирал у меня была идея фикс собрать все на 555/1533 отечественной серии. :lol:
Нигде не мог найти аналог 74LS139 ид14. Заменил на ид4, чуть изменив разводку.
ну тогда и пзу искать отечественную )

Оффлайн godun

  • Пользователь
  • Сообщений: 3932
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #170 : 07 Сентябрь 2018, 16:48:07 »
думаю с темой угадал немного, будет наверное интересно. Прикупил батл сити, открыл, прифигел :D
Эдак и реплику скоро не отличишь

Оффлайн max5775

  • Пользователь
  • Сообщений: 540
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #171 : 22 Октябрь 2018, 12:32:47 »
думаю с темой угадал немного, будет наверное интересно. Прикупил батл сити, открыл, прифигел :D
Эдак и реплику скоро не отличишь
а что окошки не заклеены?

Оффлайн supremacy

  • Пользователь
  • Сообщений: 2276
  • Пол: Мужской
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #172 : 22 Октябрь 2018, 13:16:50 »
а что окошки не заклеены?
Плата в черном корпусе без отверстий. Смысла заклеивать нет.

Оффлайн megavolt85

  • Пользователь
  • Сообщений: 1464
  • Пол: Мужской
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #173 : 22 Октябрь 2018, 14:01:30 »
а что окошки не заклеены?

защита, при вскрытии само-уничтожается  :lol:

Оффлайн supremacy

  • Пользователь
  • Сообщений: 2276
  • Пол: Мужской
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #174 : 22 Октябрь 2018, 14:35:58 »
защита, при вскрытии само-уничтожается
В детстве такие страшилки ходили, что японцы технику свою так защищают, что при вскрытии все детали с платы срезает 8)

Оффлайн SAMael

  • Пользователь
  • Сообщений: 6191
  • Пол: Мужской
  • SAMuel Alpian Warrior Glegleddore Gleglezavr
    • Facebook
    • Twitter
    • ВКонтакте
    • Steam
    • Youtube
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #175 : 22 Октябрь 2018, 15:28:42 »
а что окошки не заклеены?
Пофигу, не сотрётся, если толь ко у тебя дома в место обычных лампочек вкручены УФ с нужной длинной волны  ;)

Оффлайн megavolt85

  • Пользователь
  • Сообщений: 1464
  • Пол: Мужской
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #176 : 22 Октябрь 2018, 15:46:33 »
supremacy, аха, а если вскрыть их портативное радио, то от туда начинает валить дым и на плате выгорает в пыль :lol: помню я эти байки

Оффлайн max5775

  • Пользователь
  • Сообщений: 540
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #177 : 30 Октябрь 2018, 10:59:44 »
Досталось пару старых момедов от HP.
Там на плате нашел флешку Am29LV160D, по даташиту что-то не пойму, вроде как она и 8 и 16 битная.
В 8-ми битном режиме получается емкость всего 2МБ? Хотя по старшему адресу А19 получается 8МБ

Оффлайн SAMael

  • Пользователь
  • Сообщений: 6191
  • Пол: Мужской
  • SAMuel Alpian Warrior Glegleddore Gleglezavr
    • Facebook
    • Twitter
    • ВКонтакте
    • Steam
    • Youtube
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #178 : 30 Октябрь 2018, 11:16:01 »
Верно, как 8 так и 16, но денде нада 8 бит.

Оффлайн supremacy

  • Пользователь
  • Сообщений: 2276
  • Пол: Мужской
    • Просмотр профиля
Famicom Cartridge Schematics & PCBs
« Ответ #179 : 30 Октябрь 2018, 11:25:30 »
Хотя по старшему адресу А19 получается 8МБ
8 мегабит нужно поделить на 8 бит и получим 1 мегабайт
плюс DQ15/A-1, вместо А20 (как я понял)
« Последнее редактирование: 30 Октябрь 2018, 11:34:50 от supremacy »