Для эксперимента я решил запрограммировать небольшую игру в свой TI-89 с помощью встроенного редактора программ, однако я не могу найти оптимальный способ получения нажатий клавиш без значительной задержки. В настоящее время у меня есть:
Prgm
70→xpos
70→ypos
Loop
If getKey()=340 Then
xpos+3→xpos
PxlCrcl ypos,xpos,5,1
EndIf
If getKey()=337 Then
xpos-3→xpos
PxlCrcl ypos,xpos,5,1
EndIf
If getKey()=257 Then
Goto end
EndIf
EndLoop
Lbl end
EndPrgm
Это создает бесконечный игровой цикл, который проверяет, нажаты ли кнопки влево, вправо или удаление, и рисует круг влево или вправо соответственно или полностью завершает программу. Однако этот метод, кажется, работает очень медленно, и я видел гораздо более плавное движение в других демонстрациях. Что-то не так с моим методом, и если да, то как я могу его улучшить?
getKey()
в переменную, а затем проверить переменную? У меня нет с собой калькулятора, чтобы проверить это, но кажется, что запускgetKey()
несколько раз (по одному для каждого оператораIf
) может замедлить его больше, чем простое тестирование переменной. - person jaysoncopes   schedule 18.05.2015