mguyott@mirror.UUCP (Marc Guyott) (06/10/89)
I am looking for information about DMA channel usage. Does anyone know, or
can anyone tell me where to look to find out how many DMA channels there are
(I've seen network cards that say they use DMA 5) and what each channel is
used for (hard disk, floppy, network, etc)? I have lists for interrupts and
for port I/O addresses but I do not have this information for DMA channels.
Also, can several devices share a DMA channel?
Any help will be appreciated.
Marc
P.S. I've attached the lists I have to give people an idea of what kind of
information I'm looking for.
----
"All my life I always wanted to BE somebody.
I see now I should have been more specific."
Jane Wagner
Marc Guyott mguyott@mirror.TMC.COM
{mit-eddie, pyramid, harvard!wjh12, xait, datacube}!mirror!mguyott
Mirror Systems Cambridge, MA 02140 617/661-0777
-----
IRQ 0 - Timer.
IRQ 1 - Keyboard.
IRQ 2 - EGA vertical retrace.
IRQ 3 - COM2.
IRQ 4 - COM1.
IRQ 5 - Fixed disk.
IRQ 6 - Diskette.
IRQ 7 - LPT1.
IRQ 8 - Real time clock.
IRQ 9 - LAN adapter 1.
IRQ 10 - Reserved.
IRQ 11 - Reserved.
IRQ 12 - Mouse.
IRQ 13 - Coprocessor.
IRQ 14 - Fixed Disk.
IRQ 15 - Reserved.
-----
The following is from "The Peter Norton Programmer's Guide to the IBM PC":
Figure 2-9. The ports and port addresses used in the PCjr, the PC/XT, and
the AT computers.
Description Range
PCjr PC/XT AT
DMA Controller (8237) n/a 000-00F 000-01F
Interrupt controller (8259) 020-027 020-021 020-03F
Timer (8253;8254.2 in AT) 040-047 040-043 040-05F
PPI (8255) 060-067 060-063 n/a
Keyboard (8042) n/a n/a 060-06F
DMA page register (74LS612) n/a 080-083 080-09F
NMI mask register 0A0-0A7 0A 070-07F
Interrupt controller 2 (8259) n/a n/a 0A0-0BF
Sound generator (SN76496N) 0C0-0C7 n/a n/a
DMA controller 2 (8237) n/a n/a 0C0-0DF
Clear/reset math coprocessor n/a n/a 0F0-0F1
Math coprocessor n/a n/a 0F8-0FF
Joystick (game controller) 200-207 200-20F 200-207
Expansion unit n/a 210-217 n/a
Parallel printer (secondary) n/a n/a 278-27F
Serial port (primary) 2F8-2FF 3F8-3FF 3F8-3FF
Serial port (secondary) n/a 2F8-2FF 2F8-2FF
Prototype card n/a 300-31F 300-31F
Fixed disk n/a 320-32F 1F0-1F8
Parallel printer (primary) n/a 378-37F 378-37F
SDLC (secondary BISYNC in AT only) n/a 380-38F 380-38F
BISYNC (primary) n/a n/a 3A0-3AF
Monochrome adapter/printer n/a 3B0-3BF 3B0-3BF
Color/graphics adapter n/a 3D0-3DF 3D0-3DF
Diskette controller 0F0-0FF 3F0-3F7 3F0-3F7
-----vail@tegra.UUCP (Johnathan Vail) (06/12/89)
In article <27528@mirror.UUCP> mguyott@mirror.UUCP (Marc Guyott) writes: IRQ 0 - Timer. IRQ 1 - Keyboard. IRQ 2 - EGA vertical retrace. IRQ 3 - COM2. IRQ 4 - COM1. IRQ 5 - Fixed disk. IRQ 6 - Diskette. IRQ 7 - LPT1. IRQ 8 - Real time clock. IRQ 9 - LAN adapter 1. IRQ 10 - Reserved. IRQ 11 - Reserved. IRQ 12 - Mouse. IRQ 13 - Coprocessor. IRQ 14 - Fixed Disk. IRQ 15 - Reserved. Something seems wrong about the above but I don't have the info in front of me (just this frontal lobotomy). PC/XT only have IRQs 0-7. ATs have 8-15. On an AT IRQ 2 is the cascaded output from the second interrupt controller (IRQ8-15). Also, I believe that IRQ5 is LPT2:. Maybe the EGA shares the IRQ and software if smart enough to figure out who really interrupted. Also, maybe an XT can only have one paralell port? Maybe someone (myself when I bring the info in to work) will repost this with the distinctions between AT and XT. "Always Mount a Scratch Monkey" _____ | | Johnathan Vail | tegra!N1DXG@ulowell.edu |Tegra| (508) 663-7435 | N1DXG@145.110-,145.270-,444.2+,448.625- -----