I'm following NES101 tutorial by Michael Martin. I come to part about background but can't get my name table to display. I'm not sure are they loaded correctly as whole screen is filled with tile #0. Code:
I'd attach background and nametable files, but I don't know where to upload them.
Code:
.inesprg 1
.ineschr 1
.inesmir 1
.inesmap 0
.bank 0
.org $8000
reset:
sei
cld
vb1: lda $2002
bne vb1
vb2: lda $2002
bne vb2
lda #$00
sta $2000
sta $2001
jsr load_palette
jsr load_name_tables
lda #%10001000
sta $2000
lda #%00001110
sta $2001
cli
loop:
jmp loop
load_palette:
lda #$3F
ldx #$00
sta $2006
stx $2006
lp: lda palette_data, x
sta $2007
inx
cpx #$20
bne lp
rts
load_name_tables:
lda #LOW(name_tables_data)
sta $10
lda #HIGH(name_tables_data)
sta $11
lda #$20
sta $2006
lda #$00
sta $2006
ldx #$04
ldy #$00
lnt1: lda ($10), y
sta $2007
iny
bne lnt1
inc $11
dex
bne lnt1
lda #$00
ldx #$04
ldy #$00
lnt2: sta $2007
iny
bne lnt2
dex
bne lnt2
rts
nmi:
irq:
rti
palette_data:
.db $0E, $15, $16, $17, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00
.db $0E, $11, $21, $31, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00
name_tables_data:
.incbin "screen.nam"
.bank 1
.org $FFFA
.dw nmi, reset, irq
.bank 2
.incbin "background.chr"
; .incbin "sprites.chr"
.ineschr 1
.inesmir 1
.inesmap 0
.bank 0
.org $8000
reset:
sei
cld
vb1: lda $2002
bne vb1
vb2: lda $2002
bne vb2
lda #$00
sta $2000
sta $2001
jsr load_palette
jsr load_name_tables
lda #%10001000
sta $2000
lda #%00001110
sta $2001
cli
loop:
jmp loop
load_palette:
lda #$3F
ldx #$00
sta $2006
stx $2006
lp: lda palette_data, x
sta $2007
inx
cpx #$20
bne lp
rts
load_name_tables:
lda #LOW(name_tables_data)
sta $10
lda #HIGH(name_tables_data)
sta $11
lda #$20
sta $2006
lda #$00
sta $2006
ldx #$04
ldy #$00
lnt1: lda ($10), y
sta $2007
iny
bne lnt1
inc $11
dex
bne lnt1
lda #$00
ldx #$04
ldy #$00
lnt2: sta $2007
iny
bne lnt2
dex
bne lnt2
rts
nmi:
irq:
rti
palette_data:
.db $0E, $15, $16, $17, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00
.db $0E, $11, $21, $31, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00, $00
name_tables_data:
.incbin "screen.nam"
.bank 1
.org $FFFA
.dw nmi, reset, irq
.bank 2
.incbin "background.chr"
; .incbin "sprites.chr"
I'd attach background and nametable files, but I don't know where to upload them.