diff --git a/output/dll/ss.wbx.gz b/output/dll/ss.wbx.gz index 2411591047..a2fe985f5f 100644 Binary files a/output/dll/ss.wbx.gz and b/output/dll/ss.wbx.gz differ diff --git a/src/BizHawk.Emulation.Cores/Waterbox/ElfLoader.cs b/src/BizHawk.Emulation.Cores/Waterbox/ElfLoader.cs index 6d87e536f0..f8c4d35468 100644 --- a/src/BizHawk.Emulation.Cores/Waterbox/ElfLoader.cs +++ b/src/BizHawk.Emulation.Cores/Waterbox/ElfLoader.cs @@ -142,7 +142,7 @@ namespace BizHawk.Emulation.Cores.Waterbox private void PrintGdbData() { Console.WriteLine("GDB Symbol Load:"); - Console.WriteLine($" add-sym {ModuleName}"); + Console.WriteLine($" add-sym {ModuleName} -s .text {_elf.Sections.Single(s => s.Name == ".text").LoadAddress}"); } private void PrintSections() diff --git a/waterbox/nyma/NymaCore.cpp b/waterbox/nyma/NymaCore.cpp index e601f584bf..05d84a9305 100644 --- a/waterbox/nyma/NymaCore.cpp +++ b/waterbox/nyma/NymaCore.cpp @@ -184,9 +184,13 @@ ECL_EXPORT void FrameAdvance(MyFrameInfo& frame) for (int line = lineStart; line < lineEnd; line++) { - memcpy(dst, src, (multiWidth ? EES->LineWidths[line] : w) * sizeof(uint32_t)); - src += srcp; - dst += dstp; + auto lw = multiWidth ? EES->LineWidths[line] : w; + if (MDFN_LIKELY(lw > 0)) + { + memcpy(dst, src, lw * sizeof(uint32_t)); + src += srcp; + dst += dstp; + } } } else @@ -207,7 +211,7 @@ ECL_EXPORT void FrameAdvance(MyFrameInfo& frame) memcpy(dst, src, w * sizeof(uint32_t)); dst += dstp; } - else + else if (MDFN_LIKELY(w > 0)) { // stretch horizontal int wf = Game->lcm_width / w;