1
0
mirror of https://github.com/fadden/6502bench.git synced 2024-12-01 22:50:35 +00:00
6502bench/SourceGen/SGTestData/Expected/20222-data-bank_64tass.S
Andy McFadden 5f472b60cf ORG rework, part 3
Split ".org" into ".arstart" and ".arend" (address range start/end).
Address range ends are now shown in the code list view, and the
pseudo-op can be edited in app settings.  Address range starts are
now shown after notes and long comments, rather than before, which
brings the on-screen display in sync with generated code.

Reworked the address range editor UI to include the new features.
The implementation is fully broken.

More changes to the AddressMap API, putting the resolved region length
into a separate ActualLength field.  Added FindRegion().  Renamed
some things.

Code generation changed slightly: the blank line before a region-end
line now comes after it, and ACME's "} ;!pseudopc" is now just "}".
This required minor updates to some of the regression test results.
2021-09-22 15:28:11 -07:00

107 lines
1.7 KiB
ArmAsm

.cpu "65816"
* = $1000
.as
.xs
start clc
xce
sep #$30
lda start
lda $2000
phk
plb
lda start
lda $2000
lda #$02
pha
plb
lda $1000
lda bank2 & $ffff
ldx #$08
tax
pha
plb
jsl bank2
jsl L24000
lda #$02
pha
plb
jsl bank3
phk
plb
bit start
jml L2400F
L103A .word _L103C
_L103C rts
L103D .long L2202E
.logical $022000
bank2 lda bank2
lda bank2 & $ffff
ldx #$00
jsr _L2202B
jsr _L22025
jsr _L22028
nop
lda #$03
pha
plb
lda L33028 & $ffff
rep #$30
.al
.xl
lda #$00a9
pha
plb
plb
sep #$30
.as
.xs
rtl
_L22025 jmp (L103A)
_L22028 jml [L103D]
_L2202B jmp (bank2addr,x)
L2202E nop
rts
bank2addr .word L2202E & $ffff
.here
.logical $033000
bank3 lda bank3
lda bank2 & $ffff
jsr _L33020
beq _L33024
phk
.here
.logical $033020
_L33020 plb
nop
bra _L33024
_L33024 lda $2030
rtl
L33028 .word L33028 & $ffff
.here
.logical $024000
L24000 lda L24000
phb
phk
plb
lda bank2 & $ffff
lda $3000
plb
rtl
L2400F rts
.here