第1章ZLG/CF 驱动使用 - Read
第1章ZLG/CF 驱动使用 - Read
第1章ZLG/CF 驱动使用 - Read
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
** DISK_CLOSE:关闭驱动器(移除驱动程序)<br />
** DISK_CREATE_BOOT_SECTOR:重建引导扇区<br />
** DISK_READ_SECTOR:读扇区<br />
** DISK_WRITE_SECTOR:写扇区<br />
** Parameter:剩余参数<br />
** 输 出: DISK_READ_OK:读扇区完成<br />
** DISK_READ_NOT_OK:读扇区失败<br />
** DISK_WRITE_OK:写扇区完成<br />
** DISK_WRITE_NOT_OK:写扇区失败<br />
** DISK_INIT_OK:初始化完成<br />
** DISK_INIT_NOT_OK:初始化失败<br />
** BAD_DISK_COMMAND:无效的命令<br />
** 全局变量: 无<br />
** 调用模块: 无<br />
******************************************************************************************/<br />
{<br />
uint16 rt;<br />
uint16 <strong>CF</strong>Cammand(uint8 Cammand, void *Parameter)<br />
Disk_RW_Parameter * Dp;<br />
Disk_Info *DiskInfo;<br />
Dp = (Disk_RW_Parameter *)Parameter;<br />
switch (Cammand)<br />
{<br />
case DISK_INIT: /*设备初始化*/<br />
rt = DISK_INIT_NOT_OK;<br />
if(ATA[0].ATAIsOK == TRUE) (1)<br />
{<br />
}<br />
break;<br />
DiskInfo = GetEmptyDiskInfoAddr();<br />
if (DiskInfo != NULL)<br />
{<br />
}<br />
case DISK_CLOSE:<br />
rt = RETURN_OK;<br />
break;<br />
DiskInfo->DiakCommand = <strong>CF</strong>Cammand;<br />
DiskInfo->RsvdForLow = GetVolumeFirstSect(0); (2)<br />
rt = DISK_INIT_OK;<br />
case DISK_READ_SECTOR: /*读扇区*/<br />
rt = DISK_READ_NOT_OK;<br />
if(ATA_<strong>Read</strong>Sector(0,(uint16*)Dp->Buf, Dp->SectorIndex + Dp->RsvdForLow,1)) (3)<br />
{