summaryrefslogtreecommitdiff
path: root/dviware/psprint/vms/termout.mod
blob: b352bcf0948f21d2b52a0b91bc4b07e6496a07ba (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
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.