2016-12-17 99 views
1

操作碼FX0A的描述是:芯片8中的FX0A操作碼(等待按鍵)。如果一個鍵已經被按下,我是否需要考慮它是一個按鍵?

Wait for a keypress and store the result in register VX 

我的問題是,如果一個鍵已經按住,而操作碼之稱,是它認爲一個按鍵?或者在鍵被釋放然後再次按下之前它不會被視爲按鍵?

換句話說,我是否需要等到某個鍵的值被按下,或者直到從not_pressed設置值被按下爲止?

+0

在我看來,這使功能差異很小。也許可以嘗試兩種方式來實現,並測試玩遊戲時哪個人感覺正確。我會說你應該等待壓抑和再次按下,但這是我看到一些老的控制檯遊戲時的感覺。 – zubergu

+0

我已經問過[Retrocomputing.SE]中的類似問題(http://retrocomputing.stackexchange.com/q/358/115),並根據最初的CHIP-8解釋程序得到了一個很好的詳細答案。 「因此,根據這一點,如果在鍵已被按下時執行'Fx0A'指令,則指令將等待直到該鍵被釋放,然後它將返回寄存器'Vx'中的鍵代碼。」 – Cactus

回答

1

Fx0A - LD Vx的,K 等待一個按鍵,存儲在Vx的關鍵價值。所有執行都將停止,直到按下某個鍵,然後該鍵的 值存儲在Vx中。

Source

如果我們把這個從字面上看,「等按鍵」將意味着以前沒有投入,但只是等待在這裏和現在的關鍵。

雖然也許你應該只是在你的應用程序中配置它。