return 0;
}
- uae_u32 addr = uae_p32(fault_addr) - uae_p32(NATMEM_OFFSET);
+ uae_u32 addr = (uae_u32)(fault_addr - (uintptr_t)NATMEM_OFFSET);
#ifdef DEBUG_ACCESS
if (addr >= 0x80000000) {
write_log (_T("JIT: Suspicious address 0x%x in SEGV handler.\n"), addr);
return 0;
}
- uae_u32 addr = uae_p32(fault_addr) - uae_p32(NATMEM_OFFSET);
+ uae_u32 addr = (uae_u32)(fault_addr - (uintptr_t)NATMEM_OFFSET);
#ifdef DEBUG_ACCESS
if (addr >= 0x80000000) {
write_log (_T("JIT: Suspicious address 0x%x in SEGV handler.\n"), addr);
}
if (currprefs.comp_catchfault) {
// setup fake exception
- exception2_setup(regs.opcode, uae_p32(address) - uae_p32(NATMEM_OFFSET), info->ExceptionRecord->ExceptionInformation[0] == 0, 1, regs.s ? 4 : 0);
+ uae_u32 amiga_addr = (uae_u32)(address - (uintptr_t)NATMEM_OFFSET);
+ exception2_setup(regs.opcode, amiga_addr, info->ExceptionRecord->ExceptionInformation[0] == 0, 1, regs.s ? 4 : 0);
return EXCEPTION_EXECUTE_HANDLER;
}
return EXCEPTION_CONTINUE_SEARCH;
void x86gpf_expected(const char *s, uint16_t error)
{
// pclog("GPF_v86 %04X %04x(%08x):%08x\n", error, CS,cs,cpu_state.pc);
- cpu_state.abrt = ABRT_GPF | ABRT_EXPECTED;
+ cpu_state.abrt = static_cast<int8_t>(ABRT_GPF | ABRT_EXPECTED);
abrt_error = error;
}
void x86ss(char *s, uint16_t error)