cc65 2.13. comes with builtin linker configs defining the __STACKSIZE__ symbol as weak. This allows to override the stacksize from the linker command line thus eliminating the need for linker configs maintained by Contiki.

This commit is contained in:
oliverschmidt 2009-10-18 09:58:21 +00:00
parent d8aee18f6c
commit 18933cc0c3
4 changed files with 8 additions and 82 deletions

View file

@ -30,14 +30,15 @@
#
# Author: Oliver Schmidt <ol.sc@web.de>
#
# $Id: Makefile.c128,v 1.3 2008/05/26 10:14:03 oliverschmidt Exp $
# $Id: Makefile.c128,v 1.4 2009/10/18 09:58:21 oliverschmidt Exp $
#
CFLAGS += -DWITH_PETSCII
CONTIKI_CPU = $(CONTIKI)/cpu/6502
include $(CONTIKI_CPU)/Makefile.6502
CFLAGS += -DWITH_PETSCII
LDFLAGS += -t $(TARGET)
ifeq ($(MAKECMDGOALS),disk)
ifndef C1541
${error C1541 not defined! You must specify where the VICE c1541 resides}

View file

@ -1,37 +0,0 @@
# This file should be identical to the file '<cc65>/doc/c128.cfg' with the
# following exception:
# - Reduced stacksize: Contiki is designed to use extremely little stack.
# The applications coming with Contiki run even with a $100 byte stack.
MEMORY {
ZP: start = $0002, size = $001A, type = rw, define = yes;
RAM: start = $1Bff, size = $A401, file = %O, define = yes;
}
SEGMENTS {
STARTUP: load = RAM, type = ro;
LOWCODE: load = RAM, type = ro, optional = yes;
INIT: load = RAM, type = ro, define = yes, optional = yes;
CODE: load = RAM, type = ro;
RODATA: load = RAM, type = ro;
DATA: load = RAM, type = rw;
BSS: load = RAM, type = bss, define = yes;
HEAP: load = RAM, type = bss, optional = yes; # must sit just below stack
ZEROPAGE: load = ZP, type = zp;
}
FEATURES {
CONDES: segment = INIT,
type = constructor,
label = __CONSTRUCTOR_TABLE__,
count = __CONSTRUCTOR_COUNT__;
CONDES: segment = RODATA,
type = destructor,
label = __DESTRUCTOR_TABLE__,
count = __DESTRUCTOR_COUNT__;
CONDES: segment = RODATA,
type = interruptor,
label = __INTERRUPTOR_TABLE__,
count = __INTERRUPTOR_COUNT__;
}
SYMBOLS {
__STACKSIZE__ = $200; # 1/2K instead of 2K stack
}

View file

@ -30,14 +30,15 @@
#
# Author: Oliver Schmidt <ol.sc@web.de>
#
# $Id: Makefile.c64,v 1.5 2008/05/26 10:14:28 oliverschmidt Exp $
# $Id: Makefile.c64,v 1.6 2009/10/18 09:58:21 oliverschmidt Exp $
#
CFLAGS += -DWITH_PETSCII
CONTIKI_CPU = $(CONTIKI)/cpu/6502
include $(CONTIKI_CPU)/Makefile.6502
CFLAGS += -DWITH_PETSCII
LDFLAGS += -t $(TARGET)
ifeq ($(MAKECMDGOALS),disk)
ifndef C1541
${error C1541 not defined! You must specify where the VICE c1541 resides}

View file

@ -1,39 +0,0 @@
# This file should be identical to the file '<cc65>/doc/c64.cfg' with the
# following exception:
# - Reduced stacksize: Contiki is designed to use extremely little stack.
# The applications coming with Contiki run even with a $100 byte stack.
MEMORY {
ZP: start = $0002, size = $001A, type = rw, define = yes;
RAM: start = $07FF, size = $C801, file = %O, define = yes;
}
SEGMENTS {
STARTUP: load = RAM, type = ro;
LOWCODE: load = RAM, type = ro, optional = yes;
INIT: load = RAM, type = ro, define = yes, optional = yes;
CODE: load = RAM, type = ro;
RODATA: load = RAM, type = ro;
DATA: load = RAM, type = rw;
BSS: load = RAM, type = bss, define = yes;
HEAP: load = RAM, type = bss, optional = yes; # must sit just below stack
ZEROPAGE: load = ZP, type = zp;
}
FEATURES {
CONDES: segment = INIT,
type = constructor,
label = __CONSTRUCTOR_TABLE__,
count = __CONSTRUCTOR_COUNT__;
CONDES: segment = RODATA,
type = destructor,
label = __DESTRUCTOR_TABLE__,
count = __DESTRUCTOR_COUNT__;
CONDES: segment = RODATA,
type = interruptor,
label = __INTERRUPTOR_TABLE__,
count = __INTERRUPTOR_COUNT__;
}
SYMBOLS {
__STACKSIZE__ = $200; # 1/2K instead of 2K stack
}