From: notaz Date: Mon, 11 Jul 2011 22:29:22 +0000 (+0300) Subject: drc: redo fastboot hack X-Git-Tag: r9~39 X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=96186eba5d5bbc011f913e8e63ba2e3bebba81ba;p=pcsx_rearmed.git drc: redo fastboot hack relying on PC to check if we already exited was a bad idea, as cc_interrupt stuff updates the PC already. --- diff --git a/libpcsxcore/new_dynarec/new_dynarec.c b/libpcsxcore/new_dynarec/new_dynarec.c index ab90fda3..6f45cfc5 100644 --- a/libpcsxcore/new_dynarec/new_dynarec.c +++ b/libpcsxcore/new_dynarec/new_dynarec.c @@ -10988,10 +10988,14 @@ int new_recompile_block(int addr) #ifdef PCSX if (start == 0x80030000) { // nasty hack for fastbios thing + // override block entry to this code instr_addr0_override=(u_int)out; emit_movimm(start,0); - emit_readword((int)&pcaddr,1); + // abuse io address var as a flag that we + // have already returned here once + emit_readword((int)&address,1); emit_writeword(0,(int)&pcaddr); + emit_writeword(0,(int)&address); emit_cmp(0,1); emit_jne((int)new_dyna_leave); }