Filling screen red doesn't work (ASM65816)
14:51 06 Jan 2026

I'm trying to make my own SNES ROM and I'm following this tutorial, but when I run the ROM, the screen should go red, but instead it is black. Take a look at my code, please:

.p816
.smart

.include "registers.inc"
.include "header.asm"

start:
    .include "init.asm"
    
    STZ CGADD ; Clean the CGRAM address

    JSL MudarCor ; Change the color

    LDA #$0F
    STA INIDISP ; Loads #$0F into the screen display register

forever:
    JSL MudarCor ; Always change the color

    JMP forever

MudarCor:
    LDA #$1F ; Should change the color to red
    STA CGDATA
    ;LDA #$00
    ;STA CGDATA

nmi:
    bit RDNMI

_rti:
    RTI

My experience comes from SMW Hacking, and I'm already aware of what each opcode does.

I'm quite new to this, and I'm trying to understand the tutorial. But, I couldn't get that part right.

Any tips?

assembly 65816