INT 13H & I/O Registers at EIDE Controller Interface

Only for programmers and BIOS gurus with technical questions.
Post Reply
Accomp
BIOS Newbie
Posts: 17
Joined: Thu Mar 13, 2003 8:08 pm
Location: Turin (Italy)
Contact:

Hi

I'm working on the Interrupt 13h Handler Routine , used with specifics value of AX register in order to execute a command on a EIDE HD controller.

I have found the following I/O register, but i need the complete list & description of this I/O ports.

1] I/O Port 0x3F2:
Use: Control of the Controller
Bits Description:
bit 1 & bit 0 -> select drive (00 A; 01=B; 10=C; 11=D)
bit 2 -> 0= Soft reset of controller
bit 3 -> 0= BUS disconnection; 1= Interrupt Enable & DMA requests
bit 4 -> 1= A motor activated
bit 5 -> 1= B motor activated
bit 6 -> 1= C motor activated
bit 7 -> 1= D motor activated

2] I/O port 0x3F4
Use: Controller Status

Bits Description:
bit 0 -> Drive A in SEEK mode
bit 1 -> Drive B in SEEK mode
bit 2 -> Drive C in SEEK mode
bit 3 -> Drive D in SEEK mode
bit 4 -> Command is in execution
bit 5 -> Non-DMA mode
bit 6 -> Data direction = From Controller To Processor
bit 7 -> READY

3] I/O port 0x3F5

Use: Controller Commands Register

Bytes Description:

02H -> Read Track
03H -> SRT, HUT, HLT, DMA status
04H -> Drive status
05H -> Write Data
06H -> Read Data
07H -> Recalibration
08H -> Interrupt Status
09H -> Write Cleared Data
0AH -> Read ID
0CH -> Read Cleared Data
0DH -> Format Track
0FH -> Seek testina
11H -> Seek on =
19H -> Seek on <=
1DH -> Seek on >=
09H -> READY

follows

4] I/O control&Status register of DMA_Processor 0x008
5] I/O control register for DMA channels management
6] I/O register for DMA Mode Selection


...I Need more documentation about the low level structur of a standard EIDE HD & FDD controller ...

Please, Help me :oops:
I need you

Regards
Accomp
maman
Master Flasher
Posts: 173
Joined: Sun Mar 31, 2002 2:08 pm
Location: Taka Bonerate National Park, Indonesia
Contact:

I have no suggestion at all, but it may be better to ask people here: http://board.win32asmcommunity.net, some of them are experts on this stuff.
Post Reply