Megalextoria
Retro computing and gaming, sci-fi books, tv and movies and other geeky stuff.

Home » Digital Archaeology » Computer Arcana » Apple » Apple II » 6502bench SourceGen disassembler updated
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: 6502bench SourceGen disassembler updated [message #388856 is a reply to message #388189] Tue, 19 November 2019 17:22 Go to previous messageGo to previous message
Anonymous
Karma:
Originally posted by: fadden

6502bench SourceGen v1.5.0-dev1 is now available. Key changes:

- Added non-unique local labels.
- Added label annotations.
- Added "go to last change" (moves selection to last edit).

Label annotations let you tack a '?' onto the end of a symbol. So if you're disassembling some code and see something that looks like it might hold high scores, but you're not sure, you can now give it the label "high_score?" instead of something like "high_score_maybe". The '?' is omitted when generating sources.

Non-unique local labels let you define labels with a scope that resets whenever a global variable is encountered. All supported cross-assemblers (64tass, ACME, cc65, Merlin 32) have something like this. For example:

first ldx #$05
:loop dex
bne :loop

second ldy #$03
:loop dey
bne :loop

Because SourceGen is a disassembler and always knows which label goes with which address, you can write things that would gag an assembler:

:loop ldx #$05
:loop dex
bne :loop
dey
bne :loop
beq :done
global nop
:done lda #$01

Labels will be adjusted as needed to generate code that assembles. In this case, the inner loop would become ":loop1", and ":done" would be promoted to a global label.

Newly-created labels now default to global. (They were previously "unique locals", meaning the code generator would try to make them be local, but insisted that they have a unique name.)


The project web site is https://6502bench.com/. Source code and pre-built Windows binaries are available from https://github.com/fadden/6502bench/releases
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Asimov FTP anonymous login
Next Topic: new apple2 demos/game
Goto Forum:
  

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Sat Apr 20 02:22:45 EDT 2024

Total time taken to generate the page: 0.00541 seconds