
" 'codehandlerRegion': 'Aux Code Regions'" to " 'codehandlerRegion': 'Gecko Code Handler Storage'".Īnd that it. " 'codelistRegion': 'Tournament Mode Region'," to " 'codelistRegion': 'Gecko Code List Storage'," and change, Here you can specify the name of the region to store the codelist/codehandler in. Scroll most of the way down to about line 116, where you should see some Gecko configuration info. You can open it in any standard text editor. To change the save locations for those items, so that they're stored in the new regions of this DOL when Gecko codes are used, open the settings.py file, found in the root directory of MCM. This is because, if you use Gecko codes, I recommend changing the save locations for those to use these new areas, since both of those items are relatively large and must be contiguous. This file has been planned for, so this space will already automatically show up in MCM's Code-Space Options menu when this DOL is loaded, as "Gecko Code Handler Storage" and "Gecko Code List Storage".


Making further iterations of this such as to add more space might be possible, but I'll go into that at the end of the Documentation section below. This is not compatible with versions of MCM before 4.0. But the amount of space we currently have defined as "free" is only a few percent of the total size of the file, which wouldn't make for a big difference if we removed it. That's 84% more codespace for us to use!Ĭonceivably we could also shrink the DOL, to reduce the game boot time. The DOL above has been expanded to accommodate 0圎900 more bytes of free space for custom code, for a new total of 0x1FDB0 bytes of space. (I'm not counting the space CrazyHand uses in that number, since the end point of the region it overwrites is not set.) This is how much space you would currently have available in MCM if you enable all of the default custom code regions. That is, codespace that's safe to be overwritten for custom code.


This has been fixed and tested, and works on both emulator and hardware.Ĭurrently, out of 0x438500 bytes of code in the original NTSC 1.02 DOL, we have defined a bit more than 0x114B0 bytes of it as "free space". While it worked on Dolphin, it did not work on console. Update: The original file that I uploaded, NTSC 1.02.01, had an error in it (Data 8's RAM offset was incorrect).
