PikalaxALT / telefang_gb

Disassembly of Keitai Denjuu Telefang Speed and Power for the Gameboy Color (Japanese)
10 stars 0 forks source link

Two disassemblies #2

Open Sanqui opened 7 years ago

Sanqui commented 7 years ago

We already have a different, older disassembly project established, which also builds the current version of the translation patch:

https://github.com/kmeisthax/telefang

The structure isn't entirely compatible, but still, maybe we could talk about a possible merger or such? Duplicate work doesn't help anybody, after all.

PikalaxALT commented 7 years ago

I was not aware of this disassembly. I'll think about it and get back to you on Freenode by the 13th.

Sanqui commented 7 years ago

Yeah, I found out about yours a few days ago in #pret. Mine was started earlier though, so it should've been possible to find with a Github search ^^; Feel free to also stop by #telefang on irc.badnik.net. I'll tag @kmeisthax as well because he's done the bulk of the work on our disassembly.

PikalaxALT commented 7 years ago

Yep. I see your disassembly is much more complete than mine; I have 314 INCBINS currently, whereas your project has 0. I'll maintain my disassembly until the overlay feature of rgbds is released on master.

Sanqui commented 7 years ago

Our project doesn't have baserom INCBINs because it makes use of the overlay feature. It's more convenient and less error-prone because it doesn't involve manually rewriting addresses when you "split" an incbin.

From a cursory glance, our disassembly has more infrastructure in place (e.g., it handles compressed images as well as dialogue), but yours has more code by volume.

I'll try to push for getting the overlay feature upstream soon.

PikalaxALT commented 7 years ago

Sounds good. I'm working towards disassembling the text, but I can't do too much while away from my primary PC.

PikalaxALT commented 7 years ago

While we're on the subject, would you mind drafting a manpage for overlay?

kmeisthax commented 7 years ago

If you're looking for information on how the text system works, I have disassemblies in kmeisthax/telefang of the text drawing code - see the components/mainscript folder on master branch for what I've pulled out so far. I've also got inserters for main script and stringtable data, stored in the script directory. Though... this system is currently pending transition from wikitext to csv files. And I still have to finish disassembling our own patch first. (long story, we hand-edited way more things than we ever should have)

PikalaxALT commented 7 years ago

The main issue I have with the overlay feature is that it makes it hard to judge what parts of the ROM have yet to be disassembled. Is there an extra output file that contains the regions of each bank which were ripped from the baserom?

kmeisthax commented 7 years ago

I personally have never needed that sort of thing, though my particular workflow (debug from hardware register access in BGB, disassemble in IDA) hasn't needed it. RGBDS generates a *.map file listing each section in the compiled ROM and it's length, which is the inverse of what you wanted, but you could read between the lines to find unaccounted-for space.

Medium-term I've been considering writing a *.sym file compare utility to find what code overlaps between the two projects and what's unique to each. This would allow us to judge the state of each project and so on.

PikalaxALT commented 7 years ago

Just a heads up, as of a month and a half ago (39f8b984bfdf90afd552bf3947abdb9f232670f0), this repository no longer depends on a baserom. The SYM and MAP files are, for all intents and purposes, complete.

Sanqui commented 7 years ago

I have opened a pull request to push overlay upstream: https://github.com/rednex/rgbds/pull/131.