So instead, let's do it safely with a flag, replacing the old iopBreakpoint flag, so there's no additional overhead on the hot path.
#Pcsx2 bios for windows 10 code#
Doing so not only meant that we executed a bunch of event testing/exception code twice (once after we paused, again when we resumed), but it also could potentially leave things in an inconsistent state.
Unfortunately for our stability, this happened at the end of the frame, just before it was pushed to the GS, and in the middle of processing EE events (!). R5900: Make CPU exits consistent and safe Previously, we would either throw an exception (ints), or longjmp out of the recompiler when the execution state was checked. VMManager: Add frame advance hotkey Now that exits are consistent, this is easy. R3000A/R5900: Refactor interpreter/recompiler exits Now, IOP breakpoints work nice and reliably in both interpreter and recompiler, exiting as soon as possible, without leaving the event state indeterminate. GameDB: God Of War 1 / 2 The GameDB changes were reverted but then the CRC hacks were removed so this fixes it. PCSX2: Interlacing to Deinterlacing There are some more strings but don't want to mess around with too much Gamedb: add 'VUSyncHack' to 'Next Generation Tennis 2003' GameDB: Fix name + add comment Fixes Ar Tonelico II and adds comments for Legion - The Legend of Excalibur LnxMisc: Use clock_gettime() instead of gettimeofday() Though no idea why anyone wants to use it above CSO or CHD if you look at filesize. Qt: Add Gzipped WX supported this, I don't see why not add to Qt. Qt: Fix interlacing I actually made it backwards compatible but then reverted this line at the last minute, rendering the Qt variant useless. GS: Flush PRIM on write if pending PRIM draw had TME