Language…
19 users online:  AmperSam, asterkafton, Dangil,  Donut, dotCoockie, drkrdnk, EvilAdmiralKivi, Fiblizo, Golden Yoshi, Guido_Keller, itsmefigs, JezJitzu, LightAligns,  patcdr, playagmes169, Scags,  Telinc1, timothy726, tOaO - Guests: 265 - Bots: 408
Users: 64,795 (2,377 active)
Latest user: mathew

SMA2 help thread

I think it would be a good idea to have a general SMA2 help thread, so those of us who are hacking SMA2 can ask relatively small questions without creating a separate topic.

(I believe SMA2 hacking would be considered advanced (no pun intended), especially if you're looking to take advantage of more than just what Smallhacker's tool allows... (e.g. screen exits, Layer 2, and so on))


Anyway, does anyone know why these backgrounds have glitched graphics?





(The first image is level 105 with the forest BG of level 106, 11F, etc.; the second image is level 140 with the cave BG of level 1CA, 10A, etc.)

I've tried changing the tileset, but the graphics are always glitched unless I use both the original level's tileset and the original level's background...

Is there a layer 2 secondary header or something like that?



–=–=–=–=–=–=–
Advynia: a Yoshi's Island editor - Alyssa's Unlikely Trap demo 3
SMW's bgs were essentially GFX header specific. Seems somewhat unlikely to me that you'll be able to mix and match GFX headers/BGs without some hacking.

Also you must consider the map16 page the level uses for the BG. It depends on the level number iirc.
...Yes, it was the Map16 page. (I was already making sure to use a compatible tileset-- it's the same FG/BG combination as the original level 106.)

According to Lunar Magic (1.65), both of the backgrounds I chose use Map16 page 11, and levels 105 and 140 use Map16 page 10 by default.

Does anyone know how to change the background Map16 page?

–=–=–=–=–=–=–
Advynia: a Yoshi's Island editor - Alyssa's Unlikely Trap demo 3
SMW decides which BG Map16 page to use in the most retarded way imaginable. In the BG loading routine, it checks where in the ROM the BG image is stored. If it's before a certain address, it uses 0x10. Otherwise, it uses 0x11.

Due to my inexperience with ARM7, I haven't been able to decipher the equivalent routine in SMA2, so I'm not completely sure how SMA2 does it.
Originally posted by Smallhacker
SMW decides which BG Map16 page to use in the most retarded way imaginable. In the BG loading routine, it checks where in the ROM the BG image is stored. If it's before a certain address, it uses 0x10. Otherwise, it uses 0x11.

Wow.

As far as I can tell, this would mean that if you change a pointer to a different image in the original SMW, it would use the correct Map16 page, since it's still in the same location in the ROM...

Which is not the case in SMA2, since all I did was change the Layer 2 pointers to match other levels' BGs (after making sure at least one other level with that BG uses the same tileset).


(Is ARM7 the GBA equivalent to 65c816?)

–=–=–=–=–=–=–
Advynia: a Yoshi's Island editor - Alyssa's Unlikely Trap demo 3
Originally posted by Zeldara109
Which is not the case in SMA2, since all I did was change the Layer 2 pointers to match other levels' BGs (and make sure at least one other level with that BG uses the same tileset).

Are you sure? Hm. These are both good and bad news.
Good news: Makes it waaaaay easier to edit.
Bad news: Now we have to find out where that setting is stored.

Originally posted by Zeldara109
(Is ARM7 the GBA equivalent to 65c816?)

Yes.
And I thought YI hacking was difficult. SMW/SMA2 store data in much more complex ways than YI/SMA3-- it's just that Lunar Magic has simplified things.

Anyway, if you're searching for that setting, keep a look out for the midway entrances as well. (See this post if you haven't already.)

–=–=–=–=–=–=–
Advynia: a Yoshi's Island editor - Alyssa's Unlikely Trap demo 3