Posted on 12-30-16, 05:46 pm in Quesion (rev. 1 by  skawo on 12-30-16, 05:48 pm)


Karma: 19817
Posts: 873/1100
Since: 04-02-13
No.

The code would have to modify itself and update addresses accordingly; which, while not impossible...
Posted on 12-30-16, 11:06 pm in tutorial Adding a block containing a shell and more


Karma: 19817
Posts: 874/1100
Since: 04-02-13
So you mean you choose "Blue Shell" in the tileset editor and it becomes a Blue Shell?

Whiiiiiiiiiii :o Amazin
Posted on 01-09-17, 11:47 am in Prevent a functions default execution (rev. 3 by  skawo on 01-09-17, 11:49 am)


Karma: 19817
Posts: 886/1100
Since: 04-02-13
Overlay 10, i.e where the code is.

Code goes like this

MOV R4, R0 <- Original instruction that was there. Moves the Player Address to R4 so we can operate on R0-R3.
LDR R0, =0x208B37 <- Loading the coin counter address into R0
LDRB R0, [R0] <- Loading a byte (coin count) from address in R0 into R0
CMP R0, #0 <- Comparing R0 to 0
LDREQ R0, =0x02115AAC <- If they're equal, put address of idle standing state into R0
STREQ R0, [R4, #0x980] <- If they're equal, put R0 into Mario's state field
LDMEQFD SP!, {R4,PC} <- If equal, restore R4 and Program Counter (i.e return)
B 0x21135C0 <- Jump to next

I got both this function's address and the idle function address by watching Mario's state field in memory (Player address + 0x980). Death state is at 0x990.

And, uh, I meant that the function you found wasn't the jumping function. It seems to actually be what sets Mario's jump height or something, and it's called every frame.
Posted on 01-09-17, 06:20 pm in Misc. patches thread


Karma: 19817
Posts: 889/1100
Since: 04-02-13
Those use the enemy code.
Posted on 01-11-17, 07:26 pm in Location of Minigame and 2P loading screen graphics


Karma: 19817
Posts: 895/1100
Since: 04-02-13
No, that's not the debug font. That's in there too, but later.

And, dunno.
See for yourself, mister.
Posted on 01-11-17, 08:57 pm in Unused code RE (rev. 2 by  skawo on 01-11-17, 09:00 pm)


Karma: 19817
Posts: 896/1100
Since: 04-02-13
Most of the code that makes up sprite 125:
bool Class229_ExecuteState0(Class229* class) { 0x2185EBC(class); 0x209ADB0(class, 0); return 1; } void 0x2185F30(Class229* class, unk, unk1) { class->unk3FC = unk; int something = (0x2186634 + ((unk<<3) / 4) + 1); int somethingelse = *(0x2186634 + ((unk<<3) / 4)); class->unk3F4 = somethingelse; class->unk3F8 = something; class->unk400 = 1; } void 0x2185EBC(Class229* class); { if (!class->unk400) { u32* pointer = (((class->unk3F8 >>> 1) / 4) + class); if (class->unk3F8 & 1) { u32* pointer2 = *pointer; u32* pointer3 = (*pointer2 + *class->unk3F8); } else u32* pointer3 = *class->unk3F8; pointer3(); } else { Similar jump as above; } } bool Class229_LoadFiles(Class229* class) { return 1; } bool Class229_onDelete(Class229* class) { return 1; } void 0x21860F0(Class229* class) { return; } bool Class229_OnCreate(Class229* class) { class->direction = (class->spriteData >> 28) & 1; class->scale.x = 0x1000; class->scale.y = 0x1000; class->scale.z = 0x1000; class->unk40C = (class->spriteData << 4) >> 28; if (class->unk40C == 0) class->unk40C = 1; if (class->unk40C > 4) class->unk40C = 4; int TempUnk40D = ((class->spriteData << 8) >> 28) & 0xFF; if (TempUnk40D == 0) TempUnk40D = 1; if (TempUnk40D > 3) TempUnk40D = 3; class->unk40D = (TempUnk40D - 1) << (TempUnk40D - 1); if (class->EventIDField2 == class->EventIDField1) { if (!IsEventActivated(class->EventFieldID2) && !IsEventActivated(class->EventFieldIDw)) { class->unk404 = 0; 0x2185F30(class, 0, ActivatedEventsBitmask); *20CAC9C = -class->unk40D & *20CAC9C; } } else { class->unk404 = 3; 0x2185F30(class, 2, 3); *20CAC9C = -class->unk40D & *20CAC9C; } class->unk3B4 = 1; return 1; }

What does it do?
Well, uh... it sets some level params on event, it seems. No idea what those params do.
There are three nybbles it references: Nybble 5 which changes the field usually used by other sprites for direction, Nybble 6, which has range of 1-4 and Nybble 7, which has range of 1-3.

There's more code to tackle here, which I'll do later.
Posted on 01-11-17, 11:23 pm in Newer Super Mario Bros. DS


Karma: 19817
Posts: 897/1100
Since: 04-02-13
Posted on 01-12-17, 03:27 am in Newer Super Mario Bros. DS


Karma: 19817
Posts: 898/1100
Since: 04-02-13
shrug

sure
Posted on 03-27-17, 02:25 pm in Newer Super Mario Bros. DS


Karma: 19817
Posts: 940/1100
Since: 04-02-13
Midfall 2022
Posted on 04-01-17, 07:42 pm in Newer Super Mario Bros. DS


Karma: 19817
Posts: 945/1100
Since: 04-02-13
That would require model importing, with Maya, i.e the one thing I can't do.
Posted on 05-10-17, 07:06 pm in Newer Super Mario Bros. DS


Karma: 19817
Posts: 959/1100
Since: 04-02-13
I went with red because the yellow looks absolutely horrible in my opinion.
Posted on 06-05-17, 06:45 pm in Newer Super Mario Bros. DS


Karma: 19817
Posts: 964/1100
Since: 04-02-13
What is this cancer
Posted on 06-29-17, 10:36 pm in Newer Super Mario Bros. DS


Karma: 19817
Posts: 985/1100
Since: 04-02-13
xdelta.

No.
Posted on 06-30-17, 03:34 pm in Newer Super Mario Bros. DS


Karma: 19817
Posts: 990/1100
Since: 04-02-13
Lots.
Posted on 07-06-17, 07:09 pm in Newer Super Mario Bros. DS


Karma: 19817
Posts: 994/1100
Since: 04-02-13
The latter.
Posted on 07-07-17, 03:08 pm in Newer Super Mario Bros. DS


Karma: 19817
Posts: 995/1100
Since: 04-02-13
It kind of has been "done" since Christmas. Everything being added now is polish and flare.
Posted on 07-27-17, 06:29 pm in Newer Super Mario Bros. DS


Karma: 19817
Posts: 1005/1100
Since: 04-02-13
Desmume can emulate the rumble pak, though, which works well with, say, the Wii Remotes.

Also, you can also insert Wario Ware Twisted in, and it'll also work as a Rumble Pak.
Posted on 08-11-17, 02:30 pm in Newer Super Mario Bros. DS


Karma: 19817
Posts: 1016/1100
Since: 04-02-13
It already has been
Posted on 08-19-17, 05:03 pm in Quick Testing (rev. 2 by  skawo on 08-19-17, 05:04 pm)


Karma: 19817
Posts: 1020/1100
Since: 04-02-13
main0:0203CC44 DCD 0xC202041C ; 180
main0:0203CC44 DCD 0xC103041E ; 181
main0:0203CC44 DCD 0xC4020420 ; 182
main0:0203CC44 DCD 0xC6010422 ; 183
main0:0203CC44 DCD 0xC3020424 ; 184
main0:0203CC44 DCD 0 ; 185
main0:0203CC44 DCD 0 ; 186

i.e... Both.


As you can see, there's what looks to be two empty slots, too.


Karma: 19817
Posts: 1021/1100
Since: 04-02-13
subtract.
And it's ALT+T