# Configuration for assembler programs which don't need a special setup

FEATURES {
    STARTADDRESS: default = $0803;
}
MEMORY {
    ZP:     file = "",               start = $0000,         size = $00FF;
    HEADER: file = %O,               start = %S - 4,        size = $0004;
    MAIN:   file = %O, define = yes, start = %S,            size = $C000 - %S;
    BSS:    file = "",               start = __MAIN_LAST__, size = $C000 - __MAIN_LAST__;

    SLOTROM: file = %O, fill = yes   start = $C700,         size = $00FC;
    SLOTID: file = %O,               start = $C7FC,         size = $0004;
    EXTROM: file = %O, fill = yes    start = $C800,         size = $0700;
}
SEGMENTS {
    ZEROPAGE: load = ZP,     type = zp,  optional = yes;
    EXEHDR:   load = HEADER, type = ro,  optional = yes;
    CODE:     load = MAIN,   type = rw;
    RODATA:   load = MAIN,   type = ro,  optional = yes;
    DATA:     load = MAIN,   type = rw,  optional = yes;
    BSS:      load = BSS,    type = bss, optional = yes, define = yes;

    SLOTROM:  load = SLOTROM, type = ro;
    SLOTID:   load = SLOTID, type = ro;
    EXTROM:   load = EXTROM, type = ro,  optional = yes;
}
