Решил я пощупать MAPLE шину и что нибудь к ней подключить
изначально планировал подключить только PlayStation контроллер, но в процессе хотелки (не только мои) росли и в итоге мне на опыты прислали геймпады от Saturn и MegaDrive
На данный момент адаптер умеет подключать к DreamCast:
1) контроллеры от PlayStation 1 и 2 с поддержкой вибрации
2) шести кнопочные геймпады от SEGA MegaDrive/Genesis
3) шести кнопочные геймпады от SEGA Saturn
4) клавиатуры с интерфейсом PS/2
5) мыши с интерфейсом PS/2
6) до 16-ти VMU, в зависимости от установленной памяти
ограничения и баги:
1) адаптер работает только на консоли без разгона, в дальнейшем я сделаю разгон консоли до 220 MHz и сделаю отдельное ПО для консоли с разгоном
2) в режиме эмуляции мыши не работает эмуляция VMU в WINCE играх
Схема устройства:
SMPMK2DC schematic_hires.7z (Размер: 1.65 Мб / Загрузок: 109)
Особенности:
1) Очень низкая себестоимость
2) Можно разблокировать экстра блоки в VMU
3) Смена банков VMU по зажатию горячих клавиш на контроллере
Недостатки:
1) из за софтовой эмуляции протокола не работает на разогнанных консолях
2) работают не все PS/2 мыши (частично решено, не работает только одна новодельная мышь)
Немного о эмуляции VMU:
поддерживается только память из серии 25PE, это не моя прихоть, а техническое ограничение
лучше всего искать 25PE16, это максимум при котором будет эмулироваться 16 VMU, к примеру при использовании 25PE80 будет всего 8 VMU, при 25PE40 - четыре и т.д.
Горячие кнопки:
PS1/2:
L1 + R1 + SELECT + LEFT/RIGHT - предыдущий/следующий банк VMU
L1 + R1 + SELECT + X - режим стандартного контроллера (по умолчанию)
L1 + R1 + SELECT + [] - режим всех кнопок и осей
Если контроллер поддерживает силу нажатия, то L2 R2 будут чувствительны к нажатию
SATURN:
L + R + START + LEFT/RIGHT - предыдущий/следующий банк VMU
L + R + START + A - режим стандартного контроллера
L + R + START + X - режим ASCII контроллера + два триггера (по умолчанию)
MegaDrive:
MODE + START + LEFT/RIGHT - предыдущий/следующий банк VMU
MODE + START + A - режим стандартного контроллера
MODE + START + X - режим ASCII контроллера + MODE как кнопка D (по умолчанию)
Клавиатура:
lCTRL + lALT +lSHIFT + PAGE UP/DOWN - предыдущий/следующий банк VMU
Мышь:
левая + правая + средняя кнопки + колесо вверх/вниз - предыдущий/следующий банк VMU
Прошивка для STM32F103C8T6
SMPMK2DC_firmware.7z (Размер: 16.79 Кб / Загрузок: 104)
Программа для чтения/записи VMU банков через USB
VMU Dumper.7z (Размер: 182.15 Кб / Загрузок: 77)
переход в режим USB происходит если подключить адаптер без вставленных джойстиков/клавиатуры/мыши, либо если до подачи питания установить перемычку Boot1 в положение 1
В USB режиме зелёный светодиод будет мигать
ВНИМАНИЕ тип подключенного устройства адаптер определяет при подаче питания, подключать сразу несколько устройств ввода к адаптеру или подключать/отключать во время работы, нельзя