Dear UnassumingVenusaur,
I really hope I'm not being too annoying - thanks for putting up with me!
I found your tutorial on tumblr explaining support tables, and I've made a ton of progress figuring this out! I just had a couple of quick question that I don't think you covered in your tutorial:
1) In the 0xC length support... uh, not really sure the proper terminology, I'll just go with support index: I understand bytes 0x0 through 0x7. It looks like 0x8 is always a 01, 0x9 and 0xB are 00's, but byte 0xA seems to vary quite a bit.
a) What does the 0xA byte mean? (looks to be 0x18 a lot of the time.)
b) Is the 0x8 byte always 01/does this have any meaning you're aware of? Or is it just part of the support type that's constant so you didn't mention it?
c) Are 0x9 and 0xB ever not 00, and if so, any idea what they mean?
2) Since the (I keep wanting to call it packet...) thingy contains a byte for order to show up ingame, I assume they don't need to be placed in the table in order? Say if I wanted to add a new support and have it show up at the top, I could place it at the end of the table, choose an order #, and add one to all the other ones?
(I know I'll have to modify the support length on the table header, that part looks easy enough
)
3) It looks like a ton of the support tables have been inserted at the end of the file. That's fine and dandy. I kind of doubt I'll need to go this route since I'm not planning on making huge changes, but if I wanted to add even more space for larger/more tables or what not, it looks like the first 3 bytes of the file header identify how large the file is - is that the only thing I'd have to modify to make it work?
Thanks for all the amazing work you've done - really appreciate it!