CD-ROM images are now working correctly again;

Fixed all the reported bugs regarding the Settings dialog;
MIDI out device is now no longer reset to 0 after hard reset;
Removed all vestiges of the old disk activity flash;
The configuration file is no longer saved when it shouldn't be;
Redone the status bar icon updating so it is only done in win.c;
Made sure all variables in ibm.h are extern;
A lot of other bugfixes;
Added Mouse Systems Mouse emulation (patch from TheCollector1995);
Added IBM PS/1 Model 2133 (486) emulation (patch from TheCollector1995);
Tweaked the CPU dynamic recompiler cycle periods - 486SX 33 and 486DX 33 now work;
Increased compatibility with configuration files from before the previous commit.
This commit is contained in:
OBattler
2017-05-29 01:18:32 +02:00
parent 84480b7347
commit fc2a293536
54 changed files with 740 additions and 372 deletions

View File

@@ -80,7 +80,7 @@ void imd_load(int drive, wchar_t *fn)
imd[drive].f = _wfopen(fn, L"rb");
if (!imd[drive].f)
{
update_status_bar_icon_state(drive, 1);
memset(discfns[drive], 0, sizeof(discfns[drive]));
return;
}
writeprot[drive] = 1;
@@ -97,7 +97,7 @@ void imd_load(int drive, wchar_t *fn)
{
pclog("IMD: Not a valid ImageDisk image\n");
fclose(imd[drive].f);
update_status_bar_icon_state(drive, 1);
memset(discfns[drive], 0, sizeof(discfns[drive]));
return;
}
else
@@ -118,7 +118,7 @@ void imd_load(int drive, wchar_t *fn)
{
pclog("IMD: No ASCII EOF character\n");
fclose(imd[drive].f);
update_status_bar_icon_state(drive, 1);
memset(discfns[drive], 0, sizeof(discfns[drive]));
return;
}
else
@@ -131,7 +131,7 @@ void imd_load(int drive, wchar_t *fn)
{
pclog("IMD: File ends after ASCII EOF character\n");
fclose(imd[drive].f);
update_status_bar_icon_state(drive, 1);
memset(discfns[drive], 0, sizeof(discfns[drive]));
return;
}
else
@@ -250,7 +250,7 @@ void imd_load(int drive, wchar_t *fn)
/* If we can't fit the sectors with a reasonable minimum gap even at 2% slower RPM, abort. */
pclog("IMD: Unable to fit the %i sectors in a track\n", track_spt);
fclose(imd[drive].f);
update_status_bar_icon_state(drive, 1);
memset(discfns[drive], 0, sizeof(discfns[drive]));
return;
}
}