void vfdcTransInit() { /* NOTE: being called internally in vfdc */ /* read parameters */ vfdd.cyl = vfdc.cmd[2]; vfdd.head = vfdc.cmd[3]; vfdd.sector = vfdc.cmd[4]; vfdd.nbyte = GetBPS(vfdc.cmd[5]); vfdd.nsector = vfdc.cmd[6]; vfdd.gaplen = vfdc.cmd[7]; if (!vfdc.cmd[5]) vfdd.nbyte = vfdc.cmd[8]; vfdd.count = 0x00; vfddSetPointer; /* send trans request */ if (!vfdc.flagndma && GetENRQ(vfdc.dor)) vdmaSetDRQ(0x02); SetMSRExecCmd; }
static void transInit() { /* NOTE: being called internally in vfdc */ /* read parameters */ vfdd.data.cyl = vfdc.data.cmd[2]; vfdd.data.head = vfdc.data.cmd[3]; vfdd.data.sector = vfdc.data.cmd[4]; vfdd.data.nbyte = VFDC_GetBPS(vfdc.data.cmd[5]); vfdd.data.nsector = vfdc.data.cmd[6]; vfdd.data.gpl = vfdc.data.cmd[7]; if (!vfdc.data.cmd[5]) { vfdd.data.nbyte = vfdc.data.cmd[8]; } vfdd.connect.transCount = Zero16; vfddSetPointer; /* send trans request */ if (!vfdc.data.flagNDMA && GetBit(vfdc.data.dor, VFDC_DOR_ENRQ)) { vdmaSetDRQ(2); } SetMSRExecCmd; }