In assembly language source files, there are labels for the start of a line thus:

  • test: lda #40

Or integrated compares with branches:

  • testjz a,40,2000

The top is 6502, the bottom is either Java or Z-Machine code.

Well, the decompiler only works with assembly files produced by a disassembler, NOT original assembly code.

It's not the end of the world.

First off, with line labels, we simply number every line and cross-reference the labels to line numbers.

Next, a testjmp turns into 2 lines:

  • test a,40
  • jz 2000

And of course, variables to be named can go in a markup file as specified.