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