From 40e72972729c1ab36149b081bee328b6ee9d6685 Mon Sep 17 00:00:00 2001 From: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com> Date: Thu, 30 May 2024 09:38:10 -0700 Subject: [PATCH] Add PSX DCache to RetroAchievements memory map see https://github.com/RetroAchievements/rcheevos/issues/345 and https://github.com/RetroAchievements/rcheevos/pull/346 --- .../RetroAchievements.Memory.cs | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/src/BizHawk.Client.EmuHawk/RetroAchievements/RetroAchievements.Memory.cs b/src/BizHawk.Client.EmuHawk/RetroAchievements/RetroAchievements.Memory.cs index 9933caa66d..a5cd30c73e 100644 --- a/src/BizHawk.Client.EmuHawk/RetroAchievements/RetroAchievements.Memory.cs +++ b/src/BizHawk.Client.EmuHawk/RetroAchievements/RetroAchievements.Memory.cs @@ -355,24 +355,24 @@ namespace BizHawk.Client.EmuHawk // these consoles will use the entire system bus private static readonly ConsoleID[] UseFullSysBus = - { + [ ConsoleID.NES, ConsoleID.C64, ConsoleID.AmstradCPC, ConsoleID.Atari7800, - }; + ]; // these consoles will use the entire main memory domain private static readonly ConsoleID[] UseFullMainMem = - { - ConsoleID.PlayStation, ConsoleID.Lynx, ConsoleID.NeoGeoPocket, ConsoleID.Jaguar, + [ + ConsoleID.Lynx, ConsoleID.NeoGeoPocket, ConsoleID.Jaguar, ConsoleID.JaguarCD, ConsoleID.DS, ConsoleID.DSi, ConsoleID.AppleII, ConsoleID.Vectrex, ConsoleID.Tic80, ConsoleID.PCEngine, ConsoleID.Uzebox, ConsoleID.Nintendo3DS, - }; + ]; // these consoles will use part of the system bus at an offset private static readonly Dictionary UsePartialSysBus = new() { - [ConsoleID.Colecovision] = new[] { (0x6000u, 0x400u) }, - [ConsoleID.SG1000] = new[] { (0xC000u, 0x2000u), (0x2000u, 0x2000u), (0x8000u, 0x2000u) }, + [ConsoleID.Colecovision] = [ (0x6000u, 0x400u) ], + [ConsoleID.SG1000] = [ (0xC000u, 0x2000u), (0x2000u, 0x2000u), (0x8000u, 0x2000u) ], }; // anything more complicated will be handled accordingly @@ -430,6 +430,10 @@ namespace BizHawk.Client.EmuHawk TryAddDomain("Save RAM"); TryAddDomain("SRAM"); break; + case ConsoleID.PlayStation: + mfs.Add(new(domains["MainRAM"], 0, domains["MainRAM"].Size)); + mfs.Add(new(domains["DCache"], 0, domains["DCache"].Size)); + break; case ConsoleID.SNES: mfs.Add(new(domains["WRAM"], 0, domains["WRAM"].Size)); TryAddDomain("CARTRAM");