Line 58... |
Line 58... |
#include "mprofiler.h"
|
#include "mprofiler.h"
|
#include "mc.h"
|
#include "mc.h"
|
#include "atahost.h"
|
#include "atahost.h"
|
|
|
/* CVS revision number. */
|
/* CVS revision number. */
|
const char rcsrev[] = "$Revision: 1.91 $";
|
const char rcsrev[] = "$Revision: 1.92 $";
|
|
|
/* History of execution */
|
/* History of execution */
|
int histexec[HISTEXEC_LEN];
|
int histexec[HISTEXEC_LEN];
|
|
|
char *sim_commands [] = {
|
char *sim_commands [] = {
|
Line 604... |
Line 604... |
strtoken(linestr, item2, 2);
|
strtoken(linestr, item2, 2);
|
pc = strtoul(item2, NULL, 0);
|
pc = strtoul(item2, NULL, 0);
|
} else
|
} else
|
if (strcmp(item1, "break") == 0) { /* set/clear breakpoint */
|
if (strcmp(item1, "break") == 0) { /* set/clear breakpoint */
|
char item2[20];
|
char item2[20];
|
|
char *p;
|
|
unsigned long addr;
|
strtoken(linestr, item2, 2);
|
strtoken(linestr, item2, 2);
|
set_insnbrkpoint(strtoul(item2, NULL, 0));
|
addr = strtoul(item2, &p, 0);
|
|
if (p) {
|
|
struct label_entry *l = find_label (item2);
|
|
if (l) {
|
|
addr = l->addr;
|
|
} else addr = 0xffffffff;
|
|
}
|
|
if (addr != 0xffffffff) set_insnbrkpoint(addr);
|
|
else PRINTF ("'%s' is invalid address!\n");
|
} else
|
} else
|
if (strcmp(item1, "r") == 0) { /* dump regs */
|
if (strcmp(item1, "r") == 0) { /* dump regs */
|
dumpreg();
|
dumpreg();
|
} else
|
} else
|
if (strcmp(item1, "de") == 0) { /* reset simulator */
|
if (strcmp(item1, "de") == 0) { /* reset simulator */
|