Важная информация

User Tag List

Страница 7 из 11 ПерваяПервая ... 34567891011 ПоследняяПоследняя
Показано с 61 по 70 из 102

Тема: Джойстики на Векторе-06ц

  1. #61
    Master
    Регистрация
    03.07.2021
    Адрес
    г. Кировск
    Сообщений
    905
    Спасибо Благодарностей отдано 
    76
    Спасибо Благодарностей получено 
    205
    Поблагодарили
    153 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от KTSerg Посмотреть сообщение
    Не помню, когда последний раз пользовался возвратом из подпрограммы по условию...
    Ну, на Спектруме (Z80) условные call и ret довольно распространенная практика. Таблицы там тоже юзают, тут просто суть задачи была максимально сократить код.
    Любые таблицы это дополнительные байты, плюс 16 байт - это лишь кнопки направлений, без кнопок "огонь1" и "огонь2" (или как их принято называть на Векторе).
    Про совмещенную обработку клавы+джойстика - да, в идеале так и делается. metamorpho, полагаю, учтет это в будущем =)
    Его код опроса напоминает обработку бейсик-программы компилятором, но ему простительно, он только учится. Главное - подсказывать, как и что.

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

  3. #62
    Veteran
    Регистрация
    22.02.2014
    Адрес
    г. Курган
    Сообщений
    1,658
    Спасибо Благодарностей отдано 
    226
    Спасибо Благодарностей получено 
    301
    Поблагодарили
    212 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А если в начале сделать инверсию кода, то можно обойтись таблицей в 11 байт, из которых 9 полезных, т.к. одновременное срабатывание контактов вверх и вниз не возможно, а это будут старшие 4 кода, плюс ещё одна комбинация одновременного нажатия вправо/влево.
    Код:
    in 06
    cma
    ani 0F
    ...
    - - - Добавлено - - -

    [QUOTE=reddie;1126966]Ну, на Спектруме (Z80) условные call и ret довольно распространенная практика. ...QUOTE]
    Из-за близости архитектуры процессоров, можно предположить, что использование call и ret с условиями, это вопрос стиля программирования, а не особенность программирования на конкретном железе.

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

    Можно даже без инверсии использовать таблицу в 11 байт, нужно только предусмотреть смещение адреса начала таблицы на 5 байт вниз, т.к. они не будут востребованы.

  4. #63
    Master Аватар для Improver
    Регистрация
    06.02.2018
    Адрес
    г. Волгоград
    Сообщений
    982
    Спасибо Благодарностей отдано 
    441
    Спасибо Благодарностей получено 
    402
    Поблагодарили
    224 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от KTSerg Посмотреть сообщение
    Из-за близости архитектуры процессоров, можно предположить, что использование call и ret с условиями, это вопрос стиля программирования, а не особенность программирования на конкретном железе.
    Подтверждаю. Те же МДОС Т-34, Т-72, РДС имеют в своих исходниках достаточное количество и возвратов по условию, и вызовов продпрограмм.

  5. #64
    Master
    Регистрация
    03.07.2021
    Адрес
    г. Кировск
    Сообщений
    905
    Спасибо Благодарностей отдано 
    76
    Спасибо Благодарностей получено 
    205
    Поблагодарили
    153 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Improver Посмотреть сообщение
    имеют в своих исходниках достаточное количество и возвратов по условию, и вызовов
    Цитата Сообщение от KTSerg Посмотреть сообщение
    использование call и ret с условиями, это вопрос стиля программирования
    Cогласен, это больше вопрос стиля, да и любую программу можно написать тысячью способов.
    Но, учитывая, что Z80 - это 8080 (ВМ80) "на спидах", на нем полет фантазии шире.
    Например, сдвиги любых регистров, индексные регистры и много чего еще. Но это к джойстикам не относится, оффтоп.

  6. #65
    Guru Аватар для nzeemin
    Регистрация
    20.12.2005
    Адрес
    Москва
    Сообщений
    2,001
    Спасибо Благодарностей отдано 
    1,073
    Спасибо Благодарностей получено 
    1,246
    Поблагодарили
    480 сообщений
    Mentioned
    20 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Имеем четыре типа джойстиков. Как они распределялись по популярности/распространённости? То есть, какие прежде всего стоит поддерживать у себя в игре?
    (Пока предварительно считаю, что это Джойтик-П и Джойстик-С.)
    Последний раз редактировалось nzeemin; 12.08.2021 в 11:52.

  7. #66
    Veteran
    Регистрация
    22.02.2014
    Адрес
    г. Курган
    Сообщений
    1,658
    Спасибо Благодарностей отдано 
    226
    Спасибо Благодарностей получено 
    301
    Поблагодарили
    212 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от nzeemin Посмотреть сообщение
    Имеем четыре типа джойстиков. Как они распределялись по популярности/распространённости? То есть, какие прежде всего стоит поддерживать у себя в игре?
    (Пока предварительно считаю, что это Джойтик-П и Джойстик-С.)
    Джойстики "П" и "С" - это фактически аппаратные паты джойстиков, либо для игр на два игрока, либо предусматривать выбор не только типа Джойстика, но и конкретного джойстика ид пары - для корректности... если в игре обрабатывается/используется только один джойстик.
    Причём нужно помнить, что Джойстик-С - это фишка .02-го Вектора.
    Если в игру вставляется выбор джойстиков, воткнуть ещё и УСПИД - по идее не должно представлять особой проблемы.

  8. #67
    Guru Аватар для svofski
    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,121
    Спасибо Благодарностей отдано 
    803
    Спасибо Благодарностей получено 
    662
    Поблагодарили
    407 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А нельзя опрашивать сразу П, С и УСПИД? Или, если почему-то возникает конфликт, ждать что первым будет потрогано и на основе этого делать выбор контроллера.
    Больше игр нет

  9. #68
    Veteran
    Регистрация
    22.02.2014
    Адрес
    г. Курган
    Сообщений
    1,658
    Спасибо Благодарностей отдано 
    226
    Спасибо Благодарностей получено 
    301
    Поблагодарили
    212 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от svofski Посмотреть сообщение
    А нельзя опрашивать сразу П, С и УСПИД? Или, если почему-то возникает конфликт, ждать что первым будет потрогано и на основе этого делать выбор контроллера.
    На ПУ может не быть Джойстика, но при его опросе, может быть принят "шум" от чего-то висящего на "ПУ"... там много чего может быть подключено... кроме Джойстиков

  10. #69
    Guru Аватар для svofski
    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,121
    Спасибо Благодарностей отдано 
    803
    Спасибо Благодарностей получено 
    662
    Поблагодарили
    407 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А что например может там так шуметь, постоянно дергая биты без провокации?
    Больше игр нет

  11. #70
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,863
    Спасибо Благодарностей отдано 
    658
    Спасибо Благодарностей получено 
    1,854
    Поблагодарили
    1,059 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Можно детектировать .02 или 6128, что автоматом даст -С. Инициализируем и опрашиваем -П, если там 1 во всех битах кнопок и направлений, то считая, что пользователь в данный момент не трогает джойстик, дальше можем опрашивать -П (если джойстика там нет - ничего страшного, главное чтобы значения порта не менялись и в битах джойстика оставались 1). -С и -П легко опрашивать параллельно, только надо отключить соответствующие inы (заменить на mvi a,), если -С или -П не обнаружены.

Страница 7 из 11 ПерваяПервая ... 34567891011 ПоследняяПоследняя

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

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

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

Похожие темы

  1. Биперная музыка на Векторе-06Ц
    от ivagor в разделе Вектор
    Ответов: 299
    Последнее: 30.06.2023, 21:10
  2. Эмулятор "ZX Spectrum 48" на "Векторе-06Ц"
    от Tim0xA в разделе Вектор
    Ответов: 31
    Последнее: 27.12.2022, 21:40
  3. Ответов: 18
    Последнее: 11.04.2021, 10:54
  4. Картинки демок Amstrad на векторе
    от yur в разделе Вектор
    Ответов: 13
    Последнее: 14.03.2016, 08:25
  5. Катинки С64 на Векторе
    от yur в разделе Вектор
    Ответов: 6
    Последнее: 13.03.2016, 15:40

Ваши права

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