mirror of
https://github.com/fadden/6502bench.git
synced 2024-08-21 02:29:33 +00:00
In a recent survey, three out of four cross assemblers surveyed recommended not using opcode mnemonics to their patients who use labels. We now remap labels like "AND" and "jmp", using the label map that's part of the label localizer. We skip the step for Merlin 32, which is perfectly happy to assemble "JMP JMP JMP". Also, fixed a bug in MaskLeadingUnderscores that could hang the source generator thread.
71 lines
1.2 KiB
ArmAsm
71 lines
1.2 KiB
ArmAsm
!cpu 65c02
|
|
REALLYLONGLABELNAME = $8888 ;that's a long name
|
|
|
|
* = $1000
|
|
nop
|
|
_start lda @start
|
|
lda X_start
|
|
lda pastglob
|
|
lda @__nopped
|
|
@start nop
|
|
@__nopped
|
|
nop
|
|
X_start nop
|
|
pastglob
|
|
nop
|
|
lda nlocal
|
|
nlocal lda #$11
|
|
reach1G nop
|
|
lda reach1G+1
|
|
lda @reach2+2
|
|
@reach2 nop
|
|
reach3G nop
|
|
@_reach4
|
|
nop
|
|
lda @_reach4-2
|
|
lda $00
|
|
beq @L102D
|
|
jsr @_reach4
|
|
jsr _start
|
|
@L102D lda #$22
|
|
lda gtest2
|
|
gtest1 nop
|
|
lda gtest3
|
|
gtest2 nop
|
|
gtest3 nop
|
|
lda #$33
|
|
lda $1041
|
|
topglob nop
|
|
lda @L1043
|
|
nop
|
|
nop
|
|
@L1043 nop
|
|
lda #$44
|
|
globalnm
|
|
jsr @L104A
|
|
nop
|
|
@L104A nop
|
|
nop
|
|
nglobal nop
|
|
globlat jsr nglobal
|
|
bra end
|
|
|
|
end nop
|
|
EXCESSIVELY_LONG_LABEL
|
|
lda REALLYLONGLABELNAME
|
|
@_uname nop
|
|
@X_uname11
|
|
nop
|
|
@X_uname1
|
|
nop
|
|
@X_uname
|
|
nop
|
|
lda #$00
|
|
@AND bne @AND ;local
|
|
JMP_1 bne JMP_1 ;global
|
|
jmp_1 bne jmp_1
|
|
TSB_1 bne TSB_1
|
|
XCE bne XCE
|
|
rts
|
|
|