mirror of
https://github.com/86Box/86Box.git
synced 2026-02-21 17:15:32 -07:00
Merge pull request #6110 from win2kgamer/machine-fixes-2
More machine and SIO fixes
This commit is contained in:
@@ -277,7 +277,7 @@ machine_at_ms4145_init(const machine_t *model)
|
||||
pci_register_slot(0x06, PCI_CARD_NORMAL, 4, 1, 2, 3);
|
||||
|
||||
device_add(&ali1489_device);
|
||||
device_add_params(&w837x7_device, (void *) (W83787F | W837X7_KEY_89));
|
||||
device_add_params(&w837x7_device, (void *) (W83787F | W837X7_KEY_88));
|
||||
|
||||
device_add_params(machine_get_kbc_device(machine), (void *) model->kbc_params);
|
||||
|
||||
|
||||
@@ -9371,7 +9371,7 @@ const machine_t machines[] = {
|
||||
.max_multi = 0
|
||||
},
|
||||
.bus_flags = MACHINE_PCI,
|
||||
.flags = MACHINE_IDE_DUAL | MACHINE_APM,
|
||||
.flags = MACHINE_PS2_KBC | MACHINE_IDE_DUAL | MACHINE_APM,
|
||||
.ram = {
|
||||
.min = 1024,
|
||||
.max = 65536,
|
||||
|
||||
@@ -108,25 +108,27 @@ um866x_lpt_handler(um866x_t *dev)
|
||||
int enabled = (dev->regs[0] & 0x08);
|
||||
|
||||
lpt_port_remove(dev->lpt);
|
||||
switch(dev->regs[1] & 0xc0) {
|
||||
case 0x00:
|
||||
enabled = 0;
|
||||
break;
|
||||
case 0x40:
|
||||
lpt_set_epp(dev->lpt, 1);
|
||||
lpt_set_ecp(dev->lpt, 0);
|
||||
lpt_set_ext(dev->lpt, 0);
|
||||
break;
|
||||
case 0x80:
|
||||
lpt_set_epp(dev->lpt, 0);
|
||||
lpt_set_ecp(dev->lpt, 0);
|
||||
lpt_set_ext(dev->lpt, 1);
|
||||
break;
|
||||
case 0xc0:
|
||||
lpt_set_epp(dev->lpt, 0);
|
||||
lpt_set_ecp(dev->lpt, 1);
|
||||
lpt_set_ext(dev->lpt, 0);
|
||||
break;
|
||||
if (dev->max_reg != 0x00) {
|
||||
switch(dev->regs[1] & 0xc0) {
|
||||
case 0x00:
|
||||
enabled = 0;
|
||||
break;
|
||||
case 0x40:
|
||||
lpt_set_epp(dev->lpt, 1);
|
||||
lpt_set_ecp(dev->lpt, 0);
|
||||
lpt_set_ext(dev->lpt, 0);
|
||||
break;
|
||||
case 0x80:
|
||||
lpt_set_epp(dev->lpt, 0);
|
||||
lpt_set_ecp(dev->lpt, 0);
|
||||
lpt_set_ext(dev->lpt, 1);
|
||||
break;
|
||||
case 0xc0:
|
||||
lpt_set_epp(dev->lpt, 0);
|
||||
lpt_set_ecp(dev->lpt, 1);
|
||||
lpt_set_ext(dev->lpt, 0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (enabled) {
|
||||
switch ((dev->regs[1] >> 3) & 0x01) {
|
||||
|
||||
@@ -390,7 +390,7 @@ w837x7_reset(w837x7_t *dev)
|
||||
|
||||
if (dev->has_ide == 0x02)
|
||||
dev->regs[0x00] = 0x90;
|
||||
else if (dev->has_ide == 0x01)
|
||||
else
|
||||
dev->regs[0x00] = 0xd0;
|
||||
|
||||
if (dev->ide_start)
|
||||
|
||||
Reference in New Issue
Block a user