オペランドに文字定数が指定された場合の動作を修正
[YACASL2.git] / src / dump.c
index 5362de4..8fab87d 100644 (file)
@@ -1,18 +1,5 @@
 #include "casl2.h"
-
-/* WORD値を2進数表記に変換 */
-char *word2bit(const WORD word)
-{
-    WORD mask = 0x8000;
-    char *bit, *p;
-    bit = malloc(16 + 1);
-    p = bit;
-    do {
-        *p++ = (word & mask) ? '1' : '0';
-    } while((mask >>= 1) > 0);
-    *p = '\0';
-    return bit;
-}
+#include "exec.h"
 
 /* COMET IIのメモリを表示 */
 void dumpmemory()
@@ -44,7 +31,7 @@ void dspregister()
 {
     int i;
     for(i = 0; i < REGSIZE; i++ ) {
-        if(logicalmode == true) {
+        if((&execmode)->logicalmode == true) {
             fprintf(stdout, "#%04X: GR%d: %6d = #%04X = %s\n",
                     PR, i, GR[i], GR[i], word2bit(GR[i]));
         } else {