*等待*按键并获取其矩阵或PETSCII代码的简单方法?

问题描述

我发现了一些与获取按键/行相关的 BASIC 和 KERNAL 函数和内存地址,但是我怎么能简单地等待按键并获取代码?我想暂停执行,并在按下一个键后恢复。我不希望它们在执行过程中排队。

解决方法

原则是使用非阻塞调用,一直调用直到拿到key。

在汇编程序中,您可以在 GETIN 处使用内核函数 $FFE4

WAIT_KEY
    jsr $FFE4        ; Calling KERNAL GETIN 
    beq WAIT_KEY     ; If Z,no key was pressed,so try again.
                     ; The key is in A

在 BASIC 中,您可以使用 GET

10 GET A$:IF A$="" GOTO 10:REM WAIT FOR KEY
20 PRINT A$

上面我使用了空格以使其更具可读性,但空格不是必需的(它们使用内存并需要时间来处理。它可以写成:

10 GETA$:IFA$=""GOTO10
20 PRINTA$

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...