In that section there's three bytes technically in total. It reads that value and loads a per PC basis table up, gets the pointer and the current frame and loads the animation data. It's value is 02 which gets stored to 7E:00C7 (Current PC Action). What 'Animation Data' is basically how each animation is setup. Right now, everything works as it should. I'm still rather iffy on this as I feel like it could be handled much better, but we'll see in the future. This way we can clearly specify how much we want from the current section.ģ. It then reads the following 2 bytes to dictate HOW much of the data to send to VRAM. Right now, it reads 3 bytes to get the pointer to the PC graphics. ![]() ![]() Of course, the data has to be properly setup in ROM. This is done to allow for flexibility on how to handle graphics the way I hope to use them. It then loads the proper data for that specific PC and that specific frame and THEN stores the graphics into VRAM. The code checks what PC you are then loads the frame that you're on. The routine NOW loads the PC graphics based on what 'frame' is currently in RAM (Stored at 7E:02F3 now since that value goes unused from removing the old code). The PC graphic routine, as I said, has been rewritten ground up. Now, the POW/Orb/Flask routine has been split and set into it's own bit and their graphics in VRAM have been shuffled to accommodate for much larger PC graphics.Ģ. The main routine that stored PC graphics was actually shared with the POW/Crystal Orb/Flask. The entire PC graphic routine has been rewritten from ground up. Of course, since all characters share the same data this wasn't a big deal for this game, but for what we hope to do it was incredibly hindering.ġ. Even animations were flat out coded instead of having a routine to set things up properly. Everything was hard-coded to the frikin 'T'. The second aspect I realized after studying the code a bit was how incredibly ludicrous the graphic storage for PC's were along with their animation data. So now when All-Stars is booted, it'll do the whole coin blip with the Nintendo logo then shoot right into the SMB2 title screen! has been removed to allow for over 1MB of extra space. ![]() I'm sure I missed quite a bit of the actual 'ASM' for the other games, but their graphics, music, level data, etc. As soon as I figured out how to do that, I removed as much of the other Mario game's code as possible. The first bit was forcing Super Mario All-Stars to load SMB2 on the fly. So what exactly has been going on so far? This project itself is quite the undertaking so it may or may not be finished (Much like my many others it seems) but some MAJOR strides have been done! Some features will be added from it (Though a couple actually come from BS Mario 2) but it won't be a direct port by any means. My friend and I are NOT going to go the whole route of adding every single bit of the GBA's new stuff into this game as that is not what is intended. What this project is aiming to do is modify SMB2 and 'enhance' it to an extent. Probably seems kind of an odd project to go with especially since my various other ones seem to be RPGs or Mega Man X.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |