Нужно всего лишь разобраться с архитектурой и программированием под NES и перестать фантазировать.
Где фантазирование?
Лично я не против узнать какая клавиша клавиатуры будет отвечать какому биту в потоке опроса битов D1,2,3,4 хотябы того же сюбора или ещё какого клавишного денди.
При чтении стандартного геймпада точно известно и закономерна последовательность опроса кнопок джойстика, первые 8 чтений бита D0 по адресу $4016 являются опросом кнопок 1го джойстика, вторые 9-16 чтения кнопок являются опросом 3го джойстика. Но существовали и джойстики для нес с кнопками 0-9 и несколькими символами, где первые 8 чтений бита D0 по адресу $4016 опрашивали стандартные кнопки джойстика, а 9-24 чтения опрашивали дополнительные кнопки джойстика, за исключением 23го чтения, оно возвращало 0.
http://dendy.migera.ru/nes/g04.htmlСледовательно можно предположить (теоретически), что к Денди можно подключать любые устройства которые будут нажатия клавишь, кнопок или ещё что либо передавать по линиям J1D0 J1D1, J2D0, J2D1, J2D2, J2D3, J2D4, с определённой последовательностью битов в количестве 1-24, а самой программой на денди уже считывать эти биты D0 и D1 по адресу $4016 и биты D0-D4 по адресу $4017, и на основании считаной последовательности битов показывать какую кнопку мы нажали на устройстве, и далее исполнять код исходя из нажатой кнопки.
Но вот по части железа какие микросхемы использовать для передачи битов в нужные контакты в необходимых последовательностях в зависимости от используемых устройств тут я не силён.
http://www.nedopc.org/forum/viewtopic.php?t=10219#p138015Добавлено позже:Все пишут, что NES является адаптером для вывода картинки на экран и звука. Собственно вопрос, картинка и звук будут выводится с какими то ограничениями, которые есть у NES? Разрешение там, палитра?
По части картинки. Да, у нес эти ограничения не обойти.
Но касаемо звука. Нет. Звук генерирует чип самой консоли, есть картриджы с дополнительными каналами которые накладывают звук сгенерированный на картридже на звук идущий в картридж от консоли. На самом картридже имеются контакты in audio, out audio. Прежде чем звук пойдёт на усилитель и передачу на устройство звук можно перехватить в картридже, тем самым есть возможность избавиться от генерируемого звука и пустить свой из картриджа в моно канале.
Как правило почти во всех картриджах попросту на эти 2 контакта делают перемычку, но есть и приставки где перемычку ставят уже на самой плате приставки, есть и исключения китайские клоны где вообще звук сразу идёт на усилитель, ну или сразу на передачу звука, даже не подводя к контактам картриджа.