MEMORY { ZP: start = $10, size = $f0, type = rw; # use first $10 zeropage locations as locals HEADER: start = $0000, size = $0010, type = ro, file = %O, fill=yes, fillval=$00; RAM: start = $0300, size = $0500, type = rw; ROM: start = $C000, size = $4000, type = ro, file = %O, fill=yes, fillval=$FF; } SEGMENTS { INESHDR: load = HEADER, type = ro, align = $10; ZEROPAGE: load = ZP, type = zp; BSS: load = RAM, type = bss, define = yes, align = $100; CODE: load = ROM, type = ro, align = $100; RODATA: load = ROM, type = ro, align = $100; DMC: load = ROM, type = ro, start = $C000, optional = yes; VECTORS: load = ROM, type = ro, start = $FFFA; } FILES { %O: format = bin; }