DSi Homebrew

I decided to start some DSi homebrew as a little fun project. Just looking into it it seems I can do a GL2D screen and a console with a keyboard quite easy. And then a little audio.

With a 128 kB texture, it looks possible to have about 512 (16 * 16) glyphs on the GL2D layer in 256 indexed colours. That should be good enough to start with. I suppose I’ll find out how to use multiple VRAM banks.

At the moment I’m stuck on this SD card not being recognized with various formatting. So I’ll have to get a nice new class 10 original one to check.

Open Code for an obvious game to come. Next to look at some auto animation and some 3D models for import.

So I’ve managed to work out somethings and got the memory pit overflow exploit working. The “unlaunch” installer does not install, and so it’s just keeping with the memory pit exploit whenever I need homebrew access.

There are still things to work out like why the MOD file does not run the next one, although this is more likely related to why the event loop only seemed to go through once. But that’s coding for another day.

So the generic menu is working. I’m still looking into why the switch back and forth between 2 and 3D on the main screen is resetting the image to magenta as it seems such things just set one register. A foreground sound automatic manner, and hooks into a game class seem to be logical next things to do.

This would make a game select something that could be placed in the options for maximizing utility of the 4MB limit. Finding a way of decompressing textures would also seem to free about 100kB, which is a lot in simple game designs.

To maximise sound utility, it might be possible to replace some of the sounds in the .mod files to be used in the game, as this seems to be possible to save on memory. I also must find out how to further reduce the file size of the .wav files.

So it seems I have about 500 kB for game logic and data excluding sound and graphics. I have defined various classes GameLogic (for generation), CTL (for control of the main machine loop), Audio (for triggering audio), BG (for background control) and Font (for 2D font overlays on the main display). This nicely abstracts the machine of all the setup and configuration.

Been doing graphics for a game idea. 8 by 8 is very tiny but fun. I seem to have 11 rows of 32 tiles left. I’m thinking of how to utilize this for best effect. I’m very likely to use genetic algorithms to make the AI effective. I have had some good ideas to abstract this into the enemy design.