From f962da83c262fd3b98d6a4f3cf1f6caabb2d395c Mon Sep 17 00:00:00 2001 From: cuz Date: Fri, 8 Oct 2004 18:51:37 +0000 Subject: [PATCH] Added the builtin config for the lynx game console git-svn-id: svn://svn.cc65.org/cc65/trunk@3224 b7a2c559-68d2-44c3-8de9-860c34a00d81 --- src/ld65/.cvsignore | 4 +++- src/ld65/cfg/lynx.cfg | 33 +++++++++++++++++++++++++++++++++ src/ld65/make/gcc.mak | 6 +++++- src/ld65/tgtcfg.c | 8 +++++--- 4 files changed, 46 insertions(+), 5 deletions(-) create mode 100644 src/ld65/cfg/lynx.cfg diff --git a/src/ld65/.cvsignore b/src/ld65/.cvsignore index 2791555ac..b921275ea 100644 --- a/src/ld65/.cvsignore +++ b/src/ld65/.cvsignore @@ -4,6 +4,7 @@ ld65 *.map *.s apple2.inc +apple2enh.inc atari.inc atmos.inc bbc.inc @@ -13,7 +14,8 @@ c64.inc cbm510.inc cbm610.inc geos.inc -lunix.inc +lunix.inc +lynx.inc module.inc nes.inc none.inc diff --git a/src/ld65/cfg/lynx.cfg b/src/ld65/cfg/lynx.cfg new file mode 100644 index 000000000..1a10cc443 --- /dev/null +++ b/src/ld65/cfg/lynx.cfg @@ -0,0 +1,33 @@ +MEMORY { + ZP: start = $00, size = $100, type = rw, define = yes; + HEADER: start = $0000, size = $A, file = %O; + RAM: start = $0400, size = $BA3F, define = yes, file = %O; +} +SEGMENTS { + EXEHDR: load = HEADER, type = wprot; + STARTUP: load = RAM, type = wprot; + LOWCODE: load = RAM, type = wprot, optional = yes; + CODE: load = RAM, type = wprot; + RODATA: load = RAM, type = wprot; + DATA: load = RAM, type = rw; + BSS: load = RAM, type = bss, define = yes; + ZEROPAGE: load = ZP, type = zp; + EXTZP: load = ZP, type = zp; +} +FEATURES { + CONDES: segment = RODATA, + 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__ = $800; # 2K stack +} diff --git a/src/ld65/make/gcc.mak b/src/ld65/make/gcc.mak index e0e99e62f..ab4f20fd8 100644 --- a/src/ld65/make/gcc.mak +++ b/src/ld65/make/gcc.mak @@ -5,7 +5,7 @@ # Library dir COMMON = ../common -# The linker library search path. Default is "/usr/lib/cc65/lib/" if nothing +# The linker library search path. Default is "/usr/lib/cc65/lib/" if nothing # is defined. You may use CC65_LIB=foo on the command line to override it. CC65_LIB = \"/usr/lib/cc65/lib/\" @@ -65,6 +65,7 @@ INCS = apple2.inc \ cbm610.inc \ geos.inc \ lunix.inc \ + lynx.inc \ module.inc \ nes.inc \ none.inc \ @@ -153,6 +154,9 @@ geos.inc: cfg/geos.cfg lunix.inc: cfg/lunix.cfg @$(CVT) $< $@ CfgLunix +lynx.inc: cfg/lynx.cfg + @$(CVT) $< $@ CfgLynx + module.inc: cfg/module.cfg @$(CVT) $< $@ CfgModule diff --git a/src/ld65/tgtcfg.c b/src/ld65/tgtcfg.c index 007da4dd5..7e7f6c8f8 100644 --- a/src/ld65/tgtcfg.c +++ b/src/ld65/tgtcfg.c @@ -6,7 +6,7 @@ /* */ /* */ /* */ -/* (C) 1998-2003 Ullrich von Bassewitz */ +/* (C) 1998-2004 Ullrich von Bassewitz */ /* Römerstrasse 52 */ /* D-70794 Filderstadt */ /* EMail: uz@cc65.org */ @@ -64,6 +64,7 @@ static const char CfgEmpty[] = ""; #include "cbm610.inc" #include "geos.inc" #include "lunix.inc" +#include "lynx.inc" #include "module.inc" #include "nes.inc" #include "none.inc" @@ -79,9 +80,9 @@ static const char CfgEmpty[] = ""; /*****************************************************************************/ - + /* Target configurations for all systems */ -const TargetDesc Targets [TGT_COUNT] = { +const TargetDesc Targets[TGT_COUNT] = { { BINFMT_BINARY, CfgNone }, { BINFMT_O65, CfgModule }, { BINFMT_BINARY, CfgAtari }, @@ -102,6 +103,7 @@ const TargetDesc Targets [TGT_COUNT] = { { BINFMT_BINARY, CfgAtmos }, { BINFMT_BINARY, CfgNES }, { BINFMT_BINARY, CfgSupervision }, + { BINFMT_BINARY, CfgLynx }, }; -- 2.39.5