2009-06-21 09:30:11 +00:00
|
|
|
# CA65 config for a 16KB cart
|
|
|
|
|
|
|
|
MEMORY {
|
2009-10-30 20:42:50 +00:00
|
|
|
ZP: start = $02, size = $1A, type = rw ;
|
2009-08-24 10:20:21 +00:00
|
|
|
IP65ZP: start = $20, size = $13, type = rw, define = yes; #this cart replaces BASIC so ok to use that space
|
2009-06-21 09:30:11 +00:00
|
|
|
HEADER: start = $8000, size = $18, file = %O;
|
2009-11-13 12:39:41 +00:00
|
|
|
DEFAULTS: start = $8018, size = $1F, file = %O;
|
|
|
|
ROM: start = $8037, size = $3FC9, define = yes, file = %O;
|
2009-06-21 09:30:11 +00:00
|
|
|
RAM: start = $C010, size = $0fE0, define = yes;
|
2009-06-21 11:02:55 +00:00
|
|
|
RAM2: start = $0334, size = $CB, define = yes; #extra scratch area - Tape I/O buffer
|
2009-10-16 11:18:05 +00:00
|
|
|
RAM3: start = $0200, size = $58, define = yes; #extra scratch area - Tape I/O buffer
|
|
|
|
RAM4: start = $0800, size = $7800, define = yes; #scratch area for apps embedded in cart to use
|
2009-06-21 09:30:11 +00:00
|
|
|
|
|
|
|
}
|
|
|
|
SEGMENTS {
|
|
|
|
CARTRIDGE_HEADER: load = HEADER, type = ro;
|
|
|
|
IP65_DEFAULTS: load = DEFAULTS, type = ro;
|
|
|
|
CODE: load = ROM, type = ro;
|
2010-12-29 09:53:50 +00:00
|
|
|
|
2009-06-21 09:30:11 +00:00
|
|
|
RODATA: load = ROM, run=ROM, type = ro;
|
2009-08-20 10:06:33 +00:00
|
|
|
DATA: load = ROM, run = RAM, type = rw, define = yes;
|
|
|
|
SELF_MODIFIED_CODE: load = ROM, run = RAM2, type = rw, define = yes;
|
2010-12-29 09:53:50 +00:00
|
|
|
|
2009-06-21 11:02:55 +00:00
|
|
|
BSS: load = RAM, type = bss;
|
2009-10-16 11:18:05 +00:00
|
|
|
APP_SCRATCH: load = RAM4, type = bss;
|
|
|
|
TCP_VARS: load = RAM2, type = bss;
|
|
|
|
HTTP_VARS: load=ROM, run = RAM3, type = rw,define = yes;
|
2010-12-29 09:53:50 +00:00
|
|
|
|
2009-10-30 20:42:50 +00:00
|
|
|
IP65ZP: load = IP65ZP, type = zp;
|
|
|
|
ZEROPAGE: load = ZP, type = zp, optional=yes;
|
2009-06-21 09:30:11 +00:00
|
|
|
}
|