News: 11 March 2016 - Forum Rules
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia, Danke

Author Topic: Editing GBA graphics.  (Read 5905 times)

MathUser2929

  • Hero Member
  • *****
  • Posts: 1572
    • View Profile
Editing GBA graphics.
« on: August 25, 2013, 10:48:37 am »
I looked at Castlevania COTM in YY-CHR and couldn't find any graphics. So does this mean they are compressed? If so, is there any way to edit them? I'd like to do a few sprite swaps. A walkthrough would be appreciated. Thanks.

FAST6191

  • Hero Member
  • *****
  • Posts: 2626
    • View Profile
Re: Editing GBA graphics.
« Reply #1 on: August 25, 2013, 12:15:48 pm »
The version of yy-chr I have here does not support 8bpp GBA and proper custom sizes are tricky. Both are used far more in the DS (mainly as the DS has more graphics memory and it can afford to do it more) but the GBA has plenty of it as well.
For the truly custom stuff I like crystaltile2, my choice for general GBA editor is probably http://home.arcor.de/minako.aino/TilEd2002/ though.

It could be compressed. I had a quick scan through the European version though and it had a bunch of 8x8 4bpp stuff and a tiny bit of 8bpp stuff though I doubt it was everything.

Walkthrough
Basic method
Scan over the ROM in various settings. I already mentioned the two big tile editors for the GBA and http://code.google.com/p/tiledggd/ finishes the list. You would be surprised how much gets found this way.

Use compression scanning tools.
http://www.romhacking.net/utilities/431/
http://www.romhacking.net/utilities/529/
http://www.romhacking.net/utilities/362/
http://magicteam.net/?page=programs&show=LZ77Restructor%202 (probably the best one).
Crystaltile2 also features compression searching that is compatible, likewise most tools aimed at the DS will work as the methods are often similar.

Use SWI logs
Though it is not exclusively used the GBA BIOS has decompression functions, emulators can be told to note where and how these functions are called and you can then sometimes feed them to the tools above or use it to guide you in. Sidenote. It is mainly used for fonts, borders and such like but there is a compression method that is actually a packing method and can be viewed and edited by a tile editor with relative ease.

Use tracing.
http://www.romhacking.net/documents/361/ is a nice guide to it for the GBA.
Palettes you can trace as well or snatch from RAM/savestates.

Alternatives.
Corruption. Some dislike it but it is a useful method, here you corrupt part of the ROM, run it and what ever is broken is likely connected to what you just corrupted.

Searching. Much like you might find a palette in the ROM by grabbing it from memory and searching the ROM for the same data you can use things snatched from tile editors.