2. Programa que cambia el color de pantalla mediante opciones:
Pila segment stack 'stack' ;Segmento de la pila
db 100h dup (?) ; A partir de la direccion 100 de la pila.
Pila ends
datos segment
titulo db 13,10,' CAMBIAR FONDO DE PANTALLA ',13,10,'$'
mensaje db 'Presione ENTER si quiere la pantalla azul ' , ' Si quiere morado, presione 2 ',13,10,' Para salir ', ' Presione cualquier tecla',13,10,'$'
datos ends
codigo segment ;segmento de codigo
assume cs:codigo, ss:pila, ds:datos
Inicio:
;****************************** PREPARAR PANTALLA
mov ah,0
mov al,3h ; Modo Texto
int 10h ; Interrupcion de Video
mov ax,0600h ; Limpiar Pantalla
mov bh,0fh ; O Color de fondo negro, el color de letra blanco
mov cx,0000h
mov dx,184Fh
int 10h
mov ah,02h
mov bh,00
mov dh,00
mov dl,00
int 10h
;****************************** MOSTRAR MENSAJE
mov ax,datos
mov ds,ax
lea dx,titulo
mov ah,9h
int 21h
lea dx,mensaje
mov ah,9h
int 21h
;****************************** CAPTURA DE TECLAS
mov ah,08 ; Pausa y captura de datos db espera que el usuario presiona una tecla
int 21h
cmp al,13 ; Verifica al presionar ENTER, el cual tiene un codigo ascii
je llamarAzul ; Salto Condicional jump equals opcion 1 saltar si es igual a la opcion 1
cmp al,50 ; Ascii 50 = numero 2 compara lo que tiene el regisro ah con el ascii 50 en el reg a1
je llamarMorado
jmp fin ; Si no escoge ni ENTER ni 2, Sale del programa
fin: ; Saca el mensaje por pantalla
mov ax,4c00h
int 21h
llamarAzul:
CALL AZULPROC
llamarMorado:
CALL MORADOPROC
;****************************** STORE PROCEDURE AZUL
AZULPROC PROC NEAR
mov ah,0
mov al,3h ; Modo Texto
int 10h ; Interrupcion de video
mov ax,0600h ; Limpiar Pantalla
mov bh,0fh ; Color de fondo negro, f color de letra blanco
mov cx,0000h
mov dx,184Fh
int 10h
mov ah,02h
mov bh,00
mov dh,00
mov dl,00
int 10h
;//////////////////////////////////////
mov ah,06h
mov bh,1fh ;2fh
mov cx,0000h
mov dx,184fh
int 10h
mov ax,4c00h
int 21h
RET
AZULPROC ENDP
;*****************************************STORED PROCEDURE MORADO
MORADOPROC PROC NEAR
mov ah,06h
mov bh,5fh ;2fh;3 para azul, 4 para guinda, 5 morado
mov cx,0000h
mov dx,184fh
int 10h
mov ax,4c00h
int 21h
RET
MORADOPROC ENDP
codigo ends
end inicio ; Podemos Asignar desde se inicia PC
miércoles, 21 de febrero de 2018
Suscribirse a:
Enviar comentarios (Atom)
Trabajo con puerto usb
Programación de puerto USB USB viene de frase en Ingles “Universal Serial Bus” que se utiliza para describir un tipo de puerto en la co...
-
La unidad fundamental del almacenamiento de datos en SQL Server es la página. El espacio en disco asignado a un archivo de datos (.mdf o ....
-
8 Programa que mediante un botón con función permite centrar la ventana secundaria
-
Ejemplo 1 """" programa que crea una ventana usando la libreria Tkinter Fecha: 30 agosto 2017 Autor: Juan Rodolfo G...
No hay comentarios:
Publicar un comentario