用語「デバッガー」を「モニター」に変更
authorj8takagi <j8takagi@nifty.com>
Fri, 29 Jun 2018 01:08:05 +0000 (10:08 +0900)
committerj8takagi <j8takagi@nifty.com>
Fri, 29 Jun 2018 01:08:05 +0000 (10:08 +0900)
include/monitor.h [moved from include/debugger.h with 61% similarity]
src/Makefile
src/monitor.c [moved from src/debugger.c with 86% similarity]

similarity index 61%
rename from include/debugger.h
rename to include/monitor.h
index ccd6ca7..b9ca454 100644 (file)
@@ -1,5 +1,5 @@
-#ifndef DEBBUGER_INCLUDE
-#define DEBBUGER_INCLUDE
+#ifndef MONITOR_INCLUDE
+#define MONITOR_INCLUDE
 
 #include <stdio.h>
 #include <string.h>
 #include "word.h"
 
 /**
- * @brief ã\83\87ã\83\90ã\83\83ã\82¬
+ * @brief ã\83¢ã\83\8bã\82¿
  */
 enum {
-    DBARGSIZE = 3,          /**<デバッガー引数の最大数 */
+    MONARGSIZE = 3,          /**<モニター引数の最大数 */
 };
 
 /**
- * @brief ã\83\87ã\83\90ã\83\83ã\82¬ー引数を表すデータ型
+ * @brief ã\83¢ã\83\8bã\82¿ー引数を表すデータ型
  */
 typedef struct {
     int argc;                   /**<オペランド数 */
-    char *argv[DBARGSIZE];      /**<オペランド配列 */
-} DBARGS;
+    char *argv[MONARGSIZE];      /**<オペランド配列 */
+} MONARGS;
 
 /**
- * @brief ã\83\87ã\83\90ã\83\83ã\82¬ー命令行を表すデータ型
+ * @brief ã\83¢ã\83\8bã\82¿ー命令行を表すデータ型
  */
 typedef struct {
     char *cmd;                  /**<コマンド */
-    DBARGS *args;               /**<引数 */
-} DBCMDLINE;
+    MONARGS *args;               /**<引数 */
+} MONCMDLINE;
 
 /**
  * @brief ブレークポイント表を表すデータ型
@@ -49,7 +49,7 @@ enum {
 };
 
 enum {
-    DBINSIZE = 40    /**<デバッガーの、入力領域 */
+    MONINSIZE = 40    /**<モニターの、入力領域 */
 };
 
 /**
@@ -62,22 +62,22 @@ enum {
 unsigned adrhash(WORD adr);
 
 /**
- * @brief æ\96\87å­\97å\88\97ã\81\8bã\82\89ã\80\81ã\83\87ã\83\90ã\83\83ã\82¬ーの引数を取得する
+ * @brief æ\96\87å­\97å\88\97ã\81\8bã\82\89ã\80\81ã\83¢ã\83\8bã\82¿ーの引数を取得する
  *
- * @return ã\83\87ã\83\90ã\83\83ã\82¬ーの引数
+ * @return ã\83¢ã\83\8bã\82¿ーの引数
  *
  * @param *str 文字列
  */
-DBARGS *dbargstok(const char *str);
+MONARGS *monargstok(const char *str);
 
 /**
- * @brief è¡\8cã\81\8bã\82\89ã\80\81ã\83\87ã\83\90ã\83\83ã\82¬ーの命令と引数を取得する
+ * @brief è¡\8cã\81\8bã\82\89ã\80\81ã\83¢ã\83\8bã\82¿ーの命令と引数を取得する
  *
- * @return ã\83\87ã\83\90ã\83\83ã\82¬ーの命令と引数
+ * @return ã\83¢ã\83\8bã\82¿ーの命令と引数
  *
  * @param *line 行
  */
-DBCMDLINE *dblinetok(const char *line);
+MONCMDLINE *monlinetok(const char *line);
 
 /**
  * @brief ブレークポイント表にアドレスがある場合はtrue、ない場合はfalseを返す
@@ -108,21 +108,10 @@ bool addbps(WORD adr);
 bool delbps(WORD adr);
 
 /**
- * @brief ã\83\96ã\83¬ã\83¼ã\82¯ã\83\9dã\82¤ã\83³ã\83\88表ã\81\8bã\82\89ã\81\99ã\81¹ã\81¦ã\81®ã\82¢ã\83\89ã\83¬ã\82¹ã\82\92å\89\8aé\99¤する
+ * @brief ã\83\96ã\83¬ã\83¼ã\82¯ã\83\9dã\82¤ã\83³ã\83\88表ã\82\92解æ\94¾する
  *
  * @return なし
- *
- * @param なし
- */
-void resetbps();
-
-/**
- * @brief ブレークポイント表を開放する
- *
- * @return なし
- *
- * @param なし
  */
 void freebps();
 
-#endif        /* end of DEBBUGER_INCLUDE */
+#endif        /* end of MONITOR_INCLUDE */
index de42178..638609d 100644 (file)
@@ -3,7 +3,7 @@ CMDOBJ := casl2 comet2 dumpword casl2rev
 COMMONOBJ := word cmem cerr
 CASL2OBJ := struct hash
 ASOBJ := assemble token label
-EXECOBJ := exec dump debugger
+EXECOBJ := exec dump monitor
 
 # ヘッダファイル
 INCLUDEDIR := ../include
@@ -51,10 +51,10 @@ TAGS: $(INCLUDEDIR)/*.h *.c
 
 # makeで生成したファイルの削除
 distclean: clean
-       $(RM) casl2 comet2 dumpword
+       $(RM) casl2 comet2 dumpword casl2rev
 
 clean:
-       $(RM) *.o *.d
+       $(RM) *.o *.d core tags TAGS
 
 tag-clean:
        $(RM) TAGS tags
similarity index 86%
rename from src/debugger.c
rename to src/monitor.c
index b84a013..4fcd425 100644 (file)
@@ -1,4 +1,4 @@
-#include "debugger.h"
+#include "monitor.h"
 
 /**
  * @brief ブレークポイント表
@@ -139,9 +139,9 @@ void freebps()
     }
 }
 
-DBARGS *dbargstok(const char *str)
+MONARGS *monargstok(const char *str)
 {
-    DBARGS *args = malloc_chk(sizeof(DBARGS), "args");
+    MONARGS *args = malloc_chk(sizeof(MONARGS), "args");
     char *p, *q, *r, *sepp;     /* pは文字列全体の先頭位置、qはトークンの先頭位置、rは文字の位置 */
     int sepc = ' ';
 
@@ -164,20 +164,20 @@ DBARGS *dbargstok(const char *str)
     return args;
 }
 
-DBCMDLINE *dblinetok(const char *line)
+MONCMDLINE *monlinetok(const char *line)
 {
     char *tokens, *p;
     long l;
-    DBCMDLINE *dbcmdl = NULL;
+    MONCMDLINE *moncmdl = NULL;
 
     if(*line == '\n' || *line == '\0') {
         return NULL;
     }
     p = tokens = strdup_chk(line, "tokens");
-    dbcmdl = malloc_chk(sizeof(DBCMDLINE), "dbcmdl");
+    moncmdl = malloc_chk(sizeof(MONCMDLINE), "moncmdl");
     /* コマンドの取得 */
-    dbcmdl->cmd = malloc_chk((l = strcspn(p, " \t\n")) + 1, "dbcmdl.cmd");
-    strncpy(dbcmdl->cmd, p, l);
+    moncmdl->cmd = malloc_chk((l = strcspn(p, " \t\n")) + 1, "moncmdl.cmd");
+    strncpy(moncmdl->cmd, p, l);
     /* コマンドと引数の間の空白をスキップ */
     p += l;
     while(*p == ' ' || *p == '\t') {
@@ -185,13 +185,13 @@ DBCMDLINE *dblinetok(const char *line)
     }
     /* 引数として、改行までの文字列を取得 */
     if((l = strcspn(p, "\n")) > 0) {
-        dbcmdl->args = dbargstok(p);
+        moncmdl->args = monargstok(p);
     } else {
-        dbcmdl->args = malloc_chk(sizeof(DBARGS), "dbcmdl.args");
-        dbcmdl->args->argc = 0;
+        moncmdl->args = malloc_chk(sizeof(MONARGS), "moncmdl.args");
+        moncmdl->args->argc = 0;
     }
     FREE(tokens);
-    return dbcmdl;
+    return moncmdl;
 }
 
 bool stracmp(char *str1, int str2c, char *str2v[])
@@ -208,7 +208,7 @@ bool stracmp(char *str1, int str2c, char *str2v[])
     return false;
 }
 
-void db_break(int argc, char *argv[])
+void mon_break(int argc, char *argv[])
 {
     WORD w;
     if(stracmp(argv[0], 2, (char* []){"l", "list"})) {
@@ -246,14 +246,14 @@ void db_break(int argc, char *argv[])
     }
 }
 
-bool debuggercmd(char *cmd, DBARGS *args)
+bool monitorcmd(char *cmd, MONARGS *args)
 {
     bool next = false;
     if(stracmp(cmd, 2, (char* []){"s", "step"})) {
         execmode.step = true;
         next = true;
     } else if(stracmp(cmd, 2, (char* []){"b", "break"})) {
-        db_break(args->argc, args->argv);
+        mon_break(args->argc, args->argv);
     } else if(stracmp(cmd, 2, (char* []){"c", "continue"})) {
         execmode.step = false;
         next = true;
@@ -296,39 +296,39 @@ bool debuggercmd(char *cmd, DBARGS *args)
     return next;
 }
 
-void free_dbcmdline(DBCMDLINE *dbcmdl)
+void free_moncmdline(MONCMDLINE *moncmdl)
 {
     int i;
-    assert(dbcmdl != NULL);
-    if(dbcmdl->args != NULL) {
-        for(i = 0;  i < dbcmdl->args->argc; i++) {
-            FREE(dbcmdl->args->argv[i]);
+    assert(moncmdl != NULL);
+    if(moncmdl->args != NULL) {
+        for(i = 0;  i < moncmdl->args->argc; i++) {
+            FREE(moncmdl->args->argv[i]);
         }
-        FREE(dbcmdl->args);
+        FREE(moncmdl->args);
     }
-    if(dbcmdl->cmd != NULL) {
-        FREE(dbcmdl->cmd);
+    if(moncmdl->cmd != NULL) {
+        FREE(moncmdl->cmd);
     }
-    if(dbcmdl != NULL) {
-        FREE(dbcmdl);
+    if(moncmdl != NULL) {
+        FREE(moncmdl);
     }
 }
 
-void debugger()
+void monitor()
 {
     char *buf, *p;
-    DBCMDLINE *dbcmdl;
+    MONCMDLINE *moncmdl;
     bool next = false;
     do {
         fprintf(stdout, "COMET II (Type ? for help) > ");
-        buf = malloc_chk(DBINSIZE + 1, "debugger.buf");
-        fgets(buf, DBINSIZE, stdin);
+        buf = malloc_chk(MONINSIZE + 1, "monitor.buf");
+        fgets(buf, MONINSIZE, stdin);
         if((p = strchr(buf, '\n')) != NULL) {
             *p = '\0';
         }
-        if((dbcmdl = dblinetok(buf)) != NULL) {
-            next = debuggercmd(dbcmdl->cmd, dbcmdl->args);
-            free_dbcmdline(dbcmdl);
+        if((moncmdl = monlinetok(buf)) != NULL) {
+            next = monitorcmd(moncmdl->cmd, moncmdl->args);
+            free_moncmdline(moncmdl);
         }
         FREE(buf);
     } while(next == false);