Hi all- apologies if these have already been answered, I've searched and also read through what I think are the relevant sections of Mesen's manual and played with the menus but haven't found answers yet.
I'm taking a stab at reverse engineering Crystalis. My goal is to get some kind of rebuildable disassembly although I know this ROM is a bear. My strategy so far is to use Mesen's debugger to help with code identification and then attempt a literal disassembly to get a rebuildable code base that I can work from going forward. I've finished a fairly thorough play-thru trying to cover as many edge cases as possible, so I think the CDL is fairly complete in terms of regular gameplay. Now I have questions about how to interpret Mesen's CDL files and its disassembly output.
* The main frustration I'm having is completing the CDL. I tried scanning it for unidentified data and overwriting those parts of the ROM with zeroes. This does affect the game-- why was this data "unknown" in the CDL when it's clearly doing something? I get that some wouldn't be encountered during a regular playthrough, but I think there's something else going on.
* As far as disassembling the ROM, Mesen adds labels- which is great, but I also want a literal, rebuildable, disassembly. I read Mesen's manual and looked through all the menus but I can't figure out a way to turn off the auto labels and get the output I want -- is there a way to do this or will I need to address this programatically? (I've also tried a few disassemblers that are supposed to work with FCEUX's CDL files but no luck, although I know Mesen uses a slightly different CDL format).
Thank you!
I'm taking a stab at reverse engineering Crystalis. My goal is to get some kind of rebuildable disassembly although I know this ROM is a bear. My strategy so far is to use Mesen's debugger to help with code identification and then attempt a literal disassembly to get a rebuildable code base that I can work from going forward. I've finished a fairly thorough play-thru trying to cover as many edge cases as possible, so I think the CDL is fairly complete in terms of regular gameplay. Now I have questions about how to interpret Mesen's CDL files and its disassembly output.
* The main frustration I'm having is completing the CDL. I tried scanning it for unidentified data and overwriting those parts of the ROM with zeroes. This does affect the game-- why was this data "unknown" in the CDL when it's clearly doing something? I get that some wouldn't be encountered during a regular playthrough, but I think there's something else going on.
* As far as disassembling the ROM, Mesen adds labels- which is great, but I also want a literal, rebuildable, disassembly. I read Mesen's manual and looked through all the menus but I can't figure out a way to turn off the auto labels and get the output I want -- is there a way to do this or will I need to address this programatically? (I've also tried a few disassemblers that are supposed to work with FCEUX's CDL files but no luck, although I know Mesen uses a slightly different CDL format).
Thank you!