Resurrecting an old thread I know, but I'm new here and went down a rabbit hole from the Level9 discussion into BeebDis...
Not sure whether it's still a popular disassembler but thought I'd just put a note on here that I think I've tweaked the code to fix these and a couple of other issues. The documentation mentioned the abilty to add a name to an entry point, but that didn't seem to work. It does now.
I also tweaked the symbol loading code to allow overwriting of generated labels and (hopefully) the right labels for any SAVE command.
Control File (note the label for the entry point):
Code: Select all
load $3000 orig.bin
entry $3000 start
symbols orig.symbols
string $3008 16
byte $3018 4
# hexdump
# stringscan
save disassembled.asm
cpu 6502
Symbol File (without a label for the entry address now):
Code: Select all
over = $301C
string = $3008
data = $3018
m7_ss0 = $7C00
m7_ss1 = &7C01
Output:
Code: Select all
m7_ss0 = $7C00
m7_ss1 = $7C01
org $3000
.start LDA #$41
STA m7_ss0
JMP over
.string EQUS "This is a string"
.data EQUB $01,$02,$03,$04
.over LDA #$42
STA m7_ss1
RTS
.BeebDisEndAddr
SAVE "disassembled.bin",start,BeebDisEndAddr
...it seems to compile to a matching binary, so that's a plus...