Button Input Related? (0x67d84)

From Final Fantasy Hacktics Wiki
Jump to navigation Jump to search
80067d84: 27bdffe8 addiu r29,r29,-0x0018
80067d88: 3c028008 lui r2,0x8008
80067d8c: 8c4255ac lw r2,0x55ac(r2)                 #   buttonInput
80067d90: afbf0010 sw r31,0x0010(r29)
80067d94: 3c018008 lui r1,0x8008
80067d98: ac2252ac sw r2,0x52ac(r1)                 #   lastButtonInput = buttonInput;
80067d9c: 0c0076d6 jal 0x8001db58                   #   buttonInputResult = Get Inverted Button Input (0);
80067da0: 00002021 addu r4,r0,r0
80067da4: 3c038009 lui r3,0x8009
80067da8: 8c63e53c lw r3,-0x1ac4(r3)                #   *0x8008e53c
80067dac: 00402021 addu r4,r2,r0
80067db0: 3c018008 lui r1,0x8008
80067db4: ac2455ac sw r4,0x55ac(r1)                 #   buttonInput = buttonInputResult;
80067db8: 30630010 andi r3,r3,0x0010                #   *0x8008e53c & 0x10
80067dbc: 10600007 beq r3,r0,0x80067ddc             #   if ((*0x8008e53c & 0x10) != 0) {
80067dc0: 00000000 nop
80067dc4: 3c018008 lui r1,0x8008
80067dc8: ac2055a4 sw r0,0x55a4(r1)                 #       newButtonInput = 0;
80067dcc: 3c018008 lui r1,0x8008
80067dd0: ac2051bc sw r0,0x51bc(r1)                 #       *0x800851bc = 0;
80067dd4: 08019f7f j 0x80067dfc
80067dd8: 00000000 nop                              #   } else {
80067ddc: 3c028008 lui r2,0x8008
80067de0: 8c4252ac lw r2,0x52ac(r2)                 #       lastButtonInput
80067de4: 3c018008 lui r1,0x8008
80067de8: ac2451bc sw r4,0x51bc(r1)                 #       *0x800851bc = buttonInputResult;
80067dec: 00021027 nor r2,r0,r2                     #       binary_not(lastButtonInput)
80067df0: 00821024 and r2,r4,r2                     #       buttonInputResult & binary_not(lastButtonInput)
80067df4: 3c018008 lui r1,0x8008
80067df8: ac2255a4 sw r2,0x55a4(r1)                 #       newButtonInput = buttonInputResult & binary_not(lastButtonInput);
                                                    #   }
80067dfc: 3c028009 lui r2,0x8009
80067e00: 8c42e53c lw r2,-0x1ac4(r2)                #   *0x8008e53c
80067e04: 3c030008 lui r3,0x0008                    #   0x80000
80067e08: 00431024 and r2,r2,r3                     #   *0x8008e53c & 0x80000
80067e0c: 14400012 bne r2,r0,0x80067e58             #   if ((*0x8008e53c & 0x80000) == 0)
80067e10: 3402090c ori r2,r0,0x090c
80067e14: 3c038008 lui r3,0x8008
80067e18: 8c6355ac lw r3,0x55ac(r3)
80067e1c: 00000000 nop
80067e20: 1462000d bne r3,r2,0x80067e58             #       and (buttonInput == 0x90c))     // 0x90c = L1, R1, Start, Select pressed
80067e24: 00000000 nop                              #   {
                                                    #       // Perform reset sequence?
80067e28: 0c0091b5 jal 0x800246d4                   #       ? 0x246d4 (0);
80067e2c: 00002021 addu r4,r0,r0
80067e30: 34043fff ori r4,r0,0x3fff
80067e34: 0c006090 jal 0x80018240                   #       ? 0x18240 (0x3fff, 1);
80067e38: 34050001 ori r5,r0,0x0001
80067e3c: 0c006024 jal 0x80018090                   #       ? 0x18090 (0xc0);
80067e40: 340400c0 ori r4,r0,0x00c0
80067e44: 00002021 addu r4,r0,r0
80067e48: 0c01a18e jal 0x80068638                   #       ? 0x68638 (0, 1);
80067e4c: 34050001 ori r5,r0,0x0001
80067e50: 0c01025d jal 0x80040974                   #       ? 0x40974 ();
80067e54: 00000000 nop                              #   }
80067e58: 8fbf0010 lw r31,0x0010(r29)
80067e5c: 27bd0018 addiu r29,r29,0x0018
80067e60: 03e00008 jr r31
80067e64: 00000000 nop