exec.cの実行ルーチンを関数ポインタでの記述に変更し、整理
[YACASL2.git] / include / struct.h
index de1aa4b..6a5a0e4 100644 (file)
@@ -50,38 +50,32 @@ extern SYSTEM *sys;
  */
 typedef enum {
     /**
-     *  オペランド数2または3
+     *  オペランド数2または3。命令語長2
      *     第1オペランド: 汎用レジスタ
      *     第2オペランド: アドレス
      *     第3オペランド: 指標レジスタ
      */
     R_ADR_X = 010,
     /**
-     *  オペランド数2または3
+     *  オペランド数2または3。。命令語長2
      *     第1オペランド: 汎用レジスタ
      *     第2オペランド: アドレスに格納されている内容
      *     第3オペランド: 指標レジスタ
      */
-    R_ADR_X_ = 011,
-    /**
-     *  オペランド数2
-     *     第1オペランド: 汎用レジスタ
-     *     第2オペランド: 汎用レジスタ
-     */
     R1_R2 = 020,
     /**
-     * オペランド数1または2
+     * オペランド数1または2。命令語長1
      *     第1オペランド: アドレス
      *     第2オペランド: 指標レジスタ
      */
     ADR_X = 030,
     /**
-     *   オペランド数1
+     *   オペランド数1。命令語長1
      *     第1オペランド: 汎用レジスタ
      */
     R_ = 040,
     /**
-     *  オペランドなし
+     *  オペランドなし。命令語長1
      */
     NONE = 0,
     /**
@@ -114,6 +108,7 @@ typedef struct _CMDTAB {
 typedef struct {
     WORD start;   /**<開始アドレス */
     WORD end;     /**<終了アドレス */
+    bool stop;    /**<終了フラグ */
 } EXECPTR;
 
 extern EXECPTR *execptr;
@@ -149,12 +144,6 @@ void free_cmdtype_code();
  */
 bool create_code_type();
 
-/**
- * 命令コードから命令タイプを返す
- * 無効な場合はNONEを返す
- */
-CMDTYPE getcmdtype(WORD code);
-
 /**
  * 命令コードから命令の関数ポインタを返す
  */