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.

133 lines
6.6 KiB

  1. ; INS8250 ACE Register Offsets And Bit Definitions
  2. ACE_RBR equ 0 ;Receiver Buffer
  3. ACE_THR equ 0 ;Transmit Holding Register
  4. ACE_IER equ 1 ;Interrupt Enable
  5. ACE_ERBFI equ 00000001b ; Received Data Available
  6. ACE_ETBEI equ 00000010b ; Transmitter Holding Register Empty
  7. ACE_ELSI equ 00000100b ; Receiver Line Status
  8. ACE_EDSSI equ 00001000b ; Modem Status
  9. ifdef NEC_98
  10. ACE_FCR equ 8 ;FIFO control register
  11. ACE_EFIFO equ 00000001b ; Enable FIFO
  12. ACE_CRFIFO equ 00000010b ; Clear receive FIFO queue
  13. ACE_CTFIFO equ 00000100b ; Clear transmit FIFO queue
  14. RLInt_Enable equ 00001000b ; Receiver Line Status
  15. MSInt_Enable equ 00010000b ; Modem Status
  16. ACE_TRIG01 equ 00000000b ; Trigger receive int on every char
  17. ACE_TRIG04 equ 01000000b ; Trigger receive int on every 4th char
  18. ACE_TRIG08 equ 10000000b ; Trigger receive int on every 8th char
  19. ACE_TRIG14 equ 11000000b ; Trigger receive int on every 14th char
  20. else ; NEC_98
  21. ACE_FCR equ 2 ;FIFO control register
  22. ACE_EFIFO equ 00000001b ; Enable FIFO
  23. ACE_CRFIFO equ 00000010b ; Clear receive FIFO queue
  24. ACE_CTFIFO equ 00000100b ; Clear transmit FIFO queue
  25. ACE_TRIG01 equ 00000000b ; Trigger receive int on every char
  26. ACE_TRIG04 equ 01000000b ; Trigger receive int on every 4th char
  27. ACE_TRIG08 equ 10000000b ; Trigger receive int on every 8th char
  28. ACE_TRIG14 equ 11000000b ; Trigger receive int on every 14th char
  29. endif ; NEC_98
  30. ifdef NEC_98
  31. ACE_IIDR equ 6 ;Interrupt Identification
  32. ACE_IIP equ 00000001b ; Inverted Interrupt Pending (0=int)
  33. ACE_IID equ 00000110b ; Interrupt ID
  34. ACE_MSI equ 00000000b ; Modem Status
  35. ACE_THREI equ 00000010b ; Transmitter Holding Register Empty
  36. ACE_RDAI equ 00000100b ; Received Data Available
  37. ACE_RLSI equ 00000110b ; Receiver Line Status
  38. AOBA_RECTO equ 00001000b ; Receive Charactor Time-out
  39. AOBA_PRS0 equ 00100000b ; AOBA Present
  40. AOBA_PRS1 equ 01000000b ; AOBA Present
  41. else ; NEC_98
  42. ACE_IIDR equ 2 ;Interrupt Identification
  43. ACE_IIP equ 00000001b ; Inverted Interrupt Pending (0=int)
  44. ACE_IID equ 00000110b ; Interrupt ID
  45. ACE_MSI equ 00000000b ; Modem Status
  46. ACE_THREI equ 00000010b ; Transmitter Holding Register Empty
  47. ACE_RDAI equ 00000100b ; Received Data Available
  48. ACE_RLSI equ 00000110b ; Receiver Line Status
  49. ACE_FIFO_E1 equ 01000000b ;set, if FIFO enabled on 16550A
  50. ACE_FIFO_E2 equ 10000000b ;set, if FIFO enabled on 16550 or 16550A
  51. endif ; NEC_98
  52. ACE_LCR equ 3 ;Line Control
  53. ACE_WLS equ 00000011b ; Word Length Select Bits
  54. ACE_WLS0 equ 00000001b ; Word Length Select Bit 0
  55. ACE_WLS1 equ 00000010b ; Word Length Select Bit 1
  56. ACE_5BW equ 00000000b ; 5 Bit Words
  57. ACE_6BW equ 00000001b ; 6 Bit Words
  58. ACE_7BW equ 00000010b ; 7 Bit Words
  59. ACE_8BW equ 00000011b ; 8 Bit Words
  60. ACE_STB equ 00000100b ; Stop Bits
  61. ACE_1SB equ 00000000b ; 1 Stop Bits (1.5 for 5 bit words)
  62. ACE_2SB equ 00000100b ; 2 Stop Bits
  63. ACE_PEN equ 00001000b ; Parity Enable
  64. ACE_PSB equ 00110000b ; Parity select bits
  65. ACE_EPS equ 00010000b ; Even Parity Select
  66. ACE_SP equ 00100000b ; Stick Parity
  67. ACE_SB equ 01000000b ; Set Break
  68. ACE_DLAB equ 10000000b ; Divisor Latch Access Bit
  69. ACE_MCR equ 4 ;Modem Control
  70. ACE_DTR equ 00000001b ; Data Terminal ready
  71. ACE_RTS equ 00000010b ; Request To Send
  72. ACE_OUT1 equ 00000100b ; Output Line 1
  73. ACE_OUT2 equ 00001000b ; Output Line 2
  74. ACE_LOOP equ 00010000b ; Loopback
  75. ifdef NEC_98
  76. ACE_LSR equ 2 ;Line Status
  77. ACE_THRE equ 00000001b ; Send FIFO and CCU Send Register All Empty
  78. ACE_TSRE equ 00000010b ; Send FIFO Empty
  79. ACE_DR equ 00000100b ; FIFO Data Enable
  80. ACE_PE equ 00001000b ; Parity Error with Current FIFOed Data
  81. ACE_OR equ 00010000b ; CCU Overrun Error
  82. ACE_FE equ 00100000b ; Framing Error with Current FIFOed Data
  83. ACE_BI equ 01000000b ; Break/SYNC with Current FIFOed Data
  84. AOBA_ERF1 equ 10000000b ; Error in Receive FIFO
  85. else ; NEC_98
  86. ACE_LSR equ 5 ;Line Status
  87. ACE_DR equ 00000001b ; Data Ready
  88. ACE_OR equ 00000010b ; Overrun Error
  89. ACE_PE equ 00000100b ; Parity Error
  90. ACE_FE equ 00001000b ; Framing Error
  91. ACE_BI equ 00010000b ; Break Interrupt
  92. ACE_THRE equ 00100000b ; Transmitter Holding Register Empty
  93. ACE_TSRE equ 01000000b ; Transmitter Shift Register Empty
  94. endif ; NEC_98
  95. ifdef NEC_98
  96. ACE_MSR equ 4 ;Modem Status
  97. else ; NEC_98
  98. ACE_MSR equ 6 ;Modem Status
  99. endif ; NEC_98
  100. ACE_DCTS equ 00000001b ; Delta Clear to Send
  101. ACE_DDSR equ 00000010b ; Delta Data Set Ready
  102. ACE_TERI equ 00000100b ; Trailing Edge Ring Indicator
  103. ACE_DRLSD equ 00001000b ; Delta Receive Line Signal Detect
  104. ACE_CTS equ 00010000b ; Clear To Send
  105. ACE_DSR equ 00100000b ; Data Set ready
  106. ACE_RI equ 01000000b ; Ring Indicator
  107. ACE_RLSD equ 10000000b ; Receive Line Signal Detect
  108. ACE_DLL equ 0 ;LSB Baud Rate Divisor
  109. ACE_DLM equ 1 ;MSB Baud Rate Divisor
  110. ifdef NEC_98
  111. NOT_ACE_EFIFO equ 11111110b ; disable FIFO
  112. ;------------------------------------------------------------------------------
  113. ; AOBA-bug ins 94.11.19 KBNES
  114. ;------------------------------------------------------------------------------
  115. FIFO_Set_Buf_Clr equ RLInt_Enable OR ACE_TRIG04 OR ACE_EFIFO OR ACE_CRFIFO OR ACE_CTFIFO
  116. Set_FIFO equ RLInt_Enable OR ACE_TRIG04 OR ACE_EFIFO
  117. Set_8251 equ RLInt_Enable OR ACE_TRIG04
  118. ;------------------------------------------------------------------------------
  119. ; AOBA-bug ins end 94.11.19 KBNES
  120. ;------------------------------------------------------------------------------
  121. endif ; NEC_98