So much for doing Corner Office in a month, making frequent LJ entries about it! I lost a bunch of days not doing anything on it, but I've been making progress again since last week (starting with the great log entry: "Wrote a bunch of code, not much of it works"). Since I started, a new devkitARM, libnds, etc. have been released. It was fairly easy to update to. I think the only difference was that some register names changed.
I also decided on how to package the game: a single .nds file, with the assets inside the internal .nds filesystem. The EFS library
makes this possible, taking care of working on an emulator or actual hardware (by scanning your entire filesystem to find the .nds file!) Unfortunately, the EFS library, the EFS patcher, and libfat all had bugs. Workarounds have been posted on the gbadev forums, but I still lost a few days getting it all to work.
Also, I now have to have a loading splash screen. The first time the game loads, EFS has to scan the card for the game's .nds file since most (every?) loader doesn't fill in argv. Without a loading screen, that is a scary amount of time looking at a blank screen. After that, the game patches itself so it knows where to look next time. This is why EFS would be awesome if it worked out of the box.
For more exciting stuff, I finished the command GUI visuals. Every character in your party has a stat box on the subscreen, which can inflate and deflate to show that character's commands. The inflation, deflation, and the stat bars are all smoothly animated. I think the last prototype I need to do is to combine this command screen with the world view to have a little test battle. Then I can start cobbling it all together and making the levels.