Round 2 of the clean-ups - AT vs. PS/2 KBC is now decided based on machine flags, reduces the chances of mismatch to zero.

This commit is contained in:
OBattler
2025-08-23 15:05:08 +02:00
parent 5204f44a4a
commit 467b6b8f77
21 changed files with 366 additions and 517 deletions

View File

@@ -530,7 +530,7 @@ ali5123_init(const device_t *info)
io_sethandler(FDC_PRIMARY_ADDR, 0x0002,
ali5123_read, NULL, NULL, ali5123_write, NULL, NULL, dev);
device_add(&kbc_ps2_ali_device);
device_add(&kbc_at_ali_device);
return dev;
}

View File

@@ -764,20 +764,20 @@ fdc37c67x_init(const device_t *info)
switch (dev->kbc_type) {
case FDC37XXX1:
dev->kbc = device_add(&kbc_ps2_compaq_device);
dev->kbc = device_add(&kbc_at_compaq_device);
break;
case FDC37XXX2:
dev->kbc = device_add_params(&kbc_ps2_ami_device, (void *) 0x00003500);
dev->kbc = device_add_params(&kbc_at_ami_device, (void *) 0x00003500);
break;
case FDC37XXX3:
default:
dev->kbc = device_add(&kbc_ps2_device);
dev->kbc = device_add(&kbc_at_device);
break;
case FDC37XXX5:
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00013800);
dev->kbc = device_add_params(&kbc_at_phoenix_device, (void *) 0x00013800);
break;
case FDC37XXX7:
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00041600);
dev->kbc = device_add_params(&kbc_at_phoenix_device, (void *) 0x00041600);
break;
}

View File

@@ -1919,20 +1919,20 @@ fdc37c93x_init(const device_t *info)
switch (dev->kbc_type) {
case FDC37XXX1:
dev->kbc = device_add(&kbc_ps2_compaq_device);
dev->kbc = device_add(&kbc_at_compaq_device);
break;
case FDC37XXX2:
dev->kbc = device_add_params(&kbc_ps2_ami_device, (void *) 0x00003500);
dev->kbc = device_add_params(&kbc_at_ami_device, (void *) 0x00003500);
break;
case FDC37XXX3:
default:
dev->kbc = device_add(&kbc_ps2_device);
dev->kbc = device_add(&kbc_at_device);
break;
case FDC37XXX5:
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00013800);
dev->kbc = device_add_params(&kbc_at_phoenix_device, (void *) 0x00013800);
break;
case FDC37XXX7:
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00041600);
dev->kbc = device_add_params(&kbc_at_phoenix_device, (void *) 0x00041600);
break;
}

View File

@@ -655,20 +655,20 @@ fdc37m60x_init(const device_t *info)
switch (dev->kbc_type) {
case FDC37XXX1:
dev->kbc = device_add(&kbc_ps2_compaq_device);
dev->kbc = device_add(&kbc_at_compaq_device);
break;
case FDC37XXX2:
dev->kbc = device_add_params(&kbc_ps2_ami_device, (void *) 0x00003500);
dev->kbc = device_add_params(&kbc_at_ami_device, (void *) 0x00003500);
break;
case FDC37XXX3:
default:
dev->kbc = device_add(&kbc_ps2_device);
dev->kbc = device_add(&kbc_at_device);
break;
case FDC37XXX5:
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00013800);
dev->kbc = device_add_params(&kbc_at_phoenix_device, (void *) 0x00013800);
break;
case FDC37XXX7:
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00041600);
dev->kbc = device_add_params(&kbc_at_phoenix_device, (void *) 0x00041600);
break;
}

View File

@@ -856,7 +856,7 @@ it86x1f_init(UNUSED(const device_t *info))
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);
device_add_params(&kbc_at_ami_device, (void *) 0x00004800);
it86x1f_reset(dev);

View File

@@ -537,13 +537,13 @@ pc87306_init(UNUSED(const device_t *info))
switch (dev->kbc_type) {
case PCX730X_AMI:
default:
dev->kbc = device_add_params(&kbc_ps2_ami_device, (void *) 0x00003500);
dev->kbc = device_add_params(&kbc_at_ami_device, (void *) 0x00003500);
break;
case PCX730X_PHOENIX_42:
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00013700);
dev->kbc = device_add_params(&kbc_at_phoenix_device, (void *) 0x00013700);
break;
case PCX730X_PHOENIX_42I:
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00041600);
dev->kbc = device_add_params(&kbc_at_phoenix_device, (void *) 0x00041600);
break;
}

View File

@@ -904,14 +904,14 @@ pc87307_init(const device_t *info)
switch (info->local & PCX730X_KBC) {
case PCX730X_AMI:
default:
dev->kbc = device_add_params(&kbc_ps2_ami_device, (void *) 0x00003500);
dev->kbc = device_add_params(&kbc_at_ami_device, (void *) 0x00003500);
break;
/* Optiplex! */
case PCX730X_PHOENIX_42:
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00013700);
dev->kbc = device_add_params(&kbc_at_phoenix_device, (void *) 0x00013700);
break;
case PCX730X_PHOENIX_42I:
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00041600);
dev->kbc = device_add_params(&kbc_at_phoenix_device, (void *) 0x00041600);
break;
}

View File

@@ -739,14 +739,14 @@ pc87309_init(const device_t *info)
switch (info->local & PCX730X_KBC) {
case PCX730X_AMI:
default:
dev->kbc = device_add_params(&kbc_ps2_ami_device, (void *) 0x00003500);
dev->kbc = device_add_params(&kbc_at_ami_device, (void *) 0x00003500);
break;
/* Optiplex! */
case PCX730X_PHOENIX_42:
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00013700);
dev->kbc = device_add_params(&kbc_at_phoenix_device, (void *) 0x00013700);
break;
case PCX730X_PHOENIX_42I:
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00041600);
dev->kbc = device_add_params(&kbc_at_phoenix_device, (void *) 0x00041600);
break;
}

View File

@@ -1294,10 +1294,10 @@ w83977_init(const device_t *info)
switch (dev->kbc_type) {
case W83977_AMI:
dev->kbc = device_add_params(&kbc_ps2_ami_device, (void *) 0x00004800);
dev->kbc = device_add_params(&kbc_at_ami_device, (void *) 0x00004800);
break;
case W83977_PHOENIX:
dev->kbc = device_add_params(&kbc_ps2_phoenix_device, (void *) 0x00041900);
dev->kbc = device_add_params(&kbc_at_phoenix_device, (void *) 0x00041900);
break;
}