PASLIB.LST 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281
  1. Listing:
  2. 1 (* Release 3.10 *)
  3. 2 (*-------------------------------------------------------------------------*
  4. 3 * *
  5. 4 * PASLIB.DEF - Modula-2 interface to PASLIB.ITF *
  6. 5 * *
  7. 6 * COPYRIGHT (C) 1989..1992 Clarion Software Corporation. *
  8. 7 * All Rights Reserved *
  9. 8 * *
  10. 9 *--------------------------------------------------------------------------*)
  11. 10
  12. 11 (*# project("#set tspas='on'") *)
  13. 12 (*# call(o_a_copy => off, o_a_size=>off) *)
  14. 13 (*# module(implementation=>off) *)
  15. 14 (*%F _fdata *)
  16. 15 (*# call(seg_name => null) *)
  17. 16 (*# data(seg_name => null) *)
  18. 17 (*%E *)
  19. 18
  20. 19 DEFINITION MODULE PasLib;
  21. 20
  22. 21 TYPE
  23. 22 String80 = ARRAY [0..80] OF CHAR; (* Byte 0 contains length *)
  24. ***** ^ not supported yet
  25. ***** ^ not supported yet
  26. 23 maxstring = ARRAY [0..256] OF CHAR; (* Byte 0 contains length *)
  27. ***** ^ not supported yet
  28. ***** ^ not supported yet
  29. 24 convstring = String80; (* Byte 0 contains length *)
  30. 25 namestring = String80; (* Byte 0 contains length *)
  31. 26 cmpres = [-1..1];
  32. 27 ifilemode = (rm,wm);
  33. 28 States = (Initialized, TextFile, TempFile, EOLinBuffer, Device, Assigned, ACrt, App);
  34. 29 filetype = RECORD
  35. 30 bufferptr: ADDRESS; (* must be first field of RECORD *)
  36. ***** ^ undeclared identifier
  37. 31 objectsize:CARDINAL; (* must be second field of RECORD *)
  38. 32 state: SET OF States; (* must be third 3 field of RECORD, zero *)
  39. ***** ^ not supported yet
  40. 33 (* length name indicates a temporary file *)
  41. 34 mode: ifilemode;
  42. 35 handle: CARDINAL;
  43. 36 name: String80;
  44. 37 stream: ADDRESS;
  45. ***** ^ undeclared identifier
  46. 38 END;
  47. ***** ^ not supported yet
  48. 39
  49. 40 VAR
  50. 41 _input: filetype;
  51. ***** ^ not supported yet
  52. 42 _output: filetype;
  53. ***** ^ not supported yet
  54. 43 winio: BOOLEAN;
  55. 44 ClearOnAllocate :BOOLEAN;
  56. 45 IOCheck : BOOLEAN;
  57. 46 IsoFormatting: BOOLEAN;
  58. 47 HeapError : PROCEDURE(CARDINAL): INTEGER;
  59. ***** ^ not supported yet
  60. ***** ^ not supported yet
  61. ***** ^ not supported yet
  62. 48 RandSeed : LONGINT;
  63. 49 IOBufferSize : CARDINAL;
  64. 50 FileMode : CARDINAL;
  65. 51
  66. 52 CONST
  67. 53 DefaultBufferSize = 512;
  68. 54
  69. 55 PROCEDURE _allocate(VAR p:ADDRESS; s:CARDINAL);
  70. ***** ^ undeclared identifier
  71. 56 PROCEDURE _deallocate(p:ADDRESS; s:CARDINAL);
  72. ***** ^ undeclared identifier
  73. 57 PROCEDURE HALT;
  74. 58
  75. 59 PROCEDURE _wrint(i:LONGINT;w:INTEGER);
  76. 60 PROCEDURE _wrbool(b:BOOLEAN;w:INTEGER);
  77. 61 PROCEDURE _wrchar(c:CHAR;w:INTEGER);
  78. 62 PROCEDURE _wrastr(size, low, high: CARDINAL; s: ARRAY OF CHAR;w:INTEGER);
  79. ***** ^ not supported yet
  80. 63 PROCEDURE _wrreal(r:LONGREAL;w:INTEGER;d:INTEGER);
  81. 64 PROCEDURE _wrcstr(l:INTEGER; s: ADDRESS; w:INTEGER);
  82. ***** ^ undeclared identifier
  83. 65 PROCEDURE _wrln;
  84. 66 PROCEDURE _page;
  85. 67 PROCEDURE _eoln():BOOLEAN;
  86. 68 PROCEDURE _eof():BOOLEAN;
  87. 69
  88. 70 PROCEDURE _f_wrint(VAR f:filetype;i:LONGINT;w:INTEGER);
  89. 71 PROCEDURE _f_wrbool(VAR f:filetype;b:BOOLEAN;w:INTEGER);
  90. 72 PROCEDURE _f_wrchar(VAR f:filetype;c:CHAR;w:INTEGER);
  91. 73 PROCEDURE _f_wrastr(VAR f:filetype;size, low, high: CARDINAL; s: ARRAY OF CHAR;w:INTEGER);
  92. ***** ^ not supported yet
  93. 74 PROCEDURE _f_wrcstr(VAR f:filetype;l:INTEGER;s: ADDRESS;w:INTEGER);
  94. ***** ^ undeclared identifier
  95. 75 PROCEDURE _f_wrbin(VAR f:filetype;v: ADDRESS);
  96. ***** ^ undeclared identifier
  97. 76 PROCEDURE _f_wrreal(VAR f:filetype;r:LONGREAL;w:INTEGER;d:INTEGER);
  98. 77 PROCEDURE _f_wrln(VAR f:filetype);
  99. 78 PROCEDURE _f_page(VAR f:filetype);
  100. 79 PROCEDURE _f_eoln(VAR f:filetype):BOOLEAN;
  101. 80 PROCEDURE _f_eof(VAR f:filetype):BOOLEAN;
  102. 81
  103. 82 PROCEDURE _rdint(VAR i:LONGINT);
  104. 83 PROCEDURE _rdchar(VAR c:CHAR);
  105. 84 PROCEDURE _rdbool(VAR b:BOOLEAN);
  106. 85 PROCEDURE _rdstr(size: BYTE; VAR s:maxstring;len:INTEGER);
  107. ***** ^ undeclared identifier
  108. 86 PROCEDURE _rdreal(VAR r:LONGREAL);
  109. 87 PROCEDURE _rdln;
  110. 88
  111. 89 PROCEDURE _f_rdint(VAR f:filetype;VAR i:LONGINT);
  112. 90 PROCEDURE _f_rdchar(VAR f:filetype;VAR c:CHAR);
  113. 91 PROCEDURE _f_rdbool(VAR f:filetype;VAR b:BOOLEAN;w:INTEGER);
  114. 92 PROCEDURE _f_rdstr(VAR f:filetype;size: BYTE; VAR s:maxstring;len: INTEGER);
  115. ***** ^ undeclared identifier
  116. 93 PROCEDURE _f_rdbin(VAR f:filetype;v: ADDRESS);
  117. ***** ^ undeclared identifier
  118. 94 PROCEDURE _f_rdreal(VAR f:filetype;VAR r:LONGREAL);
  119. 95 PROCEDURE _f_rdln(VAR f:filetype);
  120. 96
  121. 97 PROCEDURE _rewrite(VAR f:filetype;rs:CARDINAL; IsText: BOOLEAN);
  122. 98 PROCEDURE _append(VAR f:filetype;rs:CARDINAL; IsText: BOOLEAN);
  123. 99 PROCEDURE _reset(VAR f:filetype;rs:CARDINAL; IsText: BOOLEAN);
  124. 100
  125. 101 PROCEDURE assign(VAR f:filetype; size: BYTE; name: namestring);
  126. ***** ^ undeclared identifier
  127. 102 PROCEDURE put(VAR f:filetype);
  128. 103 PROCEDURE get(VAR f:filetype);
  129. 104 PROCEDURE close(VAR f:filetype);
  130. 105
  131. 106 (* I/O extensions *)
  132. 107
  133. 108 PROCEDURE FilePos(VAR f: filetype): LONGINT;
  134. 109 PROCEDURE FileSize(VAR f: filetype): LONGINT;
  135. 110 PROCEDURE Seek(VAR f: filetype; pos: LONGINT);
  136. 111 PROCEDURE Flush(VAR f: filetype);
  137. 112 PROCEDURE IOresult(): CARDINAL;
  138. 113
  139. 114 PROCEDURE Rename(VAR f: filetype; size: BYTE; newname: ARRAY OF CHAR );
  140. ***** ^ undeclared identifier
  141. ***** ^ not supported yet
  142. 115 PROCEDURE Truncate(VAR f: filetype);
  143. 116 PROCEDURE Exists(VAR f: filetype): BOOLEAN;
  144. 117 PROCEDURE Erase(VAR f: filetype);
  145. 118
  146. 119 TYPE
  147. 120 DateTime = RECORD
  148. 121 Year, Month, Day, Hour, Min, Sec: CARDINAL;
  149. 122 END;
  150. ***** ^ not supported yet
  151. 123
  152. 124 PROCEDURE PackTime(VAR DT: DateTime; VAR Time: LONGINT);
  153. 125 PROCEDURE UnpackTime(Time: LONGINT; VAR DT: DateTime);
  154. 126 PROCEDURE GetFTime(f: ADDRESS; VAR Time: LONGINT);
  155. ***** ^ undeclared identifier
  156. 127 PROCEDURE SetFTime(f: ADDRESS; Time: LONGINT);
  157. ***** ^ undeclared identifier
  158. 128
  159. 129 PROCEDURE GetFAttr(f: ADDRESS; VAR Attr: CARDINAL);
  160. ***** ^ undeclared identifier
  161. 130 PROCEDURE SetFAttr(f: ADDRESS; Attr: CARDINAL);
  162. ***** ^ undeclared identifier
  163. 131
  164. 132 PROCEDURE SetIOR(code: CARDINAL);
  165. 133
  166. 134 (******************)
  167. 135
  168. 136 PROCEDURE _strcompare(s1,s2: ADDRESS):cmpres;
  169. ***** ^ undeclared identifier
  170. 137
  171. 138 PROCEDURE _bindfile(VAR f:filetype;n:CARDINAL);
  172. 139
  173. 140 (*# save *)
  174. 141 (*# call(seg_name=>null) *)
  175. 142
  176. 143 PROCEDURE sin(r:LONGREAL):LONGREAL;
  177. 144 PROCEDURE cos(r:LONGREAL):LONGREAL;
  178. 145 PROCEDURE exp(r:LONGREAL):LONGREAL;
  179. 146 PROCEDURE log10(r:LONGREAL):LONGREAL;
  180. 147 PROCEDURE pow(x, y:LONGREAL):LONGREAL;
  181. 148 PROCEDURE ln(r:LONGREAL):LONGREAL;
  182. 149 PROCEDURE sqrt(r:LONGREAL):LONGREAL;
  183. 150 PROCEDURE arctan(r:LONGREAL):LONGREAL;
  184. 151 PROCEDURE frac(r:LONGREAL):LONGREAL;
  185. 152 PROCEDURE sqr(r:LONGREAL):LONGREAL;
  186. 153
  187. 154 (* Math Extensions *)
  188. 155
  189. 156 PROCEDURE arccos(x: LONGREAL): LONGREAL;
  190. 157 PROCEDURE arcsin(x: LONGREAL): LONGREAL;
  191. 158 PROCEDURE arctan2(x: LONGREAL; y: LONGREAL): LONGREAL;
  192. 159 PROCEDURE cosh(x: LONGREAL): LONGREAL;
  193. 160 PROCEDURE sinh(x: LONGREAL): LONGREAL;
  194. 161 PROCEDURE tanh(x: LONGREAL): LONGREAL;
  195. 162 PROCEDURE tan(x: LONGREAL): LONGREAL;
  196. 163
  197. 164 PROCEDURE frexp(x: LONGREAL; VAR expo: INTEGER): LONGREAL;
  198. 165
  199. 166 PROCEDURE hypot(x, y: LONGREAL): LONGREAL;
  200. 167
  201. 168 (*# restore *)
  202. 169
  203. 170 PROCEDURE randomize;
  204. 171 PROCEDURE random(range: CARDINAL): CARDINAL;
  205. 172
  206. 173 PROCEDURE FreeMem(VAR p: ADDRESS; size: CARDINAL);
  207. ***** ^ undeclared identifier
  208. 174 PROCEDURE GetMem(VAR p: ADDRESS; size: CARDINAL);
  209. ***** ^ undeclared identifier
  210. 175 PROCEDURE MaxAvail(): LONGINT;
  211. 176 PROCEDURE MemAvail(): LONGINT;
  212. 177
  213. 178 PROCEDURE FillChar(x: ADDRESS; count: CARDINAL; ch: BYTE);
  214. ***** ^ undeclared identifier
  215. ***** ^ undeclared identifier
  216. 179 PROCEDURE Move(source, dest: ADDRESS; count: CARDINAL);
  217. ***** ^ undeclared identifier
  218. 180 PROCEDURE Compare(Source: ADDRESS; Dest: ADDRESS; Len: CARDINAL) : CARDINAL;
  219. ***** ^ undeclared identifier
  220. ***** ^ undeclared identifier
  221. 181 PROCEDURE ScanR(Dest: ADDRESS; Count: CARDINAL; Value: SHORTCARD) : CARDINAL;
  222. ***** ^ undeclared identifier
  223. 182 PROCEDURE ScanL(Dest: ADDRESS; Count: CARDINAL; Value: SHORTCARD) : CARDINAL;
  224. ***** ^ undeclared identifier
  225. 183 PROCEDURE ScanNeR(Dest: ADDRESS; Count: CARDINAL; Value: SHORTCARD) : CARDINAL;
  226. ***** ^ undeclared identifier
  227. 184 PROCEDURE ScanNeL(Dest: ADDRESS; Count: CARDINAL; Value: SHORTCARD) : CARDINAL;
  228. ***** ^ undeclared identifier
  229. 185
  230. 186 CONST
  231. 187 (*%T _fptr *)
  232. 188 Ret = 0CBH;
  233. 189 (*%E *)
  234. 190 (*%F _fptr *)
  235. 191 Ret = 0C3H;
  236. 192 (*%E *)
  237. 193 TYPE
  238. 194 A7 = ARRAY [0..6] OF SHORTCARD;
  239. ***** ^ not supported yet
  240. ***** ^ not supported yet
  241. 195 A5 = ARRAY [0..4] OF SHORTCARD;
  242. ***** ^ not supported yet
  243. ***** ^ not supported yet
  244. 196 (*# save *)
  245. 197 (*%F _fptr *)
  246. 198 (*# call(reg_param=>(si,di,cx),reg_saved=>(ds,st1,st2), inline=>on) *)
  247. 199 INLINE PROCEDURE FastMove(source, dest: ADDRESS; num: CARDINAL)=A5(1EH,07H,0F3H,0A4H,Ret);
  248. 200 (*%E *)
  249. 201 (*%T _fptr *)
  250. 202 (*# call(reg_param=>(si,dx,es,di,cx),reg_saved=>(ds,st1,st2), inline=>on) *)
  251. 203 INLINE PROCEDURE FastMove(source, dest: ADDRESS; num: CARDINAL)=A7(1EH,8EH,0DAH,0F3H,0A4H,1FH,Ret);
  252. 204 (*%E *)
  253. 205 (*# restore *)
  254. 206
  255. 207 PROCEDURE IntToStr(V: LONGINT; size: BYTE; VAR S: convstring; Base: CARDINAL; VAR OK: BOOLEAN);
  256. 208
  257. 209 PROCEDURE StrToInt(size: BYTE; VAR S: ARRAY OF CHAR; Base: CARDINAL; VAR OK: BOOLEAN) : LONGINT;
  258. 210
  259. 211 PROCEDURE StrToReal(size: BYTE; VAR S: ARRAY OF CHAR; VAR OK: BOOLEAN) : LONGREAL;
  260. 212
  261. 213 PROCEDURE RealToStr(RN: LONGREAL; Digits: INTEGER; VAR Width: INTEGER;
  262. 214 size: BYTE; VAR S: ARRAY OF CHAR;
  263. 215 VAR OK: BOOLEAN);
  264. 216
  265. 217 PROCEDURE Caps(size: BYTE; VAR s1: ARRAY OF CHAR);
  266. 218 PROCEDURE CharPos(size: BYTE; Source: ARRAY OF CHAR; c: CHAR) : CARDINAL;
  267. 219 PROCEDURE Delete(size: BYTE; VAR s: ARRAY OF CHAR; index: CARDINAL; count: CARDINAL);
  268. 220 PROCEDURE Insert(size: BYTE; source: ARRAY OF CHAR; size: BYTE; VAR s: ARRAY OF CHAR; index: CARDINAL);
  269. 221 PROCEDURE Lows(size: BYTE; VAR s1: ARRAY OF CHAR);
  270. 222 PROCEDURE Match(size: BYTE; Source: ARRAY OF CHAR; Psize: BYTE; Pattern: ARRAY OF CHAR) : BOOLEAN;
  271. 223 PROCEDURE NextPos(size: BYTE; substr: ARRAY OF CHAR; size: BYTE; s: ARRAY OF CHAR; place: SHORTCARD): SHORTCARD;
  272. 224 PROCEDURE Pos(size: BYTE; substr: ARRAY OF CHAR; size: BYTE; s: ARRAY OF CHAR): SHORTCARD;
  273. 225 PROCEDURE RCharPos(size: BYTE; Source: ARRAY OF CHAR; c: CHAR) : CARDINAL;
  274. 226
  275. 227 END PasLib.
  276. 228
  277. 47 errors