More hardcoding fixes
This commit is contained in:
@@ -48,23 +48,23 @@ static void
|
||||
lpt1_handler(pc87332_t *dev)
|
||||
{
|
||||
int temp;
|
||||
uint16_t lpt_port = 0x378;
|
||||
uint8_t lpt_irq = 5;
|
||||
uint16_t lpt_port = LPT1_ADDR;
|
||||
uint8_t lpt_irq = LPT2_IRQ;
|
||||
|
||||
temp = dev->regs[0x01] & 3;
|
||||
|
||||
switch (temp) {
|
||||
case 0:
|
||||
lpt_port = 0x378;
|
||||
lpt_irq = (dev->regs[0x02] & 0x08) ? 7 : 5;
|
||||
lpt_port = LPT1_ADDR;
|
||||
lpt_irq = (dev->regs[0x02] & 0x08) ? LPT1_IRQ : LPT2_IRQ;
|
||||
break;
|
||||
case 1:
|
||||
lpt_port = 0x3bc;
|
||||
lpt_irq = 7;
|
||||
lpt_port = LPT_MDA_ADDR;
|
||||
lpt_irq = LPT_MDA_IRQ;
|
||||
break;
|
||||
case 2:
|
||||
lpt_port = 0x278;
|
||||
lpt_irq = 5;
|
||||
lpt_port = LPT2_ADDR;
|
||||
lpt_irq = LPT2_IRQ;
|
||||
break;
|
||||
case 3:
|
||||
lpt_port = 0x000;
|
||||
@@ -88,40 +88,40 @@ serial_handler(pc87332_t *dev, int uart)
|
||||
|
||||
switch (temp) {
|
||||
case 0:
|
||||
serial_setup(dev->uart[uart], SERIAL1_ADDR, 4);
|
||||
serial_setup(dev->uart[uart], COM1_ADDR, 4);
|
||||
break;
|
||||
case 1:
|
||||
serial_setup(dev->uart[uart], SERIAL2_ADDR, 3);
|
||||
serial_setup(dev->uart[uart], COM2_ADDR, 3);
|
||||
break;
|
||||
case 2:
|
||||
switch ((dev->regs[1] >> 6) & 3) {
|
||||
case 0:
|
||||
serial_setup(dev->uart[uart], 0x3e8, 4);
|
||||
serial_setup(dev->uart[uart], COM3_ADDR, COM3_IRQ);
|
||||
break;
|
||||
case 1:
|
||||
serial_setup(dev->uart[uart], 0x338, 4);
|
||||
serial_setup(dev->uart[uart], 0x338, COM3_IRQ);
|
||||
break;
|
||||
case 2:
|
||||
serial_setup(dev->uart[uart], 0x2e8, 4);
|
||||
serial_setup(dev->uart[uart], COM4_ADDR, COM3_IRQ);
|
||||
break;
|
||||
case 3:
|
||||
serial_setup(dev->uart[uart], 0x220, 4);
|
||||
serial_setup(dev->uart[uart], 0x220, COM3_IRQ);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
switch ((dev->regs[1] >> 6) & 3) {
|
||||
case 0:
|
||||
serial_setup(dev->uart[uart], 0x2e8, 3);
|
||||
serial_setup(dev->uart[uart], COM4_ADDR, COM4_IRQ);
|
||||
break;
|
||||
case 1:
|
||||
serial_setup(dev->uart[uart], 0x238, 3);
|
||||
serial_setup(dev->uart[uart], 0x238, COM4_IRQ);
|
||||
break;
|
||||
case 2:
|
||||
serial_setup(dev->uart[uart], 0x2e0, 3);
|
||||
serial_setup(dev->uart[uart], 0x2e0, COM4_IRQ);
|
||||
break;
|
||||
case 3:
|
||||
serial_setup(dev->uart[uart], 0x228, 3);
|
||||
serial_setup(dev->uart[uart], 0x228, COM4_IRQ);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user