Only use /EHa in MSVC
This commit is contained in:
@@ -80,20 +80,19 @@ void AI::Step(Mem& mem, Registers& regs, int cpuCycles, float volumeL, float vol
|
||||
return;
|
||||
}
|
||||
|
||||
if(dmaLen[0] && dmaEnable) {
|
||||
if(dmaLen[0] && dmaEnable) {u32 addrHi = ((dmaAddr[0] >> 13) + dmaAddrCarry) & 0x7FF;
|
||||
dmaAddr[0] = (addrHi << 13) | (dmaAddr[0] & 0x1FFF);
|
||||
u32 data = Util::ReadAccess<u32>(mem.mmio.rdp.rdram.data(), dmaAddr[0] & RDRAM_DSIZE);
|
||||
s16 l = s16(data >> 16);
|
||||
s16 r = s16(data);
|
||||
|
||||
if(volumeR > 0 && volumeL > 0) {
|
||||
u32 addrHi = ((dmaAddr[0] >> 13) + dmaAddrCarry) & 0x7FF;
|
||||
dmaAddr[0] = (addrHi << 13) | (dmaAddr[0] & 0x1FFF);
|
||||
u32 data = Util::ReadAccess<u32>(mem.mmio.rdp.rdram.data(), dmaAddr[0] & RDRAM_DSIZE);
|
||||
s16 l = s16(data >> 16);
|
||||
s16 r = s16(data);
|
||||
|
||||
PushSample((float) l / INT16_MAX, volumeL, (float) r / INT16_MAX, volumeR);
|
||||
|
||||
u32 addrLo = (dmaAddr[0] + 4) & 0x1FFF;
|
||||
dmaAddr[0] = (dmaAddr[0] & ~0x1FFF) | addrLo;
|
||||
dmaAddrCarry = addrLo == 0;
|
||||
}
|
||||
|
||||
u32 addrLo = (dmaAddr[0] + 4) & 0x1FFF;
|
||||
dmaAddr[0] = (dmaAddr[0] & ~0x1FFF) | addrLo;
|
||||
dmaAddrCarry = addrLo == 0;
|
||||
dmaLen[0] -= 4;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user