]> git.sur5r.net Git - cc65/commitdiff
New target: oric atmos
authorcuz <cuz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Mon, 3 Jun 2002 20:14:11 +0000 (20:14 +0000)
committercuz <cuz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Mon, 3 Jun 2002 20:14:11 +0000 (20:14 +0000)
git-svn-id: svn://svn.cc65.org/cc65/trunk@1296 b7a2c559-68d2-44c3-8de9-860c34a00d81

src/cc65/main.c
src/common/target.c
src/common/target.h
src/common/tgttrans.c
src/ld65/.cvsignore
src/ld65/cfg/atmos.cfg [new file with mode: 0644]
src/ld65/make/gcc.mak
src/ld65/tgtcfg.c

index 1974aed3d08aee1d464aaf8681adfcb4ac4953b4..2ce1de1446e4e4ade8e0b84d6e506d642535902d 100644 (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");
     }
index 6b059f30ab16934db1d3f2a987e6fd4969f386f7..6c668a0fdaee68dd6167ca50547439edf2b57c7d 100644 (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)
 
 
 
-             
+
+           
index 6153bc3b238b4d991d93c8ac7ac1724bce3265ab..c14ad3b06a61695a3ead559ae44d6e22f639dcbc 100644 (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);
 
 
 
-                
+
index beb113e1702bb61f310a854252b2011825b1c5a7..57ad2dba1e93afcbe375daf380871cfd0664e569 100644 (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)
 
 
 
-                        
+
index eedb2aa72da0a8218c32ad76042699d247686fdf..1836e47b70bc74922511b51cb3e0e5f878f512f3 100644 (file)
@@ -5,6 +5,7 @@ ld65
 *.s
 apple2.inc
 atari.inc
+atmos.inc
 bbc.inc
 c128.inc
 c64.inc
diff --git a/src/ld65/cfg/atmos.cfg b/src/ld65/cfg/atmos.cfg
new file mode 100644 (file)
index 0000000..f161983
--- /dev/null
@@ -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
+}
+
+
+
+
index 1e8f0a68d4588d012c2472edab2b88968f3128d7..5960a1f63b8692dd5b6ea1b45d79c367e17b2e5a 100644 (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
 
index 8dc10a8165f4315f42f790bfc0f5ac32058fde87..12c4a024bd75139256f19d52111049b4751a1057 100644 (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 */