1
0
mirror of https://github.com/fadden/6502bench.git synced 2024-07-14 05:28:55 +00:00
6502bench/SourceGen/SGTestData/Expected/2008-address-changes_cc65.S
Andy McFadden 51081c5db0 Tweak "nearby" label finder
The code that found a nearby data target for an instruction operand
was searching backward but not forward.  We now take one step
forward, so that "LDA TABLE-1,Y" fills in automatically.

This altered 2008-address-changes, which had just this situation.
It didn't alter 2010-target-adjustment, but the existing tests were
insufficient and have been improved.
2019-10-29 18:12:22 -07:00

125 lines
2.5 KiB
ArmAsm

.setcpu "65816"
; .segment "SEG000"
.org $1000
.a8
.i8
clc
xce
sep #$ff
jsr L1100
jsr L1107
jmp L2000
; .segment "SEG001"
.org $1100
L1100: bit L1100
L1103: lda #$11
ldx #$11
L1107: ldy #$11
per L1103
bra L1103
; .segment "SEG002"
.org $1100
L1100_0: bit L1100_0
lda #$22
L1105: ldx #$22
ldy #$22
per L1105
jmp L1105
; .segment "SEG003"
.org $1100
L1100_1: bit L1100_1
lda #$33
ldx #$33
L1107_0: ldy #$33
per L1107_0
bra L1107_0
; .segment "SEG004"
.org $2000
L2000: bit L2000
beq $2018
bra L2020
; .segment "SEG005"
.org $2020
L2020: bit L2020
beq $2029
brl L2080
offend: nop
; .segment "SEG006"
.org $2080
L2080: bit L2080
lda offend
jsr offend
lda $2029
jsr $2029
lda L2080-1
jsr L2080-1
lda L2080
jsr L2080
lda $00
beq L2100
.byte $ad
; .segment "SEG007"
.org $2100
L2100: nop
nop
jmp L3000
; .segment "SEG008"
.org $2800
.byte $00
.byte $28
.res 14,$00
; .segment "SEG009"
.org $2820
.res 18,$00
; .segment "SEG010"
.org $3000
L3000: bit L3000
lda #$44
ldx #$44
ldy #$44
brl fwd
ulabel: .byte $00
.byte $01
; .segment "SEG011"
.org $3100
.byte $02
fwd: bit fwd
lda ulabel
lda ulabel+1
lda $300e
lda $300f
lda fwd-1
beq L3182
.byte $ea
.byte $ea
; .segment "SEG012"
.org $3180
.byte $00
.byte $01
L3182: bit L3182
lda label1
lda label1+1
lda label1+112
bra L3200
label1: .byte $ea
.byte $ea
; .segment "SEG013"
.org $3200
L3200: bit L3200
.byte $00
.byte $01