ATAPI CD-ROM no longer lowers IRQ at the wrong time, fixes booting of some CD's;

Fixed DMA emulation, fixes Olivetti M24;
(S)VGA emulation for PS/1 and PS/2 machines now uses the old, less accurate sense switches, fixes display error on POST;
Bit 2 of the AT keyboard input port is now always held active, fixes PS/2 mouse on PS/1 and PS/2 machines;
Fixed mouse type selection on non-AT boards;
Fixed RAM type selection;
The entire palette is now overwritten when a monochrome monitor type is selected, fixes graphics mode on Hercules;
Applied updated SCAT emulation patch from PCem forum;
Nvidia Riva and S3 Virge IRQ is now configurable;
Properly applied the mainline PCem commit that fixed the Bahamas64 on the Intel AMI BIOS boards;
Commented out the Diamond Stealth 64 and the Miro Crystal S3 Vision 964 due to their non-working state;
Changed version to 1.06.
This commit is contained in:
OBattler
2017-03-01 23:23:52 +01:00
parent 99de4f11b6
commit 13683628a5
18 changed files with 498 additions and 125 deletions

View File

@@ -2745,14 +2745,6 @@ int cdrom_block_check(uint8_t id)
int alloc_length = 0;
int ret = 0;
if (!cdrom_drives[id].bus_type)
{
cdrom_log("CD-ROM %i: Lowering IDE IRQ\n", id);
ide_irq_lower(&(ide_drives[cdrom_drives[id].ide_channel]));
}
cdrom[id].status = BUSY_STAT;
/* If this is a media access command, and we hit the end of the block but not the entire length,
read the next block. */
if (cdrom_is_media_access(id))
@@ -2808,7 +2800,6 @@ void cdrom_callback(uint8_t id) /* Callback for non-Read CD commands */
int ret = 0;
int old_pos = 0;
#if 0
if (!cdrom_drives[id].bus_type)
{
cdrom_log("CD-ROM %i: Lowering IDE IRQ\n", id);
@@ -2816,7 +2807,6 @@ void cdrom_callback(uint8_t id) /* Callback for non-Read CD commands */
}
cdrom[id].status = BUSY_STAT;
#endif
if (cdrom[id].total_read >= cdrom[id].packet_len)
{