装配 - 鼠标点击第二次尝试不工作

时间:2018-06-04 19:32:27

标签: debugging assembly click mouse interrupt

我需要制作一个生成随机数的程序,并根据数字在随机位置打印一个白色块,我有数字,我有白色块,但是然后用户需要向左按下该块鼠标点击。启动程序时,可以正确按下第一个程序段,但之后程序会立即退出。我在turbo调试器中运行程序,我可以看到,当程序读取中断以获取鼠标位置和状态时,它只是经过这些行并继续。

mouseCheck:
xor bx, bx

; Check x, y of mouse alongside it's status
mov ax, 3h              
int 33h

; Check left mouse click
cmp bx, 01h     

; If left mouse wasn't clicked on, do another mouse click check
jne mouseCheck          

; Adjust CX to range 0-319, to fit screen
shr cx, 1 

; Move one pixel, so the pixel will not be hidden by mouse
sub dx, 1   

; Read pixel info
mov ah, 0Dh             
int 10h

; Check if Pixel is white
cmp al, 15      

; If yes go print another square
je secondaryPrintSquare

0 个答案:

没有答案