X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?p=rmac;a=blobdiff_plain;f=procln.c;fp=procln.c;h=85721e878bf1b1258c6640d55d4044ed4167a5ca;hp=3b674c50a8a50f5e09c70ca59585d949bc04da99;hb=d21544da607af148b96a9d926d4564800892aa4e;hpb=9ad63bfb08225dd024d426041982c185bb697dff diff --git a/procln.c b/procln.c index 3b674c5..85721e8 100644 --- a/procln.c +++ b/procln.c @@ -154,7 +154,6 @@ void Assemble(void) char * opname = NULL; // Name of dirctve/mnemonic/macro int listflag; // 0: Don't call listeol() WORD rmask; // Register list, for REG - int registerbank; // RISC register bank int riscreg; // RISC register listflag = 0; // Initialise listing flag @@ -441,32 +440,16 @@ When checking to see if it's already been equated, issue a warning. // Check for register to equate to if ((*tok >= KW_R0) && (*tok <= KW_R31)) { - // sy->sattre = EQUATEDREG | RISCSYM; // Mark as equated register sy->sattre = EQUATEDREG; // Mark as equated register riscreg = *tok; - - // Default is current state of "regbank" - registerbank = regbank; - - // Check for "," override notation + // Check for "," override notation and skip past it. + // It is ignored now. Was that ever useful anyway? if ((tok[1] == ',') && (tok[2] == CONST)) { - // Advance token pointer to the constant - tok += 3; - - // Anything other than a 0 or a 1 will result in "No Bank" - if (*(uint64_t*)tok == 0) - registerbank = BANK_0; - else if (*(uint64_t*)tok == 1) - registerbank = BANK_1; - - // Advance half-way through the 64-bit const. - // The code below, expecting a regular token, - // will advance past the second half. - tok++; + // Advance token pointer and skip everything + tok += 4; } - sy->sattre |= registerbank; // Store register bank eattr = ABS | DEFINED | GLOBAL; eval = riscreg; tok++; @@ -499,7 +482,8 @@ When checking to see if it's already been equated, issue a warning. else { sy->sattre = EQUATEDREG; // Mark as equated register - riscreg = *tok; + eattr = ABS | DEFINED | GLOBAL; + eval = *tok; tok++; } }