IO.LST 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. Listing:
  2. 1 (* Release 3.10 *)
  3. 2 (*-------------------------------------------------------------------------*
  4. 3 * *
  5. 4 * IO.DEF - Modula-2 screen input/output *
  6. 5 * *
  7. 6 * COPYRIGHT (C) 1987..1992 Clarion Software Corporation. *
  8. 7 * All Rights Reserved *
  9. 8 * *
  10. 9 *--------------------------------------------------------------------------*)
  11. 10
  12. 11 (*# call(o_a_copy => off) *)
  13. 12 (*%F _fdata *)
  14. 13 (*# call(seg_name => null) *)
  15. 14 (*# data(seg_name => null) *)
  16. 15 (*%E *)
  17. 16 (*# module(implementation=>off) *)
  18. 17 DEFINITION MODULE IO;
  19. 18
  20. 19 CONST
  21. 20 MaxRdLength = 256;
  22. 21
  23. 22 TYPE
  24. 23 WrStrType = PROCEDURE ( ARRAY OF CHAR );
  25. ***** ^ not supported yet
  26. ***** ^ not supported yet
  27. 24 RdStrType = PROCEDURE ( VAR ARRAY OF CHAR );
  28. ***** ^ not supported yet
  29. ***** ^ not supported yet
  30. 25 CHARSET = SET OF CHAR;
  31. ***** ^ not supported yet
  32. 26
  33. 27
  34. 28 PROCEDURE WrChar ( V: CHAR );
  35. 29 PROCEDURE WrBool ( V: BOOLEAN ; Length: INTEGER );
  36. 30 PROCEDURE WrShtInt ( V: SHORTINT ; Length: INTEGER );
  37. 31 PROCEDURE WrInt ( V: INTEGER ; Length: INTEGER );
  38. 32 PROCEDURE WrLngInt ( V: LONGINT ; Length: INTEGER );
  39. 33 PROCEDURE WrShtCard( V: SHORTCARD; Length: INTEGER );
  40. 34 PROCEDURE WrCard ( V: CARDINAL ; Length: INTEGER );
  41. 35 PROCEDURE WrLngCard( V: LONGCARD ; Length: INTEGER );
  42. ***** ^ undeclared identifier
  43. 36 PROCEDURE WrShtHex ( V: SHORTCARD; Length: INTEGER );
  44. 37 PROCEDURE WrHex ( V: CARDINAL ; Length: INTEGER );
  45. 38 PROCEDURE WrLngHex ( V: LONGCARD ; Length: INTEGER );
  46. ***** ^ undeclared identifier
  47. 39
  48. 40 PROCEDURE WrReal ( V: REAL ; Precision: CARDINAL; Length: INTEGER);
  49. 41 PROCEDURE WrLngReal ( V: LONGREAL ; Precision: CARDINAL; Length: INTEGER);
  50. 42 PROCEDURE WrFixReal ( V: REAL ; Precision: CARDINAL; Length: INTEGER);
  51. 43 PROCEDURE WrFixLngReal( V: LONGREAL ; Precision: CARDINAL; Length: INTEGER);
  52. 44
  53. 45 PROCEDURE WrCharRep( V: CHAR ; Count: CARDINAL );
  54. 46
  55. 47 PROCEDURE WrStr ( S: ARRAY OF CHAR );
  56. ***** ^ not supported yet
  57. 48
  58. 49 (*# save,
  59. 50 call(o_a_copy => on) *)
  60. 51 PROCEDURE WrStrAdj ( S: ARRAY OF CHAR; Length: INTEGER );
  61. ***** ^ not supported yet
  62. 52 (*# restore *)
  63. 53 PROCEDURE WrLn;
  64. 54
  65. 55
  66. 56 PROCEDURE RdChar() : CHAR;
  67. 57 PROCEDURE RdBool() : BOOLEAN;
  68. 58 PROCEDURE RdShtInt() : SHORTINT;
  69. 59 PROCEDURE RdInt() : INTEGER;
  70. 60 PROCEDURE RdLngInt() : LONGINT;
  71. 61 PROCEDURE RdShtCard() : SHORTCARD;
  72. 62 PROCEDURE RdCard() : CARDINAL;
  73. 63 PROCEDURE RdLngCard() : LONGCARD;
  74. ***** ^ undeclared identifier
  75. 64 PROCEDURE RdShtHex() : SHORTCARD;
  76. 65 PROCEDURE RdHex() : CARDINAL;
  77. 66 PROCEDURE RdLngHex() : LONGCARD;
  78. ***** ^ undeclared identifier
  79. 67
  80. 68 PROCEDURE RdReal() : REAL;
  81. 69 PROCEDURE RdLngReal() : LONGREAL;
  82. 70 PROCEDURE RdStr(VAR S: ARRAY OF CHAR);
  83. ***** ^ not supported yet
  84. 71 PROCEDURE RdItem(VAR V: ARRAY OF CHAR);
  85. ***** ^ not supported yet
  86. 72 PROCEDURE RdLn;
  87. 73 PROCEDURE EndOfRd(Skip: BOOLEAN) : BOOLEAN;
  88. 74 PROCEDURE KeyPressed() : BOOLEAN;
  89. 75 PROCEDURE RdKey() : CHAR;
  90. 76
  91. 77 CONST RdCharDirect ::= RdKey;
  92. ***** ^ not supported yet
  93. 78
  94. 79 PROCEDURE RedirectInput (FileName: ARRAY OF CHAR);
  95. ***** ^ not supported yet
  96. 80
  97. 81 PROCEDURE RedirectOutput(FileName: ARRAY OF CHAR);
  98. ***** ^ not supported yet
  99. 82
  100. 83 PROCEDURE ThreadOK(): BOOLEAN;
  101. 84
  102. 85 VAR RdLnOnWr : BOOLEAN; (* Clear buffered input after write *)
  103. 86 VAR Prompt : BOOLEAN; (* Prompt ('?') on read from empty line *)
  104. 87 VAR InputRedirected : BOOLEAN;
  105. 88 VAR OutputRedirected: BOOLEAN;
  106. 89
  107. 90 VAR WrStrRedirect : WrStrType;
  108. 91 VAR RdStrRedirect : RdStrType;
  109. 92
  110. 93 VAR Separators : CHARSET;
  111. ***** ^ not supported yet
  112. 94 VAR OK : BOOLEAN;
  113. 95 VAR ChopOff : BOOLEAN;
  114. 96 VAR Eng : BOOLEAN; (* Engineering notation *)
  115. 97 VAR PrefixChar : CHAR;
  116. 98 VAR SuffixChar : CHAR;
  117. 99
  118. 100 END IO.
  119. ***** ^ not supported yet
  120. 18 errors