DS-ROM-Hacking / SBM5_SFC_EN

Super Bomberman 5 English Translation for Super Famicom
7 stars 1 forks source link

Support dynamic pointer generation and free space utilization #3

Open danielburgess opened 6 years ago

danielburgess commented 6 years ago

This will be a feature in mbuild. Essentially, provide original pointer tables as well as instructions for determining data length. The app will dynamically allocate space in the rom based on explicit free space definitions as well as during the build, data will be rearranged to make the most of available space.

Provide:

Output: original data will be rearranged in the rom. Unchanged data will be shifted up in the rom and changed data will come after. No wasted space!

This will be crucial for supporting the gold edition of sbm5.

danielburgess commented 6 years ago

Will need to modify the xml data structure slightly to reference the pointer table in it's own node. Each pointer table will be referenced by data using an index (numerical value that is just used by the build process).

danielburgess commented 6 years ago

No need to have all the data extracted before the build process. I can make this smart enough to leave existing data alone unless it needs to be shuffled to accommodate the changed data. Perhaps move all the unchanged data up in the data block and then place all changes after the "unchanged" data.