diff --git a/BizHawk.Emulation.Cores/CPUs/LR35902/LR35902.cs b/BizHawk.Emulation.Cores/CPUs/LR35902/LR35902.cs index 12c13662aa..063b41ee5c 100644 --- a/BizHawk.Emulation.Cores/CPUs/LR35902/LR35902.cs +++ b/BizHawk.Emulation.Cores/CPUs/LR35902/LR35902.cs @@ -396,11 +396,22 @@ namespace BizHawk.Emulation.Common.Components.LR35902 } else { - cur_instr = new ushort[] - {HALT_CHK, - IDLE, - IDLE, + if (is_GBC) + { + cur_instr = new ushort[] + {IDLE, + IDLE, + HALT_CHK, HALT, 0 }; + } + else + { + cur_instr = new ushort[] + {HALT_CHK, + IDLE, + IDLE, + HALT, 0 }; + } } } diff --git a/BizHawk.Emulation.Cores/Consoles/Nintendo/GBHawk/GBC_PPU.cs b/BizHawk.Emulation.Cores/Consoles/Nintendo/GBHawk/GBC_PPU.cs index 8b50b3b177..7c679ab952 100644 --- a/BizHawk.Emulation.Cores/Consoles/Nintendo/GBHawk/GBC_PPU.cs +++ b/BizHawk.Emulation.Cores/Consoles/Nintendo/GBHawk/GBC_PPU.cs @@ -405,7 +405,7 @@ namespace BizHawk.Emulation.Cores.Nintendo.GBHawk // also the LCD doesn't turn on right away // also, the LCD does not enter mode 2 on scanline 0 when first turned on no_scan = true; - cycle = 6; + cycle = 8; } // the VBL stat is continuously asserted