/
snes.cfg
36 lines (32 loc) · 1.64 KB
/
snes.cfg
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# ca65 linker config for 256k sfc (thanks blargg)
# Physical areas of memory
# Names need not match, but it makes it easier to remember if they do.
MEMORY {
ZEROPAGE: start = 0, size = $100;
BSS: start = $200, size = $1800;
ROM: start = $8000, size = $8000, fill = yes, bank = 0;
BANK1: start = $10000, size = $8000, fill = yes, bank = 1;
BANK2: start = $18000, size = $8000, fill = yes, bank = 2;
BANK3: start = $20000, size = $8000, fill = yes, bank = 3;
BANK4: start = $28000, size = $8000, fill = yes, bank = 4;
BANK5: start = $30000, size = $8000, fill = yes, bank = 5;
BANK6: start = $38000, size = $8000, fill = yes, bank = 6;
BANK7: start = $40000, size = $8000, fill = yes, bank = 7;
}
# Logical areas code/data can be put into.
SEGMENTS {
ZEROPAGE: load = ZEROPAGE, type = zp;
BSS: load = BSS, type = bss, align = $100;
CODE: load = ROM, align = $8000;
RODATA: load = ROM;
SNESHEADER: load = ROM, start = $FFC0;
VECTORS: load = ROM, start = $FFE0;
# The extra banks
BANK1: load = BANK1, align = $8000, optional = yes;
BANK2: load = BANK2, align = $8000, optional = yes;
BANK3: load = BANK3, align = $8000, optional = yes;
BANK4: load = BANK4, align = $8000, optional = yes;
BANK5: load = BANK5, align = $8000, optional = yes;
BANK6: load = BANK6, align = $8000, optional = yes;
BANK7: load = BANK7, align = $8000, optional = yes;
}