Está en la página 1de 2

IZQ EQU 0

DER EQU 1
CEN EQU 2
;---------------- Segmento de datos ----------------
DSEG SEGMENT PARA PUBLIC 'DATA'
SMS DB '# veces BOTON IZQUIERDO',0AH, 0DH,'$'
SMS1 DB '# veces BOTON DERECHO',0AH, 0DH,'$'
SMS2 DB '# veces BOTON CENTRO',0AH, 0DH,'$'
DSEG ENDS
;---------------- Segmento de pila ------------------
SSEG SEGMENT PARA STACK 'STACK'
DB 256 DUP (0)
SSEG ENDS
;---------------- Segmento de codigo -----------------
CSEG SEGMENT PARA PUBLIC 'CODE'
ASSUME CS:CSEG,DS:DSEG,SS:SSEG
CODIGO PROC FAR
INICIO:
MOV AX,DATOS
MOV DS,AX
MOV AX,0 ; Inicializar el raton.
INT 33H
. BOTTON:
MOV AX,5 ;obtener inf de pulsacion
MOV BX,IZQ ;detecta izq
INT 33H
CMP BL,1 ;se ha presionado Boton IZQ?
JNZ BOTTON1
inc cx
cmp al,0dh ;0dh es el cdigo hexadecimal del Enter, compara si el la tecla p
resionada fue un Enter.
LEA DX,SMS1 ;MOSTRAR MENSAJE1
JMP INICIO ;saltar al inicio del prog

BOTTON1:
MOV AX,5 ;obtener inf de pulsacion
MOV BX,DER ;detecta DERECHO
INT 33H
CMP BL,1 ;se ha presionado Boton DER?
JNZ BOTTON2 ;si no es asi, salta
MOV AH,9
LEA DX,SMS ;MOSTRAR MENSAJE1
INT 21H
inc cx
cmp al,0dh ;0dh es el cdigo hexadecimal del Enter, compara si el la tecla p
resionada fue un Enter.
LEA DX,SMS1 ;MOSTRAR MENSAJE1
JMP INICIO ;saltar al inicio del prog
BOTTON2:
MOV AX,5 ;obtener inf de pulsacion
MOV BX,DER ;detecta CENTRO
INT 33H
CMP BL,1 ;se ha presionado Boton CEN?
inc cx
cmp al,0dh ;0dh es el cdigo hexadecimal del Enter, compara si el la tecla
presionada fue un Enter.
LEA DX,SMS3 ;MOSTRAR MENSAJE1
JNZ INICIO ;si no es asi, salta
MOV AH,9
LEA DX,SMS2 ;MOSTRAR MENSAJE2
INT 21H
JMP INICIO ;saltar al inicio del prog
CODIGO ENDP
CSEG ENDS
END CODIGO

También podría gustarte