flat assembler
Message board for the users of flat assembler.

Index > Main > io ports

Author
Thread Post new topic Reply to topic
ghfphx



Joined: 08 Oct 2006
Posts: 3
Location: Kenya
ghfphx
Does anyone know where I could find a list of all the in/out ports. It's really irritating when I don't know what a port does.
Post 16 Oct 2006, 18:53
View user's profile Send private message Reply with quote
arafel



Joined: 29 Aug 2006
Posts: 131
Location: Jerusalem, Israel
arafel
Google for Ralf Brown Interrupt List.
Post 16 Oct 2006, 19:05
View user's profile Send private message Reply with quote
smiddy



Joined: 31 Oct 2004
Posts: 559
smiddy
ghfphx wrote:
Does anyone know where I could find a list of all the in/out ports. It's really irritating when I don't know what a port does.


There is a mechanism within PnP that allows you to know what ports are being used for what, you'll need to read PnP specification(s). PCI programming has similar information that can be understood from those specifications. There are also several books on PC architecture that should have a listing of some of them. One that I've used is Barry Brey's The Intel Microprocessor 8086/8088, 80186/80188, 80286, 80386, 80486, Pentium, Pentium Pro Processor, Pentium II, Pentium III, Pentium 4, Architecture, Programming, and Interfacing.
Post 16 Oct 2006, 19:55
View user's profile Send private message Reply with quote
ghfphx



Joined: 08 Oct 2006
Posts: 3
Location: Kenya
ghfphx
From what I have seen of Ralf Brown's interrupt list, it only lists the interrupts and what they do. I want to find a list of most of the ports for the commands in and out.

One of the things I want to do is setting the SVGA mode without the int 10h.

Smiddy, what do you mean by PnP?
Post 17 Oct 2006, 16:32
View user's profile Send private message Reply with quote
arafel



Joined: 29 Aug 2006
Posts: 131
Location: Jerusalem, Israel
arafel
Last time I used Ralf's list was five years ago, so things may have changed. But I recall there was also a file with ports descriptions supplied along the interrupt list.
Post 17 Oct 2006, 16:53
View user's profile Send private message Reply with quote
arafel



Joined: 29 Aug 2006
Posts: 131
Location: Jerusalem, Israel
arafel
and here it is: http://www.cs.cmu.edu/afs/cs/user/ralf/pub/WWW/files.html

(get the file named 'Part D')
Post 17 Oct 2006, 16:58
View user's profile Send private message Reply with quote
Remy Vincent



Joined: 16 Sep 2005
Posts: 155
Location: France
Remy Vincent
ghfphx wrote:
Does anyone know where I could find a list of all the in/out ports. It's really irritating when I don't know what a port does.


The problem of PORTS is that they can hardly work together efficiently!!

You need to use them ONE by one... Even with separated programs.. I think

_________________
Groups lower your IQ
Post 17 Oct 2006, 21:50
View user's profile Send private message Visit poster's website Reply with quote
smiddy



Joined: 31 Oct 2004
Posts: 559
smiddy
Sorry ghfphx, I sometimes forget, PnP is short for Plug and Play. There are several documents on the web that discuss this specification. It is a bit outdate, but most all current adaptation are backwards compatible and are theoretically by default compatible with former standards. An exemple of a typical PnP device identification is:

Code:
DeviceTree - 0.08.0001 Attempt to see what devices are installed... -smiddy

PnP BIOS : 
PCI Bridge
    I/O Port 04D0 - 04D1
    I/O Port 0CF8 - 0CFF
    I/O Port 0022
    I/O Port 0072 - 0075
    I/O Port 0400 - 040F
    I/O Port 0800 - 087F
    I/O Port 0880 - 08FF
    I/O Port 002E
    I/O Port 002F
    End of Device Resources
RAM Memory 
    Memory: 00000000 - 0009FC00h - Available to OS
    Memory: 0009FC00 - 00000400h - ROM
    Memory: 000F0000 - 00010000h - ROM
    Memory: 00100000 - 27EF0000h - Available to OS
    Memory: 27FF0000 - 00008000h - ROM
    Memory: 27FF8000 - 00008000h - ROM
    Memory: FEC00000 - 00001000h - ROM
    Memory: FEE00000 - 00001000h - ROM
    Memory: FFF80000 - 00080000h - ROM
    End of Device Resources
Programmable Interrupt Controller (8259 Compatible)
    I/O Port 0020 - 0021
    I/O Port 00A0 - 00A1
    IRQ 2
    End of Device Resources
DMA Controller (8237 Compatible)
    DMA Channel 4
    I/O Port 0000 - 000F
    I/O Port 0080 - 0090
    I/O Port 0094 - 009F
    I/O Port 00C0 - 00DE
    End of Device Resources
System Timer (8254 Compatible)
    IRQ 0
    I/O Port 0040 - 0043
    End of Device Resources
Real Time Clock
    IRQ 8
    I/O Port 0070 - 0071
    End of Device Resources
Keyboard Controller
    IRQ 1
    I/O Port 0060
    I/O Port 0064
    End of Device Resources
Other System Peripheral
    I/O Port 0061
    End of Device Resources
Other System Peripheral
    IRQ D
    I/O Port 00F0 - 00FF
    End of Device Resources
Generic XT-Compatible RS-232
    I/O Port 03F8 - 03FF
    IRQ 4
    End of Device Resources
Generic XT-Compatible RS-232
    I/O Port 02F8 - 02FF
    IRQ 3
    End of Device Resources
ECP 1.? Compliant Parallel Port
    I/O Port 0378 - 037F
    I/O Port 0778 - 077A
    IRQ 7
    DMA Channel 3
    End of Device Resources
Floppy Controller
    I/O Port 03F0 - 03F5
    IRQ 6
    DMA Channel 2
    End of Device Resources
Mouse Controller
    IRQ C
    End of Device Resources
    


This was from my MSI motherboard and AMD 3000+ CPU.
Post 18 Oct 2006, 01:15
View user's profile Send private message Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2020, Tomasz Grysztar. Also on GitHub, YouTube, Twitter.

Website powered by rwasa.