]> Shamusworld >> Repos - rmac/blobdiff - direct.c
Added -l* to enable listing without pagination. Fix bug where a wrong malloc would...
[rmac] / direct.c
index b7dfb853791d4e236d8803c2ec4ca576b20312d0..8d3d804330ad71f8080f232c0d2ef640fdd5cb39 100644 (file)
--- a/direct.c
+++ b/direct.c
@@ -27,7 +27,6 @@ TOKEN exprbuf[128];                   // Expression buffer
 SYM * symbolPtr[1000000];      // Symbol pointers table
 static long unused;                    // For supressing 'write' warnings
 char buffer[256];                      // Scratch buffer for messages
-int stringtype;             // Non-zero if we need any special string conversions
 
 // Function prototypes
 int d_unimpl(void);
@@ -983,28 +982,27 @@ int d_dc(WORD siz)
        for(;; tok++)
        {
                // dc.b 'string' [,] ...
-               if (siz == SIZB && *tok == STRING && (tok[2] == ',' || tok[2] == EOL))
+               if (siz == SIZB && (*tok == STRING || *tok == STRINGA8) && (tok[2] == ',' || tok[2] == EOL))
                {
                        uint32_t i = strlen(string[tok[1]]);
 
                        if ((challoc - ch_size) < i)
                                chcheck(i);
 
-            if (stringtype == NORMAL)
-            {
-                for (p = string[tok[1]]; *p != EOS; p++)
-                               D_byte(*p);
-            }
-            else if(stringtype == A8INT)
-            {    
-                for (p = string[tok[1]]; *p != EOS; p++)
-                D_byte(strtoa8[*p]);          
-            }
-            else
-            {
-                error("String format not supported yet");
-            }
-
+                       if (*tok == STRING)
+                       {
+                               for(p=string[tok[1]]; *p!=EOS; p++)
+                                       D_byte(*p);
+                       }
+                       else if(*tok == STRINGA8)
+                       {
+                               for(p=string[tok[1]]; *p!=EOS; p++)
+                                       D_byte(strtoa8[*p]);
+                       }
+                       else
+                       {
+                               error("String format not supported... yet");
+                       }
 
                        tok += 2;
                        goto comma;