home *** CD-ROM | disk | FTP | other *** search
Modula Implementation | 1988-10-03 | 2.8 KB | 121 lines |
- IMPLEMENTATION MODULE VT52;
- (*-------------------------------------------------------------------*
- * Der ATARI emuliert über das BIOS das Terminal VT-52 von Digital *
- * Equipment Corporation. *
- * Dieses Modul umfa₧t Prozeduren zur Ansteuerung dieses Terminals. *
- * Bei der Anwendung dieses Moduls sollte der Mauszeiger abge- *
- * schaltet werden. *
- * Zur Löschen des Bildschirms sollte zuerst die Prozedur ClearHome *
- * aufgerufen werden, dann darf das anwendende Programm auch *.PRG *
- * hei₧en. *
- *-------------------------------------------------------------------*)
-
-
- FROM SYSTEM IMPORT BYTE;
- FROM Terminal IMPORT Read, Write;
- FROM ASCII IMPORT ESC;
-
- PROCEDURE CursorDownScroll;
- BEGIN Write (12C)
- END CursorDownScroll;
-
- PROCEDURE CursorUp;
- BEGIN Write (ESC); Write('A')
- END CursorUp;
-
- PROCEDURE CursorDown;
- BEGIN Write (ESC); Write ( 'B')
- END CursorDown;
-
- PROCEDURE CursorRight;
- BEGIN Write (ESC); Write ( 'C')
- END CursorRight;
-
- PROCEDURE CursorLeft;
- BEGIN Write (ESC); Write ( 'D')
- END CursorLeft;
-
- PROCEDURE ClearHome;
- BEGIN Write (ESC); Write ( 'E')
- END ClearHome;
-
- PROCEDURE CursorHome;
- BEGIN Write (ESC); Write ( 'H')
- END CursorHome;
-
- PROCEDURE CursorUpScroll;
- BEGIN Write (ESC); Write ( 'I')
- END CursorUpScroll;
-
- PROCEDURE EndOfScreen;
- BEGIN Write (ESC); Write ( 'J')
- END EndOfScreen;
-
- PROCEDURE EndOfLine;
- BEGIN Write (ESC); Write ( 'K')
- END EndOfLine;
-
- PROCEDURE InsertLine;
- BEGIN Write (ESC); Write ( 'L')
- END InsertLine;
-
- PROCEDURE DeleteLine;
- BEGIN Write (ESC); Write ( 'M')
- END DeleteLine;
-
- PROCEDURE GotoXY (x, y: CARDINAL);
- BEGIN
- IF x < 0 THEN x:=0
- ELSIF x > 79 THEN x:=79 END;
- IF y < 0 THEN y:=0
- ELSIF y > 24 THEN y:=24 END;
- Write (ESC); Write ( 'Y');
- Write ( CHR(y + 32)); Write ( CHR(x + 32))
- END GotoXY;
-
- PROCEDURE StartOfScreen;
- BEGIN Write (ESC); Write ( 'd');
- END StartOfScreen;
-
- PROCEDURE CursorOn;
- BEGIN Write (ESC); Write ( 'e')
- END CursorOn;
-
- PROCEDURE CursorOff;
- BEGIN Write (ESC); Write ( 'f')
- END CursorOff;
-
- PROCEDURE SaveCursor;
- BEGIN Write (ESC); Write ( 'j')
- END SaveCursor;
-
- PROCEDURE RestoreCursor;
- BEGIN Write (ESC); Write ( 'k')
- END RestoreCursor;
-
- PROCEDURE ClearLine;
- BEGIN Write (ESC); Write ( 'l')
- END ClearLine;
-
- PROCEDURE StartOfLine;
- BEGIN Write (ESC); Write ( 'o');
- END StartOfLine;
-
- PROCEDURE InverseOn;
- BEGIN Write (ESC); Write ( 'p')
- END InverseOn;
-
- PROCEDURE InverseOff;
- BEGIN Write (ESC); Write ( 'q')
- END InverseOff;
-
- PROCEDURE WrapOn;
- BEGIN Write (ESC); Write ( 'v')
- END WrapOn;
-
- PROCEDURE WrapOff;
- BEGIN Write (ESC); Write ( 'w')
- END WrapOff;
-
- END VT52.
-