X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?p=rmac;a=blobdiff_plain;f=expr.c;h=270c072c621c2618728a736d8fe3b7bd54798bff;hp=6db7435dd205546e0afc4d25c3e018fcb1077301;hb=4205233c8397c581b4d27ab36ab81ec896ef3dd0;hpb=30a208654896284b50e7b362e97d3e63ec717b96 diff --git a/expr.c b/expr.c index 6db7435..270c072 100644 --- a/expr.c +++ b/expr.c @@ -1,7 +1,7 @@ // // RMAC - Reboot's Macro Assembler for all Atari computers // EXPR.C - Expression Analyzer -// Copyright (C) 199x Landon Dyer, 2011-2018 Reboot and Friends +// Copyright (C) 199x Landon Dyer, 2011-2020 Reboot and Friends // RMAC derived from MADMAC v1.07 Written by Landon Dyer, 1986 // Source utilised with the kind permission of Landon Dyer // @@ -155,8 +155,16 @@ int expr1(void) switch (*tok++) { case CR_ABSCOUNT: - *evalTokenBuffer.u32++ = CONST; - *evalTokenBuffer.u64++ = (uint64_t)sect[ABS].sloc; + if (cursect != ABS) + { + *evalTokenBuffer.u32++ = CONST; + *evalTokenBuffer.u64++ = sect[ABS].sloc; + } + else + { + *evalTokenBuffer.u32++ = CONST; + *evalTokenBuffer.u64++ = sloc; + } break; case CR_TIME: *evalTokenBuffer.u32++ = CONST;