When compiling my source code, I end up with a "Value out of range." error for banks 1 through 29 of my NES homebrew game
Here are a few source files:
MAIN.asm
INES.inc
PRG/PRG00.asm
PRG/PRG01.asm (also for banks 2-23)
PRG/PRG24.asm (also for banks 25-29)
How can any value be out of range if there is no code?
~~~~~~~~~~~~~~~~
Regarding horizontal blanking, I want to split the screen at a certain scanline to draw the HUD. How do I detect horizontal blanking events?
Code:
pass 1..
pass 2..
PRG/PRG01.asm(1): Value out of range.
PRG/PRG02.asm(1): Value out of range.
PRG/PRG03.asm(1): Value out of range.
PRG/PRG04.asm(1): Value out of range.
PRG/PRG05.asm(1): Value out of range.
PRG/PRG06.asm(1): Value out of range.
PRG/PRG07.asm(1): Value out of range.
PRG/PRG08.asm(1): Value out of range.
PRG/PRG09.asm(1): Value out of range.
PRG/PRG10.asm(1): Value out of range.
PRG/PRG11.asm(1): Value out of range.
PRG/PRG12.asm(1): Value out of range.
PRG/PRG13.asm(1): Value out of range.
PRG/PRG14.asm(1): Value out of range.
PRG/PRG15.asm(1): Value out of range.
PRG/PRG16.asm(1): Value out of range.
PRG/PRG17.asm(1): Value out of range.
PRG/PRG18.asm(1): Value out of range.
PRG/PRG19.asm(1): Value out of range.
PRG/PRG20.asm(1): Value out of range.
PRG/PRG21.asm(1): Value out of range.
PRG/PRG22.asm(1): Value out of range.
PRG/PRG23.asm(1): Value out of range.
PRG/PRG24.asm(1): Value out of range.
PRG/PRG25.asm(1): Value out of range.
PRG/PRG26.asm(1): Value out of range.
PRG/PRG27.asm(1): Value out of range.
PRG/PRG28.asm(1): Value out of range.
PRG/PRG29.asm(1): Value out of range.
pass 2..
PRG/PRG01.asm(1): Value out of range.
PRG/PRG02.asm(1): Value out of range.
PRG/PRG03.asm(1): Value out of range.
PRG/PRG04.asm(1): Value out of range.
PRG/PRG05.asm(1): Value out of range.
PRG/PRG06.asm(1): Value out of range.
PRG/PRG07.asm(1): Value out of range.
PRG/PRG08.asm(1): Value out of range.
PRG/PRG09.asm(1): Value out of range.
PRG/PRG10.asm(1): Value out of range.
PRG/PRG11.asm(1): Value out of range.
PRG/PRG12.asm(1): Value out of range.
PRG/PRG13.asm(1): Value out of range.
PRG/PRG14.asm(1): Value out of range.
PRG/PRG15.asm(1): Value out of range.
PRG/PRG16.asm(1): Value out of range.
PRG/PRG17.asm(1): Value out of range.
PRG/PRG18.asm(1): Value out of range.
PRG/PRG19.asm(1): Value out of range.
PRG/PRG20.asm(1): Value out of range.
PRG/PRG21.asm(1): Value out of range.
PRG/PRG22.asm(1): Value out of range.
PRG/PRG23.asm(1): Value out of range.
PRG/PRG24.asm(1): Value out of range.
PRG/PRG25.asm(1): Value out of range.
PRG/PRG26.asm(1): Value out of range.
PRG/PRG27.asm(1): Value out of range.
PRG/PRG28.asm(1): Value out of range.
PRG/PRG29.asm(1): Value out of range.
Here are a few source files:
MAIN.asm
Code:
.include INES.inc
.include PRG/PRG00.asm
.include PRG/PRG01.asm
.include PRG/PRG02.asm
.include PRG/PRG03.asm
.include PRG/PRG04.asm
.include PRG/PRG05.asm
.include PRG/PRG06.asm
.include PRG/PRG07.asm
.include PRG/PRG08.asm
.include PRG/PRG09.asm
.include PRG/PRG10.asm
.include PRG/PRG11.asm
.include PRG/PRG12.asm
.include PRG/PRG13.asm
.include PRG/PRG14.asm
.include PRG/PRG15.asm
.include PRG/PRG16.asm
.include PRG/PRG17.asm
.include PRG/PRG18.asm
.include PRG/PRG19.asm
.include PRG/PRG20.asm
.include PRG/PRG21.asm
.include PRG/PRG22.asm
.include PRG/PRG23.asm
.include PRG/PRG24.asm
.include PRG/PRG25.asm
.include PRG/PRG26.asm
.include PRG/PRG27.asm
.include PRG/PRG28.asm
.include PRG/PRG29.asm
.include PRG/PRG30.asm
.include PRG/PRG31.asm
.incbin CHR/CHR.bin
.include PRG/PRG00.asm
.include PRG/PRG01.asm
.include PRG/PRG02.asm
.include PRG/PRG03.asm
.include PRG/PRG04.asm
.include PRG/PRG05.asm
.include PRG/PRG06.asm
.include PRG/PRG07.asm
.include PRG/PRG08.asm
.include PRG/PRG09.asm
.include PRG/PRG10.asm
.include PRG/PRG11.asm
.include PRG/PRG12.asm
.include PRG/PRG13.asm
.include PRG/PRG14.asm
.include PRG/PRG15.asm
.include PRG/PRG16.asm
.include PRG/PRG17.asm
.include PRG/PRG18.asm
.include PRG/PRG19.asm
.include PRG/PRG20.asm
.include PRG/PRG21.asm
.include PRG/PRG22.asm
.include PRG/PRG23.asm
.include PRG/PRG24.asm
.include PRG/PRG25.asm
.include PRG/PRG26.asm
.include PRG/PRG27.asm
.include PRG/PRG28.asm
.include PRG/PRG29.asm
.include PRG/PRG30.asm
.include PRG/PRG31.asm
.incbin CHR/CHR.bin
INES.inc
Code:
.db $4E,$45,$53,$1A,$10,$10,$4A,$00,$00,$00,$00,$00,$00,$00,$00,$00
PRG/PRG00.asm
Code:
.org $8000
.dw BitmapLogo,BitmapTitle,BitmapFileSel,$0000
.dw BitmapBonus,BitmapCredits,BitmapGameOver,BitmapDebug
BitmapLogo:
.incbin PRG/BMP/BMP0A.bin
.incbin PRG/BMP/BMP0B.bin
BitmapTitle:
.incbin PRG/BMP/BMP1A.bin
.incbin PRG/BMP/BMP1B.bin
BitmapFileSel:
.incbin PRG/BMP/BMP2A.bin
.incbin PRG/BMP/BMP2B.bin
BitmapBonus:
.incbin PRG/BMP/BMP4A.bin
.incbin PRG/BMP/BMP4B.bin
BitmapCredits:
.incbin PRG/BMP/BMP5A.bin
.incbin PRG/BMP/BMP5B.bin
BitmapGameOver:
.incbin PRG/BMP/BMP6A.bin
.incbin PRG/BMP/BMP6B.bin
BitmapDebug:
.incbin PRG/BMP/BMP7A.bin
.incbin PRG/BMP/BMP7B.bin
.dw BitmapLogo,BitmapTitle,BitmapFileSel,$0000
.dw BitmapBonus,BitmapCredits,BitmapGameOver,BitmapDebug
BitmapLogo:
.incbin PRG/BMP/BMP0A.bin
.incbin PRG/BMP/BMP0B.bin
BitmapTitle:
.incbin PRG/BMP/BMP1A.bin
.incbin PRG/BMP/BMP1B.bin
BitmapFileSel:
.incbin PRG/BMP/BMP2A.bin
.incbin PRG/BMP/BMP2B.bin
BitmapBonus:
.incbin PRG/BMP/BMP4A.bin
.incbin PRG/BMP/BMP4B.bin
BitmapCredits:
.incbin PRG/BMP/BMP5A.bin
.incbin PRG/BMP/BMP5B.bin
BitmapGameOver:
.incbin PRG/BMP/BMP6A.bin
.incbin PRG/BMP/BMP6B.bin
BitmapDebug:
.incbin PRG/BMP/BMP7A.bin
.incbin PRG/BMP/BMP7B.bin
PRG/PRG01.asm (also for banks 2-23)
Code:
.org $8000
PRG/PRG24.asm (also for banks 25-29)
Code:
.org $A000
How can any value be out of range if there is no code?
~~~~~~~~~~~~~~~~
Regarding horizontal blanking, I want to split the screen at a certain scanline to draw the HUD. How do I detect horizontal blanking events?