diff --git a/Assets/dll/bsnes.wbx.gz b/Assets/dll/bsnes.wbx.gz index 70c65237ab..9b7e773228 100644 Binary files a/Assets/dll/bsnes.wbx.gz and b/Assets/dll/bsnes.wbx.gz differ diff --git a/src/BizHawk.Emulation.Cores/Consoles/Nintendo/BSNES/BsnesApi_Enums.cs b/src/BizHawk.Emulation.Cores/Consoles/Nintendo/BSNES/BsnesApi_Enums.cs index 5bf6157b44..ed0a43b699 100644 --- a/src/BizHawk.Emulation.Cores/Consoles/Nintendo/BSNES/BsnesApi_Enums.cs +++ b/src/BizHawk.Emulation.Cores/Consoles/Nintendo/BSNES/BsnesApi_Enums.cs @@ -9,6 +9,7 @@ BSX_PRAM, SUFAMI_TURBO_A_RAM, SUFAMI_TURBO_B_RAM, + SA1_IRAM, WRAM, APURAM, diff --git a/waterbox/bsnescore/bsnes/target-bsnescore/bsnescore.cpp b/waterbox/bsnescore/bsnes/target-bsnescore/bsnescore.cpp index aa04828d56..95cc6c01a3 100644 --- a/waterbox/bsnescore/bsnes/target-bsnescore/bsnescore.cpp +++ b/waterbox/bsnescore/bsnes/target-bsnescore/bsnescore.cpp @@ -321,6 +321,11 @@ EXPORT void* snes_get_memory_region(int id, int* size, int* word_size) *size = sufamiturboB.ram.size(); *word_size = 1; return sufamiturboB.ram.data(); + case SNES_MEMORY::SA1_IRAM: + if (!cartridge.has.SA1) break; + *size = sa1.iram.size(); + *word_size = 1; + return sa1.iram.data(); case SNES_MEMORY::WRAM: *size = sizeof(cpu.wram); diff --git a/waterbox/bsnescore/bsnes/target-bsnescore/bsnescore.hpp b/waterbox/bsnescore/bsnes/target-bsnescore/bsnescore.hpp index 38e822f349..935f2c43ae 100644 --- a/waterbox/bsnescore/bsnes/target-bsnescore/bsnescore.hpp +++ b/waterbox/bsnescore/bsnes/target-bsnescore/bsnescore.hpp @@ -14,6 +14,7 @@ enum SNES_MEMORY { BSX_PRAM, SUFAMI_TURBO_A_RAM, SUFAMI_TURBO_B_RAM, + SA1_IRAM, WRAM, APURAM,