This detailed information covers some I/O ports that are not detailed
Note: All IN and OUT examples are for 8-bit I/O
(e.g., OUT 70H,0 really means MOV al,0; OUT 70H,al)
01fH DMA (Direct Memory Access) controller See DMA Ports
060H PC/XT (Programmable Peripheral Interface) port A. Read keyboard:
IN al,60H ;fetches most recent scan code. See INT 09H
063H PC/XT PPI Command/Mode Register. See PPI Ports.
064H AT keyboard command register. This port communicates with the 8042
which runs an on-chip control program for the keyboard. It accepts
command codes and data bytes.
070H AT register address (write-only) for Real-Time Clock and CMOS RAM.
070H AT NMI mask. Use this port to mask the Non-maskable Interrupt.
An OUT with bit 7=0 enables the NMI; with bit 7=1 disables NMI:
OUT 70H,2dH ;enable NMI--2dH is a reserved addr in the CMOS Memory
OUT 70H,0adH ;disable NMI
080H AT page register used during POST to accumulate errors
0a0H PC/XT NMI mask. Enable/disable Non-maskable Int (RAM parity err)
0dfH AT DMA controller access to 16-bit DMA See DMA Ports
0f0H AT 80287 latch clear. 'Busy' gets latched upon an unmasked 287 error.
OUT 0f0H,0 ;clears the latch
0f1H AT 80287 Reset. Coprocessor is reset from protected mode to real mode
OUT 0f1H,0 ;resets the 80287 to real mode
0fcH AT 80287 data. 286 sends opcodes & operands and receives results.
210H XT Expansion chassis control port
213H XT Expansion chassis enable
215H XT Expansion chassis data bus register
215H XT Expansion chassis address register (high byte)
2efH Asynchronous Communications Adapter COM4. See Serial Ports
2ffH Asynchronous Communications Adapter COM2. See Serial Ports
3b4H- Monochrome Display Adapter (MDA) display control ports.
3baH See CGA I/O Ports for a summary of usage of the 6854 CRT controller.
The MDA has few capabilities beyond it's single standard display mode.
3e8H- asynchronous communications adapter COM3.
3f7H diskette drive controller (aka FDC) See FDC Ports
3f8H- asynchronous communications adapter COM1.