diff --git a/BizHawk.Emulation/Consoles/Nintendo/SNES/LibsnesCore.cs b/BizHawk.Emulation/Consoles/Nintendo/SNES/LibsnesCore.cs index 4fa20993a5..4487879cd6 100644 --- a/BizHawk.Emulation/Consoles/Nintendo/SNES/LibsnesCore.cs +++ b/BizHawk.Emulation/Consoles/Nintendo/SNES/LibsnesCore.cs @@ -200,26 +200,26 @@ namespace BizHawk.Emulation.Consoles.Nintendo.SNES OBSEL_NAMEBASE = 50, OBSEL_NAMESEL = 51, OBSEL_SIZE = 52, - //$2131 CGADSUB - CGADSUB_MODE = 60, - CGADSUB_HALF = 61, - CGADSUB_BG4 = 62, - CGADSUB_BG3 = 63, - CGADSUB_BG2 = 64, - CGADSUB_BG1 = 65, - CGADSUB_OBJ = 66, + //$2131 CGADSUB + CGADSUB_MODE = 60, + CGADSUB_HALF = 61, + CGADSUB_BG4 = 62, + CGADSUB_BG3 = 63, + CGADSUB_BG2 = 64, + CGADSUB_BG1 = 65, + CGADSUB_OBJ = 66, CGADSUB_BACKDROP = 67, - //$212C TM - TM_BG1 =70, - TM_BG2 =71, - TM_BG3 =72, - TM_BG4 =73, - TM_OBJ =74, - //$212D TM - TS_BG1 =80, - TS_BG2 =81, - TS_BG3 =82, - TS_BG4 =83, + //$212C TM + TM_BG1 =70, + TM_BG2 =71, + TM_BG3 =72, + TM_BG4 =73, + TM_OBJ =74, + //$212D TM + TS_BG1 =80, + TS_BG2 =81, + TS_BG3 =82, + TS_BG4 =83, TS_OBJ =84 } diff --git a/BizHawk.MultiClient/output/dll/libsneshawk.dll b/BizHawk.MultiClient/output/dll/libsneshawk.dll index dc006d80c2..2e42ae821f 100644 Binary files a/BizHawk.MultiClient/output/dll/libsneshawk.dll and b/BizHawk.MultiClient/output/dll/libsneshawk.dll differ diff --git a/libsnes/bizwinmake.sh b/libsnes/bizwinmake.sh index 7f2098abbb..cc380379c9 100644 --- a/libsnes/bizwinmake.sh +++ b/libsnes/bizwinmake.sh @@ -2,7 +2,9 @@ cd bsnes mkdir obj mkdir out export BIZWINCFLAGS="-I. -O3 -masm=intel -DLIBCO_IMPORT -DLIBCO_MSVC -static-libgcc -static-libstdc++" +#for gdb debugging +#export BIZWINCFLAGS="-I. -O0 -g -masm=intel -DLIBCO_IMPORT -DLIBCO_MSVC -static-libgcc -static-libstdc++" export TARGET_LIBSNES_LIBDEPS="-L ../libco_msvc_win32/release/ -llibco_msvc_win32 -static-libgcc -static-libstdc++" -profile=compatibility platform=win target=libsnes make -e -j +profile=compatibility platform=win target=libsnes make -e -j 4 cd .. -cp bsnes/out/snes.dll ../BizHawk.MultiClient/output/dll/libsneshawk.dll \ No newline at end of file +cp bsnes/out/snes.dll ../BizHawk.MultiClient/output/dll/libsneshawk.dll diff --git a/libsnes/bsnes/snes/smp/core/opcodes.cpp b/libsnes/bsnes/snes/smp/core/opcodes.cpp index 95b9844f66..703dda93e3 100644 --- a/libsnes/bsnes/snes/smp/core/opcodes.cpp +++ b/libsnes/bsnes/snes/smp/core/opcodes.cpp @@ -540,6 +540,10 @@ void SMPcore::op_stw_dp() { void SMPcore::op_wait() { while(true) { + if(scheduler.sync == Scheduler::SynchronizeMode::All) { + regs.pc--; // repeat this opcode on next run + scheduler.exit(Scheduler::ExitReason::SynchronizeEvent); + } op_io(); op_io(); }