ATADRVR-14F SOURCE for RTEMS was Re: MP3 player, IDE interface

Joel Sherrill joel.sherrill at
Wed May 8 22:31:33 UTC 2002

Chris Caudle wrote:
> On Tuesday 07 May 2002 03:44 pm, Peter Mueller wrote:
> > an IDE Disk to store music files.

> I downloaded an ATA driver placed in the public domain  by Hal Landis, but
> haven't had a chanced to study what modifications will be needed to make it
> usable under RTEMS.  It was written as a DOS driver, so there are probably a
> lot of memory model assumptions which don't hold in RTEMS.
> You can find that at:
> Lots of good ATA info in general at that site.

Rosimildo sent me there a few years ago.  I recall looking at it back
then and decided it did not look that difficult to get working under
RTEMS.  The IO accesses would just work.  There are "far" pointers
and MK_FP (make far pointer?) issues here and there but that should
be the worst of getting it to compile.  Add a dummy dos.h which
works for RTEMS. :) 

It will probably have to executed in the space of a non-preemptive
task or driver that provides mutual exclusion.  

The first big hurdles were renaming to lower case the file name,
converting the files to UNIX CR/LF handling,  and adding a dummy dos.h

And proving my assertion that not much is required, attached is
my hacked version that gets this to compile under i386-rtems.

Modifications are:

  + source files now lowercase
  + new dos.h
  + Makefile for RTEMS
  + dos2unix ran
  + Search for __rtems__

Left to address:
  + converting the examples
  + fixing the inline assembly
  + investigating the use of interrupts.
  + test, test, test

Hopefully this will help someone out there. :)

> --
> -- Chris Caudle

Joel Sherrill, Ph.D.             Director of Research & Development
joel at                 On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
Support Available                (256) 722-9985
-------------- next part --------------
A non-text attachment was scrubbed...
Name: atadrv-14F-rtems.tgz
Type: application/x-compressed
Size: 74317 bytes
Desc: not available
URL: <>

More information about the users mailing list