X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?p=rmac;a=blobdiff_plain;f=token.c;h=0887d93b1b47bc29e0d24cf9064c6e5cf96c8c71;hp=8726eb4b9ee256ed536f9eff6ae061bb48d27dc0;hb=751aa148a93f2830cf0a56ab9f662a0416127ddc;hpb=60f204cb9e3905100da0d89f14bb40db764acd9e diff --git a/token.c b/token.c index 8726eb4..0887d93 100644 --- a/token.c +++ b/token.c @@ -7,9 +7,11 @@ // #include "token.h" +#include "direct.h" #include "error.h" #include "macro.h" #include "procln.h" +#include "sect.h" #include "symbol.h" #define DECL_KW // Declare keyword arrays @@ -1160,6 +1162,7 @@ if (debug) printf("TokenizeLine: Calling fpop() from SRC_IREPT...\n"); // Handle multiple-character tokens if (c & MULTX) { + switch (*ln++) { case '!': // ! or != @@ -1173,19 +1176,20 @@ if (debug) printf("TokenizeLine: Calling fpop() from SRC_IREPT...\n"); continue; case '\'': // 'string' + if (m6502) + { + // Hardcoded for now, maybe this will change in the future + *tk++ = STRINGA8; + goto dostring; + } + // Fall through case '\"': // "string" - c1 = ln[-1]; *tk++ = STRING; -//#warning -// More char * stuffing (8 bytes) into the space of 4 (TOKEN). -// Need to figure out how to fix this crap. -#if 0 - *tk++ = (TOKEN)ln; -#else +dostring: + c1 = ln[-1]; string[stringNum] = ln; *tk++ = stringNum; stringNum++; -#endif for(p=ln; *ln!=EOS && *ln!=c1;) {