git.y1.nz

gbdk-2020

GameBoy Development Kit
download: https://git.y1.nz/archives/gbdk.tar.gz
README | Files | Log | Refs | LICENSE

commit 8df4497c47820261e93c3bd57296b63178791c5f
parent 33030947181f59382fdbd2c234dd8281b25897a7
Author: Michel Iwaniec <46843052+michel-iwaniec@users.noreply.github.com>
Date:   Wed, 26 Mar 2025 15:10:21 +0000

NES: Re-introduce optimization to exit NMI handler early if LCD ISR is disabled (#754)

- Add check to terminate buffer if LCD-ISR disabled (.jmp_to_LCD_isr starts with RTS opcode) in vsync
Diffstat:
Mgbdk-lib/libc/targets/mos6502/nes/crt0.s8++++++++
1 file changed, 8 insertions(+), 0 deletions(-)

diff --git a/gbdk-lib/libc/targets/mos6502/nes/crt0.s b/gbdk-lib/libc/targets/mos6502/nes/crt0.s @@ -491,6 +491,14 @@ _vsync:: iny sty *.lcd_buf_index + ; Ensure second entry (actual LCD) starts off with zero (end-of-list) + lda #0 + sta __lcd_isr_delay_num_scanlines,y + ; Skip to end if LCD isr functionality is disabled (0x60 = RTS means LCD isr disabled) + lda .jmp_to_LCD_isr + cmp #0x60 + beq _wait_vbl_done_waitForNextFrame + lda *.lcd_scanline_previous jmp 2$

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