diff --git a/hw/eepro100.c b/hw/eepro100.c index 2a871b826438427d46c2532e773dce49d1b9cec0..7eaa8768e6ea186af62f4d3652ed9b3b26871a48 100644 --- a/hw/eepro100.c +++ b/hw/eepro100.c @@ -392,14 +392,14 @@ static void eepro100_acknowledge(EEPRO100State * s) } } -static void eepro100_interrupt(EEPRO100State * s, uint8_t stat) +static void eepro100_interrupt(EEPRO100State * s, uint8_t status) { uint8_t mask = ~s->mem[SCBIntmask]; - s->mem[SCBAck] |= stat; - stat = s->scb_stat = s->mem[SCBAck]; - stat &= (mask | 0x0f); - //~ stat &= (~s->mem[SCBIntmask] | 0x0xf); - if (stat && (mask & 0x01)) { + s->mem[SCBAck] |= status; + status = s->scb_stat = s->mem[SCBAck]; + status &= (mask | 0x0f); + //~ status &= (~s->mem[SCBIntmask] | 0x0xf); + if (status && (mask & 0x01)) { /* SCB mask and SCB Bit M do not disable interrupt. */ enable_interrupt(s); } else if (s->int_stat) {