18.08.2013 Views

UPGRADING REPAIRING PCs

UPGRADING REPAIRING PCs

UPGRADING REPAIRING PCs

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

54<br />

Chapter 2—System Components and Configuration<br />

I/O Port Addresses<br />

Your computer’s I/O ports enable communications between devices<br />

and software in your system. They are equivalent to two-way radio<br />

channels. If you want to talk to your serial port, you need to know<br />

which I/O port (radio channel) it is listening on. Similarly, if you<br />

want to receive data from the serial port, you need to listen on the<br />

same channel on which it is transmitting.<br />

One confusing issue is that I/O ports are designated by hexadecimal<br />

addresses similar to memory addresses. They are not memory;<br />

they are ports.<br />

Motherboard and chipset devices are normally set to use I/O port<br />

addresses from 0h to FFh, and all other devices use from 100h to<br />

FFFFh. Table 2.22 shows motherboard and chipset-based I/O port<br />

usage.<br />

Table 2.22 Motherboard and Chipset-Based Device Port Addresses<br />

Address (Hex) Size Description<br />

0000–000F 16 bytes Chipset - 8237 DMA 1<br />

0020–0021 2 bytes Chipset - 8259 interrupt controller 1<br />

002E–002F 2 bytes Super I/O controller configuration registers<br />

0040–0043 4 bytes Chipset - Counter/Timer 1<br />

0048–004B 4 bytes Chipset - Counter/Timer 2<br />

0060 1 byte Keyboard/Mouse controller byte - reset IRQ<br />

0061 1 byte Chipset - NMI, speaker control<br />

0064 1 byte Keyboard/mouse controller, CMD/STAT byte<br />

0070, bit 7 1 bit Chipset - Enable NMI<br />

0070, bits 6:0 7 bits MC146818 - Real-time clock, address<br />

0071 1 byte MC146818 - Real-time clock, data<br />

0078 1 byte Reserved - Board configuration<br />

0079 1 byte Reserved - Board configuration<br />

0080–008F 16 bytes Chipset - DMA page registers<br />

00A0–00A1 2 bytes Chipset - 8259 interrupt controller 2<br />

00B2 1 byte APM control port<br />

00B3 1 byte APM status port<br />

00C0–00DE 31 bytes Chipset - 8237 DMA 2<br />

00F0 1 byte Math coprocessor reset numeric error<br />

To find out exactly which port addresses are being used on your<br />

motherboard, consult the board documentation or look up the settings<br />

in the Windows Device Manager.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!