Revision 49c47daa
b/hw/lsi53c895a.c | ||
---|---|---|
1492 | 1492 |
|
1493 | 1493 |
static void lsi_reg_writeb(LSIState *s, int offset, uint8_t val) |
1494 | 1494 |
{ |
1495 |
#define CASE_SET_REG24(name, addr) \ |
|
1496 |
case addr : s->name &= 0xffffff00; s->name |= val; break; \ |
|
1497 |
case addr + 1: s->name &= 0xffff00ff; s->name |= val << 8; break; \ |
|
1498 |
case addr + 2: s->name &= 0xff00ffff; s->name |= val << 16; break; |
|
1499 |
|
|
1495 | 1500 |
#define CASE_SET_REG32(name, addr) \ |
1496 | 1501 |
case addr : s->name &= 0xffffff00; s->name |= val; break; \ |
1497 | 1502 |
case addr + 1: s->name &= 0xffff00ff; s->name |= val << 8; break; \ |
... | ... | |
1596 | 1601 |
} |
1597 | 1602 |
s->ctest5 = val; |
1598 | 1603 |
break; |
1604 |
CASE_SET_REG24(dbc, 0x24) |
|
1599 | 1605 |
CASE_SET_REG32(dnad, 0x28) |
1600 | 1606 |
case 0x2c: /* DSP[0:7] */ |
1601 | 1607 |
s->dsp &= 0xffffff00; |
... | ... | |
1710 | 1716 |
BADF("Unhandled writeb 0x%x = 0x%x\n", offset, val); |
1711 | 1717 |
} |
1712 | 1718 |
} |
1719 |
#undef CASE_SET_REG24 |
|
1713 | 1720 |
#undef CASE_SET_REG32 |
1714 | 1721 |
} |
1715 | 1722 |
|
Also available in: Unified diff