Hey, it's been awhile since I posted here, but I figured this would be a great place to seek out the answers I'm looking for.
As some of you may know, AstralEsper of the GameFAQs message board is working on an extensive bugfix/balancing hack of FF1. Now, I've been offering my assistance by creating custom music for it. We managed to implement my remixed version of the Chaos theme (from Origins) into the game (check it out
here.) Now, I've been looking for ways to add more music, but it seems I've run out of space to do so.
While I was searching through the documents at RHDN, I came across a FF1 ROM expansion document by Disch, and the steps he outlined appear to be very straight-forward. Just double the size of the ROM in a hex editor, and move all the data starting at $3C010 all the way to the end. Okay, let's say I do that. Now I need to move some of the free space down to where the music data is, which means shifting the data from around $3A### (where the music data ends) to $3C010 down approximately 4000 bytes. My question is not only would doing this work, but also, if there's anything important in that section I need to watch out for, such as misdirected pointer bytes. Also, how far down could I shift this data without messing up the game? I assume it can't roll over past $3FFFF, but if it can, great - more free space to work with. Also, how would having nearly 256 kb of empty space affect the game itself? The only thing I'm looking to add right now is music data.
EDITSo I decided to test it out myself, just to see if it actually works. I followed Disch's instructions exactly. First I expanded the ROM to 512 KB (from $40010 to $80010, or, more technically, from $4000F to 8000F), then I copied all the data from $3C010 to $4000F (the guide says to copy all the way to $40010, but there is no data at $40010, since it technically ends at $4000F). I pasted that data starting at $7C010, and the data ended at $8000F like it was supposed to. Then I changed byte $00004 from 10 to 20, to show the size was doubled. At this point, the expansion should be complete, right? Well, I tried loading the ROM to see if the expanded ROM runs, and it doesn't work. Nothing loads at all. What did I miss? I followed all the steps correctly. Is this guide wrong, or is it just missing something? I never expected ROM expansion to be that easy, especially for a NES game, but the guide makes it seem so.