Kirby's Return to Dreamland [SUKE01]

Started by Glitch., October 25, 2011, 03:56:40 AM

Previous topic - Next topic

Glitch.

99 Lives [Glitch]
052FBBE0 00000064
Freezes and only works on first section of first level ATM.

Thomas83Lin

#1
This game almost seems to have some sort of protection on its asm.

edit: Health moves, Its Asm is protected, yep going to be fun.lol


dcx2


Thomas83Lin

#3
Reads breaks on the asm, similiar to Ubisoft's Protection

example:

Health Read Break
801DD9D4: lwz r0,0(r3)

read break on 801DD9D4 triggers

[spoiler]
801EE16C:  68B5E780   xori   r21,r5,59264
801EE170:  7FC802A6   mflr   r30
801EE174:  837E0000   lwz   r27,0(r30)
801EE178:  7F7BF214   add   r27,r27,r30
801EE17C:  835E0008   lwz   r26,8(r30)
801EE180:  93610020   stw   r27,32(r1)
801EE184:  7F5ADA14   add   r26,r26,r27
801EE188:  9341001C   stw   r26,28(r1)
801EE18C:  4800000D   bl   0x801ee198
801EE190:  76292891   andis.   r9,r17,10385
801EE194:  EB6CB496   lwa   r27,-19308(r12)
801EE198:  7F2802A6   mflr   r25
801EE19C:  83590000   lwz   r26,0(r25)
801EE1A0:  93410018   stw   r26,24(r1)
801EE1A4:  48516F81   bl   0x80705124
801EE1A8:  82610020   lwz   r19,32(r1)
801EE1AC:  8241001C   lwz   r18,28(r1)
801EE1B0:  7E539050   sub   r18,r18,r19
801EE1B4:  3AD20001   addi   r22,r18,1
801EE1B8:  3AE00001   li   r23,1
801EE1BC:  8241001C   lwz   r18,28(r1)
801EE1C0:  3B12FFFF   subi   r24,r18,1
801EE1C4:  3E600100   lis   r19,256
801EE1C8:  3A7301A7   addi   r19,r19,423
801EE1CC:  48000018   b   0x801ee1e4
801EE1D0:  7E57C050   sub   r18,r24,r23
801EE1D4:  A2520000   lhz   r18,0(r18) And there is a Separate read on this.
801EE1D8:  7FFF9278   xor   r31,r31,r18
801EE1DC:  7FFF99D6   mullw   r31,r31,r19
801EE1E0:  3AF70002   addi   r23,r23,2
801EE1E4:  7E17B040   cmplw   cr4,r23,r22
801EE1E8:  4092FFE8   bne+   cr4,0x801ee1d0
801EE1EC:  82C10018   lwz   r22,24(r1)
801EE1F0:  7ED6F850   sub   r22,r31,r22
801EE1F4:  2E160000   cmpwi   cr4,r22,0
801EE1F8:  41920090   beq-   cr4,0x801ee288
801EE1FC:  48000015   bl   0x801ee210
801EE200:  04AD5B90   .word   0x04ad5b90
801EE204:  2CF83281   .word   0x2cf83281
801EE208:  ABE4540B   lha   r31,21515(r4)
801EE20C:  47475200   .word   0x47475200
801EE210:  7E8802A6   mflr   r20
801EE214:  3A34001C   addi   r17,r20,28
801EE218:  7E2803A6   mtlr   r17
801EE21C:  83B40000   lwz   r29,0(r20)
801EE220:  93A1FFFC   stw   r29,-4(r1)
801EE224:  92210000   stw   r17,0(r1)
801EE228:  92810004   stw   r20,4(r1)
801EE22C:  4E800021   blrl   
[/spoiler]

modifying the Asm results in a crash.

dcx2

and if you change any of the ASM you get a crash?

Thomas83Lin

#5
I edited my above post and yes modding the asm results in a crash.

dcx2

Yup, that's the same stuff Ubi used.  Starting with 801EE1FC:  48000015   bl   0x801ee210

Deathwolf

infinite health [wiiztec]
0434F5CC 60000000


however
lolz

dcx2

Quote from: pokepower on October 25, 2011, 11:15:23 AM
also, can someone fix the Infinite Health code. i'm not sure what the problem is, but it freezes the game when you choose a level.

That's the same thing Driver did.  It would look like it worked until you chose a level.

The ASM checksums probably don't run every frame, because they're too expensive.  The checksums more likely run during loading screens, where the latency can be hidden from the player.

Deathwolf

#9
Infinite Lives [Deathwolf,iGlitch]
48000000 809ED0E0
DE000000 80008180
4A100000 000000C8
14000000 00000064
E0000000 80008000

Infinite Stars [Deathwolf]
48000000 809ED0E0
DE000000 80008180
4A100000 000000CC
14000000 00000063
E0000000 80008000

Infinite Health [Deathwolf]
48000000 80DC65F4
DE000000 80008180
4A100000 00000F3C
14000000 00000030
E0000000 80008000

Invincibility [Deathwolf]
48000000 80DC65F0
DE000000 80008180
4A100000 00000710
14000000 00000056
4A100000 0000071C
14000000 010000FF
E0000000 80008000

Tested and works without crashing.
lolz

dcx2

Pointers and data writes for the win.  That's what most codes will have to be until I can finish a universal ASM patcher.

Thomas83Lin

#11
Good Job Deathwolf.  :) yea pointers should work.

Deathwolf

Yeah pointer codes are working great. Of course it's still better if you guys could break the protection for ASM codes  :P
lolz

g6flavor

#13
Some pointers might not work in all stages depends on which stage you grab the address from.
@Deathwolf, does your codes work in all stages?? ex. stage 3

update: codes doesn't work on Stage 3 (2nd half)

Thomas83Lin

Just a heads up for anyone testing their codes and noticing a freeze, the Code handlers main hook for VBI triggers the protection, in the challenge Room on the ship. Its possible it may trigger the protection in different areas of the game. but i haven't noticed it being triggered anywere else