#3 Re: menu en ensamblador
esto es lo que llevo:
LF equ 10
CR equ 13
%include "macros2.asm"
extern DespliegaLFCR, Cls,opcion1,opcion2
segment pila stack
resb 256
segment vars data
msje1 db "Bienvenidos!",LF,CR,"$"
msje2 db "Selecciona una opcion",LF,CR,"$"
msje3 db "1.- Conteo ascendente",LF,CR,"$"
msje4 db "2.- Conteo descendente",LF,CR,"$"
msje5 db "3.- Segmento circulante en sentido de las manecillas del reloj",LF,CR,"$"
msje6 db "4.- Segmento circulante en sentido contrario a las manecillas del reloj",LF,CR,"$"
msje7 db "5.- Ocho parpadeante",LF,CR,"$"
msje8 db "6.- Salir",LF,CR,"$"
segment principal code
..start:
mov ax,vars ; Ajusta DS
mov ds,ax
call far Cls
DespCadena msje1
DespCadena msje2
DespCadena msje3
DespCadena msje4
DespCadena msje5
DespCadena msje6
DespCadena msje7
DespCadena msje8
mov ah,0 ; Espera por cualquier tecla
int 16h
cmp al,"1"
jmp proc
cmp al,"2"
jmp proc2
; cmp al,"3"
; jmp proc3
; cmp al,"4"
; jmp proc4
; cmp al,"5"
; jmp proc5
; cmp al,"6"
; jmp 21h
proc: call far Cls
DespCadena msje3
call far opcion1
proc2: call far Cls
DespCadena msje3
call far opcion2
;proc2: mov ds,ax
;proc3: mov ds,ax
;proc4: mov ds,ax
Fin
y esto lo puse en un procedimiento externo:
global opcion1
opcion1:
mov ah,0
int 16h
retf
;----------------------------------------------------------------------------------
global opcion2
opcion2:
////aqui
mov ah,0
int 16h
retf
ya se como leer las opciones pero ahora lo que necesito es que en cuanto se lea una opcion se teclee la letra q para que regrese al menu principal
esto es lo que llevo:
LF equ 10
CR equ 13
%include "macros2.asm"
extern DespliegaLFCR, Cls,opcion1,opcion2
segment pila stack
resb 256
segment vars data
msje1 db "Bienvenidos!",LF,CR,"$"
msje2 db "Selecciona una opcion",LF,CR,"$"
msje3 db "1.- Conteo ascendente",LF,CR,"$"
msje4 db "2.- Conteo descendente",LF,CR,"$"
msje5 db "3.- Segmento circulante en sentido de las manecillas del reloj",LF,CR,"$"
msje6 db "4.- Segmento circulante en sentido contrario a las manecillas del reloj",LF,CR,"$"
msje7 db "5.- Ocho parpadeante",LF,CR,"$"
msje8 db "6.- Salir",LF,CR,"$"
segment principal code
..start:
mov ax,vars ; Ajusta DS
mov ds,ax
call far Cls
DespCadena msje1
DespCadena msje2
DespCadena msje3
DespCadena msje4
DespCadena msje5
DespCadena msje6
DespCadena msje7
DespCadena msje8
mov ah,0 ; Espera por cualquier tecla
int 16h
cmp al,"1"
jmp proc
cmp al,"2"
jmp proc2
; cmp al,"3"
; jmp proc3
; cmp al,"4"
; jmp proc4
; cmp al,"5"
; jmp proc5
; cmp al,"6"
; jmp 21h
proc: call far Cls
DespCadena msje3
call far opcion1
proc2: call far Cls
DespCadena msje3
call far opcion2
;proc2: mov ds,ax
;proc3: mov ds,ax
;proc4: mov ds,ax
Fin
y esto lo puse en un procedimiento externo:
global opcion1
opcion1:
mov ah,0
int 16h
retf
;----------------------------------------------------------------------------------
global opcion2
opcion2:
////aqui es donde yo creo que el procedimiento donde lee la q y se regresa al menu principal.
mov ah,0
int 16h
retf
ya se como leer las opciones pero ahora lo que necesito es que en cuanto se lea una opcion se teclee la letra q para que regrese al menu principal.
Espero me puedan ayudar. Gracias