textrec.inc 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. {
  2. $Id$
  3. This file is part of the Free Pascal run time library.
  4. Copyright (c) 1993,97 by the Free Pascal development team
  5. See the file COPYING.FPC, included in this distribution,
  6. for details about the copyright.
  7. This program is distributed in the hope that it will be useful,
  8. but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  10. **********************************************************************}
  11. {
  12. This file contains the definition of the textrec record.
  13. It is put separately, so it is available outside the system
  14. unit without sacrificing TP compatibility.
  15. }
  16. Const
  17. {$ifdef linux}
  18. textrecnamelength = 255;
  19. {$endif}
  20. {$ifdef Win32}
  21. textrecnamelength = 255;
  22. {$endif}
  23. {$ifdef MACOS}
  24. textrecnamelength = 255;
  25. {$endif}
  26. {$ifdef AMIGA}
  27. textrecnamelength = 255;
  28. {$endif}
  29. {$ifdef OS2}
  30. textrecnamelength = 79;
  31. {$endif}
  32. {$ifdef Go32v1}
  33. textrecnamelength = 79;
  34. {$endif Go32v1}
  35. {$ifdef Go32v2}
  36. textrecnamelength = 79;
  37. {$endif Go32v2}
  38. {$ifdef ATARI}
  39. textrecnamelength = 79;
  40. {$endif}
  41. type
  42. textbuf = array[0..127] of char;
  43. {$PACKRECORDS 2}
  44. textrec = record
  45. {$ifdef win32}
  46. handle : longint;
  47. {$endif win32}
  48. {$ifdef amiga}
  49. handle : longint;
  50. {$endif amiga}
  51. {$ifdef macos}
  52. handle : longint;
  53. {$endif macos}
  54. {$ifdef linux}
  55. handle : word;
  56. {$endif}
  57. {$ifdef Go32v1}
  58. handle : word;
  59. {$endif Go32v1}
  60. {$ifdef Go32v2}
  61. handle : word;
  62. {$endif Go32v2}
  63. {$ifdef atari}
  64. handle : word;
  65. {$endif atari}
  66. {$ifdef os2}
  67. handle : word;
  68. {$endif os2}
  69. mode : word;
  70. bufsize,
  71. _private,
  72. bufpos,
  73. bufend : word;
  74. bufptr : ^textbuf;
  75. openfunc,
  76. inoutfunc,
  77. flushfunc,
  78. closefunc : pointer;
  79. userdata : array[1..16] of byte;
  80. name : array[0..textrecnamelength] of char;
  81. buffer : textbuf;
  82. end;
  83. {
  84. $Log$
  85. Revision 1.3 1998-05-21 15:37:19 carl
  86. + working version now ok
  87. Revision 1.2 1998/05/12 10:42:45 peter
  88. * moved getopts to inc/, all supported OS's need argc,argv exported
  89. + strpas, strlen are now exported in the systemunit
  90. * removed logs
  91. * removed $ifdef ver_above
  92. }