Fixed some things regarding the PS/2 Model 70 Type 3 and 4 (but the 12903 error remains, and is also present on PCem, so waiting for an upstream fix), and slightly debloated the PS/2 MCA code.

This commit is contained in:
OBattler
2018-03-22 19:05:51 +01:00
parent 6ebdd0e461
commit c162a4cb1e
4 changed files with 85 additions and 138 deletions

View File

@@ -8,7 +8,7 @@
*
* Intel 8042 (AT keyboard controller) emulation.
*
* Version: @(#)keyboard_at.c 1.0.32 2018/03/19
* Version: @(#)keyboard_at.c 1.0.33 2018/03/22
*
* Authors: Sarah Walker, <http://pcem-emulator.co.uk/>
* Miran Grca, <mgrca8@gmail.com>
@@ -1900,6 +1900,10 @@ kbd_init(const device_t *info)
timer_add(kbd_poll, &keyboard_delay, TIMER_ALWAYS_ENABLED, kbd);
if ((kbd->flags & KBC_TYPE_MASK) != KBC_TYPE_ISA) {
if ((kbd->flags & KBC_TYPE_MASK) == KBC_TYPE_PS2_2)
keyboard_mode &= ~0x03; /* These machines force translation off, so the keyboard
must start in scan code set 0. */
timer_add(kbd_refresh,
&kbd->refresh_time, TIMER_ALWAYS_ENABLED, kbd);
}
@@ -2020,6 +2024,16 @@ const device_t keyboard_ps2_mca_device = {
NULL, NULL, NULL, NULL
};
const device_t keyboard_ps2_mca_2_device = {
"PS/2 Keyboard",
0,
KBC_TYPE_PS2_2 | KBC_VEN_IBM_MCA,
kbd_init,
kbd_close,
kbd_reset,
NULL, NULL, NULL, NULL
};
const device_t keyboard_ps2_quadtel_device = {
"PS/2 Keyboard (Quadtel/MegaPC)",
0,