Define HEADER memory area for the EXEHDR segment for consistency reasons with the other targets with an EXEHDR segment (apple2[enh], atari, lynx, cbm[5|6]10).

git-svn-id: svn://svn.cc65.org/cc65/trunk@4550 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
ol.sc 2010-01-17 21:47:03 +00:00
parent 1ec3eaf507
commit 3d5d3ef76a
7 changed files with 98 additions and 91 deletions

View file

@ -1,19 +1,20 @@
MEMORY { MEMORY {
ZP: start = $0002, size = $001A, type = rw, define = yes; ZP: start = $0002, size = $001A, type = rw, define = yes;
RAM: start = $1BFF, size = $A401, file = %O, define = yes; HEADER: start = $1BFF, size = $000E, file = %O;
RAM: start = $1C0D, size = $A3F3, file = %O, define = yes;
} }
SEGMENTS { SEGMENTS {
EXEHDR: load = RAM, type = ro; EXEHDR: load = HEADER, type = ro;
STARTUP: load = RAM, type = ro; STARTUP: load = RAM, type = ro;
LOWCODE: load = RAM, type = ro, optional = yes; LOWCODE: load = RAM, type = ro, optional = yes;
INIT: load = RAM, type = ro, define = yes, optional = yes; INIT: load = RAM, type = ro, define = yes, optional = yes;
CODE: load = RAM, type = ro; CODE: load = RAM, type = ro;
RODATA: load = RAM, type = ro; RODATA: load = RAM, type = ro;
DATA: load = RAM, type = rw; DATA: load = RAM, type = rw;
ZPSAVE: load = RAM, type = bss; ZPSAVE: load = RAM, type = bss;
BSS: load = RAM, type = bss, define = yes; BSS: load = RAM, type = bss, define = yes;
HEAP: load = RAM, type = bss, optional = yes; # must sit just below stack HEAP: load = RAM, type = bss, optional = yes; # must sit just below stack
ZEROPAGE: load = ZP, type = zp; ZEROPAGE: load = ZP, type = zp;
} }
FEATURES { FEATURES {
CONDES: segment = INIT, CONDES: segment = INIT,

View file

@ -1,19 +1,20 @@
MEMORY { MEMORY {
ZP: start = $0002, size = $001A, type = rw, define = yes; ZP: start = $0002, size = $001A, type = rw, define = yes;
RAM: start = $0FFF, size = $7001, file = %O; HEADER: start = $0FFF, size = $000E, file = %O;
RAM: start = $100D, size = $6FF3, file = %O;
} }
SEGMENTS { SEGMENTS {
EXEHDR: load = RAM, type = ro; EXEHDR: load = HEADER, type = ro;
STARTUP: load = RAM, type = ro; STARTUP: load = RAM, type = ro;
LOWCODE: load = RAM, type = ro, optional = yes; LOWCODE: load = RAM, type = ro, optional = yes;
INIT: load = RAM, type = ro, define = yes, optional = yes; INIT: load = RAM, type = ro, define = yes, optional = yes;
CODE: load = RAM, type = ro; CODE: load = RAM, type = ro;
RODATA: load = RAM, type = ro; RODATA: load = RAM, type = ro;
DATA: load = RAM, type = rw; DATA: load = RAM, type = rw;
ZPSAVE: load = RAM, type = bss; ZPSAVE: load = RAM, type = bss;
BSS: load = RAM, type = bss, define = yes; BSS: load = RAM, type = bss, define = yes;
HEAP: load = RAM, type = bss, optional = yes; # must sit just below stack HEAP: load = RAM, type = bss, optional = yes; # must sit just below stack
ZEROPAGE: load = ZP, type = zp; ZEROPAGE: load = ZP, type = zp;
} }
FEATURES { FEATURES {
CONDES: segment = INIT, CONDES: segment = INIT,

View file

@ -1,19 +1,20 @@
MEMORY { MEMORY {
ZP: start = $0002, size = $001A, type = rw, define = yes; ZP: start = $0002, size = $001A, type = rw, define = yes;
RAM: start = $07FF, size = $C801, file = %O, define = yes; HEADER: start = $07FF, size = $000E, file = %O;
RAM: start = $080D, size = $C7F3, file = %O, define = yes;
} }
SEGMENTS { SEGMENTS {
EXEHDR: load = RAM, type = ro; EXEHDR: load = HEADER, type = ro;
STARTUP: load = RAM, type = ro; STARTUP: load = RAM, type = ro;
LOWCODE: load = RAM, type = ro, optional = yes; LOWCODE: load = RAM, type = ro, optional = yes;
INIT: load = RAM, type = ro, define = yes, optional = yes; INIT: load = RAM, type = ro, define = yes, optional = yes;
CODE: load = RAM, type = ro; CODE: load = RAM, type = ro;
RODATA: load = RAM, type = ro; RODATA: load = RAM, type = ro;
DATA: load = RAM, type = rw; DATA: load = RAM, type = rw;
ZPSAVE: load = RAM, type = bss; ZPSAVE: load = RAM, type = bss;
BSS: load = RAM, type = bss, define = yes; BSS: load = RAM, type = bss, define = yes;
HEAP: load = RAM, type = bss, optional = yes; # must sit just below stack HEAP: load = RAM, type = bss, optional = yes; # must sit just below stack
ZEROPAGE: load = ZP, type = zp; ZEROPAGE: load = ZP, type = zp;
} }
FEATURES { FEATURES {
CONDES: segment = INIT, CONDES: segment = INIT,

View file

@ -1,19 +1,20 @@
MEMORY { MEMORY {
ZP: start = $0055, size = $001A, type = rw, define = yes; ZP: start = $0055, size = $001A, type = rw, define = yes;
RAM: start = $03FF, size = $7BFF, file = %O; HEADER: start = $03FF, size = $000E, file = %O;
RAM: start = $040D, size = $7BF1, file = %O;
} }
SEGMENTS { SEGMENTS {
EXEHDR: load = RAM, type = ro; EXEHDR: load = HEADER, type = ro;
STARTUP: load = RAM, type = ro; STARTUP: load = RAM, type = ro;
LOWCODE: load = RAM, type = ro, optional = yes; LOWCODE: load = RAM, type = ro, optional = yes;
INIT: load = RAM, type = ro, define = yes, optional = yes; INIT: load = RAM, type = ro, define = yes, optional = yes;
CODE: load = RAM, type = ro; CODE: load = RAM, type = ro;
RODATA: load = RAM, type = ro; RODATA: load = RAM, type = ro;
DATA: load = RAM, type = rw; DATA: load = RAM, type = rw;
ZPSAVE: load = RAM, type = bss; ZPSAVE: load = RAM, type = bss;
BSS: load = RAM, type = bss, define = yes; BSS: load = RAM, type = bss, define = yes;
HEAP: load = RAM, type = bss, optional = yes; # must sit just below stack HEAP: load = RAM, type = bss, optional = yes; # must sit just below stack
ZEROPAGE: load = ZP, type = zp; ZEROPAGE: load = ZP, type = zp;
} }
FEATURES { FEATURES {
CONDES: segment = INIT, CONDES: segment = INIT,

View file

@ -1,19 +1,20 @@
MEMORY { MEMORY {
ZP: start = $0002, size = $001A, type = rw, define = yes; ZP: start = $0002, size = $001A, type = rw, define = yes;
RAM: start = $0FFF, size = $ED01, file = %O; HEADER: start = $0FFF, size = $000E, file = %O;
RAM: start = $100D, size = $ECF3, file = %O;
} }
SEGMENTS { SEGMENTS {
EXEHDR: load = RAM, type = ro; EXEHDR: load = HEADER, type = ro;
STARTUP: load = RAM, type = ro; STARTUP: load = RAM, type = ro;
LOWCODE: load = RAM, type = ro, optional = yes; LOWCODE: load = RAM, type = ro, optional = yes;
INIT: load = RAM, type = ro, define = yes, optional = yes; INIT: load = RAM, type = ro, define = yes, optional = yes;
CODE: load = RAM, type = ro; CODE: load = RAM, type = ro;
RODATA: load = RAM, type = ro; RODATA: load = RAM, type = ro;
DATA: load = RAM, type = rw; DATA: load = RAM, type = rw;
ZPSAVE: load = RAM, type = bss; ZPSAVE: load = RAM, type = bss;
BSS: load = RAM, type = bss, define = yes; BSS: load = RAM, type = bss, define = yes;
HEAP: load = RAM, type = bss, optional = yes; # must sit just below stack HEAP: load = RAM, type = bss, optional = yes; # must sit just below stack
ZEROPAGE: load = ZP, type = zp; ZEROPAGE: load = ZP, type = zp;
} }
FEATURES { FEATURES {
CONDES: segment = INIT, CONDES: segment = INIT,

View file

@ -1,21 +1,22 @@
# Memory configuration for the VIC-20 with 32K RAM Cartridge # Memory configuration for the VIC-20 with 32K RAM Cartridge
# Contributed by Stefan Haubenthal # Contributed by Stefan Haubenthal
MEMORY { MEMORY {
ZP: start = $0002, size = $001A, type = rw, define = yes; ZP: start = $0002, size = $001A, type = rw, define = yes;
RAM: start = $11FF, size = $6E01, define = yes, file = %O; HEADER: start = $11FF, size = $000E, file = %O;
RAM: start = $120D, size = $6DF3, file = %O, define = yes;
} }
SEGMENTS { SEGMENTS {
EXEHDR: load = RAM, type = ro; EXEHDR: load = HEADER, type = ro;
STARTUP: load = RAM, type = ro; STARTUP: load = RAM, type = ro;
LOWCODE: load = RAM, type = ro, optional = yes; LOWCODE: load = RAM, type = ro, optional = yes;
INIT: load = RAM, type = ro, define = yes, optional = yes; INIT: load = RAM, type = ro, define = yes, optional = yes;
CODE: load = RAM, type = ro; CODE: load = RAM, type = ro;
RODATA: load = RAM, type = ro; RODATA: load = RAM, type = ro;
DATA: load = RAM, type = rw; DATA: load = RAM, type = rw;
ZPSAVE: load = RAM, type = bss; ZPSAVE: load = RAM, type = bss;
BSS: load = RAM, type = bss, define = yes; BSS: load = RAM, type = bss, define = yes;
HEAP: load = RAM, type = bss, optional = yes; # must sit just below stack HEAP: load = RAM, type = bss, optional = yes; # must sit just below stack
ZEROPAGE: load = ZP, type = zp; ZEROPAGE: load = ZP, type = zp;
} }
FEATURES { FEATURES {
CONDES: segment = INIT, CONDES: segment = INIT,

View file

@ -1,19 +1,20 @@
MEMORY { MEMORY {
ZP: start = $0002, size = $001A, type = rw, define = yes; ZP: start = $0002, size = $001A, type = rw, define = yes;
RAM: start = $0FFF, size = $0E01, define = yes, file = %O; HEADER: start = $0FFF, size = $000E, file = %O;
RAM: start = $100D, size = $0DF3, file = %O, define = yes;
} }
SEGMENTS { SEGMENTS {
EXEHDR: load = RAM, type = ro; EXEHDR: load = HEADER, type = ro;
STARTUP: load = RAM, type = ro; STARTUP: load = RAM, type = ro;
LOWCODE: load = RAM, type = ro, optional = yes; LOWCODE: load = RAM, type = ro, optional = yes;
INIT: load = RAM, type = ro, define = yes, optional = yes; INIT: load = RAM, type = ro, define = yes, optional = yes;
CODE: load = RAM, type = ro; CODE: load = RAM, type = ro;
RODATA: load = RAM, type = ro; RODATA: load = RAM, type = ro;
DATA: load = RAM, type = rw; DATA: load = RAM, type = rw;
ZPSAVE: load = RAM, type = bss; ZPSAVE: load = RAM, type = bss;
BSS: load = RAM, type = bss, define = yes; BSS: load = RAM, type = bss, define = yes;
HEAP: load = RAM, type = bss, optional = yes; # must sit just below stack HEAP: load = RAM, type = bss, optional = yes; # must sit just below stack
ZEROPAGE: load = ZP, type = zp; ZEROPAGE: load = ZP, type = zp;
} }
FEATURES { FEATURES {
CONDES: segment = INIT, CONDES: segment = INIT,