diff --git a/BizHawk.Emulation/Consoles/Sega/SMS/VDP.cs b/BizHawk.Emulation/Consoles/Sega/SMS/VDP.cs index 2317a02439..8182257089 100644 --- a/BizHawk.Emulation/Consoles/Sega/SMS/VDP.cs +++ b/BizHawk.Emulation/Consoles/Sega/SMS/VDP.cs @@ -491,18 +491,30 @@ namespace BizHawk.Emulation.Consoles.Sega public int[] GetVideoBuffer() { - return mode == VdpMode.SMS ? FrameBuffer : GameGearFrameBuffer; + if (mode == VdpMode.SMS || Sms.CoreInputComm.GG_ShowClippedRegions) + return FrameBuffer; + return GameGearFrameBuffer; } public int VirtualWidth { get { return BufferWidth; } } public int BufferWidth { - get { return mode == VdpMode.SMS ? 256 : 160; } + get + { + if (mode == VdpMode.SMS || Sms.CoreInputComm.GG_ShowClippedRegions) + return 256; + return 160; // GameGear + } } public int BufferHeight { - get { return mode == VdpMode.SMS ? FrameHeight : 144; } + get + { + if (mode == VdpMode.SMS || Sms.CoreInputComm.GG_ShowClippedRegions) + return FrameHeight; + return 144; // GameGear + } } public int BackgroundColor diff --git a/BizHawk.Emulation/Interfaces/CoreComms.cs b/BizHawk.Emulation/Interfaces/CoreComms.cs index 2431bd1b60..3a7b85eb35 100644 --- a/BizHawk.Emulation/Interfaces/CoreComms.cs +++ b/BizHawk.Emulation/Interfaces/CoreComms.cs @@ -8,6 +8,7 @@ namespace BizHawk public bool NES_ShowBG, NES_ShowOBJ; public bool PCE_ShowBG1, PCE_ShowOBJ1, PCE_ShowBG2, PCE_ShowOBJ2; public bool SMS_ShowBG, SMS_ShowOBJ; + public bool GG_ShowClippedRegions; public string SNES_FirmwaresPath; public bool SNES_ShowBG1_0, SNES_ShowBG2_0, SNES_ShowBG3_0, SNES_ShowBG4_0;