1 #ifndef YACASL2_EXEC_INCLUDED
2 #define YACASL2_EXEC_INCLUDED
5 CMDTYPE getcmdtype(WORD code);
8 INSIZE = 256 /* CASL IIの、IN命令入力領域 */
11 /* 指定されたファイルからアセンブル結果を読込 */
12 bool inassemble(char *file);
14 /* 標準入力から文字データを読込(SVC 1) */
17 /* 標準出力へ文字データを書出(SVC 2) */
20 /* ロード/論理積/論理和/排他的論理和のフラグ設定。OFは常に0 */
23 /* 算術加算。フラグを設定して値を返す */
24 WORD adda(WORD val0, WORD val1);
26 /* 算術減算。フラグを設定して値を返す */
27 WORD suba(WORD val0, WORD val1);
29 /* 論理加算。フラグを設定して値を返す */
30 WORD addl(WORD val0, WORD val1);
32 /* 論理減算。フラグを設定して値を返す */
33 WORD subl(WORD val0, WORD val1);
35 /* 算術比較のフラグ設定。OFは常に0 */
36 void cpa(WORD val0, WORD val1);
38 /* 論理比較のフラグ設定。OFは常に0 */
39 void cpl(WORD val0, WORD val1);
41 /* 算術左シフト。フラグを設定して値を返す */
42 WORD sla(WORD val0, WORD val1);
44 /* 算術右シフト。フラグを設定して値を返す */
45 WORD sra(WORD val0, WORD val1);
47 /* 論理左シフト。フラグを設定して値を返す */
48 WORD sll(WORD val0, WORD val1);
50 /* 論理右シフト。フラグを設定して値を返す */
51 WORD srl(WORD val0, WORD val1);
62 /* COMET IIのレジスタを表示 */