在DOS中获取键盘输入而没有回声

KatomPower

我正在制作“四人连线”游戏。

播放器必须输入1-4之间的数字,以便光盘将落入其中一列。我目前正在第一栏上工作。问题是您可以输入任何字符,并且该字符可以工作(仅当您按“ 1”时才需要工作),而我不知道如何解决该问题。

而且,数字出现在屏幕的左侧。当我输入不显示在屏幕上的数字时,该如何做呢?

PlayerOneTurn:
    cmp [Player1Turn], 255
    je Player1Pressed1

Player1Pressed1:
    mov ah, 1
    int 21h
    cmp al, 31h
    je Player1Check1

Player1Check1:
    cmp [FirstColumnArray], 0
    inc [FirstColumnArray]
    je DrawPlayer1Disc
    cmp [FirstColumnArray + 1], 0
    inc [FirstColumnArray]
    je DrawPlayer1Disc
    cmp [FirstColumnArray + 2], 0
    inc [FirstColumnArray]
    je DrawPlayer1Disc
    cmp [FirstColumnArray + 3], 0
    inc [FirstColumnArray]
    je DrawPlayer1Loop

DrawPlayer1Loop:
    mov bh,0h
    mov cx,[Player1Draw1x]
    mov dx,[Player1Draw1y]
    mov al,[player1disccolor]
    mov ah,0ch
    int 10h
    inc [Player1Draw1x]
    cmp cx, 38h
    jl DrawPlayer1Loop

DrawPlayer1Disc: 
    mov bh, 0h
    inc [Player1Draw1y]
    mov [Player1Draw1x], 25h
    cmp dx, 09Bh
    jl DrawPlayer1Loop

运行时,我的项目如下所示:

对象的图片

菲佛尼克
mov ah, 1
int 21h
cmp ah, 31h

您使用的DOS函数在AL寄存器中产生结果!
cmp al, 31h比较的“1”按键。

要使屏幕上回显输入,请使用DOS功能7代替1。

mov ah, 7
int 21h
cmp al, 31h

Player1Pressed1:
 mov ah, 1
 int 21h
 cmp al, 31h
 je Player1Check1
Player1Check1:

使用此代码,您始终可以在Player1Check1上执行该代码当输入不为“ 1”时,您需要跳开它。添加一个jmp

Player1Pressed1:
 mov ah, 1
 int 21h
 cmp al, 31h
 je Player1Check1
 jmp ELSEWHERE_YOU_KNOW_WHERE_THIS_IS
Player1Check1:

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

C中的连续键盘输入

来自分类Dev

带有摆动Java的键盘输入

来自分类Dev

在C#中模拟键盘输入

来自分类Dev

Windows Phone 8.1通用应用程序中没有建议的键盘输入范围

来自分类Dev

尝试从键盘输入中获取有效的整数

来自分类Dev

更新到Qt5后,在Qt Creator中没有键盘输入

来自分类Dev

Android Lollipop无法获取键盘输入

来自分类Dev

如何在Eto中捕获没有文本框的键盘输入

来自分类Dev

使用conio.h在c中获取键盘输入

来自分类Dev

在EditText中阻止物理键盘输入

来自分类Dev

在DOS中获取键盘输入而没有回声

来自分类Dev

如何禁用DateTimePicker中的键盘输入?

来自分类Dev

键盘输入,键盘输入,按键和输入事件之间有什么区别?

来自分类Dev

如何在javaScript中获取多个键盘输入

来自分类Dev

有没有更简单的方法让键盘输入返回一个字符(SFML)?

来自分类Dev

不断获取键盘代码,而不是从Java中的键盘输入字符

来自分类Dev

GLUT中的流体键盘输入?

来自分类Dev

带有键盘输入的下拉菜单

来自分类Dev

在将键盘输入到编辑框中之前,如何截取键盘输入?

来自分类Dev

OpenGL键盘输入

来自分类Dev

如何在VBScript中获取“ CTRL L”命令的键盘输入

来自分类Dev

摆弄xkb时杀死了所有键盘输入

来自分类Dev

停止键盘输入?

来自分类Dev

在python中从键盘输入

来自分类Dev

在Linux中读取键盘输入

来自分类Dev

当窗口最小化时,pygame有没有办法获取键盘输入?

来自分类Dev

无法从R中的键盘输入数据

来自分类Dev

键盘输入暂停

来自分类Dev

用键盘输入日期只是数字,没有不必要的操作