X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?p=rmac;a=blobdiff_plain;f=parmode.h;h=64c3b5c86981c3576a099d2a921d04328de219da;hp=4b6c7ea968c1f07a81e8d7ebedbed9a6a56efaee;hb=29b32d134bc12831a8ddd098bf9aeeda26dcfe7c;hpb=ff8188b7e279f99cf11ac8a283c4146af324d26f diff --git a/parmode.h b/parmode.h index 4b6c7ea..64c3b5c 100644 --- a/parmode.h +++ b/parmode.h @@ -180,12 +180,13 @@ AMn = MEMPOST; goto AnOK; } - else if (*tok==',') + else if (*tok == ',') { tok++; // eat the comma // It might be (Dn[.wl][*scale],od) // Maybe this is wrong and we have to write some code here // instead of reusing that path... + AnEXTEN |= EXT_BDSIZE0; // Base displacement null - suppressed goto CHECKODn; } else @@ -279,7 +280,11 @@ if (*tok == ',') { + // If we got here we didn't get any [] stuff + // so let's suppress base displacement before + // branching off tok++; + AnEXTEN |= EXT_BDSIZE0; // Base displacement null - suppressed goto CHECKODn; } if (*tok++ != ')') // final ")" @@ -305,7 +310,7 @@ // bd=0 so let's optimise it out AnEXTEN|=EXT_BDSIZE0; } - else if (*tok==DOTL) + else if (*tok == DOTL) { // ([bd.l,... AnEXTEN |= EXT_BDSIZEL; tok++; @@ -365,6 +370,7 @@ tok++; // Check for size + { // ([bd,An/PC],Xn.W/L...) switch ((int)*tok) { @@ -382,6 +388,7 @@ // .B not allowed here... goto badmode; } + } // Check for scale if (*tok == '*') // ([bd,An/PC],Xn*...) @@ -616,7 +623,9 @@ // Is .W forced here? if (*tok == DOTW) + { tok++; + } } // Check for final closing parenthesis @@ -717,6 +726,7 @@ IS_SUPPRESSEDn: } // Check for size + { // ([bd,An/PC],Xn.W/L...) switch ((int)*tok) { @@ -734,6 +744,7 @@ IS_SUPPRESSEDn: // .B not allowed here... goto badmode; } + } // Check for scale if (*tok == '*') // ([bd,An/PC],Xn*...)