I'm working on my first NES game and while it runs in FCEUX, it won't run on anything else (Nestopia, Nintendulator, Nessie says wrong size). It's 64 kb. Is there anything wrong with the header or cfg?
Code:
.BYTE 4Eh, 45h, 53h, 1Ah
.BYTE 02h ; how many prg banks
.BYTE 00h ; how many chr banks (zero means chr ram)
.BYTE 10h ; lower nybble of mapper in bits 4-7
.BYTE 00h ; upper nybble of mapper in bits 4-7
.BYTE 00h ; how many ram banks
.BYTE 00h
.BYTE 00h ; unofficial flags
.BYTE 00h
.WORD 0000h,0000h
Code:
MEMORY {
ZP: start = $00, size = $FF, type = rw, define=yes;
STACK: start = $100, size = $100, type = rw;
RAM: start = $200, size=$600, type = rw;
HEADER: start = $7FF0, size = $10, file = %O ,fill = yes;
ROM0: start = $8000, size = $4000, file = %O, fill = yes;
ROM1: start = $8000, size = $4000, file = %O, fill = yes;
ROM2: start = $8000, size = $8000, file = %O ,fill = yes;
}
SEGMENTS {
HEADER: load = HEADER, type = ro,define=yes;
STARTUP: load = ROM2, start=$C000, type = ro,define=yes;
CODE: load = ROM2, start=$C000, type = ro,define=yes;
DATA: load = ROM2, start=$E000, type = ro,define=yes;
VECTORS: load = ROM2, start = $FFF4, type = ro,define=yes;
CHARS: load = ROM0, start = $8000, type = ro, define=yes;
OAMBUF: load = RAM, start = $0200, type = bss, define = yes;
BUFFER: load = RAM, start = $0300, type = bss, define = yes;
ACTIONBUF: load = RAM, start = $0400, type = bss, define = yes;
OBJECTS: load = RAM, start = $0500, type = bss, define = yes;
VARS: load = RAM, start = $0700, type = bss, define = yes;
BANKCODE: load = ROM1, type = ro;
ZEROPAGE: load = ZP, type = zp;
}