hd.h

00001 #include <ubixfs/ubixfs.h>
00002 
00003 #ifndef _HD_H
00004 #define _HD_H
00005 
00006 #define hdData     0x0
00007 #define hdError    0x1
00008 #define hdSecCount 0x2
00009 #define hdSecNum   0x3
00010 #define hdCylLow   0x4
00011 #define hdCylHi    0x5
00012 #define hdHead     0x6
00013 #define hdStat     0x7
00014 #define hdCmd      0x7
00015 
00016 
00017 struct driveInfo {
00018   struct driveDiskLabel *diskLabel;
00019   char hdSector[512];
00020   char hdEnable;
00021   char hdDev;
00022   char hdFlags;
00023   char hdShift;
00024   long hdMask;
00025   long hdMulti;
00026   long hdPort;
00027   long hdSize;
00028   long hdCalc;
00029   };
00030 
00031 void initHardDisk();
00032 void hdWrite(struct driveInfo *hdd,void *,uInt32,uInt32);
00033 void hdRead(struct driveInfo *hdd,void *,uInt32,uInt32);
00034 int hdReset();
00035 int hdIoctl();
00036 int hdStart();
00037 int hdStop();
00038 int hdStandby();
00039 int hdInit(struct deviceNode *dev);
00040 
00041 extern struct driveInfo *hdd0;
00042 extern struct driveInfo *hdd1;
00043 extern struct driveInfo *hdd2;
00044 extern struct driveInfo *hdd3;
00045 
00046 #endif
00047 

Generated on Wed Apr 28 17:49:34 2004 for Ubixos by doxygen 1.3.3