Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

103 lines
3.7 KiB

  1. ;=========================================================================
  2. ; Communications Device Driver Definitions - September, 1985
  3. ;=========================================================================
  4. .xcref
  5. WIN31 = 1
  6. ; remove unneeded things in Windows.inc
  7. NOGDICAPMASKS = 1
  8. NOVK = 1
  9. NOWH = 1
  10. NOMST = 1
  11. NORASTOPS = 1
  12. NOMETAFILE = 1
  13. NOMDI = 1
  14. NOWINMESSAGES = 1
  15. NOSYSMETRICS = 1
  16. NOCOLOR = 1
  17. include windows.inc
  18. DCBSize equ SIZE DCB
  19. DCB_Flags equ byte ptr DCB_BitMask1
  20. DCB_Flags2 equ byte ptr DCB_BitMask2
  21. LPTx equ 10000000b ;Flags an ID as being an LPT port
  22. ; DCB_BitMask1 (DCB_Flags) equates
  23. fBinary equ 00000001b ;Binary mode
  24. fRTSDisable equ 00000010b ;Disable RTS
  25. fParity equ 00000100b ;Perform Parity Checking
  26. fOutXCTSFlow equ 00001000b ;Output handshaking using CTS
  27. fOutXDSRFlow equ 00010000b ;Output handshaking using DSR
  28. fEnqAck equ 00100000b ;ENQ/ACK software handshaking [rkh] ...
  29. fEtxAck equ 01000000b ;ETX/ACK software handshaking
  30. fDTRDisable equ 10000000b ;Disable DTR
  31. ; DCB_BitMask2 (DCB_Flags2) equates
  32. fOutX equ 00000001b ;Output X-ON/X-OFF
  33. fInX equ 00000010b ;Input X-ON/X-OFF
  34. fPErrChar equ 00000100b ;Parity Error Replacement char active
  35. fNullStrip equ 00001000b ;Null Stripping
  36. fCharEvent equ 00010000b ;Character event
  37. fDTRFlow equ 00100000b ;Input handshaking using DTR
  38. fRTSFlow equ 01000000b ;Input handshaking using RTS
  39. ; equ 10000000b
  40. ; Values for RLSTimeout, CTSTimeout, DSRTimeout
  41. Ignore equ 0
  42. Infinite equ 0FFFFh
  43. ; COMS_BitMask1 equates
  44. fCTSHold equ 00000001b ;Tx is on CTS hold
  45. fDSRHold equ 00000010b ;Tx is on DSR hold
  46. fRLSDHold equ 00000100b ;Tx is on RLSD hold
  47. fXOFFHold equ 00001000b ;Received an X-OFF
  48. fXOFFSent equ 00010000b ;Sent an X-OFF
  49. fEOF equ 00100000b ;Received defined EOF character
  50. fTxImmed equ 01000000b ;There's a char to transmit immediate
  51. ; equ 10000000b
  52. ; Event mask definitions. Used by SetCommEventMask and GetCommEventMask
  53. ;
  54. ; RXCHAR - Set when any character is received and placed in the input
  55. ; queue.
  56. ; RXFLAG - Set when a particular character, as defined in the DCB,
  57. ; is received and placed in the input queue.
  58. ; TXEMPTY - Set when the last character in the transmit queue is
  59. ; transmitted.
  60. ; CTS - Set when the CTS signal changes state.
  61. ; DSR - Set when the DSR signal changes state.
  62. ; RLSD - Set when the RLSD signal changes state.
  63. ; BREAK - Set when a break is detected on input.
  64. ; RING - Set when Ring Indicator is detected
  65. ; ERR - Set when a line status error occurs.
  66. ;=========================================================================
  67. ;
  68. ; qdb
  69. ; Queue definition block. Passed to setqueue, defines the location and
  70. ; size of the transmit and receive circular queue's used for interrupt
  71. ; transmit and recieve processing.
  72. ;
  73. ;=========================================================================
  74. QDB struc
  75. QueueRxAddr dd ? ;Pointer to RX Queue, Offset
  76. QueueRxSize dw ? ;Size of RX Queue in bytes
  77. QueueTxAddr dd ? ;Pointer to TX Queue, Offset
  78. QueueTxSize dw ? ;Size of TX Queue in bytes
  79. QDB ends
  80. .cref