git.y1.nz

SameBoy

Accurate GB/GBC emulator
download: https://git.y1.nz/archives/sameboy.tar.gz
README | Files | Log | Refs | LICENSE

commit 5f71ec4974343b3ab5132807f1cbdb8100724698
parent 5eb0e5d605dc1bbb818b03b3b0b74142be4e108f
Author: Lior Halphon <LIJI32@gmail.com>
Date:   Fri, 26 Jul 2024 14:04:41 +0300

Slightly more accurate

Diffstat:
MCore/display.c10+++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/Core/display.c b/Core/display.c @@ -1739,7 +1739,15 @@ void GB_display_run(GB_gameboy_t *gb, unsigned cycles, bool force) if (!gb->wx_triggered && gb->wy_triggered && (gb->io_registers[GB_IO_LCDC] & GB_LCDC_WIN_ENABLE)) { bool should_activate_window = false; if (unlikely(gb->io_registers[GB_IO_WX] == 0)) { - should_activate_window = (gb->position_in_line == (uint8_t)-16 && (gb->io_registers[GB_IO_SCX] & 7)) || (gb->position_in_line == (uint8_t)-7); + if (gb->position_in_line == (uint8_t)-7) { + should_activate_window = true; + } + else if (gb->position_in_line == (uint8_t)-16 && (gb->io_registers[GB_IO_SCX] & 7)) { + should_activate_window = true; + } + else if (gb->position_in_line >= (uint8_t)-15 && gb->position_in_line <= (uint8_t)-8) { + should_activate_window = true; + } } else if (gb->io_registers[GB_IO_WX] < 166 + GB_is_cgb(gb)) { if (gb->io_registers[GB_IO_WX] == (uint8_t) (gb->position_in_line + 7)) {

This webpage is intended to be an accessible preview of this repository. To get a fuller picture, clone it and use the git CLI.