Button Input Related (0x67d84)
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