User Tag List

Страница 107 из 110 ПерваяПервая ... 103104105106107108109110 ПоследняяПоследняя
Показано с 1,061 по 1,070 из 1094

Тема: ЭТЮДЫ

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

    По умолчанию

    Что вы все имеете в виду под мертвой зоной? Когда число изначально "неправильное" (выходит за нужный предел) ? Это уже проблемы программиста =)

  2. #1062
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,870
    Спасибо Благодарностей отдано 
    661
    Спасибо Благодарностей получено 
    1,866
    Поблагодарили
    1,063 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от 0xDEAD Посмотреть сообщение
    Эти варианты имеют разную длительность. В первоначальном, 14-летней давности посте, это подчёркивалось.
    Выровнять не сложно, но получается громоздко. Для примера декремент (инкремент можно сделать аналогично)
    Код:
    	sub x+1
    	jr c,$+6
    	add a,x
    	jr $+6
    	ld a,x
    	jr nc,$

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

    По умолчанию

    В общем, чтобы избежать пресловутой "мертвой зоны" (если я правильно вас понял), когда число вне диапазона, то вариант от ivagor самое то.
    Если же число задано корректно и постепенно приближается к порогу, то выравнивание по тактам делается весьма просто:

    Код:
    увеличение:
    CHECK_UP	CP	x
    		ADC	A,0
    PROFIT		...
    
    уменьшение:
    CHECK_DN	CP	x+1
    		CCF
    		SBC	A,0
    PROFIT		...
    Единственное ограничение для декремента - не получится задать число 255 (255+1=0), флаг всегда будет сброшен. Но такой счетчик сам по себе лишен смысла.

  4. #1064
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,870
    Спасибо Благодарностей отдано 
    661
    Спасибо Благодарностей получено 
    1,866
    Поблагодарили
    1,063 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от reddie Посмотреть сообщение
    выравнивание по тактам делается весьма просто
    В CHECK_DN можно заменить ccf/ sbc a,0 на adc a,-1 и тогда получатся полные аналоги исходных вариантов по размеру и скорости.

  5. #1065
    Member
    Регистрация
    18.07.2021
    Адрес
    г. Хмельницкий, Украина
    Сообщений
    100
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    31
    Поблагодарили
    24 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Нужна подпрограмма опроса клавиатуры. Всё, что я везде встречал - процедуры опроса для игр, где опрашивается 1-2-5 клавиш, игнорируются SS и CS, нет задержки перед автоповтором, и вообще - не предназначены для текстового редактора или хотя бы для текстового поля ввода.
    Стоит ли изобретать велосипед, или не заморачиваться, и использовать в процедуре обработки прерываний jp 56 , и не парить мозг?

  6. #1066
    Master Аватар для Sandro
    Регистрация
    20.01.2010
    Адрес
    г. Зеленоград
    Сообщений
    590
    Спасибо Благодарностей отдано 
    27
    Спасибо Благодарностей получено 
    212
    Поблагодарили
    115 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Думаё, её будет проще написать, чем приспосабливать что-то чужое

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

  8. #1067
    Guru Аватар для jerri
    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,763
    Спасибо Благодарностей отдано 
    287
    Спасибо Благодарностей получено 
    293
    Поблагодарили
    220 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от 0xDEAD Посмотреть сообщение
    Нужна подпрограмма опроса клавиатуры. Всё, что я везде встречал - процедуры опроса для игр, где опрашивается 1-2-5 клавиш, игнорируются SS и CS, нет задержки перед автоповтором, и вообще - не предназначены для текстового редактора или хотя бы для текстового поля ввода.
    Стоит ли изобретать велосипед, или не заморачиваться, и использовать в процедуре обработки прерываний jp 56 , и не парить мозг?
    Это уже не Этюды. Это серьезное поделие.
    С уважением,
    Jerri / Red Triangle.

  9. #1068
    Member
    Регистрация
    18.07.2021
    Адрес
    г. Хмельницкий, Украина
    Сообщений
    100
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    31
    Поблагодарили
    24 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sandro Посмотреть сообщение
    Думаё, её будет проще написать, чем приспосабливать что-то чужое
    Не, ну она ж уже написана, и уже сидит в ПЗУ. Может просто, где-то есть покороче/побыстрее/пооптимальнее - процедуры ПЗУ ж и бейсиком используются, следовательно, можно было бы многое выбросить и/или упростить. А может, это и не критично.

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

    Цитата Сообщение от jerri Посмотреть сообщение
    Это уже не Этюды. Это серьезное поделие.
    Тоже так думаю. Следовательно - пусть себе jp 56 живёт, и процветает.
    Последний раз редактировалось 0xDEAD; 10.09.2022 в 15:11.

  10. #1069
    Guru Аватар для jerri
    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,763
    Спасибо Благодарностей отдано 
    287
    Спасибо Благодарностей получено 
    293
    Поблагодарили
    220 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от reddie Посмотреть сообщение
    В общем, чтобы избежать пресловутой "мертвой зоны" (если я правильно вас понял), когда число вне диапазона, то вариант от ivagor самое то.
    Если же число задано корректно и постепенно приближается к порогу, то выравнивание по тактам делается весьма просто:

    Код:
    увеличение:
    CHECK_UP	CP	x
    		ADC	A,0
    PROFIT		...
    
    уменьшение:
    CHECK_DN	CP	x+1
    		CCF
    		SBC	A,0
    PROFIT		...
    Единственное ограничение для декремента - не получится задать число 255 (255+1=0), флаг всегда будет сброшен. Но такой счетчик сам по себе лишен смысла.
    Код:
          sub n+1
          adc a,n
    не?
    С уважением,
    Jerri / Red Triangle.

  11. #1070
    Member
    Регистрация
    18.07.2021
    Адрес
    г. Хмельницкий, Украина
    Сообщений
    100
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    31
    Поблагодарили
    24 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    https://worldofspectrum.org/forums/d...amework#latest
    Какой-то гражданин решил написать консоль для Спектрума. Ну и заодно написал свою процедуру опроса клавиатуры.

Страница 107 из 110 ПерваяПервая ... 103104105106107108109110 ПоследняяПоследняя

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

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

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

Похожие темы

  1. Этюды: как бы написать поизящнее.
    от AndTorp в разделе Программирование
    Ответов: 5
    Последнее: 17.03.2008, 00:43
  2. Ответов: 0
    Последнее: 18.08.2006, 22:40
  3. Этюды: печать шрифтом 5x5...
    от breeze в разделе Программирование
    Ответов: 12
    Последнее: 27.03.2005, 05:21

Метки этой темы

Ваши права

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