First FDC Sense Interrupt Status command after post-reset ready state change results is now zero. Fixes Grey Cat Linux.
This commit is contained in:
parent
8d3c6fb195
commit
99060248b2
1 changed files with 5 additions and 2 deletions
|
|
@ -472,7 +472,7 @@ void fdc_callback()
|
||||||
case -1: /*Reset*/
|
case -1: /*Reset*/
|
||||||
//rpclog("Reset\n");
|
//rpclog("Reset\n");
|
||||||
fdc_int();
|
fdc_int();
|
||||||
fdc_reset_stat = 4;
|
fdc_reset_stat = 5;
|
||||||
return;
|
return;
|
||||||
case 2: /*Read track*/
|
case 2: /*Read track*/
|
||||||
/* if (!fdc.pos)
|
/* if (!fdc.pos)
|
||||||
|
|
@ -642,8 +642,11 @@ void fdc_callback()
|
||||||
|
|
||||||
if (fdc_reset_stat)
|
if (fdc_reset_stat)
|
||||||
{
|
{
|
||||||
fdc.st0 = (fdc.st0 & 0xf8) | (4 - fdc_reset_stat) | (fdc.head ? 4 : 0);
|
|
||||||
fdc_reset_stat--;
|
fdc_reset_stat--;
|
||||||
|
if (!fdc_reset_stat)
|
||||||
|
fdc.st0 = 0;
|
||||||
|
else
|
||||||
|
fdc.st0 = (fdc.st0 & 0xf8) | (4 - fdc_reset_stat) | (fdc.head ? 4 : 0);
|
||||||
}
|
}
|
||||||
fdc.stat = (fdc.stat & 0xf) | 0xd0;
|
fdc.stat = (fdc.stat & 0xf) | 0xd0;
|
||||||
fdc.res[9] = fdc.st0;
|
fdc.res[9] = fdc.st0;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue