mirror of
https://github.com/fadden/6502bench.git
synced 2024-11-30 01:50:10 +00:00
f7e5cf2f45
Most tests pass, but 2007-labels-and-symbols fails because the expressions recognized by 64tass don't match up with either of the other assemblers. This is currently using a workaround for the local label syntax. 64tass uses '_' as the prefix, which is unfortunate since SourceGen explicitly allowed underscores in labels. (So does 64tass for that matter, but it treats labels specially when the '_' comes first.) We will need to rename any non-local user labels that start with '_'. (issue #16)
61 lines
1.2 KiB
ArmAsm
61 lines
1.2 KiB
ArmAsm
.cpu "65816"
|
|
* = $1000
|
|
.as
|
|
.xs
|
|
load11 lda #$11
|
|
L1002 ldx #$22
|
|
load33 ldy #$33
|
|
L1006 lda #$44
|
|
predat bra L1042
|
|
|
|
.word $0123
|
|
dat1 .word $4567
|
|
.word $89ab
|
|
L1010 .word $cdef
|
|
L1012 .word $0011
|
|
L1014 .word $2233
|
|
.byte $80
|
|
.text "The quick brown fox"
|
|
.byte $80
|
|
.word L1042
|
|
.word L1041
|
|
.word L1042+1
|
|
fill0 .fill 16,$00
|
|
L1041 .byte $80
|
|
|
|
L1042 lda predat+2
|
|
lda L1041
|
|
asl dat1
|
|
rol dat1+2
|
|
ror L1010
|
|
and L1012
|
|
ora L1014
|
|
lda fill0
|
|
sta fill0+4
|
|
lda fill0+8
|
|
sta fill0+12
|
|
jsr L1002
|
|
lda L1006
|
|
L1069 pea L1069-1
|
|
per L1069-1
|
|
lda L1069+1
|
|
lda L1069+2
|
|
lda #$ea
|
|
L1077 sta L1077
|
|
L107A sta L107A+1
|
|
sta $107f
|
|
brl L2002
|
|
|
|
.byte $80
|
|
dat81 .byte $81
|
|
.logical $2000
|
|
L2000 .byte $82
|
|
.byte $83
|
|
|
|
L2002 bit L2002
|
|
lda dat81
|
|
lda L2000
|
|
rts
|
|
|
|
.here
|