64tass will assemble `lda #$` as `lda #$00`
An assembler for the legendary 6502 processor and it's derivatives
Brought to you by:
soci
Repro steps:
64tass -o cmpim.prg cmpim.s65a9 00Changing lda #$ to lda # will give the expected "an expression is expected" error.
Thanks,
--Tom
This is because $ is an empty bit string. Similarly like "" is an empty character string or x'' an empty byte string.
The numeric value of all three are zero in expressions which need numeric values.
While it works as designed I see how an empty (bit) string is unexpected as an instruction argument. Or even elsewhere, as it's basically "nothing". Will think about it.