Improved 8042 (AT and PS/2 keyboard controller emulation), no more hacks, split into various devices depending on vendor (generic, AMI, IBM (MCA), Quadtel, Toshiba), and fixed several commands - hopefully fixes all existing AT+ keyboard problems (such as incorrect scan codes on some machine under some circumstances);

Fixed a bug in the SMC FDC37C932 emulation, fixes the FDC on the two Acer machines;
Re-added some Acer-specific I/O port handlers, fixes entry into CMOS Setup on the two Acer machines.
This commit is contained in:
OBattler
2018-01-04 07:44:33 +01:00
parent 9b2705eb9f
commit 1d4fed2110
23 changed files with 670 additions and 312 deletions

View File

@@ -18,7 +18,7 @@
void
machine_at_init(machine_t *model)
machine_at_common_init(machine_t *model)
{
machine_common_init(model);
@@ -31,13 +31,38 @@ machine_at_init(machine_t *model)
nvr_at_init(8);
device_add(&keyboard_at_device);
if (joystick_type != 7)
device_add(&gameport_device);
}
void
machine_at_init(machine_t *model)
{
machine_at_common_init(model);
device_add(&keyboard_at_device);
}
void
machine_at_ps2_init(machine_t *model)
{
machine_at_common_init(model);
device_add(&keyboard_ps2_device);
}
void
machine_at_common_ide_init(machine_t *model)
{
machine_at_common_init(model);
ide_init();
}
void
machine_at_ide_init(machine_t *model)
{
@@ -47,6 +72,15 @@ machine_at_ide_init(machine_t *model)
}
void
machine_at_ps2_ide_init(machine_t *model)
{
machine_at_ps2_init(model);
ide_init();
}
void
machine_at_top_remap_init(machine_t *model)
{