macro test ; Test the rpn system, as well as the linker... DEF expr EQUS STRRPL(STRRPL("\1 + zero)", "<< ", "<< ("), ">> ", ">> (") dl expr PURGE expr ; ...as well as the constexpr system println "\1 = ", (\1) endm section "test", ROM0[0] test 1 << 1 test 1 << 32 test 1 << 9001 test -1 << 1 test -1 << 32 test -1 << -9001 test -1 >> 1 test -1 >> 32 test -1 >> 9001 test -4 >> 1 test -4 >> 2 test -1 >> -9001 test 100 << -2 test 1 >> -2 test 100 >>> 16 test 100 >>> -16 test 100 >>> 32 test 100 >>> -32 test -100 >>> 32 test -100 >>> -32 test $DEADBEEF >> 1 test $DEADBEEF >>> 1 SECTION "Zero", ROM0[0] zero: