home *** CD-ROM | disk | FTP | other *** search
- (* ------------------------------------------------------ *)
- (* ASCII.RAM *)
- (* Verwaltung der ASCII-Tabelle im RAM *)
- (* ------------------------------------------------------ *)
-
- VAR
- SavePage : Screen;
- AsciiTable : Window;
-
- PROCEDURE SaveScreen(CurrentPage : ScreenPtr);
- (* sichert den Bildschirminhalt bei "CurrentPage". *)
- BEGIN
- SavePage := CurrentPage^;
- END;
-
- PROCEDURE RestoreScreen(CurrentPage : ScreenPtr);
- (* restauriert den Bildschirminhalt bei "CurrentPage". *)
- BEGIN
- CurrentPage^ := SavePage;
- END;
-
- PROCEDURE DisplayAsciiTable(CurrentPage : ScreenPtr);
- (* bringt die Ascii-Tabelle auf den Bildschirm. *)
- VAR
- Row : BYTE;
- BEGIN
- FOR Row:=1 TO RowSize DO BEGIN
- Move(AsciiTable[Row,1], CurrentPage^[YOfs+Row-1,XOfs],
- ColSize*2);
- END;
- END;
-
- PROCEDURE AllocateBuffers;
- (* Anforderung und Vorbereitung der benötigten Puffer. *)
- BEGIN
- { Nichts zu tun! }
- END;
-
- PROCEDURE DeallocateBuffers;
- (* benötigte Puffer bei Programmende wieder freigeben. *)
- BEGIN
- { Nichts zu tun! }
- END;
-
- PROCEDURE SetTable(Col, Row, Attr : BYTE; Ch : CHAR);
- (* belegt die Tabellenposition (Col,Row) mit dem Zei-
- chen "Ch" und dem Videoattribut "Attr". *)
- BEGIN
- AsciiTable[Row,Col] := Word(Attr)*256 + Ord(Ch)
- END;
-
- PROCEDURE PrepareExit;
- (* Maßnahmen für das Installationsende treffen. *)
- BEGIN
- { Nichts zu tun! }
- END;
- (* ------------------------------------------------------ *)
- (* Ende von ASCII.RAM *)