diff --git a/core/hw/aica/dsp_interp.cpp b/core/hw/aica/dsp_interp.cpp index 045140c47..09b1a74f0 100644 --- a/core/hw/aica/dsp_interp.cpp +++ b/core/hw/aica/dsp_interp.cpp @@ -266,7 +266,7 @@ void AICADSP_Step(struct dsp_t *DSP) //if (NOFL) // MEMVAL[(step + 2) & 3] = (*(s16 *)&aica_ram[ADDR]) << 8; //else - MEMVAL[(step + 2) & 3] = UNPACK(*(u16 *)&aica_ram[ADDR]); + MEMVAL[(step + 2) & 3] = UNPACK(*(u16 *)&aica_ram[ADDR & ARAM_MASK]); } if (MWT) { @@ -274,7 +274,7 @@ void AICADSP_Step(struct dsp_t *DSP) //if (NOFL) // *(s16 *)&aica_ram[ADDR] = SHIFTED >> 8; //else - *(u16 *)&aica_ram[ADDR] = PACK(SHIFTED); + *(u16 *)&aica_ram[ADDR & ARAM_MASK] = PACK(SHIFTED); } } }