Pages: 1
KingYoshi |
Posted on 03-10-16, 07:43 pm
|
Fire Brother
Eugene Karma: 3646 Posts: 664/1120 Since: 11-29-11 |
Yeah, I guess this is a stupid question, but I couldn't find anything when using the 'Search' option and I'm sort of an ASM noob. I'm just trying to get how NSMBDS is build.
Anyway, when I look at this thread, I can see there's information about the title screen, the levels, the worldmaps etc. But what kind of information is stored in the overlays about those things? For example, I don't know why there should be information about each level in the overlays. I'd think all information that's needed is stored in the files in the \course folder. |
MeroMero |
Posted on 03-10-16, 08:06 pm
|
Death by cuteness
Karma: 6554 Posts: 389/598 Since: 05-01-13 |
Posted by KingYoshi For example, I don't know why there should be information about each level in the overlays. I'd think all information that's needed is stored in the files in the \course folder. True, but think of it as a skeleton, you will still need the flesh and the nerves so-to-speak to move that skeleton because otherwise that skeleton is just good for decoration. arm9 and overlays provide that much needed flesh and nerves (or in other terms how the game should handle the different behaviors and parameters). For example to play a level smoothly, the game needs to handle: _camera behavior _entrance behavior _level completion behavior _losing a life behavior _actors/sprites behavior _Mario/Luigi behavior _the tilesets/backgrounds/models/textures priority _et cætera I'm not taking into account the graphics themselves since this is the job of the VRAM to handle this. There's probably a lot more that I forget but you get the picture, those behaviors needed to be coded, and then read by the game. And how do you do that? Thanks to the arm9 and the overlays. |
KingYoshi |
Posted on 03-10-16, 08:11 pm
|
Fire Brother
Eugene Karma: 3646 Posts: 666/1120 Since: 11-29-11 |
Ah okay, I think I get what you mean. But what's the difference between arm9 and overlays?
|
MeroMero |
Posted on 03-10-16, 08:27 pm
|
Death by cuteness
Karma: 6554 Posts: 391/598 Since: 05-01-13 |
To put it simply arm9 and overlays do similar things (mostly code+data), but think of overlays as mini arm9.
Have you never noticed that not all the overlays need to be loaded at the same time? They are only loaded when they are needed (unlike arm9 whose presence is permanent), overlaying/overwriting the previous overlay that share the same loading address (hence the name overlay, or at least that's how I interpret it). Overlays are also the reason there are sprite sets in the first place, due to the limitations of the NDS. |
KingYoshi |
Posted on 03-10-16, 08:39 pm
|
Fire Brother
Eugene Karma: 3646 Posts: 667/1120 Since: 11-29-11 |
Posted by MeroMero To put it simply arm9 and overlays do similar things (mostly code+data), but think of overlays as mini arm9. Have you never noticed that not all the overlays need to be loaded at the same time? They are only loaded when they are needed (unlike arm9 whose presence is permanent), overlaying/overwriting the previous overlay that share the same loading address (hence the name overlay, or at least that's how I interpret it). Overlays are also the reason there are sprite sets in the first place, due to the limitations of the NDS. Thanks. Yeah, I already thought it would be unlogical if every overlay would be loaded at the same time, since each level has its own overlay. |
Hiccup |
Posted on 03-11-16, 12:07 pm
|
Birdo
Karma: 2754 Posts: 1571/2091 Since: 06-26-11 |
Sorry for piggybacking this thread, but do overlays ever contain non-code data? The sort of stuff that is in the NitroFS?
|
Pages: 1