9 {
"memorysize", required_argument, NULL,
'M'},
10 {
"clocks", required_argument, NULL,
'C'},
11 {
"version", no_argument, NULL,
'v' },
12 {
"help", no_argument, NULL,
'h'},
20 { 401,
"invalid option" },
36 int main(
int argc,
char *argv[])
43 const char *cmdversion =
"comet2monitor: COMET II machine code monitor of YACASL2 version %s\n";
44 const char *usage =
"Usage: %s [-vh] [-M <MEMORYSIZE>] [-C <CLOCKS>]\n";
53 while((opt = getopt_long(argc, argv,
"M:C:vh",
longopts, NULL)) != -1) {
56 memsize = atoi(optarg);
59 clocks = atoi(optarg);
62 fprintf(stdout, cmdversion, version);
65 fprintf(stdout, usage, argv[0]);
66 goto comet2monitorfin;
68 fprintf(stderr, usage, argv[0]);
70 goto comet2monitorfin;
74 reset(memsize, clocks);
void addcerrlist(int cerrc, CERR cerrv[])
エラーリストを作成・追加する
void freecerr()
エラーリストと現在のエラーを解放する
void cerr_init()
エラーを初期化する
void setcerr(int num, const char *str)
現在のエラーを設定する
void exec()
COMET II仮想マシンを実行する
#define ARRAYSIZE(array)
配列のサイズを返すマクロ
int main(int argc, char *argv[])
comet2monitorコマンドのメイン
void addcerrlist_comet2monitor()
CERR cerr_comet2monitor[]
casl2のエラー定義
static struct option longopts[]
void addcerrlist_exec()
実行エラーをエラーリストに追加する
void addcerrlist_load()
アセンブル結果読み込みエラーをエラーリストに追加する
void reset(int memsize, int clocks)
bool create_cmdtable(CMDTAB_HASH hash)
命令ハッシュ表を作成する
void free_cmdtable(CMDTAB_HASH hash)
EXECMODE execmode
実行モード: trace, logical, dump, monitor, step