lunes, 3 de abril de 2017

Programa#5

; PROGRAMA : pe07_cur
; FUNCION : Posiciona el cursor en cordenada determinada.
; REALIZADO POR :Jose Juan Muñiz Hernandez

-----------------------------------------------------------------------------------

; DECLARACION DE CONSTANTES
-----------------------------------------------------------------------------------

CR EQU 13                                       ; Constante CR (Retorno de carro)
LF EQU 10                                        ; Constante LF (Salto de línea)
TECLADO_8 EQU 8
IMPRIMIR_9 EQU 9
FIN_4C00H EQU 4C00H                     ;fializa el programa y regresa al DOS
DOS_21H EQU 21H
BIOS_10H EQU 10H
TAB EQU 09H
BELL EQU 07H
--------------------------------------------------------------------------------------

;DECLARACION DEL SEGMENTO DE DATOS
---------------------------------------------------------------

DATOS SEGMENT
RENGLON DB 0
COLUMNA DB 0
MENSAJE DB CR,LF,'POSICION (x,y), del mensaje: Hola Mundo !',CR,LF,'$'
DATOS ENDS
--------------------------------------------------------------------------------

; DECLARACION DEL SEGMENTO DE PILA
-------------------------------------------------------------

PILA SEGMENT STACK
DW 100 DUP('0') ;DW : describe palabra
PILA ENDS
-------------------------------------------------------

; DECLARACION DEL SEGMENTO DE CODIGO
------------------------------------------------------------------

CODIGO SEGMENT


pe07_cur PROC FAR                          ; Inicio procedimiento pe06_cls


ASSUME CS:CODIGO,DS:DATOS,SS:PILA


MOV AX,DATOS                                ; AX=Dirección del segmento de datos
MOV DS,AX                                       ; DS=AX. Indicar el segmento de datos
LEA DX,MENSAJE                             ; DS:DX = dirección de MENSAJE
CALL LIMPIA_PANTALLA


CALL POSICIONA_CURSOR              ; Llama a procedimiento par posionar cursor.


MOV AH,IMPRIMIR_9                         ; Función DOS para escribir texto en pantalla
INT DOS_21H                                     ; Llamar a la interrupción del DOS


MOV AX,FIN_4C00H                           ; Fin del programa
INT DOS_21H


pe07_cur ENDP                                   ; Fin del procedimiento EJEMPLO


LIMPIA_PANTALLA PROC NEAR
MOV AX,01000H                                 ; Establecer modo texto y CLS
MOV BH,6AH                                      ; Colores de fondo (negro=0) y texto (verde=A).
MOV CX,0000H                                   ; Desde el inicio de pantalla
MOV DX,484FH                                   ; Hasta el fin de la pantalla Reng (48)72 col(79)4F
INT BIOS_10H                                     ; Interrupci?n que llama al BIOS
RET
LIMPIA_PANTALLA ENDP


POSICIONA_CURSOR PROC NEAR
MOV AH,02                                         ; Servicio para Fija posicion del Cursor
MOV BH,00                                         ; Numero de pagina o pantalla
MOV DH,RENGLON
MOV DL,COLUMNA
INT BIOS_10H
RET


POSICIONA_CURSOR ENDP
CODIGO ENDS
END pe07_cur





0 comentarios:

Publicar un comentario