Subject: Re: IDE Support & How to find the base address ?
To: Gwenole Beauchesne <gwenole.beauchesne@iname.com>
From: Colin Wood <cwood@ichips.intel.com>
List: port-mac68k
Date: 03/03/1998 09:17:48
Gwenole Beauchesne wrote:
[Charset ISO-8859-1 unsupported, filtering to ASCII...]
> 
> Is there any IDE support planned ?

No one has tried yet, probably b/c most of the people who have done
development don't own machines with and IDE drive.

> If not, if one find the "base
> address", will it be ? But how could we find this info ?

Chances are that it is either in a low memory global or in the driver.
You might also look at the developer notes for your particular machine.

> FYI: I tried those commands in Macs'Bug following the basic instructions
> posted in a how-to document (hosted on MacBSD) for finding video base
> address (!)...
> 
> >>> drvr <<<
> 
>  Displaying Driver Control Entries
>   dRef dNum Driver    Flg  Ver   qHead   Storage Dely  Drvr at DCE at
>   FFFE 0001 .Sony     bPO   #2 00000000 00000000 0000 4086C3E0 00006620
>   FFFC 0003 .Sound    bPO   #0 00000000 00006B60 0000 408E59F0 00006B20
>   FFFB 0004 .Sony     bPO   #2 00000000 00000000 0000 4086C3E0 00006620
>   FFFA 0005 .AIn      bPC   #6 00000000 00000000 0000 4086ABCA 00006E20
>   FFF9 0006 .AOut     bPC   #6 00000000 00000000 0000 4086ABE2 00006E60
>   FFF8 0007 .BIn      bPC   #6 00000000 00000000 0000 4086ABFA 00006EA0
>   FFF7 0008 .BOut     bPC   #6 00000000 00000000 0000 4086AC12 00006EE0
>   FFCF 0030 .Display_ bHO   #0 00000000 00002120 0000 00007A40 00006BA0
>   FFCE 0031 .netBOOT  bPO   #0 00000000 000069F0 0000 40851CB0 000069B0
>   FFCC 0033 .EDisk    bPC   #0 00000000 00000000 0000 408E7500 00006AE0
>   FFCB 0034 .BCScreen bPO   #0 00000000 000076F0 0000 408E63A0 000076B0
>   FFCA 0035 .ATDrvr   bPO   #0 00000000 0000CF22 0000 0000994E 0000CB40
>   #64 Unit Table entries, #12 in use, #52 free
> 
> [There, I thought .ATDrvr would be ATA Driver ?]

Maybe.

> >>> dm 994E <<<

Try:  "dm dCtlEntry CB40" instead (at least I think that's what it is).
Actually, there's another data type that's useful (but I can't remember at
the moment b/c NetBSD doesn't have MacsBug :-).  Maybe "dm drvr 994E".
Basically, the driver has a header which points to it's various functions
(open, close, prime, ctl, status).  You can then disassemble these to see
what's going on (assuming that you understand m68k assembly, which really
isn't all that difficult once you get used to it).  Presumably, the base
address of the controller will be mentioned in the open() routine.  I'd
suggest that you read through a copy of Inside Macintosh: Devices, first,
tho, just so you can understand how the Device Manager works and perhaps
have some idea of what you're looking at.  You can get a pdf version of it
off of Apple's ftp sites.

I hope this helps.

Later.  

-- 
Colin Wood                                 cwood@ichips.intel.com
Component Design Engineer - MD6                 Intel Corporation
-----------------------------------------------------------------
I speak only on my own behalf, not for my employer.