1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2025-02-15 19:46:16 +00:00

Match/Improve more non matching functions (#366)

* Match/Improve more non matchings

* Remove SET_NEXT_GAMESTATE from preserved macros
This commit is contained in:
Roman971 2020-08-30 18:51:46 +02:00 committed by GitHub
parent 2a2fdf7f3e
commit b4ac94a8fd
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
25 changed files with 138 additions and 3869 deletions

View file

@ -1,506 +0,0 @@
.rdata
glabel D_80154D50
.asciz "=%x\n"
.balign 4
glabel D_80154D78
.asciz "../z_construct.c"
.balign 4
glabel D_80154D8C
.asciz "parameter->parameterSegment=%x\n"
.balign 4
glabel D_80154DAC
.asciz "parameter->parameterSegment != NULL"
.balign 4
glabel D_80154DD0
.asciz "../z_construct.c"
.balign 4
glabel D_80154DE4
.asciz "../z_construct.c"
.balign 4
glabel D_80154DF8
.asciz "../z_construct.c"
.balign 4
glabel D_80154E0C
.asciz " =%x\n"
.balign 4
glabel D_80154E30
.asciz "parameter->do_actionSegment=%x\n"
.balign 4
glabel D_80154E50
.asciz "parameter->do_actionSegment != NULL"
.balign 4
glabel D_80154E74
.asciz "../z_construct.c"
.balign 4
glabel D_80154E88
.asciz "../z_construct.c"
.balign 4
glabel D_80154E9C
.asciz "../z_construct.c"
.balign 4
glabel D_80154EB0
.asciz "../z_construct.c"
.balign 4
glabel D_80154EC4
.asciz " =%x\n"
.balign 4
glabel D_80154EE8
.asciz "parameter->icon_itemSegment=%x\n"
.balign 4
glabel D_80154F08
.asciz "parameter->icon_itemSegment != NULL"
.balign 4
glabel D_80154F2C
.asciz "../z_construct.c"
.balign 4
glabel D_80154F40
.asciz "Register_Item[%x, %x, %x, %x]\n"
.balign 4
glabel D_80154F60
.asciz "../z_construct.c"
.balign 4
glabel D_80154F74
.asciz "../z_construct.c"
.balign 4
glabel D_80154F88
.asciz "../z_construct.c"
.balign 4
glabel D_80154F9C
.asciz "../z_construct.c"
.balign 4
glabel D_80154FB0
.asciz "../z_construct.c"
.balign 4
glabel D_80154FC4
.asciz "%d\n"
.balign 4
glabel D_80154FD4
.asciz "restart_flag=%d\n"
.balign 4
glabel D_80154FE8
.asciz " = %d\n"
.balign 4
glabel D_80155028
.asciz "%x\n"
.balign 4
.text
glabel func_801109B0
/* B87B50 801109B0 27BDFFA8 */ addiu $sp, $sp, -0x58
/* B87B54 801109B4 AFB10020 */ sw $s1, 0x20($sp)
/* B87B58 801109B8 3C118016 */ lui $s1, %hi(gSaveContext) # $s1, 0x8016
/* B87B5C 801109BC 2631E660 */ addiu $s1, %lo(gSaveContext) # addiu $s1, $s1, -0x19a0
/* B87B60 801109C0 AFB0001C */ sw $s0, 0x1c($sp)
/* B87B64 801109C4 3C010001 */ li $at, 0x00010000 # 0.000000
/* B87B68 801109C8 AFBF0024 */ sw $ra, 0x24($sp)
/* B87B6C 801109CC 00803025 */ move $a2, $a0
/* B87B70 801109D0 A6201422 */ sh $zero, 0x1422($s1)
/* B87B74 801109D4 A62013EA */ sh $zero, 0x13ea($s1)
/* B87B78 801109D8 A62013E8 */ sh $zero, 0x13e8($s1)
/* B87B7C 801109DC 342104F0 */ ori $at, (0x000104F0 & 0xFFFF) # ori $at, $at, 0x4f0
/* B87B80 801109E0 00818021 */ addu $s0, $a0, $at
/* B87B84 801109E4 8CC50000 */ lw $a1, ($a2)
/* B87B88 801109E8 AFA60058 */ sw $a2, 0x58($sp)
/* B87B8C 801109EC 0C02A89E */ jal View_Init
/* B87B90 801109F0 02002025 */ move $a0, $s0
/* B87B94 801109F4 A60001FC */ sh $zero, 0x1fc($s0)
/* B87B98 801109F8 920201FD */ lbu $v0, 0x1fd($s0)
/* B87B9C 801109FC 44802000 */ mtc1 $zero, $f4
/* B87BA0 80110A00 00002825 */ move $a1, $zero
/* B87BA4 80110A04 240F0010 */ li $t7, 16
/* B87BA8 80110A08 A60501EE */ sh $a1, 0x1ee($s0)
/* B87BAC 80110A0C A60501EC */ sh $a1, 0x1ec($s0)
/* B87BB0 80110A10 A60001F0 */ sh $zero, 0x1f0($s0)
/* B87BB4 80110A14 A600022E */ sh $zero, 0x22e($s0)
/* B87BB8 80110A18 A60F0230 */ sh $t7, 0x230($s0)
/* B87BBC 80110A1C 3C188016 */ lui $t8, %hi(gGameInfo) # $t8, 0x8016
/* B87BC0 80110A20 A2020261 */ sb $v0, 0x261($s0)
/* B87BC4 80110A24 A60201FA */ sh $v0, 0x1fa($s0)
/* B87BC8 80110A28 E60401F4 */ swc1 $f4, 0x1f4($s0)
/* B87BCC 80110A2C 8F18FA90 */ lw $t8, %lo(gGameInfo)($t8)
/* B87BD0 80110A30 3C0601AF */ lui $a2, %hi(_parameter_staticSegmentRomStart) # $a2, 0x1af
/* B87BD4 80110A34 3C0901AF */ lui $t1, %hi(_parameter_staticSegmentRomEnd) # $t1, 0x1af
/* B87BD8 80110A38 87190B52 */ lh $t9, 0xb52($t8)
/* B87BDC 80110A3C A6000252 */ sh $zero, 0x252($s0)
/* B87BE0 80110A40 86030252 */ lh $v1, 0x252($s0)
/* B87BE4 80110A44 2529FB00 */ addiu $t1, %lo(_parameter_staticSegmentRomEnd) # addiu $t1, $t1, -0x500
/* B87BE8 80110A48 24C6C000 */ addiu $a2, %lo(_parameter_staticSegmentRomStart) # addiu $a2, $a2, -0x4000
/* B87BEC 80110A4C A6000254 */ sh $zero, 0x254($s0)
/* B87BF0 80110A50 A2000260 */ sb $zero, 0x260($s0)
/* B87BF4 80110A54 01262823 */ subu $a1, $t1, $a2
/* B87BF8 80110A58 3C048015 */ lui $a0, %hi(D_80154D50) # $a0, 0x8015
/* B87BFC 80110A5C A6190228 */ sh $t9, 0x228($s0)
/* B87C00 80110A60 A6030256 */ sh $v1, 0x256($s0)
/* B87C04 80110A64 A6030250 */ sh $v1, 0x250($s0)
/* B87C08 80110A68 A603024E */ sh $v1, 0x24e($s0)
/* B87C0C 80110A6C A603024C */ sh $v1, 0x24c($s0)
/* B87C10 80110A70 A603024A */ sh $v1, 0x24a($s0)
/* B87C14 80110A74 A6030248 */ sh $v1, 0x248($s0)
/* B87C18 80110A78 A6030246 */ sh $v1, 0x246($s0)
/* B87C1C 80110A7C A6030244 */ sh $v1, 0x244($s0)
/* B87C20 80110A80 AFA60030 */ sw $a2, 0x30($sp)
/* B87C24 80110A84 AFA5002C */ sw $a1, 0x2c($sp)
/* B87C28 80110A88 0C00084C */ jal osSyncPrintf
/* B87C2C 80110A8C 24844D50 */ addiu $a0, %lo(D_80154D50) # addiu $a0, $a0, 0x4d50
/* B87C30 80110A90 3C068015 */ lui $a2, %hi(D_80154D78) # $a2, 0x8015
/* B87C34 80110A94 24C64D78 */ addiu $a2, %lo(D_80154D78) # addiu $a2, $a2, 0x4d78
/* B87C38 80110A98 8FA40058 */ lw $a0, 0x58($sp)
/* B87C3C 80110A9C 8FA5002C */ lw $a1, 0x2c($sp)
/* B87C40 80110AA0 0C031521 */ jal GameState_Alloc
/* B87C44 80110AA4 2407009F */ li $a3, 159
/* B87C48 80110AA8 3C048015 */ lui $a0, %hi(D_80154D8C) # $a0, 0x8015
/* B87C4C 80110AAC AE020130 */ sw $v0, 0x130($s0)
/* B87C50 80110AB0 24844D8C */ addiu $a0, %lo(D_80154D8C) # addiu $a0, $a0, 0x4d8c
/* B87C54 80110AB4 0C00084C */ jal osSyncPrintf
/* B87C58 80110AB8 00402825 */ move $a1, $v0
/* B87C5C 80110ABC 8E040130 */ lw $a0, 0x130($s0)
/* B87C60 80110AC0 14800008 */ bnez $a0, .L80110AE4
/* B87C64 80110AC4 00000000 */ nop
/* B87C68 80110AC8 3C048015 */ lui $a0, %hi(D_80154DAC) # $a0, 0x8015
/* B87C6C 80110ACC 3C058015 */ lui $a1, %hi(D_80154DD0) # $a1, 0x8015
/* B87C70 80110AD0 24A54DD0 */ addiu $a1, %lo(D_80154DD0) # addiu $a1, $a1, 0x4dd0
/* B87C74 80110AD4 24844DAC */ addiu $a0, %lo(D_80154DAC) # addiu $a0, $a0, 0x4dac
/* B87C78 80110AD8 0C0007FC */ jal __assert
/* B87C7C 80110ADC 240600A1 */ li $a2, 161
/* B87C80 80110AE0 8E040130 */ lw $a0, 0x130($s0)
.L80110AE4:
/* B87C84 80110AE4 3C078015 */ lui $a3, %hi(D_80154DE4) # $a3, 0x8015
/* B87C88 80110AE8 240A00A2 */ li $t2, 162
/* B87C8C 80110AEC AFAA0010 */ sw $t2, 0x10($sp)
/* B87C90 80110AF0 24E74DE4 */ addiu $a3, %lo(D_80154DE4) # addiu $a3, $a3, 0x4de4
/* B87C94 80110AF4 8FA50030 */ lw $a1, 0x30($sp)
/* B87C98 80110AF8 0C0006A8 */ jal DmaMgr_SendRequest1
/* B87C9C 80110AFC 8FA6002C */ lw $a2, 0x2c($sp)
/* B87CA0 80110B00 3C068015 */ lui $a2, %hi(D_80154DF8) # $a2, 0x8015
/* B87CA4 80110B04 24C64DF8 */ addiu $a2, %lo(D_80154DF8) # addiu $a2, $a2, 0x4df8
/* B87CA8 80110B08 8FA40058 */ lw $a0, 0x58($sp)
/* B87CAC 80110B0C 24050480 */ li $a1, 1152
/* B87CB0 80110B10 0C031521 */ jal GameState_Alloc
/* B87CB4 80110B14 240700A6 */ li $a3, 166
/* B87CB8 80110B18 3C048015 */ lui $a0, %hi(D_80154E0C) # $a0, 0x8015
/* B87CBC 80110B1C AE020134 */ sw $v0, 0x134($s0)
/* B87CC0 80110B20 24844E0C */ addiu $a0, %lo(D_80154E0C) # addiu $a0, $a0, 0x4e0c
/* B87CC4 80110B24 0C00084C */ jal osSyncPrintf
/* B87CC8 80110B28 24050480 */ li $a1, 1152
/* B87CCC 80110B2C 3C048015 */ lui $a0, %hi(D_80154E30) # $a0, 0x8015
/* B87CD0 80110B30 24844E30 */ addiu $a0, %lo(D_80154E30) # addiu $a0, $a0, 0x4e30
/* B87CD4 80110B34 0C00084C */ jal osSyncPrintf
/* B87CD8 80110B38 8E050134 */ lw $a1, 0x134($s0)
/* B87CDC 80110B3C 8E040134 */ lw $a0, 0x134($s0)
/* B87CE0 80110B40 54800009 */ bnezl $a0, .L80110B68
/* B87CE4 80110B44 92231409 */ lbu $v1, 0x1409($s1)
/* B87CE8 80110B48 3C048015 */ lui $a0, %hi(D_80154E50) # $a0, 0x8015
/* B87CEC 80110B4C 3C058015 */ lui $a1, %hi(D_80154E74) # $a1, 0x8015
/* B87CF0 80110B50 24A54E74 */ addiu $a1, %lo(D_80154E74) # addiu $a1, $a1, 0x4e74
/* B87CF4 80110B54 24844E50 */ addiu $a0, %lo(D_80154E50) # addiu $a0, $a0, 0x4e50
/* B87CF8 80110B58 0C0007FC */ jal __assert
/* B87CFC 80110B5C 240600A9 */ li $a2, 169
/* B87D00 80110B60 8E040134 */ lw $a0, 0x134($s0)
/* B87D04 80110B64 92231409 */ lbu $v1, 0x1409($s1)
.L80110B68:
/* B87D08 80110B68 3C08008B */ lui $t0, %hi(_do_action_staticSegmentRomStart) # $t0, 0x8b
/* B87D0C 80110B6C 25081000 */ addiu $t0, %lo(_do_action_staticSegmentRomStart) # addiu $t0, $t0, 0x1000
/* B87D10 80110B70 14600003 */ bnez $v1, .L80110B80
/* B87D14 80110B74 24060300 */ li $a2, 768
/* B87D18 80110B78 10000006 */ b .L80110B94
/* B87D1C 80110B7C 00001025 */ move $v0, $zero
.L80110B80:
/* B87D20 80110B80 24010001 */ li $at, 1
/* B87D24 80110B84 14610003 */ bne $v1, $at, .L80110B94
/* B87D28 80110B88 24025700 */ li $v0, 22272
/* B87D2C 80110B8C 10000001 */ b .L80110B94
/* B87D30 80110B90 24022B80 */ li $v0, 11136
.L80110B94:
/* B87D34 80110B94 3C078015 */ lui $a3, %hi(D_80154E88) # $a3, 0x8015
/* B87D38 80110B98 240B00AE */ li $t3, 174
/* B87D3C 80110B9C AFAB0010 */ sw $t3, 0x10($sp)
/* B87D40 80110BA0 24E74E88 */ addiu $a3, %lo(D_80154E88) # addiu $a3, $a3, 0x4e88
/* B87D44 80110BA4 01022821 */ addu $a1, $t0, $v0
/* B87D48 80110BA8 0C0006A8 */ jal DmaMgr_SendRequest1
/* B87D4C 80110BAC AFA80028 */ sw $t0, 0x28($sp)
/* B87D50 80110BB0 92231409 */ lbu $v1, 0x1409($s1)
/* B87D54 80110BB4 8FA80028 */ lw $t0, 0x28($sp)
/* B87D58 80110BB8 24060180 */ li $a2, 384
/* B87D5C 80110BBC 14600003 */ bnez $v1, .L80110BCC
/* B87D60 80110BC0 3C078015 */ lui $a3, %hi(D_80154E9C) # $a3, 0x8015
/* B87D64 80110BC4 10000006 */ b .L80110BE0
/* B87D68 80110BC8 24020480 */ li $v0, 1152
.L80110BCC:
/* B87D6C 80110BCC 24010001 */ li $at, 1
/* B87D70 80110BD0 14610003 */ bne $v1, $at, .L80110BE0
/* B87D74 80110BD4 24025B80 */ li $v0, 23424
/* B87D78 80110BD8 10000001 */ b .L80110BE0
/* B87D7C 80110BDC 24023000 */ li $v0, 12288
.L80110BE0:
/* B87D80 80110BE0 8E040134 */ lw $a0, 0x134($s0)
/* B87D84 80110BE4 240C00B2 */ li $t4, 178
/* B87D88 80110BE8 AFAC0010 */ sw $t4, 0x10($sp)
/* B87D8C 80110BEC 01022821 */ addu $a1, $t0, $v0
/* B87D90 80110BF0 24E74E9C */ addiu $a3, %lo(D_80154E9C) # addiu $a3, $a3, 0x4e9c
/* B87D94 80110BF4 0C0006A8 */ jal DmaMgr_SendRequest1
/* B87D98 80110BF8 24840300 */ addiu $a0, $a0, 0x300
/* B87D9C 80110BFC 3C068015 */ lui $a2, %hi(D_80154EB0) # $a2, 0x8015
/* B87DA0 80110C00 24C64EB0 */ addiu $a2, %lo(D_80154EB0) # addiu $a2, $a2, 0x4eb0
/* B87DA4 80110C04 8FA40058 */ lw $a0, 0x58($sp)
/* B87DA8 80110C08 24054000 */ li $a1, 16384
/* B87DAC 80110C0C 0C031521 */ jal GameState_Alloc
/* B87DB0 80110C10 240700BE */ li $a3, 190
/* B87DB4 80110C14 3C048015 */ lui $a0, %hi(D_80154EC4) # $a0, 0x8015
/* B87DB8 80110C18 AE020138 */ sw $v0, 0x138($s0)
/* B87DBC 80110C1C 24844EC4 */ addiu $a0, %lo(D_80154EC4) # addiu $a0, $a0, 0x4ec4
/* B87DC0 80110C20 0C00084C */ jal osSyncPrintf
/* B87DC4 80110C24 24054000 */ li $a1, 16384
/* B87DC8 80110C28 3C048015 */ lui $a0, %hi(D_80154EE8) # $a0, 0x8015
/* B87DCC 80110C2C 24844EE8 */ addiu $a0, %lo(D_80154EE8) # addiu $a0, $a0, 0x4ee8
/* B87DD0 80110C30 0C00084C */ jal osSyncPrintf
/* B87DD4 80110C34 8E050138 */ lw $a1, 0x138($s0)
/* B87DD8 80110C38 8E0D0138 */ lw $t5, 0x138($s0)
/* B87DDC 80110C3C 15A00006 */ bnez $t5, .L80110C58
/* B87DE0 80110C40 3C048015 */ lui $a0, %hi(D_80154F08) # $a0, 0x8015
/* B87DE4 80110C44 3C058015 */ lui $a1, %hi(D_80154F2C) # $a1, 0x8015
/* B87DE8 80110C48 24A54F2C */ addiu $a1, %lo(D_80154F2C) # addiu $a1, $a1, 0x4f2c
/* B87DEC 80110C4C 24844F08 */ addiu $a0, %lo(D_80154F08) # addiu $a0, $a0, 0x4f08
/* B87DF0 80110C50 0C0007FC */ jal __assert
/* B87DF4 80110C54 240600C1 */ li $a2, 193
.L80110C58:
/* B87DF8 80110C58 922E006B */ lbu $t6, 0x6b($s1)
/* B87DFC 80110C5C 3C048015 */ lui $a0, %hi(D_80154F40) # $a0, 0x8015
/* B87E00 80110C60 24844F40 */ addiu $a0, %lo(D_80154F40) # addiu $a0, $a0, 0x4f40
/* B87E04 80110C64 92250068 */ lbu $a1, 0x68($s1)
/* B87E08 80110C68 92260069 */ lbu $a2, 0x69($s1)
/* B87E0C 80110C6C 9227006A */ lbu $a3, 0x6a($s1)
/* B87E10 80110C70 0C00084C */ jal osSyncPrintf
/* B87E14 80110C74 AFAE0010 */ sw $t6, 0x10($sp)
/* B87E18 80110C78 92220068 */ lbu $v0, 0x68($s1)
/* B87E1C 80110C7C 284100F0 */ slti $at, $v0, 0xf0
/* B87E20 80110C80 1020000D */ beqz $at, .L80110CB8
/* B87E24 80110C84 3C180075 */ lui $t8, %hi(_icon_item_staticSegmentRomStart) # $t8, 0x75
/* B87E28 80110C88 2718C000 */ addiu $t8, %lo(_icon_item_staticSegmentRomStart) # addiu $t8, $t8, -0x4000
/* B87E2C 80110C8C 8E040138 */ lw $a0, 0x138($s0)
/* B87E30 80110C90 00027B00 */ sll $t7, $v0, 0xc
/* B87E34 80110C94 3C078015 */ lui $a3, %hi(D_80154F60) # $a3, 0x8015
/* B87E38 80110C98 241900C6 */ li $t9, 198
/* B87E3C 80110C9C AFB90010 */ sw $t9, 0x10($sp)
/* B87E40 80110CA0 24E74F60 */ addiu $a3, %lo(D_80154F60) # addiu $a3, $a3, 0x4f60
/* B87E44 80110CA4 01F82821 */ addu $a1, $t7, $t8
/* B87E48 80110CA8 0C0006A8 */ jal DmaMgr_SendRequest1
/* B87E4C 80110CAC 24061000 */ li $a2, 4096
/* B87E50 80110CB0 1000000F */ b .L80110CF0
/* B87E54 80110CB4 92220069 */ lbu $v0, 0x69($s1)
.L80110CB8:
/* B87E58 80110CB8 240100FF */ li $at, 255
/* B87E5C 80110CBC 1041000B */ beq $v0, $at, .L80110CEC
/* B87E60 80110CC0 00024B00 */ sll $t1, $v0, 0xc
/* B87E64 80110CC4 3C0A0075 */ lui $t2, %hi(_icon_item_staticSegmentRomStart) # $t2, 0x75
/* B87E68 80110CC8 254AC000 */ addiu $t2, %lo(_icon_item_staticSegmentRomStart) # addiu $t2, $t2, -0x4000
/* B87E6C 80110CCC 8E040138 */ lw $a0, 0x138($s0)
/* B87E70 80110CD0 3C078015 */ lui $a3, %hi(D_80154F74) # $a3, 0x8015
/* B87E74 80110CD4 240B00CB */ li $t3, 203
/* B87E78 80110CD8 AFAB0010 */ sw $t3, 0x10($sp)
/* B87E7C 80110CDC 24E74F74 */ addiu $a3, %lo(D_80154F74) # addiu $a3, $a3, 0x4f74
/* B87E80 80110CE0 012A2821 */ addu $a1, $t1, $t2
/* B87E84 80110CE4 0C0006A8 */ jal DmaMgr_SendRequest1
/* B87E88 80110CE8 24061000 */ li $a2, 4096
.L80110CEC:
/* B87E8C 80110CEC 92220069 */ lbu $v0, 0x69($s1)
.L80110CF0:
/* B87E90 80110CF0 3C0D0075 */ lui $t5, %hi(_icon_item_staticSegmentRomStart) # $t5, 0x75
/* B87E94 80110CF4 25ADC000 */ addiu $t5, %lo(_icon_item_staticSegmentRomStart) # addiu $t5, $t5, -0x4000
/* B87E98 80110CF8 284100F0 */ slti $at, $v0, 0xf0
/* B87E9C 80110CFC 1020000A */ beqz $at, .L80110D28
/* B87EA0 80110D00 00026300 */ sll $t4, $v0, 0xc
/* B87EA4 80110D04 8E040138 */ lw $a0, 0x138($s0)
/* B87EA8 80110D08 3C078015 */ lui $a3, %hi(D_80154F88) # $a3, 0x8015
/* B87EAC 80110D0C 240E00D1 */ li $t6, 209
/* B87EB0 80110D10 AFAE0010 */ sw $t6, 0x10($sp)
/* B87EB4 80110D14 24E74F88 */ addiu $a3, %lo(D_80154F88) # addiu $a3, $a3, 0x4f88
/* B87EB8 80110D18 018D2821 */ addu $a1, $t4, $t5
/* B87EBC 80110D1C 24061000 */ li $a2, 4096
/* B87EC0 80110D20 0C0006A8 */ jal DmaMgr_SendRequest1
/* B87EC4 80110D24 24841000 */ addiu $a0, $a0, 0x1000
.L80110D28:
/* B87EC8 80110D28 9222006A */ lbu $v0, 0x6a($s1)
/* B87ECC 80110D2C 3C180075 */ lui $t8, %hi(_icon_item_staticSegmentRomStart) # $t8, 0x75
/* B87ED0 80110D30 2718C000 */ addiu $t8, %lo(_icon_item_staticSegmentRomStart) # addiu $t8, $t8, -0x4000
/* B87ED4 80110D34 284100F0 */ slti $at, $v0, 0xf0
/* B87ED8 80110D38 1020000A */ beqz $at, .L80110D64
/* B87EDC 80110D3C 00027B00 */ sll $t7, $v0, 0xc
/* B87EE0 80110D40 8E040138 */ lw $a0, 0x138($s0)
/* B87EE4 80110D44 3C078015 */ lui $a3, %hi(D_80154F9C) # $a3, 0x8015
/* B87EE8 80110D48 241900D6 */ li $t9, 214
/* B87EEC 80110D4C AFB90010 */ sw $t9, 0x10($sp)
/* B87EF0 80110D50 24E74F9C */ addiu $a3, %lo(D_80154F9C) # addiu $a3, $a3, 0x4f9c
/* B87EF4 80110D54 01F82821 */ addu $a1, $t7, $t8
/* B87EF8 80110D58 24061000 */ li $a2, 4096
/* B87EFC 80110D5C 0C0006A8 */ jal DmaMgr_SendRequest1
/* B87F00 80110D60 24842000 */ addiu $a0, $a0, 0x2000
.L80110D64:
/* B87F04 80110D64 9222006B */ lbu $v0, 0x6b($s1)
/* B87F08 80110D68 3C0A0075 */ lui $t2, %hi(_icon_item_staticSegmentRomStart) # $t2, 0x75
/* B87F0C 80110D6C 254AC000 */ addiu $t2, %lo(_icon_item_staticSegmentRomStart) # addiu $t2, $t2, -0x4000
/* B87F10 80110D70 284100F0 */ slti $at, $v0, 0xf0
/* B87F14 80110D74 1020000A */ beqz $at, .L80110DA0
/* B87F18 80110D78 00024B00 */ sll $t1, $v0, 0xc
/* B87F1C 80110D7C 8E040138 */ lw $a0, 0x138($s0)
/* B87F20 80110D80 3C078015 */ lui $a3, %hi(D_80154FB0) # $a3, 0x8015
/* B87F24 80110D84 240B00DB */ li $t3, 219
/* B87F28 80110D88 AFAB0010 */ sw $t3, 0x10($sp)
/* B87F2C 80110D8C 24E74FB0 */ addiu $a3, %lo(D_80154FB0) # addiu $a3, $a3, 0x4fb0
/* B87F30 80110D90 012A2821 */ addu $a1, $t1, $t2
/* B87F34 80110D94 24061000 */ li $a2, 4096
/* B87F38 80110D98 0C0006A8 */ jal DmaMgr_SendRequest1
/* B87F3C 80110D9C 24843000 */ addiu $a0, $a0, 0x3000
.L80110DA0:
/* B87F40 80110DA0 3C048015 */ lui $a0, %hi(D_80154FC4) # $a0, 0x8015
/* B87F44 80110DA4 24844FC4 */ addiu $a0, %lo(D_80154FC4) # addiu $a0, $a0, 0x4fc4
/* B87F48 80110DA8 0C00084C */ jal osSyncPrintf
/* B87F4C 80110DAC 862513CE */ lh $a1, 0x13ce($s1)
/* B87F50 80110DB0 862213CE */ lh $v0, 0x13ce($s1)
/* B87F54 80110DB4 24060004 */ li $a2, 4
/* B87F58 80110DB8 24010008 */ li $at, 8
/* B87F5C 80110DBC 10C20009 */ beq $a2, $v0, .L80110DE4
/* B87F60 80110DC0 3C048015 */ lui $a0, %hi(D_80154FD4) # $a0, 0x8015
/* B87F64 80110DC4 50410008 */ beql $v0, $at, .L80110DE8
/* B87F68 80110DC8 8E251364 */ lw $a1, 0x1364($s1)
/* B87F6C 80110DCC 862313D2 */ lh $v1, 0x13d2($s1)
/* B87F70 80110DD0 2401000A */ li $at, 10
/* B87F74 80110DD4 50C30004 */ beql $a2, $v1, .L80110DE8
/* B87F78 80110DD8 8E251364 */ lw $a1, 0x1364($s1)
/* B87F7C 80110DDC 5461002B */ bnel $v1, $at, .L80110E8C
/* B87F80 80110DE0 2841000B */ slti $at, $v0, 0xb
.L80110DE4:
/* B87F84 80110DE4 8E251364 */ lw $a1, 0x1364($s1)
.L80110DE8:
/* B87F88 80110DE8 0C00084C */ jal osSyncPrintf
/* B87F8C 80110DEC 24844FD4 */ addiu $a0, %lo(D_80154FD4) # addiu $a0, $a0, 0x4fd4
/* B87F90 80110DF0 8E221364 */ lw $v0, 0x1364($s1)
/* B87F94 80110DF4 2401FFFF */ li $at, -1
/* B87F98 80110DF8 24060004 */ li $a2, 4
/* B87F9C 80110DFC 10410004 */ beq $v0, $at, .L80110E10
/* B87FA0 80110E00 2419001A */ li $t9, 26
/* B87FA4 80110E04 24010001 */ li $at, 1
/* B87FA8 80110E08 5441000A */ bnel $v0, $at, .L80110E34
/* B87FAC 80110E0C 862213CE */ lh $v0, 0x13ce($s1)
.L80110E10:
/* B87FB0 80110E10 862C13CE */ lh $t4, 0x13ce($s1)
/* B87FB4 80110E14 240D0001 */ li $t5, 1
/* B87FB8 80110E18 240E008C */ li $t6, 140
/* B87FBC 80110E1C 14CC0004 */ bne $a2, $t4, .L80110E30
/* B87FC0 80110E20 240F0050 */ li $t7, 80
/* B87FC4 80110E24 A62D13CE */ sh $t5, 0x13ce($s1)
/* B87FC8 80110E28 A62E13D6 */ sh $t6, 0x13d6($s1)
/* B87FCC 80110E2C A62F13DA */ sh $t7, 0x13da($s1)
.L80110E30:
/* B87FD0 80110E30 862213CE */ lh $v0, 0x13ce($s1)
.L80110E34:
/* B87FD4 80110E34 24010008 */ li $at, 8
/* B87FD8 80110E38 240A0036 */ li $t2, 54
/* B87FDC 80110E3C 10C20003 */ beq $a2, $v0, .L80110E4C
/* B87FE0 80110E40 240B002E */ li $t3, 46
/* B87FE4 80110E44 54410004 */ bnel $v0, $at, .L80110E58
/* B87FE8 80110E48 24020001 */ li $v0, 1
.L80110E4C:
/* B87FEC 80110E4C 10000002 */ b .L80110E58
/* B87FF0 80110E50 00001025 */ move $v0, $zero
/* B87FF4 80110E54 24020001 */ li $v0, 1
.L80110E58:
/* B87FF8 80110E58 0002C040 */ sll $t8, $v0, 1
/* B87FFC 80110E5C 02381821 */ addu $v1, $s1, $t8
/* B88000 80110E60 A47913D6 */ sh $t9, 0x13d6($v1)
/* B88004 80110E64 8629002E */ lh $t1, 0x2e($s1)
/* B88008 80110E68 292100A1 */ slti $at, $t1, 0xa1
/* B8800C 80110E6C 54200005 */ bnezl $at, .L80110E84
/* B88010 80110E70 A46B13DA */ sh $t3, 0x13da($v1)
/* B88014 80110E74 A46A13DA */ sh $t2, 0x13da($v1)
/* B88018 80110E78 10000003 */ b .L80110E88
/* B8801C 80110E7C 862213CE */ lh $v0, 0x13ce($s1)
/* B88020 80110E80 A46B13DA */ sh $t3, 0x13da($v1)
.L80110E84:
/* B88024 80110E84 862213CE */ lh $v0, 0x13ce($s1)
.L80110E88:
/* B88028 80110E88 2841000B */ slti $at, $v0, 0xb
.L80110E8C:
/* B8802C 80110E8C 14200007 */ bnez $at, .L80110EAC
/* B88030 80110E90 28410010 */ slti $at, $v0, 0x10
/* B88034 80110E94 10200005 */ beqz $at, .L80110EAC
/* B88038 80110E98 3C048015 */ lui $a0, %hi(D_80154FE8) # $a0, 0x8015
/* B8803C 80110E9C A62013CE */ sh $zero, 0x13ce($s1)
/* B88040 80110EA0 862513CE */ lh $a1, 0x13ce($s1)
/* B88044 80110EA4 0C00084C */ jal osSyncPrintf
/* B88048 80110EA8 24844FE8 */ addiu $a0, %lo(D_80154FE8) # addiu $a0, $a0, 0x4fe8
.L80110EAC:
/* B8804C 80110EAC 8FA5002C */ lw $a1, 0x2c($sp)
/* B88050 80110EB0 3C048015 */ lui $a0, %hi(D_80155028) # $a0, 0x8015
/* B88054 80110EB4 24845028 */ addiu $a0, %lo(D_80155028) # addiu $a0, $a0, 0x5028
/* B88058 80110EB8 0C00084C */ jal osSyncPrintf
/* B8805C 80110EBC 24A55300 */ addiu $a1, $a1, 0x5300
/* B88060 80110EC0 0C01E258 */ jal Health_InitData
/* B88064 80110EC4 8FA40058 */ lw $a0, 0x58($sp)
/* B88068 80110EC8 0C0203DA */ jal Map_Init
/* B8806C 80110ECC 8FA40058 */ lw $a0, 0x58($sp)
/* B88070 80110ED0 3C058016 */ lui $a1, %hi(gGameInfo) # $a1, 0x8016
/* B88074 80110ED4 24A5FA90 */ addiu $a1, %lo(gGameInfo) # addiu $a1, $a1, -0x570
/* B88078 80110ED8 A6000242 */ sh $zero, 0x242($s0)
/* B8807C 80110EDC A600023C */ sh $zero, 0x23c($s0)
/* B88080 80110EE0 8CAD0000 */ lw $t5, ($a1)
/* B88084 80110EE4 240200A0 */ li $v0, 160
/* B88088 80110EE8 240E00FF */ li $t6, 255
/* B8808C 80110EEC A5A20820 */ sh $v0, 0x820($t5)
/* B88090 80110EF0 8CAF0000 */ lw $t7, ($a1)
/* B88094 80110EF4 2403001E */ li $v1, 30
/* B88098 80110EF8 240A00A2 */ li $t2, 162
/* B8809C 80110EFC A5EE07EA */ sh $t6, 0x7ea($t7)
/* B880A0 80110F00 8CB80000 */ lw $t8, ($a1)
/* B880A4 80110F04 240400BA */ li $a0, 186
/* B880A8 80110F08 240F00C8 */ li $t7, 200
/* B880AC 80110F0C A70307EC */ sh $v1, 0x7ec($t8)
/* B880B0 80110F10 8CB90000 */ lw $t9, ($a1)
/* B880B4 80110F14 A72307EE */ sh $v1, 0x7ee($t9)
/* B880B8 80110F18 8CA90000 */ lw $t1, ($a1)
/* B880BC 80110F1C 24190032 */ li $t9, 50
/* B880C0 80110F20 A5220838 */ sh $v0, 0x838($t1)
/* B880C4 80110F24 8CAB0000 */ lw $t3, ($a1)
/* B880C8 80110F28 A56A0F94 */ sh $t2, 0xf94($t3)
/* B880CC 80110F2C 8CAC0000 */ lw $t4, ($a1)
/* B880D0 80110F30 A5840AB6 */ sh $a0, 0xab6($t4)
/* B880D4 80110F34 8CAD0000 */ lw $t5, ($a1)
/* B880D8 80110F38 A5A40ABC */ sh $a0, 0xabc($t5)
/* B880DC 80110F3C 8CAE0000 */ lw $t6, ($a1)
/* B880E0 80110F40 A5C00AC0 */ sh $zero, 0xac0($t6)
/* B880E4 80110F44 8CB80000 */ lw $t8, ($a1)
/* B880E8 80110F48 A70F0AC2 */ sh $t7, 0xac2($t8)
/* B880EC 80110F4C 8CA90000 */ lw $t1, ($a1)
/* B880F0 80110F50 A5390AC4 */ sh $t9, 0xac4($t1)
/* B880F4 80110F54 8FBF0024 */ lw $ra, 0x24($sp)
/* B880F8 80110F58 8FB10020 */ lw $s1, 0x20($sp)
/* B880FC 80110F5C 8FB0001C */ lw $s0, 0x1c($sp)
/* B88100 80110F60 03E00008 */ jr $ra
/* B88104 80110F64 27BD0058 */ addiu $sp, $sp, 0x58

File diff suppressed because it is too large Load diff

View file

@ -1,285 +0,0 @@
.rdata
glabel D_8013B830
.asciz "../z_elf_message.c"
.balign 4
glabel D_8013B844
.asciz "\" \" = %s\n"
# EUC-JP: | Unplanned conditions
.balign 4
glabel D_8013B858
.asciz " "
# EUC-JP: | Unplanned conditions
.balign 4
glabel D_8013B864
.asciz "0"
.balign 4
glabel D_8013B868
.asciz "../z_elf_message.c"
.balign 4
.late_rodata
.late_rodata_alignment 8
glabel jtbl_8013B8C8
.word L8006BCFC
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BD44
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BD90
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BDD0
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE38
.word L8006BE10
.text
glabel ElfMessage_CheckCondition
/* AE2D60 8006BBC0 27BDFFE8 */ addiu $sp, $sp, -0x18
/* AE2D64 8006BBC4 AFBF0014 */ sw $ra, 0x14($sp)
/* AE2D68 8006BBC8 90850000 */ lbu $a1, ($a0)
/* AE2D6C 8006BBCC 3C078016 */ lui $a3, %hi(gSaveContext) # $a3, 0x8016
/* AE2D70 8006BBD0 24E7E660 */ addiu $a3, %lo(gSaveContext) # addiu $a3, $a3, -0x19a0
/* AE2D74 8006BBD4 30A2001E */ andi $v0, $a1, 0x1e
/* AE2D78 8006BBD8 1040000C */ beqz $v0, .L8006BC0C
/* AE2D7C 8006BBDC 240F0001 */ li $t7, 1
/* AE2D80 8006BBE0 24010002 */ li $at, 2
/* AE2D84 8006BBE4 1041001A */ beq $v0, $at, .L8006BC50
/* AE2D88 8006BBE8 3C078016 */ lui $a3, %hi(gSaveContext)
/* AE2D8C 8006BBEC 24010004 */ li $at, 4
/* AE2D90 8006BBF0 10410028 */ beq $v0, $at, .L8006BC94
/* AE2D94 8006BBF4 3C078016 */ lui $a3, %hi(gSaveContext) # $a3, 0x8016
/* AE2D98 8006BBF8 24010006 */ li $at, 6
/* AE2D9C 8006BBFC 50410036 */ beql $v0, $at, .L8006BCD8
/* AE2DA0 8006BC00 90830001 */ lbu $v1, 1($a0)
/* AE2DA4 8006BC04 1000008C */ b .L8006BE38
/* AE2DA8 8006BC08 00000000 */ nop
.L8006BC0C:
/* AE2DAC 8006BC0C 90830001 */ lbu $v1, 1($a0)
/* AE2DB0 8006BC10 30B80001 */ andi $t8, $a1, 1
/* AE2DB4 8006BC14 3B190001 */ xori $t9, $t8, 1
/* AE2DB8 8006BC18 306800F0 */ andi $t0, $v1, 0xf0
/* AE2DBC 8006BC1C 00084903 */ sra $t1, $t0, 4
/* AE2DC0 8006BC20 00095040 */ sll $t2, $t1, 1
/* AE2DC4 8006BC24 00EA5821 */ addu $t3, $a3, $t2
/* AE2DC8 8006BC28 956C0ED4 */ lhu $t4, 0xed4($t3)
/* AE2DCC 8006BC2C 306E000F */ andi $t6, $v1, 0xf
/* AE2DD0 8006BC30 01CF3004 */ sllv $a2, $t7, $t6
/* AE2DD4 8006BC34 30C6FFFF */ andi $a2, $a2, 0xffff
/* AE2DD8 8006BC38 01866824 */ and $t5, $t4, $a2
/* AE2DDC 8006BC3C 000D782B */ sltu $t7, $zero, $t5
/* AE2DE0 8006BC40 2F390001 */ sltiu $t9, $t9, 1
/* AE2DE4 8006BC44 032F1026 */ xor $v0, $t9, $t7
/* AE2DE8 8006BC48 1000008B */ b .L8006BE78
/* AE2DEC 8006BC4C 2C420001 */ sltiu $v0, $v0, 1
.L8006BC50:
/* AE2DF0 8006BC50 908E0001 */ lbu $t6, 1($a0)
/* AE2DF4 8006BC54 24E7E660 */ addiu $a3, %lo(gSaveContext) # addiu $a3, $a3, -0x19a0
/* AE2DF8 8006BC58 94E91402 */ lhu $t1, 0x1402($a3)
/* AE2DFC 8006BC5C 3C088012 */ lui $t0, %hi(gBitFlags-0x1d0)
/* AE2E00 8006BC60 000EC080 */ sll $t8, $t6, 2
/* AE2E04 8006BC64 01184021 */ addu $t0, $t0, $t8
/* AE2E08 8006BC68 00E95021 */ addu $t2, $a3, $t1
/* AE2E0C 8006BC6C 914B00A8 */ lbu $t3, 0xa8($t2)
/* AE2E10 8006BC70 8D086F50 */ lw $t0, %lo(gBitFlags-0x1d0)($t0)
/* AE2E14 8006BC74 30B90001 */ andi $t9, $a1, 1
/* AE2E18 8006BC78 3B2F0001 */ xori $t7, $t9, 1
/* AE2E1C 8006BC7C 010B6024 */ and $t4, $t0, $t3
/* AE2E20 8006BC80 000C682B */ sltu $t5, $zero, $t4
/* AE2E24 8006BC84 2DEF0001 */ sltiu $t7, $t7, 1
/* AE2E28 8006BC88 01ED1026 */ xor $v0, $t7, $t5
/* AE2E2C 8006BC8C 1000007A */ b .L8006BE78
/* AE2E30 8006BC90 2C420001 */ sltiu $v0, $v0, 1
.L8006BC94:
/* AE2E34 8006BC94 90980001 */ lbu $t8, 1($a0)
/* AE2E38 8006BC98 3C098012 */ lui $t1, %hi(gItemSlots)
/* AE2E3C 8006BC9C 24E7E660 */ addiu $a3, %lo(gSaveContext)
/* AE2E40 8006BCA0 01384821 */ addu $t1, $t1, $t8
/* AE2E44 8006BCA4 91297464 */ lbu $t1, %lo(gItemSlots)($t1)
/* AE2E48 8006BCA8 908E0003 */ lbu $t6, 3($a0)
/* AE2E4C 8006BCAC 30AC0001 */ andi $t4, $a1, 1
/* AE2E50 8006BCB0 00E95021 */ addu $t2, $a3, $t1
/* AE2E54 8006BCB4 91480074 */ lbu $t0, 0x74($t2)
/* AE2E58 8006BCB8 39990001 */ xori $t9, $t4, 1
/* AE2E5C 8006BCBC 2F390001 */ sltiu $t9, $t9, 1
/* AE2E60 8006BCC0 01C85826 */ xor $t3, $t6, $t0
/* AE2E64 8006BCC4 2D6B0001 */ sltiu $t3, $t3, 1
/* AE2E68 8006BCC8 032B1026 */ xor $v0, $t9, $t3
/* AE2E6C 8006BCCC 1000006A */ b .L8006BE78
/* AE2E70 8006BCD0 2C420001 */ sltiu $v0, $v0, 1
/* AE2E74 8006BCD4 90830001 */ lbu $v1, 1($a0)
.L8006BCD8:
/* AE2E78 8006BCD8 306F00F0 */ andi $t7, $v1, 0xf0
/* AE2E7C 8006BCDC 2DE10041 */ sltiu $at, $t7, 0x41
/* AE2E80 8006BCE0 10200055 */ beqz $at, .L8006BE38
/* AE2E84 8006BCE4 000F7880 */ sll $t7, $t7, 2
/* AE2E88 8006BCE8 3C018014 */ lui $at, %hi(jtbl_8013B8C8)
/* AE2E8C 8006BCEC 002F0821 */ addu $at, $at, $t7
/* AE2E90 8006BCF0 8C2FB8C8 */ lw $t7, %lo(jtbl_8013B8C8)($at)
/* AE2E94 8006BCF4 01E00008 */ jr $t7
/* AE2E98 8006BCF8 00000000 */ nop
glabel L8006BCFC
/* AE2E9C 8006BCFC 3C078016 */ lui $a3, %hi(gSaveContext) # $a3, 0x8016
/* AE2EA0 8006BD00 24E7E660 */ addiu $a3, %lo(gSaveContext) # addiu $a3, $a3, -0x19a0
/* AE2EA4 8006BD04 3C188012 */ lui $t8, %hi(gUpgradeMasks+8) # $t8, 0x8012
/* AE2EA8 8006BD08 8F1871B8 */ lw $t8, %lo(gUpgradeMasks+8)($t8)
/* AE2EAC 8006BD0C 8CED00A0 */ lw $t5, 0xa0($a3)
/* AE2EB0 8006BD10 3C0A8012 */ lui $t2, %hi(gUpgradeShifts+2) # $t2, 0x8012
/* AE2EB4 8006BD14 914A71F6 */ lbu $t2, %lo(gUpgradeShifts+2)($t2)
/* AE2EB8 8006BD18 01B84824 */ and $t1, $t5, $t8
/* AE2EBC 8006BD1C 3068000F */ andi $t0, $v1, 0xf
/* AE2EC0 8006BD20 30B90001 */ andi $t9, $a1, 1
/* AE2EC4 8006BD24 01497007 */ srav $t6, $t1, $t2
/* AE2EC8 8006BD28 010E6026 */ xor $t4, $t0, $t6
/* AE2ECC 8006BD2C 3B2B0001 */ xori $t3, $t9, 1
/* AE2ED0 8006BD30 2D6B0001 */ sltiu $t3, $t3, 1
/* AE2ED4 8006BD34 2D8C0001 */ sltiu $t4, $t4, 1
/* AE2ED8 8006BD38 016C1026 */ xor $v0, $t3, $t4
/* AE2EDC 8006BD3C 1000004E */ b .L8006BE78
/* AE2EE0 8006BD40 2C420001 */ sltiu $v0, $v0, 1
glabel L8006BD44
/* AE2EE4 8006BD44 908F0003 */ lbu $t7, 3($a0)
/* AE2EE8 8006BD48 3C188012 */ lui $t8, %hi(gBitFlags-0x110)
/* AE2EEC 8006BD4C 3C078016 */ lui $a3, %hi(gSaveContext) # $a3, 0x8016
/* AE2EF0 8006BD50 000F6880 */ sll $t5, $t7, 2
/* AE2EF4 8006BD54 030DC021 */ addu $t8, $t8, $t5
/* AE2EF8 8006BD58 3C098012 */ lui $t1, %hi(gEquipShifts+3) # $t1, 0x8012
/* AE2EFC 8006BD5C 912971F3 */ lbu $t1, %lo(gEquipShifts+3)($t1)
/* AE2F00 8006BD60 8F187010 */ lw $t8, %lo(gBitFlags-0x110)($t8)
/* AE2F04 8006BD64 24E7E660 */ addiu $a3, %lo(gSaveContext) # addiu $a3, $a3, -0x19a0
/* AE2F08 8006BD68 94E8009C */ lhu $t0, 0x9c($a3)
/* AE2F0C 8006BD6C 30AB0001 */ andi $t3, $a1, 1
/* AE2F10 8006BD70 01385004 */ sllv $t2, $t8, $t1
/* AE2F14 8006BD74 396C0001 */ xori $t4, $t3, 1
/* AE2F18 8006BD78 01487024 */ and $t6, $t2, $t0
/* AE2F1C 8006BD7C 000EC82B */ sltu $t9, $zero, $t6
/* AE2F20 8006BD80 2D8C0001 */ sltiu $t4, $t4, 1
/* AE2F24 8006BD84 01991026 */ xor $v0, $t4, $t9
/* AE2F28 8006BD88 1000003B */ b .L8006BE78
/* AE2F2C 8006BD8C 2C420001 */ sltiu $v0, $v0, 1
glabel L8006BD90
/* AE2F30 8006BD90 908F0003 */ lbu $t7, 3($a0)
/* AE2F34 8006BD94 3C078016 */ lui $a3, %hi(gSaveContext) # $a3, 0x8016
/* AE2F38 8006BD98 3C188012 */ lui $t8, %hi(gBitFlags-0x150)
/* AE2F3C 8006BD9C 000F6880 */ sll $t5, $t7, 2
/* AE2F40 8006BDA0 24E7E660 */ addiu $a3, %lo(gSaveContext) # addiu $a3, $a3, -0x19a0
/* AE2F44 8006BDA4 030DC021 */ addu $t8, $t8, $t5
/* AE2F48 8006BDA8 8F186FD0 */ lw $t8, %lo(gBitFlags-0x150)($t8)
/* AE2F4C 8006BDAC 8CE900A4 */ lw $t1, 0xa4($a3)
/* AE2F50 8006BDB0 30AE0001 */ andi $t6, $a1, 1
/* AE2F54 8006BDB4 39CB0001 */ xori $t3, $t6, 1
/* AE2F58 8006BDB8 03095024 */ and $t2, $t8, $t1
/* AE2F5C 8006BDBC 000A402B */ sltu $t0, $zero, $t2
/* AE2F60 8006BDC0 2D6B0001 */ sltiu $t3, $t3, 1
/* AE2F64 8006BDC4 01681026 */ xor $v0, $t3, $t0
/* AE2F68 8006BDC8 1000002B */ b .L8006BE78
/* AE2F6C 8006BDCC 2C420001 */ sltiu $v0, $v0, 1
glabel L8006BDD0
/* AE2F70 8006BDD0 908C0003 */ lbu $t4, 3($a0)
/* AE2F74 8006BDD4 3C078016 */ lui $a3, %hi(gSaveContext) # $a3, 0x8016
/* AE2F78 8006BDD8 3C0F8012 */ lui $t7, %hi(gBitFlags-0x198)
/* AE2F7C 8006BDDC 000CC880 */ sll $t9, $t4, 2
/* AE2F80 8006BDE0 24E7E660 */ addiu $a3, %lo(gSaveContext) # addiu $a3, $a3, -0x19a0
/* AE2F84 8006BDE4 01F97821 */ addu $t7, $t7, $t9
/* AE2F88 8006BDE8 8DEF6F88 */ lw $t7, %lo(gBitFlags-0x198)($t7)
/* AE2F8C 8006BDEC 8CED00A4 */ lw $t5, 0xa4($a3)
/* AE2F90 8006BDF0 30AA0001 */ andi $t2, $a1, 1
/* AE2F94 8006BDF4 394E0001 */ xori $t6, $t2, 1
/* AE2F98 8006BDF8 01EDC024 */ and $t8, $t7, $t5
/* AE2F9C 8006BDFC 0018482B */ sltu $t1, $zero, $t8
/* AE2FA0 8006BE00 2DCE0001 */ sltiu $t6, $t6, 1
/* AE2FA4 8006BE04 01C91026 */ xor $v0, $t6, $t1
/* AE2FA8 8006BE08 1000001B */ b .L8006BE78
/* AE2FAC 8006BE0C 2C420001 */ sltiu $v0, $v0, 1
glabel L8006BE10
/* AE2FB0 8006BE10 3C078016 */ lui $a3, %hi(gSaveContext) # $a3, 0x8016
/* AE2FB4 8006BE14 24E7E660 */ addiu $a3, %lo(gSaveContext) # addiu $a3, $a3, -0x19a0
/* AE2FB8 8006BE18 90EC003A */ lbu $t4, 0x3a($a3)
/* AE2FBC 8006BE1C 30AB0001 */ andi $t3, $a1, 1
/* AE2FC0 8006BE20 39680001 */ xori $t0, $t3, 1
/* AE2FC4 8006BE24 2D080001 */ sltiu $t0, $t0, 1
/* AE2FC8 8006BE28 000CC82B */ sltu $t9, $zero, $t4
/* AE2FCC 8006BE2C 01191026 */ xor $v0, $t0, $t9
/* AE2FD0 8006BE30 10000011 */ b .L8006BE78
/* AE2FD4 8006BE34 2C420001 */ sltiu $v0, $v0, 1
glabel L8006BE38
.L8006BE38:
/* AE2FD8 8006BE38 3C048014 */ lui $a0, %hi(D_8013B830) # $a0, 0x8014
/* AE2FDC 8006BE3C 2484B830 */ addiu $a0, %lo(D_8013B830) # addiu $a0, $a0, -0x47d0
/* AE2FE0 8006BE40 0C000B84 */ jal LogUtils_LogThreadId
/* AE2FE4 8006BE44 2405009C */ li $a1, 156
/* AE2FE8 8006BE48 3C048014 */ lui $a0, %hi(D_8013B844) # $a0, 0x8014
/* AE2FEC 8006BE4C 3C058014 */ lui $a1, %hi(D_8013B858) # $a1, 0x8014
/* AE2FF0 8006BE50 24A5B858 */ addiu $a1, %lo(D_8013B858) # addiu $a1, $a1, -0x47a8
/* AE2FF4 8006BE54 0C00084C */ jal osSyncPrintf
/* AE2FF8 8006BE58 2484B844 */ addiu $a0, %lo(D_8013B844) # addiu $a0, $a0, -0x47bc
/* AE2FFC 8006BE5C 3C048014 */ lui $a0, %hi(D_8013B864) # $a0, 0x8014
/* AE3000 8006BE60 3C058014 */ lui $a1, %hi(D_8013B868) # $a1, 0x8014
/* AE3004 8006BE64 24A5B868 */ addiu $a1, %lo(D_8013B868) # addiu $a1, $a1, -0x4798
/* AE3008 8006BE68 2484B864 */ addiu $a0, %lo(D_8013B864) # addiu $a0, $a0, -0x479c
/* AE300C 8006BE6C 0C0007FC */ jal __assert
/* AE3010 8006BE70 2406009D */ li $a2, 157
/* AE3014 8006BE74 00001025 */ move $v0, $zero
.L8006BE78:
/* AE3018 8006BE78 8FBF0014 */ lw $ra, 0x14($sp)
/* AE301C 8006BE7C 27BD0018 */ addiu $sp, $sp, 0x18
/* AE3020 8006BE80 03E00008 */ jr $ra
/* AE3024 8006BE84 00000000 */ nop

View file

@ -1,439 +0,0 @@
.rdata
glabel D_8013BC40
.asciz "player->ride.actor != NULL"
.balign 4
glabel D_8013BC5C
.asciz "../z_horse.c"
.balign 4
glabel D_8013BC6C
.asciz "player->ride.actor != NULL"
.balign 4
glabel D_8013BC88
.asciz "../z_horse.c"
.balign 4
glabel D_8013BC98
.asciz "player->ride.actor != NULL"
.balign 4
glabel D_8013BCB4
.asciz "../z_horse.c"
.balign 4
glabel D_8013BCC4
.asciz "player->ride.actor != NULL"
.balign 4
glabel D_8013BCE0
.asciz "../z_horse.c"
.balign 4
.late_rodata
glabel D_8013BD38
.float -2084.0
.text
glabel func_8006D684
/* AE4824 8006D684 3C098016 */ lui $t1, %hi(gSaveContext) # $t1, 0x8016
/* AE4828 8006D688 2529E660 */ addiu $t1, %lo(gSaveContext) # addiu $t1, $t1, -0x19a0
/* AE482C 8006D68C 8D220000 */ lw $v0, ($t1)
/* AE4830 8006D690 27BDFF78 */ addiu $sp, $sp, -0x88
/* AE4834 8006D694 AFB10030 */ sw $s1, 0x30($sp)
/* AE4838 8006D698 AFB0002C */ sw $s0, 0x2c($sp)
/* AE483C 8006D69C 2406028A */ li $a2, 650
/* AE4840 8006D6A0 00A08025 */ move $s0, $a1
/* AE4844 8006D6A4 00808825 */ move $s1, $a0
/* AE4848 8006D6A8 10C20008 */ beq $a2, $v0, .L8006D6CC
/* AE484C 8006D6AC AFBF0034 */ sw $ra, 0x34($sp)
/* AE4850 8006D6B0 2401028E */ li $at, 654
/* AE4854 8006D6B4 10410005 */ beq $v0, $at, .L8006D6CC
/* AE4858 8006D6B8 24010292 */ li $at, 658
/* AE485C 8006D6BC 10410003 */ beq $v0, $at, .L8006D6CC
/* AE4860 8006D6C0 24010476 */ li $at, 1142
/* AE4864 8006D6C4 54410062 */ bnel $v0, $at, .L8006D850
/* AE4868 8006D6C8 862F00A4 */ lh $t7, 0xa4($s1)
.L8006D6CC:
/* AE486C 8006D6CC 8D2E1364 */ lw $t6, 0x1364($t1)
/* AE4870 8006D6D0 3C0F8012 */ lui $t7, %hi(D_8011F9A0) # $t7, 0x8012
/* AE4874 8006D6D4 25EFF9A0 */ addiu $t7, %lo(D_8011F9A0) # addiu $t7, $t7, -0x660
/* AE4878 8006D6D8 55C0005D */ bnezl $t6, .L8006D850
/* AE487C 8006D6DC 862F00A4 */ lh $t7, 0xa4($s1)
/* AE4880 8006D6E0 8DF90000 */ lw $t9, ($t7)
/* AE4884 8006D6E4 27A30060 */ addiu $v1, $sp, 0x60
/* AE4888 8006D6E8 AC790000 */ sw $t9, ($v1)
/* AE488C 8006D6EC 8DF80004 */ lw $t8, 4($t7)
/* AE4890 8006D6F0 AC780004 */ sw $t8, 4($v1)
/* AE4894 8006D6F4 8DF90008 */ lw $t9, 8($t7)
/* AE4898 8006D6F8 AC790008 */ sw $t9, 8($v1)
/* AE489C 8006D6FC 8DF8000C */ lw $t8, 0xc($t7)
/* AE48A0 8006D700 AC78000C */ sw $t8, 0xc($v1)
/* AE48A4 8006D704 8DF90010 */ lw $t9, 0x10($t7)
/* AE48A8 8006D708 AC790010 */ sw $t9, 0x10($v1)
/* AE48AC 8006D70C 8DF80014 */ lw $t8, 0x14($t7)
/* AE48B0 8006D710 14C20008 */ bne $a2, $v0, .L8006D734
/* AE48B4 8006D714 AC780014 */ sw $t8, 0x14($v1)
/* AE48B8 8006D718 886C0000 */ lwl $t4, ($v1)
/* AE48BC 8006D71C 986C0003 */ lwr $t4, 3($v1)
/* AE48C0 8006D720 27AA0078 */ addiu $t2, $sp, 0x78
/* AE48C4 8006D724 AD4C0000 */ sw $t4, ($t2)
/* AE48C8 8006D728 946C0004 */ lhu $t4, 4($v1)
/* AE48CC 8006D72C 1000001C */ b .L8006D7A0
/* AE48D0 8006D730 A54C0004 */ sh $t4, 4($t2)
.L8006D734:
/* AE48D4 8006D734 2401028E */ li $at, 654
/* AE48D8 8006D738 14410008 */ bne $v0, $at, .L8006D75C
/* AE48DC 8006D73C 27AE0066 */ addiu $t6, $sp, 0x66
/* AE48E0 8006D740 89D80000 */ lwl $t8, ($t6)
/* AE48E4 8006D744 99D80003 */ lwr $t8, 3($t6)
/* AE48E8 8006D748 27AD0078 */ addiu $t5, $sp, 0x78
/* AE48EC 8006D74C ADB80000 */ sw $t8, ($t5)
/* AE48F0 8006D750 95D80004 */ lhu $t8, 4($t6)
/* AE48F4 8006D754 10000012 */ b .L8006D7A0
/* AE48F8 8006D758 A5B80004 */ sh $t8, 4($t5)
.L8006D75C:
/* AE48FC 8006D75C 24010292 */ li $at, 658
/* AE4900 8006D760 14410009 */ bne $v0, $at, .L8006D788
/* AE4904 8006D764 27AE0072 */ addiu $t6, $sp, 0x72
/* AE4908 8006D768 27AA006C */ addiu $t2, $sp, 0x6c
/* AE490C 8006D76C 894C0000 */ lwl $t4, ($t2)
/* AE4910 8006D770 994C0003 */ lwr $t4, 3($t2)
/* AE4914 8006D774 27B90078 */ addiu $t9, $sp, 0x78
/* AE4918 8006D778 AF2C0000 */ sw $t4, ($t9)
/* AE491C 8006D77C 954C0004 */ lhu $t4, 4($t2)
/* AE4920 8006D780 10000007 */ b .L8006D7A0
/* AE4924 8006D784 A72C0004 */ sh $t4, 4($t9)
.L8006D788:
/* AE4928 8006D788 89D80000 */ lwl $t8, ($t6)
/* AE492C 8006D78C 99D80003 */ lwr $t8, 3($t6)
/* AE4930 8006D790 27AD0078 */ addiu $t5, $sp, 0x78
/* AE4934 8006D794 ADB80000 */ sw $t8, ($t5)
/* AE4938 8006D798 95D80004 */ lhu $t8, 4($t6)
/* AE493C 8006D79C A5B80004 */ sh $t8, 4($t5)
.L8006D7A0:
/* AE4940 8006D7A0 87AA007A */ lh $t2, 0x7a($sp)
/* AE4944 8006D7A4 87AB007C */ lh $t3, 0x7c($sp)
/* AE4948 8006D7A8 87B90078 */ lh $t9, 0x78($sp)
/* AE494C 8006D7AC 448A3000 */ mtc1 $t2, $f6
/* AE4950 8006D7B0 448B5000 */ mtc1 $t3, $f10
/* AE4954 8006D7B4 44992000 */ mtc1 $t9, $f4
/* AE4958 8006D7B8 46803220 */ cvt.s.w $f8, $f6
/* AE495C 8006D7BC AFA00018 */ sw $zero, 0x18($sp)
/* AE4960 8006D7C0 240D0007 */ li $t5, 7
/* AE4964 8006D7C4 26241C24 */ addiu $a0, $s1, 0x1c24
/* AE4968 8006D7C8 02202825 */ move $a1, $s1
/* AE496C 8006D7CC 46805420 */ cvt.s.w $f16, $f10
/* AE4970 8006D7D0 E7A80010 */ swc1 $f8, 0x10($sp)
/* AE4974 8006D7D4 24060014 */ li $a2, 20
/* AE4978 8006D7D8 46802120 */ cvt.s.w $f4, $f4
/* AE497C 8006D7DC E7B00014 */ swc1 $f16, 0x14($sp)
/* AE4980 8006D7E0 860C0032 */ lh $t4, 0x32($s0)
/* AE4984 8006D7E4 AFAD0024 */ sw $t5, 0x24($sp)
/* AE4988 8006D7E8 AFA00020 */ sw $zero, 0x20($sp)
/* AE498C 8006D7EC AFAC001C */ sw $t4, 0x1c($sp)
/* AE4990 8006D7F0 44072000 */ mfc1 $a3, $f4
/* AE4994 8006D7F4 0C00C7D4 */ jal Actor_Spawn
/* AE4998 8006D7F8 00000000 */ nop
/* AE499C 8006D7FC 14400007 */ bnez $v0, .L8006D81C
/* AE49A0 8006D800 AE020440 */ sw $v0, 0x440($s0)
/* AE49A4 8006D804 3C048014 */ lui $a0, %hi(D_8013BC40) # $a0, 0x8014
/* AE49A8 8006D808 3C058014 */ lui $a1, %hi(D_8013BC5C) # $a1, 0x8014
/* AE49AC 8006D80C 24A5BC5C */ addiu $a1, %lo(D_8013BC5C) # addiu $a1, $a1, -0x43a4
/* AE49B0 8006D810 2484BC40 */ addiu $a0, %lo(D_8013BC40) # addiu $a0, $a0, -0x43c0
/* AE49B4 8006D814 0C0007FC */ jal __assert
/* AE49B8 8006D818 24060231 */ li $a2, 561
.L8006D81C:
/* AE49BC 8006D81C 02202025 */ move $a0, $s1
/* AE49C0 8006D820 02002825 */ move $a1, $s0
/* AE49C4 8006D824 0C00B7B3 */ jal func_8002DECC
/* AE49C8 8006D828 8E060440 */ lw $a2, 0x440($s0)
/* AE49CC 8006D82C 02202025 */ move $a0, $s1
/* AE49D0 8006D830 0C00B79D */ jal func_8002DE74
/* AE49D4 8006D834 02002825 */ move $a1, $s0
/* AE49D8 8006D838 862E00A4 */ lh $t6, 0xa4($s1)
/* AE49DC 8006D83C 3C098016 */ lui $t1, %hi(gSaveContext) # $t1, 0x8016
/* AE49E0 8006D840 2529E660 */ addiu $t1, %lo(gSaveContext) # addiu $t1, $t1, -0x19a0
/* AE49E4 8006D844 10000103 */ b .L8006DC54
/* AE49E8 8006D848 A52E1348 */ sh $t6, 0x1348($t1)
/* AE49EC 8006D84C 862F00A4 */ lh $t7, 0xa4($s1)
.L8006D850:
/* AE49F0 8006D850 24010063 */ li $at, 99
/* AE49F4 8006D854 15E1003B */ bne $t7, $at, .L8006D944
/* AE49F8 8006D858 00000000 */ nop
/* AE49FC 8006D85C 953813FA */ lhu $t8, 0x13fa($t1)
/* AE4A00 8006D860 24060006 */ li $a2, 6
/* AE4A04 8006D864 3319000F */ andi $t9, $t8, 0xf
/* AE4A08 8006D868 14D90036 */ bne $a2, $t9, .L8006D944
/* AE4A0C 8006D86C 00000000 */ nop
/* AE4A10 8006D870 0C00D6D3 */ jal Flags_GetEventChkInf
/* AE4A14 8006D874 24040018 */ li $a0, 24
/* AE4A18 8006D878 3C098016 */ lui $t1, %hi(gSaveContext) # $t1, 0x8016
/* AE4A1C 8006D87C 14400031 */ bnez $v0, .L8006D944
/* AE4A20 8006D880 2529E660 */ addiu $t1, %lo(gSaveContext) # addiu $t1, $t1, -0x19a0
/* AE4A24 8006D884 3C0A8016 */ lui $t2, %hi(gGameInfo) # $t2, 0x8016
/* AE4A28 8006D888 8D4AFA90 */ lw $t2, %lo(gGameInfo)($t2)
/* AE4A2C 8006D88C 3C07445F */ lui $a3, (0x445F8000 >> 16) # lui $a3, 0x445f
/* AE4A30 8006D890 34E78000 */ ori $a3, (0x445F8000 & 0xFFFF) # ori $a3, $a3, 0x8000
/* AE4A34 8006D894 854B0556 */ lh $t3, 0x556($t2)
/* AE4A38 8006D898 26241C24 */ addiu $a0, $s1, 0x1c24
/* AE4A3C 8006D89C 02202825 */ move $a1, $s1
/* AE4A40 8006D8A0 15600028 */ bnez $t3, .L8006D944
/* AE4A44 8006D8A4 24060014 */ li $a2, 20
/* AE4A48 8006D8A8 3C018014 */ lui $at, %hi(D_8013BD38)
/* AE4A4C 8006D8AC C424BD38 */ lwc1 $f4, %lo(D_8013BD38)($at)
/* AE4A50 8006D8B0 44809000 */ mtc1 $zero, $f18
/* AE4A54 8006D8B4 240C8001 */ li $t4, -32767
/* AE4A58 8006D8B8 240D0005 */ li $t5, 5
/* AE4A5C 8006D8BC AFAD0024 */ sw $t5, 0x24($sp)
/* AE4A60 8006D8C0 AFAC001C */ sw $t4, 0x1c($sp)
/* AE4A64 8006D8C4 AFA00018 */ sw $zero, 0x18($sp)
/* AE4A68 8006D8C8 AFA00020 */ sw $zero, 0x20($sp)
/* AE4A6C 8006D8CC E7A40014 */ swc1 $f4, 0x14($sp)
/* AE4A70 8006D8D0 0C00C7D4 */ jal Actor_Spawn
/* AE4A74 8006D8D4 E7B20010 */ swc1 $f18, 0x10($sp)
/* AE4A78 8006D8D8 14400007 */ bnez $v0, .L8006D8F8
/* AE4A7C 8006D8DC AE020440 */ sw $v0, 0x440($s0)
/* AE4A80 8006D8E0 3C048014 */ lui $a0, %hi(D_8013BC6C) # $a0, 0x8014
/* AE4A84 8006D8E4 3C058014 */ lui $a1, %hi(D_8013BC88) # $a1, 0x8014
/* AE4A88 8006D8E8 24A5BC88 */ addiu $a1, %lo(D_8013BC88) # addiu $a1, $a1, -0x4378
/* AE4A8C 8006D8EC 2484BC6C */ addiu $a0, %lo(D_8013BC6C) # addiu $a0, $a0, -0x4394
/* AE4A90 8006D8F0 0C0007FC */ jal __assert
/* AE4A94 8006D8F4 24060246 */ li $a2, 582
.L8006D8F8:
/* AE4A98 8006D8F8 02202025 */ move $a0, $s1
/* AE4A9C 8006D8FC 02002825 */ move $a1, $s0
/* AE4AA0 8006D900 0C00B7B3 */ jal func_8002DECC
/* AE4AA4 8006D904 8E060440 */ lw $a2, 0x440($s0)
/* AE4AA8 8006D908 02202025 */ move $a0, $s1
/* AE4AAC 8006D90C 0C00B79D */ jal func_8002DE74
/* AE4AB0 8006D910 02002825 */ move $a1, $s0
/* AE4AB4 8006D914 862E00A4 */ lh $t6, 0xa4($s1)
/* AE4AB8 8006D918 3C098016 */ lui $t1, %hi(gSaveContext) # $t1, 0x8016
/* AE4ABC 8006D91C 2529E660 */ addiu $t1, %lo(gSaveContext) # addiu $t1, $t1, -0x19a0
/* AE4AC0 8006D920 A52E1348 */ sh $t6, 0x1348($t1)
/* AE4AC4 8006D924 862F00A4 */ lh $t7, 0xa4($s1)
/* AE4AC8 8006D928 2401005D */ li $at, 93
/* AE4ACC 8006D92C 55E100CA */ bnel $t7, $at, .L8006DC58
/* AE4AD0 8006D930 8FBF0034 */ lw $ra, 0x34($sp)
/* AE4AD4 8006D934 8E190440 */ lw $t9, 0x440($s0)
/* AE4AD8 8006D938 2418FFFF */ li $t8, -1
/* AE4ADC 8006D93C 100000C5 */ b .L8006DC54
/* AE4AE0 8006D940 A3380003 */ sb $t8, 3($t9)
.L8006D944:
/* AE4AE4 8006D944 3C088012 */ lui $t0, %hi(D_8011F9B8) # $t0, 0x8012
/* AE4AE8 8006D948 3C048012 */ lui $a0, %hi(D_8011F9B8+0xa0) # $a0, 0x8012
/* AE4AEC 8006D94C 24060006 */ li $a2, 6
/* AE4AF0 8006D950 2484FA58 */ addiu $a0, %lo(D_8011F9B8+0xa0) # addiu $a0, $a0, -0x5a8
/* AE4AF4 8006D954 2508F9B8 */ addiu $t0, %lo(D_8011F9B8) # addiu $t0, $t0, -0x648
/* AE4AF8 8006D958 862500A4 */ lh $a1, 0xa4($s1)
/* AE4AFC 8006D95C 850A0000 */ lh $t2, ($t0)
.L8006D960:
/* AE4B00 8006D960 54AA00BA */ bnel $a1, $t2, .L8006DC4C
/* AE4B04 8006D964 25080014 */ addiu $t0, $t0, 0x14
/* AE4B08 8006D968 8D230008 */ lw $v1, 8($t1)
/* AE4B0C 8006D96C 8D0B0004 */ lw $t3, 4($t0)
/* AE4B10 8006D970 546B00B6 */ bnel $v1, $t3, .L8006DC4C
/* AE4B14 8006D974 25080014 */ addiu $t0, $t0, 0x14
/* AE4B18 8006D978 85020010 */ lh $v0, 0x10($t0)
/* AE4B1C 8006D97C 24010007 */ li $at, 7
/* AE4B20 8006D980 1441003C */ bne $v0, $at, .L8006DA74
/* AE4B24 8006D984 24010063 */ li $at, 99
/* AE4B28 8006D988 14A10013 */ bne $a1, $at, .L8006D9D8
/* AE4B2C 8006D98C 3401FFF1 */ li $at, 65521
/* AE4B30 8006D990 54610012 */ bnel $v1, $at, .L8006D9DC
/* AE4B34 8006D994 850B000A */ lh $t3, 0xa($t0)
/* AE4B38 8006D998 C6060024 */ lwc1 $f6, 0x24($s0)
/* AE4B3C 8006D99C 85020010 */ lh $v0, 0x10($t0)
/* AE4B40 8006D9A0 4600320D */ trunc.w.s $f8, $f6
/* AE4B44 8006D9A4 440D4000 */ mfc1 $t5, $f8
/* AE4B48 8006D9A8 00000000 */ nop
/* AE4B4C 8006D9AC A50D0008 */ sh $t5, 8($t0)
/* AE4B50 8006D9B0 C60A0028 */ lwc1 $f10, 0x28($s0)
/* AE4B54 8006D9B4 4600540D */ trunc.w.s $f16, $f10
/* AE4B58 8006D9B8 440F8000 */ mfc1 $t7, $f16
/* AE4B5C 8006D9BC 00000000 */ nop
/* AE4B60 8006D9C0 A50F000A */ sh $t7, 0xa($t0)
/* AE4B64 8006D9C4 C612002C */ lwc1 $f18, 0x2c($s0)
/* AE4B68 8006D9C8 4600910D */ trunc.w.s $f4, $f18
/* AE4B6C 8006D9CC 44192000 */ mfc1 $t9, $f4
/* AE4B70 8006D9D0 00000000 */ nop
/* AE4B74 8006D9D4 A519000C */ sh $t9, 0xc($t0)
.L8006D9D8:
/* AE4B78 8006D9D8 850B000A */ lh $t3, 0xa($t0)
.L8006D9DC:
/* AE4B7C 8006D9DC 850C000C */ lh $t4, 0xc($t0)
/* AE4B80 8006D9E0 850A0008 */ lh $t2, 8($t0)
/* AE4B84 8006D9E4 448B4000 */ mtc1 $t3, $f8
/* AE4B88 8006D9E8 448C8000 */ mtc1 $t4, $f16
/* AE4B8C 8006D9EC 448A3000 */ mtc1 $t2, $f6
/* AE4B90 8006D9F0 468042A0 */ cvt.s.w $f10, $f8
/* AE4B94 8006D9F4 AFA00018 */ sw $zero, 0x18($sp)
/* AE4B98 8006D9F8 26241C24 */ addiu $a0, $s1, 0x1c24
/* AE4B9C 8006D9FC 02202825 */ move $a1, $s1
/* AE4BA0 8006DA00 24060014 */ li $a2, 20
/* AE4BA4 8006DA04 468084A0 */ cvt.s.w $f18, $f16
/* AE4BA8 8006DA08 E7AA0010 */ swc1 $f10, 0x10($sp)
/* AE4BAC 8006DA0C 468031A0 */ cvt.s.w $f6, $f6
/* AE4BB0 8006DA10 E7B20014 */ swc1 $f18, 0x14($sp)
/* AE4BB4 8006DA14 860D0032 */ lh $t5, 0x32($s0)
/* AE4BB8 8006DA18 AFA20024 */ sw $v0, 0x24($sp)
/* AE4BBC 8006DA1C AFA00020 */ sw $zero, 0x20($sp)
/* AE4BC0 8006DA20 AFAD001C */ sw $t5, 0x1c($sp)
/* AE4BC4 8006DA24 44073000 */ mfc1 $a3, $f6
/* AE4BC8 8006DA28 0C00C7D4 */ jal Actor_Spawn
/* AE4BCC 8006DA2C 00000000 */ nop
/* AE4BD0 8006DA30 14400007 */ bnez $v0, .L8006DA50
/* AE4BD4 8006DA34 AE020440 */ sw $v0, 0x440($s0)
/* AE4BD8 8006DA38 3C048014 */ lui $a0, %hi(D_8013BC98) # $a0, 0x8014
/* AE4BDC 8006DA3C 3C058014 */ lui $a1, %hi(D_8013BCB4) # $a1, 0x8014
/* AE4BE0 8006DA40 24A5BCB4 */ addiu $a1, %lo(D_8013BCB4) # addiu $a1, $a1, -0x434c
/* AE4BE4 8006DA44 2484BC98 */ addiu $a0, %lo(D_8013BC98) # addiu $a0, $a0, -0x4368
/* AE4BE8 8006DA48 0C0007FC */ jal __assert
/* AE4BEC 8006DA4C 24060274 */ li $a2, 628
.L8006DA50:
/* AE4BF0 8006DA50 02202025 */ move $a0, $s1
/* AE4BF4 8006DA54 02002825 */ move $a1, $s0
/* AE4BF8 8006DA58 0C00B7B3 */ jal func_8002DECC
/* AE4BFC 8006DA5C 8E060440 */ lw $a2, 0x440($s0)
/* AE4C00 8006DA60 02202025 */ move $a0, $s1
/* AE4C04 8006DA64 0C00B79D */ jal func_8002DE74
/* AE4C08 8006DA68 02002825 */ move $a1, $s0
/* AE4C0C 8006DA6C 1000007A */ b .L8006DC58
/* AE4C10 8006DA70 8FBF0034 */ lw $ra, 0x34($sp)
.L8006DA74:
/* AE4C14 8006DA74 24010005 */ li $at, 5
/* AE4C18 8006DA78 50410006 */ beql $v0, $at, .L8006DA94
/* AE4C1C 8006DA7C 952E13FA */ lhu $t6, 0x13fa($t1)
/* AE4C20 8006DA80 10C20003 */ beq $a2, $v0, .L8006DA90
/* AE4C24 8006DA84 24010008 */ li $at, 8
/* AE4C28 8006DA88 54410059 */ bnel $v0, $at, .L8006DBF0
/* AE4C2C 8006DA8C 850B0008 */ lh $t3, 8($t0)
.L8006DA90:
/* AE4C30 8006DA90 952E13FA */ lhu $t6, 0x13fa($t1)
.L8006DA94:
/* AE4C34 8006DA94 00001825 */ move $v1, $zero
/* AE4C38 8006DA98 31CF0010 */ andi $t7, $t6, 0x10
/* AE4C3C 8006DA9C 000FC103 */ sra $t8, $t7, 4
/* AE4C40 8006DAA0 53000005 */ beql $t8, $zero, .L8006DAB8
/* AE4C44 8006DAA4 85190008 */ lh $t9, 8($t0)
/* AE4C48 8006DAA8 54C20003 */ bnel $a2, $v0, .L8006DAB8
/* AE4C4C 8006DAAC 85190008 */ lh $t9, 8($t0)
/* AE4C50 8006DAB0 34038000 */ li $v1, 32768
/* AE4C54 8006DAB4 85190008 */ lh $t9, 8($t0)
.L8006DAB8:
/* AE4C58 8006DAB8 850A000A */ lh $t2, 0xa($t0)
/* AE4C5C 8006DABC 850B000C */ lh $t3, 0xc($t0)
/* AE4C60 8006DAC0 44992000 */ mtc1 $t9, $f4
/* AE4C64 8006DAC4 448A3000 */ mtc1 $t2, $f6
/* AE4C68 8006DAC8 448B5000 */ mtc1 $t3, $f10
/* AE4C6C 8006DACC 46802120 */ cvt.s.w $f4, $f4
/* AE4C70 8006DAD0 850C000E */ lh $t4, 0xe($t0)
/* AE4C74 8006DAD4 00436825 */ or $t5, $v0, $v1
/* AE4C78 8006DAD8 AFAD0024 */ sw $t5, 0x24($sp)
/* AE4C7C 8006DADC 26241C24 */ addiu $a0, $s1, 0x1c24
/* AE4C80 8006DAE0 46803220 */ cvt.s.w $f8, $f6
/* AE4C84 8006DAE4 44072000 */ mfc1 $a3, $f4
/* AE4C88 8006DAE8 02202825 */ move $a1, $s1
/* AE4C8C 8006DAEC 24060014 */ li $a2, 20
/* AE4C90 8006DAF0 AFA00018 */ sw $zero, 0x18($sp)
/* AE4C94 8006DAF4 46805420 */ cvt.s.w $f16, $f10
/* AE4C98 8006DAF8 E7A80010 */ swc1 $f8, 0x10($sp)
/* AE4C9C 8006DAFC AFA00020 */ sw $zero, 0x20($sp)
/* AE4CA0 8006DB00 AFA80044 */ sw $t0, 0x44($sp)
/* AE4CA4 8006DB04 AFAC001C */ sw $t4, 0x1c($sp)
/* AE4CA8 8006DB08 0C00C7D4 */ jal Actor_Spawn
/* AE4CAC 8006DB0C E7B00014 */ swc1 $f16, 0x14($sp)
/* AE4CB0 8006DB10 8FA80044 */ lw $t0, 0x44($sp)
/* AE4CB4 8006DB14 14400009 */ bnez $v0, .L8006DB3C
/* AE4CB8 8006DB18 AE020440 */ sw $v0, 0x440($s0)
/* AE4CBC 8006DB1C 3C048014 */ lui $a0, %hi(D_8013BCC4) # $a0, 0x8014
/* AE4CC0 8006DB20 3C058014 */ lui $a1, %hi(D_8013BCE0) # $a1, 0x8014
/* AE4CC4 8006DB24 24A5BCE0 */ addiu $a1, %lo(D_8013BCE0) # addiu $a1, $a1, -0x4320
/* AE4CC8 8006DB28 2484BCC4 */ addiu $a0, %lo(D_8013BCC4) # addiu $a0, $a0, -0x433c
/* AE4CCC 8006DB2C 2406029B */ li $a2, 667
/* AE4CD0 8006DB30 0C0007FC */ jal __assert
/* AE4CD4 8006DB34 AFA80044 */ sw $t0, 0x44($sp)
/* AE4CD8 8006DB38 8FA80044 */ lw $t0, 0x44($sp)
.L8006DB3C:
/* AE4CDC 8006DB3C 850E0008 */ lh $t6, 8($t0)
/* AE4CE0 8006DB40 02202025 */ move $a0, $s1
/* AE4CE4 8006DB44 02002825 */ move $a1, $s0
/* AE4CE8 8006DB48 448E9000 */ mtc1 $t6, $f18
/* AE4CEC 8006DB4C 8E060440 */ lw $a2, 0x440($s0)
/* AE4CF0 8006DB50 46809120 */ cvt.s.w $f4, $f18
/* AE4CF4 8006DB54 E6040024 */ swc1 $f4, 0x24($s0)
/* AE4CF8 8006DB58 850F000A */ lh $t7, 0xa($t0)
/* AE4CFC 8006DB5C 448F3000 */ mtc1 $t7, $f6
/* AE4D00 8006DB60 00000000 */ nop
/* AE4D04 8006DB64 46803220 */ cvt.s.w $f8, $f6
/* AE4D08 8006DB68 E6080028 */ swc1 $f8, 0x28($s0)
/* AE4D0C 8006DB6C 8518000C */ lh $t8, 0xc($t0)
/* AE4D10 8006DB70 A60000B8 */ sh $zero, 0xb8($s0)
/* AE4D14 8006DB74 861900B8 */ lh $t9, 0xb8($s0)
/* AE4D18 8006DB78 44985000 */ mtc1 $t8, $f10
/* AE4D1C 8006DB7C A61900B4 */ sh $t9, 0xb4($s0)
/* AE4D20 8006DB80 46805420 */ cvt.s.w $f16, $f10
/* AE4D24 8006DB84 E610002C */ swc1 $f16, 0x2c($s0)
/* AE4D28 8006DB88 850A000E */ lh $t2, 0xe($t0)
/* AE4D2C 8006DB8C 0C00B7B3 */ jal func_8002DECC
/* AE4D30 8006DB90 A60A00B6 */ sh $t2, 0xb6($s0)
/* AE4D34 8006DB94 02202025 */ move $a0, $s1
/* AE4D38 8006DB98 0C00B79D */ jal func_8002DE74
/* AE4D3C 8006DB9C 02002825 */ move $a1, $s0
/* AE4D40 8006DBA0 3C014348 */ li $at, 0x43480000 # 0.000000
/* AE4D44 8006DBA4 44812000 */ mtc1 $at, $f4
/* AE4D48 8006DBA8 C6120024 */ lwc1 $f18, 0x24($s0)
/* AE4D4C 8006DBAC 3C0142C8 */ li $at, 0x42C80000 # 0.000000
/* AE4D50 8006DBB0 44815000 */ mtc1 $at, $f10
/* AE4D54 8006DBB4 46049181 */ sub.s $f6, $f18, $f4
/* AE4D58 8006DBB8 02202025 */ move $a0, $s1
/* AE4D5C 8006DBBC 26060024 */ addiu $a2, $s0, 0x24
/* AE4D60 8006DBC0 27A70054 */ addiu $a3, $sp, 0x54
/* AE4D64 8006DBC4 E7A60054 */ swc1 $f6, 0x54($sp)
/* AE4D68 8006DBC8 C6080028 */ lwc1 $f8, 0x28($s0)
/* AE4D6C 8006DBCC 460A4400 */ add.s $f16, $f8, $f10
/* AE4D70 8006DBD0 E7B00058 */ swc1 $f16, 0x58($sp)
/* AE4D74 8006DBD4 C612002C */ lwc1 $f18, 0x2c($s0)
/* AE4D78 8006DBD8 E7B2005C */ swc1 $f18, 0x5c($sp)
/* AE4D7C 8006DBDC 0C030136 */ jal func_800C04D8
/* AE4D80 8006DBE0 862507A0 */ lh $a1, 0x7a0($s1)
/* AE4D84 8006DBE4 1000001C */ b .L8006DC58
/* AE4D88 8006DBE8 8FBF0034 */ lw $ra, 0x34($sp)
/* AE4D8C 8006DBEC 850B0008 */ lh $t3, 8($t0)
.L8006DBF0:
/* AE4D90 8006DBF0 850C000A */ lh $t4, 0xa($t0)
/* AE4D94 8006DBF4 850D000C */ lh $t5, 0xc($t0)
/* AE4D98 8006DBF8 448B2000 */ mtc1 $t3, $f4
/* AE4D9C 8006DBFC 448C3000 */ mtc1 $t4, $f6
/* AE4DA0 8006DC00 448D5000 */ mtc1 $t5, $f10
/* AE4DA4 8006DC04 46802120 */ cvt.s.w $f4, $f4
/* AE4DA8 8006DC08 850E000E */ lh $t6, 0xe($t0)
/* AE4DAC 8006DC0C 26241C24 */ addiu $a0, $s1, 0x1c24
/* AE4DB0 8006DC10 02202825 */ move $a1, $s1
/* AE4DB4 8006DC14 24060014 */ li $a2, 20
/* AE4DB8 8006DC18 46803220 */ cvt.s.w $f8, $f6
/* AE4DBC 8006DC1C 44072000 */ mfc1 $a3, $f4
/* AE4DC0 8006DC20 AFA00018 */ sw $zero, 0x18($sp)
/* AE4DC4 8006DC24 AFA00020 */ sw $zero, 0x20($sp)
/* AE4DC8 8006DC28 AFA20024 */ sw $v0, 0x24($sp)
/* AE4DCC 8006DC2C 46805420 */ cvt.s.w $f16, $f10
/* AE4DD0 8006DC30 E7A80010 */ swc1 $f8, 0x10($sp)
/* AE4DD4 8006DC34 AFAE001C */ sw $t6, 0x1c($sp)
/* AE4DD8 8006DC38 0C00C7D4 */ jal Actor_Spawn
/* AE4DDC 8006DC3C E7B00014 */ swc1 $f16, 0x14($sp)
/* AE4DE0 8006DC40 10000005 */ b .L8006DC58
/* AE4DE4 8006DC44 8FBF0034 */ lw $ra, 0x34($sp)
/* AE4DE8 8006DC48 25080014 */ addiu $t0, $t0, 0x14
.L8006DC4C:
/* AE4DEC 8006DC4C 5504FF44 */ bnel $t0, $a0, .L8006D960
/* AE4DF0 8006DC50 850A0000 */ lh $t2, ($t0)
.L8006DC54:
/* AE4DF4 8006DC54 8FBF0034 */ lw $ra, 0x34($sp)
.L8006DC58:
/* AE4DF8 8006DC58 8FB0002C */ lw $s0, 0x2c($sp)
/* AE4DFC 8006DC5C 8FB10030 */ lw $s1, 0x30($sp)
/* AE4E00 8006DC60 03E00008 */ jr $ra
/* AE4E04 8006DC64 27BD0088 */ addiu $sp, $sp, 0x88

View file

@ -1,333 +0,0 @@
.rdata
glabel D_8013D918
.asciz "../z_map_exp.c"
.balign 4
glabel D_8013D928
.asciz "../z_map_exp.c"
.balign 4
glabel D_8013D938
.asciz "../z_map_exp.c"
.balign 4
glabel D_8013D948
.asciz "../z_map_exp.c"
.balign 4
.late_rodata
glabel D_8013DC0C
.float 0.4
glabel D_8013DC10
.float -1.6
.text
glabel Minimap_DrawCompassIcons
/* AF83E0 80081240 27BDFF90 */ addiu $sp, $sp, -0x70
/* AF83E4 80081244 AFBF001C */ sw $ra, 0x1c($sp)
/* AF83E8 80081248 AFB00018 */ sw $s0, 0x18($sp)
/* AF83EC 8008124C AFA40070 */ sw $a0, 0x70($sp)
/* AF83F0 80081250 8C8F1C44 */ lw $t7, 0x1c44($a0)
/* AF83F4 80081254 3C068014 */ lui $a2, %hi(D_8013D918) # $a2, 0x8014
/* AF83F8 80081258 24C6D918 */ addiu $a2, %lo(D_8013D918) # addiu $a2, $a2, -0x26e8
/* AF83FC 8008125C AFAF0068 */ sw $t7, 0x68($sp)
/* AF8400 80081260 8C850000 */ lw $a1, ($a0)
/* AF8404 80081264 27A40050 */ addiu $a0, $sp, 0x50
/* AF8408 80081268 24070235 */ li $a3, 565
/* AF840C 8008126C 0C031AB1 */ jal Graph_OpenDisps
/* AF8410 80081270 00A08025 */ move $s0, $a1
/* AF8414 80081274 8FA20070 */ lw $v0, 0x70($sp)
/* AF8418 80081278 3C180001 */ lui $t8, 1
/* AF841C 8008127C 0302C021 */ addu $t8, $t8, $v0
/* AF8420 80081280 97180744 */ lhu $t8, 0x744($t8)
/* AF8424 80081284 2B0100AA */ slti $at, $t8, 0xaa
/* AF8428 80081288 1420010A */ bnez $at, .L800816B4
/* AF842C 8008128C 00000000 */ nop
/* AF8430 80081290 0C025285 */ jal func_80094A14
/* AF8434 80081294 8C440000 */ lw $a0, ($v0)
/* AF8438 80081298 8E0202B0 */ lw $v0, 0x2b0($s0)
/* AF843C 8008129C 3C08DA38 */ lui $t0, (0xDA380003 >> 16) # lui $t0, 0xda38
/* AF8440 800812A0 3C098013 */ lui $t1, %hi(gMtxClear) # $t1, 0x8013
/* AF8444 800812A4 24590008 */ addiu $t9, $v0, 8
/* AF8448 800812A8 AE1902B0 */ sw $t9, 0x2b0($s0)
/* AF844C 800812AC 2529DB20 */ addiu $t1, %lo(gMtxClear) # addiu $t1, $t1, -0x24e0
/* AF8450 800812B0 35080003 */ ori $t0, (0xDA380003 & 0xFFFF) # ori $t0, $t0, 3
/* AF8454 800812B4 AC480000 */ sw $t0, ($v0)
/* AF8458 800812B8 AC490004 */ sw $t1, 4($v0)
/* AF845C 800812BC 8E0202B0 */ lw $v0, 0x2b0($s0)
/* AF8460 800812C0 3C0BFC30 */ lui $t3, (0xFC309661 >> 16) # lui $t3, 0xfc30
/* AF8464 800812C4 3C0C552E */ lui $t4, (0x552EFF7F >> 16) # lui $t4, 0x552e
/* AF8468 800812C8 244A0008 */ addiu $t2, $v0, 8
/* AF846C 800812CC AE0A02B0 */ sw $t2, 0x2b0($s0)
/* AF8470 800812D0 358CFF7F */ ori $t4, (0x552EFF7F & 0xFFFF) # ori $t4, $t4, 0xff7f
/* AF8474 800812D4 356B9661 */ ori $t3, (0xFC309661 & 0xFFFF) # ori $t3, $t3, 0x9661
/* AF8478 800812D8 AC4B0000 */ sw $t3, ($v0)
/* AF847C 800812DC AC4C0004 */ sw $t4, 4($v0)
/* AF8480 800812E0 8E0202B0 */ lw $v0, 0x2b0($s0)
/* AF8484 800812E4 3C0FFB00 */ lui $t7, 0xfb00
/* AF8488 800812E8 240E00FF */ li $t6, 255
/* AF848C 800812EC 244D0008 */ addiu $t5, $v0, 8
/* AF8490 800812F0 AE0D02B0 */ sw $t5, 0x2b0($s0)
/* AF8494 800812F4 AC4E0004 */ sw $t6, 4($v0)
/* AF8498 800812F8 AC4F0000 */ sw $t7, ($v0)
/* AF849C 800812FC 8E0202B0 */ lw $v0, 0x2b0($s0)
/* AF84A0 80081300 3C08FFFD */ lui $t0, (0xFFFDF6FB >> 16) # lui $t0, 0xfffd
/* AF84A4 80081304 3C19FCFF */ lui $t9, (0xFCFFFFFF >> 16) # lui $t9, 0xfcff
/* AF84A8 80081308 24580008 */ addiu $t8, $v0, 8
/* AF84AC 8008130C AE1802B0 */ sw $t8, 0x2b0($s0)
/* AF84B0 80081310 3739FFFF */ ori $t9, (0xFCFFFFFF & 0xFFFF) # ori $t9, $t9, 0xffff
/* AF84B4 80081314 3508F6FB */ ori $t0, (0xFFFDF6FB & 0xFFFF) # ori $t0, $t0, 0xf6fb
/* AF84B8 80081318 AC480004 */ sw $t0, 4($v0)
/* AF84BC 8008131C AC590000 */ sw $t9, ($v0)
/* AF84C0 80081320 8FA50068 */ lw $a1, 0x68($sp)
/* AF84C4 80081324 3C038016 */ lui $v1, %hi(gGameInfo) # $v1, 0x8016
/* AF84C8 80081328 8C63FA90 */ lw $v1, %lo(gGameInfo)($v1)
/* AF84CC 8008132C C4A40024 */ lwc1 $f4, 0x24($a1)
/* AF84D0 80081330 C4A8002C */ lwc1 $f8, 0x2c($a1)
/* AF84D4 80081334 846B0F30 */ lh $t3, 0xf30($v1)
/* AF84D8 80081338 4600218D */ trunc.w.s $f6, $f4
/* AF84DC 8008133C 3C014120 */ li $at, 0x41200000 # 0.000000
/* AF84E0 80081340 44810000 */ mtc1 $at, $f0
/* AF84E4 80081344 4600428D */ trunc.w.s $f10, $f8
/* AF84E8 80081348 44023000 */ mfc1 $v0, $f6
/* AF84EC 8008134C 846C0F32 */ lh $t4, 0xf32($v1)
/* AF84F0 80081350 846D0F34 */ lh $t5, 0xf34($v1)
/* AF84F4 80081354 00021400 */ sll $v0, $v0, 0x10
/* AF84F8 80081358 00021403 */ sra $v0, $v0, 0x10
/* AF84FC 8008135C 004B001A */ div $zero, $v0, $t3
/* AF8500 80081360 44045000 */ mfc1 $a0, $f10
/* AF8504 80081364 846E0F36 */ lh $t6, 0xf36($v1)
/* AF8508 80081368 24060000 */ li $a2, 0
/* AF850C 8008136C 00042400 */ sll $a0, $a0, 0x10
/* AF8510 80081370 00042403 */ sra $a0, $a0, 0x10
/* AF8514 80081374 15600002 */ bnez $t3, .L80081380
/* AF8518 80081378 00000000 */ nop
/* AF851C 8008137C 0007000D */ break 7
.L80081380:
/* AF8520 80081380 2401FFFF */ li $at, -1
/* AF8524 80081384 15610004 */ bne $t3, $at, .L80081398
/* AF8528 80081388 3C018000 */ lui $at, 0x8000
/* AF852C 8008138C 14410002 */ bne $v0, $at, .L80081398
/* AF8530 80081390 00000000 */ nop
/* AF8534 80081394 0006000D */ break 6
.L80081398:
/* AF8538 80081398 00001012 */ mflo $v0
/* AF853C 8008139C 00021400 */ sll $v0, $v0, 0x10
/* AF8540 800813A0 00021403 */ sra $v0, $v0, 0x10
/* AF8544 800813A4 008C001A */ div $zero, $a0, $t4
/* AF8548 800813A8 15800002 */ bnez $t4, .L800813B4
/* AF854C 800813AC 00000000 */ nop
/* AF8550 800813B0 0007000D */ break 7
.L800813B4:
/* AF8554 800813B4 2401FFFF */ li $at, -1
/* AF8558 800813B8 15810004 */ bne $t4, $at, .L800813CC
/* AF855C 800813BC 3C018000 */ li $at, 0x80000000 # 0.000000
/* AF8560 800813C0 14810002 */ bne $a0, $at, .L800813CC
/* AF8564 800813C4 00000000 */ nop
/* AF8568 800813C8 0006000D */ break 6
.L800813CC:
/* AF856C 800813CC 00002012 */ mflo $a0
/* AF8570 800813D0 00042400 */ sll $a0, $a0, 0x10
/* AF8574 800813D4 00042403 */ sra $a0, $a0, 0x10
/* AF8578 800813D8 01A27821 */ addu $t7, $t5, $v0
/* AF857C 800813DC 01C4C023 */ subu $t8, $t6, $a0
/* AF8580 800813E0 44982000 */ mtc1 $t8, $f4
/* AF8584 800813E4 448F8000 */ mtc1 $t7, $f16
/* AF8588 800813E8 00003825 */ move $a3, $zero
/* AF858C 800813EC 468021A0 */ cvt.s.w $f6, $f4
/* AF8590 800813F0 468084A0 */ cvt.s.w $f18, $f16
/* AF8594 800813F4 46003383 */ div.s $f14, $f6, $f0
/* AF8598 800813F8 0C034261 */ jal Matrix_Translate
/* AF859C 800813FC 46009303 */ div.s $f12, $f18, $f0
/* AF85A0 80081400 3C018014 */ lui $at, %hi(D_8013DC0C)
/* AF85A4 80081404 C42CDC0C */ lwc1 $f12, %lo(D_8013DC0C)($at)
/* AF85A8 80081408 24070001 */ li $a3, 1
/* AF85AC 8008140C 44066000 */ mfc1 $a2, $f12
/* AF85B0 80081410 0C0342A3 */ jal Matrix_Scale
/* AF85B4 80081414 46006386 */ mov.s $f14, $f12
/* AF85B8 80081418 3C018014 */ lui $at, %hi(D_8013DC10)
/* AF85BC 8008141C C42CDC10 */ lwc1 $f12, %lo(D_8013DC10)($at)
/* AF85C0 80081420 0C0342DC */ jal Matrix_RotateX
/* AF85C4 80081424 24050001 */ li $a1, 1
/* AF85C8 80081428 8FB90068 */ lw $t9, 0x68($sp)
/* AF85CC 8008142C 24097FFF */ li $t1, 32767
/* AF85D0 80081430 24050001 */ li $a1, 1
/* AF85D4 80081434 872800B6 */ lh $t0, 0xb6($t9)
/* AF85D8 80081438 01281023 */ subu $v0, $t1, $t0
/* AF85DC 8008143C 04410002 */ bgez $v0, .L80081448
/* AF85E0 80081440 00400821 */ addu $at, $v0, $zero
/* AF85E4 80081444 244103FF */ addiu $at, $v0, 0x3ff
.L80081448:
/* AF85E8 80081448 00011283 */ sra $v0, $at, 0xa
/* AF85EC 8008144C 00021400 */ sll $v0, $v0, 0x10
/* AF85F0 80081450 00021403 */ sra $v0, $v0, 0x10
/* AF85F4 80081454 44824000 */ mtc1 $v0, $f8
/* AF85F8 80081458 3C014120 */ li $at, 0x41200000 # 0.000000
/* AF85FC 8008145C 44818000 */ mtc1 $at, $f16
/* AF8600 80081460 468042A0 */ cvt.s.w $f10, $f8
/* AF8604 80081464 0C034348 */ jal Matrix_RotateY
/* AF8608 80081468 46105303 */ div.s $f12, $f10, $f16
/* AF860C 8008146C 8E0202B0 */ lw $v0, 0x2b0($s0)
/* AF8610 80081470 3C0BDA38 */ lui $t3, (0xDA380003 >> 16) # lui $t3, 0xda38
/* AF8614 80081474 356B0003 */ ori $t3, (0xDA380003 & 0xFFFF) # ori $t3, $t3, 3
/* AF8618 80081478 244A0008 */ addiu $t2, $v0, 8
/* AF861C 8008147C AE0A02B0 */ sw $t2, 0x2b0($s0)
/* AF8620 80081480 AC4B0000 */ sw $t3, ($v0)
/* AF8624 80081484 8FAC0070 */ lw $t4, 0x70($sp)
/* AF8628 80081488 3C058014 */ lui $a1, %hi(D_8013D928) # $a1, 0x8014
/* AF862C 8008148C 24A5D928 */ addiu $a1, %lo(D_8013D928) # addiu $a1, $a1, -0x26d8
/* AF8630 80081490 8D840000 */ lw $a0, ($t4)
/* AF8634 80081494 24060249 */ li $a2, 585
/* AF8638 80081498 0C0346A2 */ jal Matrix_NewMtx
/* AF863C 8008149C AFA2003C */ sw $v0, 0x3c($sp)
/* AF8640 800814A0 8FA3003C */ lw $v1, 0x3c($sp)
/* AF8644 800814A4 3C0EC8FF */ lui $t6, (0xC8FF00FF >> 16) # lui $t6, 0xc8ff
/* AF8648 800814A8 35CE00FF */ ori $t6, (0xC8FF00FF & 0xFFFF) # ori $t6, $t6, 0xff
/* AF864C 800814AC AC620004 */ sw $v0, 4($v1)
/* AF8650 800814B0 8E0202B0 */ lw $v0, 0x2b0($s0)
/* AF8654 800814B4 3C0FFA00 */ lui $t7, 0xfa00
/* AF8658 800814B8 3C050401 */ lui $a1, %hi(D_0400C820) # $a1, 0x401
/* AF865C 800814BC 244D0008 */ addiu $t5, $v0, 8
/* AF8660 800814C0 AE0D02B0 */ sw $t5, 0x2b0($s0)
/* AF8664 800814C4 AC4E0004 */ sw $t6, 4($v0)
/* AF8668 800814C8 AC4F0000 */ sw $t7, ($v0)
/* AF866C 800814CC 8E0202B0 */ lw $v0, 0x2b0($s0)
/* AF8670 800814D0 24A5C820 */ addiu $a1, %lo(D_0400C820) # addiu $a1, $a1, -0x37e0
/* AF8674 800814D4 3C19DE00 */ lui $t9, 0xde00
/* AF8678 800814D8 24580008 */ addiu $t8, $v0, 8
/* AF867C 800814DC AE1802B0 */ sw $t8, 0x2b0($s0)
/* AF8680 800814E0 AC450004 */ sw $a1, 4($v0)
/* AF8684 800814E4 AC590000 */ sw $t9, ($v0)
/* AF8688 800814E8 3C028012 */ lui $v0, %hi(sPlayerInitialPosX) # $v0, 0x8012
/* AF868C 800814EC 84423A50 */ lh $v0, %lo(sPlayerInitialPosX)($v0)
/* AF8690 800814F0 3C038016 */ lui $v1, %hi(gGameInfo) # $v1, 0x8016
/* AF8694 800814F4 8C63FA90 */ lw $v1, %lo(gGameInfo)($v1)
/* AF8698 800814F8 3C048012 */ lui $a0, %hi(sPlayerInitialPosZ) # $a0, 0x8012
/* AF869C 800814FC 84843A54 */ lh $a0, %lo(sPlayerInitialPosZ)($a0)
/* AF86A0 80081500 84690F30 */ lh $t1, 0xf30($v1)
/* AF86A4 80081504 3C014120 */ li $at, 0x41200000 # 0.000000
/* AF86A8 80081508 44810000 */ mtc1 $at, $f0
/* AF86AC 8008150C 0049001A */ div $zero, $v0, $t1
/* AF86B0 80081510 15200002 */ bnez $t1, .L8008151C
/* AF86B4 80081514 00000000 */ nop
/* AF86B8 80081518 0007000D */ break 7
.L8008151C:
/* AF86BC 8008151C 2401FFFF */ li $at, -1
/* AF86C0 80081520 15210004 */ bne $t1, $at, .L80081534
/* AF86C4 80081524 3C018000 */ lui $at, 0x8000
/* AF86C8 80081528 14410002 */ bne $v0, $at, .L80081534
/* AF86CC 8008152C 00000000 */ nop
/* AF86D0 80081530 0006000D */ break 6
.L80081534:
/* AF86D4 80081534 84680F32 */ lh $t0, 0xf32($v1)
/* AF86D8 80081538 00001012 */ mflo $v0
/* AF86DC 8008153C 846A0F34 */ lh $t2, 0xf34($v1)
/* AF86E0 80081540 846C0F36 */ lh $t4, 0xf36($v1)
/* AF86E4 80081544 0088001A */ div $zero, $a0, $t0
/* AF86E8 80081548 00021400 */ sll $v0, $v0, 0x10
/* AF86EC 8008154C 00021403 */ sra $v0, $v0, 0x10
/* AF86F0 80081550 15000002 */ bnez $t0, .L8008155C
/* AF86F4 80081554 00000000 */ nop
/* AF86F8 80081558 0007000D */ break 7
.L8008155C:
/* AF86FC 8008155C 2401FFFF */ li $at, -1
/* AF8700 80081560 15010004 */ bne $t0, $at, .L80081574
/* AF8704 80081564 3C018000 */ li $at, 0x80000000 # 0.000000
/* AF8708 80081568 14810002 */ bne $a0, $at, .L80081574
/* AF870C 8008156C 00000000 */ nop
/* AF8710 80081570 0006000D */ break 6
.L80081574:
/* AF8714 80081574 00002012 */ mflo $a0
/* AF8718 80081578 00042400 */ sll $a0, $a0, 0x10
/* AF871C 8008157C 00042403 */ sra $a0, $a0, 0x10
/* AF8720 80081580 01425821 */ addu $t3, $t2, $v0
/* AF8724 80081584 01846823 */ subu $t5, $t4, $a0
/* AF8728 80081588 448D3000 */ mtc1 $t5, $f6
/* AF872C 8008158C 448B9000 */ mtc1 $t3, $f18
/* AF8730 80081590 AFA50024 */ sw $a1, 0x24($sp)
/* AF8734 80081594 46803220 */ cvt.s.w $f8, $f6
/* AF8738 80081598 24060000 */ li $a2, 0
/* AF873C 8008159C 00003825 */ move $a3, $zero
/* AF8740 800815A0 46809120 */ cvt.s.w $f4, $f18
/* AF8744 800815A4 46004383 */ div.s $f14, $f8, $f0
/* AF8748 800815A8 0C034261 */ jal Matrix_Translate
/* AF874C 800815AC 46002303 */ div.s $f12, $f4, $f0
/* AF8750 800815B0 3C0F8016 */ lui $t7, %hi(gGameInfo) # $t7, 0x8016
/* AF8754 800815B4 8DEFFA90 */ lw $t7, %lo(gGameInfo)($t7)
/* AF8758 800815B8 3C0142C8 */ li $at, 0x42C80000 # 0.000000
/* AF875C 800815BC 44819000 */ mtc1 $at, $f18
/* AF8760 800815C0 85EE0F26 */ lh $t6, 0xf26($t7)
/* AF8764 800815C4 24070001 */ li $a3, 1
/* AF8768 800815C8 448E5000 */ mtc1 $t6, $f10
/* AF876C 800815CC 00000000 */ nop
/* AF8770 800815D0 46805420 */ cvt.s.w $f16, $f10
/* AF8774 800815D4 46128303 */ div.s $f12, $f16, $f18
/* AF8778 800815D8 44066000 */ mfc1 $a2, $f12
/* AF877C 800815DC 0C0342A3 */ jal Matrix_Scale
/* AF8780 800815E0 46006386 */ mov.s $f14, $f12
/* AF8784 800815E4 3C188016 */ lui $t8, %hi(gGameInfo) # $t8, 0x8016
/* AF8788 800815E8 8F18FA90 */ lw $t8, %lo(gGameInfo)($t8)
/* AF878C 800815EC 3C014120 */ li $at, 0x41200000 # 0.000000
/* AF8790 800815F0 44814000 */ mtc1 $at, $f8
/* AF8794 800815F4 87190F7C */ lh $t9, 0xf7c($t8)
/* AF8798 800815F8 24050001 */ li $a1, 1
/* AF879C 800815FC 44992000 */ mtc1 $t9, $f4
/* AF87A0 80081600 00000000 */ nop
/* AF87A4 80081604 468021A0 */ cvt.s.w $f6, $f4
/* AF87A8 80081608 0C0342DC */ jal Matrix_RotateX
/* AF87AC 8008160C 46083303 */ div.s $f12, $f6, $f8
/* AF87B0 80081610 3C098012 */ lui $t1, %hi(sPlayerInitialDirection) # $t1, 0x8012
/* AF87B4 80081614 85293A58 */ lh $t1, %lo(sPlayerInitialDirection)($t1)
/* AF87B8 80081618 3C014120 */ li $at, 0x41200000 # 0.000000
/* AF87BC 8008161C 44819000 */ mtc1 $at, $f18
/* AF87C0 80081620 44895000 */ mtc1 $t1, $f10
/* AF87C4 80081624 24050001 */ li $a1, 1
/* AF87C8 80081628 46805420 */ cvt.s.w $f16, $f10
/* AF87CC 8008162C 0C034348 */ jal Matrix_RotateY
/* AF87D0 80081630 46128303 */ div.s $f12, $f16, $f18
/* AF87D4 80081634 8E0202B0 */ lw $v0, 0x2b0($s0)
/* AF87D8 80081638 3C0ADA38 */ lui $t2, (0xDA380003 >> 16) # lui $t2, 0xda38
/* AF87DC 8008163C 354A0003 */ ori $t2, (0xDA380003 & 0xFFFF) # ori $t2, $t2, 3
/* AF87E0 80081640 24480008 */ addiu $t0, $v0, 8
/* AF87E4 80081644 AE0802B0 */ sw $t0, 0x2b0($s0)
/* AF87E8 80081648 AC4A0000 */ sw $t2, ($v0)
/* AF87EC 8008164C 8FAB0070 */ lw $t3, 0x70($sp)
/* AF87F0 80081650 3C058014 */ lui $a1, %hi(D_8013D938) # $a1, 0x8014
/* AF87F4 80081654 24A5D938 */ addiu $a1, %lo(D_8013D938) # addiu $a1, $a1, -0x26c8
/* AF87F8 80081658 8D640000 */ lw $a0, ($t3)
/* AF87FC 8008165C 2406025B */ li $a2, 603
/* AF8800 80081660 0C0346A2 */ jal Matrix_NewMtx
/* AF8804 80081664 AFA20030 */ sw $v0, 0x30($sp)
/* AF8808 80081668 8FA30030 */ lw $v1, 0x30($sp)
/* AF880C 8008166C 3C0DFA00 */ lui $t5, (0xFA0000FF >> 16) # lui $t5, 0xfa00
/* AF8810 80081670 3C0FC800 */ lui $t7, (0xC80000FF >> 16) # lui $t7, 0xc800
/* AF8814 80081674 AC620004 */ sw $v0, 4($v1)
/* AF8818 80081678 8E0202B0 */ lw $v0, 0x2b0($s0)
/* AF881C 8008167C 35EF00FF */ ori $t7, (0xC80000FF & 0xFFFF) # ori $t7, $t7, 0xff
/* AF8820 80081680 35AD00FF */ ori $t5, (0xFA0000FF & 0xFFFF) # ori $t5, $t5, 0xff
/* AF8824 80081684 244C0008 */ addiu $t4, $v0, 8
/* AF8828 80081688 AE0C02B0 */ sw $t4, 0x2b0($s0)
/* AF882C 8008168C AC4F0004 */ sw $t7, 4($v0)
/* AF8830 80081690 AC4D0000 */ sw $t5, ($v0)
/* AF8834 80081694 8E0202B0 */ lw $v0, 0x2b0($s0)
/* AF8838 80081698 3C18DE00 */ lui $t8, 0xde00
/* AF883C 8008169C 244E0008 */ addiu $t6, $v0, 8
/* AF8840 800816A0 AE0E02B0 */ sw $t6, 0x2b0($s0)
/* AF8844 800816A4 AC580000 */ sw $t8, ($v0)
/* AF8848 800816A8 8FB90024 */ lw $t9, 0x24($sp)
/* AF884C 800816AC AC590004 */ sw $t9, 4($v0)
/* AF8850 800816B0 8FA20070 */ lw $v0, 0x70($sp)
.L800816B4:
/* AF8854 800816B4 3C068014 */ lui $a2, %hi(D_8013D948) # $a2, 0x8014
/* AF8858 800816B8 24C6D948 */ addiu $a2, %lo(D_8013D948) # addiu $a2, $a2, -0x26b8
/* AF885C 800816BC 27A40050 */ addiu $a0, $sp, 0x50
/* AF8860 800816C0 8C450000 */ lw $a1, ($v0)
/* AF8864 800816C4 0C031AD5 */ jal Graph_CloseDisps
/* AF8868 800816C8 2407025F */ li $a3, 607
/* AF886C 800816CC 8FBF001C */ lw $ra, 0x1c($sp)
/* AF8870 800816D0 8FB00018 */ lw $s0, 0x18($sp)
/* AF8874 800816D4 27BD0070 */ addiu $sp, $sp, 0x70
/* AF8878 800816D8 03E00008 */ jr $ra
/* AF887C 800816DC 00000000 */ nop

View file

@ -1,165 +0,0 @@
glabel BgYdanMaruta_Init
/* 00000 808BED40 27BDFF88 */ addiu $sp, $sp, 0xFF88 ## $sp = FFFFFF88
/* 00004 808BED44 AFA5007C */ sw $a1, 0x007C($sp)
/* 00008 808BED48 AFBF0024 */ sw $ra, 0x0024($sp)
/* 0000C 808BED4C AFB0001C */ sw $s0, 0x001C($sp)
/* 00010 808BED50 3C05808C */ lui $a1, %hi(D_808BF388) ## $a1 = 808C0000
/* 00014 808BED54 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00018 808BED58 AFB10020 */ sw $s1, 0x0020($sp)
/* 0001C 808BED5C AFA0003C */ sw $zero, 0x003C($sp)
/* 00020 808BED60 0C01E037 */ jal Actor_ProcessInitChain
/* 00024 808BED64 24A5F388 */ addiu $a1, $a1, %lo(D_808BF388) ## $a1 = 808BF388
/* 00028 808BED68 2605016C */ addiu $a1, $s0, 0x016C ## $a1 = 0000016C
/* 0002C 808BED6C AFA5002C */ sw $a1, 0x002C($sp)
/* 00030 808BED70 0C0171F8 */ jal Collider_InitTris
/* 00034 808BED74 8FA4007C */ lw $a0, 0x007C($sp)
/* 00038 808BED78 3C07808C */ lui $a3, %hi(D_808BF378) ## $a3 = 808C0000
/* 0003C 808BED7C 260E018C */ addiu $t6, $s0, 0x018C ## $t6 = 0000018C
/* 00040 808BED80 AFAE0010 */ sw $t6, 0x0010($sp)
/* 00044 808BED84 24E7F378 */ addiu $a3, $a3, %lo(D_808BF378) ## $a3 = 808BF378
/* 00048 808BED88 8FA4007C */ lw $a0, 0x007C($sp)
/* 0004C 808BED8C 8FA5002C */ lw $a1, 0x002C($sp)
/* 00050 808BED90 0C0172EB */ jal Collider_SetTris
/* 00054 808BED94 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 00058 808BED98 8619001C */ lh $t9, 0x001C($s0) ## 0000001C
/* 0005C 808BED9C 8618001C */ lh $t8, 0x001C($s0) ## 0000001C
/* 00060 808BEDA0 3C11808C */ lui $s1, %hi(D_808BF300+0x3C) ## $s1 = 808C0000
/* 00064 808BEDA4 00194203 */ sra $t0, $t9, 8
/* 00068 808BEDA8 310900FF */ andi $t1, $t0, 0x00FF ## $t1 = 00000000
/* 0006C 808BEDAC A609001C */ sh $t1, 0x001C($s0) ## 0000001C
/* 00070 808BEDB0 860A001C */ lh $t2, 0x001C($s0) ## 0000001C
/* 00074 808BEDB4 2631F33C */ addiu $s1, $s1, %lo(D_808BF300+0x3C) ## $s1 = 808BF33C
/* 00078 808BEDB8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0007C 808BEDBC 15400007 */ bne $t2, $zero, .L808BEDDC
/* 00080 808BEDC0 A2180168 */ sb $t8, 0x0168($s0) ## 00000168
/* 00084 808BEDC4 3C0B808C */ lui $t3, %hi(func_808BEFF4) ## $t3 = 808C0000
/* 00088 808BEDC8 3C11808C */ lui $s1, %hi(D_808BF300) ## $s1 = 808C0000
/* 0008C 808BEDCC 256BEFF4 */ addiu $t3, $t3, %lo(func_808BEFF4) ## $t3 = 808BEFF4
/* 00090 808BEDD0 2631F300 */ addiu $s1, $s1, %lo(D_808BF300) ## $s1 = 808BF300
/* 00094 808BEDD4 1000001F */ beq $zero, $zero, .L808BEE54
/* 00098 808BEDD8 AE0B0164 */ sw $t3, 0x0164($s0) ## 00000164
.L808BEDDC:
/* 0009C 808BEDDC 0C010D20 */ jal DynaPolyInfo_SetActorMove
/* 000A0 808BEDE0 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 000A4 808BEDE4 3C040600 */ lui $a0, 0x0600 ## $a0 = 06000000
/* 000A8 808BEDE8 248466A8 */ addiu $a0, $a0, 0x66A8 ## $a0 = 060066A8
/* 000AC 808BEDEC 0C010620 */ jal DynaPolyInfo_Alloc
/* 000B0 808BEDF0 27A5003C */ addiu $a1, $sp, 0x003C ## $a1 = FFFFFFC4
/* 000B4 808BEDF4 8FA4007C */ lw $a0, 0x007C($sp)
/* 000B8 808BEDF8 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 000BC 808BEDFC 8FA7003C */ lw $a3, 0x003C($sp)
/* 000C0 808BEE00 0C00FA9D */ jal DynaPolyInfo_RegisterActor
## DynaPolyInfo_setActor
/* 000C4 808BEE04 24850810 */ addiu $a1, $a0, 0x0810 ## $a1 = 00000810
/* 000C8 808BEE08 3C01C38C */ lui $at, 0xC38C ## $at = C38C0000
/* 000CC 808BEE0C 44813000 */ mtc1 $at, $f6 ## $f6 = -280.00
/* 000D0 808BEE10 C604000C */ lwc1 $f4, 0x000C($s0) ## 0000000C
/* 000D4 808BEE14 AE02014C */ sw $v0, 0x014C($s0) ## 0000014C
/* 000D8 808BEE18 92050168 */ lbu $a1, 0x0168($s0) ## 00000168
/* 000DC 808BEE1C 46062200 */ add.s $f8, $f4, $f6
/* 000E0 808BEE20 E608000C */ swc1 $f8, 0x000C($s0) ## 0000000C
/* 000E4 808BEE24 0C00B2D0 */ jal Flags_GetSwitch
/* 000E8 808BEE28 8FA4007C */ lw $a0, 0x007C($sp)
/* 000EC 808BEE2C 10400007 */ beq $v0, $zero, .L808BEE4C
/* 000F0 808BEE30 3C0D808C */ lui $t5, %hi(func_808BF078) ## $t5 = 808C0000
/* 000F4 808BEE34 C60A000C */ lwc1 $f10, 0x000C($s0) ## 0000000C
/* 000F8 808BEE38 3C0C808C */ lui $t4, %hi(BgYdanMaruta_DoNothing) ## $t4 = 808C0000
/* 000FC 808BEE3C 258CF25C */ addiu $t4, $t4, %lo(BgYdanMaruta_DoNothing) ## $t4 = 808BF25C
/* 00100 808BEE40 AE0C0164 */ sw $t4, 0x0164($s0) ## 00000164
/* 00104 808BEE44 10000003 */ beq $zero, $zero, .L808BEE54
/* 00108 808BEE48 E60A0028 */ swc1 $f10, 0x0028($s0) ## 00000028
.L808BEE4C:
/* 0010C 808BEE4C 25ADF078 */ addiu $t5, $t5, %lo(func_808BF078) ## $t5 = 808BF078
/* 00110 808BEE50 AE0D0164 */ sw $t5, 0x0164($s0) ## 00000164
.L808BEE54:
/* 00114 808BEE54 0C01DE1C */ jal Math_Sins
## sins?
/* 00118 808BEE58 860400B6 */ lh $a0, 0x00B6($s0) ## 000000B6
/* 0011C 808BEE5C 860400B6 */ lh $a0, 0x00B6($s0) ## 000000B6
/* 00120 808BEE60 0C01DE0D */ jal Math_Coss
## coss?
/* 00124 808BEE64 E7A00044 */ swc1 $f0, 0x0044($sp)
/* 00128 808BEE68 C7A20044 */ lwc1 $f2, 0x0044($sp)
/* 0012C 808BEE6C 46000306 */ mov.s $f12, $f0
/* 00130 808BEE70 27A2004C */ addiu $v0, $sp, 0x004C ## $v0 = FFFFFFD4
/* 00134 808BEE74 02201825 */ or $v1, $s1, $zero ## $v1 = 808BF300
/* 00138 808BEE78 27A40070 */ addiu $a0, $sp, 0x0070 ## $a0 = FFFFFFF8
/* 0013C 808BEE7C C46A0018 */ lwc1 $f10, 0x0018($v1) ## 808BF318
/* 00140 808BEE80 2442000C */ addiu $v0, $v0, 0x000C ## $v0 = FFFFFFE0
/* 00144 808BEE84 C6120024 */ lwc1 $f18, 0x0024($s0) ## 00000024
/* 00148 808BEE88 46005402 */ mul.s $f16, $f10, $f0
/* 0014C 808BEE8C 50440014 */ beql $v0, $a0, .L808BEEE0
/* 00150 808BEE90 46128380 */ add.s $f14, $f16, $f18
/* 00154 808BEE94 46128380 */ add.s $f14, $f16, $f18
.L808BEE98:
/* 00158 808BEE98 2442000C */ addiu $v0, $v0, 0x000C ## $v0 = FFFFFFEC
/* 0015C 808BEE9C 2463000C */ addiu $v1, $v1, 0x000C ## $v1 = 808BF30C
/* 00160 808BEEA0 E44EFFE8 */ swc1 $f14, -0x0018($v0) ## FFFFFFD4
/* 00164 808BEEA4 C46E0010 */ lwc1 $f14, 0x0010($v1) ## 808BF31C
/* 00168 808BEEA8 C60A0028 */ lwc1 $f10, 0x0028($s0) ## 00000028
/* 0016C 808BEEAC 460A7280 */ add.s $f10, $f14, $f10
/* 00170 808BEEB0 E44AFFEC */ swc1 $f10, -0x0014($v0) ## FFFFFFD8
/* 00174 808BEEB4 C46A000C */ lwc1 $f10, 0x000C($v1) ## 808BF318
/* 00178 808BEEB8 C60E002C */ lwc1 $f14, 0x002C($s0) ## 0000002C
/* 0017C 808BEEBC 46025282 */ mul.s $f10, $f10, $f2
/* 00180 808BEEC0 460A7281 */ sub.s $f10, $f14, $f10
/* 00184 808BEEC4 E44AFFF0 */ swc1 $f10, -0x0010($v0) ## FFFFFFDC
/* 00188 808BEEC8 C46A0018 */ lwc1 $f10, 0x0018($v1) ## 808BF324
/* 0018C 808BEECC C6120024 */ lwc1 $f18, 0x0024($s0) ## 00000024
/* 00190 808BEED0 46005402 */ mul.s $f16, $f10, $f0
/* 00194 808BEED4 5444FFF0 */ bnel $v0, $a0, .L808BEE98
/* 00198 808BEED8 46128380 */ add.s $f14, $f16, $f18
/* 0019C 808BEEDC 46128380 */ add.s $f14, $f16, $f18
.L808BEEE0:
/* 001A0 808BEEE0 2463000C */ addiu $v1, $v1, 0x000C ## $v1 = 808BF318
/* 001A4 808BEEE4 E44EFFF4 */ swc1 $f14, -0x000C($v0) ## FFFFFFE0
/* 001A8 808BEEE8 C60A0028 */ lwc1 $f10, 0x0028($s0) ## 00000028
/* 001AC 808BEEEC C46E0010 */ lwc1 $f14, 0x0010($v1) ## 808BF328
/* 001B0 808BEEF0 460A7280 */ add.s $f10, $f14, $f10
/* 001B4 808BEEF4 E44AFFF8 */ swc1 $f10, -0x0008($v0) ## FFFFFFE4
/* 001B8 808BEEF8 C46A000C */ lwc1 $f10, 0x000C($v1) ## 808BF324
/* 001BC 808BEEFC C60E002C */ lwc1 $f14, 0x002C($s0) ## 0000002C
/* 001C0 808BEF00 46025282 */ mul.s $f10, $f10, $f2
/* 001C4 808BEF04 460A7281 */ sub.s $f10, $f14, $f10
/* 001C8 808BEF08 E44AFFFC */ swc1 $f10, -0x0004($v0) ## FFFFFFE8
/* 001CC 808BEF0C 27AE0064 */ addiu $t6, $sp, 0x0064 ## $t6 = FFFFFFEC
/* 001D0 808BEF10 AFAE0010 */ sw $t6, 0x0010($sp)
/* 001D4 808BEF14 8FA4002C */ lw $a0, 0x002C($sp)
/* 001D8 808BEF18 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 001DC 808BEF1C 27A6004C */ addiu $a2, $sp, 0x004C ## $a2 = FFFFFFD4
/* 001E0 808BEF20 27A70058 */ addiu $a3, $sp, 0x0058 ## $a3 = FFFFFFE0
/* 001E4 808BEF24 E7A20044 */ swc1 $f2, 0x0044($sp)
/* 001E8 808BEF28 0C0189E8 */ jal func_800627A0
/* 001EC 808BEF2C E7AC0040 */ swc1 $f12, 0x0040($sp)
/* 001F0 808BEF30 C7AC0040 */ lwc1 $f12, 0x0040($sp)
/* 001F4 808BEF34 C62A0030 */ lwc1 $f10, 0x0030($s1) ## 808BF330
/* 001F8 808BEF38 C6040024 */ lwc1 $f4, 0x0024($s0) ## 00000024
/* 001FC 808BEF3C C7A20044 */ lwc1 $f2, 0x0044($sp)
/* 00200 808BEF40 460C5402 */ mul.s $f16, $f10, $f12
/* 00204 808BEF44 27AF0058 */ addiu $t7, $sp, 0x0058 ## $t7 = FFFFFFE0
/* 00208 808BEF48 8FA4002C */ lw $a0, 0x002C($sp)
/* 0020C 808BEF4C 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
/* 00210 808BEF50 27A6004C */ addiu $a2, $sp, 0x004C ## $a2 = FFFFFFD4
/* 00214 808BEF54 27A70064 */ addiu $a3, $sp, 0x0064 ## $a3 = FFFFFFEC
/* 00218 808BEF58 46048480 */ add.s $f18, $f16, $f4
/* 0021C 808BEF5C E7B20058 */ swc1 $f18, 0x0058($sp)
/* 00220 808BEF60 C6080028 */ lwc1 $f8, 0x0028($s0) ## 00000028
/* 00224 808BEF64 C626001C */ lwc1 $f6, 0x001C($s1) ## 808BF31C
/* 00228 808BEF68 46083280 */ add.s $f10, $f6, $f8
/* 0022C 808BEF6C E7AA005C */ swc1 $f10, 0x005C($sp)
/* 00230 808BEF70 C6240030 */ lwc1 $f4, 0x0030($s1) ## 808BF330
/* 00234 808BEF74 C610002C */ lwc1 $f16, 0x002C($s0) ## 0000002C
/* 00238 808BEF78 AFAF0010 */ sw $t7, 0x0010($sp)
/* 0023C 808BEF7C 46022482 */ mul.s $f18, $f4, $f2
/* 00240 808BEF80 46128181 */ sub.s $f6, $f16, $f18
/* 00244 808BEF84 0C0189E8 */ jal func_800627A0
/* 00248 808BEF88 E7A60060 */ swc1 $f6, 0x0060($sp)
/* 0024C 808BEF8C 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00250 808BEF90 8FB0001C */ lw $s0, 0x001C($sp)
/* 00254 808BEF94 8FB10020 */ lw $s1, 0x0020($sp)
/* 00258 808BEF98 03E00008 */ jr $ra
/* 0025C 808BEF9C 27BD0078 */ addiu $sp, $sp, 0x0078 ## $sp = 00000000

View file

@ -1,65 +0,0 @@
glabel func_808BF108
/* 003C8 808BF108 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 003CC 808BF10C AFBF0014 */ sw $ra, 0x0014($sp)
/* 003D0 808BF110 AFA50024 */ sw $a1, 0x0024($sp)
/* 003D4 808BF114 8483016A */ lh $v1, 0x016A($a0) ## 0000016A
/* 003D8 808BF118 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
/* 003DC 808BF11C 2401FFFE */ addiu $at, $zero, 0xFFFE ## $at = FFFFFFFE
/* 003E0 808BF120 10600003 */ beq $v1, $zero, .L808BF130
/* 003E4 808BF124 246EFFFF */ addiu $t6, $v1, 0xFFFF ## $t6 = FFFFFFFF
/* 003E8 808BF128 A48E016A */ sh $t6, 0x016A($a0) ## 0000016A
/* 003EC 808BF12C 8483016A */ lh $v1, 0x016A($a0) ## 0000016A
.L808BF130:
/* 003F0 808BF130 14600004 */ bne $v1, $zero, .L808BF144
/* 003F4 808BF134 3C0F808C */ lui $t7, %hi(func_808BF1EC) ## $t7 = 808C0000
/* 003F8 808BF138 25EFF1EC */ addiu $t7, $t7, %lo(func_808BF1EC) ## $t7 = 808BF1EC
/* 003FC 808BF13C ACCF0164 */ sw $t7, 0x0164($a2) ## 00000164
/* 00400 808BF140 84C3016A */ lh $v1, 0x016A($a2) ## 0000016A
.L808BF144:
/* 00404 808BF144 04610004 */ bgez $v1, .L808BF158
/* 00408 808BF148 30620003 */ andi $v0, $v1, 0x0003 ## $v0 = 00000000
/* 0040C 808BF14C 10400002 */ beq $v0, $zero, .L808BF158
/* 00410 808BF150 00000000 */ nop
/* 00414 808BF154 2442FFFC */ addiu $v0, $v0, 0xFFFC ## $v0 = FFFFFFFC
.L808BF158:
/* 00418 808BF158 2442FFFE */ addiu $v0, $v0, 0xFFFE ## $v0 = FFFFFFFA
/* 0041C 808BF15C 00021400 */ sll $v0, $v0, 16
/* 00420 808BF160 00021403 */ sra $v0, $v0, 16
/* 00424 808BF164 54410004 */ bnel $v0, $at, .L808BF178
/* 00428 808BF168 00021040 */ sll $v0, $v0, 1
/* 0042C 808BF16C 10000004 */ beq $zero, $zero, .L808BF180
/* 00430 808BF170 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
/* 00434 808BF174 00021040 */ sll $v0, $v0, 1
.L808BF178:
/* 00438 808BF178 00021400 */ sll $v0, $v0, 16
/* 0043C 808BF17C 00021403 */ sra $v0, $v0, 16
.L808BF180:
/* 00440 808BF180 84C400B6 */ lh $a0, 0x00B6($a2) ## 000000B6
/* 00444 808BF184 AFA60020 */ sw $a2, 0x0020($sp)
/* 00448 808BF188 0C01DE0D */ jal Math_Coss
## coss?
/* 0044C 808BF18C A7A2001E */ sh $v0, 0x001E($sp)
/* 00450 808BF190 87A2001E */ lh $v0, 0x001E($sp)
/* 00454 808BF194 8FA60020 */ lw $a2, 0x0020($sp)
/* 00458 808BF198 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 0045C 808BF19C C4C80008 */ lwc1 $f8, 0x0008($a2) ## 00000008
/* 00460 808BF1A0 84C400B6 */ lh $a0, 0x00B6($a2) ## 000000B6
/* 00464 808BF1A4 468020A0 */ cvt.s.w $f2, $f4
/* 00468 808BF1A8 46020182 */ mul.s $f6, $f0, $f2
/* 0046C 808BF1AC 46083280 */ add.s $f10, $f6, $f8
/* 00470 808BF1B0 E4CA0024 */ swc1 $f10, 0x0024($a2) ## 00000024
/* 00474 808BF1B4 0C01DE1C */ jal Math_Sins
## sins?
/* 00478 808BF1B8 E7A20018 */ swc1 $f2, 0x0018($sp)
/* 0047C 808BF1BC C7A20018 */ lwc1 $f2, 0x0018($sp)
/* 00480 808BF1C0 8FA40020 */ lw $a0, 0x0020($sp)
/* 00484 808BF1C4 24052058 */ addiu $a1, $zero, 0x2058 ## $a1 = 00002058
/* 00488 808BF1C8 46020402 */ mul.s $f16, $f0, $f2
/* 0048C 808BF1CC C4920010 */ lwc1 $f18, 0x0010($a0) ## 00000010
/* 00490 808BF1D0 46128100 */ add.s $f4, $f16, $f18
/* 00494 808BF1D4 0C00BE5D */ jal func_8002F974
/* 00498 808BF1D8 E484002C */ swc1 $f4, 0x002C($a0) ## 0000002C
/* 0049C 808BF1DC 8FBF0014 */ lw $ra, 0x0014($sp)
/* 004A0 808BF1E0 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 004A4 808BF1E4 03E00008 */ jr $ra
/* 004A8 808BF1E8 00000000 */ nop

View file

@ -1,332 +0,0 @@
.rdata
glabel D_80A0B3D0
.asciz "\x1b[32m %x\n\x1b[m"
.balign 4
glabel D_80A0B400
.asciz "\x1b[32m \n\x1b[m"
.balign 4
glabel D_80A0B430
.asciz "\x1b[32m \n\x1b[m"
.balign 4
.late_rodata
glabel jtbl_80A0B50C
.word L80A0A478
.word L80A0A634
.word L80A0A634
.word L80A0A6E0
.word L80A0A7AC
glabel D_80A0B520
.float 0.01
glabel D_80A0B524
.word 0x4348FD71
glabel D_80A0B528
.float 0.02
glabel D_80A0B52C
.float 0.02
glabel D_80A0B530
.word 0x407F5C29
glabel D_80A0B534
.float 0.02
glabel D_80A0B538
.word 0x41F7EB85
glabel D_80A0B53C
.float 0.01
.text
glabel EnExRuppy_Init
/* 00000 80A0A410 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 00004 80A0A414 AFBF001C */ sw $ra, 0x001C($sp)
/* 00008 80A0A418 AFB00018 */ sw $s0, 0x0018($sp)
/* 0000C 80A0A41C AFA50024 */ sw $a1, 0x0024($sp)
/* 00010 80A0A420 848E001C */ lh $t6, 0x001C($a0) ## 0000001C
/* 00014 80A0A424 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00018 80A0A428 A48E0152 */ sh $t6, 0x0152($a0) ## 00000152
/* 0001C 80A0A42C 3C0480A1 */ lui $a0, %hi(D_80A0B3D0) ## $a0 = 80A10000
/* 00020 80A0A430 2484B3D0 */ addiu $a0, $a0, %lo(D_80A0B3D0) ## $a0 = 80A0B3D0
/* 00024 80A0A434 0C00084C */ jal osSyncPrintf
/* 00028 80A0A438 86050152 */ lh $a1, 0x0152($s0) ## 00000152
/* 0002C 80A0A43C 3C068003 */ lui $a2, %hi(ActorShadow_DrawFunc_Circle)
/* 00030 80A0A440 24C6B5EC */ addiu $a2, %lo(ActorShadow_DrawFunc_Circle)
/* 00034 80A0A444 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4
/* 00038 80A0A448 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
/* 0003C 80A0A44C 0C00AC78 */ jal ActorShape_Init
/* 00040 80A0A450 3C0741C8 */ lui $a3, 0x41C8 ## $a3 = 41C80000
/* 00044 80A0A454 86020152 */ lh $v0, 0x0152($s0) ## 00000152
/* 00048 80A0A458 2C410005 */ sltiu $at, $v0, 0x0005
/* 0004C 80A0A45C 102000E8 */ beq $at, $zero, .L80A0A800
/* 00050 80A0A460 00027880 */ sll $t7, $v0, 2
/* 00054 80A0A464 3C0180A1 */ lui $at, %hi(jtbl_80A0B50C) ## $at = 80A10000
/* 00058 80A0A468 002F0821 */ addu $at, $at, $t7
/* 0005C 80A0A46C 8C2FB50C */ lw $t7, %lo(jtbl_80A0B50C)($at)
/* 00060 80A0A470 01E00008 */ jr $t7
/* 00064 80A0A474 00000000 */ nop
glabel L80A0A478
/* 00068 80A0A478 3C0180A1 */ lui $at, %hi(D_80A0B520) ## $at = 80A10000
/* 0006C 80A0A47C C420B520 */ lwc1 $f0, %lo(D_80A0B520)($at)
/* 00070 80A0A480 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00074 80A0A484 44050000 */ mfc1 $a1, $f0
/* 00078 80A0A488 0C00B58B */ jal Actor_SetScale
/* 0007C 80A0A48C E6000160 */ swc1 $f0, 0x0160($s0) ## 00000160
/* 00080 80A0A490 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 00084 80A0A494 2418FFFF */ addiu $t8, $zero, 0xFFFF ## $t8 = FFFFFFFF
/* 00088 80A0A498 A2180003 */ sb $t8, 0x0003($s0) ## 00000003
/* 0008C 80A0A49C 3C198016 */ lui $t9, %hi(gSaveContext+0xeda)
/* 00090 80A0A4A0 E604006C */ swc1 $f4, 0x006C($s0) ## 0000006C
/* 00094 80A0A4A4 9739F53A */ lhu $t9, %lo(gSaveContext+0xeda)($t9)
/* 00098 80A0A4A8 24090005 */ addiu $t1, $zero, 0x0005 ## $t1 = 00000005
/* 0009C 80A0A4AC 3C0180A1 */ lui $at, %hi(D_80A0B524) ## $at = 80A10000
/* 000A0 80A0A4B0 33280100 */ andi $t0, $t9, 0x0100 ## $t0 = 00000000
/* 000A4 80A0A4B4 15000004 */ bne $t0, $zero, .L80A0A4C8
/* 000A8 80A0A4B8 240A0001 */ addiu $t2, $zero, 0x0001 ## $t2 = 00000001
/* 000AC 80A0A4BC A6090158 */ sh $t1, 0x0158($s0) ## 00000158
/* 000B0 80A0A4C0 10000049 */ beq $zero, $zero, .L80A0A5E8
/* 000B4 80A0A4C4 A60A0150 */ sh $t2, 0x0150($s0) ## 00000150
.L80A0A4C8:
/* 000B8 80A0A4C8 8E030118 */ lw $v1, 0x0118($s0) ## 00000118
/* 000BC 80A0A4CC C422B524 */ lwc1 $f2, %lo(D_80A0B524)($at)
/* 000C0 80A0A4D0 1060000C */ beq $v1, $zero, .L80A0A504
/* 000C4 80A0A4D4 46001306 */ mov.s $f12, $f2
/* 000C8 80A0A4D8 8C6B0130 */ lw $t3, 0x0130($v1) ## 00000130
/* 000CC 80A0A4DC 11600009 */ beq $t3, $zero, .L80A0A504
/* 000D0 80A0A4E0 00000000 */ nop
/* 000D4 80A0A4E4 846C02AA */ lh $t4, 0x02AA($v1) ## 000002AA
/* 000D8 80A0A4E8 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 000DC 80A0A4EC 44815000 */ mtc1 $at, $f10 ## $f10 = 10.00
/* 000E0 80A0A4F0 448C3000 */ mtc1 $t4, $f6 ## $f6 = 0.00
/* 000E4 80A0A4F4 00000000 */ nop
/* 000E8 80A0A4F8 46803220 */ cvt.s.w $f8, $f6
/* 000EC 80A0A4FC 460A4002 */ mul.s $f0, $f8, $f10
/* 000F0 80A0A500 46001300 */ add.s $f12, $f2, $f0
.L80A0A504:
/* 000F4 80A0A504 0C00CFBE */ jal Math_Rand_ZeroFloat
/* 000F8 80A0A508 00000000 */ nop
/* 000FC 80A0A50C 4600040D */ trunc.w.s $f16, $f0
/* 00100 80A0A510 44028000 */ mfc1 $v0, $f16
/* 00104 80A0A514 00000000 */ nop
/* 00108 80A0A518 00021400 */ sll $v0, $v0, 16
/* 0010C 80A0A51C 00021403 */ sra $v0, $v0, 16
/* 00110 80A0A520 04400006 */ bltz $v0, .L80A0A53C
/* 00114 80A0A524 28410028 */ slti $at, $v0, 0x0028
/* 00118 80A0A528 10200004 */ beq $at, $zero, .L80A0A53C
/* 0011C 80A0A52C 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
/* 00120 80A0A530 A60E0158 */ sh $t6, 0x0158($s0) ## 00000158
/* 00124 80A0A534 1000002C */ beq $zero, $zero, .L80A0A5E8
/* 00128 80A0A538 A6000150 */ sh $zero, 0x0150($s0) ## 00000150
.L80A0A53C:
/* 0012C 80A0A53C 28410028 */ slti $at, $v0, 0x0028
/* 00130 80A0A540 14200007 */ bne $at, $zero, .L80A0A560
/* 00134 80A0A544 284100AA */ slti $at, $v0, 0x00AA
/* 00138 80A0A548 10200005 */ beq $at, $zero, .L80A0A560
/* 0013C 80A0A54C 240F0005 */ addiu $t7, $zero, 0x0005 ## $t7 = 00000005
/* 00140 80A0A550 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001
/* 00144 80A0A554 A60F0158 */ sh $t7, 0x0158($s0) ## 00000158
/* 00148 80A0A558 10000023 */ beq $zero, $zero, .L80A0A5E8
/* 0014C 80A0A55C A6180150 */ sh $t8, 0x0150($s0) ## 00000150
.L80A0A560:
/* 00150 80A0A560 284100AA */ slti $at, $v0, 0x00AA
/* 00154 80A0A564 14200007 */ bne $at, $zero, .L80A0A584
/* 00158 80A0A568 284100BE */ slti $at, $v0, 0x00BE
/* 0015C 80A0A56C 10200005 */ beq $at, $zero, .L80A0A584
/* 00160 80A0A570 24190014 */ addiu $t9, $zero, 0x0014 ## $t9 = 00000014
/* 00164 80A0A574 24080002 */ addiu $t0, $zero, 0x0002 ## $t0 = 00000002
/* 00168 80A0A578 A6190158 */ sh $t9, 0x0158($s0) ## 00000158
/* 0016C 80A0A57C 1000001A */ beq $zero, $zero, .L80A0A5E8
/* 00170 80A0A580 A6080150 */ sh $t0, 0x0150($s0) ## 00000150
.L80A0A584:
/* 00174 80A0A584 284100BE */ slti $at, $v0, 0x00BE
/* 00178 80A0A588 14200007 */ bne $at, $zero, .L80A0A5A8
/* 0017C 80A0A58C 284100C8 */ slti $at, $v0, 0x00C8
/* 00180 80A0A590 10200005 */ beq $at, $zero, .L80A0A5A8
/* 00184 80A0A594 24090032 */ addiu $t1, $zero, 0x0032 ## $t1 = 00000032
/* 00188 80A0A598 240A0004 */ addiu $t2, $zero, 0x0004 ## $t2 = 00000004
/* 0018C 80A0A59C A6090158 */ sh $t1, 0x0158($s0) ## 00000158
/* 00190 80A0A5A0 10000011 */ beq $zero, $zero, .L80A0A5E8
/* 00194 80A0A5A4 A60A0150 */ sh $t2, 0x0150($s0) ## 00000150
.L80A0A5A8:
/* 00198 80A0A5A8 3C0180A1 */ lui $at, %hi(D_80A0B528) ## $at = 80A10000
/* 0019C 80A0A5AC C420B528 */ lwc1 $f0, %lo(D_80A0B528)($at)
/* 001A0 80A0A5B0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 001A4 80A0A5B4 44050000 */ mfc1 $a1, $f0
/* 001A8 80A0A5B8 0C00B58B */ jal Actor_SetScale
/* 001AC 80A0A5BC E6000160 */ swc1 $f0, 0x0160($s0) ## 00000160
/* 001B0 80A0A5C0 8E030118 */ lw $v1, 0x0118($s0) ## 00000118
/* 001B4 80A0A5C4 240B01F4 */ addiu $t3, $zero, 0x01F4 ## $t3 = 000001F4
/* 001B8 80A0A5C8 240C0003 */ addiu $t4, $zero, 0x0003 ## $t4 = 00000003
/* 001BC 80A0A5CC A60B0158 */ sh $t3, 0x0158($s0) ## 00000158
/* 001C0 80A0A5D0 10600005 */ beq $v1, $zero, .L80A0A5E8
/* 001C4 80A0A5D4 A60C0150 */ sh $t4, 0x0150($s0) ## 00000150
/* 001C8 80A0A5D8 8C6D0130 */ lw $t5, 0x0130($v1) ## 00000130
/* 001CC 80A0A5DC 51A00003 */ beql $t5, $zero, .L80A0A5EC
/* 001D0 80A0A5E0 3C0140E0 */ lui $at, 0x40E0 ## $at = 40E00000
/* 001D4 80A0A5E4 A46002AA */ sh $zero, 0x02AA($v1) ## 000002AA
.L80A0A5E8:
/* 001D8 80A0A5E8 3C0140E0 */ lui $at, 0x40E0 ## $at = 40E00000
.L80A0A5EC:
/* 001DC 80A0A5EC 44819000 */ mtc1 $at, $f18 ## $f18 = 7.00
/* 001E0 80A0A5F0 8E180004 */ lw $t8, 0x0004($s0) ## 00000004
/* 001E4 80A0A5F4 3C01442F */ lui $at, 0x442F ## $at = 442F0000
/* 001E8 80A0A5F8 44812000 */ mtc1 $at, $f4 ## $f4 = 700.00
/* 001EC 80A0A5FC 860E0034 */ lh $t6, 0x0034($s0) ## 00000034
/* 001F0 80A0A600 2401FFFE */ addiu $at, $zero, 0xFFFE ## $at = FFFFFFFE
/* 001F4 80A0A604 3C0880A1 */ lui $t0, %hi(EnExRuppy_DropIntoWater) ## $t0 = 80A10000
/* 001F8 80A0A608 240F001E */ addiu $t7, $zero, 0x001E ## $t7 = 0000001E
/* 001FC 80A0A60C 2508AA3C */ addiu $t0, $t0, %lo(EnExRuppy_DropIntoWater) ## $t0 = 80A0AA3C
/* 00200 80A0A610 0301C824 */ and $t9, $t8, $at
/* 00204 80A0A614 A6000034 */ sh $zero, 0x0034($s0) ## 00000034
/* 00208 80A0A618 A60F0156 */ sh $t7, 0x0156($s0) ## 00000156
/* 0020C 80A0A61C AE190004 */ sw $t9, 0x0004($s0) ## 00000004
/* 00210 80A0A620 AE08014C */ sw $t0, 0x014C($s0) ## 0000014C
/* 00214 80A0A624 E61200C4 */ swc1 $f18, 0x00C4($s0) ## 000000C4
/* 00218 80A0A628 E60400BC */ swc1 $f4, 0x00BC($s0) ## 000000BC
/* 0021C 80A0A62C 10000074 */ beq $zero, $zero, .L80A0A800
/* 00220 80A0A630 A60E015A */ sh $t6, 0x015A($s0) ## 0000015A
glabel L80A0A634
/* 00224 80A0A634 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 00228 80A0A638 14410007 */ bne $v0, $at, .L80A0A658
/* 0022C 80A0A63C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00230 80A0A640 3C053DCC */ lui $a1, 0x3DCC ## $a1 = 3DCC0000
/* 00234 80A0A644 0C00B58B */ jal Actor_SetScale
/* 00238 80A0A648 34A5CCCD */ ori $a1, $a1, 0xCCCD ## $a1 = 3DCCCCCD
/* 0023C 80A0A64C 24090004 */ addiu $t1, $zero, 0x0004 ## $t1 = 00000004
/* 00240 80A0A650 1000000F */ beq $zero, $zero, .L80A0A690
/* 00244 80A0A654 A6090150 */ sh $t1, 0x0150($s0) ## 00000150
.L80A0A658:
/* 00248 80A0A658 3C0180A1 */ lui $at, %hi(D_80A0B52C) ## $at = 80A10000
/* 0024C 80A0A65C C420B52C */ lwc1 $f0, %lo(D_80A0B52C)($at)
/* 00250 80A0A660 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00254 80A0A664 44050000 */ mfc1 $a1, $f0
/* 00258 80A0A668 0C00B58B */ jal Actor_SetScale
/* 0025C 80A0A66C 00000000 */ nop
/* 00260 80A0A670 3C0180A1 */ lui $at, %hi(D_80A0B530) ## $at = 80A10000
/* 00264 80A0A674 0C00CFBE */ jal Math_Rand_ZeroFloat
/* 00268 80A0A678 C42CB530 */ lwc1 $f12, %lo(D_80A0B530)($at)
/* 0026C 80A0A67C 4600018D */ trunc.w.s $f6, $f0
/* 00270 80A0A680 440D3000 */ mfc1 $t5, $f6
/* 00274 80A0A684 00000000 */ nop
/* 00278 80A0A688 25AE0001 */ addiu $t6, $t5, 0x0001 ## $t6 = 00000001
/* 0027C 80A0A68C A60E0150 */ sh $t6, 0x0150($s0) ## 00000150
.L80A0A690:
/* 00280 80A0A690 3C01C040 */ lui $at, 0xC040 ## $at = C0400000
/* 00284 80A0A694 44814000 */ mtc1 $at, $f8 ## $f8 = -3.00
/* 00288 80A0A698 3C0480A1 */ lui $a0, %hi(D_80A0B400) ## $a0 = 80A10000
/* 0028C 80A0A69C 2484B400 */ addiu $a0, $a0, %lo(D_80A0B400) ## $a0 = 80A0B400
/* 00290 80A0A6A0 0C00084C */ jal osSyncPrintf
/* 00294 80A0A6A4 E608006C */ swc1 $f8, 0x006C($s0) ## 0000006C
/* 00298 80A0A6A8 3C0140C0 */ lui $at, 0x40C0 ## $at = 40C00000
/* 0029C 80A0A6AC 44815000 */ mtc1 $at, $f10 ## $f10 = 6.00
/* 002A0 80A0A6B0 8E0F0004 */ lw $t7, 0x0004($s0) ## 00000004
/* 002A4 80A0A6B4 3C01442F */ lui $at, 0x442F ## $at = 442F0000
/* 002A8 80A0A6B8 44818000 */ mtc1 $at, $f16 ## $f16 = 700.00
/* 002AC 80A0A6BC 2401FFFE */ addiu $at, $zero, 0xFFFE ## $at = FFFFFFFE
/* 002B0 80A0A6C0 3C1980A1 */ lui $t9, %hi(EnExRuppy_WaitToBlowUp) ## $t9 = 80A10000
/* 002B4 80A0A6C4 2739AF24 */ addiu $t9, $t9, %lo(EnExRuppy_WaitToBlowUp) ## $t9 = 80A0AF24
/* 002B8 80A0A6C8 01E1C024 */ and $t8, $t7, $at
/* 002BC 80A0A6CC AE180004 */ sw $t8, 0x0004($s0) ## 00000004
/* 002C0 80A0A6D0 AE19014C */ sw $t9, 0x014C($s0) ## 0000014C
/* 002C4 80A0A6D4 E60A00C4 */ swc1 $f10, 0x00C4($s0) ## 000000C4
/* 002C8 80A0A6D8 10000049 */ beq $zero, $zero, .L80A0A800
/* 002CC 80A0A6DC E61000BC */ swc1 $f16, 0x00BC($s0) ## 000000BC
glabel L80A0A6E0
/* 002D0 80A0A6E0 3C0180A1 */ lui $at, %hi(D_80A0B534) ## $at = 80A10000
/* 002D4 80A0A6E4 C420B534 */ lwc1 $f0, %lo(D_80A0B534)($at)
/* 002D8 80A0A6E8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 002DC 80A0A6EC 44050000 */ mfc1 $a1, $f0
/* 002E0 80A0A6F0 0C00B58B */ jal Actor_SetScale
/* 002E4 80A0A6F4 00000000 */ nop
/* 002E8 80A0A6F8 A6000150 */ sh $zero, 0x0150($s0) ## 00000150
/* 002EC 80A0A6FC 3C0180A1 */ lui $at, %hi(D_80A0B538) ## $at = 80A10000
/* 002F0 80A0A700 0C00CFBE */ jal Math_Rand_ZeroFloat
/* 002F4 80A0A704 C42CB538 */ lwc1 $f12, %lo(D_80A0B538)($at)
/* 002F8 80A0A708 4600048D */ trunc.w.s $f18, $f0
/* 002FC 80A0A70C 2401000A */ addiu $at, $zero, 0x000A ## $at = 0000000A
/* 00300 80A0A710 24090002 */ addiu $t1, $zero, 0x0002 ## $t1 = 00000002
/* 00304 80A0A714 3C0480A1 */ lui $a0, %hi(D_80A0B430) ## $a0 = 80A10000
/* 00308 80A0A718 44029000 */ mfc1 $v0, $f18
/* 0030C 80A0A71C 00000000 */ nop
/* 00310 80A0A720 00021400 */ sll $v0, $v0, 16
/* 00314 80A0A724 00021403 */ sra $v0, $v0, 16
/* 00318 80A0A728 1040000A */ beq $v0, $zero, .L80A0A754
/* 0031C 80A0A72C 00000000 */ nop
/* 00320 80A0A730 1041000A */ beq $v0, $at, .L80A0A75C
/* 00324 80A0A734 240A0001 */ addiu $t2, $zero, 0x0001 ## $t2 = 00000001
/* 00328 80A0A738 24010014 */ addiu $at, $zero, 0x0014 ## $at = 00000014
/* 0032C 80A0A73C 10410007 */ beq $v0, $at, .L80A0A75C
/* 00330 80A0A740 2401001E */ addiu $at, $zero, 0x001E ## $at = 0000001E
/* 00334 80A0A744 50410006 */ beql $v0, $at, .L80A0A760
/* 00338 80A0A748 A60A0150 */ sh $t2, 0x0150($s0) ## 00000150
/* 0033C 80A0A74C 10000005 */ beq $zero, $zero, .L80A0A764
/* 00340 80A0A750 3C01C040 */ lui $at, 0xC040 ## $at = C0400000
.L80A0A754:
/* 00344 80A0A754 10000002 */ beq $zero, $zero, .L80A0A760
/* 00348 80A0A758 A6090150 */ sh $t1, 0x0150($s0) ## 00000150
.L80A0A75C:
/* 0034C 80A0A75C A60A0150 */ sh $t2, 0x0150($s0) ## 00000150
.L80A0A760:
/* 00350 80A0A760 3C01C040 */ lui $at, 0xC040 ## $at = C0400000
.L80A0A764:
/* 00354 80A0A764 44812000 */ mtc1 $at, $f4 ## $f4 = -3.00
/* 00358 80A0A768 2484B430 */ addiu $a0, $a0, %lo(D_80A0B430) ## $a0 = 80A0B430
/* 0035C 80A0A76C 0C00084C */ jal osSyncPrintf
/* 00360 80A0A770 E604006C */ swc1 $f4, 0x006C($s0) ## 0000006C
/* 00364 80A0A774 3C0140C0 */ lui $at, 0x40C0 ## $at = 40C00000
/* 00368 80A0A778 44813000 */ mtc1 $at, $f6 ## $f6 = 6.00
/* 0036C 80A0A77C 8E0B0004 */ lw $t3, 0x0004($s0) ## 00000004
/* 00370 80A0A780 3C01442F */ lui $at, 0x442F ## $at = 442F0000
/* 00374 80A0A784 44814000 */ mtc1 $at, $f8 ## $f8 = 700.00
/* 00378 80A0A788 2401FFFE */ addiu $at, $zero, 0xFFFE ## $at = FFFFFFFE
/* 0037C 80A0A78C 3C0D80A1 */ lui $t5, %hi(EnExRuppy_WaitAsCollectible) ## $t5 = 80A10000
/* 00380 80A0A790 25ADB070 */ addiu $t5, $t5, %lo(EnExRuppy_WaitAsCollectible) ## $t5 = 80A0B070
/* 00384 80A0A794 01616024 */ and $t4, $t3, $at
/* 00388 80A0A798 AE0C0004 */ sw $t4, 0x0004($s0) ## 00000004
/* 0038C 80A0A79C AE0D014C */ sw $t5, 0x014C($s0) ## 0000014C
/* 00390 80A0A7A0 E60600C4 */ swc1 $f6, 0x00C4($s0) ## 000000C4
/* 00394 80A0A7A4 10000016 */ beq $zero, $zero, .L80A0A800
/* 00398 80A0A7A8 E60800BC */ swc1 $f8, 0x00BC($s0) ## 000000BC
glabel L80A0A7AC
/* 0039C 80A0A7AC 3C0180A1 */ lui $at, %hi(D_80A0B53C) ## $at = 80A10000
/* 003A0 80A0A7B0 C420B53C */ lwc1 $f0, %lo(D_80A0B53C)($at)
/* 003A4 80A0A7B4 8E0E0004 */ lw $t6, 0x0004($s0) ## 00000004
/* 003A8 80A0A7B8 3C01C040 */ lui $at, 0xC040 ## $at = C0400000
/* 003AC 80A0A7BC 44815000 */ mtc1 $at, $f10 ## $f10 = -3.00
/* 003B0 80A0A7C0 2401FFFE */ addiu $at, $zero, 0xFFFE ## $at = FFFFFFFE
/* 003B4 80A0A7C4 44050000 */ mfc1 $a1, $f0
/* 003B8 80A0A7C8 01C17824 */ and $t7, $t6, $at
/* 003BC 80A0A7CC AE0F0004 */ sw $t7, 0x0004($s0) ## 00000004
/* 003C0 80A0A7D0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 003C4 80A0A7D4 0C00B58B */ jal Actor_SetScale
/* 003C8 80A0A7D8 E60A006C */ swc1 $f10, 0x006C($s0) ## 0000006C
/* 003CC 80A0A7DC 3C0140C0 */ lui $at, 0x40C0 ## $at = 40C00000
/* 003D0 80A0A7E0 44818000 */ mtc1 $at, $f16 ## $f16 = 6.00
/* 003D4 80A0A7E4 3C01C42F */ lui $at, 0xC42F ## $at = C42F0000
/* 003D8 80A0A7E8 44819000 */ mtc1 $at, $f18 ## $f18 = -700.00
/* 003DC 80A0A7EC 3C1880A1 */ lui $t8, %hi(func_80A0B0F4) ## $t8 = 80A10000
/* 003E0 80A0A7F0 2718B0F4 */ addiu $t8, $t8, %lo(func_80A0B0F4) ## $t8 = 80A0B0F4
/* 003E4 80A0A7F4 AE18014C */ sw $t8, 0x014C($s0) ## 0000014C
/* 003E8 80A0A7F8 E61000C4 */ swc1 $f16, 0x00C4($s0) ## 000000C4
/* 003EC 80A0A7FC E61200BC */ swc1 $f18, 0x00BC($s0) ## 000000BC
.L80A0A800:
/* 003F0 80A0A800 8FBF001C */ lw $ra, 0x001C($sp)
/* 003F4 80A0A804 8FB00018 */ lw $s0, 0x0018($sp)
/* 003F8 80A0A808 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 003FC 80A0A80C 03E00008 */ jr $ra
/* 00400 80A0A810 00000000 */ nop

View file

@ -1,252 +0,0 @@
.late_rodata
glabel D_80B1382C
.word 0xBE19999A
.text
glabel EnSyatekiNiw_Update
/* 01384 80B12C74 27BDFF58 */ addiu $sp, $sp, 0xFF58 ## $sp = FFFFFF58
/* 01388 80B12C78 3C0F80B1 */ lui $t7, %hi(D_80B136B8) ## $t7 = 80B10000
/* 0138C 80B12C7C AFBF004C */ sw $ra, 0x004C($sp)
/* 01390 80B12C80 AFB10048 */ sw $s1, 0x0048($sp)
/* 01394 80B12C84 AFB00044 */ sw $s0, 0x0044($sp)
/* 01398 80B12C88 F7BC0038 */ sdc1 $f28, 0x0038($sp)
/* 0139C 80B12C8C F7BA0030 */ sdc1 $f26, 0x0030($sp)
/* 013A0 80B12C90 F7B80028 */ sdc1 $f24, 0x0028($sp)
/* 013A4 80B12C94 F7B60020 */ sdc1 $f22, 0x0020($sp)
/* 013A8 80B12C98 F7B40018 */ sdc1 $f20, 0x0018($sp)
/* 013AC 80B12C9C AFA500AC */ sw $a1, 0x00AC($sp)
/* 013B0 80B12CA0 25EF36B8 */ addiu $t7, $t7, %lo(D_80B136B8) ## $t7 = 80B136B8
/* 013B4 80B12CA4 8DF90000 */ lw $t9, 0x0000($t7) ## 80B136B8
/* 013B8 80B12CA8 27AE0090 */ addiu $t6, $sp, 0x0090 ## $t6 = FFFFFFE8
/* 013BC 80B12CAC 8DF80004 */ lw $t8, 0x0004($t7) ## 80B136BC
/* 013C0 80B12CB0 ADD90000 */ sw $t9, 0x0000($t6) ## FFFFFFE8
/* 013C4 80B12CB4 8DF90008 */ lw $t9, 0x0008($t7) ## 80B136C0
/* 013C8 80B12CB8 3C0980B1 */ lui $t1, %hi(D_80B136C4) ## $t1 = 80B10000
/* 013CC 80B12CBC 252936C4 */ addiu $t1, $t1, %lo(D_80B136C4) ## $t1 = 80B136C4
/* 013D0 80B12CC0 ADD80004 */ sw $t8, 0x0004($t6) ## FFFFFFEC
/* 013D4 80B12CC4 ADD90008 */ sw $t9, 0x0008($t6) ## FFFFFFF0
/* 013D8 80B12CC8 8D2B0000 */ lw $t3, 0x0000($t1) ## 80B136C4
/* 013DC 80B12CCC 27A80084 */ addiu $t0, $sp, 0x0084 ## $t0 = FFFFFFDC
/* 013E0 80B12CD0 8D2A0004 */ lw $t2, 0x0004($t1) ## 80B136C8
/* 013E4 80B12CD4 AD0B0000 */ sw $t3, 0x0000($t0) ## FFFFFFDC
/* 013E8 80B12CD8 8D2B0008 */ lw $t3, 0x0008($t1) ## 80B136CC
/* 013EC 80B12CDC AD0A0004 */ sw $t2, 0x0004($t0) ## FFFFFFE0
/* 013F0 80B12CE0 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000
/* 013F4 80B12CE4 AD0B0008 */ sw $t3, 0x0008($t0) ## FFFFFFE4
/* 013F8 80B12CE8 0C2C4CAA */ jal func_80B132A8
/* 013FC 80B12CEC 8FA500AC */ lw $a1, 0x00AC($sp)
/* 01400 80B12CF0 862C028C */ lh $t4, 0x028C($s1) ## 0000028C
/* 01404 80B12CF4 86220254 */ lh $v0, 0x0254($s1) ## 00000254
/* 01408 80B12CF8 3C014170 */ lui $at, 0x4170 ## $at = 41700000
/* 0140C 80B12CFC 258D0001 */ addiu $t5, $t4, 0x0001 ## $t5 = 00000001
/* 01410 80B12D00 10400003 */ beq $v0, $zero, .L80B12D10
/* 01414 80B12D04 A62D028C */ sh $t5, 0x028C($s1) ## 0000028C
/* 01418 80B12D08 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
/* 0141C 80B12D0C A62E0254 */ sh $t6, 0x0254($s1) ## 00000254
.L80B12D10:
/* 01420 80B12D10 86220258 */ lh $v0, 0x0258($s1) ## 00000258
/* 01424 80B12D14 10400002 */ beq $v0, $zero, .L80B12D20
/* 01428 80B12D18 244FFFFF */ addiu $t7, $v0, 0xFFFF ## $t7 = FFFFFFFF
/* 0142C 80B12D1C A62F0258 */ sh $t7, 0x0258($s1) ## 00000258
.L80B12D20:
/* 01430 80B12D20 8622025A */ lh $v0, 0x025A($s1) ## 0000025A
/* 01434 80B12D24 10400002 */ beq $v0, $zero, .L80B12D30
/* 01438 80B12D28 2458FFFF */ addiu $t8, $v0, 0xFFFF ## $t8 = FFFFFFFF
/* 0143C 80B12D2C A638025A */ sh $t8, 0x025A($s1) ## 0000025A
.L80B12D30:
/* 01440 80B12D30 8622025C */ lh $v0, 0x025C($s1) ## 0000025C
/* 01444 80B12D34 10400002 */ beq $v0, $zero, .L80B12D40
/* 01448 80B12D38 2459FFFF */ addiu $t9, $v0, 0xFFFF ## $t9 = FFFFFFFF
/* 0144C 80B12D3C A639025C */ sh $t9, 0x025C($s1) ## 0000025C
.L80B12D40:
/* 01450 80B12D40 8622025E */ lh $v0, 0x025E($s1) ## 0000025E
/* 01454 80B12D44 10400002 */ beq $v0, $zero, .L80B12D50
/* 01458 80B12D48 2448FFFF */ addiu $t0, $v0, 0xFFFF ## $t0 = FFFFFFFF
/* 0145C 80B12D4C A628025E */ sh $t0, 0x025E($s1) ## 0000025E
.L80B12D50:
/* 01460 80B12D50 86220262 */ lh $v0, 0x0262($s1) ## 00000262
/* 01464 80B12D54 10400002 */ beq $v0, $zero, .L80B12D60
/* 01468 80B12D58 2449FFFF */ addiu $t1, $v0, 0xFFFF ## $t1 = FFFFFFFF
/* 0146C 80B12D5C A6290262 */ sh $t1, 0x0262($s1) ## 00000262
.L80B12D60:
/* 01470 80B12D60 86220260 */ lh $v0, 0x0260($s1) ## 00000260
/* 01474 80B12D64 10400002 */ beq $v0, $zero, .L80B12D70
/* 01478 80B12D68 244AFFFF */ addiu $t2, $v0, 0xFFFF ## $t2 = FFFFFFFF
/* 0147C 80B12D6C A62A0260 */ sh $t2, 0x0260($s1) ## 00000260
.L80B12D70:
/* 01480 80B12D70 8A2C0030 */ lwl $t4, 0x0030($s1) ## 00000030
/* 01484 80B12D74 9A2C0033 */ lwr $t4, 0x0033($s1) ## 00000033
/* 01488 80B12D78 44812000 */ mtc1 $at, $f4 ## $f4 = 15.00
/* 0148C 80B12D7C 8E390250 */ lw $t9, 0x0250($s1) ## 00000250
/* 01490 80B12D80 AA2C00B4 */ swl $t4, 0x00B4($s1) ## 000000B4
/* 01494 80B12D84 BA2C00B7 */ swr $t4, 0x00B7($s1) ## 000000B7
/* 01498 80B12D88 962C0034 */ lhu $t4, 0x0034($s1) ## 00000034
/* 0149C 80B12D8C E62400C4 */ swc1 $f4, 0x00C4($s1) ## 000000C4
/* 014A0 80B12D90 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 014A4 80B12D94 A62C00B8 */ sh $t4, 0x00B8($s1) ## 000000B8
/* 014A8 80B12D98 0320F809 */ jalr $ra, $t9
/* 014AC 80B12D9C 8FA500AC */ lw $a1, 0x00AC($sp)
/* 014B0 80B12DA0 0C00B638 */ jal Actor_MoveForward
/* 014B4 80B12DA4 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 014B8 80B12DA8 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000
/* 014BC 80B12DAC 44810000 */ mtc1 $at, $f0 ## $f0 = 20.00
/* 014C0 80B12DB0 3C014270 */ lui $at, 0x4270 ## $at = 42700000
/* 014C4 80B12DB4 44813000 */ mtc1 $at, $f6 ## $f6 = 60.00
/* 014C8 80B12DB8 240D001D */ addiu $t5, $zero, 0x001D ## $t5 = 0000001D
/* 014CC 80B12DBC 44060000 */ mfc1 $a2, $f0
/* 014D0 80B12DC0 44070000 */ mfc1 $a3, $f0
/* 014D4 80B12DC4 AFAD0014 */ sw $t5, 0x0014($sp)
/* 014D8 80B12DC8 8FA400AC */ lw $a0, 0x00AC($sp)
/* 014DC 80B12DCC 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 014E0 80B12DD0 0C00B92D */ jal func_8002E4B4
/* 014E4 80B12DD4 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 014E8 80B12DD8 862E02A0 */ lh $t6, 0x02A0($s1) ## 000002A0
/* 014EC 80B12DDC 3C014100 */ lui $at, 0x4100 ## $at = 41000000
/* 014F0 80B12DE0 51C0003F */ beql $t6, $zero, .L80B12EE0
/* 014F4 80B12DE4 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 014F8 80B12DE8 4481E000 */ mtc1 $at, $f28 ## $f28 = 8.00
/* 014FC 80B12DEC 3C014000 */ lui $at, 0x4000 ## $at = 40000000
/* 01500 80B12DF0 4481C000 */ mtc1 $at, $f24 ## $f24 = 2.00
/* 01504 80B12DF4 3C014040 */ lui $at, 0x4040 ## $at = 40400000
/* 01508 80B12DF8 4481B000 */ mtc1 $at, $f22 ## $f22 = 3.00
/* 0150C 80B12DFC 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 01510 80B12E00 4481A000 */ mtc1 $at, $f20 ## $f20 = 10.00
/* 01514 80B12E04 4480D000 */ mtc1 $zero, $f26 ## $f26 = 0.00
/* 01518 80B12E08 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000
.L80B12E0C:
/* 0151C 80B12E0C 0C00CFC8 */ jal Math_Rand_CenteredFloat
/* 01520 80B12E10 4600A306 */ mov.s $f12, $f20
/* 01524 80B12E14 C6280024 */ lwc1 $f8, 0x0024($s1) ## 00000024
/* 01528 80B12E18 4600A306 */ mov.s $f12, $f20
/* 0152C 80B12E1C 46080280 */ add.s $f10, $f0, $f8
/* 01530 80B12E20 0C00CFC8 */ jal Math_Rand_CenteredFloat
/* 01534 80B12E24 E7AA0078 */ swc1 $f10, 0x0078($sp)
/* 01538 80B12E28 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000
/* 0153C 80B12E2C 44819000 */ mtc1 $at, $f18 ## $f18 = 20.00
/* 01540 80B12E30 C6300028 */ lwc1 $f16, 0x0028($s1) ## 00000028
/* 01544 80B12E34 4600A306 */ mov.s $f12, $f20
/* 01548 80B12E38 46128100 */ add.s $f4, $f16, $f18
/* 0154C 80B12E3C 46040180 */ add.s $f6, $f0, $f4
/* 01550 80B12E40 0C00CFC8 */ jal Math_Rand_CenteredFloat
/* 01554 80B12E44 E7A6007C */ swc1 $f6, 0x007C($sp)
/* 01558 80B12E48 C628002C */ lwc1 $f8, 0x002C($s1) ## 0000002C
/* 0155C 80B12E4C 4600B306 */ mov.s $f12, $f22
/* 01560 80B12E50 46080280 */ add.s $f10, $f0, $f8
/* 01564 80B12E54 0C00CFC8 */ jal Math_Rand_CenteredFloat
/* 01568 80B12E58 E7AA0080 */ swc1 $f10, 0x0080($sp)
/* 0156C 80B12E5C E7A0006C */ swc1 $f0, 0x006C($sp)
/* 01570 80B12E60 0C00CFBE */ jal Math_Rand_ZeroFloat
/* 01574 80B12E64 4600C306 */ mov.s $f12, $f24
/* 01578 80B12E68 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
/* 0157C 80B12E6C 44818000 */ mtc1 $at, $f16 ## $f16 = 0.50
/* 01580 80B12E70 4600B306 */ mov.s $f12, $f22
/* 01584 80B12E74 46100482 */ mul.s $f18, $f0, $f16
/* 01588 80B12E78 46189100 */ add.s $f4, $f18, $f24
/* 0158C 80B12E7C 0C00CFC8 */ jal Math_Rand_CenteredFloat
/* 01590 80B12E80 E7A40070 */ swc1 $f4, 0x0070($sp)
/* 01594 80B12E84 3C0180B1 */ lui $at, %hi(D_80B1382C) ## $at = 80B10000
/* 01598 80B12E88 C426382C */ lwc1 $f6, %lo(D_80B1382C)($at)
/* 0159C 80B12E8C E7A00074 */ swc1 $f0, 0x0074($sp)
/* 015A0 80B12E90 E7BA0060 */ swc1 $f26, 0x0060($sp)
/* 015A4 80B12E94 E7BA0068 */ swc1 $f26, 0x0068($sp)
/* 015A8 80B12E98 4600E306 */ mov.s $f12, $f28
/* 015AC 80B12E9C 0C00CFBE */ jal Math_Rand_ZeroFloat
/* 015B0 80B12EA0 E7A60064 */ swc1 $f6, 0x0064($sp)
/* 015B4 80B12EA4 461C0200 */ add.s $f8, $f0, $f28
/* 015B8 80B12EA8 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 015BC 80B12EAC 27A50078 */ addiu $a1, $sp, 0x0078 ## $a1 = FFFFFFD0
/* 015C0 80B12EB0 27A6006C */ addiu $a2, $sp, 0x006C ## $a2 = FFFFFFC4
/* 015C4 80B12EB4 E7A80010 */ swc1 $f8, 0x0010($sp)
/* 015C8 80B12EB8 0C2C4C6E */ jal func_80B131B8
/* 015CC 80B12EBC 27A70060 */ addiu $a3, $sp, 0x0060 ## $a3 = FFFFFFB8
/* 015D0 80B12EC0 26100001 */ addiu $s0, $s0, 0x0001 ## $s0 = 00000001
/* 015D4 80B12EC4 00108400 */ sll $s0, $s0, 16
/* 015D8 80B12EC8 00108403 */ sra $s0, $s0, 16
/* 015DC 80B12ECC 2A010014 */ slti $at, $s0, 0x0014
/* 015E0 80B12ED0 1420FFCE */ bne $at, $zero, .L80B12E0C
/* 015E4 80B12ED4 00000000 */ nop
/* 015E8 80B12ED8 A62002A0 */ sh $zero, 0x02A0($s1) ## 000002A0
/* 015EC 80B12EDC 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
.L80B12EE0:
/* 015F0 80B12EE0 0C2C4AE9 */ jal func_80B12BA4
/* 015F4 80B12EE4 8FA500AC */ lw $a1, 0x00AC($sp)
/* 015F8 80B12EE8 862F0262 */ lh $t7, 0x0262($s1) ## 00000262
/* 015FC 80B12EEC 55E00012 */ bnel $t7, $zero, .L80B12F38
/* 01600 80B12EF0 8622029E */ lh $v0, 0x029E($s1) ## 0000029E
/* 01604 80B12EF4 8E280250 */ lw $t0, 0x0250($s1) ## 00000250
/* 01608 80B12EF8 3C1880B1 */ lui $t8, %hi(func_80B11E78) ## $t8 = 80B10000
/* 0160C 80B12EFC 27181E78 */ addiu $t8, $t8, %lo(func_80B11E78) ## $t8 = 80B11E78
/* 01610 80B12F00 17080008 */ bne $t8, $t0, .L80B12F24
/* 01614 80B12F04 240A001E */ addiu $t2, $zero, 0x001E ## $t2 = 0000001E
/* 01618 80B12F08 2409012C */ addiu $t1, $zero, 0x012C ## $t1 = 0000012C
/* 0161C 80B12F0C A6290262 */ sh $t1, 0x0262($s1) ## 00000262
/* 01620 80B12F10 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 01624 80B12F14 0C00BE0A */ jal Audio_PlayActorSound2
/* 01628 80B12F18 24052811 */ addiu $a1, $zero, 0x2811 ## $a1 = 00002811
/* 0162C 80B12F1C 10000006 */ beq $zero, $zero, .L80B12F38
/* 01630 80B12F20 8622029E */ lh $v0, 0x029E($s1) ## 0000029E
.L80B12F24:
/* 01634 80B12F24 A62A0262 */ sh $t2, 0x0262($s1) ## 00000262
/* 01638 80B12F28 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 0163C 80B12F2C 0C00BE0A */ jal Audio_PlayActorSound2
/* 01640 80B12F30 24052812 */ addiu $a1, $zero, 0x2812 ## $a1 = 00002812
/* 01644 80B12F34 8622029E */ lh $v0, 0x029E($s1) ## 0000029E
.L80B12F38:
/* 01648 80B12F38 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000
/* 0164C 80B12F3C 8FAB00AC */ lw $t3, 0x00AC($sp)
/* 01650 80B12F40 10400006 */ beq $v0, $zero, .L80B12F5C
/* 01654 80B12F44 3C0C0001 */ lui $t4, 0x0001 ## $t4 = 00010000
/* 01658 80B12F48 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 0165C 80B12F4C 5041000A */ beql $v0, $at, .L80B12F78
/* 01660 80B12F50 24100001 */ addiu $s0, $zero, 0x0001 ## $s0 = 00000001
/* 01664 80B12F54 10000008 */ beq $zero, $zero, .L80B12F78
/* 01668 80B12F58 00000000 */ nop
.L80B12F5C:
/* 0166C 80B12F5C 018B6021 */ addu $t4, $t4, $t3
/* 01670 80B12F60 818C1E5C */ lb $t4, 0x1E5C($t4) ## 00011E5C
/* 01674 80B12F64 11800004 */ beq $t4, $zero, .L80B12F78
/* 01678 80B12F68 00000000 */ nop
/* 0167C 80B12F6C 10000002 */ beq $zero, $zero, .L80B12F78
/* 01680 80B12F70 24100001 */ addiu $s0, $zero, 0x0001 ## $s0 = 00000001
/* 01684 80B12F74 24100001 */ addiu $s0, $zero, 0x0001 ## $s0 = 00000001
.L80B12F78:
/* 01688 80B12F78 1200000F */ beq $s0, $zero, .L80B12FB8
/* 0168C 80B12F7C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 01690 80B12F80 263002FC */ addiu $s0, $s1, 0x02FC ## $s0 = 000002FC
/* 01694 80B12F84 0C0189B7 */ jal Collider_CylinderUpdate
/* 01698 80B12F88 02002825 */ or $a1, $s0, $zero ## $a1 = 000002FC
/* 0169C 80B12F8C 8FA400AC */ lw $a0, 0x00AC($sp)
/* 016A0 80B12F90 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 016A4 80B12F94 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
/* 016A8 80B12F98 00812821 */ addu $a1, $a0, $at
/* 016AC 80B12F9C AFA50054 */ sw $a1, 0x0054($sp)
/* 016B0 80B12FA0 0C01767D */ jal CollisionCheck_SetAC
## CollisionCheck_setAC
/* 016B4 80B12FA4 02003025 */ or $a2, $s0, $zero ## $a2 = 000002FC
/* 016B8 80B12FA8 8FA50054 */ lw $a1, 0x0054($sp)
/* 016BC 80B12FAC 8FA400AC */ lw $a0, 0x00AC($sp)
/* 016C0 80B12FB0 0C017713 */ jal CollisionCheck_SetOC
## CollisionCheck_setOT
/* 016C4 80B12FB4 02003025 */ or $a2, $s0, $zero ## $a2 = 000002FC
.L80B12FB8:
/* 016C8 80B12FB8 8FBF004C */ lw $ra, 0x004C($sp)
/* 016CC 80B12FBC D7B40018 */ ldc1 $f20, 0x0018($sp)
/* 016D0 80B12FC0 D7B60020 */ ldc1 $f22, 0x0020($sp)
/* 016D4 80B12FC4 D7B80028 */ ldc1 $f24, 0x0028($sp)
/* 016D8 80B12FC8 D7BA0030 */ ldc1 $f26, 0x0030($sp)
/* 016DC 80B12FCC D7BC0038 */ ldc1 $f28, 0x0038($sp)
/* 016E0 80B12FD0 8FB00044 */ lw $s0, 0x0044($sp)
/* 016E4 80B12FD4 8FB10048 */ lw $s1, 0x0048($sp)
/* 016E8 80B12FD8 03E00008 */ jr $ra
/* 016EC 80B12FDC 27BD00A8 */ addiu $sp, $sp, 0x00A8 ## $sp = 00000000

View file

@ -1,13 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purpose registers
.section .rodata
.balign 16
glabel D_808BF390
.incbin "baserom/ovl_Bg_Ydan_Maruta", 0x650, 0x00000080

View file

@ -1,13 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purpose registers
.section .rodata
.balign 16
glabel D_80A0B550
.incbin "baserom/ovl_En_Ex_Ruppy", 0x1140, 0x00000170

View file

@ -1,13 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purpose registers
.section .rodata
.balign 16
glabel D_80B13840
.incbin "baserom/ovl_En_Syateki_Niw", 0x1F50, 0x00000260

View file

@ -74,15 +74,14 @@
} \ } \
(void)0 (void)0
#define OPEN_DISPS_INNER(gfxCtx, file, line) \ extern GraphicsContext* oGfxCtx;
oGfxCtx = gfxCtx; \
Graph_OpenDisps(dispRefs, gfxCtx, file, line)
#define OPEN_DISPS(gfxCtx, file, line) \ #define OPEN_DISPS(gfxCtx, file, line) \
{ \ { \
GraphicsContext* oGfxCtx; \ GraphicsContext* oGfxCtx; \
Gfx* dispRefs[4]; \ Gfx* dispRefs[4]; \
OPEN_DISPS_INNER(gfxCtx, file, line) oGfxCtx = gfxCtx; \
Graph_OpenDisps(dispRefs, gfxCtx, file, line)
#define CLOSE_DISPS(gfxCtx, file, line) \ #define CLOSE_DISPS(gfxCtx, file, line) \
Graph_CloseDisps(dispRefs, gfxCtx, file, line); \ Graph_CloseDisps(dispRefs, gfxCtx, file, line); \

View file

@ -49,8 +49,6 @@
#define _SHIFTR(v, s, w) \ #define _SHIFTR(v, s, w) \
((unsigned int)(((unsigned int)(v) >> (s)) & ((0x01 << (w)) - 1))) ((unsigned int)(((unsigned int)(v) >> (s)) & ((0x01 << (w)) - 1)))
#define _SHIFT _SHIFTL /* old, for compatibility only */
#define G_ON (1) #define G_ON (1)
#define G_OFF (0) #define G_OFF (0)

14
spec
View file

@ -1427,11 +1427,7 @@ endseg
beginseg beginseg
name "ovl_Bg_Ydan_Maruta" name "ovl_Bg_Ydan_Maruta"
include "build/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.o" include "build/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.o"
#ifdef NON_MATCHING
include "build/src/overlays/actors/ovl_Bg_Ydan_Maruta/ovl_Bg_Ydan_Maruta_reloc.o" include "build/src/overlays/actors/ovl_Bg_Ydan_Maruta/ovl_Bg_Ydan_Maruta_reloc.o"
#else
include "build/data/overlays/actors/z_bg_ydan_maruta.reloc.o"
#endif
endseg endseg
beginseg beginseg
@ -2335,11 +2331,7 @@ endseg
beginseg beginseg
name "ovl_En_Ex_Ruppy" name "ovl_En_Ex_Ruppy"
include "build/src/overlays/actors/ovl_En_Ex_Ruppy/z_en_ex_ruppy.o" include "build/src/overlays/actors/ovl_En_Ex_Ruppy/z_en_ex_ruppy.o"
#ifdef NON_MATCHING include "build/src/overlays/actors/ovl_En_Ex_Ruppy/ovl_En_Ex_Ruppy_reloc.o"
include "build/src/overlays/actors/ovl_En_Ex_Ruppy/ovl_En_Ex_ruppy.reloc.o"
#else
include "build/data/overlays/actors/z_en_ex_ruppy.reloc.o"
#endif
endseg endseg
beginseg beginseg
@ -3170,11 +3162,7 @@ endseg
beginseg beginseg
name "ovl_En_Syateki_Niw" name "ovl_En_Syateki_Niw"
include "build/src/overlays/actors/ovl_En_Syateki_Niw/z_en_syateki_niw.o" include "build/src/overlays/actors/ovl_En_Syateki_Niw/z_en_syateki_niw.o"
#ifdef NON_MATCHING
include "build/src/overlays/actors/ovl_En_Syateki_Niw/ovl_En_Syateki_Niw_reloc.o" include "build/src/overlays/actors/ovl_En_Syateki_Niw/ovl_En_Syateki_Niw_reloc.o"
#else
include "build/data/overlays/actors/z_en_syateki_niw.reloc.o"
#endif
endseg endseg
beginseg beginseg

View file

@ -5,25 +5,19 @@ void func_80110990(GlobalContext* globalCtx) {
Map_Destroy(globalCtx); Map_Destroy(globalCtx);
} }
#ifdef NON_MATCHING
// regalloc, stack usage and minor ordering differences
void func_801109B0(GlobalContext* globalCtx) { void func_801109B0(GlobalContext* globalCtx) {
InterfaceContext* interfaceCtx = &globalCtx->interfaceCtx; InterfaceContext* interfaceCtx = &globalCtx->interfaceCtx;
s32 parameterStart; u32 parameterSize;
s32 parameterSize; u16 do_actionOffset;
s32 do_actionStart; u8 temp;
s32 do_actionOffset;
s32 temp;
gSaveContext.unk_1422 = 0; gSaveContext.unk_1422 = 0;
gSaveContext.unk_13EA = 0; gSaveContext.unk_13E8 = gSaveContext.unk_13EA = 0;
gSaveContext.unk_13E8 = 0;
View_Init(&interfaceCtx->view, globalCtx->state.gfxCtx); View_Init(&interfaceCtx->view, globalCtx->state.gfxCtx);
interfaceCtx->unk_1EC = interfaceCtx->unk_1EE = 0;
interfaceCtx->unk_1FA = interfaceCtx->unk_261 = interfaceCtx->unk_1FC = 0; interfaceCtx->unk_1FA = interfaceCtx->unk_261 = interfaceCtx->unk_1FC = 0;
interfaceCtx->unk_1F0 = 0; interfaceCtx->unk_1EC = interfaceCtx->unk_1EE = interfaceCtx->unk_1F0 = 0;
interfaceCtx->unk_22E = 0; interfaceCtx->unk_22E = 0;
interfaceCtx->unk_230 = 16; interfaceCtx->unk_230 = 16;
interfaceCtx->unk_1F4 = 0.0f; interfaceCtx->unk_1F4 = 0.0f;
@ -34,34 +28,32 @@ void func_801109B0(GlobalContext* globalCtx) {
interfaceCtx->cDownAlpha = interfaceCtx->cRightAlpha = interfaceCtx->healthAlpha = interfaceCtx->startAlpha = interfaceCtx->cDownAlpha = interfaceCtx->cRightAlpha = interfaceCtx->healthAlpha = interfaceCtx->startAlpha =
interfaceCtx->magicAlpha = 0; interfaceCtx->magicAlpha = 0;
parameterStart = _parameter_staticSegmentRomStart; parameterSize = (u32)_parameter_staticSegmentRomEnd - (u32)_parameter_staticSegmentRomStart;
parameterSize = _parameter_staticSegmentRomEnd - parameterStart;
// Translates to: "Permanent PARAMETER Segment = %x" // Translates to: "Permanent PARAMETER Segment = %x"
osSyncPrintf("常駐PARAMETERセグメント=%x\n", parameterSize); osSyncPrintf("常駐PARAMETERセグメント=%x\n", parameterSize);
interfaceCtx->parameterSegment = GameState_Alloc(&globalCtx->state, parameterSize, "../z_construct.c", 159); interfaceCtx->parameterSegment = GameState_Alloc(&globalCtx->state, parameterSize, "../z_construct.c", 159);
osSyncPrintf("parameter->parameterSegment=%x", interfaceCtx->parameterSegment); osSyncPrintf("parameter->parameterSegment=%x\n", interfaceCtx->parameterSegment);
if (interfaceCtx->parameterSegment == NULL) { if (interfaceCtx->parameterSegment == NULL) {
__assert("parameter->parameterSegment != NULL", "../z_construct.c", 161); __assert("parameter->parameterSegment != NULL", "../z_construct.c", 161);
} }
DmaMgr_SendRequest1(interfaceCtx->parameterSegment, parameterStart, parameterSize, "../z_construct.c", 162); DmaMgr_SendRequest1(interfaceCtx->parameterSegment, (u32)_parameter_staticSegmentRomStart, parameterSize,
"../z_construct.c", 162);
interfaceCtx->do_actionSegment = GameState_Alloc(&globalCtx->state, 0x480, "../z_construct.c", 166); interfaceCtx->do_actionSegment = GameState_Alloc(&globalCtx->state, 0x480, "../z_construct.c", 166);
// Translates to: "DO Action Texture Initialization" // Translates to: "DO Action Texture Initialization"
osSyncPrintf("DOアクション テクスチャ初期=%x\n", 0x480); osSyncPrintf("DOアクション テクスチャ初期=%x\n", 0x480);
osSyncPrintf("parameter->do_actionSegment=%x", interfaceCtx->do_actionSegment); osSyncPrintf("parameter->do_actionSegment=%x\n", interfaceCtx->do_actionSegment);
if (interfaceCtx->do_actionSegment == NULL) { if (interfaceCtx->do_actionSegment == NULL) {
__assert("parameter->do_actionSegment != NULL", "../z_construct.c", 169); __assert("parameter->do_actionSegment != NULL", "../z_construct.c", 169);
} }
do_actionStart = _do_action_staticSegmentRomStart;
if (gSaveContext.language == 0) { if (gSaveContext.language == 0) {
do_actionOffset = 0; do_actionOffset = 0;
} else if (gSaveContext.language == 1) { } else if (gSaveContext.language == 1) {
@ -70,8 +62,8 @@ void func_801109B0(GlobalContext* globalCtx) {
do_actionOffset = 0x5700; do_actionOffset = 0x5700;
} }
DmaMgr_SendRequest1(interfaceCtx->do_actionSegment, do_actionStart + do_actionOffset, 0x300, "../z_construct.c", DmaMgr_SendRequest1(interfaceCtx->do_actionSegment, (u32)_do_action_staticSegmentRomStart + do_actionOffset, 0x300,
174); "../z_construct.c", 174);
if (gSaveContext.language == 0) { if (gSaveContext.language == 0) {
do_actionOffset = 0x480; do_actionOffset = 0x480;
@ -81,8 +73,8 @@ void func_801109B0(GlobalContext* globalCtx) {
do_actionOffset = 0x5B80; do_actionOffset = 0x5B80;
} }
DmaMgr_SendRequest1((void*)((u32)interfaceCtx->do_actionSegment + 0x300), do_actionStart + do_actionOffset, 0x180, DmaMgr_SendRequest1((void*)((u32)interfaceCtx->do_actionSegment + 0x300),
"../z_construct.c", 178); (u32)_do_action_staticSegmentRomStart + do_actionOffset, 0x180, "../z_construct.c", 178);
interfaceCtx->icon_itemSegment = GameState_Alloc(&globalCtx->state, 0x4000, "../z_construct.c", 190); interfaceCtx->icon_itemSegment = GameState_Alloc(&globalCtx->state, 0x4000, "../z_construct.c", 190);
@ -126,11 +118,11 @@ void func_801109B0(GlobalContext* globalCtx) {
"../z_construct.c", 219); "../z_construct.c", 219);
} }
osSyncPrintf("%d\n", gSaveContext.timer1State); osSyncPrintf("%d\n", ((void)0, gSaveContext.timer1State));
if ((gSaveContext.timer1State == 4) || (gSaveContext.timer1State == 8) || (gSaveContext.timer2State == 4) || if ((gSaveContext.timer1State == 4) || (gSaveContext.timer1State == 8) || (gSaveContext.timer2State == 4) ||
(gSaveContext.timer2State == 10)) { (gSaveContext.timer2State == 10)) {
osSyncPrintf("restart_flag=%d\n", gSaveContext.respawnFlag); osSyncPrintf("restart_flag=%d\n", ((void)0, gSaveContext.respawnFlag));
if ((gSaveContext.respawnFlag == -1) || (gSaveContext.respawnFlag == 1)) { if ((gSaveContext.respawnFlag == -1) || (gSaveContext.respawnFlag == 1)) {
if (gSaveContext.timer1State == 4) { if (gSaveContext.timer1State == 4) {
@ -167,8 +159,7 @@ void func_801109B0(GlobalContext* globalCtx) {
Health_InitData(globalCtx); Health_InitData(globalCtx);
Map_Init(globalCtx); Map_Init(globalCtx);
interfaceCtx->unk_242 = 0; interfaceCtx->unk_23C = interfaceCtx->unk_242 = 0;
interfaceCtx->unk_23C = 0;
R_ITEM_BTN_X(0) = 160; R_ITEM_BTN_X(0) = 160;
R_B_BTN_COLOR(0) = 255; R_B_BTN_COLOR(0) = 255;
@ -182,9 +173,6 @@ void func_801109B0(GlobalContext* globalCtx) {
R_A_BTN_COLOR(1) = 200; R_A_BTN_COLOR(1) = 200;
R_A_BTN_COLOR(2) = 50; R_A_BTN_COLOR(2) = 50;
} }
#else
#pragma GLOBAL_ASM("asm/non_matchings/code/z_construct/func_801109B0.s")
#endif
void func_80110F68(GlobalContext* globalCtx) { void func_80110F68(GlobalContext* globalCtx) {
MessageContext* msgCtx = &globalCtx->msgCtx; MessageContext* msgCtx = &globalCtx->msgCtx;

View file

@ -129,14 +129,12 @@ s32 EffectSpark_Update(void* thisx) {
} }
// original name: "EffectSparkInfo_disp" // original name: "EffectSparkInfo_disp"
#ifdef NON_MATCHING
// minor ordering and saved register usage differences
void EffectSpark_Draw(void* thisx, GraphicsContext* gfxCtx) { void EffectSpark_Draw(void* thisx, GraphicsContext* gfxCtx) {
Vtx* vertices; Vtx* vertices;
EffectSpark* this = (EffectSpark*)thisx; // sp1E0 EffectSpark* this = (EffectSpark*)thisx;
EffectSparkElement* elem;
GlobalContext* globalCtx; GlobalContext* globalCtx;
f32 ratio; s32 i;
s32 j;
u8 sp1D3; u8 sp1D3;
u8 sp1D2; u8 sp1D2;
u8 sp1D1; u8 sp1D1;
@ -153,11 +151,12 @@ void EffectSpark_Draw(void* thisx, GraphicsContext* gfxCtx) {
u8 sp1C6; u8 sp1C6;
u8 sp1C5; u8 sp1C5;
u8 sp1C4; u8 sp1C4;
s32 i; f32 ratio;
s32 j;
globalCtx = Effect_GetGlobalCtx(); globalCtx = Effect_GetGlobalCtx();
if (1) {}
OPEN_DISPS(gfxCtx, "../z_eff_spark.c", 293); OPEN_DISPS(gfxCtx, "../z_eff_spark.c", 293);
if (this != NULL) { if (this != NULL) {
@ -182,7 +181,7 @@ void EffectSpark_Draw(void* thisx, GraphicsContext* gfxCtx) {
if (vertices == NULL) { if (vertices == NULL) {
// Translates to: "Memory Allocation Failure graph_malloc" // Translates to: "Memory Allocation Failure graph_malloc"
osSyncPrintf("EffectSparkInfo_disp():メモリー確保失敗 graph_malloc\n"); osSyncPrintf("EffectSparkInfo_disp():メモリー確保失敗 graph_malloc\n");
return; goto end;
} }
j = 0; j = 0;
@ -210,6 +209,7 @@ void EffectSpark_Draw(void* thisx, GraphicsContext* gfxCtx) {
MtxF spEC; MtxF spEC;
MtxF spAC; MtxF spAC;
MtxF sp6C; MtxF sp6C;
EffectSparkElement* elem;
Mtx* mtx; Mtx* mtx;
f32 temp; f32 temp;
@ -267,11 +267,9 @@ void EffectSpark_Draw(void* thisx, GraphicsContext* gfxCtx) {
j += 4; j += 4;
if (this) {}
mtx = SkinMatrix_MtxFToNewMtx(gfxCtx, &sp12C); mtx = SkinMatrix_MtxFToNewMtx(gfxCtx, &sp12C);
if (mtx == NULL) { if (mtx == NULL) {
break; goto end;
} }
gSPMatrix(oGfxCtx->polyXlu.p++, mtx, G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); gSPMatrix(oGfxCtx->polyXlu.p++, mtx, G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
@ -282,8 +280,6 @@ void EffectSpark_Draw(void* thisx, GraphicsContext* gfxCtx) {
gDPPipeSync(oGfxCtx->polyXlu.p++); gDPPipeSync(oGfxCtx->polyXlu.p++);
} }
end:
CLOSE_DISPS(gfxCtx, "../z_eff_spark.c", 498); CLOSE_DISPS(gfxCtx, "../z_eff_spark.c", 498);
} }
#else
#pragma GLOBAL_ASM("asm/non_matchings/code/z_eff_spark/EffectSpark_Draw.s")
#endif

View file

@ -14,18 +14,17 @@ ElfMessage sAdultSariaMsgs[] = {
{ 0x06, 0x30, 0x6C, 0x69 }, { 0x06, 0x30, 0x6C, 0x6A }, { 0xE0, 0x00, 0x6D, 0x00 }, { 0x06, 0x30, 0x6C, 0x69 }, { 0x06, 0x30, 0x6C, 0x6A }, { 0xE0, 0x00, 0x6D, 0x00 },
}; };
#ifdef NON_MATCHING
// minor ordering and regalloc differences
u32 ElfMessage_CheckCondition(ElfMessage* msg) { u32 ElfMessage_CheckCondition(ElfMessage* msg) {
u16 temp; s32 type = msg->byte0 & 0x1E;
u16 flag;
switch (msg->byte0 & 0x1E) { switch (type) {
case 0: case 0:
temp = 1 << (msg->byte1 & 0x0F); flag = 1 << (msg->byte1 & 0x0F);
return ((msg->byte0 & 1) == 1) == !!(gSaveContext.eventChkInf[(msg->byte1 & 0xF0) >> 4] & temp); return ((msg->byte0 & 1) == 1) == ((flag & gSaveContext.eventChkInf[(msg->byte1 & 0xF0) >> 4]) != 0);
case 2: case 2:
return ((msg->byte0 & 1) == 1) == return ((msg->byte0 & 1) == 1) ==
!!(gBitFlags[msg->byte1 - ITEM_KEY_BOSS] & gSaveContext.dungeonItems[gSaveContext.mapIndex]); ((gSaveContext.dungeonItems[gSaveContext.mapIndex] & gBitFlags[msg->byte1 - ITEM_KEY_BOSS]) != 0);
case 4: case 4:
return ((msg->byte0 & 1) == 1) == (msg->byte3 == INV_CONTENT(msg->byte1)); return ((msg->byte0 & 1) == 1) == (msg->byte3 == INV_CONTENT(msg->byte1));
case 6: case 6:
@ -34,16 +33,16 @@ u32 ElfMessage_CheckCondition(ElfMessage* msg) {
return ((msg->byte0 & 1) == 1) == ((msg->byte1 & 0x0F) == CUR_UPG_VALUE(UPG_STRENGTH)); return ((msg->byte0 & 1) == 1) == ((msg->byte1 & 0x0F) == CUR_UPG_VALUE(UPG_STRENGTH));
case 0x10: case 0x10:
return ((msg->byte0 & 1) == 1) == return ((msg->byte0 & 1) == 1) ==
!!((gBitFlags[msg->byte3 - ITEM_BOOTS_KOKIRI] << gEquipShifts[EQUIP_BOOTS]) & (((gBitFlags[msg->byte3 - ITEM_BOOTS_KOKIRI] << gEquipShifts[EQUIP_BOOTS]) &
gSaveContext.equipment); gSaveContext.equipment) != 0);
case 0x20: case 0x20:
return ((msg->byte0 & 1) == 1) == return ((msg->byte0 & 1) == 1) ==
!!(CHECK_QUEST_ITEM(msg->byte3 - ITEM_SONG_MINUET + QUEST_SONG_MINUET)); ((CHECK_QUEST_ITEM(msg->byte3 - ITEM_SONG_MINUET + QUEST_SONG_MINUET)) != 0);
case 0x30: case 0x30:
return ((msg->byte0 & 1) == 1) == return ((msg->byte0 & 1) == 1) ==
!!(CHECK_QUEST_ITEM(msg->byte3 - ITEM_MEDALLION_FOREST + QUEST_MEDALLION_FOREST)); ((CHECK_QUEST_ITEM(msg->byte3 - ITEM_MEDALLION_FOREST + QUEST_MEDALLION_FOREST)) != 0);
case 0x40: case 0x40:
return ((msg->byte0 & 1) == 1) == !!gSaveContext.magicAcquired; return ((msg->byte0 & 1) == 1) == (((void)0, gSaveContext.magicAcquired) != 0);
} }
} }
@ -53,10 +52,6 @@ u32 ElfMessage_CheckCondition(ElfMessage* msg) {
return false; return false;
} }
#else
u32 ElfMessage_CheckCondition(ElfMessage* msg);
#pragma GLOBAL_ASM("asm/non_matchings/code/z_elf_message/ElfMessage_CheckCondition.s")
#endif
u32 func_8006BE88(ElfMessage** msgp) { u32 func_8006BE88(ElfMessage** msgp) {
u32 temp = true; u32 temp = true;

View file

@ -36,6 +36,7 @@ void TransitionFade_Destroy(TransitionFade* this) {
} }
#ifdef NON_MATCHING #ifdef NON_MATCHING
// ordering differences
void TransitionFade_Update(TransitionFade* this, s32 updateRate) { void TransitionFade_Update(TransitionFade* this, s32 updateRate) {
char pad[2]; char pad[2];
s16 newAlpha; s16 newAlpha;
@ -50,7 +51,7 @@ void TransitionFade_Update(TransitionFade* this, s32 updateRate) {
this->fadeTimer = gSaveContext.fadeDuration; this->fadeTimer = gSaveContext.fadeDuration;
this->isDone = 1; this->isDone = 1;
} }
if (gSaveContext.fadeDuration == 0) { if (!gSaveContext.fadeDuration) {
// Divide by 0! Zero is included in ZCommonGet fade_speed // Divide by 0! Zero is included in ZCommonGet fade_speed
osSyncPrintf(VT_COL(RED, WHITE) "0除算! ZCommonGet fade_speed に0がはいってる" VT_RST); osSyncPrintf(VT_COL(RED, WHITE) "0除算! ZCommonGet fade_speed に0がはいってる" VT_RST);
} }

View file

@ -142,8 +142,6 @@ typedef struct {
/* 0x10 */ s16 type; /* 0x10 */ s16 type;
} struct_8011F9B8; } struct_8011F9B8;
#ifdef NON_MATCHING
// regalloc differences
void func_8006D684(GlobalContext* globalCtx, Player* player) { void func_8006D684(GlobalContext* globalCtx, Player* player) {
s32 pad; s32 pad;
s32 i; s32 i;
@ -203,9 +201,9 @@ void func_8006D684(GlobalContext* globalCtx, Player* player) {
for (i = 0; i < ARRAY_COUNT(D_8011F9B8); i++) { for (i = 0; i < ARRAY_COUNT(D_8011F9B8); i++) {
if ((globalCtx->sceneNum == D_8011F9B8[i].scene) && if ((globalCtx->sceneNum == D_8011F9B8[i].scene) &&
(gSaveContext.cutsceneIndex == D_8011F9B8[i].cutsceneIndex)) { (((void)0, gSaveContext.cutsceneIndex) == D_8011F9B8[i].cutsceneIndex)) {
if (D_8011F9B8[i].type == 7) { if (D_8011F9B8[i].type == 7) {
if ((globalCtx->sceneNum == 99) && (gSaveContext.cutsceneIndex == 0xFFF1)) { if ((globalCtx->sceneNum == 99) && (((void)0, gSaveContext.cutsceneIndex) == 0xFFF1)) {
D_8011F9B8[i].pos.x = player->actor.posRot.pos.x; D_8011F9B8[i].pos.x = player->actor.posRot.pos.x;
D_8011F9B8[i].pos.y = player->actor.posRot.pos.y; D_8011F9B8[i].pos.y = player->actor.posRot.pos.y;
D_8011F9B8[i].pos.z = player->actor.posRot.pos.z; D_8011F9B8[i].pos.z = player->actor.posRot.pos.z;
@ -223,7 +221,6 @@ void func_8006D684(GlobalContext* globalCtx, Player* player) {
} else if ((D_8011F9B8[i].type == 5) || (D_8011F9B8[i].type == 6) || (D_8011F9B8[i].type == 8)) { } else if ((D_8011F9B8[i].type == 5) || (D_8011F9B8[i].type == 6) || (D_8011F9B8[i].type == 8)) {
Vec3f sp54; Vec3f sp54;
s32 temp; s32 temp;
s32 pad2;
temp = 0; temp = 0;
if (((gSaveContext.eventInf[0] & 0x10) >> 4) && D_8011F9B8[i].type == 6) { if (((gSaveContext.eventInf[0] & 0x10) >> 4) && D_8011F9B8[i].type == 6) {
@ -261,21 +258,6 @@ void func_8006D684(GlobalContext* globalCtx, Player* player) {
} }
} }
} }
#else
Vec3s D_8011F9A0[] = {
{ 0xF46F, 0x0139, 0x1E14 },
{ 0xF894, 0x0139, 0x1B67 },
{ 0xF035, 0x0139, 0x1B15 },
{ 0xF6F7, 0x0139, 0x1766 },
};
struct_8011F9B8 D_8011F9B8[] = {
{ 93, 0xFFF0, 0x0E10, 0x0585, 0x0168, 0x8001, 8 }, { 99, 0xFFF0, 0xFF06, 0x0001, 0xF9D4, 0x4000, 6 },
{ 99, 0xFFF1, 0x0000, 0x0000, 0x0000, 0x0000, 5 }, { 99, 0xFFF5, 0x0000, 0x0000, 0x0000, 0x0000, 7 },
{ 81, 0xFFF3, 0xF46F, 0x0139, 0x1E14, 0x0000, 7 }, { 81, 0xFFF4, 0xF894, 0x0139, 0x1B67, 0x0000, 7 },
{ 81, 0xFFF5, 0xF035, 0x0139, 0x1B15, 0x0000, 7 }, { 81, 0xFFF6, 0xF035, 0x0139, 0x1B15, 0x0000, 7 },
};
#pragma GLOBAL_ASM("asm/non_matchings/code/z_horse/func_8006D684.s")
#endif
void func_8006DC68(GlobalContext* globalCtx, Player* player) { void func_8006DC68(GlobalContext* globalCtx, Player* player) {
if (LINK_IS_ADULT) { if (LINK_IS_ADULT) {

View file

@ -311,11 +311,10 @@ void Map_Init(GlobalContext* globalCtx) {
} }
} }
#ifdef NON_MATCHING
// regalloc and minor ordering differences
void Minimap_DrawCompassIcons(GlobalContext* globalCtx) { void Minimap_DrawCompassIcons(GlobalContext* globalCtx) {
s32 pad;
Player* player = PLAYER; Player* player = PLAYER;
s16 tempX, tempY, tempZ; s16 tempX, tempZ;
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_map_exp.c", 565); OPEN_DISPS(globalCtx->state.gfxCtx, "../z_map_exp.c", 565);
@ -335,8 +334,8 @@ void Minimap_DrawCompassIcons(GlobalContext* globalCtx) {
Matrix_Translate((R_COMPASS_OFFSET_X + tempX) / 10.0f, (R_COMPASS_OFFSET_Y - tempZ) / 10.0f, 0.0f, MTXMODE_NEW); Matrix_Translate((R_COMPASS_OFFSET_X + tempX) / 10.0f, (R_COMPASS_OFFSET_Y - tempZ) / 10.0f, 0.0f, MTXMODE_NEW);
Matrix_Scale(0.4f, 0.4f, 0.4f, MTXMODE_APPLY); Matrix_Scale(0.4f, 0.4f, 0.4f, MTXMODE_APPLY);
Matrix_RotateX(-1.6f, MTXMODE_APPLY); Matrix_RotateX(-1.6f, MTXMODE_APPLY);
tempY = (0x7FFF - player->actor.shape.rot.y) / 0x400; tempX = (0x7FFF - player->actor.shape.rot.y) / 0x400;
Matrix_RotateY(tempY / 10.0f, MTXMODE_APPLY); Matrix_RotateY(tempX / 10.0f, MTXMODE_APPLY);
gSPMatrix(oGfxCtx->overlay.p++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_map_exp.c", 585), gSPMatrix(oGfxCtx->overlay.p++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_map_exp.c", 585),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
@ -360,9 +359,6 @@ void Minimap_DrawCompassIcons(GlobalContext* globalCtx) {
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_map_exp.c", 607); CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_map_exp.c", 607);
} }
#else
#pragma GLOBAL_ASM("asm/non_matchings/code/z_map_exp/Minimap_DrawCompassIcons.s")
#endif
void Minimap_Draw(GlobalContext* globalCtx) { void Minimap_Draw(GlobalContext* globalCtx) {
s32 pad[2]; s32 pad[2];

View file

@ -19,6 +19,7 @@ void func_808BEFF4(BgYdanMaruta* this, GlobalContext* globalCtx);
void BgYdanMaruta_DoNothing(BgYdanMaruta* this, GlobalContext* globalCtx); void BgYdanMaruta_DoNothing(BgYdanMaruta* this, GlobalContext* globalCtx);
void func_808BF078(BgYdanMaruta* this, GlobalContext* globalCtx); void func_808BF078(BgYdanMaruta* this, GlobalContext* globalCtx);
void func_808BF108(BgYdanMaruta* this, GlobalContext* globalCtx); void func_808BF108(BgYdanMaruta* this, GlobalContext* globalCtx);
void func_808BF1EC(BgYdanMaruta* this, GlobalContext* globalCtx);
const ActorInit Bg_Ydan_Maruta_InitVars = { const ActorInit Bg_Ydan_Maruta_InitVars = {
ACTOR_BG_YDAN_MARUTA, ACTOR_BG_YDAN_MARUTA,
@ -57,13 +58,11 @@ extern UNK_TYPE D_060066A8;
extern Gfx D_06008D88[]; extern Gfx D_06008D88[];
extern Gfx D_06006570[]; extern Gfx D_06006570[];
#ifdef NON_MATCHING
// Register issues
void BgYdanMaruta_Init(Actor* thisx, GlobalContext* globalCtx) { void BgYdanMaruta_Init(Actor* thisx, GlobalContext* globalCtx) {
s32 i; s32 pad;
BgYdanMaruta* this = THIS; BgYdanMaruta* this = THIS;
Vec3f sp4C[3]; Vec3f sp4C[3];
s32 pad; s32 i;
f32 sinRotY; f32 sinRotY;
f32 cosRotY; f32 cosRotY;
s32 localConst = 0; s32 localConst = 0;
@ -72,13 +71,15 @@ void BgYdanMaruta_Init(Actor* thisx, GlobalContext* globalCtx) {
Actor_ProcessInitChain(thisx, D_808BF388); Actor_ProcessInitChain(thisx, D_808BF388);
Collider_InitTris(globalCtx, &this->collider); Collider_InitTris(globalCtx, &this->collider);
Collider_SetTris(globalCtx, &this->collider, thisx, &D_808BF378, &this->colliderItems); Collider_SetTris(globalCtx, &this->collider, thisx, &D_808BF378, &this->colliderItems);
this->unk_168 = thisx->params;
thisx->params = ((thisx->params >> 8) & 0xFF) & 0xFF; this->unk_168 = thisx->params & 0xFFFF;
items = &D_808BF300[1]; thisx->params = (thisx->params >> 8) & 0xFF;
if (thisx->params == 0) { if (thisx->params == 0) {
items = &D_808BF300[0]; items = &D_808BF300[0];
this->actionFunc = func_808BEFF4; this->actionFunc = func_808BEFF4;
} else { } else {
items = &D_808BF300[1];
DynaPolyInfo_SetActorMove(&this->dyna, 0); DynaPolyInfo_SetActorMove(&this->dyna, 0);
DynaPolyInfo_Alloc(&D_060066A8, &localConst); DynaPolyInfo_Alloc(&D_060066A8, &localConst);
this->dyna.dynaPolyId = DynaPolyInfo_RegisterActor(globalCtx, &globalCtx->colCtx.dyna, thisx, localConst); this->dyna.dynaPolyId = DynaPolyInfo_RegisterActor(globalCtx, &globalCtx->colCtx.dyna, thisx, localConst);
@ -90,22 +91,24 @@ void BgYdanMaruta_Init(Actor* thisx, GlobalContext* globalCtx) {
this->actionFunc = func_808BF078; this->actionFunc = func_808BF078;
} }
} }
sinRotY = Math_Sins(thisx->shape.rot.y); sinRotY = Math_Sins(thisx->shape.rot.y);
cosRotY = Math_Coss(thisx->shape.rot.y); cosRotY = Math_Coss(thisx->shape.rot.y);
for (i = 0; i < 3; i++) { for (i = 0; i < 3; i++) {
sp4C[i].x = (items->dim.vtx[i].x * cosRotY) + thisx->posRot.pos.x; sp4C[i].x = (items->dim.vtx[i].x * cosRotY) + thisx->posRot.pos.x;
sp4C[i].y = items->dim.vtx[i].y + thisx->posRot.pos.y; sp4C[i].y = items->dim.vtx[i].y + thisx->posRot.pos.y;
sp4C[i].z = thisx->posRot.pos.z - (items->dim.vtx[i].x * sinRotY); sp4C[i].z = thisx->posRot.pos.z - (items->dim.vtx[i].x * sinRotY);
} }
func_800627A0(&this->collider, 0, &sp4C[0], &sp4C[1], &sp4C[2]); func_800627A0(&this->collider, 0, &sp4C[0], &sp4C[1], &sp4C[2]);
sp4C[1].x = (items->dim.vtx[2].x * cosRotY) + thisx->posRot.pos.x; sp4C[1].x = (items->dim.vtx[2].x * cosRotY) + thisx->posRot.pos.x;
sp4C[1].y = items->dim.vtx[0].y + thisx->posRot.pos.y; sp4C[1].y = items->dim.vtx[0].y + thisx->posRot.pos.y;
sp4C[1].z = thisx->posRot.pos.z - (items->dim.vtx[2].x * sinRotY); sp4C[1].z = thisx->posRot.pos.z - (items->dim.vtx[2].x * sinRotY);
func_800627A0(&this->collider, 1, &sp4C[0], &sp4C[2], &sp4C[1]); func_800627A0(&this->collider, 1, &sp4C[0], &sp4C[2], &sp4C[1]);
} }
#else
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ydan_Maruta/BgYdanMaruta_Init.s")
#endif
void BgYdanMaruta_Destroy(Actor* thisx, GlobalContext* globalCtx) { void BgYdanMaruta_Destroy(Actor* thisx, GlobalContext* globalCtx) {
BgYdanMaruta* this = THIS; BgYdanMaruta* this = THIS;
@ -137,10 +140,8 @@ void func_808BF078(BgYdanMaruta* this, GlobalContext* globalCtx) {
} }
} }
#ifdef NON_EQUIVALENT
// Casting issues and a branch issue
void func_808BF108(BgYdanMaruta* this, GlobalContext* globalCtx) { void func_808BF108(BgYdanMaruta* this, GlobalContext* globalCtx) {
s16 phi_v0; s16 temp;
if (this->unk_16A != 0) { if (this->unk_16A != 0) {
this->unk_16A--; this->unk_16A--;
@ -148,25 +149,23 @@ void func_808BF108(BgYdanMaruta* this, GlobalContext* globalCtx) {
if (this->unk_16A == 0) { if (this->unk_16A == 0) {
this->actionFunc = func_808BF1EC; this->actionFunc = func_808BF1EC;
} }
phi_v0 = this->unk_16A;
if ((phi_v0 < 0) && ((phi_v0 % 4) != 0)) { if (1) {}
phi_v0 -= 4;
} temp = (this->unk_16A % 4) - 2;
phi_v0 -= 2; if (temp == -2) {
if (phi_v0 == -2) { temp = 0;
phi_v0 = 0;
} else { } else {
phi_v0 *= 2; temp *= 2;
} }
this->dyna.actor.posRot.pos.x = this->dyna.actor.posRot.pos.x =
(Math_Coss(this->dyna.actor.shape.rot.y) * phi_v0) + this->dyna.actor.initPosRot.pos.x; (Math_Coss(this->dyna.actor.shape.rot.y) * temp) + this->dyna.actor.initPosRot.pos.x;
this->dyna.actor.posRot.pos.z = this->dyna.actor.posRot.pos.z =
(Math_Sins(this->dyna.actor.shape.rot.y) * phi_v0) + this->dyna.actor.initPosRot.pos.z; (Math_Sins(this->dyna.actor.shape.rot.y) * temp) + this->dyna.actor.initPosRot.pos.z;
func_8002F974(&this->dyna.actor, NA_SE_EV_TRAP_OBJ_SLIDE - SFX_FLAG); func_8002F974(&this->dyna.actor, NA_SE_EV_TRAP_OBJ_SLIDE - SFX_FLAG);
} }
#else
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ydan_Maruta/func_808BF108.s")
#endif
void func_808BF1EC(BgYdanMaruta* this, GlobalContext* globalCtx) { void func_808BF1EC(BgYdanMaruta* this, GlobalContext* globalCtx) {
this->dyna.actor.velocity.y += 1.0f; this->dyna.actor.velocity.y += 1.0f;

View file

@ -43,44 +43,50 @@ const ActorInit En_Ex_Ruppy_InitVars = {
static Vec3f D_80A0B358[] = { { 0.0f, 0.1f, 0.0f }, { 0.0f, 0.0f, 0.0f } }; static Vec3f D_80A0B358[] = { { 0.0f, 0.1f, 0.0f }, { 0.0f, 0.0f, 0.0f } };
static Vec3f D_80A0B370[] = { { 0.0f, 0.01f, 0.0f }, { 0.0f, 0.0f, 0.0f } }; static Vec3f D_80A0B370[] = { { 0.0f, 0.01f, 0.0f }, { 0.0f, 0.0f, 0.0f } };
#ifdef NON_MATCHING
// Regalloc
void EnExRuppy_Init(Actor* thisx, GlobalContext* globalCtx) { void EnExRuppy_Init(Actor* thisx, GlobalContext* globalCtx) {
EnExRuppy* this = THIS; EnExRuppy* this = THIS;
s16 temp_v0; EnDivingGame* divingGame;
f32 phi_f12; f32 temp1;
f32 temp; f32 temp2;
s16 temp3;
this->unk_152 = this->actor.params; this->unk_152 = this->actor.params;
// Index
osSyncPrintf(VT_FGCOL(GREEN) "☆☆☆☆☆ インデックス ☆☆☆☆☆ %x" VT_RST, this->unk_152); osSyncPrintf(VT_FGCOL(GREEN) "☆☆☆☆☆ インデックス ☆☆☆☆☆ %x\n" VT_RST, this->unk_152); // "Index"
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawFunc_Circle, 25.0f); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawFunc_Circle, 25.0f);
switch (this->unk_152) { switch (this->unk_152) {
case 0: case 0:
this->unk_160 = 0.01f; this->unk_160 = 0.01f;
Actor_SetScale(&this->actor, this->unk_160); Actor_SetScale(&this->actor, this->unk_160);
this->actor.room = -1; this->actor.room = -1;
this->actor.gravity = 0.0f; this->actor.gravity = 0.0f;
// If you havnt won the diving game before you will get 5 blue ruppees.
// If you haven't won the diving game before, you will always get 5 rupees
if (!(gSaveContext.eventChkInf[3] & 0x100)) { if (!(gSaveContext.eventChkInf[3] & 0x100)) {
this->rupeeValue = 5; this->rupeeValue = 5;
this->unk_150 = 1; this->unk_150 = 1;
} else { } else {
phi_f12 = 200.99f; temp1 = 200.99f;
if ((thisx->parent != NULL) && (thisx->parent->update != NULL)) { if (this->actor.parent != NULL) {
phi_f12 = 200.99f + ((EnDivingGame*)thisx->parent)->unk_2AA * 10.0f; divingGame = (EnDivingGame*)this->actor.parent;
if (divingGame->actor.update != NULL) {
temp2 = divingGame->unk_2AA * 10.0f;
temp1 += temp2;
}
} }
temp_v0 = Math_Rand_ZeroFloat(phi_f12);
if ((temp_v0 >= 0) && (temp_v0 < 40)) { temp3 = Math_Rand_ZeroFloat(temp1);
if ((temp3 >= 0) && (temp3 < 40)) {
this->rupeeValue = 1; this->rupeeValue = 1;
this->unk_150 = 0; this->unk_150 = 0;
} else if ((temp_v0 >= 40) && (temp_v0 < 170)) { } else if ((temp3 >= 40) && (temp3 < 170)) {
this->rupeeValue = 5; this->rupeeValue = 5;
this->unk_150 = 1; this->unk_150 = 1;
} else if ((temp_v0 >= 170) && (temp_v0 < 190)) { } else if ((temp3 >= 170) && (temp3 < 190)) {
this->rupeeValue = 20; this->rupeeValue = 20;
this->unk_150 = 2; this->unk_150 = 2;
} else if ((temp_v0 >= 190) && (temp_v0 < 200)) { } else if ((temp3 >= 190) && (temp3 < 200)) {
this->rupeeValue = 50; this->rupeeValue = 50;
this->unk_150 = 4; this->unk_150 = 4;
} else { } else {
@ -88,39 +94,43 @@ void EnExRuppy_Init(Actor* thisx, GlobalContext* globalCtx) {
Actor_SetScale(&this->actor, this->unk_160); Actor_SetScale(&this->actor, this->unk_160);
this->rupeeValue = 500; this->rupeeValue = 500;
this->unk_150 = 3; this->unk_150 = 3;
if ((thisx->parent != NULL) && (thisx->parent->update != NULL)) { if (this->actor.parent != NULL) {
((EnDivingGame*)thisx->parent)->unk_2AA = 0; divingGame = (EnDivingGame*)this->actor.parent;
if (divingGame->actor.update != NULL) {
divingGame->unk_2AA = 0;
}
} }
} }
} }
temp_v0 = this->actor.posRot.rot.z;
this->actor.posRot.rot.z = 0;
this->timer = 30;
this->actor.shape.unk_10 = 7.0f; this->actor.shape.unk_10 = 7.0f;
this->actor.shape.unk_08 = 700.0f; this->actor.shape.unk_08 = 700.0f;
this->unk_15A = temp_v0; this->unk_15A = this->actor.posRot.rot.z;
this->actor.posRot.rot.z = 0;
this->timer = 30;
this->actor.flags &= ~1; this->actor.flags &= ~1;
this->actionFunc = EnExRuppy_DropIntoWater; this->actionFunc = EnExRuppy_DropIntoWater;
break; break;
case 1: case 1:
case 2: // Giant pink ruppe that explodes when you touch it case 2: // Giant pink ruppe that explodes when you touch it
if (this->unk_152 == 1) { if (this->unk_152 == 1) {
Actor_SetScale(thisx, 0.1f); Actor_SetScale(&this->actor, 0.1f);
this->unk_150 = 4; this->unk_150 = 4;
} else { } else {
Actor_SetScale(thisx, 0.02f); Actor_SetScale(thisx, 0.02f);
this->unk_150 = (s16)Math_Rand_ZeroFloat(3.99f) + 1; this->unk_150 = (s16)Math_Rand_ZeroFloat(3.99f) + 1;
} }
this->actor.gravity = -3.0f; this->actor.gravity = -3.0f;
// Wow Coin osSyncPrintf(VT_FGCOL(GREEN) "☆☆☆☆☆ わーなーコイン ☆☆☆☆☆ \n" VT_RST); // "Wow Coin"
osSyncPrintf(VT_FGCOL(GREEN) "☆☆☆☆☆ わーなーコイン ☆☆☆☆☆ \n" VT_RST);
this->actor.shape.unk_10 = 6.0f; this->actor.shape.unk_10 = 6.0f;
this->actor.shape.unk_08 = 700.0f; this->actor.shape.unk_08 = 700.0f;
this->actor.flags &= ~1; this->actor.flags &= ~1;
this->actionFunc = EnExRuppy_WaitToBlowUp; this->actionFunc = EnExRuppy_WaitToBlowUp;
break; break;
case 3: // Spawned by the guard in Hyrule courtyard case 3: // Spawned by the guard in Hyrule courtyard
Actor_SetScale(thisx, 0.02f); Actor_SetScale(&this->actor, 0.02f);
this->unk_150 = 0; this->unk_150 = 0;
switch ((s16)Math_Rand_ZeroFloat(30.99f)) { switch ((s16)Math_Rand_ZeroFloat(30.99f)) {
case 0: case 0:
@ -128,32 +138,28 @@ void EnExRuppy_Init(Actor* thisx, GlobalContext* globalCtx) {
break; break;
case 10: case 10:
case 20: case 20:
this->unk_150 = 1;
break;
case 30: case 30:
this->unk_150 = 1;
break; break;
} }
this->actor.gravity = -3.0f; this->actor.gravity = -3.0f;
// Normal rupee osSyncPrintf(VT_FGCOL(GREEN) "☆☆☆☆☆ ノーマルルピー ☆☆☆☆☆ \n" VT_RST); // "Normal rupee"
osSyncPrintf(VT_FGCOL(GREEN) "☆☆☆☆☆ ノーマルルピー ☆☆☆☆☆ \n" VT_RST);
this->actor.shape.unk_10 = 6.0f; this->actor.shape.unk_10 = 6.0f;
this->actor.shape.unk_08 = 700.0f; this->actor.shape.unk_08 = 700.0f;
this->actor.flags &= ~1; this->actor.flags &= ~1;
this->actionFunc = EnExRuppy_WaitAsCollectible; this->actionFunc = EnExRuppy_WaitAsCollectible;
break; break;
case 4: case 4:
this->actor.gravity = -3.0f; this->actor.gravity = -3.0f;
this->actor.flags &= ~1; this->actor.flags &= ~1;
Actor_SetScale(thisx, 0.01f); Actor_SetScale(&this->actor, 0.01f);
this->actor.shape.unk_10 = 6.0f; this->actor.shape.unk_10 = 6.0f;
this->actor.shape.unk_08 = -700.0f; this->actor.shape.unk_08 = -700.0f;
this->actionFunc = func_80A0B0F4; this->actionFunc = func_80A0B0F4;
break; break;
} }
} }
#else
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Ex_Ruppy/EnExRuppy_Init.s")
#endif
void EnExRuppy_Destroy(Actor* thisx, GlobalContext* globalCtx) { void EnExRuppy_Destroy(Actor* thisx, GlobalContext* globalCtx) {
} }
@ -268,7 +274,7 @@ void func_80A0AD88(EnExRuppy* this, GlobalContext* globalCtx) {
func_800293E4(globalCtx, &this->actor.posRot.pos, 0.0f, 5.0f, 5.0f, Math_Rand_ZeroFloat(0.03f) + 0.07f); func_800293E4(globalCtx, &this->actor.posRot.pos, 0.0f, 5.0f, 5.0f, Math_Rand_ZeroFloat(0.03f) + 0.07f);
} }
if (this->actor.parent != NULL) { if (this->actor.parent != NULL) {
divingGame = this->actor.parent; divingGame = (EnDivingGame*)this->actor.parent;
if (divingGame->actor.update != NULL) { if (divingGame->actor.update != NULL) {
if (divingGame->unk_29C == 0) { if (divingGame->unk_29C == 0) {
this->timer = 20; this->timer = 20;
@ -311,11 +317,11 @@ void EnExRuppy_WaitToBlowUp(EnExRuppy* this, GlobalContext* globalCtx) {
((EnDivingGame*)this->actor.parent)->transitionDrawTable[15].z = 1; ((EnDivingGame*)this->actor.parent)->transitionDrawTable[15].z = 1;
} }
} else { } else {
// That idiot! error // "That idiot! error"
osSyncPrintf(VT_FGCOL(GREEN) "☆☆☆☆☆ そ、そんなばかな!エラー!!!!! ☆☆☆☆☆ \n" VT_RST); osSyncPrintf(VT_FGCOL(GREEN) "☆☆☆☆☆ そ、そんなばかな!エラー!!!!! ☆☆☆☆☆ \n" VT_RST);
} }
// Stupid!
osSyncPrintf(VT_FGCOL(GREEN) "☆☆☆☆☆ バカめ! ☆☆☆☆☆ \n" VT_RST); osSyncPrintf(VT_FGCOL(GREEN) "☆☆☆☆☆ バカめ! ☆☆☆☆☆ \n" VT_RST); // "Stupid!"
explosionScale = 100; explosionScale = 100;
explosionScaleStep = 30; explosionScaleStep = 30;
if (this->unk_152 == 2) { if (this->unk_152 == 2) {
@ -350,7 +356,7 @@ void func_80A0B0F4(EnExRuppy* this, GlobalContext* globalCtx) {
void EnExRuppy_Update(Actor* thisx, GlobalContext* globalCtx) { void EnExRuppy_Update(Actor* thisx, GlobalContext* globalCtx) {
EnExRuppy* this = THIS; EnExRuppy* this = THIS;
thisx->shape.rot.y += 1960; this->actor.shape.rot.y += 1960;
this->actionFunc(this, globalCtx); this->actionFunc(this, globalCtx);
if (this->timer != 0) { if (this->timer != 0) {
this->timer--; this->timer--;

View file

@ -564,18 +564,20 @@ void func_80B12BA4(EnSyatekiNiw* this, GlobalContext* globalCtx) {
} }
} }
#ifdef NON_MATCHING
// Regalloc in the switch, tmp in v1 rather than s0
void EnSyatekiNiw_Update(Actor* thisx, GlobalContext* globalCtx) { void EnSyatekiNiw_Update(Actor* thisx, GlobalContext* globalCtx) {
s16 i;
s32 tmp;
EnSyatekiNiw* this = THIS; EnSyatekiNiw* this = THIS;
s32 pad;
s16 i;
Vec3f sp90 = { 0.0f, 0.0f, 0.0f }; Vec3f sp90 = { 0.0f, 0.0f, 0.0f };
Vec3f sp84 = { 0.0f, 0.0f, 0.0f }; Vec3f sp84 = { 0.0f, 0.0f, 0.0f };
Vec3f sp78; Vec3f sp78;
Vec3f sp6C; Vec3f sp6C;
Vec3f sp60; Vec3f sp60;
if (1) {}
if (1) {}
if (1) {}
func_80B132A8(this, globalCtx); func_80B132A8(this, globalCtx);
this->unk_28C++; this->unk_28C++;
if (this->unk_254 != 0) { if (this->unk_254 != 0) {
@ -640,30 +642,25 @@ void EnSyatekiNiw_Update(Actor* thisx, GlobalContext* globalCtx) {
} }
} }
tmp = 0; i = 0;
switch (this->unk_29E) { switch (this->unk_29E) {
case 0: case 0:
if (globalCtx->unk_11E5C != 0) { if (globalCtx->unk_11E5C != 0) {
tmp = 1; i = 1;
} }
break; break;
case 1: case 1:
tmp = 1; i = 1;
break; break;
} }
if (tmp) { if (i != 0) {
Collider_CylinderUpdate(&this->actor, &this->collider); Collider_CylinderUpdate(&this->actor, &this->collider);
CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->collider.base); CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->collider.base); CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
} }
} }
#else
Vec3f D_80B136B8 = { 0.0f, 0.0f, 0.0f };
Vec3f D_80B136C4 = { 0.0f, 0.0f, 0.0f };
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Syateki_Niw/EnSyatekiNiw_Update.s")
#endif
s32 SyatekiNiw_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot, s32 SyatekiNiw_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot,
Actor* thisx) { Actor* thisx) {

View file

@ -1,8 +1,11 @@
[preserve_macros] [preserve_macros]
"g[DS]P.*" = "void" "g[DS]P.*" = "void"
"gDma.*" = "void" "gDma.*" = "void"
"G_IM_SIZ_.*" = "int"
"G_[AC]CMUX.*" = "int"
LOG = "void" LOG = "void"
SET_FULLSCREEN_VIEWPORT = "void" SET_FULLSCREEN_VIEWPORT = "void"
OPEN_DISPS_INNER = "void" OPEN_DISPS = "void"
CLOSE_DISPS = "void"
ABS = "int" ABS = "int"
SQ = "int" SQ = "int"