diff options
-rw-r--r-- | hw/lsi53c895a.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/hw/lsi53c895a.c b/hw/lsi53c895a.c index 41c1ff22d2..07e09f3cc8 100644 --- a/hw/lsi53c895a.c +++ b/hw/lsi53c895a.c @@ -251,7 +251,7 @@ typedef struct { uint32_t ia; uint32_t sbc; uint32_t csbc; - uint32_t scratch[13]; /* SCRATCHA-SCRATCHR */ + uint32_t scratch[18]; /* SCRATCHA-SCRATCHR */ /* Script ram is stored as 32-bit words in host byteorder. */ uint32_t script_ram[2048]; @@ -1038,7 +1038,7 @@ again: op0 |= op1; break; case 3: /* XOR */ - op0 |= op1; + op0 ^= op1; break; case 4: /* AND */ op0 &= op1; @@ -1765,7 +1765,7 @@ static void lsi_io_writel(void *opaque, uint32_t addr, uint32_t val) lsi_reg_writeb(s, addr, val & 0xff); lsi_reg_writeb(s, addr + 1, (val >> 8) & 0xff); lsi_reg_writeb(s, addr + 2, (val >> 16) & 0xff); - lsi_reg_writeb(s, addr + 2, (val >> 24) & 0xff); + lsi_reg_writeb(s, addr + 3, (val >> 24) & 0xff); } static void lsi_io_mapfunc(PCIDevice *pci_dev, int region_num, |