From 561c04971acf5a5dbb151988edd5c5c5f9b29882 Mon Sep 17 00:00:00 2001 From: Blue Date: Fri, 21 May 2021 18:54:40 +0200 Subject: [PATCH] BUS: Fix ScrathPad, MemControl1 and SIO masks --- ProjectPSX/Core/BUS.cs | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/ProjectPSX/Core/BUS.cs b/ProjectPSX/Core/BUS.cs index 57b62d5..3e2490c 100644 --- a/ProjectPSX/Core/BUS.cs +++ b/ProjectPSX/Core/BUS.cs @@ -57,14 +57,14 @@ namespace ProjectPSX { } else if (addr < 0x1F80_0000) { return load(addr & 0x7_FFFF, ex1Ptr); } else if (addr < 0x1f80_0400) { - return load(addr & 0xFFF, scrathpadPtr); + return load(addr & 0x3FF, scrathpadPtr); } else if (addr < 0x1F80_1040) { - return load(addr & 0x3F, memoryControl1); + return load(addr & 0xF, memoryControl1); } else if (addr < 0x1F80_1050) { return joypad.load(addr); } else if (addr < 0x1F80_1060) { Console.WriteLine($"[BUS] Read Unsupported to SIO address: {addr:x8}"); - return load(addr & 0x3F, sio); + return load(addr & 0xF, sio); } else if (addr < 0x1F80_1070) { return load(addr & 0xF, memoryControl2); } else if (addr < 0x1F801080) { @@ -122,7 +122,6 @@ namespace ProjectPSX { } else if (addr < 0x1F80_1810) { cdrom.write(addr, value); } else if (addr < 0x1F80_1820) { - //Task.Run(() => gpu.write(addr, value)); gpu.write(addr, value); } else if (addr < 0x1F80_1830) { mdec.write(addr, value); @@ -354,8 +353,6 @@ namespace ProjectPSX { [MethodImpl(MethodImplOptions.AggressiveInlining)] public void DmaToGpu(Span buffer) { - var array = buffer.ToArray(); - //Task.Run(() => gpu.processDma(array)); gpu.processDma(buffer); }