Port ED now also runs all the timers on the recompiler if it has no handlers, like port EB.
This commit is contained in:
9
src/io.c
9
src/io.c
@@ -333,7 +333,7 @@ outb(uint16_t port, uint8_t val)
|
|||||||
if (!found) {
|
if (!found) {
|
||||||
sub_cycles(io_delay);
|
sub_cycles(io_delay);
|
||||||
#ifdef USE_DYNAREC
|
#ifdef USE_DYNAREC
|
||||||
if (cpu_use_dynarec && (port == 0xeb))
|
if (cpu_use_dynarec && ((port == 0xeb) || (port == 0xed)))
|
||||||
update_tsc();
|
update_tsc();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@@ -428,7 +428,7 @@ outw(uint16_t port, uint16_t val)
|
|||||||
if (!found) {
|
if (!found) {
|
||||||
sub_cycles(io_delay);
|
sub_cycles(io_delay);
|
||||||
#ifdef USE_DYNAREC
|
#ifdef USE_DYNAREC
|
||||||
if (cpu_use_dynarec && (port == 0xeb))
|
if (cpu_use_dynarec && ((port == 0xeb) || (port == 0xed)))
|
||||||
update_tsc();
|
update_tsc();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@@ -502,8 +502,7 @@ inl(uint16_t port)
|
|||||||
if (!found)
|
if (!found)
|
||||||
sub_cycles(io_delay);
|
sub_cycles(io_delay);
|
||||||
|
|
||||||
if (in_smm)
|
io_log("[%04X:%08X] (%i, %i, %04i) in l(%04X) = %08X\n", CS, cpu_state.pc, in_smm, found, qfound, port, ret);
|
||||||
io_log("[%04X:%08X] (%i, %i, %04i) in l(%04X) = %08X\n", CS, cpu_state.pc, in_smm, found, qfound, port, ret);
|
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
@@ -557,7 +556,7 @@ outl(uint16_t port, uint32_t val)
|
|||||||
if (!found) {
|
if (!found) {
|
||||||
sub_cycles(io_delay);
|
sub_cycles(io_delay);
|
||||||
#ifdef USE_DYNAREC
|
#ifdef USE_DYNAREC
|
||||||
if (cpu_use_dynarec && (port == 0xeb))
|
if (cpu_use_dynarec && ((port == 0xeb) || (port == 0xed)))
|
||||||
update_tsc();
|
update_tsc();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user