1
0
mirror of https://github.com/zeldaret/oot.git synced 2024-09-21 04:24:43 +00:00

Rakkatenjo (#419)

* Darkmeiro decompilation

Bg_Gnd_Darkmeiro decompiled, matched, and documented.

* give this a shot

* fix conflict

* one more try

* bonk

* static var cleanup

* one more rename
This commit is contained in:
petrie911 2020-10-04 07:58:33 -05:00 committed by GitHub
parent 4ac8e70f5a
commit 5d39ae1cc7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
22 changed files with 217 additions and 794 deletions

View File

@ -1,14 +0,0 @@
glabel BgMoriRakkatenjo_Destroy
/* 00184 808A56F4 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00188 808A56F8 AFA40018 */ sw $a0, 0x0018($sp)
/* 0018C 808A56FC 8FAE0018 */ lw $t6, 0x0018($sp)
/* 00190 808A5700 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00194 808A5704 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 00198 808A5708 24A50810 */ addiu $a1, $a1, 0x0810 ## $a1 = 00000810
/* 0019C 808A570C 0C00FB56 */ jal DynaPolyInfo_Free
## DynaPolyInfo_delReserve
/* 001A0 808A5710 8DC6014C */ lw $a2, 0x014C($t6) ## 0000014C
/* 001A4 808A5714 8FBF0014 */ lw $ra, 0x0014($sp)
/* 001A8 808A5718 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 001AC 808A571C 03E00008 */ jr $ra
/* 001B0 808A5720 00000000 */ nop

View File

@ -1,146 +0,0 @@
.rdata
glabel D_808A5EA0
.asciz "殿 obj. (home posY %f)\n"
.balign 4
glabel D_808A5EC8
.asciz "Warning : \n"
.balign 4
glabel D_808A5F10
.asciz "Warning : Angle \n"
.balign 4
glabel D_808A5F5C
.asciz "Error : 殿 obj (%s %d)\n"
.balign 4
glabel D_808A5F90
.asciz "../z_bg_mori_rakkatenjo.c"
.balign 4
.late_rodata
glabel D_808A604C
.float 0.001
glabel D_808A6050
.word 0x44F8E000
glabel D_808A6054
.word 0x442AC000
glabel D_808A6058
.word 0xC51D8000
.text
glabel BgMoriRakkatenjo_Init
/* 00000 808A5570 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 00004 808A5574 AFBF001C */ sw $ra, 0x001C($sp)
/* 00008 808A5578 AFB00018 */ sw $s0, 0x0018($sp)
/* 0000C 808A557C AFA50034 */ sw $a1, 0x0034($sp)
/* 00010 808A5580 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00014 808A5584 AFA00024 */ sw $zero, 0x0024($sp)
/* 00018 808A5588 0C010D20 */ jal DynaPolyInfo_SetActorMove
/* 0001C 808A558C 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
/* 00020 808A5590 C604000C */ lwc1 $f4, 0x000C($s0) ## 0000000C
/* 00024 808A5594 3C04808A */ lui $a0, %hi(D_808A5EA0) ## $a0 = 808A0000
/* 00028 808A5598 24845EA0 */ addiu $a0, $a0, %lo(D_808A5EA0) ## $a0 = 808A5EA0
/* 0002C 808A559C 460021A1 */ cvt.d.s $f6, $f4
/* 00030 808A55A0 44073000 */ mfc1 $a3, $f6
/* 00034 808A55A4 44063800 */ mfc1 $a2, $f7
/* 00038 808A55A8 0C00084C */ jal osSyncPrintf
/* 0003C 808A55AC 00000000 */ nop
/* 00040 808A55B0 3C01808A */ lui $at, %hi(D_808A604C) ## $at = 808A0000
/* 00044 808A55B4 C422604C */ lwc1 $f2, %lo(D_808A604C)($at)
/* 00048 808A55B8 3C01808A */ lui $at, %hi(D_808A6050) ## $at = 808A0000
/* 0004C 808A55BC C4286050 */ lwc1 $f8, %lo(D_808A6050)($at)
/* 00050 808A55C0 C60A0008 */ lwc1 $f10, 0x0008($s0) ## 00000008
/* 00054 808A55C4 3C01808A */ lui $at, %hi(D_808A6054) ## $at = 808A0000
/* 00058 808A55C8 3C04808A */ lui $a0, %hi(D_808A5EC8) ## $a0 = 808A0000
/* 0005C 808A55CC 460A4001 */ sub.s $f0, $f8, $f10
/* 00060 808A55D0 46000005 */ abs.s $f0, $f0
/* 00064 808A55D4 4600103C */ c.lt.s $f2, $f0
/* 00068 808A55D8 00000000 */ nop
/* 0006C 808A55DC 45010012 */ bc1t .L808A5628
/* 00070 808A55E0 00000000 */ nop
/* 00074 808A55E4 C4306054 */ lwc1 $f16, %lo(D_808A6054)($at)
/* 00078 808A55E8 C612000C */ lwc1 $f18, 0x000C($s0) ## 0000000C
/* 0007C 808A55EC 3C01808A */ lui $at, %hi(D_808A6058) ## $at = 808A0000
/* 00080 808A55F0 46128001 */ sub.s $f0, $f16, $f18
/* 00084 808A55F4 46000005 */ abs.s $f0, $f0
/* 00088 808A55F8 4600103C */ c.lt.s $f2, $f0
/* 0008C 808A55FC 00000000 */ nop
/* 00090 808A5600 45010009 */ bc1t .L808A5628
/* 00094 808A5604 00000000 */ nop
/* 00098 808A5608 C4246058 */ lwc1 $f4, %lo(D_808A6058)($at)
/* 0009C 808A560C C6060010 */ lwc1 $f6, 0x0010($s0) ## 00000010
/* 000A0 808A5610 46062001 */ sub.s $f0, $f4, $f6
/* 000A4 808A5614 46000005 */ abs.s $f0, $f0
/* 000A8 808A5618 4600103C */ c.lt.s $f2, $f0
/* 000AC 808A561C 00000000 */ nop
/* 000B0 808A5620 45020004 */ bc1fl .L808A5634
/* 000B4 808A5624 860E0016 */ lh $t6, 0x0016($s0) ## 00000016
.L808A5628:
/* 000B8 808A5628 0C00084C */ jal osSyncPrintf
/* 000BC 808A562C 24845EC8 */ addiu $a0, $a0, %lo(D_808A5EC8) ## $a0 = 808A5EC8
/* 000C0 808A5630 860E0016 */ lh $t6, 0x0016($s0) ## 00000016
.L808A5634:
/* 000C4 808A5634 34018000 */ ori $at, $zero, 0x8000 ## $at = 00008000
/* 000C8 808A5638 3C04808A */ lui $a0, %hi(D_808A5F10) ## $a0 = 808A0000
/* 000CC 808A563C 51C10004 */ beql $t6, $at, .L808A5650
/* 000D0 808A5640 8FA40034 */ lw $a0, 0x0034($sp)
/* 000D4 808A5644 0C00084C */ jal osSyncPrintf
/* 000D8 808A5648 24845F10 */ addiu $a0, $a0, %lo(D_808A5F10) ## $a0 = 808A5F10
/* 000DC 808A564C 8FA40034 */ lw $a0, 0x0034($sp)
.L808A5650:
/* 000E0 808A5650 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 000E4 808A5654 342117A4 */ ori $at, $at, 0x17A4 ## $at = 000117A4
/* 000E8 808A5658 24050073 */ addiu $a1, $zero, 0x0073 ## $a1 = 00000073
/* 000EC 808A565C 0C02604B */ jal Object_GetIndex
## ObjectIndex
/* 000F0 808A5660 00812021 */ addu $a0, $a0, $at
/* 000F4 808A5664 A2020174 */ sb $v0, 0x0174($s0) ## 00000174
/* 000F8 808A5668 820F0174 */ lb $t7, 0x0174($s0) ## 00000174
/* 000FC 808A566C 240600CD */ addiu $a2, $zero, 0x00CD ## $a2 = 000000CD
/* 00100 808A5670 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00104 808A5674 05E1000A */ bgez $t7, .L808A56A0
/* 00108 808A5678 3C05808A */ lui $a1, %hi(D_808A5E84) ## $a1 = 808A0000
/* 0010C 808A567C 3C04808A */ lui $a0, %hi(D_808A5F5C) ## $a0 = 808A0000
/* 00110 808A5680 3C05808A */ lui $a1, %hi(D_808A5F90) ## $a1 = 808A0000
/* 00114 808A5684 24A55F90 */ addiu $a1, $a1, %lo(D_808A5F90) ## $a1 = 808A5F90
/* 00118 808A5688 0C00084C */ jal osSyncPrintf
/* 0011C 808A568C 24845F5C */ addiu $a0, $a0, %lo(D_808A5F5C) ## $a0 = 808A5F5C
/* 00120 808A5690 0C00B55C */ jal Actor_Kill
/* 00124 808A5694 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00128 808A5698 10000012 */ beq $zero, $zero, .L808A56E4
/* 0012C 808A569C 8FBF001C */ lw $ra, 0x001C($sp)
.L808A56A0:
/* 00130 808A56A0 0C01E037 */ jal Actor_ProcessInitChain
/* 00134 808A56A4 24A55E84 */ addiu $a1, $a1, %lo(D_808A5E84) ## $a1 = 00005E84
/* 00138 808A56A8 3C040601 */ lui $a0, 0x0601 ## $a0 = 06010000
/* 0013C 808A56AC 248487AC */ addiu $a0, $a0, 0x87AC ## $a0 = 060087AC
/* 00140 808A56B0 0C010620 */ jal DynaPolyInfo_Alloc
/* 00144 808A56B4 27A50024 */ addiu $a1, $sp, 0x0024 ## $a1 = FFFFFFF4
/* 00148 808A56B8 8FA40034 */ lw $a0, 0x0034($sp)
/* 0014C 808A56BC 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 00150 808A56C0 8FA70024 */ lw $a3, 0x0024($sp)
/* 00154 808A56C4 0C00FA9D */ jal DynaPolyInfo_RegisterActor
## DynaPolyInfo_setActor
/* 00158 808A56C8 24850810 */ addiu $a1, $a0, 0x0810 ## $a1 = 00000810
/* 0015C 808A56CC AE02014C */ sw $v0, 0x014C($s0) ## 0000014C
/* 00160 808A56D0 0C229621 */ jal func_808A5884
/* 00164 808A56D4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00168 808A56D8 3C01808A */ lui $at, %hi(D_808A5E60) ## $at = 808A0000
/* 0016C 808A56DC A4205E60 */ sh $zero, %lo(D_808A5E60)($at)
/* 00170 808A56E0 8FBF001C */ lw $ra, 0x001C($sp)
.L808A56E4:
/* 00174 808A56E4 8FB00018 */ lw $s0, 0x0018($sp)
/* 00178 808A56E8 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 0017C 808A56EC 03E00008 */ jr $ra
/* 00180 808A56F0 00000000 */ nop

View File

@ -1,76 +0,0 @@
.rdata
glabel D_808A5FAC
.asciz "camera changed (mori rakka tenjyo) ... \n"
.balign 4
glabel D_808A5FD8
.asciz "camera changed (previous) ... \n"
.balign 4
.text
glabel BgMoriRakkatenjo_Update
/* 00700 808A5C70 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 00704 808A5C74 AFBF002C */ sw $ra, 0x002C($sp)
/* 00708 808A5C78 AFB10028 */ sw $s1, 0x0028($sp)
/* 0070C 808A5C7C AFB00024 */ sw $s0, 0x0024($sp)
/* 00710 808A5C80 8C820168 */ lw $v0, 0x0168($a0) ## 00000168
/* 00714 808A5C84 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00718 808A5C88 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 0071C 808A5C8C 18400002 */ blez $v0, .L808A5C98
/* 00720 808A5C90 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
/* 00724 808A5C94 AC8E0168 */ sw $t6, 0x0168($a0) ## 00000168
.L808A5C98:
/* 00728 808A5C98 8E190164 */ lw $t9, 0x0164($s0) ## 00000164
/* 0072C 808A5C9C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00730 808A5CA0 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 00734 808A5CA4 0320F809 */ jalr $ra, $t9
/* 00738 808A5CA8 00000000 */ nop
/* 0073C 808A5CAC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00740 808A5CB0 0C2295C9 */ jal func_808A5724
/* 00744 808A5CB4 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 00748 808A5CB8 10400018 */ beq $v0, $zero, .L808A5D1C
/* 0074C 808A5CBC 3C0F808A */ lui $t7, %hi(D_808A5E60) ## $t7 = 808A0000
/* 00750 808A5CC0 85EF5E60 */ lh $t7, %lo(D_808A5E60)($t7)
/* 00754 808A5CC4 3C04808A */ lui $a0, %hi(D_808A5FAC) ## $a0 = 808A0000
/* 00758 808A5CC8 55E00021 */ bnel $t7, $zero, .L808A5D50
/* 0075C 808A5CCC 8FBF002C */ lw $ra, 0x002C($sp)
/* 00760 808A5CD0 0C00084C */ jal osSyncPrintf
/* 00764 808A5CD4 24845FAC */ addiu $a0, $a0, %lo(D_808A5FAC) ## $a0 = 808A5FAC
/* 00768 808A5CD8 8E380790 */ lw $t8, 0x0790($s1) ## 00000790
/* 0076C 808A5CDC 3C01808A */ lui $at, %hi(D_808A5E60) ## $at = 808A0000
/* 00770 808A5CE0 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
/* 00774 808A5CE4 87080142 */ lh $t0, 0x0142($t8) ## 00000142
/* 00778 808A5CE8 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 0077C 808A5CEC 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 00780 808A5CF0 A4285E60 */ sh $t0, %lo(D_808A5E60)($at)
/* 00784 808A5CF4 8E240790 */ lw $a0, 0x0790($s1) ## 00000790
/* 00788 808A5CF8 AFA00018 */ sw $zero, 0x0018($sp)
/* 0078C 808A5CFC AFA00014 */ sw $zero, 0x0014($sp)
/* 00790 808A5D00 0C016BF5 */ jal Camera_SetCameraData ## setCameraData
/* 00794 808A5D04 AFA00010 */ sw $zero, 0x0010($sp)
/* 00798 808A5D08 8E240790 */ lw $a0, 0x0790($s1) ## 00000790
/* 0079C 808A5D0C 0C0169DF */ jal func_8005A77C
/* 007A0 808A5D10 24050027 */ addiu $a1, $zero, 0x0027 ## $a1 = 00000027
/* 007A4 808A5D14 1000000E */ beq $zero, $zero, .L808A5D50
/* 007A8 808A5D18 8FBF002C */ lw $ra, 0x002C($sp)
.L808A5D1C:
/* 007AC 808A5D1C 3C10808A */ lui $s0, %hi(D_808A5E60) ## $s0 = 808A0000
/* 007B0 808A5D20 26105E60 */ addiu $s0, $s0, %lo(D_808A5E60) ## $s0 = 808A5E60
/* 007B4 808A5D24 86090000 */ lh $t1, 0x0000($s0) ## 808A5E60
/* 007B8 808A5D28 3C04808A */ lui $a0, %hi(D_808A5FD8) ## $a0 = 808A0000
/* 007BC 808A5D2C 51200008 */ beql $t1, $zero, .L808A5D50
/* 007C0 808A5D30 8FBF002C */ lw $ra, 0x002C($sp)
/* 007C4 808A5D34 0C00084C */ jal osSyncPrintf
/* 007C8 808A5D38 24845FD8 */ addiu $a0, $a0, %lo(D_808A5FD8) ## $a0 = 808A5FD8
/* 007CC 808A5D3C 8E240790 */ lw $a0, 0x0790($s1) ## 00000790
/* 007D0 808A5D40 0C0169DF */ jal func_8005A77C
/* 007D4 808A5D44 24050004 */ addiu $a1, $zero, 0x0004 ## $a1 = 00000004
/* 007D8 808A5D48 A6000000 */ sh $zero, 0x0000($s0) ## 808A5E60
/* 007DC 808A5D4C 8FBF002C */ lw $ra, 0x002C($sp)
.L808A5D50:
/* 007E0 808A5D50 8FB00024 */ lw $s0, 0x0024($sp)
/* 007E4 808A5D54 8FB10028 */ lw $s1, 0x0028($sp)
/* 007E8 808A5D58 03E00008 */ jr $ra
/* 007EC 808A5D5C 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000

View File

@ -1,58 +0,0 @@
.late_rodata
glabel D_808A605C
.word 0xC54E4000
glabel D_808A6060
.word 0x44DFE000
glabel D_808A6064
.word 0x4508F000
.text
glabel func_808A5724
/* 001B4 808A5724 AFA40000 */ sw $a0, 0x0000($sp)
/* 001B8 808A5728 8CA31C44 */ lw $v1, 0x1C44($a1) ## 00001C44
/* 001BC 808A572C 3C01808A */ lui $at, %hi(D_808A605C) ## $at = 808A0000
/* 001C0 808A5730 C424605C */ lwc1 $f4, %lo(D_808A605C)($at)
/* 001C4 808A5734 C460002C */ lwc1 $f0, 0x002C($v1) ## 0000002C
/* 001C8 808A5738 3C01C4E6 */ lui $at, 0xC4E6 ## $at = C4E60000
/* 001CC 808A573C 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
/* 001D0 808A5740 4600203C */ c.lt.s $f4, $f0
/* 001D4 808A5744 24630024 */ addiu $v1, $v1, 0x0024 ## $v1 = 00000024
/* 001D8 808A5748 45000002 */ bc1f .L808A5754
/* 001DC 808A574C 00000000 */ nop
/* 001E0 808A5750 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
.L808A5754:
/* 001E4 808A5754 1040001D */ beq $v0, $zero, .L808A57CC
/* 001E8 808A5758 00000000 */ nop
/* 001EC 808A575C 44813000 */ mtc1 $at, $f6 ## $f6 = -1840.00
/* 001F0 808A5760 3C01808A */ lui $at, %hi(D_808A6060) ## $at = 808A0000
/* 001F4 808A5764 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
/* 001F8 808A5768 4606003C */ c.lt.s $f0, $f6
/* 001FC 808A576C 00000000 */ nop
/* 00200 808A5770 45000002 */ bc1f .L808A577C
/* 00204 808A5774 00000000 */ nop
/* 00208 808A5778 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
.L808A577C:
/* 0020C 808A577C 10400013 */ beq $v0, $zero, .L808A57CC
/* 00210 808A5780 00000000 */ nop
/* 00214 808A5784 C4600000 */ lwc1 $f0, 0x0000($v1) ## 00000024
/* 00218 808A5788 C4286060 */ lwc1 $f8, %lo(D_808A6060)($at)
/* 0021C 808A578C 3C01808A */ lui $at, %hi(D_808A6064) ## $at = 808A0000
/* 00220 808A5790 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
/* 00224 808A5794 4600403C */ c.lt.s $f8, $f0
/* 00228 808A5798 00000000 */ nop
/* 0022C 808A579C 45000002 */ bc1f .L808A57A8
/* 00230 808A57A0 00000000 */ nop
/* 00234 808A57A4 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
.L808A57A8:
/* 00238 808A57A8 10400008 */ beq $v0, $zero, .L808A57CC
/* 0023C 808A57AC 00000000 */ nop
/* 00240 808A57B0 C42A6064 */ lwc1 $f10, %lo(D_808A6064)($at)
/* 00244 808A57B4 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
/* 00248 808A57B8 460A003C */ c.lt.s $f0, $f10
/* 0024C 808A57BC 00000000 */ nop
/* 00250 808A57C0 45000002 */ bc1f .L808A57CC
/* 00254 808A57C4 00000000 */ nop
/* 00258 808A57C8 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
.L808A57CC:
/* 0025C 808A57CC 03E00008 */ jr $ra
/* 00260 808A57D0 00000000 */ nop

View File

@ -1,56 +0,0 @@
.late_rodata
glabel D_808A6068
.word 0x44DFE000
glabel D_808A606C
.word 0x4508F000
.text
glabel func_808A57D4
/* 00264 808A57D4 AFA40000 */ sw $a0, 0x0000($sp)
/* 00268 808A57D8 8CA31C44 */ lw $v1, 0x1C44($a1) ## 00001C44
/* 0026C 808A57DC 3C01C552 */ lui $at, 0xC552 ## $at = C5520000
/* 00270 808A57E0 44812000 */ mtc1 $at, $f4 ## $f4 = -3360.00
/* 00274 808A57E4 C460002C */ lwc1 $f0, 0x002C($v1) ## 0000002C
/* 00278 808A57E8 3C01C4E6 */ lui $at, 0xC4E6 ## $at = C4E60000
/* 0027C 808A57EC 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
/* 00280 808A57F0 4600203C */ c.lt.s $f4, $f0
/* 00284 808A57F4 24630024 */ addiu $v1, $v1, 0x0024 ## $v1 = 00000024
/* 00288 808A57F8 45000002 */ bc1f .L808A5804
/* 0028C 808A57FC 00000000 */ nop
/* 00290 808A5800 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
.L808A5804:
/* 00294 808A5804 1040001D */ beq $v0, $zero, .L808A587C
/* 00298 808A5808 00000000 */ nop
/* 0029C 808A580C 44813000 */ mtc1 $at, $f6 ## $f6 = -1840.00
/* 002A0 808A5810 3C01808A */ lui $at, %hi(D_808A6068) ## $at = 808A0000
/* 002A4 808A5814 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
/* 002A8 808A5818 4606003C */ c.lt.s $f0, $f6
/* 002AC 808A581C 00000000 */ nop
/* 002B0 808A5820 45000002 */ bc1f .L808A582C
/* 002B4 808A5824 00000000 */ nop
/* 002B8 808A5828 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
.L808A582C:
/* 002BC 808A582C 10400013 */ beq $v0, $zero, .L808A587C
/* 002C0 808A5830 00000000 */ nop
/* 002C4 808A5834 C4600000 */ lwc1 $f0, 0x0000($v1) ## 00000024
/* 002C8 808A5838 C4286068 */ lwc1 $f8, %lo(D_808A6068)($at)
/* 002CC 808A583C 3C01808A */ lui $at, %hi(D_808A606C) ## $at = 808A0000
/* 002D0 808A5840 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
/* 002D4 808A5844 4600403C */ c.lt.s $f8, $f0
/* 002D8 808A5848 00000000 */ nop
/* 002DC 808A584C 45000002 */ bc1f .L808A5858
/* 002E0 808A5850 00000000 */ nop
/* 002E4 808A5854 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
.L808A5858:
/* 002E8 808A5858 10400008 */ beq $v0, $zero, .L808A587C
/* 002EC 808A585C 00000000 */ nop
/* 002F0 808A5860 C42A606C */ lwc1 $f10, %lo(D_808A606C)($at)
/* 002F4 808A5864 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
/* 002F8 808A5868 460A003C */ c.lt.s $f0, $f10
/* 002FC 808A586C 00000000 */ nop
/* 00300 808A5870 45000002 */ bc1f .L808A587C
/* 00304 808A5874 00000000 */ nop
/* 00308 808A5878 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
.L808A587C:
/* 0030C 808A587C 03E00008 */ jr $ra
/* 00310 808A5880 00000000 */ nop

View File

@ -1,5 +0,0 @@
glabel func_808A5884
/* 00314 808A5884 3C0E808A */ lui $t6, %hi(func_808A5894) ## $t6 = 808A0000
/* 00318 808A5888 25CE5894 */ addiu $t6, $t6, %lo(func_808A5894) ## $t6 = 808A5894
/* 0031C 808A588C 03E00008 */ jr $ra
/* 00320 808A5890 AC8E0164 */ sw $t6, 0x0164($a0) ## 00000164

View File

@ -1,24 +0,0 @@
glabel func_808A5894
/* 00324 808A5894 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00328 808A5898 AFA40018 */ sw $a0, 0x0018($sp)
/* 0032C 808A589C 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00330 808A58A0 8FAE0018 */ lw $t6, 0x0018($sp)
/* 00334 808A58A4 342117A4 */ ori $at, $at, 0x17A4 ## $at = 000117A4
/* 00338 808A58A8 AFBF0014 */ sw $ra, 0x0014($sp)
/* 0033C 808A58AC 00A12021 */ addu $a0, $a1, $at
/* 00340 808A58B0 0C026062 */ jal Object_IsLoaded
/* 00344 808A58B4 81C50174 */ lb $a1, 0x0174($t6) ## 00000174
/* 00348 808A58B8 50400008 */ beql $v0, $zero, .L808A58DC
/* 0034C 808A58BC 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00350 808A58C0 0C22963A */ jal func_808A58E8
/* 00354 808A58C4 8FA40018 */ lw $a0, 0x0018($sp)
/* 00358 808A58C8 8FB80018 */ lw $t8, 0x0018($sp)
/* 0035C 808A58CC 3C0F808A */ lui $t7, %hi(func_808A5D60) ## $t7 = 808A0000
/* 00360 808A58D0 25EF5D60 */ addiu $t7, $t7, %lo(func_808A5D60) ## $t7 = 808A5D60
/* 00364 808A58D4 AF0F0134 */ sw $t7, 0x0134($t8) ## 00000134
/* 00368 808A58D8 8FBF0014 */ lw $ra, 0x0014($sp)
.L808A58DC:
/* 0036C 808A58DC 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00370 808A58E0 03E00008 */ jr $ra
/* 00374 808A58E4 00000000 */ nop

View File

@ -1,22 +0,0 @@
.late_rodata
glabel D_808A6070
.word 0x442AC000
.text
glabel func_808A58E8
/* 00378 808A58E8 8C8E0170 */ lw $t6, 0x0170($a0) ## 00000170
/* 0037C 808A58EC 3C19808A */ lui $t9, %hi(func_808A5920) ## $t9 = 808A0000
/* 00380 808A58F0 3C01808A */ lui $at, %hi(D_808A6070) ## $at = 808A0000
/* 00384 808A58F4 19C00004 */ blez $t6, .L808A5908
/* 00388 808A58F8 27395920 */ addiu $t9, $t9, %lo(func_808A5920) ## $t9 = 808A5920
/* 0038C 808A58FC 240F0064 */ addiu $t7, $zero, 0x0064 ## $t7 = 00000064
/* 00390 808A5900 10000003 */ beq $zero, $zero, .L808A5910
/* 00394 808A5904 AC8F0168 */ sw $t7, 0x0168($a0) ## 00000168
.L808A5908:
/* 00398 808A5908 24180015 */ addiu $t8, $zero, 0x0015 ## $t8 = 00000015
/* 0039C 808A590C AC980168 */ sw $t8, 0x0168($a0) ## 00000168
.L808A5910:
/* 003A0 808A5910 C4246070 */ lwc1 $f4, %lo(D_808A6070)($at)
/* 003A4 808A5914 AC990164 */ sw $t9, 0x0164($a0) ## 00000164
/* 003A8 808A5918 03E00008 */ jr $ra
/* 003AC 808A591C E4840028 */ swc1 $f4, 0x0028($a0) ## 00000028

View File

@ -1,60 +0,0 @@
glabel func_808A5920
/* 003B0 808A5920 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 003B4 808A5924 AFBF001C */ sw $ra, 0x001C($sp)
/* 003B8 808A5928 AFB00018 */ sw $s0, 0x0018($sp)
/* 003BC 808A592C 8C8E0170 */ lw $t6, 0x0170($a0) ## 00000170
/* 003C0 808A5930 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 003C4 808A5934 15C00013 */ bne $t6, $zero, .L808A5984
/* 003C8 808A5938 00000000 */ nop
/* 003CC 808A593C 0C2295F5 */ jal func_808A57D4
/* 003D0 808A5940 00000000 */ nop
/* 003D4 808A5944 54400007 */ bnel $v0, $zero, .L808A5964
/* 003D8 808A5948 8E020168 */ lw $v0, 0x0168($s0) ## 00000168
/* 003DC 808A594C 8E0F0168 */ lw $t7, 0x0168($s0) ## 00000168
/* 003E0 808A5950 24020015 */ addiu $v0, $zero, 0x0015 ## $v0 = 00000015
/* 003E4 808A5954 29E10014 */ slti $at, $t7, 0x0014
/* 003E8 808A5958 10200008 */ beq $at, $zero, .L808A597C
/* 003EC 808A595C 00000000 */ nop
/* 003F0 808A5960 8E020168 */ lw $v0, 0x0168($s0) ## 00000168
.L808A5964:
/* 003F4 808A5964 5C400019 */ bgtzl $v0, .L808A59CC
/* 003F8 808A5968 28410014 */ slti $at, $v0, 0x0014
/* 003FC 808A596C 0C22967C */ jal func_808A59F0
/* 00400 808A5970 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00404 808A5974 10000014 */ beq $zero, $zero, .L808A59C8
/* 00408 808A5978 8E020168 */ lw $v0, 0x0168($s0) ## 00000168
.L808A597C:
/* 0040C 808A597C 10000012 */ beq $zero, $zero, .L808A59C8
/* 00410 808A5980 AE020168 */ sw $v0, 0x0168($s0) ## 00000168
.L808A5984:
/* 00414 808A5984 0C2295C9 */ jal func_808A5724
/* 00418 808A5988 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0041C 808A598C 54400007 */ bnel $v0, $zero, .L808A59AC
/* 00420 808A5990 8E020168 */ lw $v0, 0x0168($s0) ## 00000168
/* 00424 808A5994 8E190168 */ lw $t9, 0x0168($s0) ## 00000168
/* 00428 808A5998 24020064 */ addiu $v0, $zero, 0x0064 ## $v0 = 00000064
/* 0042C 808A599C 2B210014 */ slti $at, $t9, 0x0014
/* 00430 808A59A0 50200009 */ beql $at, $zero, .L808A59C8
/* 00434 808A59A4 AE020168 */ sw $v0, 0x0168($s0) ## 00000168
/* 00438 808A59A8 8E020168 */ lw $v0, 0x0168($s0) ## 00000168
.L808A59AC:
/* 0043C 808A59AC 5C400007 */ bgtzl $v0, .L808A59CC
/* 00440 808A59B0 28410014 */ slti $at, $v0, 0x0014
/* 00444 808A59B4 0C22967C */ jal func_808A59F0
/* 00448 808A59B8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0044C 808A59BC 10000002 */ beq $zero, $zero, .L808A59C8
/* 00450 808A59C0 8E020168 */ lw $v0, 0x0168($s0) ## 00000168
/* 00454 808A59C4 AE020168 */ sw $v0, 0x0168($s0) ## 00000168
.L808A59C8:
/* 00458 808A59C8 28410014 */ slti $at, $v0, 0x0014
.L808A59CC:
/* 0045C 808A59CC 50200004 */ beql $at, $zero, .L808A59E0
/* 00460 808A59D0 8FBF001C */ lw $ra, 0x001C($sp)
/* 00464 808A59D4 0C01E233 */ jal func_800788CC
/* 00468 808A59D8 2404205C */ addiu $a0, $zero, 0x205C ## $a0 = 0000205C
/* 0046C 808A59DC 8FBF001C */ lw $ra, 0x001C($sp)
.L808A59E0:
/* 00470 808A59E0 8FB00018 */ lw $s0, 0x0018($sp)
/* 00474 808A59E4 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 00478 808A59E8 03E00008 */ jr $ra
/* 0047C 808A59EC 00000000 */ nop

View File

@ -1,8 +0,0 @@
glabel func_808A59F0
/* 00480 808A59F0 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 00484 808A59F4 3C0E808A */ lui $t6, %hi(func_808A5A0C) ## $t6 = 808A0000
/* 00488 808A59F8 25CE5A0C */ addiu $t6, $t6, %lo(func_808A5A0C) ## $t6 = 808A5A0C
/* 0048C 808A59FC AC8E0164 */ sw $t6, 0x0164($a0) ## 00000164
/* 00490 808A5A00 AC80016C */ sw $zero, 0x016C($a0) ## 0000016C
/* 00494 808A5A04 03E00008 */ jr $ra
/* 00498 808A5A08 E4840060 */ swc1 $f4, 0x0060($a0) ## 00000060

View File

@ -1,105 +0,0 @@
.late_rodata
glabel D_808A6074
.word 0x43C98000
glabel D_808A6078
.word 0x43C98000
.text
glabel func_808A5A0C
/* 0049C 808A5A0C 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
/* 004A0 808A5A10 AFBF0024 */ sw $ra, 0x0024($sp)
/* 004A4 808A5A14 AFB00020 */ sw $s0, 0x0020($sp)
/* 004A8 808A5A18 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 004AC 808A5A1C 0C00B638 */ jal Actor_MoveForward
/* 004B0 808A5A20 AFA5003C */ sw $a1, 0x003C($sp)
/* 004B4 808A5A24 C60C0060 */ lwc1 $f12, 0x0060($s0) ## 00000060
/* 004B8 808A5A28 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 004BC 808A5A2C 3C01808A */ lui $at, %hi(D_808A6074) ## $at = 808A0000
/* 004C0 808A5A30 4604603C */ c.lt.s $f12, $f4
/* 004C4 808A5A34 00000000 */ nop
/* 004C8 808A5A38 4502004D */ bc1fl .L808A5B70
/* 004CC 808A5A3C 8FBF0024 */ lw $ra, 0x0024($sp)
/* 004D0 808A5A40 C42E6074 */ lwc1 $f14, %lo(D_808A6074)($at)
/* 004D4 808A5A44 C6020028 */ lwc1 $f2, 0x0028($s0) ## 00000028
/* 004D8 808A5A48 460E103E */ c.le.s $f2, $f14
/* 004DC 808A5A4C 00000000 */ nop
/* 004E0 808A5A50 45020047 */ bc1fl .L808A5B70
/* 004E4 808A5A54 8FBF0024 */ lw $ra, 0x0024($sp)
/* 004E8 808A5A58 8E02016C */ lw $v0, 0x016C($s0) ## 0000016C
/* 004EC 808A5A5C 28410004 */ slti $at, $v0, 0x0004
/* 004F0 808A5A60 14200005 */ bne $at, $zero, .L808A5A78
/* 004F4 808A5A64 00000000 */ nop
/* 004F8 808A5A68 0C2296E0 */ jal func_808A5B80
/* 004FC 808A5A6C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00500 808A5A70 1000003F */ beq $zero, $zero, .L808A5B70
/* 00504 808A5A74 8FBF0024 */ lw $ra, 0x0024($sp)
.L808A5A78:
/* 00508 808A5A78 14400011 */ bne $v0, $zero, .L808A5AC0
/* 0050C 808A5A7C 00000000 */ nop
/* 00510 808A5A80 8E0E0170 */ lw $t6, 0x0170($s0) ## 00000170
/* 00514 808A5A84 2404281D */ addiu $a0, $zero, 0x281D ## $a0 = 0000281D
/* 00518 808A5A88 25CF0001 */ addiu $t7, $t6, 0x0001 ## $t7 = 00000001
/* 0051C 808A5A8C 0C01E233 */ jal func_800788CC
/* 00520 808A5A90 AE0F0170 */ sw $t7, 0x0170($s0) ## 00000170
/* 00524 808A5A94 C6000094 */ lwc1 $f0, 0x0094($s0) ## 00000094
/* 00528 808A5A98 240500FF */ addiu $a1, $zero, 0x00FF ## $a1 = 000000FF
/* 0052C 808A5A9C 24060014 */ addiu $a2, $zero, 0x0014 ## $a2 = 00000014
/* 00530 808A5AA0 46000302 */ mul.s $f12, $f0, $f0
/* 00534 808A5AA4 0C02A800 */ jal func_800AA000
/* 00538 808A5AA8 24070096 */ addiu $a3, $zero, 0x0096 ## $a3 = 00000096
/* 0053C 808A5AAC 3C01808A */ lui $at, %hi(D_808A6078) ## $at = 808A0000
/* 00540 808A5AB0 C42E6078 */ lwc1 $f14, %lo(D_808A6078)($at)
/* 00544 808A5AB4 8E02016C */ lw $v0, 0x016C($s0) ## 0000016C
/* 00548 808A5AB8 C60C0060 */ lwc1 $f12, 0x0060($s0) ## 00000060
/* 0054C 808A5ABC C6020028 */ lwc1 $f2, 0x0028($s0) ## 00000028
.L808A5AC0:
/* 00550 808A5AC0 3C03808A */ lui $v1, %hi(D_808A5E90) ## $v1 = 808A0000
/* 00554 808A5AC4 24635E90 */ addiu $v1, $v1, %lo(D_808A5E90) ## $v1 = 808A5E90
/* 00558 808A5AC8 0002C080 */ sll $t8, $v0, 2
/* 0055C 808A5ACC 460E1181 */ sub.s $f6, $f2, $f14
/* 00560 808A5AD0 0078C821 */ addu $t9, $v1, $t8
/* 00564 808A5AD4 C7280000 */ lwc1 $f8, 0x0000($t9) ## 00000000
/* 00568 808A5AD8 46006005 */ abs.s $f0, $f12
/* 0056C 808A5ADC 8E08016C */ lw $t0, 0x016C($s0) ## 0000016C
/* 00570 808A5AE0 46083282 */ mul.s $f10, $f6, $f8
/* 00574 808A5AE4 8FA6003C */ lw $a2, 0x003C($sp)
/* 00578 808A5AE8 00084880 */ sll $t1, $t0, 2
/* 0057C 808A5AEC 8E0B016C */ lw $t3, 0x016C($s0) ## 0000016C
/* 00580 808A5AF0 00695021 */ addu $t2, $v1, $t1
/* 00584 808A5AF4 24050003 */ addiu $a1, $zero, 0x0003 ## $a1 = 00000003
/* 00588 808A5AF8 256C0001 */ addiu $t4, $t3, 0x0001 ## $t4 = 00000001
/* 0058C 808A5AFC 46005403 */ div.s $f16, $f10, $f0
/* 00590 808A5B00 46107481 */ sub.s $f18, $f14, $f16
/* 00594 808A5B04 E6120028 */ swc1 $f18, 0x0028($s0) ## 00000028
/* 00598 808A5B08 C5440000 */ lwc1 $f4, 0x0000($t2) ## 00000000
/* 0059C 808A5B0C AE0C016C */ sw $t4, 0x016C($s0) ## 0000016C
/* 005A0 808A5B10 E6040060 */ swc1 $f4, 0x0060($s0) ## 00000060
/* 005A4 808A5B14 84CD07A0 */ lh $t5, 0x07A0($a2) ## 000007A0
/* 005A8 808A5B18 000D7080 */ sll $t6, $t5, 2
/* 005AC 808A5B1C 00CE7821 */ addu $t7, $a2, $t6
/* 005B0 808A5B20 0C024BE2 */ jal Quake_Add
/* 005B4 808A5B24 8DE40790 */ lw $a0, 0x0790($t7) ## 00000790
/* 005B8 808A5B28 00022400 */ sll $a0, $v0, 16
/* 005BC 808A5B2C AFA2002C */ sw $v0, 0x002C($sp)
/* 005C0 808A5B30 00042403 */ sra $a0, $a0, 16
/* 005C4 808A5B34 0C024B6B */ jal Quake_SetSpeed
/* 005C8 808A5B38 2405C350 */ addiu $a1, $zero, 0xC350 ## $a1 = FFFFC350
/* 005CC 808A5B3C 87B0002E */ lh $s0, 0x002E($sp)
/* 005D0 808A5B40 24050005 */ addiu $a1, $zero, 0x0005 ## $a1 = 00000005
/* 005D4 808A5B44 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 005D8 808A5B48 00102400 */ sll $a0, $s0, 16
/* 005DC 808A5B4C 00042403 */ sra $a0, $a0, 16
/* 005E0 808A5B50 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 005E4 808A5B54 0C024B9C */ jal Quake_SetQuakeValues
/* 005E8 808A5B58 AFA00010 */ sw $zero, 0x0010($sp)
/* 005EC 808A5B5C 00102400 */ sll $a0, $s0, 16
/* 005F0 808A5B60 00042403 */ sra $a0, $a0, 16
/* 005F4 808A5B64 0C024B7C */ jal Quake_SetCountdown
/* 005F8 808A5B68 24050005 */ addiu $a1, $zero, 0x0005 ## $a1 = 00000005
/* 005FC 808A5B6C 8FBF0024 */ lw $ra, 0x0024($sp)
.L808A5B70:
/* 00600 808A5B70 8FB00020 */ lw $s0, 0x0020($sp)
/* 00604 808A5B74 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
/* 00608 808A5B78 03E00008 */ jr $ra
/* 0060C 808A5B7C 00000000 */ nop

View File

@ -1,15 +0,0 @@
.late_rodata
glabel D_808A607C
.word 0x43C98000
.text
glabel func_808A5B80
/* 00610 808A5B80 3C0E808A */ lui $t6, %hi(func_808A5BA4) ## $t6 = 808A0000
/* 00614 808A5B84 25CE5BA4 */ addiu $t6, $t6, %lo(func_808A5BA4) ## $t6 = 808A5BA4
/* 00618 808A5B88 AC8E0164 */ sw $t6, 0x0164($a0) ## 00000164
/* 0061C 808A5B8C 3C01808A */ lui $at, %hi(D_808A607C) ## $at = 808A0000
/* 00620 808A5B90 C424607C */ lwc1 $f4, %lo(D_808A607C)($at)
/* 00624 808A5B94 240F0014 */ addiu $t7, $zero, 0x0014 ## $t7 = 00000014
/* 00628 808A5B98 AC8F0168 */ sw $t7, 0x0168($a0) ## 00000168
/* 0062C 808A5B9C 03E00008 */ jr $ra
/* 00630 808A5BA0 E4840028 */ swc1 $f4, 0x0028($a0) ## 00000028

View File

@ -1,14 +0,0 @@
glabel func_808A5BA4
/* 00634 808A5BA4 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00638 808A5BA8 AFBF0014 */ sw $ra, 0x0014($sp)
/* 0063C 808A5BAC AFA5001C */ sw $a1, 0x001C($sp)
/* 00640 808A5BB0 8C8E0168 */ lw $t6, 0x0168($a0) ## 00000168
/* 00644 808A5BB4 5DC00004 */ bgtzl $t6, .L808A5BC8
/* 00648 808A5BB8 8FBF0014 */ lw $ra, 0x0014($sp)
/* 0064C 808A5BBC 0C2296F5 */ jal func_808A5BD4
/* 00650 808A5BC0 00000000 */ nop
/* 00654 808A5BC4 8FBF0014 */ lw $ra, 0x0014($sp)
.L808A5BC8:
/* 00658 808A5BC8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 0065C 808A5BCC 03E00008 */ jr $ra
/* 00660 808A5BD0 00000000 */ nop

View File

@ -1,13 +0,0 @@
.late_rodata
glabel D_808A6080
.word 0xBDCCCCCD
.text
glabel func_808A5BD4
/* 00664 808A5BD4 3C0E808A */ lui $t6, %hi(func_808A5BF0) ## $t6 = 808A0000
/* 00668 808A5BD8 25CE5BF0 */ addiu $t6, $t6, %lo(func_808A5BF0) ## $t6 = 808A5BF0
/* 0066C 808A5BDC AC8E0164 */ sw $t6, 0x0164($a0) ## 00000164
/* 00670 808A5BE0 3C01808A */ lui $at, %hi(D_808A6080) ## $at = 808A0000
/* 00674 808A5BE4 C4246080 */ lwc1 $f4, %lo(D_808A6080)($at)
/* 00678 808A5BE8 03E00008 */ jr $ra
/* 0067C 808A5BEC E4840060 */ swc1 $f4, 0x0060($a0) ## 00000060

View File

@ -1,40 +0,0 @@
.late_rodata
glabel D_808A6084
.word 0x442AC000, 0x00000000, 0x00000000
.text
glabel func_808A5BF0
/* 00680 808A5BF0 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 00684 808A5BF4 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 00688 808A5BF8 AFB00020 */ sw $s0, 0x0020($sp)
/* 0068C 808A5BFC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00690 808A5C00 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00694 808A5C04 AFA5002C */ sw $a1, 0x002C($sp)
/* 00698 808A5C08 3C063D75 */ lui $a2, 0x3D75 ## $a2 = 3D750000
/* 0069C 808A5C0C 3C073DCC */ lui $a3, 0x3DCC ## $a3 = 3DCC0000
/* 006A0 808A5C10 34E7CCCD */ ori $a3, $a3, 0xCCCD ## $a3 = 3DCCCCCD
/* 006A4 808A5C14 34C6C28F */ ori $a2, $a2, 0xC28F ## $a2 = 3D75C28F
/* 006A8 808A5C18 3C0540A0 */ lui $a1, 0x40A0 ## $a1 = 40A00000
/* 006AC 808A5C1C 24840060 */ addiu $a0, $a0, 0x0060 ## $a0 = 00000060
/* 006B0 808A5C20 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
/* 006B4 808A5C24 E7A40010 */ swc1 $f4, 0x0010($sp)
/* 006B8 808A5C28 C6060028 */ lwc1 $f6, 0x0028($s0) ## 00000028
/* 006BC 808A5C2C C6080060 */ lwc1 $f8, 0x0060($s0) ## 00000060
/* 006C0 808A5C30 3C01808A */ lui $at, %hi(D_808A6084) ## $at = 808A0000
/* 006C4 808A5C34 46083280 */ add.s $f10, $f6, $f8
/* 006C8 808A5C38 E60A0028 */ swc1 $f10, 0x0028($s0) ## 00000028
/* 006CC 808A5C3C C4326084 */ lwc1 $f18, %lo(D_808A6084)($at)
/* 006D0 808A5C40 C6100028 */ lwc1 $f16, 0x0028($s0) ## 00000028
/* 006D4 808A5C44 4610903E */ c.le.s $f18, $f16
/* 006D8 808A5C48 00000000 */ nop
/* 006DC 808A5C4C 45020004 */ bc1fl .L808A5C60
/* 006E0 808A5C50 8FBF0024 */ lw $ra, 0x0024($sp)
/* 006E4 808A5C54 0C22963A */ jal func_808A58E8
/* 006E8 808A5C58 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 006EC 808A5C5C 8FBF0024 */ lw $ra, 0x0024($sp)
.L808A5C60:
/* 006F0 808A5C60 8FB00020 */ lw $s0, 0x0020($sp)
/* 006F4 808A5C64 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 006F8 808A5C68 03E00008 */ jr $ra
/* 006FC 808A5C6C 00000000 */ nop

View File

@ -1,79 +0,0 @@
.rdata
glabel D_808A5FF8
.asciz "../z_bg_mori_rakkatenjo.c"
.balign 4
glabel D_808A6014
.asciz "../z_bg_mori_rakkatenjo.c"
.balign 4
glabel D_808A6030
.asciz "../z_bg_mori_rakkatenjo.c"
.balign 4
.text
glabel func_808A5D60
/* 007F0 808A5D60 27BDFFB0 */ addiu $sp, $sp, 0xFFB0 ## $sp = FFFFFFB0
/* 007F4 808A5D64 AFB10018 */ sw $s1, 0x0018($sp)
/* 007F8 808A5D68 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 007FC 808A5D6C AFBF001C */ sw $ra, 0x001C($sp)
/* 00800 808A5D70 AFB00014 */ sw $s0, 0x0014($sp)
/* 00804 808A5D74 AFA40050 */ sw $a0, 0x0050($sp)
/* 00808 808A5D78 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000
/* 0080C 808A5D7C 3C06808A */ lui $a2, %hi(D_808A5FF8) ## $a2 = 808A0000
/* 00810 808A5D80 24C65FF8 */ addiu $a2, $a2, %lo(D_808A5FF8) ## $a2 = 808A5FF8
/* 00814 808A5D84 27A40034 */ addiu $a0, $sp, 0x0034 ## $a0 = FFFFFFE4
/* 00818 808A5D88 240701F1 */ addiu $a3, $zero, 0x01F1 ## $a3 = 000001F1
/* 0081C 808A5D8C 0C031AB1 */ jal Graph_OpenDisps
/* 00820 808A5D90 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
/* 00824 808A5D94 0C024F46 */ jal func_80093D18
/* 00828 808A5D98 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 0082C 808A5D9C 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
/* 00830 808A5DA0 3C0FDB06 */ lui $t7, 0xDB06 ## $t7 = DB060000
/* 00834 808A5DA4 35EF0020 */ ori $t7, $t7, 0x0020 ## $t7 = DB060020
/* 00838 808A5DA8 244E0008 */ addiu $t6, $v0, 0x0008 ## $t6 = 00000008
/* 0083C 808A5DAC AE0E02C0 */ sw $t6, 0x02C0($s0) ## 000002C0
/* 00840 808A5DB0 AC4F0000 */ sw $t7, 0x0000($v0) ## 00000000
/* 00844 808A5DB4 8FB80050 */ lw $t8, 0x0050($sp)
/* 00848 808A5DB8 3C0A0001 */ lui $t2, 0x0001 ## $t2 = 00010000
/* 0084C 808A5DBC 3C0CDA38 */ lui $t4, 0xDA38 ## $t4 = DA380000
/* 00850 808A5DC0 83190174 */ lb $t9, 0x0174($t8) ## 00000174
/* 00854 808A5DC4 358C0003 */ ori $t4, $t4, 0x0003 ## $t4 = DA380003
/* 00858 808A5DC8 3C05808A */ lui $a1, %hi(D_808A6014) ## $a1 = 808A0000
/* 0085C 808A5DCC 00194100 */ sll $t0, $t9, 4
/* 00860 808A5DD0 01194021 */ addu $t0, $t0, $t9
/* 00864 808A5DD4 00084080 */ sll $t0, $t0, 2
/* 00868 808A5DD8 02284821 */ addu $t1, $s1, $t0
/* 0086C 808A5DDC 01495021 */ addu $t2, $t2, $t1
/* 00870 808A5DE0 8D4A17B4 */ lw $t2, 0x17B4($t2) ## 000117B4
/* 00874 808A5DE4 24A56014 */ addiu $a1, $a1, %lo(D_808A6014) ## $a1 = 808A6014
/* 00878 808A5DE8 240601F6 */ addiu $a2, $zero, 0x01F6 ## $a2 = 000001F6
/* 0087C 808A5DEC AC4A0004 */ sw $t2, 0x0004($v0) ## 00000004
/* 00880 808A5DF0 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
/* 00884 808A5DF4 244B0008 */ addiu $t3, $v0, 0x0008 ## $t3 = 00000008
/* 00888 808A5DF8 AE0B02C0 */ sw $t3, 0x02C0($s0) ## 000002C0
/* 0088C 808A5DFC AC4C0000 */ sw $t4, 0x0000($v0) ## 00000000
/* 00890 808A5E00 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 00894 808A5E04 0C0346A2 */ jal Matrix_NewMtx
/* 00898 808A5E08 AFA2002C */ sw $v0, 0x002C($sp)
/* 0089C 808A5E0C 8FA3002C */ lw $v1, 0x002C($sp)
/* 008A0 808A5E10 3C0F0600 */ lui $t7, 0x0600 ## $t7 = 06000000
/* 008A4 808A5E14 25EF7690 */ addiu $t7, $t7, 0x7690 ## $t7 = 06007690
/* 008A8 808A5E18 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 008AC 808A5E1C 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
/* 008B0 808A5E20 3C0EDE00 */ lui $t6, 0xDE00 ## $t6 = DE000000
/* 008B4 808A5E24 3C06808A */ lui $a2, %hi(D_808A6030) ## $a2 = 808A0000
/* 008B8 808A5E28 244D0008 */ addiu $t5, $v0, 0x0008 ## $t5 = 00000008
/* 008BC 808A5E2C AE0D02C0 */ sw $t5, 0x02C0($s0) ## 000002C0
/* 008C0 808A5E30 AC4F0004 */ sw $t7, 0x0004($v0) ## 00000004
/* 008C4 808A5E34 AC4E0000 */ sw $t6, 0x0000($v0) ## 00000000
/* 008C8 808A5E38 8E250000 */ lw $a1, 0x0000($s1) ## 00000000
/* 008CC 808A5E3C 24C66030 */ addiu $a2, $a2, %lo(D_808A6030) ## $a2 = 808A6030
/* 008D0 808A5E40 27A40034 */ addiu $a0, $sp, 0x0034 ## $a0 = FFFFFFE4
/* 008D4 808A5E44 0C031AD5 */ jal Graph_CloseDisps
/* 008D8 808A5E48 240701FA */ addiu $a3, $zero, 0x01FA ## $a3 = 000001FA
/* 008DC 808A5E4C 8FBF001C */ lw $ra, 0x001C($sp)
/* 008E0 808A5E50 8FB00014 */ lw $s0, 0x0014($sp)
/* 008E4 808A5E54 8FB10018 */ lw $s1, 0x0018($sp)
/* 008E8 808A5E58 03E00008 */ jr $ra
/* 008EC 808A5E5C 27BD0050 */ addiu $sp, $sp, 0x0050 ## $sp = 00000000

View File

@ -1,24 +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 .data
.balign 16
glabel D_808A5E60
.word 0x00000000
glabel Bg_Mori_Rakkatenjo_InitVars
.word 0x00890100, 0x00000030, 0x00720000, 0x00000178
.word BgMoriRakkatenjo_Init
.word BgMoriRakkatenjo_Destroy
.word BgMoriRakkatenjo_Update
.word 0x00000000
glabel D_808A5E84
.word 0xB06CFFFF, 0xB070FFF5, 0x485003E8
glabel D_808A5E90
.word 0x40800000, 0x3FC00000, 0x3ECCCCCD, 0x3DCCCCCD

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_808A6090
.incbin "baserom/ovl_Bg_Mori_Rakkatenjo", 0xB20, 0x00000180

3
spec
View File

@ -1137,8 +1137,7 @@ endseg
beginseg
name "ovl_Bg_Mori_Rakkatenjo"
include "build/src/overlays/actors/ovl_Bg_Mori_Rakkatenjo/z_bg_mori_rakkatenjo.o"
include "build/data/overlays/actors/z_bg_mori_rakkatenjo.data.o"
include "build/data/overlays/actors/z_bg_mori_rakkatenjo.reloc.o"
include "build/src/overlays/actors/ovl_Bg_Mori_Rakkatenjo/ovl_Bg_Mori_Rakkatenjo_reloc.o"
endseg
beginseg

View File

@ -1,3 +1,9 @@
/*
* File: z_bg_mori_rakkatenjo.c
* Overlay: ovl_Bg_Mori_Rakkatenjo
* Description: Falling ceiling in Forest Temple
*/
#include "z_bg_mori_rakkatenjo.h"
#define FLAGS 0x00000030
@ -7,8 +13,24 @@
void BgMoriRakkatenjo_Init(Actor* thisx, GlobalContext* globalCtx);
void BgMoriRakkatenjo_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgMoriRakkatenjo_Update(Actor* thisx, GlobalContext* globalCtx);
void BgMoriRakkatenjo_Draw(Actor* thisx, GlobalContext* globalCtx);
void BgMoriRakkatenjo_SetupWaitForMoriTex(BgMoriRakkatenjo* this);
void BgMoriRakkatenjo_WaitForMoriTex(BgMoriRakkatenjo* this, GlobalContext* globalCtx);
void BgMoriRakkatenjo_SetupWait(BgMoriRakkatenjo* this);
void BgMoriRakkatenjo_Wait(BgMoriRakkatenjo* this, GlobalContext* globalCtx);
void BgMoriRakkatenjo_SetupFall(BgMoriRakkatenjo* this);
void BgMoriRakkatenjo_Fall(BgMoriRakkatenjo* this, GlobalContext* globalCtx);
void BgMoriRakkatenjo_SetupRest(BgMoriRakkatenjo* this);
void BgMoriRakkatenjo_Rest(BgMoriRakkatenjo* this, GlobalContext* globalCtx);
void BgMoriRakkatenjo_SetupRise(BgMoriRakkatenjo* this);
void BgMoriRakkatenjo_Rise(BgMoriRakkatenjo* this, GlobalContext* globalCtx);
extern ColHeader D_060087AC;
extern Gfx D_06007690[];
static s16 sCamSetting = 0;
/*
const ActorInit Bg_Mori_Rakkatenjo_InitVars = {
ACTOR_BG_MORI_RAKKATENJO,
ACTORTYPE_BG,
@ -20,35 +42,199 @@ const ActorInit Bg_Mori_Rakkatenjo_InitVars = {
(ActorFunc)BgMoriRakkatenjo_Update,
NULL,
};
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mori_Rakkatenjo/BgMoriRakkatenjo_Init.s")
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mori_Rakkatenjo/BgMoriRakkatenjo_Destroy.s")
static InitChainEntry sInitChain[] = {
ICHAIN_F32(gravity, -1, ICHAIN_CONTINUE),
ICHAIN_F32(minVelocityY, -11, ICHAIN_CONTINUE),
ICHAIN_VEC3F_DIV1000(scale, 1000, ICHAIN_STOP),
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mori_Rakkatenjo/func_808A5724.s")
void BgMoriRakkatenjo_Init(Actor* thisx, GlobalContext* globalCtx) {
s32 pad;
BgMoriRakkatenjo* this = THIS;
ColHeader* colHeader = NULL;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mori_Rakkatenjo/func_808A57D4.s")
DynaPolyInfo_SetActorMove(&this->dyna, DPM_PLAYER);
// Forest Temple obj. Falling Ceiling
osSyncPrintf("森の神殿 obj. 落下天井 (home posY %f)\n", this->dyna.actor.initPosRot.pos.y);
if ((fabsf(1991.0f - this->dyna.actor.initPosRot.pos.x) > 0.001f) ||
(fabsf(683.0f - this->dyna.actor.initPosRot.pos.y) > 0.001f) ||
(fabsf(-2520.0f - this->dyna.actor.initPosRot.pos.z) > 0.001f)) {
// The set position has been changed. Let's fix the program.
osSyncPrintf("Warning : セット位置が変更されています。プログラムを修正しましょう。\n");
}
if (this->dyna.actor.initPosRot.rot.y != 0x8000) {
// The set Angle has changed. Let's fix the program.
osSyncPrintf("Warning : セット Angle が変更されています。プログラムを修正しましょう。\n");
}
this->moriTexObjIndex = Object_GetIndex(&globalCtx->objectCtx, OBJECT_MORI_TEX);
if (this->moriTexObjIndex < 0) {
// Forest Temple obj Falling Ceiling Bank Danger!
osSyncPrintf("Error : 森の神殿 obj 落下天井 バンク危険!(%s %d)\n", "../z_bg_mori_rakkatenjo.c", 205);
Actor_Kill(&this->dyna.actor);
return;
}
Actor_ProcessInitChain(&this->dyna.actor, sInitChain);
DynaPolyInfo_Alloc(&D_060087AC, &colHeader);
this->dyna.dynaPolyId =
DynaPolyInfo_RegisterActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader);
BgMoriRakkatenjo_SetupWaitForMoriTex(this);
sCamSetting = 0;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mori_Rakkatenjo/func_808A5884.s")
void BgMoriRakkatenjo_Destroy(Actor* thisx, GlobalContext* globalCtx) {
s32 pad;
BgMoriRakkatenjo* this = THIS;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mori_Rakkatenjo/func_808A5894.s")
DynaPolyInfo_Free(globalCtx, &globalCtx->colCtx.dyna, this->dyna.dynaPolyId);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mori_Rakkatenjo/func_808A58E8.s")
s32 BgMoriRakkatenjo_IsLinkUnder(BgMoriRakkatenjo* this, GlobalContext* globalCtx) {
Vec3f* pos = &PLAYER->actor.posRot.pos;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mori_Rakkatenjo/func_808A5920.s")
return (-3300.0f < pos->z) && (pos->z < -1840.0f) && (1791.0f < pos->x) && (pos->x < 2191.0f);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mori_Rakkatenjo/func_808A59F0.s")
s32 BgMoriRakkatenjo_IsLinkClose(BgMoriRakkatenjo* this, GlobalContext* globalCtx) {
Vec3f* pos = &PLAYER->actor.posRot.pos;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mori_Rakkatenjo/func_808A5A0C.s")
return (-3360.0f < pos->z) && (pos->z < -1840.0f) && (1791.0f < pos->x) && (pos->x < 2191.0f);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mori_Rakkatenjo/func_808A5B80.s")
void BgMoriRakkatenjo_SetupWaitForMoriTex(BgMoriRakkatenjo* this) {
this->actionFunc = BgMoriRakkatenjo_WaitForMoriTex;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mori_Rakkatenjo/func_808A5BA4.s")
void BgMoriRakkatenjo_WaitForMoriTex(BgMoriRakkatenjo* this, GlobalContext* globalCtx) {
if (Object_IsLoaded(&globalCtx->objectCtx, this->moriTexObjIndex)) {
BgMoriRakkatenjo_SetupWait(this);
this->dyna.actor.draw = BgMoriRakkatenjo_Draw;
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mori_Rakkatenjo/func_808A5BD4.s")
void BgMoriRakkatenjo_SetupWait(BgMoriRakkatenjo* this) {
this->timer = (this->fallCount > 0) ? 100 : 21;
this->dyna.actor.posRot.pos.y = 683.0f;
this->actionFunc = BgMoriRakkatenjo_Wait;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mori_Rakkatenjo/func_808A5BF0.s")
void BgMoriRakkatenjo_Wait(BgMoriRakkatenjo* this, GlobalContext* globalCtx) {
if (this->fallCount == 0) {
if (BgMoriRakkatenjo_IsLinkClose(this, globalCtx) || (this->timer < 20)) {
if (this->timer <= 0) {
BgMoriRakkatenjo_SetupFall(this);
}
} else {
this->timer = 21;
}
} else {
if (BgMoriRakkatenjo_IsLinkUnder(this, globalCtx) || (this->timer < 20)) {
if (this->timer <= 0) {
BgMoriRakkatenjo_SetupFall(this);
}
} else {
this->timer = 100;
}
}
if (this->timer < 20) {
func_800788CC(NA_SE_EV_BLOCKSINK - SFX_FLAG);
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mori_Rakkatenjo/BgMoriRakkatenjo_Update.s")
void BgMoriRakkatenjo_SetupFall(BgMoriRakkatenjo* this) {
this->actionFunc = BgMoriRakkatenjo_Fall;
this->bounceCount = 0;
this->dyna.actor.velocity.y = 0.0f;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mori_Rakkatenjo/func_808A5D60.s")
void BgMoriRakkatenjo_Fall(BgMoriRakkatenjo* this, GlobalContext* globalCtx) {
static f32 bounceVel[] = { 4.0f, 1.5f, 0.4f, 0.1f };
s32 pad;
Actor* thisx = &this->dyna.actor;
s32 quake;
Actor_MoveForward(thisx);
if ((thisx->velocity.y < 0.0f) && (thisx->posRot.pos.y <= 403.0f)) {
if (this->bounceCount >= ARRAY_COUNT(bounceVel)) {
BgMoriRakkatenjo_SetupRest(this);
} else {
if (this->bounceCount == 0) {
this->fallCount++;
func_800788CC(NA_SE_EV_STONE_BOUND);
func_800AA000(SQ(thisx->yDistFromLink), 0xFF, 0x14, 0x96);
}
thisx->posRot.pos.y =
403.0f - (thisx->posRot.pos.y - 403.0f) * bounceVel[this->bounceCount] / fabsf(thisx->velocity.y);
thisx->velocity.y = bounceVel[this->bounceCount];
this->bounceCount++;
quake = Quake_Add(ACTIVE_CAM, 3);
Quake_SetSpeed(quake, 50000);
Quake_SetQuakeValues(quake, 5, 0, 0, 0);
Quake_SetCountdown(quake, 5);
}
}
}
void BgMoriRakkatenjo_SetupRest(BgMoriRakkatenjo* this) {
this->actionFunc = BgMoriRakkatenjo_Rest;
this->dyna.actor.posRot.pos.y = 403.0f;
this->timer = 20;
}
void BgMoriRakkatenjo_Rest(BgMoriRakkatenjo* this, GlobalContext* globalCtx) {
if (this->timer <= 0) {
BgMoriRakkatenjo_SetupRise(this);
}
}
void BgMoriRakkatenjo_SetupRise(BgMoriRakkatenjo* this) {
this->actionFunc = BgMoriRakkatenjo_Rise;
this->dyna.actor.velocity.y = -0.1f;
}
void BgMoriRakkatenjo_Rise(BgMoriRakkatenjo* this, GlobalContext* globalCtx) {
Math_SmoothScaleMaxMinF(&this->dyna.actor.velocity.y, 5.0f, 0.06f, 0.1f, 0.0f);
this->dyna.actor.posRot.pos.y += this->dyna.actor.velocity.y;
if (this->dyna.actor.posRot.pos.y >= 683.0f) {
BgMoriRakkatenjo_SetupWait(this);
}
}
void BgMoriRakkatenjo_Update(Actor* thisx, GlobalContext* globalCtx) {
s32 pad;
BgMoriRakkatenjo* this = THIS;
if (this->timer > 0) {
this->timer--;
}
this->actionFunc(this, globalCtx);
if (BgMoriRakkatenjo_IsLinkUnder(this, globalCtx)) {
if (sCamSetting == 0) {
osSyncPrintf("camera changed (mori rakka tenjyo) ... \n");
sCamSetting = globalCtx->cameraPtrs[0]->setting;
Camera_SetCameraData(globalCtx->cameraPtrs[0], 1, &this->dyna.actor, NULL, 0, 0, 0);
func_8005A77C(globalCtx->cameraPtrs[0], 0x27);
}
} else if (sCamSetting != 0) {
osSyncPrintf("camera changed (previous) ... \n");
func_8005A77C(globalCtx->cameraPtrs[0], 4);
sCamSetting = 0;
}
}
void BgMoriRakkatenjo_Draw(Actor* thisx, GlobalContext* globalCtx) {
s32 pad;
BgMoriRakkatenjo* this = THIS;
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_bg_mori_rakkatenjo.c", 497);
func_80093D18(globalCtx->state.gfxCtx);
gSPSegment(oGfxCtx->polyOpa.p++, 0x08, globalCtx->objectCtx.status[this->moriTexObjIndex].segment);
gSPMatrix(oGfxCtx->polyOpa.p++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_mori_rakkatenjo.c", 502),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(oGfxCtx->polyOpa.p++, D_06007690);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_mori_rakkatenjo.c", 506);
}

View File

@ -6,9 +6,15 @@
struct BgMoriRakkatenjo;
typedef void (*BgMoriRakkatenjoActionFunction)(struct BgMoriRakkatenjo*, GlobalContext*);
typedef struct BgMoriRakkatenjo {
/* 0x0000 */ Actor actor;
/* 0x014C */ char unk_14C[0x2C];
/* 0x0000 */ DynaPolyActor dyna;
/* 0x0164 */ BgMoriRakkatenjoActionFunction actionFunc;
/* 0x0168 */ s32 timer;
/* 0x016C */ s32 bounceCount;
/* 0x0170 */ s32 fallCount;
/* 0x0174 */ s8 moriTexObjIndex;
} BgMoriRakkatenjo; // size = 0x0178
extern const ActorInit Bg_Mori_Rakkatenjo_InitVars;

View File

@ -1209,6 +1209,10 @@ D_0600C080 = 0x0600C080;
D_060088B0 = 0x060088B0;
D_0600BEC0 = 0x0600BEC0;
// z_bg_mori_rakkatenjo
D_06007690 = 0x06007690;
D_060087AC = 0x060087AC;
// z_bg_mori_kaitenkabe
D_060056B0 = 0x060056B0;
D_060063B8 = 0x060063B8;