mirror of
https://github.com/fadden/6502bench.git
synced 2024-09-10 13:54:52 +00:00
These were being overlooked because they didn't actually cause anything to happen (a no-op .ORG sets the address to what it would already have been). The assembly source generator works in a way that causes them to be skipped, so everybody was happy. This seemed like the sort of thing that was likely to cause problems down the road, however, so we now split regions correctly when a no-op .ORG is encountered. This affects the uncategorized data analyzer and selection grouping. This changed the behavior of the 2004-numeric-types test, which was visibly weird in the UI but generated correct output. Added the 2024-ui-edge-cases test to provide a place to exercise edge cases when testing the UI by hand. It has some value for the automated regression test, so it's included there. Also, changed the AddressMapEntry objects to be immutable. This is handy when passing lists of them around.
92 lines
2.3 KiB
ArmAsm
92 lines
2.3 KiB
ArmAsm
;Project file was edited to get all big-endian data types, and to have an
|
|
;incorrect .junk alignment directive.
|
|
.cpu "6502"
|
|
.enc sg_hiascii
|
|
.cdef $20,$7e,$a0
|
|
* = $1000
|
|
bit L1448
|
|
jsr L14A8
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
nop
|
|
rts
|
|
|
|
.byte $11
|
|
.word $1122
|
|
.long $112233
|
|
.dword $11223344
|
|
.byte $11
|
|
.byte $11,$22
|
|
.byte $11,$22,$33
|
|
.byte $11,$22,$33,$44
|
|
.fill 2,$00
|
|
.byte $80
|
|
.fill 3,$00
|
|
.byte $80
|
|
.fill 4,$00
|
|
.byte $80
|
|
.fill 5,$00
|
|
.byte $80
|
|
.fill 256,$00
|
|
.byte $80
|
|
.fill 257,$cc
|
|
.byte $11
|
|
.byte $80
|
|
.byte $11,$22,$33,$44,$55,$66,$77,$88,$99,$00
|
|
.byte $80
|
|
LABEL .byte $00,$11,$22,$33,$44,$55,$66,$77,$88,$99,$aa,$bb,$cc,$dd,$ee,$ff ;comment on bulk
|
|
.byte $00,$11,$22,$33,$44,$55,$66,$77,$88,$99,$aa,$bb,$cc,$dd,$ee,$ff
|
|
.byte $00,$11,$22,$33,$44,$55,$66,$77,$88,$99,$aa,$bb,$cc,$dd,$ee,$ff
|
|
.byte $ff,$ee,$dd,$cc,$bb,$aa,$99,$88,$77,$66,$55,$44,$33,$22,$11,$00
|
|
.byte $80
|
|
.align 256,$aa
|
|
.byte $81
|
|
.align 64,$00
|
|
.byte $81
|
|
.align 32,$ab
|
|
.byte $00,$00,$00,$00,$00,$00,$00,$01
|
|
.byte $81
|
|
.byte $10,$00,$00,$00,$00,$00,$00,$00
|
|
.byte $81
|
|
.fill 2,$dd ;incorrect alignment
|
|
.align 256,$00
|
|
.fill 8,$82
|
|
.logical $1408
|
|
.fill 8,$82 ;note no-op .ORG
|
|
.fill 8,$83
|
|
.here
|
|
.logical $1428
|
|
.fill 8,$83 ;meaningful .ORG
|
|
.fill 8,$84
|
|
UserLabel .fill 8,$84
|
|
.fill 8,$85
|
|
L1448 .fill 8,$85
|
|
.fill 16,$86
|
|
.text $87,$87,$87,$87,$87,$87,$87,$87
|
|
;long comment
|
|
.text $87,$87,$87,$87,$87,$87,$87,$87
|
|
.fill 16,$88
|
|
.fill 8,$89
|
|
.fill 8,$89
|
|
.text $8a,$8a,$8a,$8a,$8a,$8a,$8a,$8a
|
|
.text $8a,$8a,$8a,$8a,$8a,$8a,$8a,$8a
|
|
.fill 8,$8b
|
|
L14A8 .fill 8,$8b
|
|
.fill 8,$8c
|
|
.byte %10001100
|
|
.fill 7,$8c
|
|
.here
|