KOR buildable

This commit is contained in:
Luke Street 2022-08-22 23:54:30 -04:00
parent 6541e4de44
commit e50328cd89
19 changed files with 685 additions and 218 deletions

View File

@ -13,7 +13,7 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
version: [0, 1] version: [0, 1, kor]
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v3 uses: actions/checkout@v3

View File

@ -22,6 +22,11 @@ endif
NAME := mp1 NAME := mp1
VERSION ?= 0 VERSION ?= 0
VERSION_NUM := $(VERSION)
ifeq ($(VERSION),kor)
VERSION_NUM := 2
endif
BUILD_DIR := build/$(NAME).$(VERSION) BUILD_DIR := build/$(NAME).$(VERSION)
# Inputs # Inputs
@ -93,7 +98,7 @@ FRANK := tools/franklite.py
INCLUDES := -i include/ INCLUDES := -i include/
ASM_INCLUDES := -I include/ ASM_INCLUDES := -I include/
ASFLAGS := -mgekko $(ASM_INCLUDES) --defsym version=$(VERSION) ASFLAGS := -mgekko $(ASM_INCLUDES) --defsym version=$(VERSION_NUM)
ifeq ($(VERBOSE),1) ifeq ($(VERBOSE),1)
# this set of LDFLAGS outputs warnings. # this set of LDFLAGS outputs warnings.
LDFLAGS := $(MAPGEN) -fp fmadd -nodefaults LDFLAGS := $(MAPGEN) -fp fmadd -nodefaults
@ -104,8 +109,8 @@ LDFLAGS := $(MAPGEN) -fp fmadd -nodefaults -w off
endif endif
CFLAGS_1.2 = -proc gekko -nodefaults -Cpp_exceptions off -RTTI off -fp fmadd -fp_contract on -O4,p -maxerrors 1 -enum int -inline auto -MMD $(INCLUDES) CFLAGS_1.2 = -proc gekko -nodefaults -Cpp_exceptions off -RTTI off -fp fmadd -fp_contract on -O4,p -maxerrors 1 -enum int -inline auto -MMD $(INCLUDES)
CFLAGS_MUSYX = -proc gekko -nodefaults -Cpp_exceptions off -RTTI off -fp fmadd -str reuse,pool,readonly -O4,p -maxerrors 1 -enum int -inline auto -MMD $(INCLUDES) CFLAGS_MUSYX = -proc gekko -nodefaults -Cpp_exceptions off -RTTI off -fp fmadd -str reuse,pool,readonly -O4,p -maxerrors 1 -enum int -inline auto -MMD $(INCLUDES)
CFLAGS = $(CFLAGS_1.2) -use_lmw_stmw on -str reuse,pool,readonly -gccinc -inline deferred,noauto -common on CFLAGS = $(CFLAGS_1.2) -use_lmw_stmw on -str reuse,pool,readonly -gccinc -nosyspath -inline deferred,noauto -common on
CFLAGS_ZLIB = $(CFLAGS_1.2) -use_lmw_stmw on -str reuse,pool,readonly -gccinc -inline deferred,auto CFLAGS_ZLIB = $(CFLAGS_1.2) -use_lmw_stmw on -str reuse,pool,readonly -gccinc -nosyspath -inline deferred,auto
CFLAGS_1.2 += -str reuse CFLAGS_1.2 += -str reuse
ifeq ($(VERBOSE),0) ifeq ($(VERBOSE),0)

View File

@ -8,6 +8,7 @@ This repository builds the following DOLs:
``` ```
949c5ed7368aef547e0b0db1c3678f466e2afbff build/mp1.0/main.dol (USA 0-00) 949c5ed7368aef547e0b0db1c3678f466e2afbff build/mp1.0/main.dol (USA 0-00)
860141f9671fc141ce8f55448643f713bc64b349 build/mp1.1/main.dol (USA 0-01) 860141f9671fc141ce8f55448643f713bc64b349 build/mp1.1/main.dol (USA 0-01)
52316d2a71c0d18c84f054fd6f1e58bdd7bf0ded build/mp1.kor/main.dol (KOR)
``` ```
Dependencies Dependencies

View File

@ -24,6 +24,8 @@ lbl_803F0100:
.4byte 0x00100007 .4byte 0x00100007
.4byte 0 .4byte 0
.if version < 2
.global lbl_803F0148 .global lbl_803F0148
lbl_803F0148: lbl_803F0148:
@ -173,6 +175,7 @@ lbl_803F04EC:
.asciz "\n\n\nEr is een fout opgetreden.\nZet de NINTENDO GAMECUBE uit en\nraadpleeg de handleiding van de\nNintendo GameCube voor nadere\ninstructies." .asciz "\n\n\nEr is een fout opgetreden.\nZet de NINTENDO GAMECUBE uit en\nraadpleeg de handleiding van de\nNintendo GameCube voor nadere\ninstructies."
.balign 4 .balign 4
.endif
.section .text, "ax" .section .text, "ax"

View File

@ -1,5 +1,7 @@
.include "macros.inc" .include "macros.inc"
.if version < 2
.section .sdata .section .sdata
.balign 8 .balign 8
.global lbl_805A8AB0 .global lbl_805A8AB0
@ -12,13 +14,6 @@ lbl_805A8AB4:
# ROM: 0x3F6454 # ROM: 0x3F6454
.4byte lbl_803F01B8 .4byte lbl_803F01B8
.section .sbss
.balign 8
.global lbl_805A9820
lbl_805A9820:
.skip 0x8
.section .sdata2 .section .sdata2
.balign 8 .balign 8
.global lbl_805AEB20 .global lbl_805AEB20
@ -43,9 +38,18 @@ lbl_803D8570:
.4byte lbl_803F046C .4byte lbl_803F046C
.4byte lbl_803F04EC .4byte lbl_803F04EC
.endif
.section .sbss
.balign 8
.global lbl_805A9820
lbl_805A9820:
.skip 0x8
.section .text, "ax" .section .text, "ax"
.if version < 2
.global ShowMessage .global ShowMessage
ShowMessage: ShowMessage:
/* 80374D40 00371CA0 7C 08 02 A6 */ mflr r0 /* 80374D40 00371CA0 7C 08 02 A6 */ mflr r0
@ -122,6 +126,8 @@ lbl_80374E18:
/* 80374E34 00371D94 7C 08 03 A6 */ mtlr r0 /* 80374E34 00371D94 7C 08 03 A6 */ mtlr r0
/* 80374E38 00371D98 4E 80 00 20 */ blr /* 80374E38 00371D98 4E 80 00 20 */ blr
.endif
.global __DVDPrintFatalMessage .global __DVDPrintFatalMessage
__DVDPrintFatalMessage: __DVDPrintFatalMessage:
/* 80374E3C 00371D9C 7C 08 02 A6 */ mflr r0 /* 80374E3C 00371D9C 7C 08 02 A6 */ mflr r0

View File

@ -735,6 +735,8 @@ lbl_80384230:
/* 80384240 003811A0 7C 08 03 A6 */ mtlr r0 /* 80384240 003811A0 7C 08 03 A6 */ mtlr r0
/* 80384244 003811A4 4E 80 00 20 */ blr /* 80384244 003811A4 4E 80 00 20 */ blr
.if version < 2
.global OSGetLanguage .global OSGetLanguage
OSGetLanguage: OSGetLanguage:
/* 80384248 003811A8 7C 08 02 A6 */ mflr r0 /* 80384248 003811A8 7C 08 02 A6 */ mflr r0
@ -767,6 +769,8 @@ lbl_8038428C:
/* 803842AC 0038120C 7C 08 03 A6 */ mtlr r0 /* 803842AC 0038120C 7C 08 03 A6 */ mtlr r0
/* 803842B0 00381210 4E 80 00 20 */ blr /* 803842B0 00381210 4E 80 00 20 */ blr
.endif
.global OSGetWirelessID .global OSGetWirelessID
OSGetWirelessID: OSGetWirelessID:
/* 803842B4 00381214 7C 08 02 A6 */ mflr r0 /* 803842B4 00381214 7C 08 02 A6 */ mflr r0

View File

@ -99,7 +99,7 @@ SetErrorHandlers:
/* 802D6950 002D38B0 38 21 00 10 */ addi r1, r1, 0x10 /* 802D6950 002D38B0 38 21 00 10 */ addi r1, r1, 0x10
/* 802D6954 002D38B4 4E 80 00 20 */ blr /* 802D6954 002D38B4 4E 80 00 20 */ blr
.if version == 1 .if version >= 1
.global ErrorHandler .global ErrorHandler
ErrorHandler: ErrorHandler:

View File

@ -68,7 +68,7 @@ lbl_8034F938:
/* 8034F940 0034C8A0 90 03 00 10 */ stw r0, 0x10(r3) /* 8034F940 0034C8A0 90 03 00 10 */ stw r0, 0x10(r3)
/* 8034F944 0034C8A4 4E 80 00 20 */ blr /* 8034F944 0034C8A4 4E 80 00 20 */ blr
.if version == 1 .if version >= 1
.global internalCallback__8CDvdFileFlP11DVDFileInfo .global internalCallback__8CDvdFileFlP11DVDFileInfo
internalCallback__8CDvdFileFlP11DVDFileInfo: internalCallback__8CDvdFileFlP11DVDFileInfo:

View File

@ -374,7 +374,7 @@ lbl_80345AAC:
/* 80345B00 00342A60 D0 81 00 74 */ stfs f4, 0x74(r1) /* 80345B00 00342A60 D0 81 00 74 */ stfs f4, 0x74(r1)
/* 80345B04 00342A64 D0 41 00 78 */ stfs f2, 0x78(r1) /* 80345B04 00342A64 D0 41 00 78 */ stfs f2, 0x78(r1)
lbl_80345B08: lbl_80345B08:
/* 80345B08 00342A68 80 AD A5 F0 */ lwz r5, lbl_805A91B0@sda21(r13) /* 80345B08 00342A68 80 AD A5 F0 */ lwz r5, sRenderer__13CCubeRenderer@sda21(r13)
/* 80345B0C 00342A6C 88 85 03 18 */ lbz r4, 0x318(r5) /* 80345B0C 00342A6C 88 85 03 18 */ lbz r4, 0x318(r5)
/* 80345B10 00342A70 54 80 CF FF */ rlwinm. r0, r4, 0x19, 0x1f, 0x1f /* 80345B10 00342A70 54 80 CF FF */ rlwinm. r0, r4, 0x19, 0x1f, 0x1f
/* 80345B14 00342A74 41 82 00 A4 */ beq lbl_80345BB8 /* 80345B14 00342A74 41 82 00 A4 */ beq lbl_80345BB8
@ -750,7 +750,7 @@ lbl_80346064:
/* 8034607C 00342FDC 7C 03 02 14 */ add r0, r3, r0 /* 8034607C 00342FDC 7C 03 02 14 */ add r0, r3, r0
/* 80346080 00342FE0 90 01 00 3C */ stw r0, 0x3c(r1) /* 80346080 00342FE0 90 01 00 3C */ stw r0, 0x3c(r1)
lbl_80346084: lbl_80346084:
/* 80346084 00342FE4 80 6D A5 F0 */ lwz r3, lbl_805A91B0@sda21(r13) /* 80346084 00342FE4 80 6D A5 F0 */ lwz r3, sRenderer__13CCubeRenderer@sda21(r13)
/* 80346088 00342FE8 80 81 00 3C */ lwz r4, 0x3c(r1) /* 80346088 00342FE8 80 81 00 3C */ lwz r4, 0x3c(r1)
/* 8034608C 00342FEC 88 03 03 18 */ lbz r0, 0x318(r3) /* 8034608C 00342FEC 88 03 03 18 */ lbz r0, 0x318(r3)
/* 80346090 00342FF0 83 64 00 00 */ lwz r27, 0(r4) /* 80346090 00342FF0 83 64 00 00 */ lwz r27, 0(r4)
@ -806,7 +806,7 @@ lbl_80346108:
lbl_8034614C: lbl_8034614C:
/* 8034614C 003430AC 80 81 00 3C */ lwz r4, 0x3c(r1) /* 8034614C 003430AC 80 81 00 3C */ lwz r4, 0x3c(r1)
/* 80346150 003430B0 38 A0 00 00 */ li r5, 0 /* 80346150 003430B0 38 A0 00 00 */ li r5, 0
/* 80346154 003430B4 80 6D A5 F0 */ lwz r3, lbl_805A91B0@sda21(r13) /* 80346154 003430B4 80 6D A5 F0 */ lwz r3, sRenderer__13CCubeRenderer@sda21(r13)
/* 80346158 003430B8 3A E0 00 00 */ li r23, 0 /* 80346158 003430B8 3A E0 00 00 */ li r23, 0
/* 8034615C 003430BC 82 64 00 00 */ lwz r19, 0(r4) /* 8034615C 003430BC 82 64 00 00 */ lwz r19, 0(r4)
/* 80346160 003430C0 38 C4 00 04 */ addi r6, r4, 4 /* 80346160 003430C0 38 C4 00 04 */ addi r6, r4, 4
@ -1809,7 +1809,7 @@ lbl_80346F48:
/* 80346F70 00343ED0 7F A3 EB 78 */ mr r3, r29 /* 80346F70 00343ED0 7F A3 EB 78 */ mr r3, r29
/* 80346F74 00343ED4 48 03 47 E5 */ bl GXSetTevKColorSel /* 80346F74 00343ED4 48 03 47 E5 */ bl GXSetTevKColorSel
lbl_80346F78: lbl_80346F78:
/* 80346F78 00343ED8 80 6D A5 F0 */ lwz r3, lbl_805A91B0@sda21(r13) /* 80346F78 00343ED8 80 6D A5 F0 */ lwz r3, sRenderer__13CCubeRenderer@sda21(r13)
/* 80346F7C 00343EDC 7F BD FA 14 */ add r29, r29, r31 /* 80346F7C 00343EDC 7F BD FA 14 */ add r29, r29, r31
/* 80346F80 00343EE0 4B F7 55 C1 */ bl GetRealReflection__13CCubeRendererFv /* 80346F80 00343EE0 4B F7 55 C1 */ bl GetRealReflection__13CCubeRendererFv
/* 80346F84 00343EE4 7F 84 E3 78 */ mr r4, r28 /* 80346F84 00343EE4 7F 84 E3 78 */ mr r4, r28

View File

@ -624,7 +624,7 @@ lbl_8035BD4C:
/* 8035BD58 00358CB8 38 21 00 30 */ addi r1, r1, 0x30 /* 8035BD58 00358CB8 38 21 00 30 */ addi r1, r1, 0x30
/* 8035BD5C 00358CBC 4E 80 00 20 */ blr /* 8035BD5C 00358CBC 4E 80 00 20 */ blr
.if version == 1 .if version >= 1
.global Update__12CMoviePlayerFf .global Update__12CMoviePlayerFf
Update__12CMoviePlayerFf: Update__12CMoviePlayerFf:

View File

@ -1923,8 +1923,9 @@ lbl_803D8368:
# ROM: 0x3D5368 # ROM: 0x3D5368
.asciz "??(??)" .asciz "??(??)"
.balign 4 .balign 4
.if version < 2
.4byte 0 .4byte 0
.4byte 0 .4byte 0
.4byte 0 .4byte 0
.4byte 0 .4byte 0
.endif

View File

@ -7,57 +7,61 @@ lbl_ctor:
.section .sbss, "wa" .section .sbss, "wa"
.balign 8 .balign 8
.global lbl_805A91B0 .global sRenderer__13CCubeRenderer
lbl_805A91B0: sRenderer__13CCubeRenderer:
.skip 0x4 .skip 0x4
.global lbl_805A91B4 .global skNormalFlag
lbl_805A91B4: skNormalFlag:
.skip 0x8 .skip 0x8
.global lbl_805A91BC .global skNormalFlagNoUpdate
lbl_805A91BC: skNormalFlagNoUpdate:
.skip 0x8 .skip 0x8
.global lbl_805A91C4 .global skWorstMinMaxDistance__7Buckets
lbl_805A91C4: skWorstMinMaxDistance__7Buckets:
.skip 0x8 .skip 0x8
.global lbl_805A91CC .global sData__7Buckets
lbl_805A91CC: sData__7Buckets:
.skip 0x4 .skip 0x4
.global lbl_805A91D0 .global sBuckets__7Buckets
lbl_805A91D0: sBuckets__7Buckets:
.skip 0x4 .skip 0x4
.global lbl_805A91D4 .global sMinMaxDistance__7Buckets
lbl_805A91D4: sMinMaxDistance__7Buckets:
.skip 0x8 .skip 0x8
.global lbl_805A91DC .global sPlaneObjectData__7Buckets
lbl_805A91DC: sPlaneObjectData__7Buckets:
.skip 0x4 .skip 0x4
.global lbl_805A91E0 .global sPlaneObjectBucket__7Buckets
lbl_805A91E0: sPlaneObjectBucket__7Buckets:
.skip 0x4 .skip 0x4
.global lbl_805A91E4 .global "@4756"
lbl_805A91E4: "@4756":
.skip 0x4
.global lbl_805A91E8
lbl_805A91E8:
.skip 0x1 .skip 0x1
.global lbl_805A91E9 .balign 4
lbl_805A91E9: .global "@4808"
.skip 0x3 "@4808":
.global lbl_805A91EC .skip 0x1
lbl_805A91EC: .global "init$6480"
.skip 0x4 "init$6480":
.global lbl_805A91F0 .skip 0x1
lbl_805A91F0: .balign 4
.skip 0x4 .global "@8522"
.global lbl_805A91F4 "@8522":
lbl_805A91F4: .skip 0x1
.balign 4
.global "sReferenceCount$9005"
"sReferenceCount$9005":
.skip 0x4 .skip 0x4
.global "init$9006"
"init$9006":
.skip 0x1
.balign 4
.section .data .section .data
.balign 8 .balign 8
.global lbl_803EC5D8 .global __vt__13CCubeRenderer
lbl_803EC5D8: __vt__13CCubeRenderer:
# ROM: 0x3E95D8 # ROM: 0x3E95D8
.4byte 0 .4byte 0
.4byte 0 .4byte 0
@ -262,14 +266,14 @@ lbl_805AF498:
.section .bss .section .bss
.balign 8 .balign 8
.lcomm lbl_8046E200, 0xC, 4 .lcomm "@4370", 0xC, 4
.lcomm lbl_8046E20C, 0x68, 4 .lcomm sBucketIndex__7Buckets, 0x68, 4
.lcomm lbl_8046E274, 0x4808, 4 .lcomm "sDataHolder$4374", 0x4808, 4
.lcomm lbl_80472A7C, 0x64D0, 4 .lcomm "sBucketsHolder$4375", 0x64D0, 4
.lcomm lbl_80478F4C, 0x208, 4 .lcomm "sPlaneObjectDataHolder$4376", 0x208, 4
.lcomm lbl_80479154, 0x18, 4 .lcomm "sPlaneObjectBucketHolder$4377", 0x18, 4
.lcomm lbl_8047916C, 0xC, 4 .lcomm "sOptimalPlane$6479", 0xC, 4
.lcomm lbl_80479178, 0x320, 4 .lcomm "sAllocSpace$9000", 0x320, 4
.section .text, "ax" .section .text, "ax"
@ -2583,7 +2587,7 @@ lbl_802B7E9C:
lbl_802B7EE4: lbl_802B7EE4:
/* 802B7EE4 002B4E44 7F C3 F3 78 */ mr r3, r30 /* 802B7EE4 002B4E44 7F C3 F3 78 */ mr r3, r30
/* 802B7EE8 002B4E48 38 81 00 0C */ addi r4, r1, 0xc /* 802B7EE8 002B4E48 38 81 00 0C */ addi r4, r1, 0xc
/* 802B7EEC 002B4E4C 38 AD A5 F4 */ addi r5, r13, lbl_805A91B4@sda21 /* 802B7EEC 002B4E4C 38 AD A5 F4 */ addi r5, r13, skNormalFlag@sda21
/* 802B7EF0 002B4E50 48 04 F5 55 */ bl DrawSurface__10CCubeModelCFRC12CCubeSurfaceRC11CModelFlags /* 802B7EF0 002B4E50 48 04 F5 55 */ bl DrawSurface__10CCubeModelCFRC12CCubeSurfaceRC11CModelFlags
/* 802B7EF4 002B4E54 80 61 00 0C */ lwz r3, 0xc(r1) /* 802B7EF4 002B4E54 80 61 00 0C */ lwz r3, 0xc(r1)
/* 802B7EF8 002B4E58 80 03 00 18 */ lwz r0, 0x18(r3) /* 802B7EF8 002B4E58 80 03 00 18 */ lwz r0, 0x18(r3)
@ -2598,7 +2602,7 @@ lbl_802B7F00:
lbl_802B7F18: lbl_802B7F18:
/* 802B7F18 002B4E78 7F C3 F3 78 */ mr r3, r30 /* 802B7F18 002B4E78 7F C3 F3 78 */ mr r3, r30
/* 802B7F1C 002B4E7C 38 81 00 08 */ addi r4, r1, 8 /* 802B7F1C 002B4E7C 38 81 00 08 */ addi r4, r1, 8
/* 802B7F20 002B4E80 38 AD A5 F4 */ addi r5, r13, lbl_805A91B4@sda21 /* 802B7F20 002B4E80 38 AD A5 F4 */ addi r5, r13, skNormalFlag@sda21
/* 802B7F24 002B4E84 48 04 F5 21 */ bl DrawSurface__10CCubeModelCFRC12CCubeSurfaceRC11CModelFlags /* 802B7F24 002B4E84 48 04 F5 21 */ bl DrawSurface__10CCubeModelCFRC12CCubeSurfaceRC11CModelFlags
/* 802B7F28 002B4E88 80 61 00 08 */ lwz r3, 8(r1) /* 802B7F28 002B4E88 80 61 00 08 */ lwz r3, 8(r1)
/* 802B7F2C 002B4E8C 80 03 00 18 */ lwz r0, 0x18(r3) /* 802B7F2C 002B4E8C 80 03 00 18 */ lwz r0, 0x18(r3)
@ -3309,7 +3313,7 @@ lbl_802B8984:
lbl_802B8990: lbl_802B8990:
/* 802B8990 002B58F0 7C 04 F0 40 */ cmplw r4, r30 /* 802B8990 002B58F0 7C 04 F0 40 */ cmplw r4, r30
/* 802B8994 002B58F4 40 82 FF F0 */ bne lbl_802B8984 /* 802B8994 002B58F4 40 82 FF F0 */ bne lbl_802B8984
/* 802B8998 002B58F8 88 0D A6 2C */ lbz r0, lbl_805A91EC@sda21(r13) /* 802B8998 002B58F8 88 0D A6 2C */ lbz r0, "@8522"@sda21(r13)
/* 802B899C 002B58FC 38 7D 02 AC */ addi r3, r29, 0x2ac /* 802B899C 002B58FC 38 7D 02 AC */ addi r3, r29, 0x2ac
/* 802B89A0 002B5900 38 81 00 08 */ addi r4, r1, 8 /* 802B89A0 002B5900 38 81 00 08 */ addi r4, r1, 8
/* 802B89A4 002B5904 98 01 00 08 */ stb r0, 8(r1) /* 802B89A4 002B5904 98 01 00 08 */ stb r0, 8(r1)
@ -8553,7 +8557,7 @@ lbl_802BD488:
lbl_802BD4F8: lbl_802BD4F8:
/* 802BD4F8 002BA458 7F C3 F3 78 */ mr r3, r30 /* 802BD4F8 002BA458 7F C3 F3 78 */ mr r3, r30
/* 802BD4FC 002BA45C 38 81 00 08 */ addi r4, r1, 8 /* 802BD4FC 002BA45C 38 81 00 08 */ addi r4, r1, 8
/* 802BD500 002BA460 38 AD A5 F4 */ addi r5, r13, lbl_805A91B4@sda21 /* 802BD500 002BA460 38 AD A5 F4 */ addi r5, r13, skNormalFlag@sda21
/* 802BD504 002BA464 48 04 9F 41 */ bl DrawSurface__10CCubeModelCFRC12CCubeSurfaceRC11CModelFlags /* 802BD504 002BA464 48 04 9F 41 */ bl DrawSurface__10CCubeModelCFRC12CCubeSurfaceRC11CModelFlags
/* 802BD508 002BA468 80 61 00 08 */ lwz r3, 8(r1) /* 802BD508 002BA468 80 61 00 08 */ lwz r3, 8(r1)
/* 802BD50C 002BA46C 80 03 00 18 */ lwz r0, 0x18(r3) /* 802BD50C 002BA46C 80 03 00 18 */ lwz r0, 0x18(r3)
@ -8574,16 +8578,16 @@ lbl_802BD51C:
"RenderBucketItems__13CCubeRendererFRCQ24rstl42vector<6CLight,Q24rstl17rmemory_allocator>": "RenderBucketItems__13CCubeRendererFRCQ24rstl42vector<6CLight,Q24rstl17rmemory_allocator>":
/* 802BD53C 002BA49C 94 21 FF C0 */ stwu r1, -0x40(r1) /* 802BD53C 002BA49C 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 802BD540 002BA4A0 7C 08 02 A6 */ mflr r0 /* 802BD540 002BA4A0 7C 08 02 A6 */ mflr r0
/* 802BD544 002BA4A4 3C A0 80 47 */ lis r5, lbl_8046E20C@ha /* 802BD544 002BA4A4 3C A0 80 47 */ lis r5, sBucketIndex__7Buckets@ha
/* 802BD548 002BA4A8 90 01 00 44 */ stw r0, 0x44(r1) /* 802BD548 002BA4A8 90 01 00 44 */ stw r0, 0x44(r1)
/* 802BD54C 002BA4AC BE C1 00 18 */ stmw r22, 0x18(r1) /* 802BD54C 002BA4AC BE C1 00 18 */ stmw r22, 0x18(r1)
/* 802BD550 002BA4B0 3B E5 E2 0C */ addi r31, r5, lbl_8046E20C@l /* 802BD550 002BA4B0 3B E5 E2 0C */ addi r31, r5, sBucketIndex__7Buckets@l
/* 802BD554 002BA4B4 7C 9B 23 78 */ mr r27, r4 /* 802BD554 002BA4B4 7C 9B 23 78 */ mr r27, r4
/* 802BD558 002BA4B8 7C 7A 1B 78 */ mr r26, r3 /* 802BD558 002BA4B8 7C 7A 1B 78 */ mr r26, r3
/* 802BD55C 002BA4BC 38 80 FF FF */ li r4, -1 /* 802BD55C 002BA4BC 38 80 FF FF */ li r4, -1
/* 802BD560 002BA4C0 3B 9F 00 04 */ addi r28, r31, 4 /* 802BD560 002BA4C0 3B 9F 00 04 */ addi r28, r31, 4
/* 802BD564 002BA4C4 3B A0 00 00 */ li r29, 0 /* 802BD564 002BA4C4 3B A0 00 00 */ li r29, 0
/* 802BD568 002BA4C8 83 CD A6 10 */ lwz r30, lbl_805A91D0@sda21(r13) /* 802BD568 002BA4C8 83 CD A6 10 */ lwz r30, sBuckets__7Buckets@sda21(r13)
/* 802BD56C 002BA4CC 48 00 01 14 */ b lbl_802BD680 /* 802BD56C 002BA4CC 48 00 01 14 */ b lbl_802BD680
lbl_802BD570: lbl_802BD570:
/* 802BD570 002BA4D0 A0 1C 00 00 */ lhz r0, 0(r28) /* 802BD570 002BA4D0 A0 1C 00 00 */ lhz r0, 0(r28)
@ -8636,7 +8640,7 @@ lbl_802BD5E8:
lbl_802BD618: lbl_802BD618:
/* 802BD618 002BA578 7E E3 BB 78 */ mr r3, r23 /* 802BD618 002BA578 7E E3 BB 78 */ mr r3, r23
/* 802BD61C 002BA57C 38 81 00 08 */ addi r4, r1, 8 /* 802BD61C 002BA57C 38 81 00 08 */ addi r4, r1, 8
/* 802BD620 002BA580 38 AD A5 FC */ addi r5, r13, lbl_805A91BC@sda21 /* 802BD620 002BA580 38 AD A5 FC */ addi r5, r13, skNormalFlagNoUpdate@sda21
/* 802BD624 002BA584 48 04 9E 21 */ bl DrawSurface__10CCubeModelCFRC12CCubeSurfaceRC11CModelFlags /* 802BD624 002BA584 48 04 9E 21 */ bl DrawSurface__10CCubeModelCFRC12CCubeSurfaceRC11CModelFlags
/* 802BD628 002BA588 48 00 00 34 */ b lbl_802BD65C /* 802BD628 002BA588 48 00 00 34 */ b lbl_802BD65C
lbl_802BD62C: lbl_802BD62C:
@ -8857,7 +8861,7 @@ AddPlaneObject__13CCubeRendererFPCvRC6CAABoxRC6CPlanei:
/* 802BD91C 002BA87C DB E1 00 50 */ stfd f31, 0x50(r1) /* 802BD91C 002BA87C DB E1 00 50 */ stfd f31, 0x50(r1)
/* 802BD920 002BA880 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 /* 802BD920 002BA880 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0
/* 802BD924 002BA884 BF 61 00 3C */ stmw r27, 0x3c(r1) /* 802BD924 002BA884 BF 61 00 3C */ stmw r27, 0x3c(r1)
/* 802BD928 002BA888 88 0D A6 29 */ lbz r0, lbl_805A91E9@sda21(r13) /* 802BD928 002BA888 88 0D A6 29 */ lbz r0, "init$6480"@sda21(r13)
/* 802BD92C 002BA88C 7C 7B 1B 78 */ mr r27, r3 /* 802BD92C 002BA88C 7C 7B 1B 78 */ mr r27, r3
/* 802BD930 002BA890 7C 9C 23 78 */ mr r28, r4 /* 802BD930 002BA890 7C 9C 23 78 */ mr r28, r4
/* 802BD934 002BA894 7C BD 2B 78 */ mr r29, r5 /* 802BD934 002BA894 7C BD 2B 78 */ mr r29, r5
@ -8866,13 +8870,13 @@ AddPlaneObject__13CCubeRendererFPCvRC6CAABoxRC6CPlanei:
/* 802BD940 002BA8A0 7C FF 3B 78 */ mr r31, r7 /* 802BD940 002BA8A0 7C FF 3B 78 */ mr r31, r7
/* 802BD944 002BA8A4 40 82 00 24 */ bne lbl_802BD968 /* 802BD944 002BA8A4 40 82 00 24 */ bne lbl_802BD968
/* 802BD948 002BA8A8 C0 22 C2 74 */ lfs f1, lbl_805ADF94@sda21(r2) /* 802BD948 002BA8A8 C0 22 C2 74 */ lfs f1, lbl_805ADF94@sda21(r2)
/* 802BD94C 002BA8AC 3C 60 80 48 */ lis r3, lbl_8047916C@ha /* 802BD94C 002BA8AC 3C 60 80 48 */ lis r3, "sOptimalPlane$6479"@ha
/* 802BD950 002BA8B0 38 00 00 01 */ li r0, 1 /* 802BD950 002BA8B0 38 00 00 01 */ li r0, 1
/* 802BD954 002BA8B4 C0 02 C2 70 */ lfs f0, lbl_805ADF90@sda21(r2) /* 802BD954 002BA8B4 C0 02 C2 70 */ lfs f0, lbl_805ADF90@sda21(r2)
/* 802BD958 002BA8B8 D4 23 91 6C */ stfsu f1, lbl_8047916C@l(r3) /* 802BD958 002BA8B8 D4 23 91 6C */ stfsu f1, "sOptimalPlane$6479"@l(r3)
/* 802BD95C 002BA8BC D0 23 00 04 */ stfs f1, 4(r3) /* 802BD95C 002BA8BC D0 23 00 04 */ stfs f1, 4(r3)
/* 802BD960 002BA8C0 D0 03 00 08 */ stfs f0, 8(r3) /* 802BD960 002BA8C0 D0 03 00 08 */ stfs f0, 8(r3)
/* 802BD964 002BA8C4 98 0D A6 29 */ stb r0, lbl_805A91E9@sda21(r13) /* 802BD964 002BA8C4 98 0D A6 29 */ stb r0, "init$6480"@sda21(r13)
lbl_802BD968: lbl_802BD968:
/* 802BD968 002BA8C8 7F A4 EB 78 */ mr r4, r29 /* 802BD968 002BA8C8 7F A4 EB 78 */ mr r4, r29
/* 802BD96C 002BA8CC 38 61 00 20 */ addi r3, r1, 0x20 /* 802BD96C 002BA8CC 38 61 00 20 */ addi r3, r1, 0x20
@ -8910,9 +8914,9 @@ lbl_802BD968:
/* 802BD9EC 002BA94C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 802BD9EC 002BA94C FC 02 00 40 */ fcmpo cr0, f2, f0
/* 802BD9F0 002BA950 41 80 00 F8 */ blt lbl_802BDAE8 /* 802BD9F0 002BA950 41 80 00 F8 */ blt lbl_802BDAE8
lbl_802BD9F4: lbl_802BD9F4:
/* 802BD9F4 002BA954 3C 60 80 48 */ lis r3, lbl_8047916C@ha /* 802BD9F4 002BA954 3C 60 80 48 */ lis r3, "sOptimalPlane$6479"@ha
/* 802BD9F8 002BA958 C0 FE 00 00 */ lfs f7, 0(r30) /* 802BD9F8 002BA958 C0 FE 00 00 */ lfs f7, 0(r30)
/* 802BD9FC 002BA95C C4 03 91 6C */ lfsu f0, lbl_8047916C@l(r3) /* 802BD9FC 002BA95C C4 03 91 6C */ lfsu f0, "sOptimalPlane$6479"@l(r3)
/* 802BDA00 002BA960 38 00 00 00 */ li r0, 0 /* 802BDA00 002BA960 38 00 00 00 */ li r0, 0
/* 802BDA04 002BA964 FC 07 00 00 */ fcmpu cr0, f7, f0 /* 802BDA04 002BA964 FC 07 00 00 */ fcmpu cr0, f7, f0
/* 802BDA08 002BA968 40 82 00 28 */ bne lbl_802BDA30 /* 802BDA08 002BA968 40 82 00 28 */ bne lbl_802BDA30
@ -9838,13 +9842,13 @@ __dt__13CCubeRendererFv:
/* 802BE6AC 002BB60C 93 C1 00 28 */ stw r30, 0x28(r1) /* 802BE6AC 002BB60C 93 C1 00 28 */ stw r30, 0x28(r1)
/* 802BE6B0 002BB610 7C 7E 1B 79 */ or. r30, r3, r3 /* 802BE6B0 002BB610 7C 7E 1B 79 */ or. r30, r3, r3
/* 802BE6B4 002BB614 41 82 02 38 */ beq lbl_802BE8EC /* 802BE6B4 002BB614 41 82 02 38 */ beq lbl_802BE8EC
/* 802BE6B8 002BB618 3C 60 80 3F */ lis r3, lbl_803EC5D8@ha /* 802BE6B8 002BB618 3C 60 80 3F */ lis r3, __vt__13CCubeRenderer@ha
/* 802BE6BC 002BB61C 38 00 00 00 */ li r0, 0 /* 802BE6BC 002BB61C 38 00 00 00 */ li r0, 0
/* 802BE6C0 002BB620 38 63 C5 D8 */ addi r3, r3, lbl_803EC5D8@l /* 802BE6C0 002BB620 38 63 C5 D8 */ addi r3, r3, __vt__13CCubeRenderer@l
/* 802BE6C4 002BB624 90 7E 00 00 */ stw r3, 0(r30) /* 802BE6C4 002BB624 90 7E 00 00 */ stw r3, 0(r30)
/* 802BE6C8 002BB628 38 63 01 0C */ addi r3, r3, 0x10c /* 802BE6C8 002BB628 38 63 01 0C */ addi r3, r3, 0x10c
/* 802BE6CC 002BB62C 90 7E 00 04 */ stw r3, 4(r30) /* 802BE6CC 002BB62C 90 7E 00 04 */ stw r3, 4(r30)
/* 802BE6D0 002BB630 90 0D A5 F0 */ stw r0, lbl_805A91B0@sda21(r13) /* 802BE6D0 002BB630 90 0D A5 F0 */ stw r0, sRenderer__13CCubeRenderer@sda21(r13)
/* 802BE6D4 002BB634 48 00 17 89 */ bl Shutdown__7BucketsFv /* 802BE6D4 002BB634 48 00 17 89 */ bl Shutdown__7BucketsFv
/* 802BE6D8 002BB638 48 09 40 49 */ bl sub_80352720 /* 802BE6D8 002BB638 48 09 40 49 */ bl sub_80352720
/* 802BE6DC 002BB63C 80 7E 03 14 */ lwz r3, 0x314(r30) /* 802BE6DC 002BB63C 80 7E 03 14 */ lwz r3, 0x314(r30)
@ -10514,9 +10518,9 @@ __ct__13CCubeRendererFR12IObjectStoreR10COsContextR10CMemorySysR11CResFactory:
/* 802BF080 002BBFE0 3C 60 80 3F */ lis r3, __vt__15IWeaponRenderer@ha /* 802BF080 002BBFE0 3C 60 80 3F */ lis r3, __vt__15IWeaponRenderer@ha
/* 802BF084 002BBFE4 90 1F 00 00 */ stw r0, 0(r31) /* 802BF084 002BBFE4 90 1F 00 00 */ stw r0, 0(r31)
/* 802BF088 002BBFE8 38 03 C5 38 */ addi r0, r3, __vt__15IWeaponRenderer@l /* 802BF088 002BBFE8 38 03 C5 38 */ addi r0, r3, __vt__15IWeaponRenderer@l
/* 802BF08C 002BBFEC 3C 60 80 3F */ lis r3, lbl_803EC5D8@ha /* 802BF08C 002BBFEC 3C 60 80 3F */ lis r3, __vt__13CCubeRenderer@ha
/* 802BF090 002BBFF0 90 1F 00 04 */ stw r0, 4(r31) /* 802BF090 002BBFF0 90 1F 00 04 */ stw r0, 4(r31)
/* 802BF094 002BBFF4 38 A3 C5 D8 */ addi r5, r3, lbl_803EC5D8@l /* 802BF094 002BBFF4 38 A3 C5 D8 */ addi r5, r3, __vt__13CCubeRenderer@l
/* 802BF098 002BBFF8 38 05 01 0C */ addi r0, r5, 0x10c /* 802BF098 002BBFF8 38 05 01 0C */ addi r0, r5, 0x10c
/* 802BF09C 002BBFFC 38 7F 00 10 */ addi r3, r31, 0x10 /* 802BF09C 002BBFFC 38 7F 00 10 */ addi r3, r31, 0x10
/* 802BF0A0 002BC000 90 BF 00 00 */ stw r5, 0(r31) /* 802BF0A0 002BC000 90 BF 00 00 */ stw r5, 0(r31)
@ -10687,7 +10691,7 @@ __ct__13CCubeRendererFR12IObjectStoreR10COsContextR10CMemorySysR11CResFactory:
/* 802BF334 002BC294 4B FF F7 A5 */ bl sub_802bead8 /* 802BF334 002BC294 4B FF F7 A5 */ bl sub_802bead8
/* 802BF338 002BC298 7F E3 FB 78 */ mr r3, r31 /* 802BF338 002BC298 7F E3 FB 78 */ mr r3, r31
/* 802BF33C 002BC29C 4B FF F5 CD */ bl sub_802be908 /* 802BF33C 002BC29C 4B FF F5 CD */ bl sub_802be908
/* 802BF340 002BC2A0 93 ED A5 F0 */ stw r31, lbl_805A91B0@sda21(r13) /* 802BF340 002BC2A0 93 ED A5 F0 */ stw r31, sRenderer__13CCubeRenderer@sda21(r13)
/* 802BF344 002BC2A4 48 00 0B 31 */ bl Init__7BucketsFv /* 802BF344 002BC2A4 48 00 0B 31 */ bl Init__7BucketsFv
/* 802BF348 002BC2A8 48 09 33 F9 */ bl sub_80352740 /* 802BF348 002BC2A8 48 09 33 F9 */ bl sub_80352740
/* 802BF34C 002BC2AC 80 01 00 24 */ lwz r0, 0x24(r1) /* 802BF34C 002BC2AC 80 01 00 24 */ lwz r0, 0x24(r1)
@ -10720,7 +10724,7 @@ __ct__Q213CCubeRenderer13CAreaListItem:
.global Clear__7BucketsFv .global Clear__7BucketsFv
Clear__7BucketsFv: Clear__7BucketsFv:
/* 802BF3AC 002BC30C 80 CD A6 0C */ lwz r6, lbl_805A91CC@sda21(r13) /* 802BF3AC 002BC30C 80 CD A6 0C */ lwz r6, sData__7Buckets@sda21(r13)
/* 802BF3B0 002BC310 38 60 00 00 */ li r3, 0 /* 802BF3B0 002BC310 38 60 00 00 */ li r3, 0
/* 802BF3B4 002BC314 80 A6 00 00 */ lwz r5, 0(r6) /* 802BF3B4 002BC314 80 A6 00 00 */ lwz r5, 0(r6)
/* 802BF3B8 002BC318 2C 05 00 00 */ cmpwi r5, 0 /* 802BF3B8 002BC318 2C 05 00 00 */ cmpwi r5, 0
@ -10745,9 +10749,9 @@ lbl_802BF3F8:
/* 802BF3F8 002BC358 42 00 00 00 */ bdnz lbl_802BF3F8 /* 802BF3F8 002BC358 42 00 00 00 */ bdnz lbl_802BF3F8
lbl_802BF3FC: lbl_802BF3FC:
/* 802BF3FC 002BC35C 38 80 00 00 */ li r4, 0 /* 802BF3FC 002BC35C 38 80 00 00 */ li r4, 0
/* 802BF400 002BC360 3C 60 80 47 */ lis r3, lbl_8046E20C@ha /* 802BF400 002BC360 3C 60 80 47 */ lis r3, sBucketIndex__7Buckets@ha
/* 802BF404 002BC364 90 86 00 00 */ stw r4, 0(r6) /* 802BF404 002BC364 90 86 00 00 */ stw r4, 0(r6)
/* 802BF408 002BC368 80 A3 E2 0C */ lwz r5, lbl_8046E20C@l(r3) /* 802BF408 002BC368 80 A3 E2 0C */ lwz r5, sBucketIndex__7Buckets@l(r3)
/* 802BF40C 002BC36C 2C 05 00 00 */ cmpwi r5, 0 /* 802BF40C 002BC36C 2C 05 00 00 */ cmpwi r5, 0
/* 802BF410 002BC370 40 81 00 40 */ ble lbl_802BF450 /* 802BF410 002BC370 40 81 00 40 */ ble lbl_802BF450
/* 802BF414 002BC374 2C 05 00 08 */ cmpwi r5, 8 /* 802BF414 002BC374 2C 05 00 08 */ cmpwi r5, 8
@ -10769,10 +10773,10 @@ lbl_802BF43C:
lbl_802BF44C: lbl_802BF44C:
/* 802BF44C 002BC3AC 42 00 00 00 */ bdnz lbl_802BF44C /* 802BF44C 002BC3AC 42 00 00 00 */ bdnz lbl_802BF44C
lbl_802BF450: lbl_802BF450:
/* 802BF450 002BC3B0 3C 60 80 47 */ lis r3, lbl_8046E20C@ha /* 802BF450 002BC3B0 3C 60 80 47 */ lis r3, sBucketIndex__7Buckets@ha
/* 802BF454 002BC3B4 38 80 00 00 */ li r4, 0 /* 802BF454 002BC3B4 38 80 00 00 */ li r4, 0
/* 802BF458 002BC3B8 80 CD A6 1C */ lwz r6, lbl_805A91DC@sda21(r13) /* 802BF458 002BC3B8 80 CD A6 1C */ lwz r6, sPlaneObjectData__7Buckets@sda21(r13)
/* 802BF45C 002BC3BC 90 83 E2 0C */ stw r4, lbl_8046E20C@l(r3) /* 802BF45C 002BC3BC 90 83 E2 0C */ stw r4, sBucketIndex__7Buckets@l(r3)
/* 802BF460 002BC3C0 80 A6 00 00 */ lwz r5, 0(r6) /* 802BF460 002BC3C0 80 A6 00 00 */ lwz r5, 0(r6)
/* 802BF464 002BC3C4 2C 05 00 00 */ cmpwi r5, 0 /* 802BF464 002BC3C4 2C 05 00 00 */ cmpwi r5, 0
/* 802BF468 002BC3C8 40 81 00 40 */ ble lbl_802BF4A8 /* 802BF468 002BC3C8 40 81 00 40 */ ble lbl_802BF4A8
@ -10797,7 +10801,7 @@ lbl_802BF4A4:
lbl_802BF4A8: lbl_802BF4A8:
/* 802BF4A8 002BC408 38 60 00 00 */ li r3, 0 /* 802BF4A8 002BC408 38 60 00 00 */ li r3, 0
/* 802BF4AC 002BC40C 90 66 00 00 */ stw r3, 0(r6) /* 802BF4AC 002BC40C 90 66 00 00 */ stw r3, 0(r6)
/* 802BF4B0 002BC410 80 CD A6 20 */ lwz r6, lbl_805A91E0@sda21(r13) /* 802BF4B0 002BC410 80 CD A6 20 */ lwz r6, sPlaneObjectBucket__7Buckets@sda21(r13)
/* 802BF4B4 002BC414 80 A6 00 00 */ lwz r5, 0(r6) /* 802BF4B4 002BC414 80 A6 00 00 */ lwz r5, 0(r6)
/* 802BF4B8 002BC418 2C 05 00 00 */ cmpwi r5, 0 /* 802BF4B8 002BC418 2C 05 00 00 */ cmpwi r5, 0
/* 802BF4BC 002BC41C 40 81 00 40 */ ble lbl_802BF4FC /* 802BF4BC 002BC41C 40 81 00 40 */ ble lbl_802BF4FC
@ -10822,7 +10826,7 @@ lbl_802BF4F8:
lbl_802BF4FC: lbl_802BF4FC:
/* 802BF4FC 002BC45C 38 00 00 00 */ li r0, 0 /* 802BF4FC 002BC45C 38 00 00 00 */ li r0, 0
/* 802BF500 002BC460 90 06 00 00 */ stw r0, 0(r6) /* 802BF500 002BC460 90 06 00 00 */ stw r0, 0(r6)
/* 802BF504 002BC464 80 6D A6 10 */ lwz r3, lbl_805A91D0@sda21(r13) /* 802BF504 002BC464 80 6D A6 10 */ lwz r3, sBuckets__7Buckets@sda21(r13)
/* 802BF508 002BC468 38 C3 00 04 */ addi r6, r3, 4 /* 802BF508 002BC468 38 C3 00 04 */ addi r6, r3, 4
/* 802BF50C 002BC46C 48 00 00 60 */ b lbl_802BF56C /* 802BF50C 002BC46C 48 00 00 60 */ b lbl_802BF56C
lbl_802BF510: lbl_802BF510:
@ -10854,18 +10858,18 @@ lbl_802BF560:
/* 802BF564 002BC4C4 90 06 00 00 */ stw r0, 0(r6) /* 802BF564 002BC4C4 90 06 00 00 */ stw r0, 0(r6)
/* 802BF568 002BC4C8 38 C6 02 04 */ addi r6, r6, 0x204 /* 802BF568 002BC4C8 38 C6 02 04 */ addi r6, r6, 0x204
lbl_802BF56C: lbl_802BF56C:
/* 802BF56C 002BC4CC 80 6D A6 10 */ lwz r3, lbl_805A91D0@sda21(r13) /* 802BF56C 002BC4CC 80 6D A6 10 */ lwz r3, sBuckets__7Buckets@sda21(r13)
/* 802BF570 002BC4D0 80 03 00 00 */ lwz r0, 0(r3) /* 802BF570 002BC4D0 80 03 00 00 */ lwz r0, 0(r3)
/* 802BF574 002BC4D4 1C 00 02 04 */ mulli r0, r0, 0x204 /* 802BF574 002BC4D4 1C 00 02 04 */ mulli r0, r0, 0x204
/* 802BF578 002BC4D8 7C 63 02 14 */ add r3, r3, r0 /* 802BF578 002BC4D8 7C 63 02 14 */ add r3, r3, r0
/* 802BF57C 002BC4DC 38 63 00 04 */ addi r3, r3, 4 /* 802BF57C 002BC4DC 38 63 00 04 */ addi r3, r3, 4
/* 802BF580 002BC4E0 7C 06 18 40 */ cmplw r6, r3 /* 802BF580 002BC4E0 7C 06 18 40 */ cmplw r6, r3
/* 802BF584 002BC4E4 40 82 FF 8C */ bne lbl_802BF510 /* 802BF584 002BC4E4 40 82 FF 8C */ bne lbl_802BF510
/* 802BF588 002BC4E8 38 6D A6 04 */ addi r3, r13, lbl_805A91C4@sda21 /* 802BF588 002BC4E8 38 6D A6 04 */ addi r3, r13, skWorstMinMaxDistance__7Buckets@sda21
/* 802BF58C 002BC4EC C0 2D A6 04 */ lfs f1, lbl_805A91C4@sda21(r13) /* 802BF58C 002BC4EC C0 2D A6 04 */ lfs f1, skWorstMinMaxDistance__7Buckets@sda21(r13)
/* 802BF590 002BC4F0 C0 03 00 04 */ lfs f0, 4(r3) /* 802BF590 002BC4F0 C0 03 00 04 */ lfs f0, 4(r3)
/* 802BF594 002BC4F4 38 6D A6 14 */ addi r3, r13, lbl_805A91D4@sda21 /* 802BF594 002BC4F4 38 6D A6 14 */ addi r3, r13, sMinMaxDistance__7Buckets@sda21
/* 802BF598 002BC4F8 D0 2D A6 14 */ stfs f1, lbl_805A91D4@sda21(r13) /* 802BF598 002BC4F8 D0 2D A6 14 */ stfs f1, sMinMaxDistance__7Buckets@sda21(r13)
/* 802BF59C 002BC4FC D0 03 00 04 */ stfs f0, 4(r3) /* 802BF59C 002BC4FC D0 03 00 04 */ stfs f0, 4(r3)
/* 802BF5A0 002BC500 4E 80 00 20 */ blr /* 802BF5A0 002BC500 4E 80 00 20 */ blr
@ -10881,8 +10885,8 @@ Sort__7BucketsFv:
/* 802BF5C0 002BC520 DB A1 00 60 */ stfd f29, 0x60(r1) /* 802BF5C0 002BC520 DB A1 00 60 */ stfd f29, 0x60(r1)
/* 802BF5C4 002BC524 F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0 /* 802BF5C4 002BC524 F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0
/* 802BF5C8 002BC528 BF 01 00 40 */ stmw r24, 0x40(r1) /* 802BF5C8 002BC528 BF 01 00 40 */ stmw r24, 0x40(r1)
/* 802BF5CC 002BC52C 38 6D A6 14 */ addi r3, r13, lbl_805A91D4@sda21 /* 802BF5CC 002BC52C 38 6D A6 14 */ addi r3, r13, sMinMaxDistance__7Buckets@sda21
/* 802BF5D0 002BC530 C0 4D A6 14 */ lfs f2, lbl_805A91D4@sda21(r13) /* 802BF5D0 002BC530 C0 4D A6 14 */ lfs f2, sMinMaxDistance__7Buckets@sda21(r13)
/* 802BF5D4 002BC534 C0 23 00 04 */ lfs f1, 4(r3) /* 802BF5D4 002BC534 C0 23 00 04 */ lfs f1, 4(r3)
/* 802BF5D8 002BC538 C0 0D 9A A0 */ lfs f0, lbl_805A8660@sda21(r13) /* 802BF5D8 002BC538 C0 0D 9A A0 */ lfs f0, lbl_805A8660@sda21(r13)
/* 802BF5DC 002BC53C FF E0 10 50 */ fneg f31, f2 /* 802BF5DC 002BC53C FF E0 10 50 */ fneg f31, f2
@ -10898,14 +10902,14 @@ lbl_802BF5FC:
/* 802BF5FC 002BC55C C3 A3 00 00 */ lfs f29, 0(r3) /* 802BF5FC 002BC55C C3 A3 00 00 */ lfs f29, 0(r3)
/* 802BF600 002BC560 38 C0 00 00 */ li r6, 0 /* 802BF600 002BC560 38 C0 00 00 */ li r6, 0
/* 802BF604 002BC564 C0 02 C3 58 */ lfs f0, lbl_805AE078@sda21(r2) /* 802BF604 002BC564 C0 02 C3 58 */ lfs f0, lbl_805AE078@sda21(r2)
/* 802BF608 002BC568 80 6D A6 1C */ lwz r3, lbl_805A91DC@sda21(r13) /* 802BF608 002BC568 80 6D A6 1C */ lwz r3, sPlaneObjectData__7Buckets@sda21(r13)
/* 802BF60C 002BC56C EC 00 07 72 */ fmuls f0, f0, f29 /* 802BF60C 002BC56C EC 00 07 72 */ fmuls f0, f0, f29
/* 802BF610 002BC570 C0 22 C2 70 */ lfs f1, lbl_805ADF90@sda21(r2) /* 802BF610 002BC570 C0 22 C2 70 */ lfs f1, lbl_805ADF90@sda21(r2)
/* 802BF614 002BC574 38 E3 00 04 */ addi r7, r3, 4 /* 802BF614 002BC574 38 E3 00 04 */ addi r7, r3, 4
/* 802BF618 002BC578 EF C1 00 24 */ fdivs f30, f1, f0 /* 802BF618 002BC578 EF C1 00 24 */ fdivs f30, f1, f0
/* 802BF61C 002BC57C 48 00 00 40 */ b lbl_802BF65C /* 802BF61C 002BC57C 48 00 00 40 */ b lbl_802BF65C
lbl_802BF620: lbl_802BF620:
/* 802BF620 002BC580 80 AD A6 20 */ lwz r5, lbl_805A91E0@sda21(r13) /* 802BF620 002BC580 80 AD A6 20 */ lwz r5, sPlaneObjectBucket__7Buckets@sda21(r13)
/* 802BF624 002BC584 80 05 00 00 */ lwz r0, 0(r5) /* 802BF624 002BC584 80 05 00 00 */ lwz r0, 0(r5)
/* 802BF628 002BC588 2C 00 00 08 */ cmpwi r0, 8 /* 802BF628 002BC588 2C 00 00 08 */ cmpwi r0, 8
/* 802BF62C 002BC58C 40 80 00 28 */ bge lbl_802BF654 /* 802BF62C 002BC58C 40 80 00 28 */ bge lbl_802BF654
@ -10923,19 +10927,19 @@ lbl_802BF654:
/* 802BF654 002BC5B4 38 E7 00 40 */ addi r7, r7, 0x40 /* 802BF654 002BC5B4 38 E7 00 40 */ addi r7, r7, 0x40
/* 802BF658 002BC5B8 38 C6 00 01 */ addi r6, r6, 1 /* 802BF658 002BC5B8 38 C6 00 01 */ addi r6, r6, 1
lbl_802BF65C: lbl_802BF65C:
/* 802BF65C 002BC5BC 80 6D A6 1C */ lwz r3, lbl_805A91DC@sda21(r13) /* 802BF65C 002BC5BC 80 6D A6 1C */ lwz r3, sPlaneObjectData__7Buckets@sda21(r13)
/* 802BF660 002BC5C0 80 03 00 00 */ lwz r0, 0(r3) /* 802BF660 002BC5C0 80 03 00 00 */ lwz r0, 0(r3)
/* 802BF664 002BC5C4 54 00 30 32 */ slwi r0, r0, 6 /* 802BF664 002BC5C4 54 00 30 32 */ slwi r0, r0, 6
/* 802BF668 002BC5C8 7C 63 02 14 */ add r3, r3, r0 /* 802BF668 002BC5C8 7C 63 02 14 */ add r3, r3, r0
/* 802BF66C 002BC5CC 38 63 00 04 */ addi r3, r3, 4 /* 802BF66C 002BC5CC 38 63 00 04 */ addi r3, r3, 4
/* 802BF670 002BC5D0 7C 07 18 40 */ cmplw r7, r3 /* 802BF670 002BC5D0 7C 07 18 40 */ cmplw r7, r3
/* 802BF674 002BC5D4 40 82 FF AC */ bne lbl_802BF620 /* 802BF674 002BC5D4 40 82 FF AC */ bne lbl_802BF620
/* 802BF678 002BC5D8 83 CD A6 20 */ lwz r30, lbl_805A91E0@sda21(r13) /* 802BF678 002BC5D8 83 CD A6 20 */ lwz r30, sPlaneObjectBucket__7Buckets@sda21(r13)
/* 802BF67C 002BC5DC 3B E0 00 32 */ li r31, 0x32 /* 802BF67C 002BC5DC 3B E0 00 32 */ li r31, 0x32
/* 802BF680 002BC5E0 80 1E 00 00 */ lwz r0, 0(r30) /* 802BF680 002BC5E0 80 1E 00 00 */ lwz r0, 0(r30)
/* 802BF684 002BC5E4 2C 00 00 00 */ cmpwi r0, 0 /* 802BF684 002BC5E4 2C 00 00 00 */ cmpwi r0, 0
/* 802BF688 002BC5E8 41 82 00 B0 */ beq lbl_802BF738 /* 802BF688 002BC5E8 41 82 00 B0 */ beq lbl_802BF738
/* 802BF68C 002BC5EC 88 0D A6 24 */ lbz r0, lbl_805A91E4@sda21(r13) /* 802BF68C 002BC5EC 88 0D A6 24 */ lbz r0, "@4756"@sda21(r13)
/* 802BF690 002BC5F0 38 7E 00 04 */ addi r3, r30, 4 /* 802BF690 002BC5F0 38 7E 00 04 */ addi r3, r30, 4
/* 802BF694 002BC5F4 38 A1 00 0C */ addi r5, r1, 0xc /* 802BF694 002BC5F4 38 A1 00 0C */ addi r5, r1, 0xc
/* 802BF698 002BC5F8 98 01 00 0C */ stb r0, 0xc(r1) /* 802BF698 002BC5F8 98 01 00 0C */ stb r0, 0xc(r1)
@ -10967,7 +10971,7 @@ lbl_802BF6FC:
/* 802BF6FC 002BC65C 38 65 00 01 */ addi r3, r5, 1 /* 802BF6FC 002BC65C 38 65 00 01 */ addi r3, r5, 1
/* 802BF700 002BC660 A0 06 00 00 */ lhz r0, 0(r6) /* 802BF700 002BC660 A0 06 00 00 */ lhz r0, 0(r6)
/* 802BF704 002BC664 7C 9F 19 D6 */ mullw r4, r31, r3 /* 802BF704 002BC664 7C 9F 19 D6 */ mullw r4, r31, r3
/* 802BF708 002BC668 80 6D A6 1C */ lwz r3, lbl_805A91DC@sda21(r13) /* 802BF708 002BC668 80 6D A6 1C */ lwz r3, sPlaneObjectData__7Buckets@sda21(r13)
/* 802BF70C 002BC66C 54 00 30 32 */ slwi r0, r0, 6 /* 802BF70C 002BC66C 54 00 30 32 */ slwi r0, r0, 6
/* 802BF710 002BC670 38 C6 00 02 */ addi r6, r6, 2 /* 802BF710 002BC670 38 C6 00 02 */ addi r6, r6, 2
/* 802BF714 002BC674 7C 63 02 14 */ add r3, r3, r0 /* 802BF714 002BC674 7C 63 02 14 */ add r3, r3, r0
@ -10981,9 +10985,9 @@ lbl_802BF720:
/* 802BF730 002BC690 7C 06 00 40 */ cmplw r6, r0 /* 802BF730 002BC690 7C 06 00 40 */ cmplw r6, r0
/* 802BF734 002BC694 40 82 FF C8 */ bne lbl_802BF6FC /* 802BF734 002BC694 40 82 FF C8 */ bne lbl_802BF6FC
lbl_802BF738: lbl_802BF738:
/* 802BF738 002BC698 80 6D A6 0C */ lwz r3, lbl_805A91CC@sda21(r13) /* 802BF738 002BC698 80 6D A6 0C */ lwz r3, sData__7Buckets@sda21(r13)
/* 802BF73C 002BC69C 83 AD A6 20 */ lwz r29, lbl_805A91E0@sda21(r13) /* 802BF73C 002BC69C 83 AD A6 20 */ lwz r29, sPlaneObjectBucket__7Buckets@sda21(r13)
/* 802BF740 002BC6A0 83 8D A6 1C */ lwz r28, lbl_805A91DC@sda21(r13) /* 802BF740 002BC6A0 83 8D A6 1C */ lwz r28, sPlaneObjectData__7Buckets@sda21(r13)
/* 802BF744 002BC6A4 3B C3 00 04 */ addi r30, r3, 4 /* 802BF744 002BC6A4 3B C3 00 04 */ addi r30, r3, 4
/* 802BF748 002BC6A8 48 00 02 8C */ b lbl_802BF9D4 /* 802BF748 002BC6A8 48 00 02 8C */ b lbl_802BF9D4
lbl_802BF74C: lbl_802BF74C:
@ -11160,7 +11164,7 @@ lbl_802BF98C:
/* 802BF994 002BC8F4 3B 60 00 31 */ li r27, 0x31 /* 802BF994 002BC8F4 3B 60 00 31 */ li r27, 0x31
lbl_802BF998: lbl_802BF998:
/* 802BF998 002BC8F8 1C 1B 02 04 */ mulli r0, r27, 0x204 /* 802BF998 002BC8F8 1C 1B 02 04 */ mulli r0, r27, 0x204
/* 802BF99C 002BC8FC 80 6D A6 10 */ lwz r3, lbl_805A91D0@sda21(r13) /* 802BF99C 002BC8FC 80 6D A6 10 */ lwz r3, sBuckets__7Buckets@sda21(r13)
/* 802BF9A0 002BC900 7C 83 02 14 */ add r4, r3, r0 /* 802BF9A0 002BC900 7C 83 02 14 */ add r4, r3, r0
/* 802BF9A4 002BC904 84 04 00 04 */ lwzu r0, 4(r4) /* 802BF9A4 002BC904 84 04 00 04 */ lwzu r0, 4(r4)
/* 802BF9A8 002BC908 2C 00 00 80 */ cmpwi r0, 0x80 /* 802BF9A8 002BC908 2C 00 00 80 */ cmpwi r0, 0x80
@ -11177,16 +11181,16 @@ lbl_802BF9C4:
lbl_802BF9D0: lbl_802BF9D0:
/* 802BF9D0 002BC930 3B DE 00 24 */ addi r30, r30, 0x24 /* 802BF9D0 002BC930 3B DE 00 24 */ addi r30, r30, 0x24
lbl_802BF9D4: lbl_802BF9D4:
/* 802BF9D4 002BC934 80 6D A6 0C */ lwz r3, lbl_805A91CC@sda21(r13) /* 802BF9D4 002BC934 80 6D A6 0C */ lwz r3, sData__7Buckets@sda21(r13)
/* 802BF9D8 002BC938 80 03 00 00 */ lwz r0, 0(r3) /* 802BF9D8 002BC938 80 03 00 00 */ lwz r0, 0(r3)
/* 802BF9DC 002BC93C 1C 00 00 24 */ mulli r0, r0, 0x24 /* 802BF9DC 002BC93C 1C 00 00 24 */ mulli r0, r0, 0x24
/* 802BF9E0 002BC940 7C 63 02 14 */ add r3, r3, r0 /* 802BF9E0 002BC940 7C 63 02 14 */ add r3, r3, r0
/* 802BF9E4 002BC944 38 63 00 04 */ addi r3, r3, 4 /* 802BF9E4 002BC944 38 63 00 04 */ addi r3, r3, 4
/* 802BF9E8 002BC948 7C 1E 18 40 */ cmplw r30, r3 /* 802BF9E8 002BC948 7C 1E 18 40 */ cmplw r30, r3
/* 802BF9EC 002BC94C 40 82 FD 60 */ bne lbl_802BF74C /* 802BF9EC 002BC94C 40 82 FD 60 */ bne lbl_802BF74C
/* 802BF9F0 002BC950 80 8D A6 10 */ lwz r4, lbl_805A91D0@sda21(r13) /* 802BF9F0 002BC950 80 8D A6 10 */ lwz r4, sBuckets__7Buckets@sda21(r13)
/* 802BF9F4 002BC954 3C 60 80 47 */ lis r3, lbl_8046E20C@ha /* 802BF9F4 002BC954 3C 60 80 47 */ lis r3, sBucketIndex__7Buckets@ha
/* 802BF9F8 002BC958 3B 63 E2 0C */ addi r27, r3, lbl_8046E20C@l /* 802BF9F8 002BC958 3B 63 E2 0C */ addi r27, r3, sBucketIndex__7Buckets@l
/* 802BF9FC 002BC95C 80 64 00 00 */ lwz r3, 0(r4) /* 802BF9FC 002BC95C 80 64 00 00 */ lwz r3, 0(r4)
/* 802BFA00 002BC960 3B DB 00 04 */ addi r30, r27, 4 /* 802BFA00 002BC960 3B DB 00 04 */ addi r30, r27, 4
/* 802BFA04 002BC964 3B 43 FF FF */ addi r26, r3, -1 /* 802BFA04 002BC964 3B 43 FF FF */ addi r26, r3, -1
@ -11195,7 +11199,7 @@ lbl_802BF9D4:
lbl_802BFA10: lbl_802BFA10:
/* 802BFA10 002BC970 80 1B 00 00 */ lwz r0, 0(r27) /* 802BFA10 002BC970 80 1B 00 00 */ lwz r0, 0(r27)
/* 802BFA14 002BC974 57 44 04 3E */ clrlwi r4, r26, 0x10 /* 802BFA14 002BC974 57 44 04 3E */ clrlwi r4, r26, 0x10
/* 802BFA18 002BC978 80 6D A6 10 */ lwz r3, lbl_805A91D0@sda21(r13) /* 802BFA18 002BC978 80 6D A6 10 */ lwz r3, sBuckets__7Buckets@sda21(r13)
/* 802BFA1C 002BC97C 54 00 08 3C */ slwi r0, r0, 1 /* 802BFA1C 002BC97C 54 00 08 3C */ slwi r0, r0, 1
/* 802BFA20 002BC980 7C BE 02 15 */ add. r5, r30, r0 /* 802BFA20 002BC980 7C BE 02 15 */ add. r5, r30, r0
/* 802BFA24 002BC984 7C C3 FA 14 */ add r6, r3, r31 /* 802BFA24 002BC984 7C C3 FA 14 */ add r6, r3, r31
@ -11209,7 +11213,7 @@ lbl_802BFA34:
/* 802BFA40 002BC9A0 80 06 00 00 */ lwz r0, 0(r6) /* 802BFA40 002BC9A0 80 06 00 00 */ lwz r0, 0(r6)
/* 802BFA44 002BC9A4 2C 00 00 00 */ cmpwi r0, 0 /* 802BFA44 002BC9A4 2C 00 00 00 */ cmpwi r0, 0
/* 802BFA48 002BC9A8 41 82 00 28 */ beq lbl_802BFA70 /* 802BFA48 002BC9A8 41 82 00 28 */ beq lbl_802BFA70
/* 802BFA4C 002BC9AC 88 0D A6 28 */ lbz r0, lbl_805A91E8@sda21(r13) /* 802BFA4C 002BC9AC 88 0D A6 28 */ lbz r0, "@4808"@sda21(r13)
/* 802BFA50 002BC9B0 38 66 00 04 */ addi r3, r6, 4 /* 802BFA50 002BC9B0 38 66 00 04 */ addi r3, r6, 4
/* 802BFA54 002BC9B4 38 A1 00 08 */ addi r5, r1, 8 /* 802BFA54 002BC9B4 38 A1 00 08 */ addi r5, r1, 8
/* 802BFA58 002BC9B8 98 01 00 08 */ stb r0, 8(r1) /* 802BFA58 002BC9B8 98 01 00 08 */ stb r0, 8(r1)
@ -11232,7 +11236,7 @@ lbl_802BFA78:
/* 802BFA94 002BC9F4 48 00 00 54 */ b lbl_802BFAE8 /* 802BFA94 002BC9F4 48 00 00 54 */ b lbl_802BFAE8
lbl_802BFA98: lbl_802BFA98:
/* 802BFA98 002BC9F8 A0 07 00 00 */ lhz r0, 0(r7) /* 802BFA98 002BC9F8 A0 07 00 00 */ lhz r0, 0(r7)
/* 802BFA9C 002BC9FC 80 6D A6 10 */ lwz r3, lbl_805A91D0@sda21(r13) /* 802BFA9C 002BC9FC 80 6D A6 10 */ lwz r3, sBuckets__7Buckets@sda21(r13)
/* 802BFAA0 002BCA00 54 00 30 32 */ slwi r0, r0, 6 /* 802BFAA0 002BCA00 54 00 30 32 */ slwi r0, r0, 6
/* 802BFAA4 002BCA04 7C 9C 02 14 */ add r4, r28, r0 /* 802BFAA4 002BCA04 7C 9C 02 14 */ add r4, r28, r0
/* 802BFAA8 002BCA08 A0 04 00 28 */ lhz r0, 0x28(r4) /* 802BFAA8 002BCA08 A0 04 00 28 */ lhz r0, 0x28(r4)
@ -11279,7 +11283,7 @@ InsertPlaneObject__7BucketsFffRC6CAABoxbRC6CPlaneb13EDrawableTypePCv:
/* 802BFB34 002BCA94 93 E1 00 4C */ stw r31, 0x4c(r1) /* 802BFB34 002BCA94 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 802BFB38 002BCA98 93 C1 00 48 */ stw r30, 0x48(r1) /* 802BFB38 002BCA98 93 C1 00 48 */ stw r30, 0x48(r1)
/* 802BFB3C 002BCA9C 7C 9E 23 78 */ mr r30, r4 /* 802BFB3C 002BCA9C 7C 9E 23 78 */ mr r30, r4
/* 802BFB40 002BCAA0 81 4D A6 1C */ lwz r10, lbl_805A91DC@sda21(r13) /* 802BFB40 002BCAA0 81 4D A6 1C */ lwz r10, sPlaneObjectData__7Buckets@sda21(r13)
/* 802BFB44 002BCAA4 80 0A 00 00 */ lwz r0, 0(r10) /* 802BFB44 002BCAA4 80 0A 00 00 */ lwz r0, 0(r10)
/* 802BFB48 002BCAA8 7D 5F 53 78 */ mr r31, r10 /* 802BFB48 002BCAA8 7D 5F 53 78 */ mr r31, r10
/* 802BFB4C 002BCAAC 2C 00 00 08 */ cmpwi r0, 8 /* 802BFB4C 002BCAAC 2C 00 00 08 */ cmpwi r0, 8
@ -11415,7 +11419,7 @@ __ct__20CDrawablePlaneObjectF13EDrawableTypeffRC6CAABoxbRC6CPlanebPCv:
.global Insert__7BucketsFRC9CVector3fRC6CAABox13EDrawableTypePCvRC6CPlaneUs .global Insert__7BucketsFRC9CVector3fRC6CAABox13EDrawableTypePCvRC6CPlaneUs
Insert__7BucketsFRC9CVector3fRC6CAABox13EDrawableTypePCvRC6CPlaneUs: Insert__7BucketsFRC9CVector3fRC6CAABox13EDrawableTypePCvRC6CPlaneUs:
/* 802BFD18 002BCC78 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802BFD18 002BCC78 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802BFD1C 002BCC7C 81 4D A6 0C */ lwz r10, lbl_805A91CC@sda21(r13) /* 802BFD1C 002BCC7C 81 4D A6 0C */ lwz r10, sData__7Buckets@sda21(r13)
/* 802BFD20 002BCC80 80 0A 00 00 */ lwz r0, 0(r10) /* 802BFD20 002BCC80 80 0A 00 00 */ lwz r0, 0(r10)
/* 802BFD24 002BCC84 2C 00 02 00 */ cmpwi r0, 0x200 /* 802BFD24 002BCC84 2C 00 02 00 */ cmpwi r0, 0x200
/* 802BFD28 002BCC88 41 82 01 2C */ beq lbl_802BFE54 /* 802BFD28 002BCC88 41 82 01 2C */ beq lbl_802BFE54
@ -11467,20 +11471,20 @@ lbl_802BFDDC:
/* 802BFDDC 002BCD3C 80 6A 00 00 */ lwz r3, 0(r10) /* 802BFDDC 002BCD3C 80 6A 00 00 */ lwz r3, 0(r10)
/* 802BFDE0 002BCD40 38 03 00 01 */ addi r0, r3, 1 /* 802BFDE0 002BCD40 38 03 00 01 */ addi r0, r3, 1
/* 802BFDE4 002BCD44 90 0A 00 00 */ stw r0, 0(r10) /* 802BFDE4 002BCD44 90 0A 00 00 */ stw r0, 0(r10)
/* 802BFDE8 002BCD48 C0 2D A6 14 */ lfs f1, lbl_805A91D4@sda21(r13) /* 802BFDE8 002BCD48 C0 2D A6 14 */ lfs f1, sMinMaxDistance__7Buckets@sda21(r13)
/* 802BFDEC 002BCD4C C0 01 00 08 */ lfs f0, 8(r1) /* 802BFDEC 002BCD4C C0 01 00 08 */ lfs f0, 8(r1)
/* 802BFDF0 002BCD50 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802BFDF0 002BCD50 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 802BFDF4 002BCD54 40 80 00 0C */ bge lbl_802BFE00 /* 802BFDF4 002BCD54 40 80 00 0C */ bge lbl_802BFE00
/* 802BFDF8 002BCD58 38 8D A6 14 */ addi r4, r13, lbl_805A91D4@sda21 /* 802BFDF8 002BCD58 38 8D A6 14 */ addi r4, r13, sMinMaxDistance__7Buckets@sda21
/* 802BFDFC 002BCD5C 48 00 00 08 */ b lbl_802BFE04 /* 802BFDFC 002BCD5C 48 00 00 08 */ b lbl_802BFE04
lbl_802BFE00: lbl_802BFE00:
/* 802BFE00 002BCD60 38 81 00 08 */ addi r4, r1, 8 /* 802BFE00 002BCD60 38 81 00 08 */ addi r4, r1, 8
lbl_802BFE04: lbl_802BFE04:
/* 802BFE04 002BCD64 38 6D A6 14 */ addi r3, r13, lbl_805A91D4@sda21 /* 802BFE04 002BCD64 38 6D A6 14 */ addi r3, r13, sMinMaxDistance__7Buckets@sda21
/* 802BFE08 002BCD68 C0 44 00 00 */ lfs f2, 0(r4) /* 802BFE08 002BCD68 C0 44 00 00 */ lfs f2, 0(r4)
/* 802BFE0C 002BCD6C C0 21 00 08 */ lfs f1, 8(r1) /* 802BFE0C 002BCD6C C0 21 00 08 */ lfs f1, 8(r1)
/* 802BFE10 002BCD70 C0 03 00 04 */ lfs f0, 4(r3) /* 802BFE10 002BCD70 C0 03 00 04 */ lfs f0, 4(r3)
/* 802BFE14 002BCD74 D0 4D A6 14 */ stfs f2, lbl_805A91D4@sda21(r13) /* 802BFE14 002BCD74 D0 4D A6 14 */ stfs f2, sMinMaxDistance__7Buckets@sda21(r13)
/* 802BFE18 002BCD78 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802BFE18 002BCD78 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 802BFE1C 002BCD7C 40 80 00 0C */ bge lbl_802BFE28 /* 802BFE1C 002BCD7C 40 80 00 0C */ bge lbl_802BFE28
/* 802BFE20 002BCD80 38 63 00 04 */ addi r3, r3, 4 /* 802BFE20 002BCD80 38 63 00 04 */ addi r3, r3, 4
@ -11489,7 +11493,7 @@ lbl_802BFE28:
/* 802BFE28 002BCD88 38 61 00 08 */ addi r3, r1, 8 /* 802BFE28 002BCD88 38 61 00 08 */ addi r3, r1, 8
lbl_802BFE2C: lbl_802BFE2C:
/* 802BFE2C 002BCD8C C0 03 00 00 */ lfs f0, 0(r3) /* 802BFE2C 002BCD8C C0 03 00 00 */ lfs f0, 0(r3)
/* 802BFE30 002BCD90 38 6D A6 14 */ addi r3, r13, lbl_805A91D4@sda21 /* 802BFE30 002BCD90 38 6D A6 14 */ addi r3, r13, sMinMaxDistance__7Buckets@sda21
/* 802BFE34 002BCD94 38 8A 00 04 */ addi r4, r10, 4 /* 802BFE34 002BCD94 38 8A 00 04 */ addi r4, r10, 4
/* 802BFE38 002BCD98 D0 03 00 04 */ stfs f0, 4(r3) /* 802BFE38 002BCD98 D0 03 00 04 */ stfs f0, 4(r3)
/* 802BFE3C 002BCD9C 80 6A 00 00 */ lwz r3, 0(r10) /* 802BFE3C 002BCD9C 80 6A 00 00 */ lwz r3, 0(r10)
@ -11505,45 +11509,45 @@ lbl_802BFE54:
.global Shutdown__7BucketsFv .global Shutdown__7BucketsFv
Shutdown__7BucketsFv: Shutdown__7BucketsFv:
/* 802BFE5C 002BCDBC 38 00 00 00 */ li r0, 0 /* 802BFE5C 002BCDBC 38 00 00 00 */ li r0, 0
/* 802BFE60 002BCDC0 90 0D A6 0C */ stw r0, lbl_805A91CC@sda21(r13) /* 802BFE60 002BCDC0 90 0D A6 0C */ stw r0, sData__7Buckets@sda21(r13)
/* 802BFE64 002BCDC4 90 0D A6 10 */ stw r0, lbl_805A91D0@sda21(r13) /* 802BFE64 002BCDC4 90 0D A6 10 */ stw r0, sBuckets__7Buckets@sda21(r13)
/* 802BFE68 002BCDC8 90 0D A6 1C */ stw r0, lbl_805A91DC@sda21(r13) /* 802BFE68 002BCDC8 90 0D A6 1C */ stw r0, sPlaneObjectData__7Buckets@sda21(r13)
/* 802BFE6C 002BCDCC 90 0D A6 20 */ stw r0, lbl_805A91E0@sda21(r13) /* 802BFE6C 002BCDCC 90 0D A6 20 */ stw r0, sPlaneObjectBucket__7Buckets@sda21(r13)
/* 802BFE70 002BCDD0 4E 80 00 20 */ blr /* 802BFE70 002BCDD0 4E 80 00 20 */ blr
.global Init__7BucketsFv .global Init__7BucketsFv
Init__7BucketsFv: Init__7BucketsFv:
/* 802BFE74 002BCDD4 3C 60 80 47 */ lis r3, lbl_8046E274@ha /* 802BFE74 002BCDD4 3C 60 80 47 */ lis r3, "sDataHolder$4374"@ha
/* 802BFE78 002BCDD8 94 21 FD F0 */ stwu r1, -0x210(r1) /* 802BFE78 002BCDD8 94 21 FD F0 */ stwu r1, -0x210(r1)
/* 802BFE7C 002BCDDC 34 83 E2 74 */ addic. r4, r3, lbl_8046E274@l /* 802BFE7C 002BCDDC 34 83 E2 74 */ addic. r4, r3, "sDataHolder$4374"@l
/* 802BFE80 002BCDE0 41 82 00 0C */ beq lbl_802BFE8C /* 802BFE80 002BCDE0 41 82 00 0C */ beq lbl_802BFE8C
/* 802BFE84 002BCDE4 38 00 00 00 */ li r0, 0 /* 802BFE84 002BCDE4 38 00 00 00 */ li r0, 0
/* 802BFE88 002BCDE8 90 04 00 00 */ stw r0, 0(r4) /* 802BFE88 002BCDE8 90 04 00 00 */ stw r0, 0(r4)
lbl_802BFE8C: lbl_802BFE8C:
/* 802BFE8C 002BCDEC 3C 60 80 47 */ lis r3, lbl_80472A7C@ha /* 802BFE8C 002BCDEC 3C 60 80 47 */ lis r3, "sBucketsHolder$4375"@ha
/* 802BFE90 002BCDF0 90 8D A6 0C */ stw r4, lbl_805A91CC@sda21(r13) /* 802BFE90 002BCDF0 90 8D A6 0C */ stw r4, sData__7Buckets@sda21(r13)
/* 802BFE94 002BCDF4 34 83 2A 7C */ addic. r4, r3, lbl_80472A7C@l /* 802BFE94 002BCDF4 34 83 2A 7C */ addic. r4, r3, "sBucketsHolder$4375"@l
/* 802BFE98 002BCDF8 41 82 00 0C */ beq lbl_802BFEA4 /* 802BFE98 002BCDF8 41 82 00 0C */ beq lbl_802BFEA4
/* 802BFE9C 002BCDFC 38 00 00 00 */ li r0, 0 /* 802BFE9C 002BCDFC 38 00 00 00 */ li r0, 0
/* 802BFEA0 002BCE00 90 04 00 00 */ stw r0, 0(r4) /* 802BFEA0 002BCE00 90 04 00 00 */ stw r0, 0(r4)
lbl_802BFEA4: lbl_802BFEA4:
/* 802BFEA4 002BCE04 3C 60 80 48 */ lis r3, lbl_80478F4C@ha /* 802BFEA4 002BCE04 3C 60 80 48 */ lis r3, "sPlaneObjectDataHolder$4376"@ha
/* 802BFEA8 002BCE08 90 8D A6 10 */ stw r4, lbl_805A91D0@sda21(r13) /* 802BFEA8 002BCE08 90 8D A6 10 */ stw r4, sBuckets__7Buckets@sda21(r13)
/* 802BFEAC 002BCE0C 34 83 8F 4C */ addic. r4, r3, lbl_80478F4C@l /* 802BFEAC 002BCE0C 34 83 8F 4C */ addic. r4, r3, "sPlaneObjectDataHolder$4376"@l
/* 802BFEB0 002BCE10 41 82 00 0C */ beq lbl_802BFEBC /* 802BFEB0 002BCE10 41 82 00 0C */ beq lbl_802BFEBC
/* 802BFEB4 002BCE14 38 00 00 00 */ li r0, 0 /* 802BFEB4 002BCE14 38 00 00 00 */ li r0, 0
/* 802BFEB8 002BCE18 90 04 00 00 */ stw r0, 0(r4) /* 802BFEB8 002BCE18 90 04 00 00 */ stw r0, 0(r4)
lbl_802BFEBC: lbl_802BFEBC:
/* 802BFEBC 002BCE1C 3C 60 80 48 */ lis r3, lbl_80479154@ha /* 802BFEBC 002BCE1C 3C 60 80 48 */ lis r3, "sPlaneObjectBucketHolder$4377"@ha
/* 802BFEC0 002BCE20 90 8D A6 1C */ stw r4, lbl_805A91DC@sda21(r13) /* 802BFEC0 002BCE20 90 8D A6 1C */ stw r4, sPlaneObjectData__7Buckets@sda21(r13)
/* 802BFEC4 002BCE24 34 63 91 54 */ addic. r3, r3, lbl_80479154@l /* 802BFEC4 002BCE24 34 63 91 54 */ addic. r3, r3, "sPlaneObjectBucketHolder$4377"@l
/* 802BFEC8 002BCE28 41 82 00 0C */ beq lbl_802BFED4 /* 802BFEC8 002BCE28 41 82 00 0C */ beq lbl_802BFED4
/* 802BFECC 002BCE2C 38 00 00 00 */ li r0, 0 /* 802BFECC 002BCE2C 38 00 00 00 */ li r0, 0
/* 802BFED0 002BCE30 90 03 00 00 */ stw r0, 0(r3) /* 802BFED0 002BCE30 90 03 00 00 */ stw r0, 0(r3)
lbl_802BFED4: lbl_802BFED4:
/* 802BFED4 002BCE34 90 6D A6 20 */ stw r3, lbl_805A91E0@sda21(r13) /* 802BFED4 002BCE34 90 6D A6 20 */ stw r3, sPlaneObjectBucket__7Buckets@sda21(r13)
/* 802BFED8 002BCE38 38 80 00 00 */ li r4, 0 /* 802BFED8 002BCE38 38 80 00 00 */ li r4, 0
/* 802BFEDC 002BCE3C 81 4D A6 10 */ lwz r10, lbl_805A91D0@sda21(r13) /* 802BFEDC 002BCE3C 81 4D A6 10 */ lwz r10, sBuckets__7Buckets@sda21(r13)
/* 802BFEE0 002BCE40 90 81 00 08 */ stw r4, 8(r1) /* 802BFEE0 002BCE40 90 81 00 08 */ stw r4, 8(r1)
/* 802BFEE4 002BCE44 80 6A 00 00 */ lwz r3, 0(r10) /* 802BFEE4 002BCE44 80 6A 00 00 */ lwz r3, 0(r10)
/* 802BFEE8 002BCE48 2C 03 00 32 */ cmpwi r3, 0x32 /* 802BFEE8 002BCE48 2C 03 00 32 */ cmpwi r3, 0x32
@ -11606,13 +11610,13 @@ lbl_802BFF9C:
lbl_802BFFAC: lbl_802BFFAC:
/* 802BFFAC 002BCF0C 42 00 00 00 */ bdnz lbl_802BFFAC /* 802BFFAC 002BCF0C 42 00 00 00 */ bdnz lbl_802BFFAC
lbl_802BFFB0: lbl_802BFFB0:
/* 802BFFB0 002BCF10 38 6D A6 04 */ addi r3, r13, lbl_805A91C4@sda21 /* 802BFFB0 002BCF10 38 6D A6 04 */ addi r3, r13, skWorstMinMaxDistance__7Buckets@sda21
/* 802BFFB4 002BCF14 C0 2D A6 04 */ lfs f1, lbl_805A91C4@sda21(r13) /* 802BFFB4 002BCF14 C0 2D A6 04 */ lfs f1, skWorstMinMaxDistance__7Buckets@sda21(r13)
/* 802BFFB8 002BCF18 C0 03 00 04 */ lfs f0, 4(r3) /* 802BFFB8 002BCF18 C0 03 00 04 */ lfs f0, 4(r3)
/* 802BFFBC 002BCF1C 38 00 00 00 */ li r0, 0 /* 802BFFBC 002BCF1C 38 00 00 00 */ li r0, 0
/* 802BFFC0 002BCF20 38 6D A6 14 */ addi r3, r13, lbl_805A91D4@sda21 /* 802BFFC0 002BCF20 38 6D A6 14 */ addi r3, r13, sMinMaxDistance__7Buckets@sda21
/* 802BFFC4 002BCF24 90 01 00 08 */ stw r0, 8(r1) /* 802BFFC4 002BCF24 90 01 00 08 */ stw r0, 8(r1)
/* 802BFFC8 002BCF28 D0 2D A6 14 */ stfs f1, lbl_805A91D4@sda21(r13) /* 802BFFC8 002BCF28 D0 2D A6 14 */ stfs f1, sMinMaxDistance__7Buckets@sda21(r13)
/* 802BFFCC 002BCF2C D0 03 00 04 */ stfs f0, 4(r3) /* 802BFFCC 002BCF2C D0 03 00 04 */ stfs f0, 4(r3)
/* 802BFFD0 002BCF30 38 21 02 10 */ addi r1, r1, 0x210 /* 802BFFD0 002BCF30 38 21 02 10 */ addi r1, r1, 0x210
/* 802BFFD4 002BCF34 4E 80 00 20 */ blr /* 802BFFD4 002BCF34 4E 80 00 20 */ blr
@ -11648,21 +11652,21 @@ sub_802c0008:
.global sub_802c0034 .global sub_802c0034
sub_802c0034: sub_802c0034:
/* 802C0034 002BCF94 3C 60 80 48 */ lis r3, lbl_80479178@ha /* 802C0034 002BCF94 3C 60 80 48 */ lis r3, "sAllocSpace$9000"@ha
/* 802C0038 002BCF98 38 63 91 78 */ addi r3, r3, lbl_80479178@l /* 802C0038 002BCF98 38 63 91 78 */ addi r3, r3, "sAllocSpace$9000"@l
/* 802C003C 002BCF9C 4E 80 00 20 */ blr /* 802C003C 002BCF9C 4E 80 00 20 */ blr
.global sub_802c0040 .global sub_802c0040
sub_802c0040: sub_802c0040:
/* 802C0040 002BCFA0 88 0D A6 34 */ lbz r0, lbl_805A91F4@sda21(r13) /* 802C0040 002BCFA0 88 0D A6 34 */ lbz r0, "init$9006"@sda21(r13)
/* 802C0044 002BCFA4 7C 00 07 75 */ extsb. r0, r0 /* 802C0044 002BCFA4 7C 00 07 75 */ extsb. r0, r0
/* 802C0048 002BCFA8 40 82 00 14 */ bne lbl_802C005C /* 802C0048 002BCFA8 40 82 00 14 */ bne lbl_802C005C
/* 802C004C 002BCFAC 38 60 00 00 */ li r3, 0 /* 802C004C 002BCFAC 38 60 00 00 */ li r3, 0
/* 802C0050 002BCFB0 38 00 00 01 */ li r0, 1 /* 802C0050 002BCFB0 38 00 00 01 */ li r0, 1
/* 802C0054 002BCFB4 90 6D A6 30 */ stw r3, lbl_805A91F0@sda21(r13) /* 802C0054 002BCFB4 90 6D A6 30 */ stw r3, "sReferenceCount$9005"@sda21(r13)
/* 802C0058 002BCFB8 98 0D A6 34 */ stb r0, lbl_805A91F4@sda21(r13) /* 802C0058 002BCFB8 98 0D A6 34 */ stb r0, "init$9006"@sda21(r13)
lbl_802C005C: lbl_802C005C:
/* 802C005C 002BCFBC 38 6D A6 30 */ addi r3, r13, lbl_805A91F0@sda21 /* 802C005C 002BCFBC 38 6D A6 30 */ addi r3, r13, "sReferenceCount$9005"@sda21
/* 802C0060 002BCFC0 4E 80 00 20 */ blr /* 802C0060 002BCFC0 4E 80 00 20 */ blr
.global sub_802c0064 .global sub_802c0064
@ -11705,7 +11709,7 @@ lbl_802C00B4:
/* 802C00EC 002BD04C 3B FF FF FE */ addi r31, r31, -2 /* 802C00EC 002BD04C 3B FF FF FE */ addi r31, r31, -2
/* 802C00F0 002BD050 54 04 32 B2 */ rlwinm r4, r0, 6, 0xa, 0x19 /* 802C00F0 002BD050 54 04 32 B2 */ rlwinm r4, r0, 6, 0xa, 0x19
lbl_802C00F4: lbl_802C00F4:
/* 802C00F4 002BD054 80 6D A6 1C */ lwz r3, lbl_805A91DC@sda21(r13) /* 802C00F4 002BD054 80 6D A6 1C */ lwz r3, sPlaneObjectData__7Buckets@sda21(r13)
/* 802C00F8 002BD058 38 A3 00 04 */ addi r5, r3, 4 /* 802C00F8 002BD058 38 A3 00 04 */ addi r5, r3, 4
/* 802C00FC 002BD05C 7C C5 22 14 */ add r6, r5, r4 /* 802C00FC 002BD05C 7C C5 22 14 */ add r6, r5, r4
/* 802C0100 002BD060 48 00 00 08 */ b lbl_802C0108 /* 802C0100 002BD060 48 00 00 08 */ b lbl_802C0108
@ -12230,7 +12234,7 @@ lbl_802C07E0:
lbl_802C07EC: lbl_802C07EC:
/* 802C07EC 002BD74C 7C 03 58 40 */ cmplw r3, r11 /* 802C07EC 002BD74C 7C 03 58 40 */ cmplw r3, r11
/* 802C07F0 002BD750 40 80 00 2C */ bge lbl_802C081C /* 802C07F0 002BD750 40 80 00 2C */ bge lbl_802C081C
/* 802C07F4 002BD754 80 8D A6 1C */ lwz r4, lbl_805A91DC@sda21(r13) /* 802C07F4 002BD754 80 8D A6 1C */ lwz r4, sPlaneObjectData__7Buckets@sda21(r13)
/* 802C07F8 002BD758 A0 EA 00 00 */ lhz r7, 0(r10) /* 802C07F8 002BD758 A0 EA 00 00 */ lhz r7, 0(r10)
/* 802C07FC 002BD75C 38 A4 00 04 */ addi r5, r4, 4 /* 802C07FC 002BD75C 38 A4 00 04 */ addi r5, r4, 4
/* 802C0800 002BD760 54 E0 32 B2 */ rlwinm r0, r7, 6, 0xa, 0x19 /* 802C0800 002BD760 54 E0 32 B2 */ rlwinm r0, r7, 6, 0xa, 0x19
@ -12364,7 +12368,7 @@ lbl_802C098C:
.global sub_802c0994 .global sub_802c0994
sub_802c0994: sub_802c0994:
/* 802C0994 002BD8F4 80 CD A6 1C */ lwz r6, lbl_805A91DC@sda21(r13) /* 802C0994 002BD8F4 80 CD A6 1C */ lwz r6, sPlaneObjectData__7Buckets@sda21(r13)
/* 802C0998 002BD8F8 A1 24 00 00 */ lhz r9, 0(r4) /* 802C0998 002BD8F8 A1 24 00 00 */ lhz r9, 0(r4)
/* 802C099C 002BD8FC A1 03 00 00 */ lhz r8, 0(r3) /* 802C099C 002BD8FC A1 03 00 00 */ lhz r8, 0(r3)
/* 802C09A0 002BD900 38 E6 00 04 */ addi r7, r6, 4 /* 802C09A0 002BD900 38 E6 00 04 */ addi r7, r6, 4
@ -12379,7 +12383,7 @@ sub_802c0994:
/* 802C09C4 002BD924 B1 23 00 00 */ sth r9, 0(r3) /* 802C09C4 002BD924 B1 23 00 00 */ sth r9, 0(r3)
/* 802C09C8 002BD928 B1 04 00 00 */ sth r8, 0(r4) /* 802C09C8 002BD928 B1 04 00 00 */ sth r8, 0(r4)
lbl_802C09CC: lbl_802C09CC:
/* 802C09CC 002BD92C 80 CD A6 1C */ lwz r6, lbl_805A91DC@sda21(r13) /* 802C09CC 002BD92C 80 CD A6 1C */ lwz r6, sPlaneObjectData__7Buckets@sda21(r13)
/* 802C09D0 002BD930 A1 25 00 00 */ lhz r9, 0(r5) /* 802C09D0 002BD930 A1 25 00 00 */ lhz r9, 0(r5)
/* 802C09D4 002BD934 A1 44 00 00 */ lhz r10, 0(r4) /* 802C09D4 002BD934 A1 44 00 00 */ lhz r10, 0(r4)
/* 802C09D8 002BD938 39 06 00 04 */ addi r8, r6, 4 /* 802C09D8 002BD938 39 06 00 04 */ addi r8, r6, 4
@ -12392,7 +12396,7 @@ lbl_802C09CC:
/* 802C09F4 002BD954 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802C09F4 002BD954 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 802C09F8 002BD958 4C 80 00 20 */ bgelr /* 802C09F8 002BD958 4C 80 00 20 */ bgelr
/* 802C09FC 002BD95C B1 45 00 00 */ sth r10, 0(r5) /* 802C09FC 002BD95C B1 45 00 00 */ sth r10, 0(r5)
/* 802C0A00 002BD960 80 AD A6 1C */ lwz r5, lbl_805A91DC@sda21(r13) /* 802C0A00 002BD960 80 AD A6 1C */ lwz r5, sPlaneObjectData__7Buckets@sda21(r13)
/* 802C0A04 002BD964 A1 03 00 00 */ lhz r8, 0(r3) /* 802C0A04 002BD964 A1 03 00 00 */ lhz r8, 0(r3)
/* 802C0A08 002BD968 38 E5 00 04 */ addi r7, r5, 4 /* 802C0A08 002BD968 38 E5 00 04 */ addi r7, r5, 4
/* 802C0A0C 002BD96C 55 00 32 B2 */ rlwinm r0, r8, 6, 0xa, 0x19 /* 802C0A0C 002BD96C 55 00 32 B2 */ rlwinm r0, r8, 6, 0xa, 0x19
@ -12431,13 +12435,13 @@ __sinit_CCubeRenderer_cpp:
/* 802C0A80 002BD9E0 89 21 00 10 */ lbz r9, 0x10(r1) /* 802C0A80 002BD9E0 89 21 00 10 */ lbz r9, 0x10(r1)
/* 802C0A84 002BD9E4 38 00 00 03 */ li r0, 3 /* 802C0A84 002BD9E4 38 00 00 03 */ li r0, 3
/* 802C0A88 002BD9E8 89 01 00 11 */ lbz r8, 0x11(r1) /* 802C0A88 002BD9E8 89 01 00 11 */ lbz r8, 0x11(r1)
/* 802C0A8C 002BD9EC 38 ED A5 F4 */ addi r7, r13, lbl_805A91B4@sda21 /* 802C0A8C 002BD9EC 38 ED A5 F4 */ addi r7, r13, skNormalFlag@sda21
/* 802C0A90 002BD9F0 A0 C1 00 12 */ lhz r6, 0x12(r1) /* 802C0A90 002BD9F0 A0 C1 00 12 */ lhz r6, 0x12(r1)
/* 802C0A94 002BD9F4 FC 40 08 90 */ fmr f2, f1 /* 802C0A94 002BD9F4 FC 40 08 90 */ fmr f2, f1
/* 802C0A98 002BD9F8 80 A1 00 14 */ lwz r5, 0x14(r1) /* 802C0A98 002BD9F8 80 A1 00 14 */ lwz r5, 0x14(r1)
/* 802C0A9C 002BD9FC FC 60 08 90 */ fmr f3, f1 /* 802C0A9C 002BD9FC FC 60 08 90 */ fmr f3, f1
/* 802C0AA0 002BDA00 FC 80 08 90 */ fmr f4, f1 /* 802C0AA0 002BDA00 FC 80 08 90 */ fmr f4, f1
/* 802C0AA4 002BDA04 99 2D A5 F4 */ stb r9, lbl_805A91B4@sda21(r13) /* 802C0AA4 002BDA04 99 2D A5 F4 */ stb r9, skNormalFlag@sda21(r13)
/* 802C0AA8 002BDA08 38 61 00 0C */ addi r3, r1, 0xc /* 802C0AA8 002BDA08 38 61 00 0C */ addi r3, r1, 0xc
/* 802C0AAC 002BDA0C 99 07 00 01 */ stb r8, 1(r7) /* 802C0AAC 002BDA0C 99 07 00 01 */ stb r8, 1(r7)
/* 802C0AB0 002BDA10 B0 C7 00 02 */ sth r6, 2(r7) /* 802C0AB0 002BDA10 B0 C7 00 02 */ sth r6, 2(r7)
@ -12449,31 +12453,31 @@ __sinit_CCubeRenderer_cpp:
/* 802C0AC8 002BDA28 A0 01 00 0A */ lhz r0, 0xa(r1) /* 802C0AC8 002BDA28 A0 01 00 0A */ lhz r0, 0xa(r1)
/* 802C0ACC 002BDA2C 3C 80 80 2C */ lis r4, sub_802c0b50@ha /* 802C0ACC 002BDA2C 3C 80 80 2C */ lis r4, sub_802c0b50@ha
/* 802C0AD0 002BDA30 89 41 00 08 */ lbz r10, 8(r1) /* 802C0AD0 002BDA30 89 41 00 08 */ lbz r10, 8(r1)
/* 802C0AD4 002BDA34 3C A0 80 47 */ lis r5, lbl_8046E200@ha /* 802C0AD4 002BDA34 3C A0 80 47 */ lis r5, "@4370"@ha
/* 802C0AD8 002BDA38 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d /* 802C0AD8 002BDA38 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d
/* 802C0ADC 002BDA3C C0 2D 9A 98 */ lfs f1, lbl_805A8658@sda21(r13) /* 802C0ADC 002BDA3C C0 2D 9A 98 */ lfs f1, lbl_805A8658@sda21(r13)
/* 802C0AE0 002BDA40 60 07 00 01 */ ori r7, r0, 1 /* 802C0AE0 002BDA40 60 07 00 01 */ ori r7, r0, 1
/* 802C0AE4 002BDA44 39 0D A5 FC */ addi r8, r13, lbl_805A91BC@sda21 /* 802C0AE4 002BDA44 39 0D A5 FC */ addi r8, r13, skNormalFlagNoUpdate@sda21
/* 802C0AE8 002BDA48 89 21 00 09 */ lbz r9, 9(r1) /* 802C0AE8 002BDA48 89 21 00 09 */ lbz r9, 9(r1)
/* 802C0AEC 002BDA4C 38 00 00 00 */ li r0, 0 /* 802C0AEC 002BDA4C 38 00 00 00 */ li r0, 0
/* 802C0AF0 002BDA50 80 C1 00 0C */ lwz r6, 0xc(r1) /* 802C0AF0 002BDA50 80 C1 00 0C */ lwz r6, 0xc(r1)
/* 802C0AF4 002BDA54 3C 60 80 47 */ lis r3, lbl_8046E20C@ha /* 802C0AF4 002BDA54 3C 60 80 47 */ lis r3, sBucketIndex__7Buckets@ha
/* 802C0AF8 002BDA58 C0 0D 9A 9C */ lfs f0, lbl_805A865C@sda21(r13) /* 802C0AF8 002BDA58 C0 0D 9A 9C */ lfs f0, lbl_805A865C@sda21(r13)
/* 802C0AFC 002BDA5C 3B ED A6 04 */ addi r31, r13, lbl_805A91C4@sda21 /* 802C0AFC 002BDA5C 3B ED A6 04 */ addi r31, r13, skWorstMinMaxDistance__7Buckets@sda21
/* 802C0B00 002BDA60 99 4D A5 FC */ stb r10, lbl_805A91BC@sda21(r13) /* 802C0B00 002BDA60 99 4D A5 FC */ stb r10, skNormalFlagNoUpdate@sda21(r13)
/* 802C0B04 002BDA64 38 84 0B 50 */ addi r4, r4, sub_802c0b50@l /* 802C0B04 002BDA64 38 84 0B 50 */ addi r4, r4, sub_802c0b50@l
/* 802C0B08 002BDA68 38 A5 E2 00 */ addi r5, r5, lbl_8046E200@l /* 802C0B08 002BDA68 38 A5 E2 00 */ addi r5, r5, "@4370"@l
/* 802C0B0C 002BDA6C 99 28 00 01 */ stb r9, 1(r8) /* 802C0B0C 002BDA6C 99 28 00 01 */ stb r9, 1(r8)
/* 802C0B10 002BDA70 B0 E8 00 02 */ sth r7, 2(r8) /* 802C0B10 002BDA70 B0 E8 00 02 */ sth r7, 2(r8)
/* 802C0B14 002BDA74 90 C8 00 04 */ stw r6, 4(r8) /* 802C0B14 002BDA74 90 C8 00 04 */ stw r6, 4(r8)
/* 802C0B18 002BDA78 D0 2D A6 04 */ stfs f1, lbl_805A91C4@sda21(r13) /* 802C0B18 002BDA78 D0 2D A6 04 */ stfs f1, skWorstMinMaxDistance__7Buckets@sda21(r13)
/* 802C0B1C 002BDA7C D0 1F 00 04 */ stfs f0, 4(r31) /* 802C0B1C 002BDA7C D0 1F 00 04 */ stfs f0, 4(r31)
/* 802C0B20 002BDA80 94 03 E2 0C */ stwu r0, lbl_8046E20C@l(r3) /* 802C0B20 002BDA80 94 03 E2 0C */ stwu r0, sBucketIndex__7Buckets@l(r3)
/* 802C0B24 002BDA84 48 0C 8B 69 */ bl __register_global_object /* 802C0B24 002BDA84 48 0C 8B 69 */ bl __register_global_object
/* 802C0B28 002BDA88 C0 2D A6 04 */ lfs f1, lbl_805A91C4@sda21(r13) /* 802C0B28 002BDA88 C0 2D A6 04 */ lfs f1, skWorstMinMaxDistance__7Buckets@sda21(r13)
/* 802C0B2C 002BDA8C 38 6D A6 14 */ addi r3, r13, lbl_805A91D4@sda21 /* 802C0B2C 002BDA8C 38 6D A6 14 */ addi r3, r13, sMinMaxDistance__7Buckets@sda21
/* 802C0B30 002BDA90 C0 1F 00 04 */ lfs f0, 4(r31) /* 802C0B30 002BDA90 C0 1F 00 04 */ lfs f0, 4(r31)
/* 802C0B34 002BDA94 D0 2D A6 14 */ stfs f1, lbl_805A91D4@sda21(r13) /* 802C0B34 002BDA94 D0 2D A6 14 */ stfs f1, sMinMaxDistance__7Buckets@sda21(r13)
/* 802C0B38 002BDA98 D0 03 00 04 */ stfs f0, 4(r3) /* 802C0B38 002BDA98 D0 03 00 04 */ stfs f0, 4(r3)
/* 802C0B3C 002BDA9C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802C0B3C 002BDA9C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802C0B40 002BDAA0 80 01 00 24 */ lwz r0, 0x24(r1) /* 802C0B40 002BDAA0 80 01 00 24 */ lwz r0, 0x24(r1)

View File

@ -3107,12 +3107,21 @@ lbl_8002797C:
/* 80027A3C 0002499C 48 31 93 49 */ bl Lock__6CTokenFv /* 80027A3C 0002499C 48 31 93 49 */ bl Lock__6CTokenFv
/* 80027A40 000249A0 80 1F 00 18 */ lwz r0, 0x18(r31) /* 80027A40 000249A0 80 1F 00 18 */ lwz r0, 0x18(r31)
/* 80027A44 000249A4 38 E0 00 00 */ li r7, 0 /* 80027A44 000249A4 38 E0 00 00 */ li r7, 0
.if version >= 2
/* 80027ABC 00024A1C 2C 00 00 00 */ cmpwi r0, 0
/* 80027AC0 00024A20 41 82 00 14 */ beq lbl_80027A60
/* 80027AC4 00024A24 41 80 00 1C */ blt lbl_80027A6C
/* 80027AC8 00024A28 2C 00 00 03 */ cmpwi r0, 3
/* 80027A58 000249B8 40 80 00 08 */ bge lbl_80027A6C
/* 80027A5C 000249BC 48 00 00 10 */ b lbl_80027A68
.else
/* 80027A48 000249A8 2C 00 00 02 */ cmpwi r0, 2 /* 80027A48 000249A8 2C 00 00 02 */ cmpwi r0, 2
/* 80027A4C 000249AC 41 82 00 1C */ beq lbl_80027A68 /* 80027A4C 000249AC 41 82 00 1C */ beq lbl_80027A68
/* 80027A50 000249B0 40 80 00 1C */ bge lbl_80027A6C /* 80027A50 000249B0 40 80 00 1C */ bge lbl_80027A6C
/* 80027A54 000249B4 2C 00 00 00 */ cmpwi r0, 0 /* 80027A54 000249B4 2C 00 00 00 */ cmpwi r0, 0
/* 80027A58 000249B8 40 80 00 08 */ bge lbl_80027A60 /* 80027A58 000249B8 40 80 00 08 */ bge lbl_80027A60
/* 80027A5C 000249BC 48 00 00 10 */ b lbl_80027A6C /* 80027A5C 000249BC 48 00 00 10 */ b lbl_80027A6C
.endif
lbl_80027A60: lbl_80027A60:
/* 80027A60 000249C0 38 E0 00 00 */ li r7, 0 /* 80027A60 000249C0 38 E0 00 00 */ li r7, 0
/* 80027A64 000249C4 48 00 00 08 */ b lbl_80027A6C /* 80027A64 000249C4 48 00 00 08 */ b lbl_80027A6C

View File

@ -1016,7 +1016,7 @@ lbl_8019A64C:
lbl_8019A684: lbl_8019A684:
/* 8019A684 001975E4 88 12 00 1C */ lbz r0, 0x1c(r18) /* 8019A684 001975E4 88 12 00 1C */ lbz r0, 0x1c(r18)
/* 8019A688 001975E8 3B 20 00 00 */ li r25, 0 /* 8019A688 001975E8 3B 20 00 00 */ li r25, 0
/* 8019A68C 001975EC 80 6D A5 F0 */ lwz r3, lbl_805A91B0@sda21(r13) /* 8019A68C 001975EC 80 6D A5 F0 */ lwz r3, sRenderer__13CCubeRenderer@sda21(r13)
/* 8019A690 001975F0 3B 00 00 00 */ li r24, 0 /* 8019A690 001975F0 3B 00 00 00 */ li r24, 0
/* 8019A694 001975F4 28 00 00 00 */ cmplwi r0, 0 /* 8019A694 001975F4 28 00 00 00 */ cmplwi r0, 0
/* 8019A698 001975F8 39 C3 00 E4 */ addi r14, r3, 0xe4 /* 8019A698 001975F8 39 C3 00 E4 */ addi r14, r3, 0xe4

View File

@ -127,12 +127,16 @@ MetroidBuildInfo:
.ascii "!#$MetroidBuildInfo!#$" .ascii "!#$MetroidBuildInfo!#$"
.global BuildString .global BuildString
BuildString: BuildString:
.if version == 1 .if version == 2
.asciz "Build v1.097 12/19/2002 16:03:43"
.asciz "AD"
.elseif version == 1
.asciz "Build v1.093 11/5/2002 19:50:01" .asciz "Build v1.093 11/5/2002 19:50:01"
.asciz "PAD"
.else .else
.asciz "Build v1.088 10/29/2002 2:21:25" .asciz "Build v1.088 10/29/2002 2:21:25"
.endif
.asciz "PAD" .asciz "PAD"
.endif
.balign 4 .balign 4
.global lbl_803CC5C4 .global lbl_803CC5C4

View File

@ -3,18 +3,17 @@
.section .data .section .data
.balign 8 .balign 8
.global lbl_803E8C18 Update_jumptable:
lbl_803E8C18:
# ROM: 0x3E5C18 # ROM: 0x3E5C18
.4byte lbl_80248960 .4byte Update_case0
.4byte lbl_80248B54 .4byte Update_default
.4byte lbl_802489EC .4byte Update_case2
.4byte lbl_802489FC .4byte Update_case3
.4byte lbl_80248A80 .4byte Update_case4
.4byte lbl_80248AB0 .4byte Update_case5
.4byte lbl_80248AF8 .4byte Update_case6
.4byte lbl_80248B54 .4byte Update_default
.4byte lbl_80248B54 .4byte Update_default
.4byte 0 .4byte 0
.section .sdata .section .sdata
@ -39,6 +38,266 @@ lbl_805A9110:
.section .text, "ax" .section .text, "ax"
.if version == 2
.global PollResponse__11CGBASupportFv
PollResponse__11CGBASupportFv:
/* 80248648 002455A8 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8024864C 002455AC 7C 08 02 A6 */ mflr r0
/* 80248650 002455B0 90 01 00 34 */ stw r0, 0x34(r1)
/* 80248654 002455B4 38 81 00 08 */ addi r4, r1, 0x8
/* 80248658 002455B8 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 8024865C 002455BC 7C 7F 1B 78 */ mr r31, r3
/* 80248660 002455C0 93 C1 00 28 */ stw r30, 0x28(r1)
/* 80248664 002455C4 93 A1 00 24 */ stw r29, 0x24(r1)
/* 80248668 002455C8 93 81 00 20 */ stw r28, 0x20(r1)
/* 8024866C 002455CC 80 63 00 40 */ lwz r3, 0x40(r3)
/* 80248670 002455D0 48 18 12 DD */ bl GBAReset
/* 80248674 002455D4 2C 03 00 01 */ cmpwi r3, 0x1
/* 80248678 002455D8 40 82 00 20 */ bne lbl_80248698
/* 8024867C 002455DC 80 7F 00 40 */ lwz r3, 0x40(r31)
/* 80248680 002455E0 38 81 00 08 */ addi r4, r1, 0x8
/* 80248684 002455E4 48 18 12 C9 */ bl GBAReset
/* 80248688 002455E8 2C 03 00 01 */ cmpwi r3, 0x1
/* 8024868C 002455EC 40 82 00 0C */ bne lbl_80248698
/* 80248690 002455F0 38 60 00 00 */ li r3, 0x0
/* 80248694 002455F4 48 00 03 00 */ b lbl_80248994
lbl_80248698:
/* 80248698 002455F8 80 7F 00 40 */ lwz r3, 0x40(r31)
/* 8024869C 002455FC 38 81 00 08 */ addi r4, r1, 0x8
/* 802486A0 00245600 48 18 11 B9 */ bl GBAGetStatus
/* 802486A4 00245604 2C 03 00 01 */ cmpwi r3, 0x1
/* 802486A8 00245608 40 82 00 0C */ bne lbl_802486B4
/* 802486AC 0024560C 38 60 00 00 */ li r3, 0x0
/* 802486B0 00245610 48 00 02 E4 */ b lbl_80248994
lbl_802486B4:
/* 802486B4 00245614 88 01 00 08 */ lbz r0, 0x8(r1)
/* 802486B8 00245618 28 00 00 28 */ cmplwi r0, 0x28
/* 802486BC 0024561C 41 82 00 0C */ beq lbl_802486C8
/* 802486C0 00245620 38 60 00 00 */ li r3, 0x0
/* 802486C4 00245624 48 00 02 D0 */ b lbl_80248994
lbl_802486C8:
/* 802486C8 00245628 48 13 89 ED */ bl OSGetFontEncode
/* 802486CC 0024562C 54 60 04 3E */ clrlwi r0, r3, 16
/* 802486D0 00245630 3C 60 41 4D */ lis r3, 0x414d
/* 802486D4 00245634 20 00 00 01 */ subfic r0, r0, 0x1
/* 802486D8 00245638 7C 00 00 34 */ cntlzw r0, r0
/* 802486DC 0024563C 38 83 54 45 */ addi r4, r3, 0x5445
/* 802486E0 00245640 54 00 DE 3F */ rlwinm. r0, r0, 27, 24, 31
/* 802486E4 00245644 41 82 00 08 */ beq lbl_802486EC
/* 802486E8 00245648 38 83 54 4A */ addi r4, r3, 0x544a
lbl_802486EC:
/* 802486EC 0024564C 90 81 00 18 */ stw r4, 0x18(r1)
/* 802486F0 00245650 38 81 00 14 */ addi r4, r1, 0x14
/* 802486F4 00245654 80 7F 00 40 */ lwz r3, 0x40(r31)
/* 802486F8 00245658 38 A1 00 08 */ addi r5, r1, 0x8
/* 802486FC 0024565C 48 18 23 F5 */ bl GBARead
/* 80248700 00245660 2C 03 00 01 */ cmpwi r3, 0x1
/* 80248704 00245664 40 82 00 0C */ bne lbl_80248710
/* 80248708 00245668 38 60 00 00 */ li r3, 0x0
/* 8024870C 0024566C 48 00 02 88 */ b lbl_80248994
lbl_80248710:
/* 80248710 00245670 80 61 00 14 */ lwz r3, 0x14(r1)
/* 80248714 00245674 80 01 00 18 */ lwz r0, 0x18(r1)
/* 80248718 00245678 7C 03 00 40 */ cmplw r3, r0
/* 8024871C 0024567C 41 82 00 0C */ beq lbl_80248728
/* 80248720 00245680 38 60 00 00 */ li r3, 0x0
/* 80248724 00245684 48 00 02 70 */ b lbl_80248994
lbl_80248728:
/* 80248728 00245688 80 7F 00 40 */ lwz r3, 0x40(r31)
/* 8024872C 0024568C 38 81 00 08 */ addi r4, r1, 0x8
/* 80248730 00245690 48 18 11 29 */ bl GBAGetStatus
/* 80248734 00245694 2C 03 00 01 */ cmpwi r3, 0x1
/* 80248738 00245698 40 82 00 0C */ bne lbl_80248744
/* 8024873C 0024569C 38 60 00 00 */ li r3, 0x0
/* 80248740 002456A0 48 00 02 54 */ b lbl_80248994
lbl_80248744:
/* 80248744 002456A4 88 01 00 08 */ lbz r0, 0x8(r1)
/* 80248748 002456A8 28 00 00 20 */ cmplwi r0, 0x20
/* 8024874C 002456AC 41 82 00 0C */ beq lbl_80248758
/* 80248750 002456B0 38 60 00 00 */ li r3, 0x0
/* 80248754 002456B4 48 00 02 40 */ b lbl_80248994
lbl_80248758:
/* 80248758 002456B8 80 7F 00 40 */ lwz r3, 0x40(r31)
/* 8024875C 002456BC 38 81 00 18 */ addi r4, r1, 0x18
/* 80248760 002456C0 38 A1 00 08 */ addi r5, r1, 0x8
/* 80248764 002456C4 48 18 24 E5 */ bl GBAWrite
/* 80248768 002456C8 2C 03 00 01 */ cmpwi r3, 0x1
/* 8024876C 002456CC 40 82 00 0C */ bne lbl_80248778
/* 80248770 002456D0 38 60 00 00 */ li r3, 0x0
/* 80248774 002456D4 48 00 02 20 */ b lbl_80248994
lbl_80248778:
/* 80248778 002456D8 80 7F 00 40 */ lwz r3, 0x40(r31)
/* 8024877C 002456DC 38 81 00 08 */ addi r4, r1, 0x8
/* 80248780 002456E0 48 18 10 D9 */ bl GBAGetStatus
/* 80248784 002456E4 2C 03 00 01 */ cmpwi r3, 0x1
/* 80248788 002456E8 40 82 00 0C */ bne lbl_80248794
/* 8024878C 002456EC 38 60 00 00 */ li r3, 0x0
/* 80248790 002456F0 48 00 02 04 */ b lbl_80248994
lbl_80248794:
/* 80248794 002456F4 88 01 00 08 */ lbz r0, 0x8(r1)
/* 80248798 002456F8 54 00 06 B6 */ rlwinm r0, r0, 0, 26, 27
/* 8024879C 002456FC 2C 00 00 30 */ cmpwi r0, 0x30
/* 802487A0 00245700 41 82 00 0C */ beq lbl_802487AC
/* 802487A4 00245704 38 60 00 00 */ li r3, 0x0
/* 802487A8 00245708 48 00 01 EC */ b lbl_80248994
lbl_802487AC:
/* 802487AC 0024570C 48 13 CD 19 */ bl OSGetTick
/* 802487B0 00245710 3C 80 43 1C */ lis r4, 0x431c
/* 802487B4 00245714 7C 7C 1B 78 */ mr r28, r3
/* 802487B8 00245718 3B A4 DE 83 */ addi r29, r4, -0x217d
/* 802487BC 0024571C 3F C0 80 00 */ lis r30, 0x800000F8@ha
lbl_802487C0:
/* 802487C0 00245720 48 13 CD 05 */ bl OSGetTick
/* 802487C4 00245724 80 1E 00 F8 */ lwz r0, 0x800000F8@l(r30)
/* 802487C8 00245728 7C 7C 18 50 */ subf r3, r28, r3
/* 802487CC 0024572C 54 63 18 38 */ slwi r3, r3, 3
/* 802487D0 00245730 54 00 F0 BE */ srwi r0, r0, 2
/* 802487D4 00245734 7C 1D 00 16 */ mulhwu r0, r29, r0
/* 802487D8 00245738 54 00 8B FE */ srwi r0, r0, 15
/* 802487DC 0024573C 7C 03 03 96 */ divwu r0, r3, r0
/* 802487E0 00245740 28 00 01 F4 */ cmplwi r0, 0x1f4
/* 802487E4 00245744 41 81 01 AC */ bgt lbl_80248990
/* 802487E8 00245748 80 7F 00 40 */ lwz r3, 0x40(r31)
/* 802487EC 0024574C 38 81 00 08 */ addi r4, r1, 0x8
/* 802487F0 00245750 48 18 10 69 */ bl GBAGetStatus
/* 802487F4 00245754 2C 03 00 01 */ cmpwi r3, 0x1
/* 802487F8 00245758 41 82 FF C8 */ beq lbl_802487C0
/* 802487FC 0024575C 88 01 00 08 */ lbz r0, 0x8(r1)
/* 80248800 00245760 54 00 07 39 */ rlwinm. r0, r0, 0, 28, 28
/* 80248804 00245764 41 82 FF BC */ beq lbl_802487C0
/* 80248808 00245768 80 7F 00 40 */ lwz r3, 0x40(r31)
/* 8024880C 0024576C 38 81 00 08 */ addi r4, r1, 0x8
/* 80248810 00245770 48 18 10 49 */ bl GBAGetStatus
/* 80248814 00245774 2C 03 00 00 */ cmpwi r3, 0x0
/* 80248818 00245778 40 82 FF A8 */ bne lbl_802487C0
/* 8024881C 0024577C 88 01 00 08 */ lbz r0, 0x8(r1)
/* 80248820 00245780 28 00 00 38 */ cmplwi r0, 0x38
/* 80248824 00245784 40 82 FF 9C */ bne lbl_802487C0
/* 80248828 00245788 80 7F 00 40 */ lwz r3, 0x40(r31)
/* 8024882C 0024578C 38 81 00 10 */ addi r4, r1, 0x10
/* 80248830 00245790 38 A1 00 08 */ addi r5, r1, 0x8
/* 80248834 00245794 48 18 22 BD */ bl GBARead
/* 80248838 00245798 2C 03 00 00 */ cmpwi r3, 0x0
/* 8024883C 0024579C 41 82 00 0C */ beq lbl_80248848
/* 80248840 002457A0 38 60 00 00 */ li r3, 0x0
/* 80248844 002457A4 48 00 01 50 */ b lbl_80248994
lbl_80248848:
/* 80248848 002457A8 81 01 00 10 */ lwz r8, 0x10(r1)
/* 8024884C 002457AC 38 C1 00 0C */ addi r6, r1, 0xc
/* 80248850 002457B0 38 E0 00 03 */ li r7, 0x3
/* 80248854 002457B4 38 A0 FF FF */ li r5, -0x1
/* 80248858 002457B8 55 04 46 3E */ srwi r4, r8, 24
/* 8024885C 002457BC 55 03 86 3E */ rlwinm r3, r8, 16, 24, 31
/* 80248860 002457C0 55 00 C6 3E */ rlwinm r0, r8, 24, 24, 31
/* 80248864 002457C4 98 81 00 0C */ stb r4, 0xc(r1)
/* 80248868 002457C8 98 61 00 0D */ stb r3, 0xd(r1)
/* 8024886C 002457CC 98 01 00 0E */ stb r0, 0xe(r1)
/* 80248870 002457D0 99 01 00 0F */ stb r8, 0xf(r1)
lbl_80248874:
/* 80248874 002457D4 88 06 00 00 */ lbz r0, 0x0(r6)
/* 80248878 002457D8 38 C6 00 01 */ addi r6, r6, 0x1
/* 8024887C 002457DC 7C A5 02 78 */ xor r5, r5, r0
/* 80248880 002457E0 54 A0 07 FF */ clrlwi. r0, r5, 31
/* 80248884 002457E4 41 82 00 10 */ beq lbl_80248894
/* 80248888 002457E8 54 A5 F8 7E */ srwi r5, r5, 1
/* 8024888C 002457EC 68 A5 B0 10 */ xori r5, r5, 0xb010
/* 80248890 002457F0 48 00 00 08 */ b lbl_80248898
lbl_80248894:
/* 80248894 002457F4 54 A5 F8 7E */ srwi r5, r5, 1
lbl_80248898:
/* 80248898 002457F8 54 A0 07 FF */ clrlwi. r0, r5, 31
/* 8024889C 002457FC 41 82 00 10 */ beq lbl_802488AC
/* 802488A0 00245800 54 A5 F8 7E */ srwi r5, r5, 1
/* 802488A4 00245804 68 A5 B0 10 */ xori r5, r5, 0xb010
/* 802488A8 00245808 48 00 00 08 */ b lbl_802488B0
lbl_802488AC:
/* 802488AC 0024580C 54 A5 F8 7E */ srwi r5, r5, 1
lbl_802488B0:
/* 802488B0 00245810 54 A0 07 FF */ clrlwi. r0, r5, 31
/* 802488B4 00245814 41 82 00 10 */ beq lbl_802488C4
/* 802488B8 00245818 54 A5 F8 7E */ srwi r5, r5, 1
/* 802488BC 0024581C 68 A5 B0 10 */ xori r5, r5, 0xb010
/* 802488C0 00245820 48 00 00 08 */ b lbl_802488C8
lbl_802488C4:
/* 802488C4 00245824 54 A5 F8 7E */ srwi r5, r5, 1
lbl_802488C8:
/* 802488C8 00245828 54 A0 07 FF */ clrlwi. r0, r5, 31
/* 802488CC 0024582C 41 82 00 10 */ beq lbl_802488DC
/* 802488D0 00245830 54 A5 F8 7E */ srwi r5, r5, 1
/* 802488D4 00245834 68 A5 B0 10 */ xori r5, r5, 0xb010
/* 802488D8 00245838 48 00 00 08 */ b lbl_802488E0
lbl_802488DC:
/* 802488DC 0024583C 54 A5 F8 7E */ srwi r5, r5, 1
lbl_802488E0:
/* 802488E0 00245840 54 A0 07 FF */ clrlwi. r0, r5, 31
/* 802488E4 00245844 41 82 00 10 */ beq lbl_802488F4
/* 802488E8 00245848 54 A5 F8 7E */ srwi r5, r5, 1
/* 802488EC 0024584C 68 A5 B0 10 */ xori r5, r5, 0xb010
/* 802488F0 00245850 48 00 00 08 */ b lbl_802488F8
lbl_802488F4:
/* 802488F4 00245854 54 A5 F8 7E */ srwi r5, r5, 1
lbl_802488F8:
/* 802488F8 00245858 54 A0 07 FF */ clrlwi. r0, r5, 31
/* 802488FC 0024585C 41 82 00 10 */ beq lbl_8024890C
/* 80248900 00245860 54 A5 F8 7E */ srwi r5, r5, 1
/* 80248904 00245864 68 A5 B0 10 */ xori r5, r5, 0xb010
/* 80248908 00245868 48 00 00 08 */ b lbl_80248910
lbl_8024890C:
/* 8024890C 0024586C 54 A5 F8 7E */ srwi r5, r5, 1
lbl_80248910:
/* 80248910 00245870 54 A0 07 FF */ clrlwi. r0, r5, 31
/* 80248914 00245874 41 82 00 10 */ beq lbl_80248924
/* 80248918 00245878 54 A5 F8 7E */ srwi r5, r5, 1
/* 8024891C 0024587C 68 A5 B0 10 */ xori r5, r5, 0xb010
/* 80248920 00245880 48 00 00 08 */ b lbl_80248928
lbl_80248924:
/* 80248924 00245884 54 A5 F8 7E */ srwi r5, r5, 1
lbl_80248928:
/* 80248928 00245888 54 A0 07 FF */ clrlwi. r0, r5, 31
/* 8024892C 0024588C 41 82 00 10 */ beq lbl_8024893C
/* 80248930 00245890 54 A5 F8 7E */ srwi r5, r5, 1
/* 80248934 00245894 68 A5 B0 10 */ xori r5, r5, 0xb010
/* 80248938 00245898 48 00 00 08 */ b lbl_80248940
lbl_8024893C:
/* 8024893C 0024589C 54 A5 F8 7E */ srwi r5, r5, 1
lbl_80248940:
/* 80248940 002458A0 34 E7 FF FF */ addic. r7, r7, -0x1
/* 80248944 002458A4 40 82 FF 30 */ bne lbl_80248874
/* 80248948 002458A8 88 61 00 0F */ lbz r3, 0xf(r1)
/* 8024894C 002458AC 54 A0 06 3E */ clrlwi r0, r5, 24
/* 80248950 002458B0 7C 03 00 40 */ cmplw r3, r0
/* 80248954 002458B4 41 82 00 0C */ beq lbl_80248960_
/* 80248958 002458B8 38 60 00 00 */ li r3, 0x0
/* 8024895C 002458BC 48 00 00 38 */ b lbl_80248994
lbl_80248960_:
/* 80248960 002458C0 88 81 00 0E */ lbz r4, 0xe(r1)
/* 80248964 002458C4 38 60 00 00 */ li r3, 0x0
/* 80248968 002458C8 54 80 FF FE */ rlwinm r0, r4, 31, 31, 31
/* 8024896C 002458CC 68 00 00 01 */ xori r0, r0, 0x1
/* 80248970 002458D0 98 1F 00 44 */ stb r0, 0x44(r31)
/* 80248974 002458D4 88 1F 00 44 */ lbz r0, 0x44(r31)
/* 80248978 002458D8 28 00 00 00 */ cmplwi r0, 0x0
/* 8024897C 002458DC 41 82 00 10 */ beq lbl_8024898C
/* 80248980 002458E0 54 80 07 FF */ clrlwi. r0, r4, 31
/* 80248984 002458E4 40 81 00 08 */ ble lbl_8024898C
/* 80248988 002458E8 38 60 00 01 */ li r3, 0x1
lbl_8024898C:
/* 8024898C 002458EC 98 7F 00 45 */ stb r3, 0x45(r31)
lbl_80248990:
/* 80248990 002458F0 38 60 00 01 */ li r3, 0x1
lbl_80248994:
/* 80248994 002458F4 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80248998 002458F8 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 8024899C 002458FC 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 802489A0 00245900 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 802489A4 00245904 83 81 00 20 */ lwz r28, 0x20(r1)
/* 802489A8 00245908 7C 08 03 A6 */ mtlr r0
/* 802489AC 0024590C 38 21 00 30 */ addi r1, r1, 0x30
/* 802489B0 00245910 4E 80 00 20 */ blr
.else
.global PollResponse__11CGBASupportFv .global PollResponse__11CGBASupportFv
PollResponse__11CGBASupportFv: PollResponse__11CGBASupportFv:
/* 802485D4 00245534 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802485D4 00245534 94 21 FF D0 */ stwu r1, -0x30(r1)
@ -284,6 +543,8 @@ lbl_802488F8:
/* 80248910 00245870 38 21 00 30 */ addi r1, r1, 0x30 /* 80248910 00245870 38 21 00 30 */ addi r1, r1, 0x30
/* 80248914 00245874 4E 80 00 20 */ blr /* 80248914 00245874 4E 80 00 20 */ blr
.endif
.global Update__11CGBASupportFv .global Update__11CGBASupportFv
Update__11CGBASupportFv: Update__11CGBASupportFv:
/* 80248918 00245878 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80248918 00245878 94 21 FF D0 */ stwu r1, -0x30(r1)
@ -297,24 +558,23 @@ Update__11CGBASupportFv:
/* 80248938 00245898 FF E0 08 90 */ fmr f31, f1 /* 80248938 00245898 FF E0 08 90 */ fmr f31, f1
/* 8024893C 0024589C 80 A3 00 34 */ lwz r5, 0x34(r3) /* 8024893C 0024589C 80 A3 00 34 */ lwz r5, 0x34(r3)
/* 80248940 002458A0 28 05 00 08 */ cmplwi r5, 8 /* 80248940 002458A0 28 05 00 08 */ cmplwi r5, 8
/* 80248944 002458A4 41 81 02 10 */ bgt lbl_80248B54 /* 80248944 002458A4 41 81 02 10 */ bgt Update_default
/* 80248948 002458A8 3C 80 80 3F */ lis r4, lbl_803E8C18@ha /* 80248948 002458A8 3C 80 80 3F */ lis r4, Update_jumptable@ha
/* 8024894C 002458AC 54 A0 10 3A */ slwi r0, r5, 2 /* 8024894C 002458AC 54 A0 10 3A */ slwi r0, r5, 2
/* 80248950 002458B0 38 84 8C 18 */ addi r4, r4, lbl_803E8C18@l /* 80248950 002458B0 38 84 8C 18 */ addi r4, r4, Update_jumptable@l
/* 80248954 002458B4 7C 04 00 2E */ lwzx r0, r4, r0 /* 80248954 002458B4 7C 04 00 2E */ lwzx r0, r4, r0
/* 80248958 002458B8 7C 09 03 A6 */ mtctr r0 /* 80248958 002458B8 7C 09 03 A6 */ mtctr r0
/* 8024895C 002458BC 4E 80 04 20 */ bctr /* 8024895C 002458BC 4E 80 04 20 */ bctr
.global lbl_80248960 Update_case0:
lbl_80248960:
/* 80248960 002458C0 2C 05 00 00 */ cmpwi r5, 0 /* 80248960 002458C0 2C 05 00 00 */ cmpwi r5, 0
/* 80248964 002458C4 40 82 01 F0 */ bne lbl_80248B54 /* 80248964 002458C4 40 82 01 F0 */ bne Update_default
/* 80248968 002458C8 80 7F 00 30 */ lwz r3, 0x30(r31) /* 80248968 002458C8 80 7F 00 30 */ lwz r3, 0x30(r31)
/* 8024896C 002458CC 81 83 00 00 */ lwz r12, 0(r3) /* 8024896C 002458CC 81 83 00 00 */ lwz r12, 0(r3)
/* 80248970 002458D0 81 8C 00 10 */ lwz r12, 0x10(r12) /* 80248970 002458D0 81 8C 00 10 */ lwz r12, 0x10(r12)
/* 80248974 002458D4 7D 89 03 A6 */ mtctr r12 /* 80248974 002458D4 7D 89 03 A6 */ mtctr r12
/* 80248978 002458D8 4E 80 04 21 */ bctrl /* 80248978 002458D8 4E 80 04 21 */ bctrl
/* 8024897C 002458DC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8024897C 002458DC 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80248980 002458E0 41 82 01 D4 */ beq lbl_80248B54 /* 80248980 002458E0 41 82 01 D4 */ beq Update_default
/* 80248984 002458E4 80 7F 00 30 */ lwz r3, 0x30(r31) /* 80248984 002458E4 80 7F 00 30 */ lwz r3, 0x30(r31)
/* 80248988 002458E8 28 03 00 00 */ cmplwi r3, 0 /* 80248988 002458E8 28 03 00 00 */ cmplwi r3, 0
/* 8024898C 002458EC 41 82 00 18 */ beq lbl_802489A4 /* 8024898C 002458EC 41 82 00 18 */ beq lbl_802489A4
@ -331,6 +591,29 @@ lbl_802489A4:
/* 802489B4 00245914 83 FF 00 2C */ lwz r31, 0x2c(r31) /* 802489B4 00245914 83 FF 00 2C */ lwz r31, 0x2c(r31)
/* 802489B8 00245918 48 13 CA 09 */ bl OSGetTick /* 802489B8 00245918 48 13 CA 09 */ bl OSGetTick
/* 802489BC 0024591C 98 7F 00 C8 */ stb r3, 0xc8(r31) /* 802489BC 0024591C 98 7F 00 C8 */ stb r3, 0xc8(r31)
.if version >= 2
/* 80248A5C 002459BC 54 65 C6 3E */ rlwinm r5, r3, 24, 24, 31
/* 80248A60 002459C0 54 64 86 3E */ rlwinm r4, r3, 16, 24, 31
/* 80248A64 002459C4 54 60 46 3E */ srwi r0, r3, 24
/* 80248A68 002459C8 98 BF 00 C9 */ stb r5, 0xc9(r31)
/* 80248A6C 002459CC 98 9F 00 CA */ stb r4, 0xca(r31)
/* 80248A70 002459D0 98 1F 00 CB */ stb r0, 0xcb(r31)
/* 80248A74 002459D4 48 13 86 41 */ bl OSGetFontEncode
/* 80248A78 002459D8 54 60 04 3E */ clrlwi r0, r3, 16
/* 80248A7C 002459DC 28 00 00 01 */ cmplwi r0, 0x1
/* 80248A80 002459E0 40 82 00 18 */ bne lbl_80248A98
/* 80248A84 002459E4 38 60 00 4A */ li r3, 0x4a
/* 80248A88 002459E8 38 00 00 C4 */ li r0, 0xc4
/* 80248A8C 002459EC 98 7F 00 AF */ stb r3, 0xaf(r31)
/* 80248A90 002459F0 98 1F 00 BD */ stb r0, 0xbd(r31)
/* 80248A94 002459F4 48 00 01 80 */ b Update_default
lbl_80248A98:
/* 80248A98 002459F8 38 60 00 45 */ li r3, 0x45
/* 80248A9C 002459FC 38 00 00 C9 */ li r0, 0xc9
/* 80248AA0 00245A00 98 7F 00 AF */ stb r3, 0xaf(r31)
/* 80248AA4 00245A04 98 1F 00 BD */ stb r0, 0xbd(r31)
/* 80248AA8 00245A08 48 00 01 6C */ b Update_default
.else
/* 802489C0 00245920 54 60 C6 3E */ rlwinm r0, r3, 0x18, 0x18, 0x1f /* 802489C0 00245920 54 60 C6 3E */ rlwinm r0, r3, 0x18, 0x18, 0x1f
/* 802489C4 00245924 54 65 86 3E */ rlwinm r5, r3, 0x10, 0x18, 0x1f /* 802489C4 00245924 54 65 86 3E */ rlwinm r5, r3, 0x10, 0x18, 0x1f
/* 802489C8 00245928 54 64 46 3E */ srwi r4, r3, 0x18 /* 802489C8 00245928 54 64 46 3E */ srwi r4, r3, 0x18
@ -341,15 +624,14 @@ lbl_802489A4:
/* 802489DC 0024593C 98 9F 00 CB */ stb r4, 0xcb(r31) /* 802489DC 0024593C 98 9F 00 CB */ stb r4, 0xcb(r31)
/* 802489E0 00245940 98 7F 00 AF */ stb r3, 0xaf(r31) /* 802489E0 00245940 98 7F 00 AF */ stb r3, 0xaf(r31)
/* 802489E4 00245944 98 1F 00 BD */ stb r0, 0xbd(r31) /* 802489E4 00245944 98 1F 00 BD */ stb r0, 0xbd(r31)
/* 802489E8 00245948 48 00 01 6C */ b lbl_80248B54 /* 802489E8 00245948 48 00 01 6C */ b Update_default
.global lbl_802489EC .endif
lbl_802489EC: Update_case2:
/* 802489EC 0024594C C0 02 B8 7C */ lfs f0, lbl_805AD59C@sda21(r2) /* 802489EC 0024594C C0 02 B8 7C */ lfs f0, lbl_805AD59C@sda21(r2)
/* 802489F0 00245950 38 00 00 03 */ li r0, 3 /* 802489F0 00245950 38 00 00 03 */ li r0, 3
/* 802489F4 00245954 D0 1F 00 38 */ stfs f0, 0x38(r31) /* 802489F4 00245954 D0 1F 00 38 */ stfs f0, 0x38(r31)
/* 802489F8 00245958 90 1F 00 34 */ stw r0, 0x34(r31) /* 802489F8 00245958 90 1F 00 34 */ stw r0, 0x34(r31)
.global lbl_802489FC Update_case3:
lbl_802489FC:
/* 802489FC 0024595C 3B C0 00 01 */ li r30, 1 /* 802489FC 0024595C 3B C0 00 01 */ li r30, 1
lbl_80248A00: lbl_80248A00:
/* 80248A00 00245960 7F C3 F3 78 */ mr r3, r30 /* 80248A00 00245960 7F C3 F3 78 */ mr r3, r30
@ -362,7 +644,7 @@ lbl_80248A00:
/* 80248A1C 0024597C C0 02 B8 7C */ lfs f0, lbl_805AD59C@sda21(r2) /* 80248A1C 0024597C C0 02 B8 7C */ lfs f0, lbl_805AD59C@sda21(r2)
/* 80248A20 00245980 90 1F 00 34 */ stw r0, 0x34(r31) /* 80248A20 00245980 90 1F 00 34 */ stw r0, 0x34(r31)
/* 80248A24 00245984 D0 1F 00 38 */ stfs f0, 0x38(r31) /* 80248A24 00245984 D0 1F 00 38 */ stfs f0, 0x38(r31)
/* 80248A28 00245988 48 00 01 2C */ b lbl_80248B54 /* 80248A28 00245988 48 00 01 2C */ b Update_default
lbl_80248A2C: lbl_80248A2C:
/* 80248A2C 0024598C 3B DE 00 01 */ addi r30, r30, 1 /* 80248A2C 0024598C 3B DE 00 01 */ addi r30, r30, 1
/* 80248A30 00245990 2C 1E 00 04 */ cmpwi r30, 4 /* 80248A30 00245990 2C 1E 00 04 */ cmpwi r30, 4
@ -383,12 +665,11 @@ lbl_80248A5C:
/* 80248A64 002459C4 D0 1F 00 38 */ stfs f0, 0x38(r31) /* 80248A64 002459C4 D0 1F 00 38 */ stfs f0, 0x38(r31)
/* 80248A68 002459C8 C0 1F 00 38 */ lfs f0, 0x38(r31) /* 80248A68 002459C8 C0 1F 00 38 */ lfs f0, 0x38(r31)
/* 80248A6C 002459CC FC 01 00 00 */ fcmpu cr0, f1, f0 /* 80248A6C 002459CC FC 01 00 00 */ fcmpu cr0, f1, f0
/* 80248A70 002459D0 40 82 00 E4 */ bne lbl_80248B54 /* 80248A70 002459D0 40 82 00 E4 */ bne Update_default
/* 80248A74 002459D4 38 00 00 08 */ li r0, 8 /* 80248A74 002459D4 38 00 00 08 */ li r0, 8
/* 80248A78 002459D8 90 1F 00 34 */ stw r0, 0x34(r31) /* 80248A78 002459D8 90 1F 00 34 */ stw r0, 0x34(r31)
/* 80248A7C 002459DC 48 00 00 D8 */ b lbl_80248B54 /* 80248A7C 002459DC 48 00 00 D8 */ b Update_default
.global lbl_80248A80 Update_case4:
lbl_80248A80:
/* 80248A80 002459E0 38 00 00 05 */ li r0, 5 /* 80248A80 002459E0 38 00 00 05 */ li r0, 5
/* 80248A84 002459E4 3C 60 80 25 */ lis r3, nullsub_130@ha /* 80248A84 002459E4 3C 60 80 25 */ lis r3, nullsub_130@ha
/* 80248A88 002459E8 90 1F 00 34 */ stw r0, 0x34(r31) /* 80248A88 002459E8 90 1F 00 34 */ stw r0, 0x34(r31)
@ -400,14 +681,13 @@ lbl_80248A80:
/* 80248AA0 00245A00 80 FF 00 14 */ lwz r7, 0x14(r31) /* 80248AA0 00245A00 80 FF 00 14 */ lwz r7, 0x14(r31)
/* 80248AA4 00245A04 54 64 08 3C */ slwi r4, r3, 1 /* 80248AA4 00245A04 54 64 08 3C */ slwi r4, r3, 1
/* 80248AA8 00245A08 48 18 0F B5 */ bl GBAJoyBootAsync /* 80248AA8 00245A08 48 18 0F B5 */ bl GBAJoyBootAsync
/* 80248AAC 00245A0C 48 00 00 A8 */ b lbl_80248B54 /* 80248AAC 00245A0C 48 00 00 A8 */ b Update_default
.global lbl_80248AB0 Update_case5:
lbl_80248AB0:
/* 80248AB0 00245A10 80 7F 00 40 */ lwz r3, 0x40(r31) /* 80248AB0 00245A10 80 7F 00 40 */ lwz r3, 0x40(r31)
/* 80248AB4 00245A14 38 9F 00 3C */ addi r4, r31, 0x3c /* 80248AB4 00245A14 38 9F 00 3C */ addi r4, r31, 0x3c
/* 80248AB8 00245A18 48 18 0E 31 */ bl GBAGetProcessStatus /* 80248AB8 00245A18 48 18 0E 31 */ bl GBAGetProcessStatus
/* 80248ABC 00245A1C 2C 03 00 02 */ cmpwi r3, 2 /* 80248ABC 00245A1C 2C 03 00 02 */ cmpwi r3, 2
/* 80248AC0 00245A20 41 82 00 94 */ beq lbl_80248B54 /* 80248AC0 00245A20 41 82 00 94 */ beq Update_default
/* 80248AC4 00245A24 80 7F 00 40 */ lwz r3, 0x40(r31) /* 80248AC4 00245A24 80 7F 00 40 */ lwz r3, 0x40(r31)
/* 80248AC8 00245A28 38 9F 00 3C */ addi r4, r31, 0x3c /* 80248AC8 00245A28 38 9F 00 3C */ addi r4, r31, 0x3c
/* 80248ACC 00245A2C 48 18 0C 89 */ bl GBAGetStatus /* 80248ACC 00245A2C 48 18 0C 89 */ bl GBAGetStatus
@ -415,21 +695,20 @@ lbl_80248AB0:
/* 80248AD4 00245A34 40 82 00 10 */ bne lbl_80248AE4 /* 80248AD4 00245A34 40 82 00 10 */ bne lbl_80248AE4
/* 80248AD8 00245A38 38 00 00 08 */ li r0, 8 /* 80248AD8 00245A38 38 00 00 08 */ li r0, 8
/* 80248ADC 00245A3C 90 1F 00 34 */ stw r0, 0x34(r31) /* 80248ADC 00245A3C 90 1F 00 34 */ stw r0, 0x34(r31)
/* 80248AE0 00245A40 48 00 00 74 */ b lbl_80248B54 /* 80248AE0 00245A40 48 00 00 74 */ b Update_default
lbl_80248AE4: lbl_80248AE4:
/* 80248AE4 00245A44 C0 02 B8 7C */ lfs f0, lbl_805AD59C@sda21(r2) /* 80248AE4 00245A44 C0 02 B8 7C */ lfs f0, lbl_805AD59C@sda21(r2)
/* 80248AE8 00245A48 38 00 00 06 */ li r0, 6 /* 80248AE8 00245A48 38 00 00 06 */ li r0, 6
/* 80248AEC 00245A4C D0 1F 00 38 */ stfs f0, 0x38(r31) /* 80248AEC 00245A4C D0 1F 00 38 */ stfs f0, 0x38(r31)
/* 80248AF0 00245A50 90 1F 00 34 */ stw r0, 0x34(r31) /* 80248AF0 00245A50 90 1F 00 34 */ stw r0, 0x34(r31)
/* 80248AF4 00245A54 48 00 00 60 */ b lbl_80248B54 /* 80248AF4 00245A54 48 00 00 60 */ b Update_default
.global lbl_80248AF8 Update_case6:
lbl_80248AF8:
/* 80248AF8 00245A58 4B FF FA DD */ bl PollResponse__11CGBASupportFv /* 80248AF8 00245A58 4B FF FA DD */ bl PollResponse__11CGBASupportFv
/* 80248AFC 00245A5C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80248AFC 00245A5C 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 80248B00 00245A60 41 82 00 10 */ beq lbl_80248B10 /* 80248B00 00245A60 41 82 00 10 */ beq lbl_80248B10
/* 80248B04 00245A64 38 00 00 07 */ li r0, 7 /* 80248B04 00245A64 38 00 00 07 */ li r0, 7
/* 80248B08 00245A68 90 1F 00 34 */ stw r0, 0x34(r31) /* 80248B08 00245A68 90 1F 00 34 */ stw r0, 0x34(r31)
/* 80248B0C 00245A6C 48 00 00 48 */ b lbl_80248B54 /* 80248B0C 00245A6C 48 00 00 48 */ b Update_default
lbl_80248B10: lbl_80248B10:
/* 80248B10 00245A70 C0 3F 00 38 */ lfs f1, 0x38(r31) /* 80248B10 00245A70 C0 3F 00 38 */ lfs f1, 0x38(r31)
/* 80248B14 00245A74 C0 0D 96 FC */ lfs f0, lbl_805A82BC@sda21(r13) /* 80248B14 00245A74 C0 0D 96 FC */ lfs f0, lbl_805A82BC@sda21(r13)
@ -447,11 +726,10 @@ lbl_80248B34:
/* 80248B3C 00245A9C D0 1F 00 38 */ stfs f0, 0x38(r31) /* 80248B3C 00245A9C D0 1F 00 38 */ stfs f0, 0x38(r31)
/* 80248B40 00245AA0 C0 1F 00 38 */ lfs f0, 0x38(r31) /* 80248B40 00245AA0 C0 1F 00 38 */ lfs f0, 0x38(r31)
/* 80248B44 00245AA4 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 80248B44 00245AA4 FC 01 00 00 */ fcmpu cr0, f1, f0
/* 80248B48 00245AA8 40 82 00 0C */ bne lbl_80248B54 /* 80248B48 00245AA8 40 82 00 0C */ bne Update_default
/* 80248B4C 00245AAC 38 00 00 08 */ li r0, 8 /* 80248B4C 00245AAC 38 00 00 08 */ li r0, 8
/* 80248B50 00245AB0 90 1F 00 34 */ stw r0, 0x34(r31) /* 80248B50 00245AB0 90 1F 00 34 */ stw r0, 0x34(r31)
.global lbl_80248B54 Update_default:
lbl_80248B54:
/* 80248B54 00245AB4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 80248B54 00245AB4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0
/* 80248B58 00245AB8 80 01 00 34 */ lwz r0, 0x34(r1) /* 80248B58 00245AB8 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80248B5C 00245ABC CB E1 00 20 */ lfd f31, 0x20(r1) /* 80248B5C 00245ABC CB E1 00 20 */ lfd f31, 0x20(r1)
@ -461,6 +739,78 @@ lbl_80248B54:
/* 80248B6C 00245ACC 38 21 00 30 */ addi r1, r1, 0x30 /* 80248B6C 00245ACC 38 21 00 30 */ addi r1, r1, 0x30
/* 80248B70 00245AD0 4E 80 00 20 */ blr /* 80248B70 00245AD0 4E 80 00 20 */ blr
.if version >= 2
.global IsReady__11CGBASupportFv
IsReady__11CGBASupportFv:
/* 80248C34 00245B94 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80248C38 00245B98 7C 08 02 A6 */ mflr r0
/* 80248C3C 00245B9C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80248C40 00245BA0 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80248C44 00245BA4 7C 7F 1B 78 */ mr r31, r3
/* 80248C48 00245BA8 80 03 00 34 */ lwz r0, 0x34(r3)
/* 80248C4C 00245BAC 2C 00 00 00 */ cmpwi r0, 0x0
/* 80248C50 00245BB0 41 82 00 0C */ beq lbl_80248C5C
/* 80248C54 00245BB4 38 60 00 01 */ li r3, 0x1
/* 80248C58 00245BB8 48 00 00 B4 */ b lbl_80248D0C
lbl_80248C5C:
/* 80248C5C 00245BBC 80 7F 00 30 */ lwz r3, 0x30(r31)
/* 80248C60 00245BC0 81 83 00 00 */ lwz r12, 0x0(r3)
/* 80248C64 00245BC4 81 8C 00 10 */ lwz r12, 0x10(r12)
/* 80248C68 00245BC8 7D 89 03 A6 */ mtctr r12
/* 80248C6C 00245BCC 4E 80 04 21 */ bctrl
/* 80248C70 00245BD0 54 60 06 3F */ clrlwi. r0, r3, 24
/* 80248C74 00245BD4 41 82 00 94 */ beq lbl_80248D08
/* 80248C78 00245BD8 80 7F 00 30 */ lwz r3, 0x30(r31)
/* 80248C7C 00245BDC 28 03 00 00 */ cmplwi r3, 0x0
/* 80248C80 00245BE0 41 82 00 18 */ beq lbl_80248C98
/* 80248C84 00245BE4 81 83 00 00 */ lwz r12, 0x0(r3)
/* 80248C88 00245BE8 38 80 00 01 */ li r4, 0x1
/* 80248C8C 00245BEC 81 8C 00 08 */ lwz r12, 0x8(r12)
/* 80248C90 00245BF0 7D 89 03 A6 */ mtctr r12
/* 80248C94 00245BF4 4E 80 04 21 */ bctrl
lbl_80248C98:
/* 80248C98 00245BF8 38 60 00 00 */ li r3, 0x0
/* 80248C9C 00245BFC 38 00 00 01 */ li r0, 0x1
/* 80248CA0 00245C00 90 7F 00 30 */ stw r3, 0x30(r31)
/* 80248CA4 00245C04 90 1F 00 34 */ stw r0, 0x34(r31)
/* 80248CA8 00245C08 83 FF 00 2C */ lwz r31, 0x2c(r31)
/* 80248CAC 00245C0C 48 13 C8 19 */ bl OSGetTick
/* 80248CB0 00245C10 98 7F 00 C8 */ stb r3, 0xc8(r31)
/* 80248CB4 00245C14 54 65 C6 3E */ rlwinm r5, r3, 24, 24, 31
/* 80248CB8 00245C18 54 64 86 3E */ rlwinm r4, r3, 16, 24, 31
/* 80248CBC 00245C1C 54 60 46 3E */ srwi r0, r3, 24
/* 80248CC0 00245C20 98 BF 00 C9 */ stb r5, 0xc9(r31)
/* 80248CC4 00245C24 98 9F 00 CA */ stb r4, 0xca(r31)
/* 80248CC8 00245C28 98 1F 00 CB */ stb r0, 0xcb(r31)
/* 80248CCC 00245C2C 48 13 83 E9 */ bl OSGetFontEncode
/* 80248CD0 00245C30 54 60 04 3E */ clrlwi r0, r3, 16
/* 80248CD4 00245C34 28 00 00 01 */ cmplwi r0, 0x1
/* 80248CD8 00245C38 40 82 00 18 */ bne lbl_80248CF0
/* 80248CDC 00245C3C 38 60 00 4A */ li r3, 0x4a
/* 80248CE0 00245C40 38 00 00 C4 */ li r0, 0xc4
/* 80248CE4 00245C44 98 7F 00 AF */ stb r3, 0xaf(r31)
/* 80248CE8 00245C48 98 1F 00 BD */ stb r0, 0xbd(r31)
/* 80248CEC 00245C4C 48 00 00 14 */ b lbl_80248D00
lbl_80248CF0:
/* 80248CF0 00245C50 38 60 00 45 */ li r3, 0x45
/* 80248CF4 00245C54 38 00 00 C9 */ li r0, 0xc9
/* 80248CF8 00245C58 98 7F 00 AF */ stb r3, 0xaf(r31)
/* 80248CFC 00245C5C 98 1F 00 BD */ stb r0, 0xbd(r31)
lbl_80248D00:
/* 80248D00 00245C60 38 60 00 01 */ li r3, 0x1
/* 80248D04 00245C64 48 00 00 08 */ b lbl_80248D0C
lbl_80248D08:
/* 80248D08 00245C68 38 60 00 00 */ li r3, 0x0
lbl_80248D0C:
/* 80248D0C 00245C6C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80248D10 00245C70 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80248D14 00245C74 7C 08 03 A6 */ mtlr r0
/* 80248D18 00245C78 38 21 00 10 */ addi r1, r1, 0x10
/* 80248D1C 00245C7C 4E 80 00 20 */ blr
.else
.global IsReady__11CGBASupportFv .global IsReady__11CGBASupportFv
IsReady__11CGBASupportFv: IsReady__11CGBASupportFv:
/* 80248B74 00245AD4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80248B74 00245AD4 94 21 FF F0 */ stwu r1, -0x10(r1)
@ -518,6 +868,8 @@ lbl_80248C28:
/* 80248C34 00245B94 38 21 00 10 */ addi r1, r1, 0x10 /* 80248C34 00245B94 38 21 00 10 */ addi r1, r1, 0x10
/* 80248C38 00245B98 4E 80 00 20 */ blr /* 80248C38 00245B98 4E 80 00 20 */ blr
.endif
.global StartLink__11CGBASupportFv .global StartLink__11CGBASupportFv
StartLink__11CGBASupportFv: StartLink__11CGBASupportFv:
/* 80248C3C 00245B9C 38 80 00 02 */ li r4, 2 /* 80248C3C 00245B9C 38 80 00 02 */ li r4, 2
@ -584,6 +936,73 @@ lbl_80248CF8:
/* 80248D0C 00245C6C 38 21 00 10 */ addi r1, r1, 0x10 /* 80248D0C 00245C6C 38 21 00 10 */ addi r1, r1, 0x10
/* 80248D10 00245C70 4E 80 00 20 */ blr /* 80248D10 00245C70 4E 80 00 20 */ blr
.if version >= 2
.global __ct__11CGBASupportFv
__ct__11CGBASupportFv:
/* 80248DF8 00245D58 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80248DFC 00245D5C 7C 08 02 A6 */ mflr r0
/* 80248E00 00245D60 90 01 00 24 */ stw r0, 0x24(r1)
/* 80248E04 00245D64 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80248E08 00245D68 7C 7F 1B 78 */ mr r31, r3
/* 80248E0C 00245D6C 48 13 82 A9 */ bl OSGetFontEncode
/* 80248E10 00245D70 54 60 04 3E */ clrlwi r0, r3, 16
/* 80248E14 00245D74 3C 80 80 3D */ lis r4, lbl_803D4768@ha
/* 80248E18 00245D78 20 00 00 01 */ subfic r0, r0, 0x1
/* 80248E1C 00245D7C 7F E3 FB 78 */ mr r3, r31
/* 80248E20 00245D80 7C 00 00 34 */ cntlzw r0, r0
/* 80248E24 00245D84 38 A4 48 68 */ addi r5, r4, lbl_803D4768@l
/* 80248E28 00245D88 54 00 DE 3F */ rlwinm. r0, r0, 27, 24, 31
/* 80248E2C 00245D8C 38 85 00 0F */ addi r4, r5, 0xf
/* 80248E30 00245D90 41 82 00 08 */ beq lbl_80248E38
/* 80248E34 00245D94 7C A4 2B 78 */ mr r4, r5
lbl_80248E38:
/* 80248E38 00245D98 48 10 70 2D */ bl __ct__8CDvdFileFPCc
/* 80248E3C 00245D9C 80 DF 00 14 */ lwz r6, 0x14(r31)
/* 80248E40 00245DA0 3C A0 80 3D */ lis r5, lbl_803D4768@ha
/* 80248E44 00245DA4 38 A5 48 68 */ addi r5, r5, lbl_803D4768@l
/* 80248E48 00245DA8 3C 80 80 3D */ lis r4, lbl_803D6AA8@ha
/* 80248E4C 00245DAC 38 06 00 1F */ addi r0, r6, 0x1f
/* 80248E50 00245DB0 38 61 00 08 */ addi r3, r1, 0x8
/* 80248E54 00245DB4 54 00 00 34 */ rlwinm r0, r0, 0, 0, 26
/* 80248E58 00245DB8 38 C4 6B B8 */ addi r6, r4, lbl_803D6AA8@l
/* 80248E5C 00245DBC 90 1F 00 28 */ stw r0, 0x28(r31)
/* 80248E60 00245DC0 38 A5 00 1E */ addi r5, r5, 0x1e
/* 80248E64 00245DC4 38 80 FF FF */ li r4, -0x1
/* 80248E68 00245DC8 48 08 D6 A9 */ bl __ct__10CCallStackFUiPCcPCc
/* 80248E6C 00245DCC 7C 67 1B 78 */ mr r7, r3
/* 80248E70 00245DD0 80 7F 00 28 */ lwz r3, 0x28(r31)
/* 80248E74 00245DD4 38 80 00 02 */ li r4, 0x2
/* 80248E78 00245DD8 38 A0 00 01 */ li r5, 0x1
/* 80248E7C 00245DDC 38 C0 00 00 */ li r6, 0x0
/* 80248E80 00245DE0 48 0C CC 85 */ bl Alloc__7CMemoryFUlQ210IAllocator5EHintQ210IAllocator6EScopeQ210IAllocator5ETypeRC10CCallStack
/* 80248E84 00245DE4 90 7F 00 2C */ stw r3, 0x2c(r31)
/* 80248E88 00245DE8 7F E3 FB 78 */ mr r3, r31
/* 80248E8C 00245DEC 80 9F 00 2C */ lwz r4, 0x2c(r31)
/* 80248E90 00245DF0 80 BF 00 28 */ lwz r5, 0x28(r31)
/* 80248E94 00245DF4 48 10 6E E9 */ bl SyncRead__8CDvdFileFPvUi
/* 80248E98 00245DF8 90 7F 00 30 */ stw r3, 0x30(r31)
/* 80248E9C 00245DFC 38 60 00 00 */ li r3, 0x0
/* 80248EA0 00245E00 C0 02 B8 7C */ lfs f0, lbl_805AD5A0@sda21(r2)
/* 80248EA4 00245E04 38 00 FF FF */ li r0, -0x1
/* 80248EA8 00245E08 90 7F 00 34 */ stw r3, 0x34(r31)
/* 80248EAC 00245E0C D0 1F 00 38 */ stfs f0, 0x38(r31)
/* 80248EB0 00245E10 98 7F 00 3C */ stb r3, 0x3c(r31)
/* 80248EB4 00245E14 90 1F 00 40 */ stw r0, 0x40(r31)
/* 80248EB8 00245E18 98 7F 00 44 */ stb r3, 0x44(r31)
/* 80248EBC 00245E1C 98 7F 00 45 */ stb r3, 0x45(r31)
/* 80248EC0 00245E20 48 18 08 91 */ bl GBAInit
/* 80248EC4 00245E24 93 ED A5 50 */ stw r31, lbl_805A9110@sda21(r13)
/* 80248EC8 00245E28 48 13 81 ED */ bl OSGetFontEncode
/* 80248ECC 00245E2C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80248ED0 00245E30 7F E3 FB 78 */ mr r3, r31
/* 80248ED4 00245E34 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80248ED8 00245E38 7C 08 03 A6 */ mtlr r0
/* 80248EDC 00245E3C 38 21 00 20 */ addi r1, r1, 0x20
/* 80248EE0 00245E40 4E 80 00 20 */ blr
.else
.global __ct__11CGBASupportFv .global __ct__11CGBASupportFv
__ct__11CGBASupportFv: __ct__11CGBASupportFv:
/* 80248D14 00245C74 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80248D14 00245C74 94 21 FF E0 */ stwu r1, -0x20(r1)
@ -636,17 +1055,24 @@ __ct__11CGBASupportFv:
/* 80248DD0 00245D30 38 21 00 20 */ addi r1, r1, 0x20 /* 80248DD0 00245D30 38 21 00 20 */ addi r1, r1, 0x20
/* 80248DD4 00245D34 4E 80 00 20 */ blr /* 80248DD4 00245D34 4E 80 00 20 */ blr
.endif
.global nullsub_130 .global nullsub_130
nullsub_130: nullsub_130:
/* 80248DD8 00245D38 4E 80 00 20 */ blr /* 80248DD8 00245D38 4E 80 00 20 */ blr
.section .sdata2, "a" .section .sdata2, "a"
.balign 8 .balign 8
.if version < 2
.global lbl_805AD598 .global lbl_805AD598
lbl_805AD598: lbl_805AD598:
# ROM: 0x3F9E38 # ROM: 0x3F9E38
.4byte 0x414D5445 .4byte 0x414D5445
.endif
.global lbl_805AD59C .global lbl_805AD59C
lbl_805AD59C: lbl_805AD59C:
# ROM: 0x3F9E3C # ROM: 0x3F9E3C
@ -656,16 +1082,17 @@ lbl_805AD59C:
lbl_805AD5A0: lbl_805AD5A0:
# ROM: 0x3F9E40 # ROM: 0x3F9E40
.4byte 0 .4byte 0
.4byte 0
.section .rodata .section .rodata
.balign 8 .balign 8
.global lbl_803D4768 .global lbl_803D4768
lbl_803D4768: lbl_803D4768:
.if version >= 2
.asciz "client_jap.bin"
.endif
# ROM: 0x3D1768 # ROM: 0x3D1768
.asciz "client_pad.bin" .asciz "client_pad.bin"
.byte 0x3F .asciz "??(??)"
.asciz "?(??)"
.balign 4 .balign 4

View File

@ -6404,7 +6404,7 @@ lbl_80290894:
/* 802908A8 0028D808 38 21 00 20 */ addi r1, r1, 0x20 /* 802908A8 0028D808 38 21 00 20 */ addi r1, r1, 0x20
/* 802908AC 0028D80C 4E 80 00 20 */ blr /* 802908AC 0028D80C 4E 80 00 20 */ blr
.if version == 1 .if version >= 1
.global AcceptScriptMsg__12COmegaPirateF20EScriptObjectMessage9TUniqueIdR13CStateManager .global AcceptScriptMsg__12COmegaPirateF20EScriptObjectMessage9TUniqueIdR13CStateManager
AcceptScriptMsg__12COmegaPirateF20EScriptObjectMessage9TUniqueIdR13CStateManager: AcceptScriptMsg__12COmegaPirateF20EScriptObjectMessage9TUniqueIdR13CStateManager:

View File

@ -3803,7 +3803,7 @@ lbl_80005CE0:
/* 80005CF4 00002C54 38 21 00 10 */ addi r1, r1, 0x10 /* 80005CF4 00002C54 38 21 00 10 */ addi r1, r1, 0x10
/* 80005CF8 00002C58 4E 80 00 20 */ blr /* 80005CF8 00002C58 4E 80 00 20 */ blr
.if version == 1 .if version >= 1
.global CheckReset__5CMainFv .global CheckReset__5CMainFv
CheckReset__5CMainFv: CheckReset__5CMainFv:
@ -4310,7 +4310,7 @@ GetResourceIdByName__11CResFactoryCFPCc:
/* 800060AC 0000300C 38 21 00 10 */ addi r1, r1, 0x10 /* 800060AC 0000300C 38 21 00 10 */ addi r1, r1, 0x10
/* 800060B0 00003010 4E 80 00 20 */ blr /* 800060B0 00003010 4E 80 00 20 */ blr
.if version == 1 .if version >= 1
.global AddPaksAndFactories__18CGameGlobalObjectsFv .global AddPaksAndFactories__18CGameGlobalObjectsFv
AddPaksAndFactories__18CGameGlobalObjectsFv: AddPaksAndFactories__18CGameGlobalObjectsFv:
@ -7247,8 +7247,10 @@ main:
/* 80008518 00005478 7C 9E 23 78 */ mr r30, r4 /* 80008518 00005478 7C 9E 23 78 */ mr r30, r4
/* 8000851C 0000547C 93 A1 00 14 */ stw r29, 0x14(r1) /* 8000851C 0000547C 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80008520 00005480 7C 7D 1B 78 */ mr r29, r3 /* 80008520 00005480 7C 7D 1B 78 */ mr r29, r3
.if version < 2
/* 80008524 00005484 38 60 00 01 */ li r3, 1 /* 80008524 00005484 38 60 00 01 */ li r3, 1
/* 80008528 00005488 48 36 C8 A5 */ bl DVDSetAutoFatalMessaging /* 80008528 00005488 48 36 C8 A5 */ bl DVDSetAutoFatalMessaging
.endif
/* 8000852C 0000548C 48 2C E3 D1 */ bl SetErrorHandlers /* 8000852C 0000548C 48 2C E3 D1 */ bl SetErrorHandlers
/* 80008530 00005490 3C 60 80 45 */ lis r3, sMainSpace@ha /* 80008530 00005490 3C 60 80 45 */ lis r3, sMainSpace@ha
/* 80008534 00005494 37 E3 75 60 */ addic. r31, r3, sMainSpace@l /* 80008534 00005494 37 E3 75 60 */ addic. r31, r3, sMainSpace@l

View File

@ -1,8 +1,9 @@
#!/bin/bash -e #!/bin/bash -e
VERSION="${VERSION:=0}"
OBJDUMP="$DEVKITPPC/bin/powerpc-eabi-objdump -D -bbinary -EB -mpowerpc -M gekko" OBJDUMP="$DEVKITPPC/bin/powerpc-eabi-objdump -D -bbinary -EB -mpowerpc -M gekko"
if [ ! -z "$1" ]; then if [ ! -z "$1" ]; then
OPTIONS="--start-address=$(($1)) --stop-address=$(($2))" OPTIONS="--start-address=$(($1)) --stop-address=$(($2))"
fi fi
$OBJDUMP $OPTIONS baserom.dol > baserom.dump $OBJDUMP $OPTIONS versions/$VERSION/baserom.dol > baserom.dump
$OBJDUMP $OPTIONS build/mp1.0/main.dol > main.dump $OBJDUMP $OPTIONS build/mp1.$VERSION/main.dol > main.dump
diff -u --color=always baserom.dump main.dump diff -u --color=always baserom.dump main.dump