summaryrefslogtreecommitdiff
path: root/dviware/psprint/vms/termout.mod
diff options
context:
space:
mode:
Diffstat (limited to 'dviware/psprint/vms/termout.mod')
-rw-r--r--dviware/psprint/vms/termout.mod77
1 files changed, 77 insertions, 0 deletions
diff --git a/dviware/psprint/vms/termout.mod b/dviware/psprint/vms/termout.mod
new file mode 100644
index 0000000000..b352bcf094
--- /dev/null
+++ b/dviware/psprint/vms/termout.mod
@@ -0,0 +1,77 @@
+IMPLEMENTATION MODULE TermOut;
+
+(* Author: Andrew Trevorrow
+ Implementation: University of Hamburg Modula-2 under VAX/VMS version 4
+ Date Started: August, 1986
+
+ Description:
+ Implements terminal output routines used by PSDVI.
+
+ Revised:
+ June--August, 1988 (while at Aston University)
+ - No longer use buffering/SYS$ASSIGN/SYS$QIOW since it did not allow the
+ output to be captured in a file (which is pretty important if users want
+ to run PSPRINT in a batch job and still see any error messages!).
+*)
+
+FROM VMS IMPORT
+ SYS$EXIT;
+
+IMPORT InOut;
+
+(******************************************************************************)
+
+PROCEDURE Write (ch : CHAR);
+
+BEGIN
+InOut.Write(ch);
+END Write;
+
+(******************************************************************************)
+
+PROCEDURE WriteString (s: ARRAY OF CHAR);
+
+BEGIN
+InOut.WriteString(s);
+END WriteString;
+
+(******************************************************************************)
+
+PROCEDURE WriteInt (i : INTEGER);
+
+BEGIN
+InOut.WriteInt(i,1);
+END WriteInt;
+
+(******************************************************************************)
+
+PROCEDURE WriteCard (c : CARDINAL);
+
+BEGIN
+InOut.WriteCard(c,1);
+END WriteCard;
+
+(******************************************************************************)
+
+PROCEDURE WriteLn;
+
+BEGIN
+InOut.WriteLn;
+END WriteLn;
+
+(******************************************************************************)
+
+PROCEDURE Halt (status : CARDINAL);
+
+VAR result : CARDINAL;
+
+BEGIN
+(* SYSDEP: set high order bit so that no CLI message will be seen *)
+status := status + 10000000H;
+result := SYS$EXIT(status);
+END Halt;
+
+(******************************************************************************)
+
+BEGIN
+END TermOut.