WiiRd forum

Wii & Gamecube Hacking => Wii Game hacking help => Topic started by: Bully@Wiiplaza on April 09, 2011, 07:52:21 PM

Title: Add 1 each time the instruction is executed...
Post by: Bully@Wiiplaza on April 09, 2011, 07:52:21 PM
I´m attempting to create a code in ASM, which adds +1 to the written value, each time the instruction is executed and stop if r19 decreases ONCE!
I don´t know how, can someone help? :-[

It should look like this:

0001XXXX 0002XXXX 0003XXXX and so on!

[spoiler]  CR:42222488  XER:20000000  CTR:804B621C DSIS:00400000
DAR:900E06F8 SRR0:801F66F8 SRR1:0000B032   LR:801F66F4
 r0:801F66F4   r1:807AFB80   r2:8079FF60   r3:807AFB90
 r4:FFFFFFFF   r5:80749160   r6:80749160   r7:80749164
 r8:00000000   r9:00000000  r10:00000000  r11:807AFB10
r12:8079631C  r13:8079B2E0  r14:FFFFFFFF  r15:901480B4
r16:90148090  r17:807AFC28  r18:00000001  r19:900E06F0
r20:00000000  r21:00000000  r22:00000001  r23:8D6568FF
r24:00000000  r25:00000000  r26:00000026  r27:00000000
r28:00000000  r29:00000000  r30:805B9120  r31:90148418

 f0:00000000   f1:B727C61A   f2:00000000   f3:00000000
 f4:00000000   f5:B727C61A   f6:00000000   f7:BF800000
 f8:00000000   f9:40000000  f10:3F800000  f11:BB088889
f12:3ACCCCCD  f13:00000000  f14:00000000  f15:00000000
f16:00000000  f17:00000000  f18:00000000  f19:00000000
f20:00000000  f21:00000000  f22:00000000  f23:00000000
f24:00000000  f25:00000000  f26:00000000  f27:00000000
f28:00000000  f29:00000000  f30:00000000  f31:00000000[/spoiler]
Title: Re: Add X in HEX each time the instruction is executed...
Post by: Bully@Wiiplaza on April 09, 2011, 07:55:47 PM
[spoiler]801F61CC:  9421FF60   stwu   r1,-160(r1)
801F61D0:  7C0802A6   mflr   r0
801F61D4:  900100A4   stw   r0,164(r1)
801F61D8:  396100A0   addi   r11,r1,160
801F61DC:  48261279   bl   0x80457454
801F61E0:  7C6F1B78   mr   r15,r3
801F61E4:  7C902378   mr   r16,r4
801F61E8:  7CB12B78   mr   r17,r5
801F61EC:  98C10008   stb   r6,8(r1)
801F61F0:  B0E1000A   sth   r7,10(r1)
801F61F4:  7D134378   mr   r19,r8
801F61F8:  9121000C   stw   r9,12(r1)
801F61FC:  3AC00001   li   r22,1
801F6200:  3A800000   li   r20,0
801F6204:  3800FFFF   li   r0,-1
801F6208:  B0010046   sth   r0,70(r1)
801F620C:  39C0FFFF   li   r14,-1
801F6210:  38000000   li   r0,0
801F6214:  B0010044   sth   r0,68(r1)
801F6218:  38000001   li   r0,1
801F621C:  98010041   stb   r0,65(r1)
801F6220:  38000001   li   r0,1
801F6224:  98010040   stb   r0,64(r1)
801F6228:  3A400001   li   r18,1
801F622C:  3C60805C   lis   r3,-32676
801F6230:  386390C4   subi   r3,r3,28476
801F6234:  7E248B78   mr   r4,r17
801F6238:  480EA771   bl   0x802e09a8
801F623C:  88010008   lbz   r0,8(r1)
801F6240:  5400063E   rlwinm   r0,r0,0,24,31
801F6244:  2C000005   cmpwi   r0,5
801F6248:  40820064   bne-   0x801f62ac
801F624C:  3B00FFFF   li   r24,-1
801F6250:  A801000A   lha   r0,10(r1)
801F6254:  7C040734   extsh   r4,r0
801F6258:  2C04FFFF   cmpwi   r4,-1
801F625C:  41820028   beq-   0x801f6284
801F6260:  3C6051EC   lis   r3,20972
801F6264:  3803851F   subi   r0,r3,31457
801F6268:  7C002096   mulhw   r0,r0,r4
801F626C:  7C002E70   srawi   r0,r0,5
801F6270:  54030FFE   rlwinm   r3,r0,1,31,31
801F6274:  7C001A14   add   r0,r0,r3
801F6278:  5400063E   rlwinm   r0,r0,0,24,31
801F627C:  98010049   stb   r0,73(r1)
801F6280:  4800000C   b   0x801f628c
801F6284:  38000000   li   r0,0
801F6288:  98010049   stb   r0,73(r1)
801F628C:  806DBA60   lwz   r3,-17824(r13)
801F6290:  4BE54C45   bl   0x8004aed4
801F6294:  7C630734   extsh   r3,r3
801F6298:  38800064   li   r4,100
801F629C:  480B2CDD   bl   0x802a8f78
801F62A0:  5460063E   rlwinm   r0,r3,0,24,31
801F62A4:  98010048   stb   r0,72(r1)
801F62A8:  48000028   b   0x801f62d0
801F62AC:  7DE37B78   mr   r3,r15
801F62B0:  4BFF6F15   bl   0x801ed1c4
801F62B4:  7C781B78   mr   r24,r3
801F62B8:  A80F000E   lha   r0,14(r15)
801F62BC:  B001004A   sth   r0,74(r1)
801F62C0:  880F0002   lbz   r0,2(r15)
801F62C4:  98010049   stb   r0,73(r1)
801F62C8:  880F0003   lbz   r0,3(r15)
801F62CC:  98010048   stb   r0,72(r1)
801F62D0:  3EA0805C   lis   r21,-32676
801F62D4:  A0759120   lhz   r3,-28384(r21)
801F62D8:  38810018   addi   r4,r1,24
801F62DC:  480EA2D9   bl   0x802e05b4
801F62E0:  7C771B78   mr   r23,r3
801F62E4:  38759120   subi   r3,r21,28384
801F62E8:  A0630010   lhz   r3,16(r3)
801F62EC:  38800000   li   r4,0
801F62F0:  480EA2C5   bl   0x802e05b4
801F62F4:  7C641B78   mr   r4,r3
801F62F8:  3861001C   addi   r3,r1,28
801F62FC:  4BFF05B9   bl   0x801e68b4
801F6300:  3861001C   addi   r3,r1,28
801F6304:  7EE4BB78   mr   r4,r23
801F6308:  4BE5C455   bl   0x8005275c
801F630C:  82E10038   lwz   r23,56(r1)
801F6310:  2C0F0000   cmpwi   r15,0
801F6314:  41820030   beq-   0x801f6344
801F6318:  880F001C   lbz   r0,28(r15)
801F631C:  2C000000   cmpwi   r0,0
801F6320:  41820024   beq-   0x801f6344
801F6324:  38000001   li   r0,1
801F6328:  98010042   stb   r0,66(r1)
801F632C:  38000000   li   r0,0
801F6330:  98010040   stb   r0,64(r1)
801F6334:  38000000   li   r0,0
801F6338:  98010049   stb   r0,73(r1)
801F633C:  3B600000   li   r27,0
801F6340:  48000018   b   0x801f6358
801F6344:  38000000   li   r0,0
801F6348:  98010042   stb   r0,66(r1)
801F634C:  88010049   lbz   r0,73(r1)
801F6350:  1C000064   mulli   r0,r0,100
801F6354:  7C1B0734   extsh   r27,r0
801F6358:  38000000   li   r0,0
801F635C:  B001004C   sth   r0,76(r1)
801F6360:  3C60805C   lis   r3,-32676
801F6364:  38039108   subi   r0,r3,28408
801F6368:  90010050   stw   r0,80(r1)
801F636C:  577D103A   rlwinm   r29,r27,2,0,29
801F6370:  7FF3EA14   add   r31,r19,r29
801F6374:  80610050   lwz   r3,80(r1)
801F6378:  A0630000   lhz   r3,0(r3)
801F637C:  38810014   addi   r4,r1,20
801F6380:  480EA235   bl   0x802e05b4
801F6384:  3B800000   li   r28,0
801F6388:  3C60805C   lis   r3,-32676
801F638C:  3BC39120   subi   r30,r3,28384
801F6390:  88010042   lbz   r0,66(r1)
801F6394:  2C000000   cmpwi   r0,0
801F6398:  41820010   beq-   0x801f63a8
801F639C:  7FF3FB78   mr   r19,r31
801F63A0:  3B40FFFF   li   r26,-1
801F63A4:  480002C0   b   0x801f6664
801F63A8:  808DBA60   lwz   r4,-17824(r13)
801F63AC:  7C64EA14   add   r3,r4,r29
801F63B0:  3A630180   addi   r19,r3,384
801F63B4:  88010008   lbz   r0,8(r1)
801F63B8:  5400063E   rlwinm   r0,r0,0,24,31
801F63BC:  2C000001   cmpwi   r0,1
801F63C0:  41820028   beq-   0x801f63e8
801F63C4:  2C000004   cmpwi   r0,4
801F63C8:  418200B0   beq-   0x801f6478
801F63CC:  2C000002   cmpwi   r0,2
801F63D0:  4182010C   beq-   0x801f64dc
801F63D4:  2C000003   cmpwi   r0,3
801F63D8:  418201CC   beq-   0x801f65a4
801F63DC:  2C000005   cmpwi   r0,5
801F63E0:  4182023C   beq-   0x801f661c
801F63E4:  4800025C   b   0x801f6640
801F63E8:  7F630734   extsh   r3,r27
801F63EC:  4BFF765D   bl   0x801eda48
801F63F0:  7C0300D0   neg   r0,r3
801F63F4:  7C001878   andc   r0,r0,r3
801F63F8:  54160FFE   rlwinm   r22,r0,1,31,31
801F63FC:  7F630734   extsh   r3,r27
801F6400:  7F000734   extsh   r0,r24
801F6404:  7C030000   cmpw   r3,r0
801F6408:  40820238   bne-   0x801f6640
801F640C:  7F79DB78   mr   r25,r27
801F6410:  A0930000   lhz   r4,0(r19)
801F6414:  2C040000   cmpwi   r4,0
801F6418:  41820228   beq-   0x801f6640
801F641C:  2C160000   cmpwi   r22,0
801F6420:  40820040   bne-   0x801f6460
801F6424:  806DBA60   lwz   r3,-17824(r13)
801F6428:  4BE54B5D   bl   0x8004af84
801F642C:  7C6E1B78   mr   r14,r3
801F6430:  806DBA60   lwz   r3,-17824(r13)
801F6434:  4BE54BA9   bl   0x8004afdc
801F6438:  7C641B78   mr   r4,r3
801F643C:  A0730000   lhz   r3,0(r19)
801F6440:  7DC57378   mr   r5,r14
801F6444:  4BE55621   bl   0x8004ba64
801F6448:  2C030000   cmpwi   r3,0
801F644C:  4180000C   blt-   0x801f6458
801F6450:  39C000CB   li   r14,203
801F6454:  480001EC   b   0x801f6640
801F6458:  39C000C6   li   r14,198
801F645C:  480001E4   b   0x801f6640
801F6460:  8061000C   lwz   r3,12(r1)
801F6464:  4807EA01   bl   0x80274e64
801F6468:  2C030000   cmpwi   r3,0
801F646C:  408201D4   bne-   0x801f6640
801F6470:  39C000D0   li   r14,208
801F6474:  480001CC   b   0x801f6640
801F6478:  880F0000   lbz   r0,0(r15)
801F647C:  2C000000   cmpwi   r0,0
801F6480:  40820034   bne-   0x801f64b4
801F6484:  7F630734   extsh   r3,r27
801F6488:  7F000734   extsh   r0,r24
801F648C:  7C030000   cmpw   r3,r0
801F6490:  40820008   bne-   0x801f6498
801F6494:  7F79DB78   mr   r25,r27
801F6498:  A0130000   lhz   r0,0(r19)
801F649C:  2C000000   cmpwi   r0,0
801F64A0:  4082000C   bne-   0x801f64ac
801F64A4:  3AC00000   li   r22,0
801F64A8:  48000198   b   0x801f6640
801F64AC:  3AC00001   li   r22,1
801F64B0:  48000190   b   0x801f6640
801F64B4:  3A400000   li   r18,0
801F64B8:  7F630734   extsh   r3,r27
801F64BC:  7F000734   extsh   r0,r24
801F64C0:  7C030000   cmpw   r3,r0
801F64C4:  40820010   bne-   0x801f64d4
801F64C8:  3AC00001   li   r22,1
801F64CC:  7F79DB78   mr   r25,r27
801F64D0:  48000170   b   0x801f6640
801F64D4:  3AC00000   li   r22,0
801F64D8:  48000168   b   0x801f6640
801F64DC:  7F630734   extsh   r3,r27
801F64E0:  7F000734   extsh   r0,r24
801F64E4:  7C030000   cmpw   r3,r0
801F64E8:  40820008   bne-   0x801f64f0
801F64EC:  7F79DB78   mr   r25,r27
801F64F0:  886F0000   lbz   r3,0(r15)
801F64F4:  3803FFFE   subi   r0,r3,2
801F64F8:  28000002   cmplwi   r0,2
801F64FC:  40810070   ble-   0x801f656c
801F6500:  2C030001   cmpwi   r3,1
801F6504:  41820024   beq-   0x801f6528
801F6508:  A0730000   lhz   r3,0(r19)
801F650C:  4BFF8459   bl   0x801ee964
801F6510:  3803FFFF   subi   r0,r3,1
801F6514:  7C000034   cntlzw   r0,r0
801F6518:  5400D97E   rlwinm   r0,r0,27,5,31
801F651C:  5416063E   rlwinm   r22,r0,0,24,31
801F6520:  3A800000   li   r20,0
801F6524:  4800011C   b   0x801f6640
801F6528:  A0700004   lhz   r3,4(r16)
801F652C:  A0930000   lhz   r4,0(r19)
801F6530:  4BFF8475   bl   0x801ee9a4
801F6534:  3803FFFF   subi   r0,r3,1
801F6538:  7C000034   cntlzw   r0,r0
801F653C:  5400D97E   rlwinm   r0,r0,27,5,31
801F6540:  5416063E   rlwinm   r22,r0,0,24,31
801F6544:  A0730000   lhz   r3,0(r19)
801F6548:  2C030000   cmpwi   r3,0
801F654C:  41820018   beq-   0x801f6564
801F6550:  A0100004   lhz   r0,4(r16)
801F6554:  7C030040   cmplw   r3,r0
801F6558:  4082000C   bne-   0x801f6564
801F655C:  3A800001   li   r20,1
801F6560:  480000E0   b   0x801f6640
801F6564:  3A800000   li   r20,0
801F6568:  480000D8   b   0x801f6640
801F656C:  3A400000   li   r18,0
801F6570:  A0730000   lhz   r3,0(r19)
801F6574:  A0100004   lhz   r0,4(r16)
801F6578:  7C030040   cmplw   r3,r0
801F657C:  41820010   beq-   0x801f658c
801F6580:  A0100006   lhz   r0,6(r16)
801F6584:  7C030040   cmplw   r3,r0
801F6588:  40820010   bne-   0x801f6598
801F658C:  3A800001   li   r20,1
801F6590:  3AC00001   li   r22,1
801F6594:  480000AC   b   0x801f6640
801F6598:  3AC00000   li   r22,0
801F659C:  3A800000   li   r20,0
801F65A0:  480000A0   b   0x801f6640
801F65A4:  7F630734   extsh   r3,r27
801F65A8:  7F000734   extsh   r0,r24
801F65AC:  7C030000   cmpw   r3,r0
801F65B0:  40820008   bne-   0x801f65b8
801F65B4:  7F79DB78   mr   r25,r27
801F65B8:  880F0000   lbz   r0,0(r15)
801F65BC:  2C000001   cmpwi   r0,1
801F65C0:  4182000C   beq-   0x801f65cc
801F65C4:  3A800000   li   r20,0
801F65C8:  48000078   b   0x801f6640
801F65CC:  A8AF001A   lha   r5,26(r15)
801F65D0:  54A0103A   rlwinm   r0,r5,2,0,29
801F65D4:  7C640214   add   r3,r4,r0
801F65D8:  A0030180   lhz   r0,384(r3)
801F65DC:  2C000000   cmpwi   r0,0
801F65E0:  40820018   bne-   0x801f65f8
801F65E4:  A0130000   lhz   r0,0(r19)
801F65E8:  2C000000   cmpwi   r0,0
801F65EC:  4082000C   bne-   0x801f65f8
801F65F0:  3AC00000   li   r22,0
801F65F4:  48000008   b   0x801f65fc
801F65F8:  3AC00001   li   r22,1
801F65FC:  7F600734   extsh   r0,r27
801F6600:  7C002800   cmpw   r0,r5
801F6604:  40820010   bne-   0x801f6614
801F6608:  3A800001   li   r20,1
801F660C:  3AC00001   li   r22,1
801F6610:  48000030   b   0x801f6640
801F6614:  3A800000   li   r20,0
801F6618:  48000028   b   0x801f6640
801F661C:  7F630734   extsh   r3,r27
801F6620:  A801000A   lha   r0,10(r1)
801F6624:  7C000734   extsh   r0,r0
801F6628:  7C030000   cmpw   r3,r0
801F662C:  40820010   bne-   0x801f663c
801F6630:  3AC00001   li   r22,1
801F6634:  7F79DB78   mr   r25,r27
801F6638:  48000008   b   0x801f6640
801F663C:  3AC00000   li   r22,0
801F6640:  2C120000   cmpwi   r18,0
801F6644:  4182001C   beq-   0x801f6660
801F6648:  7F630734   extsh   r3,r27
801F664C:  7F000734   extsh   r0,r24
801F6650:  7C030000   cmpw   r3,r0
801F6654:  4082000C   bne-   0x801f6660
801F6658:  AB41004A   lha   r26,74(r1)
801F665C:  48000008   b   0x801f6664
801F6660:  3B40FFFF   li   r26,-1
801F6664:  56C0063E   rlwinm   r0,r22,0,24,31
801F6668:  2C000000   cmpwi   r0,0
801F666C:  40820020   bne-   0x801f668c
801F6670:  3AA00003   li   r21,3
801F6674:  7EE3BB78   mr   r3,r23
801F6678:  3C803232   lis   r4,12850
801F667C:  388432FF   addi   r4,r4,13055
801F6680:  480EC221   bl   0x802e28a0
801F6684:  90610038   stw   r3,56(r1)
801F6688:  4800001C   b   0x801f66a4
801F668C:  3AA00000   li   r21,0
801F6690:  7EE3BB78   mr   r3,r23
801F6694:  3C808889   lis   r4,-30583
801F6698:  388488FF   subi   r4,r4,30465
801F669C:  480EC205   bl   0x802e28a0
801F66A0:  90610038   stw   r3,56(r1)
801F66A4:  A07E0000   lhz   r3,0(r30)[/spoiler]
Title: Re: Add X in HEX each time the instruction is executed...
Post by: Bully@Wiiplaza on April 09, 2011, 07:56:27 PM
the function was too long for one post (more than 20.000 characters ...)
[spoiler]
801F66A8:  38810018   addi   r4,r1,24
801F66AC:  480E9F09   bl   0x802e05b4
801F66B0:  A8810014   lha   r4,20(r1)
801F66B4:  A8110000   lha   r0,0(r17)
801F66B8:  A8610018   lha   r3,24(r1)
801F66BC:  7C040214   add   r0,r4,r0
801F66C0:  7C030214   add   r0,r3,r0
801F66C4:  7C000734   extsh   r0,r0
801F66C8:  B0010010   sth   r0,16(r1)
801F66CC:  A8810016   lha   r4,22(r1)
801F66D0:  A8110002   lha   r0,2(r17)
801F66D4:  A861001A   lha   r3,26(r1)
801F66D8:  7C040214   add   r0,r4,r0
801F66DC:  7C030214   add   r0,r3,r0
801F66E0:  7C000734   extsh   r0,r0
801F66E4:  B0010012   sth   r0,18(r1)
801F66E8:  3861001C   addi   r3,r1,28
801F66EC:  38810010   addi   r4,r1,16
801F66F0:  480EA0B5   bl   0x802e07a4
801F66F4:  38610010   addi   r3,r1,16
801F66F8:  A0930000   lhz   r4,0(r19) #Hook
801F66FC:  7F450734   extsh   r5,r26
801F6700:  7E86A378   mr   r6,r20
801F6704:  7EA7AB78   mr   r7,r21
801F6708:  4BFFFA31   bl   0x801f6138
801F670C:  3BDE0002   addi   r30,r30,2
801F6710:  3B9C0001   addi   r28,r28,1
801F6714:  3BFF0004   addi   r31,r31,4
801F6718:  3BBD0004   addi   r29,r29,4
801F671C:  3B7B0001   addi   r27,r27,1
801F6720:  2C1C000A   cmpwi   r28,10
801F6724:  4180FC6C   blt+   0x801f6390
801F6728:  80610050   lwz   r3,80(r1)
801F672C:  38630002   addi   r3,r3,2
801F6730:  90610050   stw   r3,80(r1)
801F6734:  A861004C   lha   r3,76(r1)
801F6738:  38630001   addi   r3,r3,1
801F673C:  B061004C   sth   r3,76(r1)
801F6740:  7C600734   extsh   r0,r3
801F6744:  2C00000A   cmpwi   r0,10
801F6748:  4180FC2C   blt+   0x801f6374
801F674C:  88010042   lbz   r0,66(r1)
801F6750:  2C000000   cmpwi   r0,0
801F6754:  40820080   bne-   0x801f67d4
801F6758:  88010008   lbz   r0,8(r1)
801F675C:  5404063E   rlwinm   r4,r0,0,24,31
801F6760:  3804FFFF   subi   r0,r4,1
801F6764:  28000004   cmplwi   r0,4
801F6768:  4181006C   bgt-   0x801f67d4
801F676C:  806DBA60   lwz   r3,-17824(r13)
801F6770:  7F200734   extsh   r0,r25
801F6774:  5400103A   rlwinm   r0,r0,2,0,29
801F6778:  7C630214   add   r3,r3,r0
801F677C:  3A630180   addi   r19,r3,384
801F6780:  28040002   cmplwi   r4,2
801F6784:  41820018   beq-   0x801f679c
801F6788:  28040005   cmplwi   r4,5
801F678C:  41820010   beq-   0x801f679c
801F6790:  38601B30   li   r3,6960
801F6794:  7E649B78   mr   r4,r19
801F6798:  480B1245   bl   0x802a79dc
801F679C:  38601AE0   li   r3,6880
801F67A0:  38810010   addi   r4,r1,16
801F67A4:  480E9E11   bl   0x802e05b4
801F67A8:  A0730000   lhz   r3,0(r19)
801F67AC:  A8930002   lha   r4,2(r19)
801F67B0:  38A00063   li   r5,99
801F67B4:  88010008   lbz   r0,8(r1)
801F67B8:  5406063E   rlwinm   r6,r0,0,24,31
801F67BC:  3806FFFC   subi   r0,r6,4
801F67C0:  7C000034   cntlzw   r0,r0
801F67C4:  5400D97E   rlwinm   r0,r0,27,5,31
801F67C8:  5406063E   rlwinm   r6,r0,0,24,31
801F67CC:  38E10010   addi   r7,r1,16
801F67D0:  48020B71   bl   0x80217340
801F67D4:  3C60805C   lis   r3,-32676
801F67D8:  386390E8   subi   r3,r3,28440
801F67DC:  7E248B78   mr   r4,r17
801F67E0:  480EA1C9   bl   0x802e09a8
801F67E4:  386D8E90   subi   r3,r13,29040
801F67E8:  38800000   li   r4,0
801F67EC:  7E258B78   mr   r5,r17
801F67F0:  480EA681   bl   0x802e0e70
801F67F4:  386D8E98   subi   r3,r13,29032
801F67F8:  38800000   li   r4,0
801F67FC:  7E258B78   mr   r5,r17
801F6800:  480EA671   bl   0x802e0e70
801F6804:  88010008   lbz   r0,8(r1)
801F6808:  5400063E   rlwinm   r0,r0,0,24,31
801F680C:  2C000004   cmpwi   r0,4
801F6810:  41820018   beq-   0x801f6828
801F6814:  2C000003   cmpwi   r0,3
801F6818:  41820030   beq-   0x801f6848
801F681C:  2C000002   cmpwi   r0,2
801F6820:  41820040   beq-   0x801f6860
801F6824:  4800006C   b   0x801f6890
801F6828:  880F0000   lbz   r0,0(r15)
801F682C:  2C000000   cmpwi   r0,0
801F6830:  41820060   beq-   0x801f6890
801F6834:  38000000   li   r0,0
801F6838:  98010040   stb   r0,64(r1)
801F683C:  38000000   li   r0,0
801F6840:  98010041   stb   r0,65(r1)
801F6844:  4800004C   b   0x801f6890
801F6848:  880F0000   lbz   r0,0(r15)
801F684C:  2C000001   cmpwi   r0,1
801F6850:  40820040   bne-   0x801f6890
801F6854:  38000000   li   r0,0
801F6858:  98010041   stb   r0,65(r1)
801F685C:  48000034   b   0x801f6890
801F6860:  880F0000   lbz   r0,0(r15)
801F6864:  2C000000   cmpwi   r0,0
801F6868:  41820028   beq-   0x801f6890
801F686C:  2C000001   cmpwi   r0,1
801F6870:  40820010   bne-   0x801f6880
801F6874:  38000000   li   r0,0
801F6878:  98010041   stb   r0,65(r1)
801F687C:  48000014   b   0x801f6890
801F6880:  38000000   li   r0,0
801F6884:  98010040   stb   r0,64(r1)
801F6888:  38000000   li   r0,0
801F688C:  98010041   stb   r0,65(r1)
801F6890:  2C0F0000   cmpwi   r15,0
801F6894:  41820058   beq-   0x801f68ec
801F6898:  88010040   lbz   r0,64(r1)
801F689C:  2C000000   cmpwi   r0,0
801F68A0:  4182004C   beq-   0x801f68ec
801F68A4:  A06F0008   lhz   r3,8(r15)
801F68A8:  546005EE   rlwinm   r0,r3,0,23,23
801F68AC:  2C000000   cmpwi   r0,0
801F68B0:  41820010   beq-   0x801f68c0
801F68B4:  A0010044   lhz   r0,68(r1)
801F68B8:  60000001   ori   r0,r0,1
801F68BC:  B0010044   sth   r0,68(r1)
801F68C0:  546005AC   rlwinm   r0,r3,0,22,22
801F68C4:  2C000000   cmpwi   r0,0
801F68C8:  41820014   beq-   0x801f68dc
801F68CC:  A0010044   lhz   r0,68(r1)
801F68D0:  60000002   ori   r0,r0,2
801F68D4:  5400043E   rlwinm   r0,r0,0,16,31
801F68D8:  B0010044   sth   r0,68(r1)
801F68DC:  A90F0010   lha   r8,16(r15)
801F68E0:  A92F0012   lha   r9,18(r15)
801F68E4:  A94F0014   lha   r10,20(r15)
801F68E8:  48000024   b   0x801f690c
801F68EC:  A0010044   lhz   r0,68(r1)
801F68F0:  60000008   ori   r0,r0,8
801F68F4:  B0010044   sth   r0,68(r1)
801F68F8:  3900FFFF   li   r8,-1
801F68FC:  3920FFFF   li   r9,-1
801F6900:  3940FFFF   li   r10,-1
801F6904:  38000000   li   r0,0
801F6908:  98010041   stb   r0,65(r1)
801F690C:  7E238B78   mr   r3,r17
801F6910:  88810049   lbz   r4,73(r1)
801F6914:  38040001   addi   r0,r4,1
801F6918:  5404063E   rlwinm   r4,r0,0,24,31
801F691C:  88A10048   lbz   r5,72(r1)
801F6920:  A0010044   lhz   r0,68(r1)
801F6924:  5406043E   rlwinm   r6,r0,0,16,31
801F6928:  38E00000   li   r7,0
801F692C:  4BFFF525   bl   0x801f5e50
801F6930:  38601B2F   li   r3,6959
801F6934:  480E8E15   bl   0x802df748
801F6938:  4BE660D1   bl   0x8005ca08
801F693C:  88010042   lbz   r0,66(r1)
801F6940:  28000001   cmplwi   r0,1
801F6944:  4082001C   bne-   0x801f6960
801F6948:  380000BC   li   r0,188
801F694C:  B0010046   sth   r0,70(r1)
801F6950:  38601893   li   r3,6291
801F6954:  808F0004   lwz   r4,4(r15)
801F6958:  4801E87D   bl   0x802151d4
801F695C:  48000120   b   0x801f6a7c
801F6960:  2C0F0000   cmpwi   r15,0
801F6964:  41820118   beq-   0x801f6a7c
801F6968:  88010008   lbz   r0,8(r1)
801F696C:  5400063E   rlwinm   r0,r0,0,24,31
801F6970:  2C000002   cmpwi   r0,2
801F6974:  41820018   beq-   0x801f698c
801F6978:  2C000003   cmpwi   r0,3
801F697C:  41820040   beq-   0x801f69bc
801F6980:  2C000004   cmpwi   r0,4
801F6984:  41820068   beq-   0x801f69ec
801F6988:  480000F4   b   0x801f6a7c
801F698C:  880F0000   lbz   r0,0(r15)
801F6990:  2C000000   cmpwi   r0,0
801F6994:  41820010   beq-   0x801f69a4
801F6998:  2C000001   cmpwi   r0,1
801F699C:  41820014   beq-   0x801f69b0
801F69A0:  480000DC   b   0x801f6a7c
801F69A4:  380000BD   li   r0,189
801F69A8:  B0010046   sth   r0,70(r1)
801F69AC:  480000D0   b   0x801f6a7c
801F69B0:  380000BE   li   r0,190
801F69B4:  B0010046   sth   r0,70(r1)
801F69B8:  480000C4   b   0x801f6a7c
801F69BC:  880F0000   lbz   r0,0(r15)
801F69C0:  2C000000   cmpwi   r0,0
801F69C4:  41820010   beq-   0x801f69d4
801F69C8:  2C000001   cmpwi   r0,1
801F69CC:  41820014   beq-   0x801f69e0
801F69D0:  480000AC   b   0x801f6a7c
801F69D4:  380000C1   li   r0,193
801F69D8:  B0010046   sth   r0,70(r1)
801F69DC:  480000A0   b   0x801f6a7c
801F69E0:  380000C2   li   r0,194
801F69E4:  B0010046   sth   r0,70(r1)
801F69E8:  48000094   b   0x801f6a7c
801F69EC:  880F0000   lbz   r0,0(r15)
801F69F0:  2C000000   cmpwi   r0,0
801F69F4:  41820018   beq-   0x801f6a0c
801F69F8:  2C000001   cmpwi   r0,1
801F69FC:  4182001C   beq-   0x801f6a18
801F6A00:  2C000002   cmpwi   r0,2
801F6A04:  41820048   beq-   0x801f6a4c
801F6A08:  48000074   b   0x801f6a7c
801F6A0C:  380000C3   li   r0,195
801F6A10:  B0010046   sth   r0,70(r1)
801F6A14:  48000068   b   0x801f6a7c
801F6A18:  380000C4   li   r0,196
801F6A1C:  B0010046   sth   r0,70(r1)
801F6A20:  A0730000   lhz   r3,0(r19)
801F6A24:  4816260D   bl   0x80359030
801F6A28:  7C671B78   mr   r7,r3
801F6A2C:  38601ADE   li   r3,6878
801F6A30:  38801ADF   li   r4,6879
801F6A34:  A8AF0018   lha   r5,24(r15)
801F6A38:  A8CF0016   lha   r6,22(r15)
801F6A3C:  39000000   li   r8,0
801F6A40:  A12F0008   lhz   r9,8(r15)
801F6A44:  4801E321   bl   0x80214d64
801F6A48:  48000034   b   0x801f6a7c
801F6A4C:  38601893   li   r3,6291
801F6A50:  808F0004   lwz   r4,4(r15)
801F6A54:  4801E781   bl   0x802151d4
801F6A58:  A0730000   lhz   r3,0(r19)
801F6A5C:  2C030000   cmpwi   r3,0
801F6A60:  4182001C   beq-   0x801f6a7c
801F6A64:  481625CD   bl   0x80359030
801F6A68:  A80F0018   lha   r0,24(r15)
801F6A6C:  7CA019D6   mullw   r5,r0,r3
801F6A70:  38601878   li   r3,6264
801F6A74:  38800036   li   r4,54
801F6A78:  4801E5A5   bl   0x8021501c
801F6A7C:  88010041   lbz   r0,65(r1)
801F6A80:  2C000000   cmpwi   r0,0
801F6A84:  41820034   beq-   0x801f6ab8
801F6A88:  38600007   li   r3,7
801F6A8C:  481C8249   bl   0x803becd4
801F6A90:  5460063E   rlwinm   r0,r3,0,24,31
801F6A94:  2C000000   cmpwi   r0,0
801F6A98:  40820014   bne-   0x801f6aac
801F6A9C:  38601B32   li   r3,6962
801F6AA0:  38800004   li   r4,4
801F6AA4:  480E8D19   bl   0x802df7bc
801F6AA8:  48000010   b   0x801f6ab8
801F6AAC:  38601B32   li   r3,6962
801F6AB0:  3880000C   li   r4,12
801F6AB4:  480E8D09   bl   0x802df7bc
801F6AB8:  A8010046   lha   r0,70(r1)
801F6ABC:  2C00FFFF   cmpwi   r0,-1
801F6AC0:  41820010   beq-   0x801f6ad0
801F6AC4:  38601878   li   r3,6264
801F6AC8:  7C040378   mr   r4,r0
801F6ACC:  4801E489   bl   0x80214f54
801F6AD0:  2C0EFFFF   cmpwi   r14,-1
801F6AD4:  41820014   beq-   0x801f6ae8
801F6AD8:  38601878   li   r3,6264
801F6ADC:  7DC47378   mr   r4,r14
801F6AE0:  38A00002   li   r5,2
801F6AE4:  4801E5DD   bl   0x802150c0
801F6AE8:  396100A0   addi   r11,r1,160
801F6AEC:  482609B5   bl   0x804574a0
801F6AF0:  800100A4   lwz   r0,164(r1)
801F6AF4:  7C0803A6   mtlr   r0
801F6AF8:  382100A0   addi   r1,r1,160
801F6AFC:  4E800020   blr   [/spoiler]
Title: Re: Add 1 each time the instruction is executed...
Post by: Patedj on April 10, 2011, 06:24:17 AM
where's r19 coming from. What calls it? Load call post the second address (1 below the bp please)
Title: Re: Add 1 each time the instruction is executed...
Post by: dcx2 on April 10, 2011, 07:11:45 AM
r19 came from r8

801F61F4:  7D134378   mr   r19,r8

r8 came from the caller
Title: Re: Add 1 each time the instruction is executed...
Post by: Bully@Wiiplaza on April 10, 2011, 09:13:42 AM
however, but we don´t need to find this out, right?
Title: Re: Add 1 each time the instruction is executed...
Post by: Patedj on April 10, 2011, 09:58:47 AM
I figure if we find what r19 loads from, we can figure when to cmpwi and skip the code.

so cmpwi r8 with r12 which has r19 injected to and if r8 < r19 then stop the code.