mirror of
https://github.com/HarbourMasters/SpaghettiKart
synced 2026-08-05 17:53:29 -04:00
115 lines
6.1 KiB
ArmAsm
115 lines
6.1 KiB
ArmAsm
glabel read_controllers
|
|
/* 001628 80000A28 27BDFFE0 */ addiu $sp, $sp, -0x20
|
|
/* 00162C 80000A2C AFBF0014 */ sw $ra, 0x14($sp)
|
|
/* 001630 80000A30 3C048015 */ lui $a0, %hi(gSIEventMesgQueue) # $a0, 0x8015
|
|
/* 001634 80000A34 0C03353C */ jal osContStartReadData
|
|
/* 001638 80000A38 2484F0B8 */ addiu $a0, %lo(gSIEventMesgQueue) # addiu $a0, $a0, -0xf48
|
|
/* 00163C 80000A3C 3C048015 */ lui $a0, %hi(gSIEventMesgQueue) # $a0, 0x8015
|
|
/* 001640 80000A40 2484F0B8 */ addiu $a0, %lo(gSIEventMesgQueue) # addiu $a0, $a0, -0xf48
|
|
/* 001644 80000A44 27A5001C */ addiu $a1, $sp, 0x1c
|
|
/* 001648 80000A48 0C0335D4 */ jal osRecvMesg
|
|
/* 00164C 80000A4C 24060001 */ li $a2, 1
|
|
/* 001650 80000A50 3C048015 */ lui $a0, %hi(gControllerPads) # $a0, 0x8015
|
|
/* 001654 80000A54 0C03356D */ jal osContGetReadData
|
|
/* 001658 80000A58 2484F0F0 */ addiu $a0, %lo(gControllerPads) # addiu $a0, $a0, -0xf10
|
|
/* 00165C 80000A5C 0C00024D */ jal func_80000934
|
|
/* 001660 80000A60 00002025 */ move $a0, $zero
|
|
/* 001664 80000A64 0C00024D */ jal func_80000934
|
|
/* 001668 80000A68 24040001 */ li $a0, 1
|
|
/* 00166C 80000A6C 0C00024D */ jal func_80000934
|
|
/* 001670 80000A70 24040002 */ li $a0, 2
|
|
/* 001674 80000A74 0C00024D */ jal func_80000934
|
|
/* 001678 80000A78 24040003 */ li $a0, 3
|
|
/* 00167C 80000A7C 3C03800E */ lui $v1, %hi(D_800DC4BC) # $v1, 0x800e
|
|
/* 001680 80000A80 3C04800E */ lui $a0, %hi(D_800DC4C0) # $a0, 0x800e
|
|
/* 001684 80000A84 2484C4C0 */ addiu $a0, %lo(D_800DC4C0) # addiu $a0, $a0, -0x3b40
|
|
/* 001688 80000A88 2463C4BC */ addiu $v1, %lo(D_800DC4BC) # addiu $v1, $v1, -0x3b44
|
|
/* 00168C 80000A8C 3C05800E */ lui $a1, %hi(D_800DC4C4) # $a1, 0x800e
|
|
/* 001690 80000A90 8C6E0000 */ lw $t6, ($v1)
|
|
/* 001694 80000A94 8C980000 */ lw $t8, ($a0)
|
|
/* 001698 80000A98 24A5C4C4 */ addiu $a1, %lo(D_800DC4C4) # addiu $a1, $a1, -0x3b3c
|
|
/* 00169C 80000A9C 3C06800E */ lui $a2, %hi(D_800DC4C8) # $a2, 0x800e
|
|
/* 0016A0 80000AA0 8CA90000 */ lw $t1, ($a1)
|
|
/* 0016A4 80000AA4 24C6C4C8 */ addiu $a2, %lo(D_800DC4C8) # addiu $a2, $a2, -0x3b38
|
|
/* 0016A8 80000AA8 8CCC0000 */ lw $t4, ($a2)
|
|
/* 0016AC 80000AAC 95CF0004 */ lhu $t7, 4($t6)
|
|
/* 0016B0 80000AB0 97190004 */ lhu $t9, 4($t8)
|
|
/* 0016B4 80000AB4 952A0004 */ lhu $t2, 4($t1)
|
|
/* 0016B8 80000AB8 3C02800E */ lui $v0, %hi(D_800DC4CC) # $v0, 0x800e
|
|
/* 0016BC 80000ABC 958D0004 */ lhu $t5, 4($t4)
|
|
/* 0016C0 80000AC0 2442C4CC */ addiu $v0, %lo(D_800DC4CC) # addiu $v0, $v0, -0x3b34
|
|
/* 0016C4 80000AC4 8C580000 */ lw $t8, ($v0)
|
|
/* 0016C8 80000AC8 01F94025 */ or $t0, $t7, $t9
|
|
/* 0016CC 80000ACC 010A5825 */ or $t3, $t0, $t2
|
|
/* 0016D0 80000AD0 016D7025 */ or $t6, $t3, $t5
|
|
/* 0016D4 80000AD4 A70E0004 */ sh $t6, 4($t8)
|
|
/* 0016D8 80000AD8 8C890000 */ lw $t1, ($a0)
|
|
/* 0016DC 80000ADC 8C6F0000 */ lw $t7, ($v1)
|
|
/* 0016E0 80000AE0 8CAC0000 */ lw $t4, ($a1)
|
|
/* 0016E4 80000AE4 8CCE0000 */ lw $t6, ($a2)
|
|
/* 0016E8 80000AE8 95280006 */ lhu $t0, 6($t1)
|
|
/* 0016EC 80000AEC 95F90006 */ lhu $t9, 6($t7)
|
|
/* 0016F0 80000AF0 958B0006 */ lhu $t3, 6($t4)
|
|
/* 0016F4 80000AF4 95D80006 */ lhu $t8, 6($t6)
|
|
/* 0016F8 80000AF8 8C490000 */ lw $t1, ($v0)
|
|
/* 0016FC 80000AFC 03285025 */ or $t2, $t9, $t0
|
|
/* 001700 80000B00 014B6825 */ or $t5, $t2, $t3
|
|
/* 001704 80000B04 01B87825 */ or $t7, $t5, $t8
|
|
/* 001708 80000B08 A52F0006 */ sh $t7, 6($t1)
|
|
/* 00170C 80000B0C 8C8C0000 */ lw $t4, ($a0)
|
|
/* 001710 80000B10 8C790000 */ lw $t9, ($v1)
|
|
/* 001714 80000B14 8CAE0000 */ lw $t6, ($a1)
|
|
/* 001718 80000B18 8CCF0000 */ lw $t7, ($a2)
|
|
/* 00171C 80000B1C 958A0008 */ lhu $t2, 8($t4)
|
|
/* 001720 80000B20 97280008 */ lhu $t0, 8($t9)
|
|
/* 001724 80000B24 95CD0008 */ lhu $t5, 8($t6)
|
|
/* 001728 80000B28 95E90008 */ lhu $t1, 8($t7)
|
|
/* 00172C 80000B2C 8C4C0000 */ lw $t4, ($v0)
|
|
/* 001730 80000B30 010A5825 */ or $t3, $t0, $t2
|
|
/* 001734 80000B34 016DC025 */ or $t8, $t3, $t5
|
|
/* 001738 80000B38 0309C825 */ or $t9, $t8, $t1
|
|
/* 00173C 80000B3C A5990008 */ sh $t9, 8($t4)
|
|
/* 001740 80000B40 8C8E0000 */ lw $t6, ($a0)
|
|
/* 001744 80000B44 8C680000 */ lw $t0, ($v1)
|
|
/* 001748 80000B48 8CAF0000 */ lw $t7, ($a1)
|
|
/* 00174C 80000B4C 8CD90000 */ lw $t9, ($a2)
|
|
/* 001750 80000B50 95CB000A */ lhu $t3, 0xa($t6)
|
|
/* 001754 80000B54 950A000A */ lhu $t2, 0xa($t0)
|
|
/* 001758 80000B58 95F8000A */ lhu $t8, 0xa($t7)
|
|
/* 00175C 80000B5C 972C000A */ lhu $t4, 0xa($t9)
|
|
/* 001760 80000B60 8C4E0000 */ lw $t6, ($v0)
|
|
/* 001764 80000B64 014B6825 */ or $t5, $t2, $t3
|
|
/* 001768 80000B68 01B84825 */ or $t1, $t5, $t8
|
|
/* 00176C 80000B6C 012C4025 */ or $t0, $t1, $t4
|
|
/* 001770 80000B70 A5C8000A */ sh $t0, 0xa($t6)
|
|
/* 001774 80000B74 8C8F0000 */ lw $t7, ($a0)
|
|
/* 001778 80000B78 8C6A0000 */ lw $t2, ($v1)
|
|
/* 00177C 80000B7C 8CB90000 */ lw $t9, ($a1)
|
|
/* 001780 80000B80 8CC80000 */ lw $t0, ($a2)
|
|
/* 001784 80000B84 95ED000C */ lhu $t5, 0xc($t7)
|
|
/* 001788 80000B88 954B000C */ lhu $t3, 0xc($t2)
|
|
/* 00178C 80000B8C 9729000C */ lhu $t1, 0xc($t9)
|
|
/* 001790 80000B90 950E000C */ lhu $t6, 0xc($t0)
|
|
/* 001794 80000B94 8C4F0000 */ lw $t7, ($v0)
|
|
/* 001798 80000B98 016DC025 */ or $t8, $t3, $t5
|
|
/* 00179C 80000B9C 03096025 */ or $t4, $t8, $t1
|
|
/* 0017A0 80000BA0 018E5025 */ or $t2, $t4, $t6
|
|
/* 0017A4 80000BA4 A5EA000C */ sh $t2, 0xc($t7)
|
|
/* 0017A8 80000BA8 8C990000 */ lw $t9, ($a0)
|
|
/* 0017AC 80000BAC 8C6B0000 */ lw $t3, ($v1)
|
|
/* 0017B0 80000BB0 8CA80000 */ lw $t0, ($a1)
|
|
/* 0017B4 80000BB4 8CCA0000 */ lw $t2, ($a2)
|
|
/* 0017B8 80000BB8 9738000E */ lhu $t8, 0xe($t9)
|
|
/* 0017BC 80000BBC 956D000E */ lhu $t5, 0xe($t3)
|
|
/* 0017C0 80000BC0 950C000E */ lhu $t4, 0xe($t0)
|
|
/* 0017C4 80000BC4 954F000E */ lhu $t7, 0xe($t2)
|
|
/* 0017C8 80000BC8 8C590000 */ lw $t9, ($v0)
|
|
/* 0017CC 80000BCC 01B84825 */ or $t1, $t5, $t8
|
|
/* 0017D0 80000BD0 012C7025 */ or $t6, $t1, $t4
|
|
/* 0017D4 80000BD4 01CF5825 */ or $t3, $t6, $t7
|
|
/* 0017D8 80000BD8 A72B000E */ sh $t3, 0xe($t9)
|
|
/* 0017DC 80000BDC 8FBF0014 */ lw $ra, 0x14($sp)
|
|
/* 0017E0 80000BE0 27BD0020 */ addiu $sp, $sp, 0x20
|
|
/* 0017E4 80000BE4 03E00008 */ jr $ra
|
|
/* 0017E8 80000BE8 00000000 */ nop
|