1 #ifndef YACASL2_EXEC_INCLUDED
2 #define YACASL2_EXEC_INCLUDED
13 #include "disassemble.h"
16 INSIZE = 256 /**<IN命令の、入力領域 */
20 * @brief 実行エラーをエラーリストに追加する
22 void addcerrlist_exec();
25 * @brief アセンブル結果読み込みエラーをエラーリストに追加する
27 void addcerrlist_load();
30 * @brief 指定されたファイルからアセンブル結果を読み込む
32 * @return 読み込み終了アドレス。読み込めなかった場合は、0
34 * @param file 読み込むファイル名
35 * @param start 読み込み開始アドレス
37 WORD loadassemble(const char *file, WORD start);
41 * @brief execから関数ポインタで呼び出される関数
46 * @brief COMET II仮想マシンを実行する
55 * @brief NOP命令。語長1(OPのみ)
63 * @brief LD命令 - オペランドr,adr,x。語長2
71 * @brief LD命令 - オペランドr1,r2。語長1
95 * @brief ADDA命令 - オペランドr,adr,x。語長2
103 * @brief ADDA命令 - オペランドr1,r2。語長1
111 * @brief SUBA命令 - オペランドr,adr,x。語長2
119 * @brief SUBA命令 - オペランドr1,r2。語長1
127 * @brief ADDL命令 - オペランドr,adr,x。語長2
135 * @brief ADDL命令 - オペランドr1,r2。語長1
143 * @brief SUBL命令 - オペランドr,adr,x。語長2
151 * @brief SUBL命令 - オペランドr1,r2。語長1
159 * @brief AND命令 - オペランドr,adr,x。語長2
167 * @brief AND命令 - オペランドr1,r2。語長1
175 * @brief OR命令 - オペランドr,adr,x。語長2
183 * @brief OR命令 - オペランドr1,r2。語長1
191 * @brief XOR命令 - オペランドr,adr,x。語長2
199 * @brief XOR命令 - オペランドr1,r2。語長1
207 * @brief CPA命令 - オペランドr,adr,x。語長2
215 * @brief CPA命令 - オペランドr1,r2。語長1
223 * @brief CPL命令 - オペランドr,adr,x。語長2
231 * @brief CPL命令 - オペランドr1,r2。語長1
239 * @brief SLA命令 - オペランドr,adr,x。語長2
241 * 算術演算なので、第15ビットは送り出されない
249 * @brief SRA命令 - オペランドr,adr,x。語長2
251 * 算術演算なので、第15ビットは送り出されない
252 * 空いたビット位置には符号と同じものが入る
260 * @brief SLL命令 - オペランドr,adr,x。語長2
268 * @brief SRL命令 - オペランドr,adr,x。語長2
348 * @brief RET命令。語長1(OPのみ)
364 * @brief COMET IIのメモリを表示する
368 * @param start 表示の開始アドレス
369 * @param end 表示の終了アドレス
371 void dumpmemory(WORD start, WORD end);
374 * @brief COMET IIのレジスタを表示する
380 #endif /* YACASL2_EXEC_INCLUDEDの終端 */