• Lunes 18 de Noviembre de 2024, 15:43

Autor Tema:  Limpiar Pantalla  (Leído 1304 veces)

fabian20s

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Limpiar Pantalla
« en: Jueves 3 de Noviembre de 2005, 01:43 »
0
hola a todos soy un estudiande te ing de sistemas y un profesor me pidio que aberiguemos como mostrar una etiqueta en la parte de abajo de la pantalla ala derecha

y tambien limpiar la pantalla con el xor esto ultimo no entiendo bien

grasias antisipadas a todos

bob esponja

  • Miembro MUY activo
  • ***
  • Mensajes: 411
    • Ver Perfil
    • http://marianoguerra.blogspot.com
Re: Limpiar Pantalla
« Respuesta #1 en: Sábado 5 de Noviembre de 2005, 05:37 »
0
bueno si entiendo bien lo que necesitas hacer en el punto uno ( mostrar una etiqueta en la parte de abajo de la pantalla ala derecha) debe ser en modo texto en DOS por ende estas en el modo 0x13 de VGA que tiene 80x25 caracteres si mal no recuerdo los cuales estan mapeados en la memoria de la vga a partir de 0xB800 si mal no recuerdo de nuevo  :rolleyes: , la organizacion de esta memoria es la siguiente: un byte para atributos y un byte para el caracter mostrado, por ende lo que necesitas es:
* apuntar a B800:0000 con algo por ej: ES:DI
* obtener la cadena que vas a mostrar
* calcular su largo
* restarselo a ( 80 x 25  x 2 )
* y el resultado de ese valor va a quedar apuntando al primer byte donde tenes que poner el primer caracter ( creo que al primer byte de atributo )
* y de ahi comenzar a poner los caracteres saltandote un byte

sobre lo segundo ( limpiar la pantalla con el xor ) lo que ecesitas hacer es recorrer
desde B800:0000 hasta B800:( 80 x 25  x 2 ) y a cada byte hacerle un xor con si mismo lo que lo va a dejar en cero

espero que sirva, si tenes dudas pregunta BTW a donde estudias? en que año estas? porque a mi me hubiera gustado que un profesor me pida hacer eso  :D