It is possible to free some VRAM by shifting stuff around. There is a very simple optimisation you can do, which will give you exactly the 4 tiles of VRAM you need. See, the life icon and the 1-up monitor use the same picture, but its graphic data is stored twice in the VRAM. You can make the 1-up monitor read the graphic data from the life icon, and store the chaos emerald graphic data in its place (or vice-versa). In my hack I made the 1-up monitor read the life icon graphic data by changing a line in _mapsobj26.asm (still, Hivebrain 2005 disassembly). Change:
byte_A5C9: dc.b 2 ; Sonic monitor
dc.b $F5, 5, 0, $1C, $F8
dc.b $EF, $F, 0, 0, $F0
To:
byte_A5C9: dc.b 2 ; Sonic monitor
dc.b $F5, 5, 1, $54, $F8
dc.b $EF, $F, $20, 0, $F0
Enjoy your 4 free VRAM tiles.
Bonus: if you add more characters (Tails, Knuckles, Fancharacter_The_Recolor), their 1-up monitors will already be fine as long as you take care of the different life icon
Edited by nineko, 24 November 2011 - 07:31 PM.