Pascal/Turbo Pascal - urge.., esto es para expertos

 
Vista:

urge.., esto es para expertos

Publicado por hdez (1 intervención) el 16/11/2001 02:24:02
hay alguna funcion en TP k lea un pedazo de texto de la pantalla?
o si no la hay, me imagino k hay alguna interrupcion k lo hace
cual seria la interrupcion y los valores k se le deben dar
bueno, espero k me puedan ayudar...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:urge.., esto es para expertos

Publicado por Diego Romero (282 intervenciones) el 16/11/2001 21:43:35
Pues no, TP no tiene tal función pero puedes implementarla tu mismo, solo hay que saber que en la dirección de memoria $b800:0000 es donde empieza la memoria de video y que en modo texto de 80x25 abarca los siguientes 4000 bytes en parejas de dos, el primer byte es para el codigo ASCII del caracter, el segundo es para el atributo de color de ese caracter. Veamos esto en un ejemplo.
type
tpos=record { Posici¢n de la pantalla }
car:char;
attr:byte;
end;

tlinea=array [1..80] of tpos; { Linea de la Pantalla }
tpant=array [1..25] of tlinea; { Pantalla Entera }

var
pant:tpant absolute $b800:$0000; { Pantalla }
begin
pant[1,1].car:='A';
pant[1,1].attr:=15;
end.

Eso escribiría una 'A' en blanco intenso en la esquina superior izquierda de la pantalla, como pant es una variable puedes copiarla en otra del mismo tipo para capturar el contenido completo de la pantalla y restaurarla después cuando lo creas oportuno.
...
var
pant:tpant absolute $b800:$0000;
bkpant:tpant;
begin
bkpant:=pant; {captura la pantalla}
pant:=bkpant; {restauro la pantalla}
end.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar