Closed ExileInParadise closed 2 years ago
I am ... especially since this should be handled (see void oneaddr(int co), approx. line 5390). I'll look into it.
Hmmm. OK ... actually, if you add -oTSC to the command line, A09 tolerates most of the 6800 relics. But not all; LDA B 1,X
, for example, doesn't work at the moment. Guess I'll have to do something ...
OK, I uploaded a new version that can handle your file. It gets a bit miffed (i.e., it spits out a lot of ambiguity warnings), but that's intentional.
While experimenting with some historical source from the Motorola User Group code from their old BBS, I found many contributed 6800 programs have code where there is a space between part of an operation and single register and then the operand.
A09 sees this as an attempt to use an undefined label instead of a register specifier.
Example Run:
The example user group code that triggers this:
If I manually remove the space from ASL A to form ASLA, ADD A to ADDA, and so on, then A09 assembles as you would expect.
A09 is doing the right thing but it does highlight a historical oddity in coding style I thought you might be interested in.