X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=libpcsxcore%2Flightrec%2Fplugin.c;h=52d37f0fe8b36a5d3099896b63faa21c21401a06;hb=03535202b4b624c534340322646fb7f4062e3f53;hp=00d9c558bac486d869eda06f5d778e36f343b48d;hpb=473f5cc63f9942866e01c7c84d151e8157cdb6ee;p=pcsx_rearmed.git diff --git a/libpcsxcore/lightrec/plugin.c b/libpcsxcore/lightrec/plugin.c index 00d9c558..52d37f0f 100644 --- a/libpcsxcore/lightrec/plugin.c +++ b/libpcsxcore/lightrec/plugin.c @@ -16,6 +16,7 @@ #include "../frontend/main.h" #include "mem.h" +#include "plugin.h" #if (defined(__arm__) || defined(__aarch64__)) && !defined(ALLOW_LIGHTREC_ON_ARM) #error "Lightrec should not be used on ARM (please specify DYNAREC=ari64 to make)" @@ -555,11 +556,14 @@ static void lightrec_plugin_reset(void) { struct lightrec_registers *regs; - lightrec_plugin_shutdown(); - lightrec_plugin_init(); - regs = lightrec_get_registers(lightrec_state); + /* Invalidate all blocks */ + lightrec_invalidate_all(lightrec_state); + + /* Reset registers */ + memset(regs, 0, sizeof(*regs)); + regs->cp0[12] = 0x10900000; // COP0 enabled | BEV = 1 | TS = 1 regs->cp0[15] = 0x00000002; // PRevID = Revision ID, same as R3000A