1 #ifndef YACASL2_EXEC_INCLUDED
2 #define YACASL2_EXEC_INCLUDED
11 INSIZE = 256 /**<IN命令の、入力領域 */
18 bool trace; /**<レジストリの内容を表示する場合はtrue */
19 bool logical; /**<レジストリの内容を論理値(0から65535)で表示する場合はtrue */
20 bool dump; /**<メモリの内容を表示する場合はtrue */
24 * @brief 実行モード: trace, logical, dump
26 extern EXECMODE execmode;
29 * @brief 実行エラーをエラーリストに追加する
31 void addcerrlist_exec();
34 * @brief アセンブル結果読み込みエラーをエラーリストに追加する
36 void addcerrlist_load();
39 * @brief 指定されたファイルからアセンブル結果を読み込む
41 bool loadassemble(const char *file);
46 * @brief execから関数ポインタで呼び出される関数
51 * @brief COMET II仮想マシンを実行する
60 * @brief NOP命令。語長1(OPのみ)
68 * @brief LD命令 - オペランドr,adr,x。語長2
76 * @brief LD命令 - オペランドr1,r2。語長1
100 * @brief ADDA命令 - オペランドr,adr,x。語長2
108 * @brief ADDA命令 - オペランドr1,r2。語長1
116 * @brief SUBA命令 - オペランドr,adr,x。語長2
124 * @brief SUBA命令 - オペランドr1,r2。語長1
132 * @brief ADDL命令 - オペランドr,adr,x。語長2
140 * @brief ADDL命令 - オペランドr1,r2。語長1
148 * @brief SUBL命令 - オペランドr,adr,x。語長2
156 * @brief SUBL命令 - オペランドr1,r2。語長1
164 * @brief AND命令 - オペランドr,adr,x。語長2
172 * @brief AND命令 - オペランドr1,r2。語長1
180 * @brief OR命令 - オペランドr,adr,x。語長2
188 * @brief OR命令 - オペランドr1,r2。語長1
196 * @brief XOR命令 - オペランドr,adr,x。語長2
204 * @brief XOR命令 - オペランドr1,r2。語長1
212 * @brief CPA命令 - オペランドr,adr,x。語長2
220 * @brief CPA命令 - オペランドr1,r2。語長1
228 * @brief CPL命令 - オペランドr,adr,x。語長2
236 * @brief CPL命令 - オペランドr1,r2。語長1
244 * @brief SLA命令 - オペランドr,adr,x。語長2
246 * 算術演算なので、第15ビットは送り出されない
254 * @brief SRA命令 - オペランドr,adr,x。語長2
256 * 算術演算なので、第15ビットは送り出されない
257 * 空いたビット位置には符号と同じものが入る
265 * @brief SLL命令 - オペランドr,adr,x。語長2
273 * @brief SRL命令 - オペランドr,adr,x。語長2
353 * @brief RET命令。語長1(OPのみ)
369 * @brief COMET IIのメモリを表示する
376 * @brief COMET IIのレジスタを表示する
382 #endif /* YACASL2_EXEC_INCLUDEDの終端 */