Start Z2SceneMgr and Various Fixes (#11)

* Start Z2SceneMgr

* Various Fixes After Merge

Co-authored-by: Pheenoh <pheenoh@gmail.com>
This commit is contained in:
jdflyer
2020-12-02 18:35:32 -07:00
committed by GitHub
parent 3b18e45c56
commit 7643baec7d
39 changed files with 3808 additions and 3579 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
#include "dolphin/types.h"
#include "global.h"
namespace Z2Calc{
struct CurveSign{
+1 -1
View File
@@ -1,4 +1,4 @@
#include "dolphin/types.h"
#include "global.h"
struct Vec{ // move later
float x, y, z;
@@ -68,7 +68,7 @@ lbl_802C382C:
/* 802C3880 002C07C0 38 63 00 48 */ addi r3, r3, 0x48
/* 802C3884 002C07C4 FC 20 F8 90 */ fmr f1, f31
/* 802C3888 002C07C8 38 80 00 00 */ li r4, 0
/* 802C388C 002C07CC 4B FD F5 29 */ bl JAISoundParamsMove_NS_moveVolume
/* 802C388C 002C07CC 4B FD F5 29 */ bl moveVolume__18JAISoundParamsMoveFfUl
lbl_802C3890:
/* 802C3890 002C07D0 88 1F 00 CB */ lbz r0, 0xcb(r31)
/* 802C3894 002C07D4 54 00 07 FF */ clrlwi. r0, r0, 0x1f
@@ -102,7 +102,7 @@ lbl_802C3CC0:
/* 802C3D58 002C0C98 38 63 00 48 */ addi r3, r3, 0x48
/* 802C3D5C 002C0C9C FC 20 F8 90 */ fmr f1, f31
/* 802C3D60 002C0CA0 38 80 00 00 */ li r4, 0
/* 802C3D64 002C0CA4 4B FD F0 51 */ bl JAISoundParamsMove_NS_moveVolume
/* 802C3D64 002C0CA4 4B FD F0 51 */ bl moveVolume__18JAISoundParamsMoveFfUl
/* 802C3D68 002C0CA8 80 7F 00 00 */ lwz r3, 0(r31)
/* 802C3D6C 002C0CAC 38 63 00 48 */ addi r3, r3, 0x48
/* 802C3D70 002C0CB0 FC 20 F0 90 */ fmr f1, f30
@@ -151,7 +151,7 @@ lbl_802C3D80:
/* 802C3E18 002C0D58 38 63 00 48 */ addi r3, r3, 0x48
/* 802C3E1C 002C0D5C FC 20 F0 90 */ fmr f1, f30
/* 802C3E20 002C0D60 38 80 00 00 */ li r4, 0
/* 802C3E24 002C0D64 4B FD EF 91 */ bl JAISoundParamsMove_NS_moveVolume
/* 802C3E24 002C0D64 4B FD EF 91 */ bl moveVolume__18JAISoundParamsMoveFfUl
/* 802C3E28 002C0D68 80 7F 00 00 */ lwz r3, 0(r31)
/* 802C3E2C 002C0D6C 38 63 00 48 */ addi r3, r3, 0x48
/* 802C3E30 002C0D70 FC 20 F8 90 */ fmr f1, f31
@@ -301,7 +301,7 @@ lbl_802C42CC:
/* 802C42D0 002C1210 38 63 00 48 */ addi r3, r3, 0x48
/* 802C42D4 002C1214 FC 20 F8 90 */ fmr f1, f31
/* 802C42D8 002C1218 7F C4 F3 78 */ mr r4, r30
/* 802C42DC 002C121C 4B FD EA D9 */ bl JAISoundParamsMove_NS_moveVolume
/* 802C42DC 002C121C 4B FD EA D9 */ bl moveVolume__18JAISoundParamsMoveFfUl
/* 802C42E0 002C1220 80 7F 00 00 */ lwz r3, 0(r31)
/* 802C42E4 002C1224 38 63 00 48 */ addi r3, r3, 0x48
/* 802C42E8 002C1228 FC 20 F0 90 */ fmr f1, f30
@@ -61,7 +61,7 @@ lbl_802C4650:
/* 802C4684 002C15C4 38 63 00 48 */ addi r3, r3, 0x48
/* 802C4688 002C15C8 FC 20 F8 90 */ fmr f1, f31
/* 802C468C 002C15CC 38 80 00 00 */ li r4, 0
/* 802C4690 002C15D0 4B FD E7 25 */ bl JAISoundParamsMove_NS_moveVolume
/* 802C4690 002C15D0 4B FD E7 25 */ bl moveVolume__18JAISoundParamsMoveFfUl
/* 802C4694 002C15D4 80 6D 85 F4 */ lwz r3, lbl_80450B74-_SDA_BASE_(r13)
/* 802C4698 002C15D8 7F C4 F3 78 */ mr r4, r30
/* 802C469C 002C15DC 38 A0 00 08 */ li r5, 8
@@ -41,7 +41,7 @@ lbl_802C48A0:
/* 802C48A8 002C17E8 C0 02 C3 18 */ lfs f0, lbl_80455D18-_SDA2_BASE_(r2)
/* 802C48AC 002C17EC EC 3F 00 24 */ fdivs f1, f31, f0
/* 802C48B0 002C17F0 38 80 00 00 */ li r4, 0
/* 802C48B4 002C17F4 4B FD E5 01 */ bl JAISoundParamsMove_NS_moveVolume
/* 802C48B4 002C17F4 4B FD E5 01 */ bl moveVolume__18JAISoundParamsMoveFfUl
lbl_802C48B8:
/* 802C48B8 002C17F8 7F E3 FB 78 */ mr r3, r31
lbl_802C48BC:
@@ -0,0 +1,69 @@
#include "global.h"
class JAISoundParamsMove{
public:
void moveVolume(float param_1, u32 param_2);
private:
float unk_1;
};
class Z2SoundMgr{
public:
void resetFilterAll();
u8 p1[0x3ec];
JAISoundParamsMove* JAISoundParamsMove;
private:
};
class Z2SeMgr{
public:
void seMoveVolumeAll(float param_1, u32 param_2);
};
class Z2SeqMgr{
private:
u8 p1[0xD0];
u8 unk_1;
public:
void setFieldBgmPlay(bool param_1);
};
class Z2SceneMgr{
private:
long BGM_ID;
int field_0x4;
int timer;
s8 roomNum;
u8 SeWave_1;
u8 SeWaveToErase_1;
u8 SeWave_2;
u8 SeWaveToErase_2;
u8 BgmWave_1;
u8 BgmWaveToErase_1;
u8 BgmWave_2;
u8 BgmWaveToErase_2;
u8 SeWave_3;
u8 SeWaveToErase_3;
u8 field_0x17;
u8 field_0x18;
u8 field_0x19;
u8 field_0x1a;
u8 field_0x1b;
u8 field_0x1c;
bool field_0x1d;
bool inDarkness;
public:
Z2SceneMgr(void);
void setInDarkness(bool param_1);
void setSceneExist(bool param_1);
void setFadeOutStart(u8 param_1);
void setFadeInStart(u8 param_1);
void setSceneName(char* stageName, long roomNum, long layerNum);
int checkFirstWaves(void);
};
struct JAISoundID
{
u32 soundId;
JAISoundID(JAISoundID const &soundIdToSet);
};
@@ -0,0 +1,28 @@
/* 802B6840 002B3780 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B6844 002B3784 90 6D 86 00 */ stw r3, lbl_80450B80-_SDA_BASE_(r13)
/* 802B6848 002B3788 38 00 FF FF */ li r0, -1
/* 802B684C 002B378C 90 03 00 04 */ stw r0, 4(r3)
/* 802B6850 002B3790 90 01 00 08 */ stw r0, 8(r1)
/* 802B6854 002B3794 90 03 00 00 */ stw r0, 0(r3)
/* 802B6858 002B3798 98 03 00 0C */ stb r0, 0xc(r3)
/* 802B685C 002B379C 38 00 00 00 */ li r0, 0
/* 802B6860 002B37A0 98 03 00 0D */ stb r0, 0xd(r3)
/* 802B6864 002B37A4 98 03 00 0E */ stb r0, 0xe(r3)
/* 802B6868 002B37A8 98 03 00 0F */ stb r0, 0xf(r3)
/* 802B686C 002B37AC 98 03 00 10 */ stb r0, 0x10(r3)
/* 802B6870 002B37B0 98 03 00 11 */ stb r0, 0x11(r3)
/* 802B6874 002B37B4 98 03 00 12 */ stb r0, 0x12(r3)
/* 802B6878 002B37B8 98 03 00 13 */ stb r0, 0x13(r3)
/* 802B687C 002B37BC 98 03 00 14 */ stb r0, 0x14(r3)
/* 802B6880 002B37C0 98 03 00 15 */ stb r0, 0x15(r3)
/* 802B6884 002B37C4 98 03 00 16 */ stb r0, 0x16(r3)
/* 802B6888 002B37C8 98 03 00 18 */ stb r0, 0x18(r3)
/* 802B688C 002B37CC 98 03 00 19 */ stb r0, 0x19(r3)
/* 802B6890 002B37D0 98 03 00 1A */ stb r0, 0x1a(r3)
/* 802B6894 002B37D4 98 03 00 1B */ stb r0, 0x1b(r3)
/* 802B6898 002B37D8 98 03 00 1D */ stb r0, 0x1d(r3)
/* 802B689C 002B37DC 98 03 00 1C */ stb r0, 0x1c(r3)
/* 802B68A0 002B37E0 98 03 00 1E */ stb r0, 0x1e(r3)
/* 802B68A4 002B37E4 98 03 00 17 */ stb r0, 0x17(r3)
/* 802B68A8 002B37E8 38 21 00 10 */ addi r1, r1, 0x10
/* 802B68AC 002B37EC 4E 80 00 20 */ blr
@@ -0,0 +1,13 @@
/* 802B68B0 002B37F0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B68B4 002B37F4 7C 08 02 A6 */ mflr r0
/* 802B68B8 002B37F8 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B68BC 002B37FC 98 83 00 1E */ stb r4, 0x1e(r3)
/* 802B68C0 002B3800 54 80 06 3F */ clrlwi. r0, r4, 0x18
/* 802B68C4 002B3804 40 82 00 0C */ bne lbl_802B68D0
/* 802B68C8 002B3808 80 6D 85 E0 */ lwz r3, lbl_80450B60-_SDA_BASE_(r13)
/* 802B68CC 002B380C 4B FF 3B 65 */ bl resetFilterAll__10Z2SoundMgrFv
lbl_802B68D0:
/* 802B68D0 002B3810 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B68D4 002B3814 7C 08 03 A6 */ mtlr r0
/* 802B68D8 002B3818 38 21 00 10 */ addi r1, r1, 0x10
/* 802B68DC 002B381C 4E 80 00 20 */ blr
@@ -0,0 +1,43 @@
/* 802B68E0 002B3820 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B68E4 002B3824 7C 08 02 A6 */ mflr r0
/* 802B68E8 002B3828 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B68EC 002B382C 98 83 00 1D */ stb r4, 0x1d(r3)
/* 802B68F0 002B3830 38 00 00 00 */ li r0, 0
/* 802B68F4 002B3834 90 03 00 08 */ stw r0, 8(r3)
/* 802B68F8 002B3838 80 AD 85 E0 */ lwz r5, lbl_80450B60-_SDA_BASE_(r13)
/* 802B68FC 002B383C 54 80 06 3F */ clrlwi. r0, r4, 0x18
/* 802B6900 002B3840 41 82 00 5C */ beq lbl_802B695C
/* 802B6904 002B3844 38 00 00 01 */ li r0, 1
/* 802B6908 002B3848 98 03 00 1C */ stb r0, 0x1c(r3)
/* 802B690C 002B384C 88 03 00 15 */ lbz r0, 0x15(r3)
/* 802B6910 002B3850 28 00 00 85 */ cmplwi r0, 0x85
/* 802B6914 002B3854 40 82 00 18 */ bne lbl_802B692C
/* 802B6918 002B3858 38 65 03 EC */ addi r3, r5, 0x3ec
/* 802B691C 002B385C C0 22 C0 38 */ lfs f1, lbl_80455A38-_SDA2_BASE_(r2)
/* 802B6920 002B3860 38 80 00 00 */ li r4, 0
/* 802B6924 002B3864 4B FE C4 91 */ bl moveVolume__18JAISoundParamsMoveFfUl
/* 802B6928 002B3868 48 00 00 44 */ b lbl_802B696C
lbl_802B692C:
/* 802B692C 002B386C 28 00 00 7F */ cmplwi r0, 0x7f
/* 802B6930 002B3870 40 82 00 18 */ bne lbl_802B6948
/* 802B6934 002B3874 80 6D 86 08 */ lwz r3, lbl_80450B88-_SDA_BASE_(r13)
/* 802B6938 002B3878 C0 22 C0 38 */ lfs f1, lbl_80455A38-_SDA2_BASE_(r2)
/* 802B693C 002B387C 38 80 00 00 */ li r4, 0
/* 802B6940 002B3880 4B FF 70 B5 */ bl seMoveVolumeAll__7Z2SeMgrFfUl
/* 802B6944 002B3884 48 00 00 28 */ b lbl_802B696C
lbl_802B6948:
/* 802B6948 002B3888 38 65 03 EC */ addi r3, r5, 0x3ec
/* 802B694C 002B388C C0 22 C0 3C */ lfs f1, lbl_80455A3C-_SDA2_BASE_(r2)
/* 802B6950 002B3890 38 80 00 21 */ li r4, 0x21
/* 802B6954 002B3894 4B FE C4 61 */ bl moveVolume__18JAISoundParamsMoveFfUl
/* 802B6958 002B3898 48 00 00 14 */ b lbl_802B696C
lbl_802B695C:
/* 802B695C 002B389C 38 65 03 EC */ addi r3, r5, 0x3ec
/* 802B6960 002B38A0 C0 22 C0 38 */ lfs f1, lbl_80455A38-_SDA2_BASE_(r2)
/* 802B6964 002B38A4 38 80 00 B4 */ li r4, 0xb4
/* 802B6968 002B38A8 4B FE C4 4D */ bl moveVolume__18JAISoundParamsMoveFfUl
lbl_802B696C:
/* 802B696C 002B38AC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B6970 002B38B0 7C 08 03 A6 */ mtlr r0
/* 802B6974 002B38B4 38 21 00 10 */ addi r1, r1, 0x10
/* 802B6978 002B38B8 4E 80 00 20 */ blr
@@ -0,0 +1,39 @@
/* 802B697C 002B38BC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B6980 002B38C0 7C 08 02 A6 */ mflr r0
/* 802B6984 002B38C4 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B6988 002B38C8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802B698C 002B38CC 7C 7F 1B 78 */ mr r31, r3
/* 802B6990 002B38D0 38 80 00 00 */ li r4, 0
/* 802B6994 002B38D4 4B FF FF 4D */ bl setSceneExist__10Z2SceneMgrFb
/* 802B6998 002B38D8 80 6D 86 04 */ lwz r3, lbl_80450B84-_SDA_BASE_(r13)
/* 802B699C 002B38DC C0 03 00 74 */ lfs f0, 0x74(r3)
/* 802B69A0 002B38E0 38 00 00 21 */ li r0, 0x21
/* 802B69A4 002B38E4 90 03 00 80 */ stw r0, 0x80(r3)
/* 802B69A8 002B38E8 C0 62 C0 40 */ lfs f3, lbl_80455A40-_SDA2_BASE_(r2)
/* 802B69AC 002B38EC EC 43 00 28 */ fsubs f2, f3, f0
/* 802B69B0 002B38F0 80 03 00 80 */ lwz r0, 0x80(r3)
/* 802B69B4 002B38F4 C8 22 C0 48 */ lfd f1, lbl_80455A48-_SDA2_BASE_(r2)
/* 802B69B8 002B38F8 90 01 00 0C */ stw r0, 0xc(r1)
/* 802B69BC 002B38FC 3C 00 43 30 */ lis r0, 0x4330
/* 802B69C0 002B3900 90 01 00 08 */ stw r0, 8(r1)
/* 802B69C4 002B3904 C8 01 00 08 */ lfd f0, 8(r1)
/* 802B69C8 002B3908 EC 00 08 28 */ fsubs f0, f0, f1
/* 802B69CC 002B390C EC 02 00 24 */ fdivs f0, f2, f0
/* 802B69D0 002B3910 D0 03 00 78 */ stfs f0, 0x78(r3)
/* 802B69D4 002B3914 D0 63 00 7C */ stfs f3, 0x7c(r3)
/* 802B69D8 002B3918 80 6D 86 08 */ lwz r3, lbl_80450B88-_SDA_BASE_(r13)
/* 802B69DC 002B391C C0 22 C0 38 */ lfs f1, lbl_80455A38-_SDA2_BASE_(r2)
/* 802B69E0 002B3920 38 80 00 21 */ li r4, 0x21
/* 802B69E4 002B3924 4B FF 70 11 */ bl seMoveVolumeAll__7Z2SeMgrFfUl
/* 802B69E8 002B3928 80 6D 86 04 */ lwz r3, lbl_80450B84-_SDA_BASE_(r13)
/* 802B69EC 002B392C 38 80 00 01 */ li r4, 1
/* 802B69F0 002B3930 4B FF D7 75 */ bl Z2SeqMgr_NS_setBattleBgmOff
/* 802B69F4 002B3934 38 00 00 28 */ li r0, 0x28
/* 802B69F8 002B3938 98 1F 00 17 */ stb r0, 0x17(r31)
/* 802B69FC 002B393C 38 00 FF FF */ li r0, -1
/* 802B6A00 002B3940 90 1F 00 08 */ stw r0, 8(r31)
/* 802B6A04 002B3944 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802B6A08 002B3948 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B6A0C 002B394C 7C 08 03 A6 */ mtlr r0
/* 802B6A10 002B3950 38 21 00 20 */ addi r1, r1, 0x20
/* 802B6A14 002B3954 4E 80 00 20 */ blr
@@ -0,0 +1,59 @@
/* 802B6A18 002B3958 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B6A1C 002B395C 7C 08 02 A6 */ mflr r0
/* 802B6A20 002B3960 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B6A24 002B3964 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802B6A28 002B3968 7C 7F 1B 78 */ mr r31, r3
/* 802B6A2C 002B396C 88 03 00 15 */ lbz r0, 0x15(r3)
/* 802B6A30 002B3970 28 00 00 7F */ cmplwi r0, 0x7f
/* 802B6A34 002B3974 40 82 00 18 */ bne lbl_802B6A4C
/* 802B6A38 002B3978 80 6D 86 08 */ lwz r3, lbl_80450B88-_SDA_BASE_(r13)
/* 802B6A3C 002B397C C0 22 C0 38 */ lfs f1, lbl_80455A38-_SDA2_BASE_(r2)
/* 802B6A40 002B3980 38 80 00 00 */ li r4, 0
/* 802B6A44 002B3984 4B FF 6F B1 */ bl seMoveVolumeAll__7Z2SeMgrFfUl
/* 802B6A48 002B3988 48 00 00 34 */ b lbl_802B6A7C
lbl_802B6A4C:
/* 802B6A4C 002B398C 80 6D 86 08 */ lwz r3, lbl_80450B88-_SDA_BASE_(r13)
/* 802B6A50 002B3990 C0 22 C0 3C */ lfs f1, lbl_80455A3C-_SDA2_BASE_(r2)
/* 802B6A54 002B3994 38 80 00 21 */ li r4, 0x21
/* 802B6A58 002B3998 4B FF 6F 9D */ bl seMoveVolumeAll__7Z2SeMgrFfUl
/* 802B6A5C 002B399C 88 1F 00 15 */ lbz r0, 0x15(r31)
/* 802B6A60 002B39A0 28 00 00 85 */ cmplwi r0, 0x85
/* 802B6A64 002B39A4 40 82 00 18 */ bne lbl_802B6A7C
/* 802B6A68 002B39A8 80 6D 85 E0 */ lwz r3, lbl_80450B60-_SDA_BASE_(r13)
/* 802B6A6C 002B39AC 38 63 03 EC */ addi r3, r3, 0x3ec
/* 802B6A70 002B39B0 C0 22 C0 38 */ lfs f1, lbl_80455A38-_SDA2_BASE_(r2)
/* 802B6A74 002B39B4 38 80 00 00 */ li r4, 0
/* 802B6A78 002B39B8 4B FE C3 3D */ bl moveVolume__18JAISoundParamsMoveFfUl
lbl_802B6A7C:
/* 802B6A7C 002B39BC C0 02 C0 3C */ lfs f0, lbl_80455A3C-_SDA2_BASE_(r2)
/* 802B6A80 002B39C0 80 6D 86 04 */ lwz r3, lbl_80450B84-_SDA_BASE_(r13)
/* 802B6A84 002B39C4 D0 03 00 B4 */ stfs f0, 0xb4(r3)
/* 802B6A88 002B39C8 80 6D 85 FC */ lwz r3, lbl_80450B7C-_SDA_BASE_(r13)
/* 802B6A8C 002B39CC 4B FF F6 F1 */ bl Z2StatusMgr_NS_menuOut
/* 802B6A90 002B39D0 88 1F 00 1A */ lbz r0, 0x1a(r31)
/* 802B6A94 002B39D4 28 00 00 00 */ cmplwi r0, 0
/* 802B6A98 002B39D8 40 82 00 44 */ bne lbl_802B6ADC
/* 802B6A9C 002B39DC 80 6D 86 04 */ lwz r3, lbl_80450B84-_SDA_BASE_(r13)
/* 802B6AA0 002B39E0 C0 03 00 74 */ lfs f0, 0x74(r3)
/* 802B6AA4 002B39E4 38 00 00 21 */ li r0, 0x21
/* 802B6AA8 002B39E8 90 03 00 80 */ stw r0, 0x80(r3)
/* 802B6AAC 002B39EC C0 62 C0 3C */ lfs f3, lbl_80455A3C-_SDA2_BASE_(r2)
/* 802B6AB0 002B39F0 EC 43 00 28 */ fsubs f2, f3, f0
/* 802B6AB4 002B39F4 80 03 00 80 */ lwz r0, 0x80(r3)
/* 802B6AB8 002B39F8 C8 22 C0 48 */ lfd f1, lbl_80455A48-_SDA2_BASE_(r2)
/* 802B6ABC 002B39FC 90 01 00 0C */ stw r0, 0xc(r1)
/* 802B6AC0 002B3A00 3C 00 43 30 */ lis r0, 0x4330
/* 802B6AC4 002B3A04 90 01 00 08 */ stw r0, 8(r1)
/* 802B6AC8 002B3A08 C8 01 00 08 */ lfd f0, 8(r1)
/* 802B6ACC 002B3A0C EC 00 08 28 */ fsubs f0, f0, f1
/* 802B6AD0 002B3A10 EC 02 00 24 */ fdivs f0, f2, f0
/* 802B6AD4 002B3A14 D0 03 00 78 */ stfs f0, 0x78(r3)
/* 802B6AD8 002B3A18 D0 63 00 7C */ stfs f3, 0x7c(r3)
lbl_802B6ADC:
/* 802B6ADC 002B3A1C 38 00 00 01 */ li r0, 1
/* 802B6AE0 002B3A20 98 1F 00 1C */ stb r0, 0x1c(r31)
/* 802B6AE4 002B3A24 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802B6AE8 002B3A28 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B6AEC 002B3A2C 7C 08 03 A6 */ mtlr r0
/* 802B6AF0 002B3A30 38 21 00 20 */ addi r1, r1, 0x20
/* 802B6AF4 002B3A34 4E 80 00 20 */ blr
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,4 @@
/* 802B9968 002B68A8 88 03 00 D0 */ lbz r0, 0xd0(r3)
/* 802B996C 002B68AC 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d
/* 802B9970 002B68B0 98 03 00 D0 */ stb r0, 0xd0(r3)
/* 802B9974 002B68B4 4E 80 00 20 */ blr