home *** CD-ROM | disk | FTP | other *** search
/ Programming Languages Suite / ProgLangD.iso / C++-7 / DISK7 / SOURCE / STARTUP / STDIO.IN$ / STDIO
Encoding:
Text File  |  1991-11-06  |  1.5 KB  |  98 lines

  1. ;***
  2. ;stdio.inc - Definitions and declarations needed by the STDIO functions
  3. ;         written in assembler.
  4. ;
  5. ;    Copyright (c) 1988-1992, Microsoft Corporation. All rights reserved.
  6. ;
  7. ;Purpose:
  8. ;    Analog of STDIO.H and FILE2.H for assembler routines.
  9. ;
  10. ;*******************************************************************************
  11.  
  12. ; Miscellaneous constants
  13.  
  14. BUFSIZ        equ    200h
  15. EOF        equ    0FFFFh
  16.  
  17.  
  18. ; Element structure for _iob array
  19.  
  20. _iobuf    struc
  21.  
  22. if sizeD                ; far data
  23.     _ptr        dd    ?
  24.     _cnt        dw    ?
  25.     _base        dd    ?
  26.     _flag        db    ?
  27.     _file        db    ?
  28.  
  29. else                    ; near data
  30.     _ptr        dw    ?
  31.     _cnt        dw    ?
  32.     _base        dw    ?
  33.     _flag        db    ?
  34.     _file        db    ?
  35. endif
  36.  
  37. _iobuf    ends
  38.  
  39.  
  40. ; Size of _iob element (i.e., size of stream structure)
  41.  
  42. if sizeD                ; far data
  43.  
  44. _STREAMSZ    equ    12
  45.  
  46. else                    ; near data
  47.  
  48. _STREAMSZ    equ    8
  49.  
  50. endif
  51.  
  52.  
  53. ; Element structure for _iob2 array
  54.  
  55. _iobuf2 struc
  56.  
  57.     _flag2        db     ?
  58.     _charbuf    db     ?
  59.     _bufsiz     dw     ?
  60.     _tmpnum     dw     ?
  61.  
  62. if sizeD
  63.     _padding    db     6 dup (?)
  64. else
  65.     _padding    db     2 dup (?)
  66. endif
  67.  
  68. _iobuf2 ends
  69.  
  70. ; Standard streams
  71.  
  72. stdin        equ    dataOFFSET _iob
  73. stdout        equ    dataOFFSET _iob + _STREAMSZ
  74. stderr        equ    dataOFFSET _iob + 2 * _STREAMSZ
  75. stdaux        equ    dataOFFSET _iob + 3 * _STREAMSZ
  76. stdprn        equ    dataOFFSET _iob + 4 * _STREAMSZ
  77.  
  78. ; Flags
  79.  
  80. _IOREAD     equ    01h
  81. _IOWRT        equ    02h
  82.  
  83. _IOFBF        equ    0h
  84. _IOLBF        equ    040h
  85. _IONBF        equ    04h
  86.  
  87. _IOMYBUF    equ    08h
  88. _IOEOF        equ    010h
  89. _IOERR        equ    020h
  90. _IOSTRG     equ    040h
  91. _IORW        equ    080h
  92.  
  93. _IOYOURBUF    equ    01h
  94. _IOFEOF     equ    08h
  95. _IOFLRTN    equ    10h
  96. _IOCTRLZ    equ    20h
  97. _IOCOMMIT    equ    40h
  98.