2590
|
1 ********************************************************************
|
|
2 * ide.d - IDE definitions
|
|
3 *
|
|
4 * $Id$
|
|
5 *
|
|
6 * (C) 2004 Boisy G. Pitre - Licensed to Cloud-9
|
|
7 *
|
|
8 * Edt/Rev YYYY/MM/DD Modified by
|
|
9 * Comment
|
|
10 * ------------------------------------------------------------------
|
|
11 * 2005/12/11 Boisy G. Pitre
|
|
12 * Moved IDE base addresses and I/O offsets to here.
|
|
13
|
|
14 *
|
|
15 * ATAPI Commands
|
|
16 *
|
|
17 A$READ2 EQU $A8
|
|
18 A$WRITE2 EQU $AA
|
|
19 A$READ EQU $28
|
|
20 A$WRITE EQU $2A
|
|
21 A$STOP EQU $1B
|
|
22
|
|
23 *
|
|
24 * ATA Commands
|
|
25 *
|
|
26 S$READ EQU $20
|
|
27 S$WRITE EQU $30
|
|
28
|
|
29 *
|
|
30 * IDE Registers
|
|
31 *
|
|
32 DataReg EQU 0 Data (1st 8 bits, non-latched)
|
|
33 ErrorReg EQU 1 Error # when read
|
|
34 Features EQU 1 Features when write
|
|
35 SectCnt EQU 2 Sector count
|
|
36 SectNum EQU 3 Sector #
|
|
37 CylLow EQU 4 Low byte of cylinder
|
|
38 CylHigh EQU 5 High byte of cylinder
|
|
39 DevHead EQU 6 Device/Head
|
|
40 Status EQU 7 Status when read
|
|
41 Command EQU 7 Command when write
|
|
42 Latch EQU 8 Latch (2nd 8 bits of 16 bit word)
|
|
43
|
|
44 BusyBit EQU %10000000 BUSY=1
|
|
45 DrdyBit EQU %01000000 drive ready=1
|
|
46 DscBit EQU %00010000 seek finished=1
|
|
47 DrqBit EQU %00001000 data requested=1
|
|
48 ErrBit EQU %00000001 error_reg has it
|
|
49 RdyTrk EQU %01010000 ready & over track
|
|
50 RdyDrq EQU %01011000 ready w/ data
|
|
51
|
|
52 **** IDE Interface Definitions
|
|
53 IFNE IDE
|
|
54 SDAddr SET $FF50
|
|
55 ENDC
|