FDS disk switch works much better now

This commit is contained in:
dborth 2009-07-20 08:23:16 +00:00
parent 6f609f6943
commit 281bc08d35
2 changed files with 11 additions and 2 deletions

View File

@ -283,14 +283,22 @@ copy_to_xfb (u32 arg)
switch(FDSSwitchRequested) switch(FDSSwitchRequested)
{ {
case 1: case 1:
FCEUI_FDSInsert(); // eject disk
FDSSwitchRequested++; FDSSwitchRequested++;
FCEUI_FDSInsert(); // eject disk
FDSTimer = 0;
break; break;
case 2: case 2:
if(FDSTimer > 60) if(FDSTimer > 60)
{ {
FDSSwitchRequested++;
FDSTimer = 0;
FCEUI_FDSSelect(); // select other side FCEUI_FDSSelect(); // select other side
FCEUI_FDSInsert(); // insert disk FCEUI_FDSInsert(); // insert disk
}
break;
case 3:
if(FDSTimer > 200)
{
FDSSwitchRequested = 0; FDSSwitchRequested = 0;
FDSTimer = 0; FDSTimer = 0;
} }

View File

@ -538,7 +538,8 @@ static unsigned char DecodeJoy( unsigned short pad )
* we'll delay them so the virtual FDS has a chance * we'll delay them so the virtual FDS has a chance
* to process them * to process them
*/ */
FDSSwitchRequested = 1; if(FDSSwitchRequested == 0)
FDSSwitchRequested = 1;
} }
else else
FCEUI_VSUniCoin(); // insert coin for VS Games FCEUI_VSUniCoin(); // insert coin for VS Games