View Single Post
Old 24 April 2016, 21:16   #17
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 3,343
Okay, first of all there's little point in bothering to output a .asm file until you have the disassembly in a much more complete state, since you won't be able to re-assemble it without the assembler giving loads of errors. (Unless you're just using the .asm file to load into a text editor and navigate it, I guess.)

The offset in the example you gave (START+$097C) is in bytes relative to the start of the program. It has nothing to do with line numbers in the .asm text file.

In ReSource, move to the BRA.B START+$097C instruction and press the right arrow key. That will move to offset $97C in the disassembly. Do there seem to be valid instructions there? If so then the BRA.B instruction may well actually be an instruction, as opposed to data being disassembled as code.

Press the left arrow key to return to the BRA.B instruction, then press F6 to automatically generate a label at offet $097C.

The "instructions" after the BRA.B in your example are not code, but some kind of data. Move to the first ORI.B and press lAmiga-A to convert to ASCII string. Does that make sense? If not try lAmiga-W to convert to words.

It may be that the BRA.B isn't actually code either. Do the instructions before the BRA.B look normal/valid, i.e. without ??? in?

Rather than manually generating labels for every START+ reference, you can use the Project->Disassemble menu item and have ReSource do it for you. Sometimes it doesn't work for the whole executable for some reason, so you may need to select that menu item more than once.

ReSource's automatic disassembly isn't perfect and it may create labels where it's not appropriate. In that case you can move to the line with the bogus label and press - to remove it.
mark_k is offline  
 
Page generated in 0.04464 seconds with 11 queries