The Super I/O chip keyboard controllers and a compile fix to the PS/55 machines.
This commit is contained in:
@@ -1793,7 +1793,6 @@ ps55_mca_board_model_50t_init(void)
|
||||
ps2.split_addr = mem_size * 1024;
|
||||
/* The slot 5 is reserved for the Integrated Fixed Disk II (an internal ESDI hard drive). */
|
||||
mca_init(5);
|
||||
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
|
||||
|
||||
ps2.planar_read = ps55_model_50t_read;
|
||||
ps2.planar_write = ps55_model_50tv_write;
|
||||
@@ -1837,7 +1836,6 @@ ps55_mca_board_model_50v_init(void)
|
||||
ps2.split_addr = mem_size * 1024;
|
||||
/* The slot 5 is reserved for the Integrated Fixed Disk II (an internal ESDI hard drive). */
|
||||
mca_init(5);
|
||||
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
|
||||
|
||||
ps2.planar_read = ps55_model_50v_read;
|
||||
ps2.planar_write = ps55_model_50tv_write;
|
||||
@@ -1889,7 +1887,7 @@ ps55_mca_board_model_50v_init(void)
|
||||
}
|
||||
|
||||
int
|
||||
machine_ps55_model_50t_init(const machine_t* model)
|
||||
machine_ps55_model_50t_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
@@ -1914,11 +1912,13 @@ machine_ps55_model_50t_init(const machine_t* model)
|
||||
ps2.planar_id = 0xffee;
|
||||
ps55_mca_board_model_50t_init();
|
||||
|
||||
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
int
|
||||
machine_ps55_model_50v_init(const machine_t* model)
|
||||
machine_ps55_model_50v_init(const machine_t *model)
|
||||
{
|
||||
int ret;
|
||||
|
||||
@@ -1939,5 +1939,7 @@ machine_ps55_model_50v_init(const machine_t* model)
|
||||
ps2.planar_id = 0xf1ff;
|
||||
ps55_mca_board_model_50v_init();
|
||||
|
||||
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -767,17 +767,17 @@ fdc37c67x_init(const device_t *info)
|
||||
dev->kbc = device_add(&kbc_ps2_compaq_device);
|
||||
break;
|
||||
case FDC37XXX2:
|
||||
dev->kbc = device_add(&kbc_ps2_intel_ami_pci_device);
|
||||
dev->kbc = device_add_params(&kbc_ps2_ami_device, (void *) 0x00003500);
|
||||
break;
|
||||
case FDC37XXX3:
|
||||
default:
|
||||
dev->kbc = device_add(&kbc_ps2_pci_device);
|
||||
dev->kbc = device_add(&kbc_ps2_device);
|
||||
break;
|
||||
case FDC37XXX5:
|
||||
dev->kbc = device_add(&kbc_ps2_phoenix_device);
|
||||
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00013800);
|
||||
break;
|
||||
case FDC37XXX7:
|
||||
dev->kbc = device_add(&kbc_ps2_phoenix_pci_device);
|
||||
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00041600);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
@@ -1922,17 +1922,17 @@ fdc37c93x_init(const device_t *info)
|
||||
dev->kbc = device_add(&kbc_ps2_compaq_device);
|
||||
break;
|
||||
case FDC37XXX2:
|
||||
dev->kbc = device_add(&kbc_ps2_intel_ami_pci_device);
|
||||
dev->kbc = device_add_params(&kbc_ps2_ami_device, (void *) 0x00003500);
|
||||
break;
|
||||
case FDC37XXX3:
|
||||
default:
|
||||
dev->kbc = device_add(&kbc_ps2_pci_device);
|
||||
dev->kbc = device_add(&kbc_ps2_device);
|
||||
break;
|
||||
case FDC37XXX5:
|
||||
dev->kbc = device_add(&kbc_ps2_phoenix_device);
|
||||
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00013800);
|
||||
break;
|
||||
case FDC37XXX7:
|
||||
dev->kbc = device_add(&kbc_ps2_phoenix_pci_device);
|
||||
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00041600);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
@@ -658,17 +658,17 @@ fdc37m60x_init(const device_t *info)
|
||||
dev->kbc = device_add(&kbc_ps2_compaq_device);
|
||||
break;
|
||||
case FDC37XXX2:
|
||||
dev->kbc = device_add(&kbc_ps2_intel_ami_pci_device);
|
||||
dev->kbc = device_add_params(&kbc_ps2_ami_device, (void *) 0x00003500);
|
||||
break;
|
||||
case FDC37XXX3:
|
||||
default:
|
||||
dev->kbc = device_add(&kbc_ps2_pci_device);
|
||||
dev->kbc = device_add(&kbc_ps2_device);
|
||||
break;
|
||||
case FDC37XXX5:
|
||||
dev->kbc = device_add(&kbc_ps2_phoenix_device);
|
||||
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00013800);
|
||||
break;
|
||||
case FDC37XXX7:
|
||||
dev->kbc = device_add(&kbc_ps2_phoenix_pci_device);
|
||||
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00041600);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
#include <86box/fdd.h>
|
||||
#include <86box/fdc.h>
|
||||
#include <86box/gameport.h>
|
||||
#include <86box/keyboard.h>
|
||||
#include <86box/sio.h>
|
||||
#include <86box/isapnp.h>
|
||||
#include <86box/plat_fallthrough.h>
|
||||
@@ -854,6 +855,9 @@ it86x1f_init(UNUSED(const device_t *info))
|
||||
dev->unlock_id = it86x1f_models[i].unlock_id;
|
||||
io_sethandler(0x279, 1, NULL, NULL, NULL, it86x1f_write_unlock, NULL, NULL, dev);
|
||||
|
||||
if (info->local == ITE_IT8671F)
|
||||
device_add_params(&kbc_ps2_ami_device, (void *) 0x00004800);
|
||||
|
||||
it86x1f_reset(dev);
|
||||
|
||||
return dev;
|
||||
|
||||
@@ -537,13 +537,13 @@ pc87306_init(UNUSED(const device_t *info))
|
||||
switch (dev->kbc_type) {
|
||||
case PCX730X_AMI:
|
||||
default:
|
||||
dev->kbc = device_add(&kbc_ps2_intel_ami_pci_device);
|
||||
dev->kbc = device_add_params(&kbc_ps2_ami_device, (void *) 0x00003500);
|
||||
break;
|
||||
case PCX730X_PHOENIX_42:
|
||||
dev->kbc = device_add(&kbc_ps2_phoenix_device);
|
||||
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00013700);
|
||||
break;
|
||||
case PCX730X_PHOENIX_42I:
|
||||
dev->kbc = device_add(&kbc_ps2_phoenix_pci_device);
|
||||
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00041600);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
@@ -902,16 +902,16 @@ pc87307_init(const device_t *info)
|
||||
lpt_set_cnfga_readout(dev->lpt, 0x14);
|
||||
|
||||
switch (info->local & PCX730X_KBC) {
|
||||
default:
|
||||
case PCX730X_AMI:
|
||||
dev->kbc = device_add(&kbc_ps2_intel_ami_pci_device);
|
||||
default:
|
||||
dev->kbc = device_add_params(&kbc_ps2_ami_device, (void *) 0x00003500);
|
||||
break;
|
||||
/* Optiplex! */
|
||||
case PCX730X_PHOENIX_42:
|
||||
dev->kbc = device_add(&kbc_ps2_phoenix_device);
|
||||
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00013700);
|
||||
break;
|
||||
case PCX730X_PHOENIX_42I:
|
||||
dev->kbc = device_add(&kbc_ps2_phoenix_pci_device);
|
||||
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00041600);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
@@ -737,16 +737,16 @@ pc87309_init(const device_t *info)
|
||||
lpt_set_cnfga_readout(dev->lpt, 0x14);
|
||||
|
||||
switch (info->local & PCX730X_KBC) {
|
||||
default:
|
||||
case PCX730X_AMI:
|
||||
dev->kbc = device_add(&kbc_ps2_intel_ami_pci_device);
|
||||
default:
|
||||
dev->kbc = device_add_params(&kbc_ps2_ami_device, (void *) 0x00003500);
|
||||
break;
|
||||
/* Optiplex! */
|
||||
case PCX730X_PHOENIX_42:
|
||||
dev->kbc = device_add(&kbc_ps2_phoenix_device);
|
||||
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00013700);
|
||||
break;
|
||||
case PCX730X_PHOENIX_42I:
|
||||
dev->kbc = device_add(&kbc_ps2_phoenix_pci_device);
|
||||
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00041600);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user