1
0
mirror of https://github.com/cc65/cc65.git synced 2024-06-08 15:29:37 +00:00

New target: oric atmos

git-svn-id: svn://svn.cc65.org/cc65/trunk@1296 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
cuz 2002-06-03 20:14:11 +00:00
parent 0e76f703c9
commit 606ecafccd
8 changed files with 48 additions and 5 deletions

View File

@ -193,6 +193,10 @@ static void SetSys (const char* Sys)
DefineNumericMacro ("__LUNIX__", 1);
break;
case TGT_ATMOS:
DefineNumericMacro ("__ATMOS__", 1);
break;
default:
AbEnd ("Unknown target system type");
}

View File

@ -52,7 +52,7 @@ target_t Target = TGT_NONE;
/* Table with target names */
const char* TargetNames [TGT_COUNT] = {
"none",
"none",
"module",
"atari",
"c64",
@ -65,7 +65,8 @@ const char* TargetNames [TGT_COUNT] = {
"bbc",
"apple2",
"geos",
"lunix"
"lunix",
"atmos"
};
@ -104,4 +105,5 @@ target_t FindTarget (const char* Name)

View File

@ -61,6 +61,7 @@ typedef enum {
TGT_APPLE2,
TGT_GEOS,
TGT_LUNIX,
TGT_ATMOS,
TGT_COUNT /* Number of target systems */
} target_t;
@ -91,4 +92,4 @@ target_t FindTarget (const char* Name);

View File

@ -154,6 +154,7 @@ void TgtTranslateInit (void)
case TGT_APPLE2: memcpy (Tab, CTNone, sizeof (Tab)); break;
case TGT_GEOS: memcpy (Tab, CTNone, sizeof (Tab)); break;
case TGT_LUNIX: memcpy (Tab, CTNone, sizeof (Tab)); break;
case TGT_ATMOS: memcpy (Tab, CTNone, sizeof (Tab)); break;
default:
AbEnd ("Internal error: Target system unknown (%d)", Target);
}
@ -214,4 +215,4 @@ void TgtTranslateSet (unsigned Index, unsigned char C)

View File

@ -5,6 +5,7 @@ ld65
*.s
apple2.inc
atari.inc
atmos.inc
bbc.inc
c128.inc
c64.inc

28
src/ld65/cfg/atmos.cfg Normal file
View File

@ -0,0 +1,28 @@
MEMORY {
ZP: start = $02, size = $1A, type = rw, define = yes;
RAM: start = $0600, size = $9200, define = yes, file = %O;
}
SEGMENTS {
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;
}
FEATURES {
CONDES: segment = RODATA,
type = constructor,
label = __CONSTRUCTOR_TABLE__,
count = __CONSTRUCTOR_COUNT__;
CONDES: segment = RODATA,
type = destructor,
label = __DESTRUCTOR_TABLE__,
count = __DESTRUCTOR_COUNT__;
}
SYMBOLS {
__STACKSIZE__ = $800; # 2K stack
}

View File

@ -48,6 +48,7 @@ OBJS = bin.o \
INCS = apple2.inc \
atari.inc \
atmos.inc \
bbc.inc \
c64.inc \
c128.inc \
@ -109,6 +110,9 @@ apple2.inc: cfg/apple2.cfg
atari.inc: cfg/atari.cfg
@$(CVT) $< $@ CfgAtari
atmos.inc: cfg/atmos.cfg
@$(CVT) $< $@ CfgAtmos
bbc.inc: cfg/bbc.cfg
@$(CVT) $< $@ CfgBBC

View File

@ -50,6 +50,7 @@ static const char CfgEmpty[] = "";
/* Actual target configurations, converted into C strings by a perl script */
#include "apple2.inc"
#include "atari.inc"
#include "atmos.inc"
#include "bbc.inc"
#include "c128.inc"
#include "c64.inc"
@ -75,6 +76,7 @@ const TargetDesc Targets [TGT_COUNT] = {
{ BINFMT_BINARY, CfgNone },
{ BINFMT_O65, CfgModule },
{ BINFMT_BINARY, CfgAtari },
{ BINFMT_BINARY, CfgAtmos },
{ BINFMT_BINARY, CfgC64 },
{ BINFMT_BINARY, CfgC128 },
{ BINFMT_BINARY, CfgEmpty }, /* Ace */