};
-void hc08_assignRegisters (eBBlock ** ebbs, int count);
+void hc08_assignRegisters (ebbIndex *);
static int regParmFlg = 0; /* determine if we can register a parameter */
}
static void
-_hc08_reset_regparm ()
+_hc08_reset_regparm (void)
{
regParmFlg = 0;
}
{
options.code_loc = 0x8000;
options.data_loc = 0x80;
- options.xdata_loc = 0x100;
+ options.xdata_loc = 0; /* 0 means immediately following data */
options.stack_loc = 0x7fff;
options.out_fmt = 1; /* use motorola S19 output */
symbol *mainExists=newSymbol("main", 0);
mainExists->block=0;
- fprintf (of, "\t.area %s\n",port->mem.code_name);
+ fprintf (of, "\t.area %s\n",HOME_NAME);
fprintf (of, "\t.area GSINIT0 (CODE)\n");
fprintf (of, "\t.area %s\n",port->mem.static_name);
fprintf (of, "\t.area %s\n",port->mem.post_static_name);
+ fprintf (of, "\t.area %s\n",CODE_NAME);
fprintf (of, "\t.area %s\n",port->mem.xinit_name);
+ fprintf (of, "\t.area %s\n",port->mem.const_name);
fprintf (of, "\t.area %s\n",port->mem.data_name);
fprintf (of, "\t.area %s\n",port->mem.overlay_name);
fprintf (of, "\t.area %s\n",port->mem.bit_name);
"CSEG (CODE)",
"DSEG",
NULL, /* "ISEG" */
+ NULL, /* "PSEG" */
"XSEG",
"BSEG",
"RSEG",
"HOME (CODE)",
"XISEG", // initialized xdata
"XINIT", // a code copy of xiseg
+ "CONST (CODE)", // const_name - const data (code or not)
NULL,
NULL,
1
1, /* offsetSP */
},
},
+ {
+ 256, /* maxCount */
+ 2, /* sizeofElement */
+ {8,16,32}, /* sizeofMatchJump[] */
+ {8,16,32}, /* sizeofRangeCompare[] */
+ 5, /* sizeofSubtract */
+ 10, /* sizeofDispatch */
+ },
"_",
_hc08_init,
_hc08_parseOptions,