User Tag List

Страница 59 из 67 ПерваяПервая ... 555657585960616263 ... ПоследняяПоследняя
Показано с 581 по 590 из 661

Тема: Еще один Орион на ПЛИС

  1. #581

    Регистрация
    20.06.2005
    Адрес
    Светлогорск
    Сообщений
    885
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    23
    Поблагодарили
    20 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Кстати, такой вопрос по клавиатурам в Орион-е: опрос ведётся фиксированным драйвером или в некоторых программах/играх используется свой драйвер?
    Сейчас я эмулирую только вариант клавиатуры MC7007 с опросом по столбцам (порт B и первая половина C). Если делать и обратную (с опросом по порту А), тогда логика эмуляции усложнится =/

    PS: Клавиатура сейчас успевает отреагировать на сканирование последовательными командами out/in. Как понимаю, с использованием адресации как к ячейкам памяти, скорость только уменьшится...
    "Байт-48"

  2. #582

    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,581
    Спасибо Благодарностей отдано 
    64
    Спасибо Благодарностей получено 
    112
    Поблагодарили
    97 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от andreil Посмотреть сообщение
    Кстати, такой вопрос по клавиатурам в Орион-е: опрос ведётся фиксированным драйвером или в некоторых программах/играх используется свой драйвер?
    Сейчас я эмулирую только вариант клавиатуры MC7007 с опросом по столбцам (порт B и первая половина C). Если делать и обратную (с опросом по порту А), тогда логика эмуляции усложнится =/

    PS: Клавиатура сейчас успевает отреагировать на сканирование последовательными командами out/in. Как понимаю, с использованием адресации как к ячейкам памяти, скорость только уменьшится...

    Опрос всегда в одну сторону (там же диоды, выход 8 бит, 11 входов для УКНЦ), все линии могут опрашиваться одновременно. А вот опрос по ячейкам памяти может быть почти вдвое быстее чем по портам - в режиме Ориона-128 с косвенной адресацией, пример с потолка:

    ld de, portB
    ld hl, portC
    ld bc, portA
    ld a,scаncode
    ld (bc),a
    ld a,(de)
    ld b,(hl)
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  3. #583

    Регистрация
    20.06.2005
    Адрес
    Светлогорск
    Сообщений
    885
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    23
    Поблагодарили
    20 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Опрос всегда в одну сторону (там же диоды, выход 8 бит, 11 входов для УКНЦ), все линии могут опрашиваться одновременно.
    фух, слава богу Иначе пришлось бы делать опциональный переворот матрицы в зависимости от назначения порта А - сейчас выход вычисляется как построчный OR для сочетания "строка матрицы" и "скан-код". Такое решение максимально быстрое и позволяет опрашивать любое число столбцов сразу. Только реализацию надо чуть ускорить - пока что сделал немного "в лоб" и при неудачном стечении обстоятельств может не успеть среагировать.
    Цитата Сообщение от Error404 Посмотреть сообщение
    А вот опрос по ячейкам памяти может быть почти вдвое быстее чем по портам - в режиме Ориона-128 с косвенной адресацией, пример с потолка:

    ld de, portB
    ld hl, portC
    ld bc, portA
    ld a,scаncode
    ld (bc),a
    ld a,(de)
    ld b,(hl)
    Глянул в справочник:

    • OUT r, (C) - 12 T-States
    • IN A, X - 11 T-States
    • LD (bc), a - 7 T-States
    • LD a, (de) - 7 T-States
    • LD r, (hl) - 7 T-States

    Таки да, надо будет ужимать по времени максимально. Подумаю над этим вопросом завтра

    - - - Добавлено - - -

    Цитата Сообщение от Error404 Посмотреть сообщение
    Опрос всегда в одну сторону (там же диоды, выход 8 бит, 11 входов для УКНЦ), все линии могут опрашиваться одновременно.
    Просто в эмуляторе видел раскладку питерскую, где сканоды гнались в порт А, а выход читался из В и части С.
    "Байт-48"

  4. #584

    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,581
    Спасибо Благодарностей отдано 
    64
    Спасибо Благодарностей получено 
    112
    Поблагодарили
    97 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от andreil Посмотреть сообщение
    Просто в эмуляторе видел раскладку питерскую, где сканоды гнались в порт А, а выход читался из В и части С.
    Мдя. Кстати, питерская схема - более правильная, т.к. совместима по включению с РК-86. Её я и имел в виду. Не знаю как в ПРО подключали МС7007. Лучше эмулировать клаву РК86, она универсальная, с МС7007 и несовместимым включением авторы накосячили КМК.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  5. #585

    Регистрация
    20.06.2005
    Адрес
    Светлогорск
    Сообщений
    885
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    23
    Поблагодарили
    20 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    Мдя. Кстати, питерская схема - более правильная, т.к. совместима по включению с РК-86. Её я и имел в виду. Не знаю как в ПРО подключали МС7007. Лучше эмулировать клаву РК86, она универсальная, с МС7007 и несовместимым включением авторы накосячили КМК.
    Как совместимы? В твоём эмуляторе для обоих вариантов MC7007 вижу массив клавиш 8*11.
    Скорее всего, ну её в пень, МС7007, и сделать RK86-only? В этом варианте, как понимаю, порт А 100% только на вход работает, так?
    "Байт-48"

  6. #586

    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,581
    Спасибо Благодарностей отдано 
    64
    Спасибо Благодарностей получено 
    112
    Поблагодарили
    97 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от andreil Посмотреть сообщение
    Как совместимы? В твоём эмуляторе для обоих вариантов MC7007 вижу массив клавиш 8*11.
    Скорее всего, ну её в пень, МС7007, и сделать RK86-only? В этом варианте, как понимаю, порт А 100% только на вход работает, так?
    Да, лучше РК86, она одинаково включена во всех вариантах. Если смотреть со стороны Ориона, то в варианте РК в порт А (F400) пишется сканкод, а с портов B (результат) и половинки С (ctrl+shift+ruslat) идет чтение.

    Массив УКНЦ везде 8х11, это понятно, клава то одинаковая, а вот включена по-разному: в Питерском варианте для Ориона-128 она ставится по порту так же как и в РК86 (Орион пишет в А читает с ВС), а в авторском (как для ориона128 так и ПРО) - УКНЦ поставили шиворотнавыворот (Орион пишет в В читает с АС) при том что РК86 у них же всегда ставится как и обычно (А, ВС).
    Последний раз редактировалось Error404; 12.09.2018 в 08:58.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

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

  8. #587

    Регистрация
    20.06.2005
    Адрес
    Светлогорск
    Сообщений
    885
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    23
    Поблагодарили
    20 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    а в авторском (как для ориона128 так и ПРО) - УКНЦ поставили шиворотнавыворот (Орион пишет в В читает с АС) при том что РК86 у них же всегда ставится как и обычно (А, ВС).
    Вообще-то в ПРО (версия прошивки 321) пишется в ВС, читается А. Вот участок опроса, используемый в меню (взято с версии 210, но не менялось с тех пор):
    Код:
    ROM:165F loc_165F:                               
    ROM:165F                 ld      a, l
    ROM:1660                 out     (19h), a
    ROM:1662                 ld      a, h
    ROM:1663                 out     (1Ah), a
    ROM:1665                 in      a, (18h)
    ROM:1667                 cp      0FFh
    ROM:1669                 jr      z, loc_16B4
    ROM:166B                 ld      b, a
    ROM:166C                 ld      a, (loc_FF6D)
    "Байт-48"

  9. #588

    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,581
    Спасибо Благодарностей отдано 
    64
    Спасибо Благодарностей получено 
    112
    Поблагодарили
    97 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от andreil Посмотреть сообщение
    Вообще-то в ПРО (версия прошивки 321) пишется в ВС, читается А. Вот участок опроса, используемый в меню (взято с версии 210, но не менялось с тех пор):
    Ну, это всё кардинально меняет.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  10. #589

    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,926
    Спасибо Благодарностей отдано 
    105
    Спасибо Благодарностей получено 
    291
    Поблагодарили
    217 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от andreil Посмотреть сообщение
    Вот участок опроса, используемый в меню
    У меня в эмуляторе работает другой участок, по адресу 16E0h. Там в А пишется, а из В читается. Конфигурация - для клавы РК-86.

  11. #590

    Регистрация
    20.06.2005
    Адрес
    Светлогорск
    Сообщений
    885
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    23
    Поблагодарили
    20 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от b2m Посмотреть сообщение
    У меня в эмуляторе работает другой участок, по адресу 16E0h. Там в А пишется, а из В читается. Конфигурация - для клавы РК-86.
    Ну, я как бы писал про клавиатуру МС7007
    А сейчас - да, перевёл на РК86. Ну и делаю много оптимизаций по быстродействию - пишу обработчик на АСМе...
    "Байт-48"

Страница 59 из 67 ПерваяПервая ... 555657585960616263 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Эмулятор ZX-Poly
    от Raydac в разделе Эмуляторы
    Ответов: 109
    Последнее: 07.12.2024, 21:42
  2. ОРИОН-2010 на ПЛИС.
    от Ewgeny7 в разделе Орион
    Ответов: 447
    Последнее: 23.11.2016, 12:27
  3. Еще один Ленинград 48
    от Ewgeny7 в разделе Ленинград
    Ответов: 0
    Последнее: 16.10.2007, 22:31
  4. Ещё один Д.Р.
    от GNTB в разделе Поздравления
    Ответов: 4
    Последнее: 19.07.2006, 01:52
  5. Ещё один подраздел
    от CityAceE в разделе Форум
    Ответов: 2
    Последнее: 22.05.2005, 11:57

Ваши права

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