Programa de 3 lineas de código y cambio de color al presionar ENTER.
pila segment stack 'stack'
db 100h dup (?)
pila ends
datos segment ;texto e instrucciones.
titulo db 13,10,' Eduardo',13,10,'$'
t db 13,10,' Ismael',13,10,'$'
mensaje db 13, 10, ' 2',13,10,'$'
datos ends
codigo segment ;segmento de codigo
assume cs:codigo, ss:pila, ds:datos
;prepara pantalla
inicio:
mov ah,0
mov al,3h ;modo texto
int 10h ;interrupcion de video
mov ax,0600h ;limpia pantalla
mov bh,0fh ;0 color de fondo negro, f letra en blanco
mov cx,0000h
mov dx,184Fh
int 10h
mov ah,02h
mov bh,00
mov dh,00
mov dl,00
int 10h
;mostrar mensajes
mov ax,datos
mov ds,ax
lea dx,titulo
mov ah,9h
int 21h
lea dx,t
mov ah,9h
int 21h
lea dx,mensaje
mov ah,9h
int 21h
mov ah,08 ;pausa y captura datos 08 espera que el usuario presione una tecla
int 21h
cmp al,13 ;verifica si presiono ENTER
je llamarAzul
jmp fin ;finaliza en caso de no recibir respuesta de enter o 2
fin: ;saca el mensaje por pantalla
mov ax,4c00h
int 21h
llamarAzul:
CALL AZULPROC
AZULPROC PROC NEAR
mov ah,0
mov al,3h ;modo texto
int 10h ;interrupcion de video
mov ax,0600h ;limpia pantalla
mov bh,0fh ;0 color de fondo negro, f letra en blanco
mov cx,0000h
mov dx,184Fh
int 10h
mov ah,02h
mov bh,00
mov dh,00
mov dl,00
int 10h
;aqui es donde se hace el cambio de color a azul
mov ah,06h
mov bh,4fh ;1 en vez de 0, el 1 es para el azul
mov cx,0000h
mov dx,184fh
int 10h
mov ax,datos
mov ds,ax
lea dx,titulo
mov ah,9h
int 21h
lea dx,t
mov ah,9h
int 21h
lea dx,mensaje
mov ah,9h
int 21h
mov ax,4c00h ;terminacion de programa
int 21h
RET
AZULPROC ENDP
codigo ends
end inicio
Comentarios
Publicar un comentario