COREIO.LST 8.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189
  1. Listing:
  2. 1 (* Release 3.10 *)
  3. 2 (*-------------------------------------------------------------------------*
  4. 3 * *
  5. 4 * COREIO.DEF - Modula-2 interface to COREIO.A *
  6. 5 * *
  7. 6 * COPYRIGHT (C) 1989..1992 Clarion Software Corporation. *
  8. 7 * All Rights Reserved *
  9. 8 * *
  10. 9 *--------------------------------------------------------------------------*)
  11. 10
  12. 11 DEFINITION MODULE CoreIO;
  13. 12
  14. 13 (*# save *)
  15. 14 (*# call(o_a_size=>off, o_a_copy=>off, c_conv=>on, result_optional=>on) *)
  16. 15 (*# module(implementation=>off, init_code=>off) *)
  17. 16 (*# name(prefix=>c) *)
  18. 17
  19. 18 CONST
  20. 19 SEEK_SET = 0;
  21. 20 SEEK_END = 2;
  22. 21
  23. 22 O_RDONLY = {};
  24. ***** ^ not supported yet
  25. 23 O_WRONLY = {0};
  26. ***** ^ not supported yet
  27. 24 O_RDWR = {1};
  28. ***** ^ not supported yet
  29. 25
  30. 26 O_CREAT = {8}; (* create and open file *)
  31. ***** ^ not supported yet
  32. 27 O_TRUNC = {9}; (* open with truncation *)
  33. ***** ^ not supported yet
  34. 28 O_EXCL = {10}; (* exclusive open *)
  35. ***** ^ not supported yet
  36. 29 _O_EOF = {9}; (* set when text file hits ^Z *)
  37. ***** ^ not supported yet
  38. 30 O_APPEND = {11}; (* to end of file *)
  39. ***** ^ not supported yet
  40. 31
  41. 32 (* File mode special bits. User may only read these bits *)
  42. 33
  43. 34 O_CHANGED= {12}; (* File has been written *)
  44. ***** ^ not supported yet
  45. 35 O_DEVICE = {13}; (* user read only flag *)
  46. ***** ^ not supported yet
  47. 36 O_TEXT = {14}; (* CR-LF translation *)
  48. ***** ^ not supported yet
  49. 37 O_BINARY = {15}; (* no translation *)
  50. ***** ^ not supported yet
  51. 38
  52. 39 _F_READ = {0}; (* Read only file *)
  53. ***** ^ not supported yet
  54. 40 _F_WRIT = {1}; (* Write only file *)
  55. ***** ^ not supported yet
  56. 41 _F_UBUF = {2}; (* User allocated buffer *)
  57. ***** ^ not supported yet
  58. 42 _F_APP = {3}; (* Append data *)
  59. ***** ^ not supported yet
  60. 43 _F_ERR = {4}; (* Error *)
  61. ***** ^ not supported yet
  62. 44 _F_EOF = {5}; (* EOF *)
  63. ***** ^ not supported yet
  64. 45 _F_BIN = {6}; (* Binary file *)
  65. ***** ^ not supported yet
  66. 46 _F_IN = {7}; (* Data is incoming *)
  67. ***** ^ not supported yet
  68. 47 _F_OUT = {8}; (* Data is outgoing *)
  69. ***** ^ not supported yet
  70. 48 _F_DEV = {9}; (* File is terminal *)
  71. ***** ^ not supported yet
  72. 49 _F_RST = {10}; (* Newly opened stream *)
  73. ***** ^ not supported yet
  74. 50 _F_LBUF = {11}; (* line buffered stream *)
  75. ***** ^ not supported yet
  76. 51 _F_CTZ = {12};
  77. ***** ^ not supported yet
  78. 52 _F_RDWR = {0..1}; (* Read/write *)
  79. ***** ^ not supported yet
  80. ***** ^ not supported yet
  81. 53
  82. 54 EZERO = 0; (* No Error *)
  83. 55 EINVF = 1; (* Invalid function code *)
  84. 56 ENOENT = 2; (* File not found *)
  85. 57 ENOPATH = 3; (* Path not found *)
  86. 58 EMFILE = 4; (* Too many open files *)
  87. 59 EACCES = 5; (* Access denied *)
  88. 60 EBADF = 6; (* Invalid handle *)
  89. 61 E2BIG = 7; (* Memory blocks destroyed *)
  90. 62 ENOMEM = 8; (* Insufficient Memory *)
  91. 63 EINVMEM = 9; (* Invalid memory block address *)
  92. 64 EINVENV = 10; (* Invalid environment *)
  93. 65 EINVFMT = 11; (* Invalid format *)
  94. 66 EINVACC = 12; (* Invalid access code *)
  95. 67 EINVDAT = 13; (* Invalid data *)
  96. 68 ENODEV = 15; (* Invalid drive *)
  97. 69 ECURDIR = 16; (* Attempt to remove CurDir *)
  98. 70 ENOTSAM = 17; (* Not same device *)
  99. 71 ENMFILE = 18; (* No more files *)
  100. 72
  101. 73 (* RTL error codes *)
  102. 74
  103. 75 EINVAL = 19; (* Invalid argument *)
  104. 76 ENOTDIR = 20; (* Not directory *)
  105. 77 EISDIR = 21; (* Is directory *)
  106. 78 ENOEXEC = 22; (* Corrupted exec file *)
  107. 79 EMLINK = 32; (* Cross-device link *)
  108. 80
  109. 81 EDOM = 33; (* Math argument *)
  110. 82 ERANGE = 34; (* Result too large *)
  111. 83 EDEADLOCK= 36; (* file locking deadlock *)
  112. 84 EEXIST = 80; (* File exists MSDOS 3.0 + *)
  113. 85 EDISKFUL = 0F0H; (* Write error - disk full? *)
  114. 86
  115. 87 EFAULT = -1; (* Unknown error *)
  116. 88
  117. 89 PROCEDURE getcurdir(Drive: INTEGER; Path: ARRAY OF CHAR): INTEGER;
  118. ***** ^ not supported yet
  119. 90 PROCEDURE isatty(Handle: INTEGER): INTEGER;
  120. 91 PROCEDURE _creat(Path: ARRAY OF CHAR; Permission: INTEGER): INTEGER;
  121. ***** ^ not supported yet
  122. 92 PROCEDURE _creat_trunc(Path: ARRAY OF CHAR; Permission: INTEGER): INTEGER;
  123. ***** ^ not supported yet
  124. 93 PROCEDURE chdir(Path: ARRAY OF CHAR): INTEGER;
  125. ***** ^ not supported yet
  126. 94 PROCEDURE delay(MS: INTEGER);
  127. 95 PROCEDURE findnext(Buffer: ARRAY OF BYTE): INTEGER;
  128. ***** ^ undeclared identifier
  129. 96 PROCEDURE lseek(Handle: INTEGER; Pos: LONGINT; Whence: CARDINAL): LONGINT;
  130. 97 PROCEDURE mkdir(Path: ARRAY OF CHAR): INTEGER;
  131. ***** ^ not supported yet
  132. 98 PROCEDURE read(Handle: INTEGER; Buf: ADDRESS; Count: INTEGER): INTEGER;
  133. ***** ^ undeclared identifier
  134. 99 PROCEDURE rename(Old, New: ARRAY OF CHAR): INTEGER;
  135. ***** ^ not supported yet
  136. 100 PROCEDURE rmdir(Path: ARRAY OF CHAR): INTEGER;
  137. ***** ^ not supported yet
  138. 101 PROCEDURE tell(Handle: INTEGER): LONGINT;
  139. 102 PROCEDURE unlink(Path: ARRAY OF CHAR): INTEGER;
  140. ***** ^ not supported yet
  141. 103 PROCEDURE write(Handle: INTEGER; Buf: ADDRESS; Count: INTEGER): INTEGER;
  142. ***** ^ undeclared identifier
  143. 104 PROCEDURE _close(Handle: INTEGER): INTEGER;
  144. 105 PROCEDURE _dos_close(Handle: INTEGER): CARDINAL;
  145. 106 PROCEDURE _dos_findfirst(Path: ARRAY OF BYTE; Attr: CARDINAL; Buffer: ARRAY OF BYTE): INTEGER;
  146. ***** ^ undeclared identifier
  147. ***** ^ undeclared identifier
  148. 107 PROCEDURE _dos_findnext(Buffer: ARRAY OF BYTE): INTEGER;
  149. ***** ^ undeclared identifier
  150. 108 PROCEDURE _dos_read(Handle: INTEGER; Buffer: FarADDRESS; Count: CARDINAL; VAR NumRead: CARDINAL): CARDINAL;
  151. ***** ^ undeclared identifier
  152. 109 PROCEDURE _dos_write(Handle: INTEGER; Buffer: FarADDRESS; Count: CARDINAL; VAR NumWrit: CARDINAL): CARDINAL;
  153. ***** ^ undeclared identifier
  154. 110 PROCEDURE _eof(Handle: INTEGER): INTEGER;
  155. 111 PROCEDURE _open(Path: ARRAY OF CHAR; Mode: INTEGER): INTEGER;
  156. ***** ^ not supported yet
  157. 112 PROCEDURE _read(Handle: INTEGER; Buf: ADDRESS; Count: INTEGER): INTEGER;
  158. ***** ^ undeclared identifier
  159. 113 PROCEDURE _write(Handle: INTEGER; Buf: ADDRESS; Count: INTEGER): INTEGER;
  160. ***** ^ undeclared identifier
  161. 114 PROCEDURE _os2_open(Path: ARRAY OF CHAR; Access: CARDINAL; mode: CARDINAL; flag: CARDINAL): INTEGER;
  162. ***** ^ not supported yet
  163. 115
  164. 116 (*# save *)
  165. 117 (*# call(reg_param=>(dx,ax), reg_saved=>(ds, di, si,st1,st2)) *)
  166. 118 PROCEDURE _exists(Path: ARRAY OF CHAR): INTEGER;
  167. ***** ^ not supported yet
  168. 119 (*# restore *)
  169. 120
  170. 121 (*# save *)
  171. 122 (*# call(reg_param=>(ax,bx,cx,dx)) *)
  172. 123 PROCEDURE _pascreate(Path: ARRAY OF CHAR): INTEGER;
  173. ***** ^ not supported yet
  174. 124 PROCEDURE _pasopen(Path: ARRAY OF CHAR; Mode: INTEGER): INTEGER;
  175. ***** ^ not supported yet
  176. 125 (*# restore *)
  177. 126
  178. 127 VAR
  179. 128 _doserrno: INTEGER;
  180. 129 _fmode: CARDINAL;
  181. 130 _fmask: CARDINAL;
  182. 131
  183. 132 END CoreIO.
  184. ***** ^ not supported yet
  185. 51 errors