ElliottS wrote
Is there any reason that the supplied assembler behaves the way it does or is this just a case of garbage in / garbage out. Mostly I'm hoping I can call my assembler done even though it handles @-X commands strangely. After all if its expected that assembly code should never have @-X commands than it shouldn't matter how oddly my assembler does it, right?
Definitely GIGO -- it's a bug in the supplied assembler and your assembler doesn't need to worry about it. FWIW, my assembler prints an error message and terminates.
Another sequence to get -32768 into A is
@32767
A=A+1
But it's uglier than A=!A since the addition intentionally causes a "signed integer overflow".
--Mark