diff --git a/src/asm/asm.1.s b/src/asm/asm.1.s index f894fbf..7d47de5 100644 --- a/src/asm/asm.1.s +++ b/src/asm/asm.1.s @@ -2418,7 +2418,11 @@ addmode php beq :skipq cmp #$22 ; " beq :skipq + and #$5f + cmp #'A' + beq :a jmp :index + :force8 lda #amforce8 tsb myvalue jmp :index @@ -2435,6 +2439,14 @@ addmode php tsb myvalue jmp :index +* 'a' (no modifier) is ignored +:a iny + lda [lineptr],y + cmp #' '+1 + jlt :zero + dey + jmp :index + * skip over quoted operand component. :skipq sta :q :skipq1 iny diff --git a/testdata/3015-amacc.S b/testdata/3015-amacc.S new file mode 100644 index 0000000..d38e59e --- /dev/null +++ b/testdata/3015-amacc.S @@ -0,0 +1,10 @@ +* +* explicit a operand (inc a, etc) is dropped. +* + + inc a + dec a + lsr a + asl a + rol a + ror a