Bonjour
Je travaille avec l'unité CRT, et j'en suis un adepte.
Je sais qu'on peut modifier la taille de la fenêtre CRT avant le démarrage du programme ou dans le réglage de l'environnement du compilateur.
Cependant j'aimerais aller plus loin dans la difficulté et modifier la taille de la fenêtre CRT en cours de programme.
Petite fenêtre (80 col, 80 lig) pour une partie du programme et 200 col, 80 lig pour une autre partie.
j'ai bien essayé un tuto Turbo Pascal :
Ce que j'ai écrit :Par la suite, il suffit d'écrire directement dans la variable TextScreen pour placer un caractère sur l'écran :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Type TTextScreen = Array [1..25, 1..80] of Record Ch : Char; Color : Byte; end; Var TextScreen : TTextScreen absolute $B800:$0000;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Procedure WriteChar (X, Y : Byte; Ch : Char; FgColor, BkColor : Byte); Begin TextScreen[Y, X].Ch := Ch; TextScreen[Y, X].Color := (BkColor shl 4) or (FgColor and 15); End;
Mais le compilateur me jette à l'instruction absolute.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 TYPE TTEXTSCREEN = ARRAY [1..80,1..200] OF RECORD CH : CHAR; COLOR : BYTE; END; VAR TEXTSCREEN : TTEXTSCREEN ABSOLUTE $B800:$0000;
Avez-vous une idée ?
Merci
Partager