User Tag List

Страница 1 из 3 123 ПоследняяПоследняя
Показано с 1 по 10 из 22

Тема: Периферийный контроллер для Скорпиона с поддержкой USB

  1. #1

    Регистрация
    16.06.2022
    Адрес
    г. Щелково
    Сообщений
    16
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    30
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Периферийный контроллер для Скорпиона с поддержкой USB

    Добрый день.

    Решил я тут, в порядке самообразования, сделать периферийный контроллер для своего скорпиона.
    Конструкция уже, в принципе, уже живет и работает, да и в ТГ приняли благосклонно.

    Потому публикую здесь, может кому и пригодится тоже.

    Уже реализовано:
    - USB-хост: поддержка клавиатур, HID мышей, HID джойстиков/геймпадов, USB хабов
    - USB-устройство: подключается к PC (сейчас для отладки), возможно взаимодействие PC со Spectrum
    - Безвейтовая ZX-клавиатура с произвольными раскладками (в ПЗУ)
    - Reset, Magic с клавиатуры
    - USB джойстик превращается на Kempston Joystick
    - Регенерация синхросмеси. Никаких больше перемычек/разрезов на плате. PAL кодер теперь дает нормальный цветной сигнал
    - С доп. платой (в слот шины) USB мышь превращается в Kempston mouse
    - Транзитом передает на гребенки: RGB сигнал (с выбором джампером оригинальная/регенерированная синхросмесь), стерео-аудио, моно-аудио, оригинальный видео сигнал, магнитофонный вход/выход
    - Единая точка подключения питания
    - Транзитное подключение внешнего джойстика (от Spectrum)
    - Управление/индикация на клавиатуре турбой через двухпиновую колодку скорпиона. Настраиваемая клавиша управления турбой. Настраиваемый индикатор статуса турбы на клавиатуре.
    - Настраиваемое отображение кнопок USB джойстика на кнопки ZX клавиатуры/Kempston Joystick (до 16 кнопок включая направления)
    - Обмен кнопок мыши комбинацией клавиш клавиатуры

    Планируется:
    - Поддержка нескольких джойстиков/геймпадов
    - Проигрыватель tap/tzx с PC через USB порт в Спектрум (`LOAD ""`)
    - Захват centronix
    - Управление/индикация на клавиатуре турбой через двухпиновую колодку скорпиона.
    - Настройки контроллера (раскладки, мышь, джойстик) через доп. плату нативным приложением для скорпиона
    - Настраиваемое отображение кнопок USB джойстика на кнопки ZX клавиатуры/Kempston Joystick

    ! Обновление

    Как показал опыт - многие пользуются автономными контроллерами PS/2 и освобождать периферийный разъем не хотят.
    Специально для таких случаев сделана ревизия С - автономный контроллер USB клавиатуры и геймпада, подключаемый к входам стандартной клавиатуры любого спектрума. PS/2 клавиатура может быть легко заменена на USB без необходимости изменять что-то в подключении компьютера.

    Репозиторий на github:
    https://github.com/psk7/scorpion-card-pub

    Нажмите на изображение для увеличения. 

Название:	20220615_224237.jpg 
Просмотров:	426 
Размер:	38.2 Кб 
ID:	77456 Нажмите на изображение для увеличения. 

Название:	revC.jpg 
Просмотров:	323 
Размер:	64.7 Кб 
ID:	78299
    Последний раз редактировалось psk; 07.01.2023 в 20:29. Причина: Обновлен список реализованных задач

    Эти 19 пользователя(ей) поблагодарили psk за это полезное сообщение:

    Alex_NEMO(26.06.2022), ALS(17.06.2022), Andrey_Ko(13.01.2023), CityAceE(16.06.2022), Cooper(17.06.2022), Dima_ZX(10.04.2023), Djoni(16.06.2022), fifan(10.01.2023), Froggy(06.05.2023), Grand(17.06.2022), Gutten(16.06.2022), Outcast(08.01.2023), Quarx(01.08.2023), reddie(17.06.2022), Romych(10.04.2023), SERGEY256(16.06.2022), vg_alex(11.03.2023), Xela(16.06.2022), ZXFanat(31.01.2023)

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2

    Регистрация
    03.07.2021
    Адрес
    г. Кировск
    Сообщений
    922
    Спасибо Благодарностей отдано 
    87
    Спасибо Благодарностей получено 
    211
    Поблагодарили
    156 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от psk Посмотреть сообщение
    Настраиваемое отображение кнопок USB джойстика на кнопки ZX клавиатуры
    Было бы отлично. Давно пора отказаться от привязки к Кемпстону и дать игрокам/игроделам новые возможности.
    Реализовал нечто подобное через подключение к пинам матричной клавы, но нужно больше путей реализации, чтобы новшество прижилось.
    Пусть в данном виде контроллер только для Скорпиона, но уже хорошо. Дело пошло =)

  4. #3

    Регистрация
    16.06.2022
    Адрес
    г. Щелково
    Сообщений
    16
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    30
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Список рализованных возможностей обновлен.

    Цитата Сообщение от psk Посмотреть сообщение
    - Управление/индикация на клавиатуре турбой через двухпиновую колодку скорпиона. Настраиваемая клавиша управления турбой. Настраиваемый индикатор статуса турбы на клавиатуре.
    - Настраиваемое отображение кнопок USB джойстика на кнопки ZX клавиатуры/Kempston Joystick (до 16 кнопок включая направления)
    - Обмен кнопок мыши комбинацией клавиш клавиатуры

    Эти 3 пользователя(ей) поблагодарили psk за это полезное сообщение:

    Alex_NEMO(26.06.2022), SERGEY256(25.06.2022), Xela(24.06.2022)

  5. #4

    Регистрация
    16.06.2022
    Адрес
    г. Щелково
    Сообщений
    16
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    30
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Как показал опыт - многие пользуются автономными контроллерами PS/2 и освобождать периферийный разъем не хотят.
    Специально для таких случаев сделана ревизия С - автономный контроллер USB клавиатуры и геймпада, подключаемый к входам стандартной клавиатуры любого спектрума. PS/2 клавиатура может быть легко заменена на USB без необходимости изменять что-то в подключении компьютера.

    Подробности в первом посте.

    Нажмите на изображение для увеличения. 

Название:	revC.jpg 
Просмотров:	143 
Размер:	64.7 Кб 
ID:	78300

    Эти 5 пользователя(ей) поблагодарили psk за это полезное сообщение:

    Dima_ZX(10.04.2023), Gutten(08.01.2023), izzx(08.01.2023), SERGEY256(07.01.2023), Xela(07.01.2023)

  6. #5

    Регистрация
    23.04.2020
    Адрес
    г. Тотьма
    Сообщений
    906
    Спасибо Благодарностей отдано 
    273
    Спасибо Благодарностей получено 
    343
    Поблагодарили
    182 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    На обеих ревизиях разъём USB один? По фото не понятно куда джой подключать.
    И в ревизии C переназначать до 16 кнопок джойстика тоже можно?

    Скрытый текст


    https://drive.google.com/drive/folde...xZ83juCuaBe32I

    Scorpion ZS 256 Turbo+/GMX 2MB/SMUC v1.3 OP/CF-IDE 2GB/TS ARM/Covox #DD/FDD 5'25/FDD 3'5/AT Kbrd & Mouse Ctrl v2.5/Universal PS/2 Kbrd Ctrl/ZX WiFi
    Leningrad 1/Sega Joy Adapter
    DivGMX
    ZX Spectrum +2A
    ZX Evolution rev. C

    TCK Computer 486DX2-66/512K Tridend 9000i/8MB SIMM72/CF-IDE 512MB/ESS 1869/CNet CN200/FDD 5'25/FDD 3'5
    [свернуть]

  7. #6

    Регистрация
    16.06.2022
    Адрес
    г. Щелково
    Сообщений
    16
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    30
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от izzx Посмотреть сообщение
    На обеих ревизиях разъём USB один? По фото не понятно куда джой подключать.
    И в ревизии C переназначать до 16 кнопок джойстика тоже можно?
    В обоих версиях джойстик/клавиатура/мышь могут быть подключены одновременно через USB хаб. В revA - для подключения USB используется 4 контактная гребенка, в revC - стандартный TYPE A разъем.
    Кнопки джойстика все переназначаемые, но, т.к. у revC нет полноценной двухсторонней связи со спеком, сделать переназначение приложением на самом спеке затруднительно.
    Есть несколько вариантов для revC:
    - приложение для PC, формирующее конфигурационный файл для прошивки в EEPROM
    - каким-то образом сделать переназначение с клавиатуры (например нажимаем спец. комбинацию - мигают все индикаторы - нажимаем кнопку на геймпаде и желаемую кнопку на клавиатуре)

    зы. revA заменена на revB (немного меньше размером, и на другом контроллере, т.к. 1КБ ОЗУ у ATmega32u2 для всего не хватает). revB выложу на github позже.

    Этот пользователь поблагодарил psk за это полезное сообщение:

    izzx(10.01.2023)

  8. #7

    Регистрация
    30.05.2007
    Адрес
    г. Лянтор, Сургутского р-на, ХМАО
    Сообщений
    4,436
    Спасибо Благодарностей отдано 
    163
    Спасибо Благодарностей получено 
    190
    Поблагодарили
    121 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Я не кикадчик, нельзя ли схему в pdf/графическом форме лицезреть?

  9. #8

    Регистрация
    16.06.2022
    Адрес
    г. Щелково
    Сообщений
    16
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    30
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от fifan Посмотреть сообщение
    Я не кикадчик, нельзя ли схему в pdf/графическом форме лицезреть?
    Добавил схему в PDF в репозиторий

  10. #9

    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    14,292
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    202
    Спасибо Благодарностей получено 
    1,456
    Поблагодарили
    946 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    а как обстоит дело с обработкой одновременного нажатия нескольких клавиш ?
    (в основном это применяется для активации всяких фирменных читов в играх)
    например нажать одновременно "TURBO" получиться ?
    .........
    вот хороший/наглядный тест для устройств ввода
    https://spectrumcomputing.co.uk/pub/...onV3.1.tap.zip
    Последний раз редактировалось goodboy; 10.01.2023 в 14:36.

  11. #10

    Регистрация
    16.06.2022
    Адрес
    г. Щелково
    Сообщений
    16
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    30
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от goodboy Посмотреть сообщение
    а как обстоит дело с обработкой одновременного нажатия нескольких клавиш ?
    (в основном это применяется для активации всяких фирменных читов в играх)
    например нажать одновременно "TURBO" получиться ?
    .........
    вот хороший/наглядный тест для устройств ввода
    https://spectrumcomputing.co.uk/pub/...onV3.1.tap.zip
    С одновременным нажатием кнопок есть тонкость.
    Дело в том, что большинство дешевых ширпотребных USB клавиатур сами по себе имеют ограничения на количество одновременно нажатых клавиш (описано, например, здесь) вытекающих из их схемотехники. Это, как я подозреваю, относится также и к PS/2 клавиатурам.
    У контроллера самого по себе с этим никаких проблем нет, ПЛМ честно хранит состояние всех 40 кнопок и честно их отдает спеку.
    Так что, если конкретная клавиатура способна отдать нужную комбинацию одновременно нажатых клавиш - к спеку они тоже нормально придут.

    Этот пользователь поблагодарил psk за это полезное сообщение:

    goodboy(10.01.2023)

Страница 1 из 3 123 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 34
    Последнее: 24.11.2022, 16:05
  2. Контроллер USB клавиатуры
    от andreil в разделе Устройства ввода
    Ответов: 99
    Последнее: 24.02.2019, 17:25
  3. Ответов: 6
    Последнее: 05.03.2014, 14:05
  4. USB контроллер матрицы клавиатуры.
    от fan в разделе Устройства ввода
    Ответов: 2
    Последнее: 25.07.2007, 00:43
  5. Контроллер клавиатуры для Скорпиона
    от Nikolaj Amosov (500:812/02.26) в разделе Scorpion
    Ответов: 1
    Последнее: 15.11.2005, 23:05

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •