Max Power Never Decrements [Vega] Max Power Bar never decrements, can only increment. Thus, once you have it fully charged (at Max Power), you stay in Max Power for the rest of the match. There are two configurations to this code. First configuration effects both 1P and 2P/COM. Second config allows you to choose between 1P or 2P/COM. NTSC-U (effects both 1P and 2P/COM) 040F3944 60000000 040F394C 4E800020 NTSC-U (choose between 1P or 2P/COM via X value) C20F3944 0000000A 7D8802A6 7C0B0378 7C6A1B78 7C892378 3860000X 3C008004 60002A68 7C0903A6 4E800421 2C030000 7F83F000 7D8803A6 7D605B78 7D435378 7D244B78 4182000C 409E0008 38800000 7C040051 00000000 X = slot 0 = 1P 1 = 2P/COM Code creator: Vega Source for 1st config: At address 0x800F3944, 'sub. r0, r0, r4' changed to nop. Max Power decrementation is now disabled. Same Max Power that was loaded is now restored back to memory. At address 0x800F394C, 'bgelr-' changed to blr. The bgelr instruction was for it max power was at or greater than 0 then the function simply ends, but if it was below 0, then it will be set to 0 to ensure a negative value is never stored. We don't need the conditional branch part of this instruction anymore. Thus it is now blr, simply end the function. Plus the Condition Register (now with the sub instruction in the 1st RAM write being nopped), is in an unknown state. Source for 2nd config: #START ASSEMBLY #Address #NTSC-U = 800F3944 #r4 = Decrementation amount #r30 = Current Master Pointer #Call GetMasterPointer based on User's slot, but first backup some regs #GetMasterPointer uses CTR, LR, r0, r3 thru r6 #We need to backup LR, r0, r3 & r4; cannot do negative stack to do possible interrupts mflr r12 mr r11, r0 mr r10, r3 mr r9, r4 #Set User slot (X value) li r3, 0 #1P used for compilation adjust this accordingly #Call it & check return #Only Arg of GetMasterPointer (r3) is Slot, will return 0 if failure lis r0, 0x8004 ori r0, r0, 0x2A68 mtctr r0 bctrl #Check if null pointer, then check returned MP vs current MP (use cr7) cmpwi r3, 0 cmpw cr7, r3, r30 #Restore regs before taking any branch mtlr r12 mr r0, r11 mr r3, r10 mr r4, r9 #Do conditional branches now beq- original_instruction bne- cr7, original_instruction #Pointers match! Change r4 to 0 (decrementation amount to null) li r4, 0 #Original instruction original_instruction: sub. r0, r0, r4 #END ASSEMBLY