return "err";
}
+extern char *processor_base_name(void);
+
static void
_pic14_genAssemblerPreamble (FILE * of)
{
- fprintf (of, "\tlist\tp=16f877\n");
+ char * name = processor_base_name();
+
+ if(!name) {
+
+ name = "p16f877";
+ fprintf(stderr,"WARNING: No Pic has been selected, defaulting to %s\n",name);
+ }
+
+ fprintf (of, "\tlist\tp=%s\n",&name[1]);
fprintf (of, "\t__config _wdt_off\n");
- fprintf (of, "\ninclude \"p16f877.inc\"\n");
+ fprintf (of, "\ninclude \"%s.inc\"\n",name);
}
/* Generate interrupt vector table. */
"aslink", "-nf", "$1", NULL
};
+/* Sigh. This really is not good. For now, I recommend:
+ * sdcc -S -mpic14 file.c
+ * the -S option does not compile or link
+ */
static const char *_asmCmd[] =
{
- "gpasm", NULL, NULL, NULL
+ "gpasm", "-c -I /usr/local/share/gpasm/header", "$1.asm", NULL
};
TARGET_ID_PIC,
"pic14",
"MCU pic", /* Target name */
+ NULL, /* Processor */
{
TRUE, /* Emit glue around main */
MODEL_SMALL | MODEL_LARGE | MODEL_FLAT24,