context *currCtxt = NULL;
short fullname = 0;
char *ssdirl = SDCC_LIB_DIR ":" SDCC_LIB_DIR "/small" ;
-char *simArgs[8];
+char *simArgs[20];
int nsimArgs = 0;
+char model_str[20];
/* fake filename & lineno to make linker */
char *filename=NULL;
{ "h" , cmdHelp , NULL },
{ "info" , cmdInfo ,
- "info\n"
+ "info"
"\t {break}\t list all break points\n"
"\t {stack}\t information about call stack\n"
"\t {frame}\t current frame information\n"
},
{ "l" , cmdListSrc , NULL },
{ "show" , cmdShow ,
- "show\n"
+ "show"
"\t {copying}\t copying & distribution terms\n"
"\t {warranty}\t warranty information\n"
},
sym = func->sym;
-#ifdef SDCDB_DEBUG
- printf("func '%s' has entry '%x' exit '%x'\n",
+ Dprintf(D_sdcdb, ("func '%s' has entry '%x' exit '%x'\n",
func->sym->name,
func->sym->addr,
- func->sym->eaddr);
-#endif
+ func->sym->eaddr));
+
if (!func->sym->addr && !func->sym->eaddr)
continue ;
}
#ifdef SDCDB_DEBUG
- printf("function '%s' has the following C exePoints\n",
- func->sym->name);
+ Dprintf(D_sdcdb, ("function '%s' has the following C exePoints\n",
+ func->sym->name));
{
exePoint *ep;
for (ep = setFirstItem(func->cfpoints); ep;
ep = setNextItem(func->cfpoints))
- fprintf (stdout,"{%x,%d} %s",ep->addr,ep->line,mod->cLines[ep->line]->src);
+ Dprintf(D_sdcdb, ("{%x,%d} %s",
+ ep->addr,ep->line,mod->cLines[ep->line]->src));
- fprintf(stdout," and the following ASM exePoints\n");
+ Dprintf(D_sdcdb, (" and the following ASM exePoints\n"));
for (ep = setFirstItem(func->afpoints); ep;
- ep = setNextItem(func->afpoints))
- fprintf (stdout,"{%x,%d} %s",ep->addr,ep->line,mod->asmLines[ep->line]->src);
-
+ ep = setNextItem(func->afpoints))
+ Dprintf (D_sdcdb, ("{%x,%d} %s",
+ ep->addr,ep->line,mod->asmLines[ep->line]->src));
}
#endif
}
continue ;
}
+ /* model string */
+ if (strncmp(argv[i],"-m",2) == 0) {
+ strncpy(model_str, &argv[i][2], 15);
+ if (strcmp(model_str,"avr") == 0)
+ simArgs[0] = "savr";
+ else if (strcmp(model_str,"rrz80") == 0)
+ simArgs[0] = "rrz80";
+ else if (strcmp(model_str,"xa") == 0)
+ simArgs[0] = "sxa";
+ else if (strcmp(model_str,"z80") == 0)
+ simArgs[0] = "sz80";
+ continue ;
+ }
+
fprintf(stderr,"unknown option %s --- ignored\n",
argv[i]);
} else {
int main ( int argc, char **argv)
{
printVersionInfo();
+
+ simArgs[nsimArgs++] = "s51";
+ simArgs[nsimArgs++] = "-P";
+ simArgs[nsimArgs++] = "-r 9756";
/* parse command line */
+
parseCmdLine(argc,argv);
commandLoop();