Work on dvdlow, OSTime fix and various nonmatching

This commit is contained in:
Tal Hayon 2023-02-01 16:22:08 +02:00
parent d5d32236a0
commit 61d2b9a5c1
68 changed files with 447 additions and 2679 deletions

View File

@ -7,22 +7,22 @@ Section | Percentage | Decompiled (bytes) | Total (bytes)
.init | 97.972973% | 9280 | 9472
.extab | 100.000000% | 96 | 96
.extabindex | 100.000000% | 96 | 96
.text | 23.857459% | 858044 | 3596544
.text | 24.076780% | 865932 | 3596544
.ctors | 100.000000% | 448 | 448
.dtors | 100.000000% | 32 | 32
.rodata | 100.000000% | 193856 | 193856
.data | 100.000000% | 197632 | 197632
.sdata | 100.000000% | 1408 | 1408
.sdata2 | 100.000000% | 20832 | 20832
Total | 31.884720% | 1281980 | 4020672
Total | 32.080906% | 1289868 | 4020672
## Total
Section | Percentage | Decompiled (bytes) | Total (bytes)
---|---|---|---
main.dol | 31.884720% | 1281980 | 4020672
main.dol | 32.080906% | 1289868 | 4020672
RELs | 33.048286% | 3800660 | 11500324
Total | 32.746868% | 5082640 | 15520996
Total | 32.797689% | 5090528 | 15520996
## RELs

View File

@ -1,50 +0,0 @@
lbl_8032F64C:
/* 8032F64C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8032F650 7C 08 02 A6 */ mflr r0
/* 8032F654 90 01 00 24 */ stw r0, 0x24(r1)
/* 8032F658 39 61 00 20 */ addi r11, r1, 0x20
/* 8032F65C 48 03 2B 79 */ bl _savegpr_27
/* 8032F660 7C 7B 1B 78 */ mr r27, r3
/* 8032F664 7C 9C 23 78 */ mr r28, r4
/* 8032F668 3B C0 00 00 */ li r30, 0
/* 8032F66C A3 E4 00 14 */ lhz r31, 0x14(r4)
/* 8032F670 3B A0 00 00 */ li r29, 0
/* 8032F674 48 00 00 5C */ b lbl_8032F6D0
lbl_8032F678:
/* 8032F678 80 7C 00 18 */ lwz r3, 0x18(r28)
/* 8032F67C 57 A0 0B FC */ rlwinm r0, r29, 1, 0xf, 0x1e
/* 8032F680 7C 03 02 2E */ lhzx r0, r3, r0
/* 8032F684 28 00 FF FF */ cmplwi r0, 0xffff
/* 8032F688 41 82 00 44 */ beq lbl_8032F6CC
/* 8032F68C 80 7B 00 08 */ lwz r3, 8(r27)
/* 8032F690 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d
/* 8032F694 7C 63 00 2E */ lwzx r3, r3, r0
/* 8032F698 80 63 00 3C */ lwz r3, 0x3c(r3)
/* 8032F69C 3C 00 C0 00 */ lis r0, 0xc000
/* 8032F6A0 7C 03 00 40 */ cmplw r3, r0
/* 8032F6A4 40 80 00 08 */ bge lbl_8032F6AC
/* 8032F6A8 48 00 00 08 */ b lbl_8032F6B0
lbl_8032F6AC:
/* 8032F6AC 38 60 00 00 */ li r3, 0
lbl_8032F6B0:
/* 8032F6B0 28 03 00 00 */ cmplwi r3, 0
/* 8032F6B4 40 82 00 0C */ bne lbl_8032F6C0
/* 8032F6B8 3B C0 00 01 */ li r30, 1
/* 8032F6BC 48 00 00 10 */ b lbl_8032F6CC
lbl_8032F6C0:
/* 8032F6C0 38 80 00 00 */ li r4, 0
/* 8032F6C4 38 A0 00 00 */ li r5, 0
/* 8032F6C8 4B FF CE DD */ bl setMatColorAnm__14J3DMaterialAnmFiP14J3DMatColorAnm
lbl_8032F6CC:
/* 8032F6CC 3B BD 00 01 */ addi r29, r29, 1
lbl_8032F6D0:
/* 8032F6D0 57 A0 04 3E */ clrlwi r0, r29, 0x10
/* 8032F6D4 7C 00 F8 40 */ cmplw r0, r31
/* 8032F6D8 41 80 FF A0 */ blt lbl_8032F678
/* 8032F6DC 7F C3 F3 78 */ mr r3, r30
/* 8032F6E0 39 61 00 20 */ addi r11, r1, 0x20
/* 8032F6E4 48 03 2B 3D */ bl _restgpr_27
/* 8032F6E8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8032F6EC 7C 08 03 A6 */ mtlr r0
/* 8032F6F0 38 21 00 20 */ addi r1, r1, 0x20
/* 8032F6F4 4E 80 00 20 */ blr

View File

@ -1,30 +0,0 @@
lbl_802D21DC:
/* 802D21DC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D21E0 7C 08 02 A6 */ mflr r0
/* 802D21E4 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D21E8 39 61 00 20 */ addi r11, r1, 0x20
/* 802D21EC 48 08 FF F1 */ bl _savegpr_29
/* 802D21F0 3C 60 80 3D */ lis r3, sMessageQueue__7JKRAram@ha /* 0x803CC138@ha */
/* 802D21F4 38 63 C1 38 */ addi r3, r3, sMessageQueue__7JKRAram@l /* 0x803CC138@l */
/* 802D21F8 3C 80 80 3D */ lis r4, sMessageBuffer__7JKRAram@ha /* 0x803CC128@ha */
/* 802D21FC 38 84 C1 28 */ addi r4, r4, sMessageBuffer__7JKRAram@l /* 0x803CC128@l */
/* 802D2200 38 A0 00 04 */ li r5, 4
/* 802D2204 48 06 C7 91 */ bl OSInitMessageQueue
/* 802D2208 3C 60 80 3D */ lis r3, sMessageQueue__7JKRAram@ha /* 0x803CC138@ha */
/* 802D220C 3B E3 C1 38 */ addi r31, r3, sMessageQueue__7JKRAram@l /* 0x803CC138@l */
lbl_802D2210:
/* 802D2210 7F E3 FB 78 */ mr r3, r31
/* 802D2214 38 81 00 08 */ addi r4, r1, 8
/* 802D2218 38 A0 00 01 */ li r5, 1
/* 802D221C 48 06 C8 A1 */ bl OSReceiveMessage
/* 802D2220 80 61 00 08 */ lwz r3, 8(r1)
/* 802D2224 83 C3 00 00 */ lwz r30, 0(r3)
/* 802D2228 83 A3 00 04 */ lwz r29, 4(r3)
/* 802D222C 4B FF CB 11 */ bl __dl__FPv
/* 802D2230 2C 1E 00 01 */ cmpwi r30, 1
/* 802D2234 41 82 00 08 */ beq lbl_802D223C
/* 802D2238 4B FF FF D8 */ b lbl_802D2210
lbl_802D223C:
/* 802D223C 7F A3 EB 78 */ mr r3, r29
/* 802D2240 48 00 16 8D */ bl startDMA__12JKRAramPieceFP12JKRAMCommand
/* 802D2244 4B FF FF CC */ b lbl_802D2210

View File

@ -1,183 +0,0 @@
lbl_802D7DB4:
/* 802D7DB4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D7DB8 7C 08 02 A6 */ mflr r0
/* 802D7DBC 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D7DC0 39 61 00 20 */ addi r11, r1, 0x20
/* 802D7DC4 48 08 A4 15 */ bl _savegpr_28
/* 802D7DC8 7C 7D 1B 78 */ mr r29, r3
/* 802D7DCC 7C 9C 23 78 */ mr r28, r4
/* 802D7DD0 38 00 00 00 */ li r0, 0
/* 802D7DD4 90 03 00 44 */ stw r0, 0x44(r3)
/* 802D7DD8 90 03 00 64 */ stw r0, 0x64(r3)
/* 802D7DDC 90 03 00 48 */ stw r0, 0x48(r3)
/* 802D7DE0 90 03 00 4C */ stw r0, 0x4c(r3)
/* 802D7DE4 90 03 00 54 */ stw r0, 0x54(r3)
/* 802D7DE8 38 60 00 F8 */ li r3, 0xf8
/* 802D7DEC 80 8D 8D F0 */ lwz r4, sSystemHeap__7JKRHeap(r13)
/* 802D7DF0 38 A0 00 00 */ li r5, 0
/* 802D7DF4 4B FF 6E A5 */ bl __nw__FUlP7JKRHeapi
/* 802D7DF8 7C 60 1B 79 */ or. r0, r3, r3
/* 802D7DFC 41 82 00 10 */ beq lbl_802D7E0C
/* 802D7E00 7F 84 E3 78 */ mr r4, r28
/* 802D7E04 48 00 18 9D */ bl __ct__10JKRDvdFileFl
/* 802D7E08 7C 60 1B 78 */ mr r0, r3
lbl_802D7E0C:
/* 802D7E0C 90 1D 00 68 */ stw r0, 0x68(r29)
/* 802D7E10 80 1D 00 68 */ lwz r0, 0x68(r29)
/* 802D7E14 28 00 00 00 */ cmplwi r0, 0
/* 802D7E18 40 82 00 14 */ bne lbl_802D7E2C
/* 802D7E1C 38 00 00 00 */ li r0, 0
/* 802D7E20 98 1D 00 3C */ stb r0, 0x3c(r29)
/* 802D7E24 38 60 00 00 */ li r3, 0
/* 802D7E28 48 00 02 10 */ b lbl_802D8038
lbl_802D7E2C:
/* 802D7E2C 80 6D 8D F0 */ lwz r3, sSystemHeap__7JKRHeap(r13)
/* 802D7E30 38 80 00 20 */ li r4, 0x20
/* 802D7E34 38 A0 00 20 */ li r5, 0x20
/* 802D7E38 4B FF 66 9D */ bl alloc__7JKRHeapFUli
/* 802D7E3C 7C 7E 1B 79 */ or. r30, r3, r3
/* 802D7E40 40 82 00 10 */ bne lbl_802D7E50
/* 802D7E44 38 00 00 00 */ li r0, 0
/* 802D7E48 98 1D 00 3C */ stb r0, 0x3c(r29)
/* 802D7E4C 48 00 01 9C */ b lbl_802D7FE8
lbl_802D7E50:
/* 802D7E50 38 00 00 00 */ li r0, 0
/* 802D7E54 90 01 00 08 */ stw r0, 8(r1)
/* 802D7E58 7F 83 E3 78 */ mr r3, r28
/* 802D7E5C 7F C4 F3 78 */ mr r4, r30
/* 802D7E60 38 A0 00 01 */ li r5, 1
/* 802D7E64 38 C0 00 20 */ li r6, 0x20
/* 802D7E68 38 E0 00 00 */ li r7, 0
/* 802D7E6C 39 00 00 01 */ li r8, 1
/* 802D7E70 39 20 00 00 */ li r9, 0
/* 802D7E74 39 5D 00 5C */ addi r10, r29, 0x5c
/* 802D7E78 48 00 1D DD */ bl loadToMainRAM__12JKRDvdRipperFlPUc15JKRExpandSwitchUlP7JKRHeapQ212JKRDvdRipper15EAllocDirectionUlPiPUl
/* 802D7E7C 7F C3 F3 78 */ mr r3, r30
/* 802D7E80 38 80 00 20 */ li r4, 0x20
/* 802D7E84 48 06 36 FD */ bl DCInvalidateRange
/* 802D7E88 80 1D 00 60 */ lwz r0, 0x60(r29)
/* 802D7E8C 2C 00 00 01 */ cmpwi r0, 1
/* 802D7E90 3B E0 FF E0 */ li r31, -32
/* 802D7E94 40 82 00 08 */ bne lbl_802D7E9C
/* 802D7E98 3B E0 00 20 */ li r31, 0x20
lbl_802D7E9C:
/* 802D7E9C 80 7E 00 0C */ lwz r3, 0xc(r30)
/* 802D7EA0 7F E4 FB 78 */ mr r4, r31
/* 802D7EA4 80 BD 00 38 */ lwz r5, 0x38(r29)
/* 802D7EA8 4B FF 65 CD */ bl alloc__7JKRHeapFUliP7JKRHeap
/* 802D7EAC 90 7D 00 44 */ stw r3, 0x44(r29)
/* 802D7EB0 80 9D 00 44 */ lwz r4, 0x44(r29)
/* 802D7EB4 28 04 00 00 */ cmplwi r4, 0
/* 802D7EB8 40 82 00 10 */ bne lbl_802D7EC8
/* 802D7EBC 38 00 00 00 */ li r0, 0
/* 802D7EC0 98 1D 00 3C */ stb r0, 0x3c(r29)
/* 802D7EC4 48 00 01 24 */ b lbl_802D7FE8
lbl_802D7EC8:
/* 802D7EC8 38 00 00 00 */ li r0, 0
/* 802D7ECC 90 01 00 08 */ stw r0, 8(r1)
/* 802D7ED0 7F 83 E3 78 */ mr r3, r28
/* 802D7ED4 38 A0 00 01 */ li r5, 1
/* 802D7ED8 80 DE 00 0C */ lwz r6, 0xc(r30)
/* 802D7EDC 38 E0 00 00 */ li r7, 0
/* 802D7EE0 39 00 00 01 */ li r8, 1
/* 802D7EE4 39 20 00 20 */ li r9, 0x20
/* 802D7EE8 39 40 00 00 */ li r10, 0
/* 802D7EEC 48 00 1D 69 */ bl loadToMainRAM__12JKRDvdRipperFlPUc15JKRExpandSwitchUlP7JKRHeapQ212JKRDvdRipper15EAllocDirectionUlPiPUl
/* 802D7EF0 80 7D 00 44 */ lwz r3, 0x44(r29)
/* 802D7EF4 80 9E 00 0C */ lwz r4, 0xc(r30)
/* 802D7EF8 48 06 36 89 */ bl DCInvalidateRange
/* 802D7EFC 80 7D 00 44 */ lwz r3, 0x44(r29)
/* 802D7F00 80 03 00 04 */ lwz r0, 4(r3)
/* 802D7F04 7C 03 02 14 */ add r0, r3, r0
/* 802D7F08 90 1D 00 48 */ stw r0, 0x48(r29)
/* 802D7F0C 80 7D 00 44 */ lwz r3, 0x44(r29)
/* 802D7F10 80 03 00 0C */ lwz r0, 0xc(r3)
/* 802D7F14 7C 03 02 14 */ add r0, r3, r0
/* 802D7F18 90 1D 00 4C */ stw r0, 0x4c(r29)
/* 802D7F1C 80 7D 00 44 */ lwz r3, 0x44(r29)
/* 802D7F20 80 03 00 14 */ lwz r0, 0x14(r3)
/* 802D7F24 7C 03 02 14 */ add r0, r3, r0
/* 802D7F28 90 1D 00 54 */ stw r0, 0x54(r29)
/* 802D7F2C 38 00 00 00 */ li r0, 0
/* 802D7F30 90 1D 00 50 */ stw r0, 0x50(r29)
/* 802D7F34 38 80 00 00 */ li r4, 0
/* 802D7F38 80 BD 00 4C */ lwz r5, 0x4c(r29)
/* 802D7F3C 80 7D 00 44 */ lwz r3, 0x44(r29)
/* 802D7F40 80 03 00 08 */ lwz r0, 8(r3)
/* 802D7F44 7C 09 03 A6 */ mtctr r0
/* 802D7F48 28 00 00 00 */ cmplwi r0, 0
/* 802D7F4C 40 81 00 28 */ ble lbl_802D7F74
lbl_802D7F50:
/* 802D7F50 80 05 00 04 */ lwz r0, 4(r5)
/* 802D7F54 54 03 46 3E */ srwi r3, r0, 0x18
/* 802D7F58 54 00 47 FF */ rlwinm. r0, r0, 8, 0x1f, 0x1f
/* 802D7F5C 41 82 00 10 */ beq lbl_802D7F6C
/* 802D7F60 54 60 07 7A */ rlwinm r0, r3, 0, 0x1d, 0x1d
/* 802D7F64 7C 80 03 78 */ or r0, r4, r0
/* 802D7F68 54 04 06 3E */ clrlwi r4, r0, 0x18
lbl_802D7F6C:
/* 802D7F6C 38 A5 00 14 */ addi r5, r5, 0x14
/* 802D7F70 42 00 FF E0 */ bdnz lbl_802D7F50
lbl_802D7F74:
/* 802D7F74 54 80 06 3F */ clrlwi. r0, r4, 0x18
/* 802D7F78 41 82 00 60 */ beq lbl_802D7FD8
/* 802D7F7C 7F E3 FB 78 */ mr r3, r31
/* 802D7F80 48 08 D1 51 */ bl abs
/* 802D7F84 7C 64 1B 78 */ mr r4, r3
/* 802D7F88 80 BD 00 38 */ lwz r5, 0x38(r29)
/* 802D7F8C 80 7D 00 44 */ lwz r3, 0x44(r29)
/* 802D7F90 80 03 00 08 */ lwz r0, 8(r3)
/* 802D7F94 54 03 10 3A */ slwi r3, r0, 2
/* 802D7F98 4B FF 64 DD */ bl alloc__7JKRHeapFUliP7JKRHeap
/* 802D7F9C 90 7D 00 50 */ stw r3, 0x50(r29)
/* 802D7FA0 80 7D 00 50 */ lwz r3, 0x50(r29)
/* 802D7FA4 28 03 00 00 */ cmplwi r3, 0
/* 802D7FA8 40 82 00 1C */ bne lbl_802D7FC4
/* 802D7FAC 80 6D 8D F0 */ lwz r3, sSystemHeap__7JKRHeap(r13)
/* 802D7FB0 80 9D 00 44 */ lwz r4, 0x44(r29)
/* 802D7FB4 4B FF 65 95 */ bl free__7JKRHeapFPv
/* 802D7FB8 38 00 00 00 */ li r0, 0
/* 802D7FBC 98 1D 00 3C */ stb r0, 0x3c(r29)
/* 802D7FC0 48 00 00 28 */ b lbl_802D7FE8
lbl_802D7FC4:
/* 802D7FC4 38 80 00 00 */ li r4, 0
/* 802D7FC8 80 BD 00 44 */ lwz r5, 0x44(r29)
/* 802D7FCC 80 05 00 08 */ lwz r0, 8(r5)
/* 802D7FD0 54 05 10 3A */ slwi r5, r0, 2
/* 802D7FD4 4B D2 B4 85 */ bl memset
lbl_802D7FD8:
/* 802D7FD8 80 7E 00 08 */ lwz r3, 8(r30)
/* 802D7FDC 80 1E 00 0C */ lwz r0, 0xc(r30)
/* 802D7FE0 7C 03 02 14 */ add r0, r3, r0
/* 802D7FE4 90 1D 00 64 */ stw r0, 0x64(r29)
lbl_802D7FE8:
/* 802D7FE8 28 1E 00 00 */ cmplwi r30, 0
/* 802D7FEC 41 82 00 10 */ beq lbl_802D7FFC
/* 802D7FF0 80 6D 8D F0 */ lwz r3, sSystemHeap__7JKRHeap(r13)
/* 802D7FF4 7F C4 F3 78 */ mr r4, r30
/* 802D7FF8 4B FF 65 51 */ bl free__7JKRHeapFPv
lbl_802D7FFC:
/* 802D7FFC 88 1D 00 3C */ lbz r0, 0x3c(r29)
/* 802D8000 28 00 00 00 */ cmplwi r0, 0
/* 802D8004 40 82 00 30 */ bne lbl_802D8034
/* 802D8008 80 7D 00 68 */ lwz r3, 0x68(r29)
/* 802D800C 28 03 00 00 */ cmplwi r3, 0
/* 802D8010 41 82 00 1C */ beq lbl_802D802C
/* 802D8014 41 82 00 18 */ beq lbl_802D802C
/* 802D8018 38 80 00 01 */ li r4, 1
/* 802D801C 81 83 00 00 */ lwz r12, 0(r3)
/* 802D8020 81 8C 00 08 */ lwz r12, 8(r12)
/* 802D8024 7D 89 03 A6 */ mtctr r12
/* 802D8028 4E 80 04 21 */ bctrl
lbl_802D802C:
/* 802D802C 38 60 00 00 */ li r3, 0
/* 802D8030 48 00 00 08 */ b lbl_802D8038
lbl_802D8034:
/* 802D8034 38 60 00 01 */ li r3, 1
lbl_802D8038:
/* 802D8038 39 61 00 20 */ addi r11, r1, 0x20
/* 802D803C 48 08 A1 E9 */ bl _restgpr_28
/* 802D8040 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D8044 7C 08 03 A6 */ mtlr r0
/* 802D8048 38 21 00 20 */ addi r1, r1, 0x20
/* 802D804C 4E 80 00 20 */ blr

View File

@ -1,14 +0,0 @@
lbl_802B61BC:
/* 802B61BC 38 00 00 00 */ li r0, 0
/* 802B61C0 88 63 00 2C */ lbz r3, 0x2c(r3)
/* 802B61C4 28 03 00 02 */ cmplwi r3, 2
/* 802B61C8 41 82 00 14 */ beq lbl_802B61DC
/* 802B61CC 28 03 00 08 */ cmplwi r3, 8
/* 802B61D0 41 82 00 0C */ beq lbl_802B61DC
/* 802B61D4 28 03 00 09 */ cmplwi r3, 9
/* 802B61D8 40 82 00 08 */ bne lbl_802B61E0
lbl_802B61DC:
/* 802B61DC 38 00 00 01 */ li r0, 1
lbl_802B61E0:
/* 802B61E0 7C 03 03 78 */ mr r3, r0
/* 802B61E4 4E 80 00 20 */ blr

View File

@ -1,105 +0,0 @@
lbl_8015E26C:
/* 8015E26C 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 8015E270 7C 08 02 A6 */ mflr r0
/* 8015E274 90 01 00 74 */ stw r0, 0x74(r1)
/* 8015E278 DB E1 00 60 */ stfd f31, 0x60(r1)
/* 8015E27C F3 E1 00 68 */ psq_st f31, 104(r1), 0, 0 /* qr0 */
/* 8015E280 DB C1 00 50 */ stfd f30, 0x50(r1)
/* 8015E284 F3 C1 00 58 */ psq_st f30, 88(r1), 0, 0 /* qr0 */
/* 8015E288 DB A1 00 40 */ stfd f29, 0x40(r1)
/* 8015E28C F3 A1 00 48 */ psq_st f29, 72(r1), 0, 0 /* qr0 */
/* 8015E290 93 E1 00 3C */ stw r31, 0x3c(r1)
/* 8015E294 7C 7F 1B 78 */ mr r31, r3
/* 8015E298 FF A0 08 90 */ fmr f29, f1
/* 8015E29C C0 03 04 D0 */ lfs f0, 0x4d0(r3)
/* 8015E2A0 D0 01 00 08 */ stfs f0, 8(r1)
/* 8015E2A4 C0 23 04 D4 */ lfs f1, 0x4d4(r3)
/* 8015E2A8 D0 21 00 0C */ stfs f1, 0xc(r1)
/* 8015E2AC C0 03 04 D8 */ lfs f0, 0x4d8(r3)
/* 8015E2B0 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 8015E2B4 C0 02 9B E0 */ lfs f0, lit_3871(r2)
/* 8015E2B8 EC 01 00 2A */ fadds f0, f1, f0
/* 8015E2BC D0 01 00 0C */ stfs f0, 0xc(r1)
/* 8015E2C0 38 61 00 08 */ addi r3, r1, 8
/* 8015E2C4 38 81 00 14 */ addi r4, r1, 0x14
/* 8015E2C8 4B EB 70 49 */ bl mDoLib_project__FP3VecP3Vec
/* 8015E2CC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 8015E2D0 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 8015E2D4 80 63 5D 74 */ lwz r3, 0x5d74(r3)
/* 8015E2D8 28 03 00 00 */ cmplwi r3, 0
/* 8015E2DC 41 82 00 0C */ beq lbl_8015E2E8
/* 8015E2E0 C0 63 0B 68 */ lfs f3, 0xb68(r3)
/* 8015E2E4 48 00 00 08 */ b lbl_8015E2EC
lbl_8015E2E8:
/* 8015E2E8 C0 62 9B E4 */ lfs f3, lit_3872(r2)
lbl_8015E2EC:
/* 8015E2EC C0 21 00 14 */ lfs f1, 0x14(r1)
/* 8015E2F0 C0 02 9B E4 */ lfs f0, lit_3872(r2)
/* 8015E2F4 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8015E2F8 40 81 00 60 */ ble lbl_8015E358
/* 8015E2FC C0 02 9B E8 */ lfs f0, lit_3873(r2)
/* 8015E300 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8015E304 40 80 00 54 */ bge lbl_8015E358
/* 8015E308 C0 41 00 18 */ lfs f2, 0x18(r1)
/* 8015E30C FC 02 18 40 */ fcmpo cr0, f2, f3
/* 8015E310 40 81 00 48 */ ble lbl_8015E358
/* 8015E314 C0 02 9B EC */ lfs f0, lit_3874(r2)
/* 8015E318 EC 00 18 28 */ fsubs f0, f0, f3
/* 8015E31C FC 02 00 40 */ fcmpo cr0, f2, f0
/* 8015E320 40 80 00 38 */ bge lbl_8015E358
/* 8015E324 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 8015E328 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 8015E32C 3C 63 00 02 */ addis r3, r3, 2
/* 8015E330 FC 00 08 1E */ fctiwz f0, f1
/* 8015E334 D8 01 00 20 */ stfd f0, 0x20(r1)
/* 8015E338 80 81 00 24 */ lwz r4, 0x24(r1)
/* 8015E33C FC 00 10 1E */ fctiwz f0, f2
/* 8015E340 D8 01 00 28 */ stfd f0, 0x28(r1)
/* 8015E344 80 A1 00 2C */ lwz r5, 0x2c(r1)
/* 8015E348 38 DF 05 78 */ addi r6, r31, 0x578
/* 8015E34C 38 63 C0 F4 */ addi r3, r3, -16140
/* 8015E350 4B EF 7C C9 */ bl newData__13dDlst_peekZ_cFssPUl
/* 8015E354 48 00 00 0C */ b lbl_8015E360
lbl_8015E358:
/* 8015E358 38 00 00 00 */ li r0, 0
/* 8015E35C 90 1F 05 78 */ stw r0, 0x578(r31)
lbl_8015E360:
/* 8015E360 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 8015E364 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 8015E368 80 63 61 B0 */ lwz r3, 0x61b0(r3)
/* 8015E36C C3 E3 00 C8 */ lfs f31, 0xc8(r3)
/* 8015E370 C3 C3 00 CC */ lfs f30, 0xcc(r3)
/* 8015E374 38 61 00 08 */ addi r3, r1, 8
/* 8015E378 38 81 00 14 */ addi r4, r1, 0x14
/* 8015E37C 4B EB 71 71 */ bl mDoLib_pos2camera__FP3VecP3Vec
/* 8015E380 C0 01 00 1C */ lfs f0, 0x1c(r1)
/* 8015E384 EC 20 E8 2A */ fadds f1, f0, f29
/* 8015E388 D0 21 00 1C */ stfs f1, 0x1c(r1)
/* 8015E38C C0 02 9B E4 */ lfs f0, lit_3872(r2)
/* 8015E390 FC 01 00 00 */ fcmpu cr0, f1, f0
/* 8015E394 40 82 00 0C */ bne lbl_8015E3A0
/* 8015E398 C0 02 9B F0 */ lfs f0, lit_3875(r2)
/* 8015E39C D0 01 00 1C */ stfs f0, 0x1c(r1)
lbl_8015E3A0:
/* 8015E3A0 C0 62 9B F4 */ lfs f3, lit_3876(r2)
/* 8015E3A4 C0 42 9B F8 */ lfs f2, lit_3877(r2)
/* 8015E3A8 EC 3E 07 F2 */ fmuls f1, f30, f31
/* 8015E3AC C0 01 00 1C */ lfs f0, 0x1c(r1)
/* 8015E3B0 EC 01 00 24 */ fdivs f0, f1, f0
/* 8015E3B4 EC 3F 00 2A */ fadds f1, f31, f0
/* 8015E3B8 EC 1E F8 28 */ fsubs f0, f30, f31
/* 8015E3BC EC 01 00 24 */ fdivs f0, f1, f0
/* 8015E3C0 EC 02 00 2A */ fadds f0, f2, f0
/* 8015E3C4 EC 03 00 32 */ fmuls f0, f3, f0
/* 8015E3C8 D0 1F 05 7C */ stfs f0, 0x57c(r31)
/* 8015E3CC E3 E1 00 68 */ psq_l f31, 104(r1), 0, 0 /* qr0 */
/* 8015E3D0 CB E1 00 60 */ lfd f31, 0x60(r1)
/* 8015E3D4 E3 C1 00 58 */ psq_l f30, 88(r1), 0, 0 /* qr0 */
/* 8015E3D8 CB C1 00 50 */ lfd f30, 0x50(r1)
/* 8015E3DC E3 A1 00 48 */ psq_l f29, 72(r1), 0, 0 /* qr0 */
/* 8015E3E0 CB A1 00 40 */ lfd f29, 0x40(r1)
/* 8015E3E4 83 E1 00 3C */ lwz r31, 0x3c(r1)
/* 8015E3E8 80 01 00 74 */ lwz r0, 0x74(r1)
/* 8015E3EC 7C 08 03 A6 */ mtlr r0
/* 8015E3F0 38 21 00 70 */ addi r1, r1, 0x70
/* 8015E3F4 4E 80 00 20 */ blr

View File

@ -1,136 +0,0 @@
lbl_8015E078:
/* 8015E078 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8015E07C 7C 08 02 A6 */ mflr r0
/* 8015E080 90 01 00 14 */ stw r0, 0x14(r1)
/* 8015E084 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8015E088 93 C1 00 08 */ stw r30, 8(r1)
/* 8015E08C 7C 7F 1B 78 */ mr r31, r3
/* 8015E090 80 03 05 8C */ lwz r0, 0x58c(r3)
/* 8015E094 2C 00 00 01 */ cmpwi r0, 1
/* 8015E098 41 82 00 B0 */ beq lbl_8015E148
/* 8015E09C 40 80 00 10 */ bge lbl_8015E0AC
/* 8015E0A0 2C 00 00 00 */ cmpwi r0, 0
/* 8015E0A4 40 80 00 14 */ bge lbl_8015E0B8
/* 8015E0A8 48 00 01 AC */ b lbl_8015E254
lbl_8015E0AC:
/* 8015E0AC 2C 00 00 03 */ cmpwi r0, 3
/* 8015E0B0 40 80 01 A4 */ bge lbl_8015E254
/* 8015E0B4 48 00 00 F0 */ b lbl_8015E1A4
lbl_8015E0B8:
/* 8015E0B8 80 1F 04 9C */ lwz r0, 0x49c(r31)
/* 8015E0BC 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12
/* 8015E0C0 41 82 00 78 */ beq lbl_8015E138
/* 8015E0C4 80 1F 05 5C */ lwz r0, 0x55c(r31)
/* 8015E0C8 54 00 07 34 */ rlwinm r0, r0, 0, 0x1c, 0x1a
/* 8015E0CC 90 1F 05 5C */ stw r0, 0x55c(r31)
/* 8015E0D0 4B EB EA D1 */ bl fopAcM_cancelCarryNow__FP10fopAc_ac_c
/* 8015E0D4 7F E3 FB 78 */ mr r3, r31
/* 8015E0D8 38 80 00 00 */ li r4, 0
/* 8015E0DC 38 A0 00 00 */ li r5, 0
/* 8015E0E0 4B EB D8 F1 */ bl fopAcM_orderItemEvent__FP10fopAc_ac_cUsUs
/* 8015E0E4 A0 1F 00 FA */ lhz r0, 0xfa(r31)
/* 8015E0E8 60 00 00 08 */ ori r0, r0, 8
/* 8015E0EC B0 1F 00 FA */ sth r0, 0xfa(r31)
/* 8015E0F0 38 7F 04 D0 */ addi r3, r31, 0x4d0
/* 8015E0F4 88 9F 05 80 */ lbz r4, 0x580(r31)
/* 8015E0F8 38 A0 FF FF */ li r5, -1
/* 8015E0FC 88 1F 04 E2 */ lbz r0, 0x4e2(r31)
/* 8015E100 7C 06 07 74 */ extsb r6, r0
/* 8015E104 38 E0 00 00 */ li r7, 0
/* 8015E108 39 00 00 00 */ li r8, 0
/* 8015E10C 4B EB DB 69 */ bl fopAcM_createItemForTrBoxDemo__FPC4cXyziiiPC5csXyzPC4cXyz
/* 8015E110 90 7F 05 88 */ stw r3, 0x588(r31)
/* 8015E114 38 00 00 01 */ li r0, 1
/* 8015E118 90 1F 05 8C */ stw r0, 0x58c(r31)
/* 8015E11C 88 7F 05 80 */ lbz r3, 0x580(r31)
/* 8015E120 48 07 BE 1D */ bl isCatchNotGiveInsect__14dMenu_Insect_cFUc
/* 8015E124 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 8015E128 41 82 01 2C */ beq lbl_8015E254
/* 8015E12C 38 00 00 01 */ li r0, 1
/* 8015E130 98 1F 05 85 */ stb r0, 0x585(r31)
/* 8015E134 48 00 01 20 */ b lbl_8015E254
lbl_8015E138:
/* 8015E138 80 1F 05 5C */ lwz r0, 0x55c(r31)
/* 8015E13C 60 00 00 10 */ ori r0, r0, 0x10
/* 8015E140 90 1F 05 5C */ stw r0, 0x55c(r31)
/* 8015E144 48 00 01 10 */ b lbl_8015E254
lbl_8015E148:
/* 8015E148 A0 1F 00 F8 */ lhz r0, 0xf8(r31)
/* 8015E14C 28 00 00 04 */ cmplwi r0, 4
/* 8015E150 40 82 00 38 */ bne lbl_8015E188
/* 8015E154 80 9F 05 88 */ lwz r4, 0x588(r31)
/* 8015E158 3C 04 00 01 */ addis r0, r4, 1
/* 8015E15C 28 00 FF FF */ cmplwi r0, 0xffff
/* 8015E160 41 82 00 14 */ beq lbl_8015E174
/* 8015E164 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 8015E168 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 8015E16C 38 63 4E C8 */ addi r3, r3, 0x4ec8
/* 8015E170 4B EE 55 7D */ bl setPtI_Id__14dEvt_control_cFUi
lbl_8015E174:
/* 8015E174 38 00 00 00 */ li r0, 0
/* 8015E178 98 1F 05 6D */ stb r0, 0x56d(r31)
/* 8015E17C 38 00 00 02 */ li r0, 2
/* 8015E180 90 1F 05 8C */ stw r0, 0x58c(r31)
/* 8015E184 48 00 00 D0 */ b lbl_8015E254
lbl_8015E188:
/* 8015E188 38 80 00 00 */ li r4, 0
/* 8015E18C 38 A0 00 00 */ li r5, 0
/* 8015E190 4B EB D8 41 */ bl fopAcM_orderItemEvent__FP10fopAc_ac_cUsUs
/* 8015E194 A0 1F 00 FA */ lhz r0, 0xfa(r31)
/* 8015E198 60 00 00 08 */ ori r0, r0, 8
/* 8015E19C B0 1F 00 FA */ sth r0, 0xfa(r31)
/* 8015E1A0 48 00 00 B4 */ b lbl_8015E254
lbl_8015E1A4:
/* 8015E1A4 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 8015E1A8 3B C3 61 C0 */ addi r30, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 8015E1AC 38 7E 4F F8 */ addi r3, r30, 0x4ff8
/* 8015E1B0 3C 80 80 39 */ lis r4, d_d_insect__stringBase0@ha /* 0x80393D98@ha */
/* 8015E1B4 38 84 3D 98 */ addi r4, r4, d_d_insect__stringBase0@l /* 0x80393D98@l */
/* 8015E1B8 4B EE 99 25 */ bl endCheckOld__16dEvent_manager_cFPCc
/* 8015E1BC 2C 03 00 00 */ cmpwi r3, 0
/* 8015E1C0 41 82 00 94 */ beq lbl_8015E254
/* 8015E1C4 38 7E 4E C8 */ addi r3, r30, 0x4ec8
/* 8015E1C8 4B EE 42 A1 */ bl reset__14dEvt_control_cFv
/* 8015E1CC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 8015E1D0 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 8015E1D4 38 63 07 F0 */ addi r3, r3, 0x7f0
/* 8015E1D8 A8 1F 05 82 */ lha r0, 0x582(r31)
/* 8015E1DC 54 00 08 3C */ slwi r0, r0, 1
/* 8015E1E0 3C 80 80 3A */ lis r4, saveBitLabels__16dSv_event_flag_c@ha /* 0x803A7288@ha */
/* 8015E1E4 38 84 72 88 */ addi r4, r4, saveBitLabels__16dSv_event_flag_c@l /* 0x803A7288@l */
/* 8015E1E8 7C 84 02 2E */ lhzx r4, r4, r0
/* 8015E1EC 4B ED 67 D1 */ bl isEventBit__11dSv_event_cCFUs
/* 8015E1F0 2C 03 00 00 */ cmpwi r3, 0
/* 8015E1F4 40 82 00 10 */ bne lbl_8015E204
/* 8015E1F8 88 1F 05 85 */ lbz r0, 0x585(r31)
/* 8015E1FC 28 00 00 00 */ cmplwi r0, 0
/* 8015E200 41 82 00 4C */ beq lbl_8015E24C
lbl_8015E204:
/* 8015E204 38 00 00 01 */ li r0, 1
/* 8015E208 98 1F 05 6D */ stb r0, 0x56d(r31)
/* 8015E20C 38 00 00 00 */ li r0, 0
/* 8015E210 90 1F 05 8C */ stw r0, 0x58c(r31)
/* 8015E214 88 1F 05 84 */ lbz r0, 0x584(r31)
/* 8015E218 28 00 00 00 */ cmplwi r0, 0
/* 8015E21C 40 82 00 38 */ bne lbl_8015E254
/* 8015E220 38 7F 04 D0 */ addi r3, r31, 0x4d0
/* 8015E224 38 80 00 00 */ li r4, 0
/* 8015E228 38 A0 FF FF */ li r5, -1
/* 8015E22C 38 C0 FF FF */ li r6, -1
/* 8015E230 38 E0 00 00 */ li r7, 0
/* 8015E234 39 00 00 00 */ li r8, 0
/* 8015E238 39 20 00 00 */ li r9, 0
/* 8015E23C 4B EB E0 05 */ bl fopAcM_createItem__FPC4cXyziiiPC5csXyzPC4cXyzi
/* 8015E240 38 00 00 01 */ li r0, 1
/* 8015E244 98 1F 05 84 */ stb r0, 0x584(r31)
/* 8015E248 48 00 00 0C */ b lbl_8015E254
lbl_8015E24C:
/* 8015E24C 7F E3 FB 78 */ mr r3, r31
/* 8015E250 4B EB BA 2D */ bl fopAcM_delete__FP10fopAc_ac_c
lbl_8015E254:
/* 8015E254 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8015E258 83 C1 00 08 */ lwz r30, 8(r1)
/* 8015E25C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8015E260 7C 08 03 A6 */ mtlr r0
/* 8015E264 38 21 00 10 */ addi r1, r1, 0x10
/* 8015E268 4E 80 00 20 */ blr

View File

@ -1,26 +0,0 @@
lbl_801AE3FC:
/* 801AE3FC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801AE400 7C 08 02 A6 */ mflr r0
/* 801AE404 90 01 00 14 */ stw r0, 0x14(r1)
/* 801AE408 93 E1 00 0C */ stw r31, 0xc(r1)
/* 801AE40C 93 C1 00 08 */ stw r30, 8(r1)
/* 801AE410 7C 7F 1B 78 */ mr r31, r3
/* 801AE414 4B FF FB 45 */ bl createHeap__10dThunder_cFv
/* 801AE418 2C 03 00 00 */ cmpwi r3, 0
/* 801AE41C 40 82 00 0C */ bne lbl_801AE428
/* 801AE420 38 60 00 05 */ li r3, 5
/* 801AE424 48 00 00 1C */ b lbl_801AE440
lbl_801AE428:
/* 801AE428 7F E3 FB 78 */ mr r3, r31
/* 801AE42C 48 00 00 2D */ bl create__10dThunder_cFv
/* 801AE430 7C 7E 1B 78 */ mr r30, r3
/* 801AE434 7F E3 FB 78 */ mr r3, r31
/* 801AE438 4B FF FB 7D */ bl adjustHeap__10dThunder_cFv
/* 801AE43C 7F C3 F3 78 */ mr r3, r30
lbl_801AE440:
/* 801AE440 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 801AE444 83 C1 00 08 */ lwz r30, 8(r1)
/* 801AE448 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801AE44C 7C 08 03 A6 */ mtlr r0
/* 801AE450 38 21 00 10 */ addi r1, r1, 0x10
/* 801AE454 4E 80 00 20 */ blr

View File

@ -1,19 +0,0 @@
lbl_8024B45C:
/* 8024B45C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8024B460 7C 08 02 A6 */ mflr r0
/* 8024B464 90 01 00 14 */ stw r0, 0x14(r1)
/* 8024B468 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8024B46C A3 E4 00 04 */ lhz r31, 4(r4)
/* 8024B470 4B DE 62 71 */ bl daNpcKakashi_getSwdTutorialStep__Fv
/* 8024B474 54 63 06 3E */ clrlwi r3, r3, 0x18
/* 8024B478 38 63 FF FF */ addi r3, r3, -1
/* 8024B47C 57 E0 04 3E */ clrlwi r0, r31, 0x10
/* 8024B480 7C 60 18 50 */ subf r3, r0, r3
/* 8024B484 30 03 FF FF */ addic r0, r3, -1
/* 8024B488 7C 00 19 10 */ subfe r0, r0, r3
/* 8024B48C 54 03 06 3E */ clrlwi r3, r0, 0x18
/* 8024B490 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8024B494 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8024B498 7C 08 03 A6 */ mtlr r0
/* 8024B49C 38 21 00 10 */ addi r1, r1, 0x10
/* 8024B4A0 4E 80 00 20 */ blr

View File

@ -1,125 +0,0 @@
lbl_80197098:
/* 80197098 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8019709C 7C 08 02 A6 */ mflr r0
/* 801970A0 90 01 00 24 */ stw r0, 0x24(r1)
/* 801970A4 39 61 00 20 */ addi r11, r1, 0x20
/* 801970A8 48 1C B1 2D */ bl _savegpr_27
/* 801970AC 7C 7D 1B 78 */ mr r29, r3
/* 801970B0 7C 9B 23 78 */ mr r27, r4
/* 801970B4 4B E8 1C 2D */ bl fopAc_IsActor__FPv
/* 801970B8 2C 03 00 00 */ cmpwi r3, 0
/* 801970BC 41 82 01 98 */ beq lbl_80197254
/* 801970C0 A8 1D 00 08 */ lha r0, 8(r29)
/* 801970C4 2C 00 01 27 */ cmpwi r0, 0x127
/* 801970C8 40 82 01 8C */ bne lbl_80197254
/* 801970CC 80 1B 00 B0 */ lwz r0, 0xb0(r27)
/* 801970D0 54 03 00 06 */ rlwinm r3, r0, 0, 0, 3
/* 801970D4 80 9D 00 B0 */ lwz r4, 0xb0(r29)
/* 801970D8 54 80 00 06 */ rlwinm r0, r4, 0, 0, 3
/* 801970DC 7C 03 00 40 */ cmplw r3, r0
/* 801970E0 40 82 01 74 */ bne lbl_80197254
/* 801970E4 80 6D 8A DC */ lwz r3, dShopSystem_item_count(r13)
/* 801970E8 88 0D 8A D8 */ lbz r0, data_80451058(r13)
/* 801970EC 7C 03 00 00 */ cmpw r3, r0
/* 801970F0 40 80 01 64 */ bge lbl_80197254
/* 801970F4 54 9F 47 3E */ rlwinm r31, r4, 8, 0x1c, 0x1f
/* 801970F8 3C 60 80 3C */ lis r3, dShopSystem_itemActor@ha /* 0x803BB8A4@ha */
/* 801970FC 84 03 B8 A4 */ lwzu r0, dShopSystem_itemActor@l(r3) /* 0x803BB8A4@l */
/* 80197100 7C 00 E8 40 */ cmplw r0, r29
/* 80197104 41 82 01 50 */ beq lbl_80197254
/* 80197108 80 03 00 04 */ lwz r0, 4(r3)
/* 8019710C 7C 00 E8 40 */ cmplw r0, r29
/* 80197110 41 82 01 44 */ beq lbl_80197254
/* 80197114 80 03 00 08 */ lwz r0, 8(r3)
/* 80197118 7C 00 E8 40 */ cmplw r0, r29
/* 8019711C 41 82 01 38 */ beq lbl_80197254
/* 80197120 80 03 00 0C */ lwz r0, 0xc(r3)
/* 80197124 7C 00 E8 40 */ cmplw r0, r29
/* 80197128 41 82 01 2C */ beq lbl_80197254
/* 8019712C 80 03 00 10 */ lwz r0, 0x10(r3)
/* 80197130 7C 00 E8 40 */ cmplw r0, r29
/* 80197134 41 82 01 20 */ beq lbl_80197254
/* 80197138 80 03 00 14 */ lwz r0, 0x14(r3)
/* 8019713C 7C 00 E8 40 */ cmplw r0, r29
/* 80197140 41 82 01 14 */ beq lbl_80197254
/* 80197144 80 03 00 18 */ lwz r0, 0x18(r3)
/* 80197148 7C 00 E8 40 */ cmplw r0, r29
/* 8019714C 41 82 01 08 */ beq lbl_80197254
/* 80197150 A8 1D 04 B8 */ lha r0, 0x4b8(r29)
/* 80197154 54 1B 06 3E */ clrlwi r27, r0, 0x18
/* 80197158 54 1C C6 3E */ rlwinm r28, r0, 0x18, 0x18, 0x1f
/* 8019715C 54 80 06 3E */ clrlwi r0, r4, 0x18
/* 80197160 7C 1E 03 78 */ mr r30, r0
/* 80197164 28 1B 00 FF */ cmplwi r27, 0xff
/* 80197168 41 82 00 20 */ beq lbl_80197188
/* 8019716C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80197170 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80197174 38 63 09 58 */ addi r3, r3, 0x958
/* 80197178 7F 64 DB 78 */ mr r4, r27
/* 8019717C 4B E9 D6 E5 */ bl isSwitch__12dSv_memBit_cCFi
/* 80197180 2C 03 00 00 */ cmpwi r3, 0
/* 80197184 40 82 00 D0 */ bne lbl_80197254
lbl_80197188:
/* 80197188 28 1C 00 FF */ cmplwi r28, 0xff
/* 8019718C 41 82 00 20 */ beq lbl_801971AC
/* 80197190 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80197194 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80197198 38 63 09 58 */ addi r3, r3, 0x958
/* 8019719C 7F 84 E3 78 */ mr r4, r28
/* 801971A0 4B E9 D6 C1 */ bl isSwitch__12dSv_memBit_cCFi
/* 801971A4 2C 03 00 00 */ cmpwi r3, 0
/* 801971A8 41 82 00 AC */ beq lbl_80197254
lbl_801971AC:
/* 801971AC 28 1B 00 FF */ cmplwi r27, 0xff
/* 801971B0 41 82 00 3C */ beq lbl_801971EC
/* 801971B4 57 C0 06 3E */ clrlwi r0, r30, 0x18
/* 801971B8 28 00 00 2C */ cmplwi r0, 0x2c
/* 801971BC 40 82 00 30 */ bne lbl_801971EC
/* 801971C0 7F C3 F3 78 */ mr r3, r30
/* 801971C4 38 80 00 01 */ li r4, 1
/* 801971C8 4B F0 0D 19 */ bl checkItemGet__FUci
/* 801971CC 2C 03 00 00 */ cmpwi r3, 0
/* 801971D0 41 82 00 1C */ beq lbl_801971EC
/* 801971D4 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 801971D8 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 801971DC 38 63 09 58 */ addi r3, r3, 0x958
/* 801971E0 7F 64 DB 78 */ mr r4, r27
/* 801971E4 4B E9 D6 2D */ bl onSwitch__12dSv_memBit_cFi
/* 801971E8 48 00 00 6C */ b lbl_80197254
lbl_801971EC:
/* 801971EC 28 1F 00 00 */ cmplwi r31, 0
/* 801971F0 40 82 00 2C */ bne lbl_8019721C
/* 801971F4 38 00 00 01 */ li r0, 1
/* 801971F8 98 0D 8A E0 */ stb r0, data_80451060(r13)
/* 801971FC 80 8D 8A DC */ lwz r4, dShopSystem_item_count(r13)
/* 80197200 54 80 10 3A */ slwi r0, r4, 2
/* 80197204 3C 60 80 3C */ lis r3, dShopSystem_itemActor@ha /* 0x803BB8A4@ha */
/* 80197208 38 63 B8 A4 */ addi r3, r3, dShopSystem_itemActor@l /* 0x803BB8A4@l */
/* 8019720C 7F A3 01 2E */ stwx r29, r3, r0
/* 80197210 38 6D 81 68 */ la r3, dShopSystem_itemNo(r13) /* 804506E8-_SDA_BASE_ */
/* 80197214 7F C3 21 AE */ stbx r30, r3, r4
/* 80197218 48 00 00 30 */ b lbl_80197248
lbl_8019721C:
/* 8019721C 3C 60 80 3C */ lis r3, dShopSystem_itemActor@ha /* 0x803BB8A4@ha */
/* 80197220 38 63 B8 A4 */ addi r3, r3, dShopSystem_itemActor@l /* 0x803BB8A4@l */
/* 80197224 57 E0 15 BA */ rlwinm r0, r31, 2, 0x16, 0x1d
/* 80197228 7C 63 02 14 */ add r3, r3, r0
/* 8019722C 84 03 FF FC */ lwzu r0, -4(r3)
/* 80197230 28 00 00 00 */ cmplwi r0, 0
/* 80197234 40 82 00 14 */ bne lbl_80197248
/* 80197238 93 A3 00 00 */ stw r29, 0(r3)
/* 8019723C 38 0D 81 68 */ la r0, dShopSystem_itemNo(r13) /* 804506E8-_SDA_BASE_ */
/* 80197240 7C 60 FA 14 */ add r3, r0, r31
/* 80197244 9B C3 FF FF */ stb r30, -1(r3)
lbl_80197248:
/* 80197248 80 6D 8A DC */ lwz r3, dShopSystem_item_count(r13)
/* 8019724C 38 03 00 01 */ addi r0, r3, 1
/* 80197250 90 0D 8A DC */ stw r0, dShopSystem_item_count(r13)
lbl_80197254:
/* 80197254 38 60 00 00 */ li r3, 0
/* 80197258 39 61 00 20 */ addi r11, r1, 0x20
/* 8019725C 48 1C AF C5 */ bl _restgpr_27
/* 80197260 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80197264 7C 08 03 A6 */ mtlr r0
/* 80197268 38 21 00 20 */ addi r1, r1, 0x20
/* 8019726C 4E 80 00 20 */ blr

View File

@ -1,93 +0,0 @@
lbl_80350084:
/* 80350084 7C 08 02 A6 */ mflr r0
/* 80350088 90 01 00 04 */ stw r0, 4(r1)
/* 8035008C 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 80350090 93 E1 00 14 */ stw r31, 0x14(r1)
/* 80350094 93 C1 00 10 */ stw r30, 0x10(r1)
/* 80350098 3B C3 00 00 */ addi r30, r3, 0
/* 8035009C 80 0D 93 08 */ lwz r0, __AI_init_flag(r13)
/* 803500A0 2C 00 00 01 */ cmpwi r0, 1
/* 803500A4 41 82 01 34 */ beq lbl_803501D8
/* 803500A8 80 6D 84 C0 */ lwz r3, __AIVersion(r13)
/* 803500AC 4B FE A7 C9 */ bl OSRegisterVersion
/* 803500B0 3C 60 80 00 */ lis r3, 0x8000 /* 0x800000F8@ha */
/* 803500B4 80 03 00 F8 */ lwz r0, 0x00F8(r3) /* 0x800000F8@l */
/* 803500B8 3C 60 43 1C */ lis r3, 0x431C /* 0x431BDE83@ha */
/* 803500BC 3C 80 00 01 */ lis r4, 0x0001 /* 0x0000A428@ha */
/* 803500C0 54 00 F0 BE */ srwi r0, r0, 2
/* 803500C4 38 63 DE 83 */ addi r3, r3, 0xDE83 /* 0x431BDE83@l */
/* 803500C8 7C 03 00 16 */ mulhwu r0, r3, r0
/* 803500CC 54 09 8B FE */ srwi r9, r0, 0xf
/* 803500D0 38 A4 A4 28 */ addi r5, r4, 0xA428 /* 0x0000A428@l */
/* 803500D4 38 64 A4 10 */ addi r3, r4, -23536
/* 803500D8 38 04 F6 18 */ addi r0, r4, -2536
/* 803500DC 3C 80 10 62 */ lis r4, 0x1062 /* 0x10624DD3@ha */
/* 803500E0 7C E9 29 D6 */ mullw r7, r9, r5
/* 803500E4 39 44 4D D3 */ addi r10, r4, 0x4DD3 /* 0x10624DD3@l */
/* 803500E8 7C A9 19 D6 */ mullw r5, r9, r3
/* 803500EC 7C 89 01 D6 */ mullw r4, r9, r0
/* 803500F0 1D 09 7B 24 */ mulli r8, r9, 0x7b24
/* 803500F4 1C 69 0B B8 */ mulli r3, r9, 0xbb8
/* 803500F8 7D 0A 40 16 */ mulhwu r8, r10, r8
/* 803500FC 7C EA 38 16 */ mulhwu r7, r10, r7
/* 80350100 7C AA 28 16 */ mulhwu r5, r10, r5
/* 80350104 7C 8A 20 16 */ mulhwu r4, r10, r4
/* 80350108 7C 6A 18 16 */ mulhwu r3, r10, r3
/* 8035010C 55 08 BA 7E */ srwi r8, r8, 9
/* 80350110 54 E7 BA 7E */ srwi r7, r7, 9
/* 80350114 91 0D 93 14 */ stw r8, bound_32KHz+0x4(r13)
/* 80350118 54 A5 BA 7E */ srwi r5, r5, 9
/* 8035011C 54 84 BA 7E */ srwi r4, r4, 9
/* 80350120 90 ED 93 1C */ stw r7, bound_48KHz+0x4(r13)
/* 80350124 3B E0 00 00 */ li r31, 0
/* 80350128 54 63 BA 7E */ srwi r3, r3, 9
/* 8035012C 90 AD 93 24 */ stw r5, min_wait+0x4(r13)
/* 80350130 3C C0 CC 00 */ lis r6, 0xCC00 /* 0xCC006C00@ha */
/* 80350134 90 6D 93 34 */ stw r3, buffer+0x4(r13)
/* 80350138 38 60 00 01 */ li r3, 1
/* 8035013C 80 06 6C 00 */ lwz r0, 0x6C00(r6) /* 0xCC006C00@l */
/* 80350140 90 8D 93 2C */ stw r4, max_wait+0x4(r13)
/* 80350144 54 00 06 F2 */ rlwinm r0, r0, 0, 0x1b, 0x19
/* 80350148 60 00 00 20 */ ori r0, r0, 0x20
/* 8035014C 93 ED 93 10 */ stw r31, bound_32KHz(r13)
/* 80350150 93 ED 93 18 */ stw r31, bound_48KHz(r13)
/* 80350154 93 ED 93 20 */ stw r31, min_wait(r13)
/* 80350158 93 ED 93 28 */ stw r31, max_wait(r13)
/* 8035015C 93 ED 93 30 */ stw r31, buffer(r13)
/* 80350160 80 A6 6C 04 */ lwz r5, 0x6c04(r6)
/* 80350164 90 06 6C 00 */ stw r0, 0x6c00(r6)
/* 80350168 54 A0 06 1E */ rlwinm r0, r5, 0, 0x18, 0xf
/* 8035016C 60 00 00 00 */ nop
/* 80350170 90 06 6C 04 */ stw r0, 0x6c04(r6)
/* 80350174 80 06 6C 04 */ lwz r0, 0x6c04(r6)
/* 80350178 54 00 00 2E */ rlwinm r0, r0, 0, 0, 0x17
/* 8035017C 60 00 00 00 */ nop
/* 80350180 90 06 6C 04 */ stw r0, 0x6c04(r6)
/* 80350184 93 E6 6C 0C */ stw r31, 0x6c0c(r6)
/* 80350188 4B FF FD C1 */ bl __AI_set_stream_sample_rate
/* 8035018C 38 60 00 00 */ li r3, 0
/* 80350190 4B FF FC C5 */ bl AISetDSPSampleRate
/* 80350194 3C 60 80 35 */ lis r3, __AIDHandler@ha /* 0x8035026C@ha */
/* 80350198 93 ED 92 F8 */ stw r31, __AIS_Callback(r13)
/* 8035019C 38 83 02 6C */ addi r4, r3, __AIDHandler@l /* 0x8035026C@l */
/* 803501A0 93 ED 92 FC */ stw r31, __AID_Callback(r13)
/* 803501A4 38 60 00 05 */ li r3, 5
/* 803501A8 93 CD 93 00 */ stw r30, __CallbackStack(r13)
/* 803501AC 4B FE D5 95 */ bl __OSSetInterruptHandler
/* 803501B0 3C 60 04 00 */ lis r3, 0x400
/* 803501B4 4B FE D9 91 */ bl __OSUnmaskInterrupts
/* 803501B8 3C 60 80 35 */ lis r3, __AISHandler@ha /* 0x803501F0@ha */
/* 803501BC 38 83 01 F0 */ addi r4, r3, __AISHandler@l /* 0x803501F0@l */
/* 803501C0 38 60 00 08 */ li r3, 8
/* 803501C4 4B FE D5 7D */ bl __OSSetInterruptHandler
/* 803501C8 3C 60 00 80 */ lis r3, 0x80
/* 803501CC 4B FE D9 79 */ bl __OSUnmaskInterrupts
/* 803501D0 38 00 00 01 */ li r0, 1
/* 803501D4 90 0D 93 08 */ stw r0, __AI_init_flag(r13)
lbl_803501D8:
/* 803501D8 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 803501DC 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 803501E0 83 C1 00 10 */ lwz r30, 0x10(r1)
/* 803501E4 38 21 00 18 */ addi r1, r1, 0x18
/* 803501E8 7C 08 03 A6 */ mtlr r0
/* 803501EC 4E 80 00 20 */ blr

View File

@ -1,41 +0,0 @@
lbl_803482EC:
/* 803482EC 7C 08 02 A6 */ mflr r0
/* 803482F0 2C 03 00 00 */ cmpwi r3, 0
/* 803482F4 90 01 00 04 */ stw r0, 4(r1)
/* 803482F8 38 00 00 00 */ li r0, 0
/* 803482FC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80348300 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80348304 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80348308 90 AD 91 98 */ stw r5, Callback(r13)
/* 8034830C 90 0D 91 90 */ stw r0, StopAtNextInt(r13)
/* 80348310 41 82 00 08 */ beq lbl_80348318
/* 80348314 3C 00 00 01 */ lis r0, 1
lbl_80348318:
/* 80348318 64 00 E4 00 */ oris r0, r0, 0xe400
/* 8034831C 3C 60 CC 00 */ lis r3, 0xCC00 /* 0xCC006000@ha */
/* 80348320 7C 80 03 78 */ or r0, r4, r0
/* 80348324 38 63 60 00 */ addi r3, r3, 0x6000 /* 0xCC006000@l */
/* 80348328 90 03 00 08 */ stw r0, 8(r3)
/* 8034832C 38 00 00 01 */ li r0, 1
/* 80348330 3C 80 80 00 */ lis r4, 0x8000 /* 0x800000F8@ha */
/* 80348334 90 03 00 1C */ stw r0, 0x1c(r3)
/* 80348338 3C 60 80 45 */ lis r3, AlarmForTimeout@ha /* 0x8044C898@ha */
/* 8034833C 3B E3 C8 98 */ addi r31, r3, AlarmForTimeout@l /* 0x8044C898@l */
/* 80348340 80 04 00 F8 */ lwz r0, 0x00F8(r4) /* 0x800000F8@l */
/* 80348344 38 7F 00 00 */ addi r3, r31, 0
/* 80348348 54 00 F0 BE */ srwi r0, r0, 2
/* 8034834C 1F C0 00 0A */ mulli r30, r0, 0xa
/* 80348350 4B FF 25 A9 */ bl OSCreateAlarm
/* 80348354 3C 60 80 34 */ lis r3, AlarmHandlerForTimeout@ha /* 0x80347A18@ha */
/* 80348358 38 E3 7A 18 */ addi r7, r3, AlarmHandlerForTimeout@l /* 0x80347A18@l */
/* 8034835C 38 7F 00 00 */ addi r3, r31, 0
/* 80348360 38 DE 00 00 */ addi r6, r30, 0
/* 80348364 38 A0 00 00 */ li r5, 0
/* 80348368 4B FF 27 F1 */ bl OSSetAlarm
/* 8034836C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80348370 38 60 00 01 */ li r3, 1
/* 80348374 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80348378 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8034837C 38 21 00 20 */ addi r1, r1, 0x20
/* 80348380 7C 08 03 A6 */ mtlr r0
/* 80348384 4E 80 00 20 */ blr

View File

@ -1,39 +0,0 @@
lbl_803481C8:
/* 803481C8 7C 08 02 A6 */ mflr r0
/* 803481CC 90 01 00 04 */ stw r0, 4(r1)
/* 803481D0 38 00 00 00 */ li r0, 0
/* 803481D4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 803481D8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 803481DC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 803481E0 90 CD 91 98 */ stw r6, Callback(r13)
/* 803481E4 3C C0 CC 00 */ lis r6, 0xCC00 /* 0xCC006000@ha */
/* 803481E8 38 C6 60 00 */ addi r6, r6, 0x6000 /* 0xCC006000@l */
/* 803481EC 90 0D 91 90 */ stw r0, StopAtNextInt(r13)
/* 803481F0 64 60 E1 00 */ oris r0, r3, 0xe100
/* 803481F4 3C 60 80 45 */ lis r3, AlarmForTimeout@ha /* 0x8044C898@ha */
/* 803481F8 90 06 00 08 */ stw r0, 8(r6)
/* 803481FC 54 A0 F0 BE */ srwi r0, r5, 2
/* 80348200 3B E3 C8 98 */ addi r31, r3, AlarmForTimeout@l /* 0x8044C898@l */
/* 80348204 90 06 00 0C */ stw r0, 0xc(r6)
/* 80348208 38 00 00 01 */ li r0, 1
/* 8034820C 38 7F 00 00 */ addi r3, r31, 0
/* 80348210 90 86 00 10 */ stw r4, 0x10(r6)
/* 80348214 3C 80 80 00 */ lis r4, 0x8000 /* 0x800000F8@ha */
/* 80348218 90 06 00 1C */ stw r0, 0x1c(r6)
/* 8034821C 80 04 00 F8 */ lwz r0, 0x00F8(r4) /* 0x800000F8@l */
/* 80348220 54 00 F0 BE */ srwi r0, r0, 2
/* 80348224 1F C0 00 0A */ mulli r30, r0, 0xa
/* 80348228 4B FF 26 D1 */ bl OSCreateAlarm
/* 8034822C 3C 60 80 34 */ lis r3, AlarmHandlerForTimeout@ha /* 0x80347A18@ha */
/* 80348230 38 E3 7A 18 */ addi r7, r3, AlarmHandlerForTimeout@l /* 0x80347A18@l */
/* 80348234 38 7F 00 00 */ addi r3, r31, 0
/* 80348238 38 DE 00 00 */ addi r6, r30, 0
/* 8034823C 38 A0 00 00 */ li r5, 0
/* 80348240 4B FF 29 19 */ bl OSSetAlarm
/* 80348244 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80348248 38 60 00 01 */ li r3, 1
/* 8034824C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80348250 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80348254 38 21 00 20 */ addi r1, r1, 0x20
/* 80348258 7C 08 03 A6 */ mtlr r0
/* 8034825C 4E 80 00 20 */ blr

View File

@ -1,6 +0,0 @@
lbl_80348444:
/* 80348444 38 00 00 01 */ li r0, 1
/* 80348448 90 0D 91 90 */ stw r0, StopAtNextInt(r13)
/* 8034844C 38 60 00 01 */ li r3, 1
/* 80348450 90 0D 91 B0 */ stw r0, Breaking(r13)
/* 80348454 4E 80 00 20 */ blr

View File

@ -1,40 +0,0 @@
lbl_8034812C:
/* 8034812C 7C 08 02 A6 */ mflr r0
/* 80348130 38 C0 00 20 */ li r6, 0x20
/* 80348134 90 01 00 04 */ stw r0, 4(r1)
/* 80348138 38 00 00 00 */ li r0, 0
/* 8034813C 3C A0 80 00 */ lis r5, 0x8000 /* 0x800000F8@ha */
/* 80348140 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 80348144 93 E1 00 14 */ stw r31, 0x14(r1)
/* 80348148 93 C1 00 10 */ stw r30, 0x10(r1)
/* 8034814C 90 8D 91 98 */ stw r4, Callback(r13)
/* 80348150 3C 80 CC 00 */ lis r4, 0xCC00 /* 0xCC006000@ha */
/* 80348154 38 E4 60 00 */ addi r7, r4, 0x6000 /* 0xCC006000@l */
/* 80348158 90 0D 91 90 */ stw r0, StopAtNextInt(r13)
/* 8034815C 3C 00 12 00 */ lis r0, 0x1200
/* 80348160 90 04 60 08 */ stw r0, 0x6008(r4)
/* 80348164 3C 80 80 45 */ lis r4, AlarmForTimeout@ha /* 0x8044C898@ha */
/* 80348168 38 00 00 03 */ li r0, 3
/* 8034816C 90 C7 00 10 */ stw r6, 0x10(r7)
/* 80348170 3B E4 C8 98 */ addi r31, r4, AlarmForTimeout@l /* 0x8044C898@l */
/* 80348174 90 67 00 14 */ stw r3, 0x14(r7)
/* 80348178 38 7F 00 00 */ addi r3, r31, 0
/* 8034817C 90 C7 00 18 */ stw r6, 0x18(r7)
/* 80348180 90 07 00 1C */ stw r0, 0x1c(r7)
/* 80348184 80 05 00 F8 */ lwz r0, 0x00F8(r5) /* 0x800000F8@l */
/* 80348188 54 00 F0 BE */ srwi r0, r0, 2
/* 8034818C 1F C0 00 0A */ mulli r30, r0, 0xa
/* 80348190 4B FF 27 69 */ bl OSCreateAlarm
/* 80348194 3C 60 80 34 */ lis r3, AlarmHandlerForTimeout@ha /* 0x80347A18@ha */
/* 80348198 38 E3 7A 18 */ addi r7, r3, AlarmHandlerForTimeout@l /* 0x80347A18@l */
/* 8034819C 38 7F 00 00 */ addi r3, r31, 0
/* 803481A0 38 DE 00 00 */ addi r6, r30, 0
/* 803481A4 38 A0 00 00 */ li r5, 0
/* 803481A8 4B FF 29 B1 */ bl OSSetAlarm
/* 803481AC 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 803481B0 38 60 00 01 */ li r3, 1
/* 803481B4 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 803481B8 83 C1 00 10 */ lwz r30, 0x10(r1)
/* 803481BC 38 21 00 18 */ addi r1, r1, 0x18
/* 803481C0 7C 08 03 A6 */ mtlr r0
/* 803481C4 4E 80 00 20 */ blr

View File

@ -1,42 +0,0 @@
lbl_80347F70:
/* 80347F70 7C 08 02 A6 */ mflr r0
/* 80347F74 39 00 00 00 */ li r8, 0
/* 80347F78 90 01 00 04 */ stw r0, 4(r1)
/* 80347F7C 3C A0 A8 00 */ lis r5, 0xA800 /* 0xA8000040@ha */
/* 80347F80 38 05 00 40 */ addi r0, r5, 0x0040 /* 0xA8000040@l */
/* 80347F84 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 80347F88 38 C0 00 20 */ li r6, 0x20
/* 80347F8C 3C A0 80 00 */ lis r5, 0x8000 /* 0x800000F8@ha */
/* 80347F90 93 E1 00 14 */ stw r31, 0x14(r1)
/* 80347F94 93 C1 00 10 */ stw r30, 0x10(r1)
/* 80347F98 90 8D 91 98 */ stw r4, Callback(r13)
/* 80347F9C 3C 80 CC 00 */ lis r4, 0xCC00 /* 0xCC006000@ha */
/* 80347FA0 38 E4 60 00 */ addi r7, r4, 0x6000 /* 0xCC006000@l */
/* 80347FA4 91 0D 91 90 */ stw r8, StopAtNextInt(r13)
/* 80347FA8 90 04 60 08 */ stw r0, 0x6008(r4)
/* 80347FAC 3C 80 80 45 */ lis r4, AlarmForTimeout@ha /* 0x8044C898@ha */
/* 80347FB0 38 00 00 03 */ li r0, 3
/* 80347FB4 91 07 00 0C */ stw r8, 0xc(r7)
/* 80347FB8 3B E4 C8 98 */ addi r31, r4, AlarmForTimeout@l /* 0x8044C898@l */
/* 80347FBC 90 C7 00 10 */ stw r6, 0x10(r7)
/* 80347FC0 90 67 00 14 */ stw r3, 0x14(r7)
/* 80347FC4 7F E3 FB 78 */ mr r3, r31
/* 80347FC8 90 C7 00 18 */ stw r6, 0x18(r7)
/* 80347FCC 90 07 00 1C */ stw r0, 0x1c(r7)
/* 80347FD0 80 05 00 F8 */ lwz r0, 0x00F8(r5) /* 0x800000F8@l */
/* 80347FD4 54 00 F0 BE */ srwi r0, r0, 2
/* 80347FD8 1F C0 00 0A */ mulli r30, r0, 0xa
/* 80347FDC 4B FF 29 1D */ bl OSCreateAlarm
/* 80347FE0 3C 60 80 34 */ lis r3, AlarmHandlerForTimeout@ha /* 0x80347A18@ha */
/* 80347FE4 38 E3 7A 18 */ addi r7, r3, AlarmHandlerForTimeout@l /* 0x80347A18@l */
/* 80347FE8 38 7F 00 00 */ addi r3, r31, 0
/* 80347FEC 38 DE 00 00 */ addi r6, r30, 0
/* 80347FF0 38 A0 00 00 */ li r5, 0
/* 80347FF4 4B FF 2B 65 */ bl OSSetAlarm
/* 80347FF8 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 80347FFC 38 60 00 01 */ li r3, 1
/* 80348000 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 80348004 83 C1 00 10 */ lwz r30, 0x10(r1)
/* 80348008 38 21 00 18 */ addi r1, r1, 0x18
/* 8034800C 7C 08 03 A6 */ mtlr r0
/* 80348010 4E 80 00 20 */ blr

View File

@ -1,36 +0,0 @@
lbl_80348260:
/* 80348260 7C 08 02 A6 */ mflr r0
/* 80348264 90 01 00 04 */ stw r0, 4(r1)
/* 80348268 38 00 00 00 */ li r0, 0
/* 8034826C 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 80348270 93 E1 00 14 */ stw r31, 0x14(r1)
/* 80348274 93 C1 00 10 */ stw r30, 0x10(r1)
/* 80348278 90 8D 91 98 */ stw r4, Callback(r13)
/* 8034827C 3C 80 CC 00 */ lis r4, 0xCC00 /* 0xCC006000@ha */
/* 80348280 38 84 60 00 */ addi r4, r4, 0x6000 /* 0xCC006000@l */
/* 80348284 90 0D 91 90 */ stw r0, StopAtNextInt(r13)
/* 80348288 64 60 E2 00 */ oris r0, r3, 0xe200
/* 8034828C 3C 60 80 45 */ lis r3, AlarmForTimeout@ha /* 0x8044C898@ha */
/* 80348290 90 04 00 08 */ stw r0, 8(r4)
/* 80348294 38 00 00 01 */ li r0, 1
/* 80348298 3B E3 C8 98 */ addi r31, r3, AlarmForTimeout@l /* 0x8044C898@l */
/* 8034829C 90 04 00 1C */ stw r0, 0x1c(r4)
/* 803482A0 3C 80 80 00 */ lis r4, 0x8000 /* 0x800000F8@ha */
/* 803482A4 38 7F 00 00 */ addi r3, r31, 0
/* 803482A8 80 04 00 F8 */ lwz r0, 0x00F8(r4) /* 0x800000F8@l */
/* 803482AC 54 00 F0 BE */ srwi r0, r0, 2
/* 803482B0 1F C0 00 0A */ mulli r30, r0, 0xa
/* 803482B4 4B FF 26 45 */ bl OSCreateAlarm
/* 803482B8 3C 60 80 34 */ lis r3, AlarmHandlerForTimeout@ha /* 0x80347A18@ha */
/* 803482BC 38 E3 7A 18 */ addi r7, r3, AlarmHandlerForTimeout@l /* 0x80347A18@l */
/* 803482C0 38 7F 00 00 */ addi r3, r31, 0
/* 803482C4 38 DE 00 00 */ addi r6, r30, 0
/* 803482C8 38 A0 00 00 */ li r5, 0
/* 803482CC 4B FF 28 8D */ bl OSSetAlarm
/* 803482D0 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 803482D4 38 60 00 01 */ li r3, 1
/* 803482D8 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 803482DC 83 C1 00 10 */ lwz r30, 0x10(r1)
/* 803482E0 38 21 00 18 */ addi r1, r1, 0x18
/* 803482E4 7C 08 03 A6 */ mtlr r0
/* 803482E8 4E 80 00 20 */ blr

View File

@ -1,36 +0,0 @@
lbl_803480A0:
/* 803480A0 7C 08 02 A6 */ mflr r0
/* 803480A4 90 01 00 04 */ stw r0, 4(r1)
/* 803480A8 38 00 00 00 */ li r0, 0
/* 803480AC 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 803480B0 93 E1 00 14 */ stw r31, 0x14(r1)
/* 803480B4 93 C1 00 10 */ stw r30, 0x10(r1)
/* 803480B8 90 6D 91 98 */ stw r3, Callback(r13)
/* 803480BC 3C 60 CC 00 */ lis r3, 0xCC00 /* 0xCC006000@ha */
/* 803480C0 38 83 60 00 */ addi r4, r3, 0x6000 /* 0xCC006000@l */
/* 803480C4 90 0D 91 90 */ stw r0, StopAtNextInt(r13)
/* 803480C8 3C 00 E0 00 */ lis r0, 0xe000
/* 803480CC 90 03 60 08 */ stw r0, 0x6008(r3)
/* 803480D0 38 00 00 01 */ li r0, 1
/* 803480D4 3C 60 80 45 */ lis r3, AlarmForTimeout@ha /* 0x8044C898@ha */
/* 803480D8 90 04 00 1C */ stw r0, 0x1c(r4)
/* 803480DC 3C 80 80 00 */ lis r4, 0x8000 /* 0x800000F8@ha */
/* 803480E0 3B E3 C8 98 */ addi r31, r3, AlarmForTimeout@l /* 0x8044C898@l */
/* 803480E4 80 04 00 F8 */ lwz r0, 0x00F8(r4) /* 0x800000F8@l */
/* 803480E8 38 7F 00 00 */ addi r3, r31, 0
/* 803480EC 54 00 F0 BE */ srwi r0, r0, 2
/* 803480F0 1F C0 00 0A */ mulli r30, r0, 0xa
/* 803480F4 4B FF 28 05 */ bl OSCreateAlarm
/* 803480F8 3C 60 80 34 */ lis r3, AlarmHandlerForTimeout@ha /* 0x80347A18@ha */
/* 803480FC 38 E3 7A 18 */ addi r7, r3, AlarmHandlerForTimeout@l /* 0x80347A18@l */
/* 80348100 38 7F 00 00 */ addi r3, r31, 0
/* 80348104 38 DE 00 00 */ addi r6, r30, 0
/* 80348108 38 A0 00 00 */ li r5, 0
/* 8034810C 4B FF 2A 4D */ bl OSSetAlarm
/* 80348110 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 80348114 38 60 00 01 */ li r3, 1
/* 80348118 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 8034811C 83 C1 00 10 */ lwz r30, 0x10(r1)
/* 80348120 38 21 00 18 */ addi r1, r1, 0x18
/* 80348124 7C 08 03 A6 */ mtlr r0
/* 80348128 4E 80 00 20 */ blr

View File

@ -1,38 +0,0 @@
lbl_80347EB0:
/* 80347EB0 7C 08 02 A6 */ mflr r0
/* 80347EB4 90 01 00 04 */ stw r0, 4(r1)
/* 80347EB8 38 00 00 00 */ li r0, 0
/* 80347EBC 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 80347EC0 93 E1 00 14 */ stw r31, 0x14(r1)
/* 80347EC4 93 C1 00 10 */ stw r30, 0x10(r1)
/* 80347EC8 90 8D 91 98 */ stw r4, Callback(r13)
/* 80347ECC 3C 80 CC 00 */ lis r4, 0xCC00 /* 0xCC006000@ha */
/* 80347ED0 38 84 60 00 */ addi r4, r4, 0x6000 /* 0xCC006000@l */
/* 80347ED4 90 0D 91 90 */ stw r0, StopAtNextInt(r13)
/* 80347ED8 3C 00 AB 00 */ lis r0, 0xab00
/* 80347EDC 90 04 00 08 */ stw r0, 8(r4)
/* 80347EE0 54 60 F0 BE */ srwi r0, r3, 2
/* 80347EE4 3C 60 80 45 */ lis r3, AlarmForTimeout@ha /* 0x8044C898@ha */
/* 80347EE8 90 04 00 0C */ stw r0, 0xc(r4)
/* 80347EEC 38 00 00 01 */ li r0, 1
/* 80347EF0 3B E3 C8 98 */ addi r31, r3, AlarmForTimeout@l /* 0x8044C898@l */
/* 80347EF4 90 04 00 1C */ stw r0, 0x1c(r4)
/* 80347EF8 3C 80 80 00 */ lis r4, 0x8000 /* 0x800000F8@ha */
/* 80347EFC 38 7F 00 00 */ addi r3, r31, 0
/* 80347F00 80 04 00 F8 */ lwz r0, 0x00F8(r4) /* 0x800000F8@l */
/* 80347F04 54 00 F0 BE */ srwi r0, r0, 2
/* 80347F08 1F C0 00 0A */ mulli r30, r0, 0xa
/* 80347F0C 4B FF 29 ED */ bl OSCreateAlarm
/* 80347F10 3C 60 80 34 */ lis r3, AlarmHandlerForTimeout@ha /* 0x80347A18@ha */
/* 80347F14 38 E3 7A 18 */ addi r7, r3, AlarmHandlerForTimeout@l /* 0x80347A18@l */
/* 80347F18 38 7F 00 00 */ addi r3, r31, 0
/* 80347F1C 38 DE 00 00 */ addi r6, r30, 0
/* 80347F20 38 A0 00 00 */ li r5, 0
/* 80347F24 4B FF 2C 35 */ bl OSSetAlarm
/* 80347F28 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 80347F2C 38 60 00 01 */ li r3, 1
/* 80347F30 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 80347F34 83 C1 00 10 */ lwz r30, 0x10(r1)
/* 80347F38 38 21 00 18 */ addi r1, r1, 0x18
/* 80347F3C 7C 08 03 A6 */ mtlr r0
/* 80347F40 4E 80 00 20 */ blr

View File

@ -1,36 +0,0 @@
lbl_80348014:
/* 80348014 7C 08 02 A6 */ mflr r0
/* 80348018 90 01 00 04 */ stw r0, 4(r1)
/* 8034801C 38 00 00 00 */ li r0, 0
/* 80348020 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 80348024 93 E1 00 14 */ stw r31, 0x14(r1)
/* 80348028 93 C1 00 10 */ stw r30, 0x10(r1)
/* 8034802C 90 6D 91 98 */ stw r3, Callback(r13)
/* 80348030 3C 60 CC 00 */ lis r3, 0xCC00 /* 0xCC006000@ha */
/* 80348034 38 83 60 00 */ addi r4, r3, 0x6000 /* 0xCC006000@l */
/* 80348038 90 0D 91 90 */ stw r0, StopAtNextInt(r13)
/* 8034803C 3C 00 E3 00 */ lis r0, 0xe300
/* 80348040 90 03 60 08 */ stw r0, 0x6008(r3)
/* 80348044 38 00 00 01 */ li r0, 1
/* 80348048 3C 60 80 45 */ lis r3, AlarmForTimeout@ha /* 0x8044C898@ha */
/* 8034804C 90 04 00 1C */ stw r0, 0x1c(r4)
/* 80348050 3C 80 80 00 */ lis r4, 0x8000 /* 0x800000F8@ha */
/* 80348054 3B E3 C8 98 */ addi r31, r3, AlarmForTimeout@l /* 0x8044C898@l */
/* 80348058 80 04 00 F8 */ lwz r0, 0x00F8(r4) /* 0x800000F8@l */
/* 8034805C 38 7F 00 00 */ addi r3, r31, 0
/* 80348060 54 00 F0 BE */ srwi r0, r0, 2
/* 80348064 1F C0 00 0A */ mulli r30, r0, 0xa
/* 80348068 4B FF 28 91 */ bl OSCreateAlarm
/* 8034806C 3C 60 80 34 */ lis r3, AlarmHandlerForTimeout@ha /* 0x80347A18@ha */
/* 80348070 38 E3 7A 18 */ addi r7, r3, AlarmHandlerForTimeout@l /* 0x80347A18@l */
/* 80348074 38 7F 00 00 */ addi r3, r31, 0
/* 80348078 38 DE 00 00 */ addi r6, r30, 0
/* 8034807C 38 A0 00 00 */ li r5, 0
/* 80348080 4B FF 2A D9 */ bl OSSetAlarm
/* 80348084 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 80348088 38 60 00 01 */ li r3, 1
/* 8034808C 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 80348090 83 C1 00 10 */ lwz r30, 0x10(r1)
/* 80348094 38 21 00 18 */ addi r1, r1, 0x18
/* 80348098 7C 08 03 A6 */ mtlr r0
/* 8034809C 4E 80 00 20 */ blr

View File

@ -1,12 +0,0 @@
lbl_80347F44:
/* 80347F44 38 00 00 01 */ li r0, 1
/* 80347F48 90 6D 91 98 */ stw r3, Callback(r13)
/* 80347F4C 3C 60 CC 00 */ lis r3, 0xCC00 /* 0xCC006000@ha */
/* 80347F50 90 0D 91 AC */ stw r0, WaitingCoverClose(r13)
/* 80347F54 38 00 00 00 */ li r0, 0
/* 80347F58 38 83 60 00 */ addi r4, r3, 0x6000 /* 0xCC006000@l */
/* 80347F5C 90 0D 91 90 */ stw r0, StopAtNextInt(r13)
/* 80347F60 38 00 00 02 */ li r0, 2
/* 80347F64 38 60 00 01 */ li r3, 1
/* 80347F68 90 04 00 04 */ stw r0, 4(r4)
/* 80347F6C 4E 80 00 20 */ blr

View File

@ -1,17 +0,0 @@
lbl_80347674:
/* 80347674 7C 08 02 A6 */ mflr r0
/* 80347678 3C 60 80 45 */ lis r3, CommandList@ha /* 0x8044C830@ha */
/* 8034767C 90 01 00 04 */ stw r0, 4(r1)
/* 80347680 38 00 00 00 */ li r0, 0
/* 80347684 38 80 00 00 */ li r4, 0
/* 80347688 94 21 FF F8 */ stwu r1, -8(r1)
/* 8034768C 90 0D 91 D4 */ stw r0, NextCommandNumber(r13)
/* 80347690 38 00 FF FF */ li r0, -1
/* 80347694 90 03 C8 30 */ stw r0, CommandList@l(r3) /* 0x8044C830@l */
/* 80347698 38 60 00 00 */ li r3, 0
/* 8034769C 48 00 0D D9 */ bl __DVDLowSetWAType
/* 803476A0 4B FF 32 01 */ bl OSInitAlarm
/* 803476A4 80 01 00 0C */ lwz r0, 0xc(r1)
/* 803476A8 38 21 00 08 */ addi r1, r1, 8
/* 803476AC 7C 08 03 A6 */ mtlr r0
/* 803476B0 4E 80 00 20 */ blr

View File

@ -1,18 +0,0 @@
lbl_80348474:
/* 80348474 7C 08 02 A6 */ mflr r0
/* 80348478 90 01 00 04 */ stw r0, 4(r1)
/* 8034847C 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 80348480 93 E1 00 14 */ stw r31, 0x14(r1)
/* 80348484 3B E4 00 00 */ addi r31, r4, 0
/* 80348488 93 C1 00 10 */ stw r30, 0x10(r1)
/* 8034848C 3B C3 00 00 */ addi r30, r3, 0
/* 80348490 4B FF 52 65 */ bl OSDisableInterrupts
/* 80348494 93 CD 91 B4 */ stw r30, WorkAroundType(r13)
/* 80348498 93 ED 91 B8 */ stw r31, WorkAroundSeekLocation(r13)
/* 8034849C 4B FF 52 81 */ bl OSRestoreInterrupts
/* 803484A0 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 803484A4 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 803484A8 83 C1 00 10 */ lwz r30, 0x10(r1)
/* 803484AC 38 21 00 18 */ addi r1, r1, 0x18
/* 803484B0 7C 08 03 A6 */ mtlr r0
/* 803484B4 4E 80 00 20 */ blr

View File

@ -1,17 +0,0 @@
lbl_803484B8:
/* 803484B8 3C 80 80 45 */ lis r4, AlarmForBreak@ha /* 0x8044C8C0@ha */
/* 803484BC 38 04 C8 C0 */ addi r0, r4, AlarmForBreak@l /* 0x8044C8C0@l */
/* 803484C0 7C 03 00 40 */ cmplw r3, r0
/* 803484C4 40 82 00 0C */ bne lbl_803484D0
/* 803484C8 38 60 00 01 */ li r3, 1
/* 803484CC 4E 80 00 20 */ blr
lbl_803484D0:
/* 803484D0 3C 80 80 45 */ lis r4, AlarmForTimeout@ha /* 0x8044C898@ha */
/* 803484D4 38 04 C8 98 */ addi r0, r4, AlarmForTimeout@l /* 0x8044C898@l */
/* 803484D8 7C 03 00 40 */ cmplw r3, r0
/* 803484DC 40 82 00 0C */ bne lbl_803484E8
/* 803484E0 38 60 00 01 */ li r3, 1
/* 803484E4 4E 80 00 20 */ blr
lbl_803484E8:
/* 803484E8 38 60 00 00 */ li r3, 0
/* 803484EC 4E 80 00 20 */ blr

View File

@ -1,33 +0,0 @@
lbl_8033F7FC:
/* 8033F7FC 7C 08 02 A6 */ mflr r0
/* 8033F800 90 01 00 04 */ stw r0, 4(r1)
/* 8033F804 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8033F808 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8033F80C 3C 60 80 00 */ lis r3, 0x8000 /* 0x800000DC@ha */
/* 8033F810 80 63 00 DC */ lwz r3, 0x00DC(r3) /* 0x800000DC@l */
/* 8033F814 48 00 00 04 */ b lbl_8033F818
lbl_8033F818:
/* 8033F818 48 00 00 04 */ b lbl_8033F81C
lbl_8033F81C:
/* 8033F81C 48 00 00 2C */ b lbl_8033F848
lbl_8033F820:
/* 8033F820 A0 03 02 C8 */ lhz r0, 0x2c8(r3)
/* 8033F824 83 E3 02 FC */ lwz r31, 0x2fc(r3)
/* 8033F828 2C 00 00 04 */ cmpwi r0, 4
/* 8033F82C 41 82 00 14 */ beq lbl_8033F840
/* 8033F830 40 80 00 14 */ bge lbl_8033F844
/* 8033F834 2C 00 00 01 */ cmpwi r0, 1
/* 8033F838 41 82 00 08 */ beq lbl_8033F840
/* 8033F83C 48 00 00 08 */ b lbl_8033F844
lbl_8033F840:
/* 8033F840 48 00 1D 19 */ bl OSCancelThread
lbl_8033F844:
/* 8033F844 7F E3 FB 78 */ mr r3, r31
lbl_8033F848:
/* 8033F848 28 03 00 00 */ cmplwi r3, 0
/* 8033F84C 40 82 FF D4 */ bne lbl_8033F820
/* 8033F850 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8033F854 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8033F858 38 21 00 10 */ addi r1, r1, 0x10
/* 8033F85C 7C 08 03 A6 */ mtlr r0
/* 8033F860 4E 80 00 20 */ blr

View File

@ -1,17 +0,0 @@
lbl_8033FAAC:
/* 8033FAAC 3C 60 80 45 */ lis r3, __OSRebootParams@ha /* 0x8044BAB0@ha */
/* 8033FAB0 38 63 BA B0 */ addi r3, r3, __OSRebootParams@l /* 0x8044BAB0@l */
/* 8033FAB4 80 03 00 00 */ lwz r0, 0(r3)
/* 8033FAB8 2C 00 00 00 */ cmpwi r0, 0
/* 8033FABC 41 82 00 10 */ beq lbl_8033FACC
/* 8033FAC0 80 03 00 04 */ lwz r0, 4(r3)
/* 8033FAC4 64 03 80 00 */ oris r3, r0, 0x8000
/* 8033FAC8 48 00 00 18 */ b lbl_8033FAE0
lbl_8033FACC:
/* 8033FACC 3C 60 CC 00 */ lis r3, 0xCC00 /* 0xCC003000@ha */
/* 8033FAD0 38 63 30 00 */ addi r3, r3, 0x3000 /* 0xCC003000@l */
/* 8033FAD4 80 03 00 24 */ lwz r0, 0x24(r3)
/* 8033FAD8 54 00 00 38 */ rlwinm r0, r0, 0, 0, 0x1c
/* 8033FADC 54 03 E8 FE */ srwi r3, r0, 3
lbl_8033FAE0:
/* 8033FAE0 4E 80 00 20 */ blr

View File

@ -1,144 +0,0 @@
lbl_8033F8AC:
/* 8033F8AC 7C 08 02 A6 */ mflr r0
/* 8033F8B0 90 01 00 04 */ stw r0, 4(r1)
/* 8033F8B4 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8033F8B8 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 8033F8BC 93 C1 00 28 */ stw r30, 0x28(r1)
/* 8033F8C0 93 A1 00 24 */ stw r29, 0x24(r1)
/* 8033F8C4 93 81 00 20 */ stw r28, 0x20(r1)
/* 8033F8C8 7C 7C 1B 78 */ mr r28, r3
/* 8033F8CC 7C 9D 23 78 */ mr r29, r4
/* 8033F8D0 7C BE 2B 78 */ mr r30, r5
/* 8033F8D4 48 00 13 F1 */ bl OSDisableScheduler
/* 8033F8D8 2C 1C 00 01 */ cmpwi r28, 1
/* 8033F8DC 40 82 00 28 */ bne lbl_8033F904
/* 8033F8E0 2C 1E 00 00 */ cmpwi r30, 0
/* 8033F8E4 41 82 00 20 */ beq lbl_8033F904
/* 8033F8E8 48 00 08 5D */ bl __OSLockSram
/* 8033F8EC 88 03 00 13 */ lbz r0, 0x13(r3)
/* 8033F8F0 60 00 00 40 */ ori r0, r0, 0x40
/* 8033F8F4 98 03 00 13 */ stb r0, 0x13(r3)
/* 8033F8F8 38 60 00 01 */ li r3, 1
/* 8033F8FC 48 00 0C 3D */ bl __OSUnlockSram
/* 8033F900 3B A0 00 00 */ li r29, 0
lbl_8033F904:
/* 8033F904 2C 1C 00 02 */ cmpwi r28, 2
/* 8033F908 41 82 00 24 */ beq lbl_8033F92C
/* 8033F90C 2C 1C 00 00 */ cmpwi r28, 0
/* 8033F910 40 82 00 78 */ bne lbl_8033F988
/* 8033F914 80 0D 91 18 */ lwz r0, bootThisDol(r13)
/* 8033F918 28 00 00 00 */ cmplwi r0, 0
/* 8033F91C 40 82 00 10 */ bne lbl_8033F92C
/* 8033F920 3C 1D 3F FF */ addis r0, r29, 0x3fff
/* 8033F924 28 00 00 00 */ cmplwi r0, 0
/* 8033F928 40 82 00 60 */ bne lbl_8033F988
lbl_8033F92C:
/* 8033F92C 4B FF BB 69 */ bl __OSStopAudioSystem
/* 8033F930 38 60 00 01 */ li r3, 1
/* 8033F934 48 01 02 C1 */ bl __PADDisableRecalibration
/* 8033F938 7C 7F 1B 78 */ mr r31, r3
/* 8033F93C 48 00 00 04 */ b lbl_8033F940
lbl_8033F940:
/* 8033F940 48 00 00 04 */ b lbl_8033F944
lbl_8033F944:
/* 8033F944 38 60 00 00 */ li r3, 0
/* 8033F948 4B FF FD 9D */ bl __OSCallResetFunctions
/* 8033F94C 2C 03 00 00 */ cmpwi r3, 0
/* 8033F950 41 82 FF F4 */ beq lbl_8033F944
/* 8033F954 48 00 00 04 */ b lbl_8033F958
lbl_8033F958:
/* 8033F958 48 00 00 04 */ b lbl_8033F95C
lbl_8033F95C:
/* 8033F95C 48 00 0C 25 */ bl __OSSyncSram
/* 8033F960 2C 03 00 00 */ cmpwi r3, 0
/* 8033F964 41 82 FF F8 */ beq lbl_8033F95C
/* 8033F968 4B FF DD 8D */ bl OSDisableInterrupts
/* 8033F96C 38 60 00 01 */ li r3, 1
/* 8033F970 4B FF FD 75 */ bl __OSCallResetFunctions
/* 8033F974 4B FF BE 79 */ bl LCDisable
/* 8033F978 7F E3 FB 78 */ mr r3, r31
/* 8033F97C 48 01 02 79 */ bl __PADDisableRecalibration
/* 8033F980 4B FF FE 7D */ bl KillThreads
/* 8033F984 48 00 00 48 */ b lbl_8033F9CC
lbl_8033F988:
/* 8033F988 4B FF BB 0D */ bl __OSStopAudioSystem
/* 8033F98C 48 00 00 04 */ b lbl_8033F990
lbl_8033F990:
/* 8033F990 48 00 00 04 */ b lbl_8033F994
lbl_8033F994:
/* 8033F994 38 60 00 00 */ li r3, 0
/* 8033F998 4B FF FD 4D */ bl __OSCallResetFunctions
/* 8033F99C 2C 03 00 00 */ cmpwi r3, 0
/* 8033F9A0 41 82 FF F4 */ beq lbl_8033F994
/* 8033F9A4 48 00 00 04 */ b lbl_8033F9A8
lbl_8033F9A8:
/* 8033F9A8 48 00 00 04 */ b lbl_8033F9AC
lbl_8033F9AC:
/* 8033F9AC 48 00 0B D5 */ bl __OSSyncSram
/* 8033F9B0 2C 03 00 00 */ cmpwi r3, 0
/* 8033F9B4 41 82 FF F8 */ beq lbl_8033F9AC
/* 8033F9B8 4B FF DD 3D */ bl OSDisableInterrupts
/* 8033F9BC 38 60 00 01 */ li r3, 1
/* 8033F9C0 4B FF FD 25 */ bl __OSCallResetFunctions
/* 8033F9C4 4B FF BE 29 */ bl LCDisable
/* 8033F9C8 4B FF FE 35 */ bl KillThreads
lbl_8033F9CC:
/* 8033F9CC 2C 1C 00 01 */ cmpwi r28, 1
/* 8033F9D0 40 82 00 28 */ bne lbl_8033F9F8
/* 8033F9D4 4B FF DD 21 */ bl OSDisableInterrupts
/* 8033F9D8 3C 60 CC 00 */ lis r3, 0xCC00 /* 0xCC002000@ha */
/* 8033F9DC 38 63 20 00 */ addi r3, r3, 0x2000 /* 0xCC002000@l */
/* 8033F9E0 38 00 00 00 */ li r0, 0
/* 8033F9E4 B0 03 00 02 */ sth r0, 2(r3)
/* 8033F9E8 4B FF BC DD */ bl ICFlashInvalidate
/* 8033F9EC 57 A3 18 38 */ slwi r3, r29, 3
/* 8033F9F0 4B FF FD 9D */ bl Reset
/* 8033F9F4 48 00 00 34 */ b lbl_8033FA28
lbl_8033F9F8:
/* 8033F9F8 2C 1C 00 00 */ cmpwi r28, 0
/* 8033F9FC 40 82 00 2C */ bne lbl_8033FA28
/* 8033FA00 2C 1E 00 01 */ cmpwi r30, 1
/* 8033FA04 40 82 00 14 */ bne lbl_8033FA18
/* 8033FA08 3C 60 80 3D */ lis r3, lit_153@ha /* 0x803D07E8@ha */
/* 8033FA0C 4C C6 31 82 */ crclr 6
/* 8033FA10 38 63 07 E8 */ addi r3, r3, lit_153@l /* 0x803D07E8@l */
/* 8033FA14 4B CC 70 A9 */ bl OSReport
lbl_8033FA18:
/* 8033FA18 48 00 12 ED */ bl OSEnableScheduler
/* 8033FA1C 7F A3 EB 78 */ mr r3, r29
/* 8033FA20 80 8D 91 18 */ lwz r4, bootThisDol(r13)
/* 8033FA24 4B FF FB AD */ bl __OSReboot
lbl_8033FA28:
/* 8033FA28 3F E0 80 00 */ lis r31, 0x8000 /* 0x80000040@ha */
/* 8033FA2C 38 7F 00 40 */ addi r3, r31, 0x0040 /* 0x80000040@l */
/* 8033FA30 38 80 00 00 */ li r4, 0
/* 8033FA34 38 A0 00 8C */ li r5, 0x8c
/* 8033FA38 4B CC 3A 21 */ bl memset
/* 8033FA3C 38 7F 00 D4 */ addi r3, r31, 0xd4
/* 8033FA40 38 80 00 00 */ li r4, 0
/* 8033FA44 38 A0 00 14 */ li r5, 0x14
/* 8033FA48 4B CC 3A 11 */ bl memset
/* 8033FA4C 38 7F 00 F4 */ addi r3, r31, 0xf4
/* 8033FA50 38 80 00 00 */ li r4, 0
/* 8033FA54 38 A0 00 04 */ li r5, 4
/* 8033FA58 4B CC 3A 01 */ bl memset
/* 8033FA5C 38 7F 30 00 */ addi r3, r31, 0x3000
/* 8033FA60 38 80 00 00 */ li r4, 0
/* 8033FA64 38 A0 00 C0 */ li r5, 0xc0
/* 8033FA68 4B CC 39 F1 */ bl memset
/* 8033FA6C 38 7F 30 C8 */ addi r3, r31, 0x30c8
/* 8033FA70 38 80 00 00 */ li r4, 0
/* 8033FA74 38 A0 00 0C */ li r5, 0xc
/* 8033FA78 4B CC 39 E1 */ bl memset
/* 8033FA7C 38 7F 30 E2 */ addi r3, r31, 0x30e2
/* 8033FA80 38 80 00 00 */ li r4, 0
/* 8033FA84 38 A0 00 01 */ li r5, 1
/* 8033FA88 4B CC 39 D1 */ bl memset
/* 8033FA8C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8033FA90 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 8033FA94 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 8033FA98 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 8033FA9C 83 81 00 20 */ lwz r28, 0x20(r1)
/* 8033FAA0 38 21 00 30 */ addi r1, r1, 0x30
/* 8033FAA4 7C 08 03 A6 */ mtlr r0
/* 8033FAA8 4E 80 00 20 */ blr

View File

@ -1,49 +0,0 @@
lbl_8033F6E4:
/* 8033F6E4 7C 08 02 A6 */ mflr r0
/* 8033F6E8 90 01 00 04 */ stw r0, 4(r1)
/* 8033F6EC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8033F6F0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8033F6F4 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8033F6F8 3B C0 00 00 */ li r30, 0
/* 8033F6FC 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8033F700 3B A3 00 00 */ addi r29, r3, 0
/* 8033F704 38 60 00 00 */ li r3, 0
/* 8033F708 83 ED 91 10 */ lwz r31, ResetFunctionQueue(r13)
/* 8033F70C 48 00 00 3C */ b lbl_8033F748
lbl_8033F710:
/* 8033F710 2C 1E 00 00 */ cmpwi r30, 0
/* 8033F714 41 82 00 10 */ beq lbl_8033F724
/* 8033F718 80 1F 00 04 */ lwz r0, 4(r31)
/* 8033F71C 7C 03 00 40 */ cmplw r3, r0
/* 8033F720 40 82 00 30 */ bne lbl_8033F750
lbl_8033F724:
/* 8033F724 81 9F 00 00 */ lwz r12, 0(r31)
/* 8033F728 38 7D 00 00 */ addi r3, r29, 0
/* 8033F72C 7D 88 03 A6 */ mtlr r12
/* 8033F730 4E 80 00 21 */ blrl
/* 8033F734 7C 60 00 34 */ cntlzw r0, r3
/* 8033F738 80 7F 00 04 */ lwz r3, 4(r31)
/* 8033F73C 54 00 D9 7E */ srwi r0, r0, 5
/* 8033F740 83 FF 00 08 */ lwz r31, 8(r31)
/* 8033F744 7F DE 03 78 */ or r30, r30, r0
lbl_8033F748:
/* 8033F748 28 1F 00 00 */ cmplwi r31, 0
/* 8033F74C 40 82 FF C4 */ bne lbl_8033F710
lbl_8033F750:
/* 8033F750 48 00 0E 31 */ bl __OSSyncSram
/* 8033F754 7C 60 00 34 */ cntlzw r0, r3
/* 8033F758 54 00 D9 7E */ srwi r0, r0, 5
/* 8033F75C 7F DE 03 79 */ or. r30, r30, r0
/* 8033F760 41 82 00 0C */ beq lbl_8033F76C
/* 8033F764 38 60 00 00 */ li r3, 0
/* 8033F768 48 00 00 08 */ b lbl_8033F770
lbl_8033F76C:
/* 8033F76C 38 60 00 01 */ li r3, 1
lbl_8033F770:
/* 8033F770 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8033F774 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8033F778 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8033F77C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8033F780 38 21 00 20 */ addi r1, r1, 0x20
/* 8033F784 7C 08 03 A6 */ mtlr r0
/* 8033F788 4E 80 00 20 */ blr

View File

@ -1,180 +0,0 @@
lbl_8033FBD8:
/* 8033FBD8 7C 08 02 A6 */ mflr r0
/* 8033FBDC 90 01 00 04 */ stw r0, 4(r1)
/* 8033FBE0 94 21 FF E8 */ stwu r1, -0x18(r1)
/* 8033FBE4 93 E1 00 14 */ stw r31, 0x14(r1)
/* 8033FBE8 93 C1 00 10 */ stw r30, 0x10(r1)
/* 8033FBEC 93 A1 00 0C */ stw r29, 0xc(r1)
/* 8033FBF0 4B FF DB 05 */ bl OSDisableInterrupts
/* 8033FBF4 7C 7E 1B 78 */ mr r30, r3
/* 8033FBF8 48 00 2B 25 */ bl __OSGetSystemTime
/* 8033FBFC 3C A0 CC 00 */ lis r5, 0xCC00 /* 0xCC003000@ha */
/* 8033FC00 80 05 30 00 */ lwz r0, 0x3000(r5) /* 0xCC003000@l */
/* 8033FC04 54 00 03 DF */ rlwinm. r0, r0, 0, 0xf, 0xf
/* 8033FC08 40 82 00 DC */ bne lbl_8033FCE4
/* 8033FC0C 80 0D 91 24 */ lwz r0, Down(r13)
/* 8033FC10 2C 00 00 00 */ cmpwi r0, 0
/* 8033FC14 40 82 00 40 */ bne lbl_8033FC54
/* 8033FC18 80 0D 91 30 */ lwz r0, HoldUp(r13)
/* 8033FC1C 38 C0 00 00 */ li r6, 0
/* 8033FC20 80 AD 91 34 */ lwz r5, HoldUp+0x4(r13)
/* 8033FC24 38 E0 00 01 */ li r7, 1
/* 8033FC28 7C 00 32 78 */ xor r0, r0, r6
/* 8033FC2C 7C A5 32 78 */ xor r5, r5, r6
/* 8033FC30 90 ED 91 24 */ stw r7, Down(r13)
/* 8033FC34 7C A0 03 79 */ or. r0, r5, r0
/* 8033FC38 41 82 00 08 */ beq lbl_8033FC40
/* 8033FC3C 48 00 00 08 */ b lbl_8033FC44
lbl_8033FC40:
/* 8033FC40 7C C7 33 78 */ mr r7, r6
lbl_8033FC44:
/* 8033FC44 90 8D 91 3C */ stw r4, HoldDown+0x4(r13)
/* 8033FC48 7C FD 3B 78 */ mr r29, r7
/* 8033FC4C 90 6D 91 38 */ stw r3, HoldDown(r13)
/* 8033FC50 48 00 01 48 */ b lbl_8033FD98
lbl_8033FC54:
/* 8033FC54 80 0D 91 30 */ lwz r0, HoldUp(r13)
/* 8033FC58 39 20 00 00 */ li r9, 0
/* 8033FC5C 80 AD 91 34 */ lwz r5, HoldUp+0x4(r13)
/* 8033FC60 39 40 00 01 */ li r10, 1
/* 8033FC64 7C 00 4A 78 */ xor r0, r0, r9
/* 8033FC68 7C A5 4A 78 */ xor r5, r5, r9
/* 8033FC6C 7C A0 03 79 */ or. r0, r5, r0
/* 8033FC70 40 82 00 58 */ bne lbl_8033FCC8
/* 8033FC74 3C C0 80 00 */ lis r6, 0x8000 /* 0x800000F8@ha */
/* 8033FC78 80 AD 91 3C */ lwz r5, HoldDown+0x4(r13)
/* 8033FC7C 80 E6 00 F8 */ lwz r7, 0x00F8(r6) /* 0x800000F8@l */
/* 8033FC80 3C C0 43 1C */ lis r6, 0x431C /* 0x431BDE83@ha */
/* 8033FC84 39 06 DE 83 */ addi r8, r6, 0xDE83 /* 0x431BDE83@l */
/* 8033FC88 80 0D 91 38 */ lwz r0, HoldDown(r13)
/* 8033FC8C 54 E6 F0 BE */ srwi r6, r7, 2
/* 8033FC90 7C C8 30 16 */ mulhwu r6, r8, r6
/* 8033FC94 54 C6 8B FE */ srwi r6, r6, 0xf
/* 8033FC98 1C C6 00 64 */ mulli r6, r6, 0x64
/* 8033FC9C 7C E5 20 10 */ subfc r7, r5, r4
/* 8033FCA0 7C 00 19 10 */ subfe r0, r0, r3
/* 8033FCA4 54 C8 E8 FE */ srwi r8, r6, 3
/* 8033FCA8 6C 05 80 00 */ xoris r5, r0, 0x8000
/* 8033FCAC 6D 26 80 00 */ xoris r6, r9, 0x8000
/* 8033FCB0 7C 07 40 10 */ subfc r0, r7, r8
/* 8033FCB4 7C A5 31 10 */ subfe r5, r5, r6
/* 8033FCB8 7C A6 31 10 */ subfe r5, r6, r6
/* 8033FCBC 7C A5 00 D1 */ neg. r5, r5
/* 8033FCC0 40 82 00 08 */ bne lbl_8033FCC8
/* 8033FCC4 7D 2A 4B 78 */ mr r10, r9
lbl_8033FCC8:
/* 8033FCC8 2C 0A 00 00 */ cmpwi r10, 0
/* 8033FCCC 41 82 00 0C */ beq lbl_8033FCD8
/* 8033FCD0 38 00 00 01 */ li r0, 1
/* 8033FCD4 48 00 00 08 */ b lbl_8033FCDC
lbl_8033FCD8:
/* 8033FCD8 38 00 00 00 */ li r0, 0
lbl_8033FCDC:
/* 8033FCDC 7C 1D 03 78 */ mr r29, r0
/* 8033FCE0 48 00 00 B8 */ b lbl_8033FD98
lbl_8033FCE4:
/* 8033FCE4 80 0D 91 24 */ lwz r0, Down(r13)
/* 8033FCE8 2C 00 00 00 */ cmpwi r0, 0
/* 8033FCEC 41 82 00 34 */ beq lbl_8033FD20
/* 8033FCF0 80 AD 91 28 */ lwz r5, LastState(r13)
/* 8033FCF4 38 00 00 00 */ li r0, 0
/* 8033FCF8 90 0D 91 24 */ stw r0, Down(r13)
/* 8033FCFC 2C 05 00 00 */ cmpwi r5, 0
/* 8033FD00 3B A5 00 00 */ addi r29, r5, 0
/* 8033FD04 41 82 00 10 */ beq lbl_8033FD14
/* 8033FD08 90 8D 91 34 */ stw r4, HoldUp+0x4(r13)
/* 8033FD0C 90 6D 91 30 */ stw r3, HoldUp(r13)
/* 8033FD10 48 00 00 88 */ b lbl_8033FD98
lbl_8033FD14:
/* 8033FD14 90 0D 91 34 */ stw r0, HoldUp+0x4(r13)
/* 8033FD18 90 0D 91 30 */ stw r0, HoldUp(r13)
/* 8033FD1C 48 00 00 7C */ b lbl_8033FD98
lbl_8033FD20:
/* 8033FD20 80 CD 91 30 */ lwz r6, HoldUp(r13)
/* 8033FD24 39 00 00 00 */ li r8, 0
/* 8033FD28 80 ED 91 34 */ lwz r7, HoldUp+0x4(r13)
/* 8033FD2C 7C C0 42 78 */ xor r0, r6, r8
/* 8033FD30 7C E5 42 78 */ xor r5, r7, r8
/* 8033FD34 7C A0 03 79 */ or. r0, r5, r0
/* 8033FD38 41 82 00 50 */ beq lbl_8033FD88
/* 8033FD3C 3C A0 80 00 */ lis r5, 0x8000 /* 0x800000F8@ha */
/* 8033FD40 80 05 00 F8 */ lwz r0, 0x00F8(r5) /* 0x800000F8@l */
/* 8033FD44 3C A0 10 62 */ lis r5, 0x1062 /* 0x10624DD3@ha */
/* 8033FD48 38 A5 4D D3 */ addi r5, r5, 0x4DD3 /* 0x10624DD3@l */
/* 8033FD4C 54 00 F0 BE */ srwi r0, r0, 2
/* 8033FD50 7C 05 00 16 */ mulhwu r0, r5, r0
/* 8033FD54 54 00 D1 BE */ srwi r0, r0, 6
/* 8033FD58 1C 00 00 28 */ mulli r0, r0, 0x28
/* 8033FD5C 7C E7 20 10 */ subfc r7, r7, r4
/* 8033FD60 7C A6 19 10 */ subfe r5, r6, r3
/* 8033FD64 6C A6 80 00 */ xoris r6, r5, 0x8000
/* 8033FD68 6D 05 80 00 */ xoris r5, r8, 0x8000
/* 8033FD6C 7C 00 38 10 */ subfc r0, r0, r7
/* 8033FD70 7C A5 31 10 */ subfe r5, r5, r6
/* 8033FD74 7C A6 31 10 */ subfe r5, r6, r6
/* 8033FD78 7C A5 00 D1 */ neg. r5, r5
/* 8033FD7C 41 82 00 0C */ beq lbl_8033FD88
/* 8033FD80 3B A0 00 01 */ li r29, 1
/* 8033FD84 48 00 00 14 */ b lbl_8033FD98
lbl_8033FD88:
/* 8033FD88 38 00 00 00 */ li r0, 0
/* 8033FD8C 90 0D 91 34 */ stw r0, HoldUp+0x4(r13)
/* 8033FD90 3B A0 00 00 */ li r29, 0
/* 8033FD94 90 0D 91 30 */ stw r0, HoldUp(r13)
lbl_8033FD98:
/* 8033FD98 3C A0 80 00 */ lis r5, 0x8000 /* 0x800030E3@ha */
/* 8033FD9C 93 AD 91 28 */ stw r29, LastState(r13)
/* 8033FDA0 88 05 30 E3 */ lbz r0, 0x30E3(r5) /* 0x800030E3@l */
/* 8033FDA4 54 00 06 FF */ clrlwi. r0, r0, 0x1b
/* 8033FDA8 41 82 00 A0 */ beq lbl_8033FE48
/* 8033FDAC 1D 40 00 3C */ mulli r10, r0, 0x3c
/* 8033FDB0 80 05 00 F8 */ lwz r0, 0xf8(r5)
/* 8033FDB4 81 2D 90 B4 */ lwz r9, __OSStartTime+0x4(r13)
/* 8033FDB8 81 0D 90 B0 */ lwz r8, __OSStartTime(r13)
/* 8033FDBC 54 06 F0 BE */ srwi r6, r0, 2
/* 8033FDC0 7D 40 FE 70 */ srawi r0, r10, 0x1f
/* 8033FDC4 7C E0 31 D6 */ mullw r7, r0, r6
/* 8033FDC8 7C 0A 30 16 */ mulhwu r0, r10, r6
/* 8033FDCC 7C AA 31 D6 */ mullw r5, r10, r6
/* 8033FDD0 7D 29 28 14 */ addc r9, r9, r5
/* 8033FDD4 3B E0 00 00 */ li r31, 0
/* 8033FDD8 7C E7 02 14 */ add r7, r7, r0
/* 8033FDDC 7C 0A F9 D6 */ mullw r0, r10, r31
/* 8033FDE0 7C 07 02 14 */ add r0, r7, r0
/* 8033FDE4 7D 08 01 14 */ adde r8, r8, r0
/* 8033FDE8 6D 07 80 00 */ xoris r7, r8, 0x8000
/* 8033FDEC 6C 65 80 00 */ xoris r5, r3, 0x8000
/* 8033FDF0 7C 04 48 10 */ subfc r0, r4, r9
/* 8033FDF4 7C A5 39 10 */ subfe r5, r5, r7
/* 8033FDF8 7C A7 39 10 */ subfe r5, r7, r7
/* 8033FDFC 7C A5 00 D1 */ neg. r5, r5
/* 8033FE00 41 82 00 48 */ beq lbl_8033FE48
/* 8033FE04 7C 89 20 10 */ subfc r4, r9, r4
/* 8033FE08 7C 68 19 10 */ subfe r3, r8, r3
/* 8033FE0C 38 A0 00 00 */ li r5, 0
/* 8033FE10 48 02 25 15 */ bl __div2i
/* 8033FE14 38 A0 00 00 */ li r5, 0
/* 8033FE18 38 C0 00 02 */ li r6, 2
/* 8033FE1C 48 02 25 09 */ bl __div2i
/* 8033FE20 38 00 00 01 */ li r0, 1
/* 8033FE24 7C 84 00 38 */ and r4, r4, r0
/* 8033FE28 7C 60 F8 38 */ and r0, r3, r31
/* 8033FE2C 7C 83 FA 78 */ xor r3, r4, r31
/* 8033FE30 7C 00 FA 78 */ xor r0, r0, r31
/* 8033FE34 7C 60 03 79 */ or. r0, r3, r0
/* 8033FE38 40 82 00 0C */ bne lbl_8033FE44
/* 8033FE3C 3B A0 00 01 */ li r29, 1
/* 8033FE40 48 00 00 08 */ b lbl_8033FE48
lbl_8033FE44:
/* 8033FE44 3B A0 00 00 */ li r29, 0
lbl_8033FE48:
/* 8033FE48 7F C3 F3 78 */ mr r3, r30
/* 8033FE4C 4B FF D8 D1 */ bl OSRestoreInterrupts
/* 8033FE50 7F A3 EB 78 */ mr r3, r29
/* 8033FE54 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 8033FE58 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 8033FE5C 83 C1 00 10 */ lwz r30, 0x10(r1)
/* 8033FE60 83 A1 00 0C */ lwz r29, 0xc(r1)
/* 8033FE64 38 21 00 18 */ addi r1, r1, 0x18
/* 8033FE68 7C 08 03 A6 */ mtlr r0
/* 8033FE6C 4E 80 00 20 */ blr

View File

@ -1,65 +0,0 @@
lbl_8033FAE4:
/* 8033FAE4 7C 08 02 A6 */ mflr r0
/* 8033FAE8 90 01 00 04 */ stw r0, 4(r1)
/* 8033FAEC 94 21 FF D8 */ stwu r1, -0x28(r1)
/* 8033FAF0 93 E1 00 24 */ stw r31, 0x24(r1)
/* 8033FAF4 93 C1 00 20 */ stw r30, 0x20(r1)
/* 8033FAF8 93 A1 00 1C */ stw r29, 0x1c(r1)
/* 8033FAFC 48 00 2C 21 */ bl __OSGetSystemTime
/* 8033FB00 3C A0 80 00 */ lis r5, 0x8000 /* 0x800000F8@ha */
/* 8033FB04 90 8D 91 3C */ stw r4, HoldDown+0x4(r13)
/* 8033FB08 80 05 00 F8 */ lwz r0, 0x00F8(r5) /* 0x800000F8@l */
/* 8033FB0C 3C 80 43 1C */ lis r4, 0x431C /* 0x431BDE83@ha */
/* 8033FB10 38 84 DE 83 */ addi r4, r4, 0xDE83 /* 0x431BDE83@l */
/* 8033FB14 90 6D 91 38 */ stw r3, HoldDown(r13)
/* 8033FB18 54 00 F0 BE */ srwi r0, r0, 2
/* 8033FB1C 7C 04 00 16 */ mulhwu r0, r4, r0
/* 8033FB20 54 00 8B FE */ srwi r0, r0, 0xf
/* 8033FB24 1C 00 00 64 */ mulli r0, r0, 0x64
/* 8033FB28 54 1D E8 FE */ srwi r29, r0, 3
/* 8033FB2C 3B C0 00 00 */ li r30, 0
/* 8033FB30 3F E0 CC 00 */ lis r31, 0xcc00
lbl_8033FB34:
/* 8033FB34 48 00 2B E9 */ bl __OSGetSystemTime
/* 8033FB38 80 CD 91 3C */ lwz r6, HoldDown+0x4(r13)
/* 8033FB3C 6F C5 80 00 */ xoris r5, r30, 0x8000
/* 8033FB40 80 0D 91 38 */ lwz r0, HoldDown(r13)
/* 8033FB44 7C 86 20 10 */ subfc r4, r6, r4
/* 8033FB48 7C 00 19 10 */ subfe r0, r0, r3
/* 8033FB4C 6C 03 80 00 */ xoris r3, r0, 0x8000
/* 8033FB50 7C 1D 20 10 */ subfc r0, r29, r4
/* 8033FB54 7C A5 19 10 */ subfe r5, r5, r3
/* 8033FB58 7C A3 19 10 */ subfe r5, r3, r3
/* 8033FB5C 7C A5 00 D1 */ neg. r5, r5
/* 8033FB60 41 82 00 10 */ beq lbl_8033FB70
/* 8033FB64 80 1F 30 00 */ lwz r0, 0x3000(r31)
/* 8033FB68 54 00 03 DF */ rlwinm. r0, r0, 0, 0xf, 0xf
/* 8033FB6C 41 82 FF C8 */ beq lbl_8033FB34
lbl_8033FB70:
/* 8033FB70 3C 60 CC 00 */ lis r3, 0xCC00 /* 0xCC003000@ha */
/* 8033FB74 80 03 30 00 */ lwz r0, 0x3000(r3) /* 0xCC003000@l */
/* 8033FB78 54 00 03 DF */ rlwinm. r0, r0, 0, 0xf, 0xf
/* 8033FB7C 40 82 00 34 */ bne lbl_8033FBB0
/* 8033FB80 38 00 00 01 */ li r0, 1
/* 8033FB84 90 0D 91 24 */ stw r0, Down(r13)
/* 8033FB88 38 60 02 00 */ li r3, 0x200
/* 8033FB8C 90 0D 91 28 */ stw r0, LastState(r13)
/* 8033FB90 4B FF DF 2D */ bl __OSMaskInterrupts
/* 8033FB94 81 8D 91 20 */ lwz r12, ResetCallback(r13)
/* 8033FB98 28 0C 00 00 */ cmplwi r12, 0
/* 8033FB9C 41 82 00 14 */ beq lbl_8033FBB0
/* 8033FBA0 38 00 00 00 */ li r0, 0
/* 8033FBA4 7D 88 03 A6 */ mtlr r12
/* 8033FBA8 90 0D 91 20 */ stw r0, ResetCallback(r13)
/* 8033FBAC 4E 80 00 21 */ blrl
lbl_8033FBB0:
/* 8033FBB0 38 00 00 02 */ li r0, 2
/* 8033FBB4 3C 60 CC 00 */ lis r3, 0xCC00 /* 0xCC003000@ha */
/* 8033FBB8 90 03 30 00 */ stw r0, 0x3000(r3) /* 0xCC003000@l */
/* 8033FBBC 80 01 00 2C */ lwz r0, 0x2c(r1)
/* 8033FBC0 83 E1 00 24 */ lwz r31, 0x24(r1)
/* 8033FBC4 83 C1 00 20 */ lwz r30, 0x20(r1)
/* 8033FBC8 83 A1 00 1C */ lwz r29, 0x1c(r1)
/* 8033FBCC 38 21 00 28 */ addi r1, r1, 0x28
/* 8033FBD0 7C 08 03 A6 */ mtlr r0
/* 8033FBD4 4E 80 00 20 */ blr

View File

@ -1,132 +0,0 @@
lbl_80342974:
/* 80342974 7C 08 02 A6 */ mflr r0
/* 80342978 90 01 00 04 */ stw r0, 4(r1)
/* 8034297C 94 21 FF C8 */ stwu r1, -0x38(r1)
/* 80342980 BF 21 00 1C */ stmw r25, 0x1c(r1)
/* 80342984 7C 7D 1B 78 */ mr r29, r3
/* 80342988 7C 9E 23 78 */ mr r30, r4
/* 8034298C 7C BF 2B 78 */ mr r31, r5
/* 80342990 3F 60 80 00 */ lis r27, 0x8000 /* 0x800000F8@ha */
/* 80342994 80 1B 00 F8 */ lwz r0, 0x00F8(r27) /* 0x800000F8@l */
/* 80342998 7F A3 EB 78 */ mr r3, r29
/* 8034299C 7F C4 F3 78 */ mr r4, r30
/* 803429A0 54 06 F0 BE */ srwi r6, r0, 2
/* 803429A4 38 A0 00 00 */ li r5, 0
/* 803429A8 48 01 FB 99 */ bl __mod2i
/* 803429AC 7C 7A 1B 78 */ mr r26, r3
/* 803429B0 38 A0 00 00 */ li r5, 0
/* 803429B4 7C 99 23 78 */ mr r25, r4
/* 803429B8 6F 44 80 00 */ xoris r4, r26, 0x8000
/* 803429BC 6C A3 80 00 */ xoris r3, r5, 0x8000
/* 803429C0 7C 05 C8 10 */ subfc r0, r5, r25
/* 803429C4 7C 63 21 10 */ subfe r3, r3, r4
/* 803429C8 7C 64 21 10 */ subfe r3, r4, r4
/* 803429CC 7C 63 00 D0 */ neg r3, r3
/* 803429D0 2C 03 00 00 */ cmpwi r3, 0
/* 803429D4 41 82 00 14 */ beq lbl_803429E8
/* 803429D8 80 1B 00 F8 */ lwz r0, 0xf8(r27)
/* 803429DC 54 00 F0 BE */ srwi r0, r0, 2
/* 803429E0 7F 39 00 14 */ addc r25, r25, r0
/* 803429E4 7F 5A 29 14 */ adde r26, r26, r5
lbl_803429E8:
/* 803429E8 38 80 00 08 */ li r4, 8
/* 803429EC 7C 7A 21 D6 */ mullw r3, r26, r4
/* 803429F0 7C 19 20 16 */ mulhwu r0, r25, r4
/* 803429F4 3F 60 80 00 */ lis r27, 0x8000 /* 0x800000F8@ha */
/* 803429F8 80 DB 00 F8 */ lwz r6, 0x00F8(r27) /* 0x800000F8@l */
/* 803429FC 3C A0 43 1C */ lis r5, 0x431C /* 0x431BDE83@ha */
/* 80342A00 38 A5 DE 83 */ addi r5, r5, 0xDE83 /* 0x431BDE83@l */
/* 80342A04 54 C6 F0 BE */ srwi r6, r6, 2
/* 80342A08 7C A5 30 16 */ mulhwu r5, r5, r6
/* 80342A0C 54 A6 8B FE */ srwi r6, r5, 0xf
/* 80342A10 3B 80 00 00 */ li r28, 0
/* 80342A14 7C 63 02 14 */ add r3, r3, r0
/* 80342A18 7C 19 E1 D6 */ mullw r0, r25, r28
/* 80342A1C 7C 99 21 D6 */ mullw r4, r25, r4
/* 80342A20 7C 63 02 14 */ add r3, r3, r0
/* 80342A24 38 A0 00 00 */ li r5, 0
/* 80342A28 48 01 F8 FD */ bl __div2i
/* 80342A2C 38 A0 00 00 */ li r5, 0
/* 80342A30 38 C0 03 E8 */ li r6, 0x3e8
/* 80342A34 48 01 FB 0D */ bl __mod2i
/* 80342A38 90 9F 00 24 */ stw r4, 0x24(r31)
/* 80342A3C 3C 60 10 62 */ lis r3, 0x1062 /* 0x10624DD3@ha */
/* 80342A40 38 A3 4D D3 */ addi r5, r3, 0x4DD3 /* 0x10624DD3@l */
/* 80342A44 80 1B 00 F8 */ lwz r0, 0xf8(r27)
/* 80342A48 7F 43 D3 78 */ mr r3, r26
/* 80342A4C 7F 24 CB 78 */ mr r4, r25
/* 80342A50 54 00 F0 BE */ srwi r0, r0, 2
/* 80342A54 7C 05 00 16 */ mulhwu r0, r5, r0
/* 80342A58 54 06 D1 BE */ srwi r6, r0, 6
/* 80342A5C 38 A0 00 00 */ li r5, 0
/* 80342A60 48 01 F8 C5 */ bl __div2i
/* 80342A64 38 A0 00 00 */ li r5, 0
/* 80342A68 38 C0 03 E8 */ li r6, 0x3e8
/* 80342A6C 48 01 FA D5 */ bl __mod2i
/* 80342A70 90 9F 00 20 */ stw r4, 0x20(r31)
/* 80342A74 7F D9 F0 10 */ subfc r30, r25, r30
/* 80342A78 7F BA E9 10 */ subfe r29, r26, r29
/* 80342A7C 80 1B 00 F8 */ lwz r0, 0xf8(r27)
/* 80342A80 3C A0 00 01 */ lis r5, 0x0001 /* 0x00015180@ha */
/* 80342A84 3B 25 51 80 */ addi r25, r5, 0x5180 /* 0x00015180@l */
/* 80342A88 7F A3 EB 78 */ mr r3, r29
/* 80342A8C 54 06 F0 BE */ srwi r6, r0, 2
/* 80342A90 7F C4 F3 78 */ mr r4, r30
/* 80342A94 38 A0 00 00 */ li r5, 0
/* 80342A98 48 01 F8 8D */ bl __div2i
/* 80342A9C 7F 26 CB 78 */ mr r6, r25
/* 80342AA0 38 A0 00 00 */ li r5, 0
/* 80342AA4 48 01 F8 81 */ bl __div2i
/* 80342AA8 3C A0 00 0B */ lis r5, 0x000B /* 0x000B2575@ha */
/* 80342AAC 80 1B 00 F8 */ lwz r0, 0xf8(r27)
/* 80342AB0 38 A5 25 75 */ addi r5, r5, 0x2575 /* 0x000B2575@l */
/* 80342AB4 7F 44 28 14 */ addc r26, r4, r5
/* 80342AB8 54 06 F0 BE */ srwi r6, r0, 2
/* 80342ABC 7C 03 E1 14 */ adde r0, r3, r28
/* 80342AC0 7F A3 EB 78 */ mr r3, r29
/* 80342AC4 7F C4 F3 78 */ mr r4, r30
/* 80342AC8 38 A0 00 00 */ li r5, 0
/* 80342ACC 48 01 F8 59 */ bl __div2i
/* 80342AD0 7F 26 CB 78 */ mr r6, r25
/* 80342AD4 38 A0 00 00 */ li r5, 0
/* 80342AD8 48 01 FA 69 */ bl __mod2i
/* 80342ADC 7C 9B 23 78 */ mr r27, r4
/* 80342AE0 2C 1B 00 00 */ cmpwi r27, 0
/* 80342AE4 40 80 00 10 */ bge lbl_80342AF4
/* 80342AE8 3F 7B 00 01 */ addis r27, r27, 1
/* 80342AEC 3B 5A FF FF */ addi r26, r26, -1
/* 80342AF0 3B 7B 51 80 */ addi r27, r27, 0x5180
lbl_80342AF4:
/* 80342AF4 7F 43 D3 78 */ mr r3, r26
/* 80342AF8 7F E4 FB 78 */ mr r4, r31
/* 80342AFC 4B FF FC DD */ bl GetDates
/* 80342B00 3C 60 88 89 */ lis r3, 0x8889 /* 0x88888889@ha */
/* 80342B04 38 A3 88 89 */ addi r5, r3, 0x8889 /* 0x88888889@l */
/* 80342B08 7C 05 D8 96 */ mulhw r0, r5, r27
/* 80342B0C 7C 80 DA 14 */ add r4, r0, r27
/* 80342B10 7C 80 2E 70 */ srawi r0, r4, 5
/* 80342B14 54 03 0F FE */ srwi r3, r0, 0x1f
/* 80342B18 7C E0 1A 14 */ add r7, r0, r3
/* 80342B1C 7C 05 38 96 */ mulhw r0, r5, r7
/* 80342B20 7C 00 3A 14 */ add r0, r0, r7
/* 80342B24 7C 05 2E 70 */ srawi r5, r0, 5
/* 80342B28 7C 00 2E 70 */ srawi r0, r0, 5
/* 80342B2C 54 03 0F FE */ srwi r3, r0, 0x1f
/* 80342B30 7C 60 1A 14 */ add r3, r0, r3
/* 80342B34 7C 80 2E 70 */ srawi r0, r4, 5
/* 80342B38 54 A6 0F FE */ srwi r6, r5, 0x1f
/* 80342B3C 1C 83 00 3C */ mulli r4, r3, 0x3c
/* 80342B40 54 03 0F FE */ srwi r3, r0, 0x1f
/* 80342B44 7C A5 32 14 */ add r5, r5, r6
/* 80342B48 7C 00 1A 14 */ add r0, r0, r3
/* 80342B4C 90 BF 00 08 */ stw r5, 8(r31)
/* 80342B50 1C 00 00 3C */ mulli r0, r0, 0x3c
/* 80342B54 7C 64 38 50 */ subf r3, r4, r7
/* 80342B58 90 7F 00 04 */ stw r3, 4(r31)
/* 80342B5C 7C 00 D8 50 */ subf r0, r0, r27
/* 80342B60 90 1F 00 00 */ stw r0, 0(r31)
/* 80342B64 BB 21 00 1C */ lmw r25, 0x1c(r1)
/* 80342B68 80 01 00 3C */ lwz r0, 0x3c(r1)
/* 80342B6C 38 21 00 38 */ addi r1, r1, 0x38
/* 80342B70 7C 08 03 A6 */ mtlr r0
/* 80342B74 4E 80 00 20 */ blr

View File

@ -1,120 +0,0 @@
lbl_80345F90:
/* 80345F90 7C 08 02 A6 */ mflr r0
/* 80345F94 90 01 00 04 */ stw r0, 4(r1)
/* 80345F98 94 21 FF D8 */ stwu r1, -0x28(r1)
/* 80345F9C BF 61 00 14 */ stmw r27, 0x14(r1)
/* 80345FA0 7C 7B 1B 78 */ mr r27, r3
/* 80345FA4 4B FF 77 51 */ bl OSDisableInterrupts
/* 80345FA8 3C 80 80 3D */ lis r4, Type@ha /* 0x803D1210@ha */
/* 80345FAC 57 65 10 3A */ slwi r5, r27, 2
/* 80345FB0 38 04 12 10 */ addi r0, r4, Type@l /* 0x803D1210@l */
/* 80345FB4 7F C0 2A 14 */ add r30, r0, r5
/* 80345FB8 83 9E 00 00 */ lwz r28, 0(r30)
/* 80345FBC 7C 7D 1B 78 */ mr r29, r3
/* 80345FC0 4B FF C7 5D */ bl __OSGetSystemTime
/* 80345FC4 3C A0 80 45 */ lis r5, TypeTime@ha /* 0x8044C750@ha */
/* 80345FC8 57 66 18 38 */ slwi r6, r27, 3
/* 80345FCC 38 05 C7 50 */ addi r0, r5, TypeTime@l /* 0x8044C750@l */
/* 80345FD0 7F E0 32 14 */ add r31, r0, r6
/* 80345FD4 80 DF 00 04 */ lwz r6, 4(r31)
/* 80345FD8 3C A0 80 3D */ lis r5, Si@ha /* 0x803D11FC@ha */
/* 80345FDC 38 A5 11 FC */ addi r5, r5, Si@l /* 0x803D11FC@l */
/* 80345FE0 80 1F 00 00 */ lwz r0, 0(r31)
/* 80345FE4 7C 86 20 10 */ subfc r4, r6, r4
/* 80345FE8 7C 00 19 10 */ subfe r0, r0, r3
/* 80345FEC 80 C5 00 04 */ lwz r6, 4(r5)
/* 80345FF0 38 A0 00 80 */ li r5, 0x80
/* 80345FF4 7C A3 DE 30 */ sraw r3, r5, r27
/* 80345FF8 7C C3 18 39 */ and. r3, r6, r3
/* 80345FFC 41 82 00 34 */ beq lbl_80346030
/* 80346000 28 1C 00 08 */ cmplwi r28, 8
/* 80346004 41 82 00 20 */ beq lbl_80346024
/* 80346008 4B FF C7 15 */ bl __OSGetSystemTime
/* 8034600C 90 9F 00 04 */ stw r4, 4(r31)
/* 80346010 90 7F 00 00 */ stw r3, 0(r31)
/* 80346014 7F A3 EB 78 */ mr r3, r29
/* 80346018 4B FF 77 05 */ bl OSRestoreInterrupts
/* 8034601C 7F 83 E3 78 */ mr r3, r28
/* 80346020 48 00 01 20 */ b lbl_80346140
lbl_80346024:
/* 80346024 90 BE 00 00 */ stw r5, 0(r30)
/* 80346028 3B 80 00 80 */ li r28, 0x80
/* 8034602C 48 00 00 B4 */ b lbl_803460E0
lbl_80346030:
/* 80346030 3C 60 80 00 */ lis r3, 0x8000 /* 0x800000F8@ha */
/* 80346034 80 C3 00 F8 */ lwz r6, 0x00F8(r3) /* 0x800000F8@l */
/* 80346038 3C A0 10 62 */ lis r5, 0x1062 /* 0x10624DD3@ha */
/* 8034603C 38 A5 4D D3 */ addi r5, r5, 0x4DD3 /* 0x10624DD3@l */
/* 80346040 54 C6 F0 BE */ srwi r6, r6, 2
/* 80346044 7C A5 30 16 */ mulhwu r5, r5, r6
/* 80346048 54 A5 D1 BE */ srwi r5, r5, 6
/* 8034604C 1C E5 00 32 */ mulli r7, r5, 0x32
/* 80346050 38 60 00 00 */ li r3, 0
/* 80346054 6C 66 80 00 */ xoris r6, r3, 0x8000
/* 80346058 6C 05 80 00 */ xoris r5, r0, 0x8000
/* 8034605C 7C 64 38 10 */ subfc r3, r4, r7
/* 80346060 7C A5 31 10 */ subfe r5, r5, r6
/* 80346064 7C A6 31 10 */ subfe r5, r6, r6
/* 80346068 7C A5 00 D1 */ neg. r5, r5
/* 8034606C 40 82 00 1C */ bne lbl_80346088
/* 80346070 28 1C 00 08 */ cmplwi r28, 8
/* 80346074 41 82 00 14 */ beq lbl_80346088
/* 80346078 7F A3 EB 78 */ mr r3, r29
/* 8034607C 4B FF 76 A1 */ bl OSRestoreInterrupts
/* 80346080 7F 83 E3 78 */ mr r3, r28
/* 80346084 48 00 00 BC */ b lbl_80346140
lbl_80346088:
/* 80346088 3C 60 80 00 */ lis r3, 0x8000 /* 0x800000F8@ha */
/* 8034608C 80 C3 00 F8 */ lwz r6, 0x00F8(r3) /* 0x800000F8@l */
/* 80346090 3C A0 10 62 */ lis r5, 0x1062 /* 0x10624DD3@ha */
/* 80346094 38 A5 4D D3 */ addi r5, r5, 0x4DD3 /* 0x10624DD3@l */
/* 80346098 54 C6 F0 BE */ srwi r6, r6, 2
/* 8034609C 7C A5 30 16 */ mulhwu r5, r5, r6
/* 803460A0 54 A5 D1 BE */ srwi r5, r5, 6
/* 803460A4 1C C5 00 4B */ mulli r6, r5, 0x4b
/* 803460A8 38 60 00 00 */ li r3, 0
/* 803460AC 6C 65 80 00 */ xoris r5, r3, 0x8000
/* 803460B0 6C 03 80 00 */ xoris r3, r0, 0x8000
/* 803460B4 7C 04 30 10 */ subfc r0, r4, r6
/* 803460B8 7C 63 29 10 */ subfe r3, r3, r5
/* 803460BC 7C 65 29 10 */ subfe r3, r5, r5
/* 803460C0 7C 63 00 D1 */ neg. r3, r3
/* 803460C4 40 82 00 10 */ bne lbl_803460D4
/* 803460C8 38 00 00 80 */ li r0, 0x80
/* 803460CC 90 1E 00 00 */ stw r0, 0(r30)
/* 803460D0 48 00 00 10 */ b lbl_803460E0
lbl_803460D4:
/* 803460D4 38 00 00 80 */ li r0, 0x80
/* 803460D8 90 1E 00 00 */ stw r0, 0(r30)
/* 803460DC 3B 80 00 80 */ li r28, 0x80
lbl_803460E0:
/* 803460E0 4B FF C6 3D */ bl __OSGetSystemTime
/* 803460E4 90 9F 00 04 */ stw r4, 4(r31)
/* 803460E8 3C 80 43 1C */ lis r4, 0x431C /* 0x431BDE83@ha */
/* 803460EC 3C A0 80 34 */ lis r5, GetTypeCallback@ha /* 0x80345CF8@ha */
/* 803460F0 90 7F 00 00 */ stw r3, 0(r31)
/* 803460F4 3C 60 80 00 */ lis r3, 0x8000 /* 0x800000F8@ha */
/* 803460F8 39 05 5C F8 */ addi r8, r5, GetTypeCallback@l /* 0x80345CF8@l */
/* 803460FC 80 03 00 F8 */ lwz r0, 0x00F8(r3) /* 0x800000F8@l */
/* 80346100 38 84 DE 83 */ addi r4, r4, 0xDE83 /* 0x431BDE83@l */
/* 80346104 38 7B 00 00 */ addi r3, r27, 0
/* 80346108 54 00 F0 BE */ srwi r0, r0, 2
/* 8034610C 7C 04 00 16 */ mulhwu r0, r4, r0
/* 80346110 54 00 8B FE */ srwi r0, r0, 0xf
/* 80346114 1C 00 00 41 */ mulli r0, r0, 0x41
/* 80346118 54 0A E8 FE */ srwi r10, r0, 3
/* 8034611C 38 DE 00 00 */ addi r6, r30, 0
/* 80346120 38 8D 91 74 */ la r4, cmdTypeAndStatus_372(r13) /* 804516F4-_SDA_BASE_ */
/* 80346124 38 A0 00 01 */ li r5, 1
/* 80346128 38 E0 00 03 */ li r7, 3
/* 8034612C 39 20 00 00 */ li r9, 0
/* 80346130 4B FF FA 5D */ bl SITransfer
/* 80346134 7F A3 EB 78 */ mr r3, r29
/* 80346138 4B FF 75 E5 */ bl OSRestoreInterrupts
/* 8034613C 7F 83 E3 78 */ mr r3, r28
lbl_80346140:
/* 80346140 BB 61 00 14 */ lmw r27, 0x14(r1)
/* 80346144 80 01 00 2C */ lwz r0, 0x2c(r1)
/* 80346148 38 21 00 28 */ addi r1, r1, 0x28
/* 8034614C 7C 08 03 A6 */ mtlr r0
/* 80346150 4E 80 00 20 */ blr

View File

@ -1,225 +0,0 @@
lbl_80344EF8:
/* 80344EF8 7C 08 02 A6 */ mflr r0
/* 80344EFC 3C A0 CC 00 */ lis r5, 0xCC00 /* 0xCC006434@ha */
/* 80344F00 90 01 00 04 */ stw r0, 4(r1)
/* 80344F04 3C E0 80 45 */ lis r7, Packet@ha /* 0x8044C630@ha */
/* 80344F08 3C C0 80 3D */ lis r6, lit_1@ha /* 0x803D11B8@ha */
/* 80344F0C 94 21 FF B8 */ stwu r1, -0x48(r1)
/* 80344F10 BE A1 00 1C */ stmw r21, 0x1c(r1)
/* 80344F14 3B C3 00 00 */ addi r30, r3, 0
/* 80344F18 3B E4 00 00 */ addi r31, r4, 0
/* 80344F1C 3B 87 C6 30 */ addi r28, r7, Packet@l /* 0x8044C630@l */
/* 80344F20 3B A6 11 B8 */ addi r29, r6, lit_1@l /* 0x803D11B8@l */
/* 80344F24 83 05 64 34 */ lwz r24, 0x6434(r5) /* 0xCC006434@l */
/* 80344F28 57 05 00 02 */ rlwinm r5, r24, 0, 0, 1
/* 80344F2C 3C 05 40 00 */ addis r0, r5, 0x4000
/* 80344F30 28 00 00 00 */ cmplwi r0, 0
/* 80344F34 40 82 01 84 */ bne lbl_803450B8
/* 80344F38 82 FD 00 44 */ lwz r23, 0x44(r29)
/* 80344F3C 4B FF FC C1 */ bl CompleteTransfer
/* 80344F40 82 BD 00 54 */ lwz r21, 0x54(r29)
/* 80344F44 3B 60 00 00 */ li r27, 0
/* 80344F48 3A C3 00 00 */ addi r22, r3, 0
/* 80344F4C 93 7D 00 54 */ stw r27, 0x54(r29)
/* 80344F50 3B 57 00 00 */ addi r26, r23, 0
lbl_80344F54:
/* 80344F54 3B 5A 00 01 */ addi r26, r26, 1
/* 80344F58 7F 40 16 70 */ srawi r0, r26, 2
/* 80344F5C 7C 00 01 94 */ addze r0, r0
/* 80344F60 54 00 10 3A */ slwi r0, r0, 2
/* 80344F64 7C 00 D0 10 */ subfc r0, r0, r26
/* 80344F68 7C 1A 03 78 */ mr r26, r0
/* 80344F6C 54 00 28 34 */ slwi r0, r0, 5
/* 80344F70 7F 3C 02 14 */ add r25, r28, r0
/* 80344F74 80 19 00 00 */ lwz r0, 0(r25)
/* 80344F78 2C 00 FF FF */ cmpwi r0, -1
/* 80344F7C 41 82 00 6C */ beq lbl_80344FE8
/* 80344F80 4B FF D7 9D */ bl __OSGetSystemTime
/* 80344F84 80 19 00 18 */ lwz r0, 0x18(r25)
/* 80344F88 6C 65 80 00 */ xoris r5, r3, 0x8000
/* 80344F8C 80 D9 00 1C */ lwz r6, 0x1c(r25)
/* 80344F90 6C 03 80 00 */ xoris r3, r0, 0x8000
/* 80344F94 7C 06 20 10 */ subfc r0, r6, r4
/* 80344F98 7C 63 29 10 */ subfe r3, r3, r5
/* 80344F9C 7C 65 29 10 */ subfe r3, r5, r5
/* 80344FA0 7C 63 00 D1 */ neg. r3, r3
/* 80344FA4 40 82 00 44 */ bne lbl_80344FE8
/* 80344FA8 80 79 00 00 */ lwz r3, 0(r25)
/* 80344FAC 80 99 00 04 */ lwz r4, 4(r25)
/* 80344FB0 80 B9 00 08 */ lwz r5, 8(r25)
/* 80344FB4 80 D9 00 0C */ lwz r6, 0xc(r25)
/* 80344FB8 80 F9 00 10 */ lwz r7, 0x10(r25)
/* 80344FBC 81 19 00 14 */ lwz r8, 0x14(r25)
/* 80344FC0 48 00 05 89 */ bl __SITransfer
/* 80344FC4 2C 03 00 00 */ cmpwi r3, 0
/* 80344FC8 41 82 00 2C */ beq lbl_80344FF4
/* 80344FCC 1C 1A 00 28 */ mulli r0, r26, 0x28
/* 80344FD0 7C 7C 02 14 */ add r3, r28, r0
/* 80344FD4 38 63 00 80 */ addi r3, r3, 0x80
/* 80344FD8 4B FF 5C 65 */ bl OSCancelAlarm
/* 80344FDC 38 00 FF FF */ li r0, -1
/* 80344FE0 90 19 00 00 */ stw r0, 0(r25)
/* 80344FE4 48 00 00 10 */ b lbl_80344FF4
lbl_80344FE8:
/* 80344FE8 3B 7B 00 01 */ addi r27, r27, 1
/* 80344FEC 2C 1B 00 04 */ cmpwi r27, 4
/* 80344FF0 41 80 FF 64 */ blt lbl_80344F54
lbl_80344FF4:
/* 80344FF4 28 15 00 00 */ cmplwi r21, 0
/* 80344FF8 41 82 00 1C */ beq lbl_80345014
/* 80344FFC 39 95 00 00 */ addi r12, r21, 0
/* 80345000 7D 88 03 A6 */ mtlr r12
/* 80345004 38 77 00 00 */ addi r3, r23, 0
/* 80345008 38 96 00 00 */ addi r4, r22, 0
/* 8034500C 38 BF 00 00 */ addi r5, r31, 0
/* 80345010 4E 80 00 21 */ blrl
lbl_80345014:
/* 80345014 3C 60 CC 00 */ lis r3, 0xCC00 /* 0xCC006400@ha */
/* 80345018 38 83 64 00 */ addi r4, r3, 0x6400 /* 0xCC006400@l */
/* 8034501C 80 A3 64 38 */ lwz r5, 0x6438(r3)
/* 80345020 56 E0 18 38 */ slwi r0, r23, 3
/* 80345024 3C 60 0F 00 */ lis r3, 0xf00
/* 80345028 7C 60 06 30 */ sraw r0, r3, r0
/* 8034502C 7C A5 00 38 */ and r5, r5, r0
/* 80345030 56 E0 10 3A */ slwi r0, r23, 2
/* 80345034 90 A4 00 38 */ stw r5, 0x38(r4)
/* 80345038 7C DD 02 14 */ add r6, r29, r0
/* 8034503C 84 06 00 58 */ lwzu r0, 0x58(r6)
/* 80345040 28 00 00 80 */ cmplwi r0, 0x80
/* 80345044 40 82 00 74 */ bne lbl_803450B8
/* 80345048 56 E0 28 34 */ slwi r0, r23, 5
/* 8034504C 7C 1C 00 2E */ lwzx r0, r28, r0
/* 80345050 38 60 00 01 */ li r3, 1
/* 80345054 2C 00 FF FF */ cmpwi r0, -1
/* 80345058 40 82 00 14 */ bne lbl_8034506C
/* 8034505C 80 1D 00 44 */ lwz r0, 0x44(r29)
/* 80345060 7C 00 B8 00 */ cmpw r0, r23
/* 80345064 41 82 00 08 */ beq lbl_8034506C
/* 80345068 38 60 00 00 */ li r3, 0
lbl_8034506C:
/* 8034506C 2C 03 00 00 */ cmpwi r3, 0
/* 80345070 40 82 00 48 */ bne lbl_803450B8
/* 80345074 3C 60 80 00 */ lis r3, 0x8000 /* 0x800000F8@ha */
/* 80345078 80 03 00 F8 */ lwz r0, 0x00F8(r3) /* 0x800000F8@l */
/* 8034507C 3C 60 43 1C */ lis r3, 0x431C /* 0x431BDE83@ha */
/* 80345080 3C 80 80 34 */ lis r4, GetTypeCallback@ha /* 0x80345CF8@ha */
/* 80345084 54 00 F0 BE */ srwi r0, r0, 2
/* 80345088 38 63 DE 83 */ addi r3, r3, 0xDE83 /* 0x431BDE83@l */
/* 8034508C 7C 03 00 16 */ mulhwu r0, r3, r0
/* 80345090 54 00 8B FE */ srwi r0, r0, 0xf
/* 80345094 1C 00 00 41 */ mulli r0, r0, 0x41
/* 80345098 39 04 5C F8 */ addi r8, r4, GetTypeCallback@l /* 0x80345CF8@l */
/* 8034509C 54 0A E8 FE */ srwi r10, r0, 3
/* 803450A0 38 77 00 00 */ addi r3, r23, 0
/* 803450A4 38 8D 91 70 */ la r4, cmdTypeAndStatus_78(r13) /* 804516F0-_SDA_BASE_ */
/* 803450A8 38 A0 00 01 */ li r5, 1
/* 803450AC 38 E0 00 03 */ li r7, 3
/* 803450B0 39 20 00 00 */ li r9, 0
/* 803450B4 48 00 0A D9 */ bl SITransfer
lbl_803450B8:
/* 803450B8 57 03 00 C8 */ rlwinm r3, r24, 0, 3, 4
/* 803450BC 3C 03 E8 00 */ addis r0, r3, 0xe800
/* 803450C0 28 00 00 00 */ cmplwi r0, 0
/* 803450C4 40 82 01 64 */ bne lbl_80345228
/* 803450C8 48 00 89 3D */ bl VIGetCurrentLine
/* 803450CC 80 1D 00 48 */ lwz r0, 0x48(r29)
/* 803450D0 3A FC 01 E0 */ addi r23, r28, 0x1e0
/* 803450D4 3B 1D 00 48 */ addi r24, r29, 0x48
/* 803450D8 3A D7 00 00 */ addi r22, r23, 0
/* 803450DC 3A A3 00 01 */ addi r21, r3, 1
/* 803450E0 54 1A 85 BE */ rlwinm r26, r0, 0x10, 0x16, 0x1f
/* 803450E4 3B 20 00 00 */ li r25, 0
lbl_803450E8:
/* 803450E8 7F 23 CB 78 */ mr r3, r25
/* 803450EC 48 00 08 7D */ bl SIGetResponseRaw
/* 803450F0 2C 03 00 00 */ cmpwi r3, 0
/* 803450F4 41 82 00 08 */ beq lbl_803450FC
/* 803450F8 92 B6 00 00 */ stw r21, 0(r22)
lbl_803450FC:
/* 803450FC 3B 39 00 01 */ addi r25, r25, 1
/* 80345100 2C 19 00 04 */ cmpwi r25, 4
/* 80345104 3A D6 00 04 */ addi r22, r22, 4
/* 80345108 41 80 FF E0 */ blt lbl_803450E8
/* 8034510C 80 B8 00 00 */ lwz r5, 0(r24)
/* 80345110 3C 60 80 00 */ lis r3, 0x8000
/* 80345114 38 00 00 18 */ li r0, 0x18
/* 80345118 7C 60 04 30 */ srw r0, r3, r0
/* 8034511C 7C A0 00 39 */ and. r0, r5, r0
/* 80345120 57 46 F8 7E */ srwi r6, r26, 1
/* 80345124 41 82 00 24 */ beq lbl_80345148
/* 80345128 80 17 00 00 */ lwz r0, 0(r23)
/* 8034512C 28 00 00 00 */ cmplwi r0, 0
/* 80345130 41 82 00 F8 */ beq lbl_80345228
/* 80345134 80 17 00 00 */ lwz r0, 0(r23)
/* 80345138 7C 06 02 14 */ add r0, r6, r0
/* 8034513C 7C 00 A8 40 */ cmplw r0, r21
/* 80345140 40 80 00 08 */ bge lbl_80345148
/* 80345144 48 00 00 E4 */ b lbl_80345228
lbl_80345148:
/* 80345148 38 00 00 19 */ li r0, 0x19
/* 8034514C 7C 60 04 30 */ srw r0, r3, r0
/* 80345150 7C A0 00 39 */ and. r0, r5, r0
/* 80345154 38 97 00 04 */ addi r4, r23, 4
/* 80345158 41 82 00 24 */ beq lbl_8034517C
/* 8034515C 80 04 00 00 */ lwz r0, 0(r4)
/* 80345160 28 00 00 00 */ cmplwi r0, 0
/* 80345164 41 82 00 C4 */ beq lbl_80345228
/* 80345168 80 04 00 00 */ lwz r0, 0(r4)
/* 8034516C 7C 06 02 14 */ add r0, r6, r0
/* 80345170 7C 00 A8 40 */ cmplw r0, r21
/* 80345174 40 80 00 08 */ bge lbl_8034517C
/* 80345178 48 00 00 B0 */ b lbl_80345228
lbl_8034517C:
/* 8034517C 38 00 00 1A */ li r0, 0x1a
/* 80345180 7C 60 04 30 */ srw r0, r3, r0
/* 80345184 7C A0 00 39 */ and. r0, r5, r0
/* 80345188 38 84 00 04 */ addi r4, r4, 4
/* 8034518C 41 82 00 24 */ beq lbl_803451B0
/* 80345190 80 04 00 00 */ lwz r0, 0(r4)
/* 80345194 28 00 00 00 */ cmplwi r0, 0
/* 80345198 41 82 00 90 */ beq lbl_80345228
/* 8034519C 80 04 00 00 */ lwz r0, 0(r4)
/* 803451A0 7C 06 02 14 */ add r0, r6, r0
/* 803451A4 7C 00 A8 40 */ cmplw r0, r21
/* 803451A8 40 80 00 08 */ bge lbl_803451B0
/* 803451AC 48 00 00 7C */ b lbl_80345228
lbl_803451B0:
/* 803451B0 38 00 00 1B */ li r0, 0x1b
/* 803451B4 7C 60 04 30 */ srw r0, r3, r0
/* 803451B8 7C A0 00 39 */ and. r0, r5, r0
/* 803451BC 38 84 00 04 */ addi r4, r4, 4
/* 803451C0 41 82 00 24 */ beq lbl_803451E4
/* 803451C4 80 04 00 00 */ lwz r0, 0(r4)
/* 803451C8 28 00 00 00 */ cmplwi r0, 0
/* 803451CC 41 82 00 5C */ beq lbl_80345228
/* 803451D0 80 04 00 00 */ lwz r0, 0(r4)
/* 803451D4 7C 06 02 14 */ add r0, r6, r0
/* 803451D8 7C 00 A8 40 */ cmplw r0, r21
/* 803451DC 40 80 00 08 */ bge lbl_803451E4
/* 803451E0 48 00 00 48 */ b lbl_80345228
lbl_803451E4:
/* 803451E4 3A C0 00 00 */ li r22, 0
/* 803451E8 92 D7 00 00 */ stw r22, 0(r23)
/* 803451EC 3A BC 01 A0 */ addi r21, r28, 0x1a0
/* 803451F0 92 DC 01 E4 */ stw r22, 0x1e4(r28)
/* 803451F4 92 DC 01 E8 */ stw r22, 0x1e8(r28)
/* 803451F8 92 DC 01 EC */ stw r22, 0x1ec(r28)
lbl_803451FC:
/* 803451FC 81 95 00 00 */ lwz r12, 0(r21)
/* 80345200 28 0C 00 00 */ cmplwi r12, 0
/* 80345204 41 82 00 14 */ beq lbl_80345218
/* 80345208 7D 88 03 A6 */ mtlr r12
/* 8034520C 38 7E 00 00 */ addi r3, r30, 0
/* 80345210 38 9F 00 00 */ addi r4, r31, 0
/* 80345214 4E 80 00 21 */ blrl
lbl_80345218:
/* 80345218 3A D6 00 01 */ addi r22, r22, 1
/* 8034521C 2C 16 00 04 */ cmpwi r22, 4
/* 80345220 3A B5 00 04 */ addi r21, r21, 4
/* 80345224 41 80 FF D8 */ blt lbl_803451FC
lbl_80345228:
/* 80345228 BA A1 00 1C */ lmw r21, 0x1c(r1)
/* 8034522C 80 01 00 4C */ lwz r0, 0x4c(r1)
/* 80345230 38 21 00 48 */ addi r1, r1, 0x48
/* 80345234 7C 08 03 A6 */ mtlr r0
/* 80345238 4E 80 00 20 */ blr

View File

@ -15,7 +15,7 @@ lbl_80C51194:
/* 80C511C8 3B E3 20 00 */ addi r31, r3, M_attr__10daObjLdy_c@l /* 0x80C52000@l */
/* 80C511CC 38 61 00 9C */ addi r3, r1, 0x9c
/* 80C511D0 38 9D 04 D0 */ addi r4, r29, 0x4d0
/* 80C511D4 4B 40 A3 5D */ bl dKyw_get_AllWind_vecpow__FP4cXyz
/* 80C511D4 4B 40 A3 5D */ bl dKyw_get_AllWind_vecpow__FP4cXyzP4cXyz
/* 80C511D8 C0 01 00 9C */ lfs f0, 0x9c(r1)
/* 80C511DC D0 01 00 C0 */ stfs f0, 0xc0(r1)
/* 80C511E0 C0 01 00 A0 */ lfs f0, 0xa0(r1)

View File

@ -18,7 +18,7 @@ lbl_80C528E0:
/* 80C52920 3B 7F 16 8C */ addi r27, r31, 0x168c
/* 80C52924 38 61 00 8C */ addi r3, r1, 0x8c
/* 80C52928 38 9F 04 D0 */ addi r4, r31, 0x4d0
/* 80C5292C 4B 40 8C 05 */ bl dKyw_get_AllWind_vecpow__FP4cXyz
/* 80C5292C 4B 40 8C 05 */ bl dKyw_get_AllWind_vecpow__FP4cXyzP4cXyz
/* 80C52930 C0 01 00 8C */ lfs f0, 0x8c(r1)
/* 80C52934 D0 01 00 A4 */ stfs f0, 0xa4(r1)
/* 80C52938 C0 01 00 90 */ lfs f0, 0x90(r1)

View File

@ -13,7 +13,7 @@ lbl_805951DC:
/* 80595208 3B C3 5C B4 */ addi r30, r3, M_attr__14daObjOnCloth_c@l /* 0x80595CB4@l */
/* 8059520C 38 61 00 6C */ addi r3, r1, 0x6c
/* 80595210 38 9F 04 D0 */ addi r4, r31, 0x4d0
/* 80595214 4B AC 63 1D */ bl dKyw_get_AllWind_vecpow__FP4cXyz
/* 80595214 4B AC 63 1D */ bl dKyw_get_AllWind_vecpow__FP4cXyzP4cXyz
/* 80595218 C0 01 00 6C */ lfs f0, 0x6c(r1)
/* 8059521C D0 01 00 84 */ stfs f0, 0x84(r1)
/* 80595220 C0 01 00 70 */ lfs f0, 0x70(r1)

View File

@ -11,7 +11,7 @@ lbl_80CC652C:
/* 80CC6550 4B FF F9 7D */ bl setNormalRopePos__14daObjItaRope_cFv
/* 80CC6554 38 61 00 20 */ addi r3, r1, 0x20
/* 80CC6558 38 9C 04 D0 */ addi r4, r28, 0x4d0
/* 80CC655C 4B 39 4F D5 */ bl dKyw_get_AllWind_vecpow__FP4cXyz
/* 80CC655C 4B 39 4F D5 */ bl dKyw_get_AllWind_vecpow__FP4cXyzP4cXyz
/* 80CC6560 C0 01 00 20 */ lfs f0, 0x20(r1)
/* 80CC6564 D0 01 00 08 */ stfs f0, 8(r1)
/* 80CC6568 C0 01 00 24 */ lfs f0, 0x24(r1)

View File

@ -17,7 +17,7 @@ lbl_80CC5ECC:
/* 80CC5F08 83 7F 06 18 */ lwz r27, 0x618(r31)
/* 80CC5F0C 38 61 00 80 */ addi r3, r1, 0x80
/* 80CC5F10 38 9F 04 D0 */ addi r4, r31, 0x4d0
/* 80CC5F14 4B 39 56 1D */ bl dKyw_get_AllWind_vecpow__FP4cXyz
/* 80CC5F14 4B 39 56 1D */ bl dKyw_get_AllWind_vecpow__FP4cXyzP4cXyz
/* 80CC5F18 C0 01 00 80 */ lfs f0, 0x80(r1)
/* 80CC5F1C D0 01 00 8C */ stfs f0, 0x8c(r1)
/* 80CC5F20 C0 01 00 84 */ lfs f0, 0x84(r1)

View File

@ -3345,7 +3345,7 @@ SYMBOLS = [
{'addr':0x8005B260,'size':36,'pad':0,'label':"dKyw_pntlight_collision_get_info__FP4cXyzP4cXyzPf",'name':"dKyw_pntlight_collision_get_info__FP4cXyzP4cXyzPf",'lib':0,'tu':104,'section':2,'class_template':False,'static':False,'is_reachable':False,'r':[0,0,3],'sh':[0,0,0],'type':"ASMFunction"},
{'addr':0x8005B284,'size':116,'pad':0,'label':"dKyw_pntwind_get_vecpow__FP4cXyz",'name':"dKyw_pntwind_get_vecpow__FP4cXyz",'lib':0,'tu':104,'section':2,'class_template':False,'static':False,'is_reachable':False,'r':[0,1,0],'sh':[0,0,0],'type':"ASMFunction"},
{'addr':0x8005B2F8,'size':568,'pad':0,'label':"dKyw_get_AllWind_vec__FP4cXyzP4cXyzPf",'name':"dKyw_get_AllWind_vec__FP4cXyzP4cXyzPf",'lib':0,'tu':104,'section':2,'class_template':False,'static':False,'is_reachable':True,'r':[0,3,13],'sh':[0,0,0],'type':"ASMFunction"},
{'addr':0x8005B530,'size':220,'pad':0,'label':"dKyw_get_AllWind_vecpow__FP4cXyz",'name':"dKyw_get_AllWind_vecpow__FP4cXyz",'lib':0,'tu':104,'section':2,'class_template':False,'static':False,'is_reachable':False,'r':[0,0,5],'sh':[0,0,0],'type':"ASMFunction"},
{'addr':0x8005B530,'size':220,'pad':0,'label':"dKyw_get_AllWind_vecpow__FP4cXyzP4cXyz",'name':"dKyw_get_AllWind_vecpow__FP4cXyzP4cXyz",'lib':0,'tu':104,'section':2,'class_template':False,'static':False,'is_reachable':False,'r':[0,0,5],'sh':[0,0,0],'type':"ASMFunction"},
{'addr':0x8005B60C,'size':16,'pad':0,'label':"dKyw_custom_windpower__Ff",'name':"dKyw_custom_windpower__Ff",'lib':0,'tu':104,'section':2,'class_template':False,'static':False,'is_reachable':False,'r':[0,0,5],'sh':[0,0,0],'type':"ASMFunction"},
{'addr':0x8005B61C,'size':28,'pad':0,'label':"dKyw_evt_wind_set__Fss",'name':"dKyw_evt_wind_set__Fss",'lib':0,'tu':104,'section':2,'class_template':False,'static':False,'is_reachable':False,'r':[0,0,6],'sh':[0,0,0],'type':"ASMFunction"},
{'addr':0x8005B638,'size':20,'pad':0,'label':"dKyw_evt_wind_set_go__Fv",'name':"dKyw_evt_wind_set_go__Fv",'lib':0,'tu':104,'section':2,'class_template':False,'static':False,'is_reachable':False,'r':[0,0,3],'sh':[0,0,0],'type':"ASMFunction"},
@ -29837,7 +29837,7 @@ SYMBOL_NAMES = {
"dKyw_pntlight_collision_get_info__FP4cXyzP4cXyzPf":2562,
"dKyw_pntwind_get_vecpow__FP4cXyz":2563,
"dKyw_get_AllWind_vec__FP4cXyzP4cXyzPf":2564,
"dKyw_get_AllWind_vecpow__FP4cXyz":2565,
"dKyw_get_AllWind_vecpow__FP4cXyzP4cXyz":2565,
"dKyw_custom_windpower__Ff":2566,
"dKyw_evt_wind_set__Fss":2567,
"dKyw_evt_wind_set_go__Fv":2568,

View File

@ -55,9 +55,25 @@ struct TVec3<f32> {
void zero() { x = y = z = 0.0f; }
void mul(const TVec3<f32>& a, const TVec3<f32>& b) {
x = a.x * b.x;
y = a.y * b.y;
z = a.z * b.z;
register f32* dst = &x;
const register f32* srca = &a.x;
const register f32* srcb = &b.x;
register f32 a_x_y;
register f32 b_x_y;
register f32 x_y;
register f32 za;
register f32 zb;
register f32 z;
asm {
psq_l a_x_y, 0(srca), 0, 0
psq_l b_x_y, 0(srcb), 0, 0
ps_mul x_y, a_x_y, b_x_y
psq_st x_y, 0(dst), 0, 0
lfs za, 8(srca)
lfs zb, 8(srcb)
fmuls z, za, zb
stfs z, 8(dst)
};
}
inline TVec3<f32>& operator=(const TVec3<f32>& b) {

View File

@ -53,10 +53,10 @@ public:
f32 get_rndm_zh() {
f32 f = get_rndm_f();
return f - 1.0f;
return f - 0.5f;
}
s16 get_rndm_ss() { return ((s16)get_rndm_u()) >> 16; }
s16 get_rndm_ss() { return (s16)(get_rndm_u() >> 16); }
public:
u32 mSeed;
@ -161,8 +161,8 @@ struct JPAEmitterWorkData {
/* 0x34 */ f32 mVolumeSize;
/* 0x38 */ f32 mVolumeMinRad;
/* 0x3C */ f32 mVolumeSweep;
/* 0x40 */ u32 mEmitCount;
/* 0x44 */ u32 mVolumeEmitIdx;
/* 0x40 */ s32 mEmitCount;
/* 0x44 */ s32 mVolumeEmitIdx;
/* 0x48 */ Mtx mDirectionMtx;
/* 0x78 */ Mtx mRotationMtx;
/* 0xA8 */ Mtx mGlobalRot;

View File

@ -38,7 +38,9 @@ extern "C" {
#define OS_BASE_CACHED (OS_CACHED_REGION_PREFIX << 16)
#define OS_BASE_UNCACHED (OS_UNCACHED_REGION_PREFIX << 16)
#define OS_BUS_CLOCK (*(u32*)0x800000F8)
extern u32 __OSBusClock : 0x800000F8;
#define OS_BUS_CLOCK (__OSBusClock)
#define OS_CORE_CLOCK (*(u32*)0x800000FC)
#define OS_TIMER_CLOCK (OS_BUS_CLOCK / 4)
#define OS_TIMER_CLOCK_MS (OS_TIMER_CLOCK / 1000)

View File

@ -7,6 +7,8 @@
extern "C" {
#endif
vu32 __PIRegs[12] : 0xCC003000;
#define OS_RESETCODE_RESTART 0x80000000
#define OS_RESETCODE_SYSTEM 0x40000000

View File

@ -152,7 +152,7 @@ SECTION_SDATA2 static f64 lit_650 = 4503601774854144.0 /* cast s32 to float */;
/* 802F4468-802F4658 2EEDA8 01F0+00 1/1 0/0 0/0 .text
* private_initiate__8J2DPrintFP7JUTFontffQ28JUtility6TColorQ28JUtility6TColorQ28JUtility6TColorQ28JUtility6TColorb
*/
// close
// matches with float literals
#ifdef NONMATCHING
void J2DPrint::private_initiate(JUTFont* pFont, f32 param_1, f32 param_2, JUtility::TColor param_3,
JUtility::TColor param_4, JUtility::TColor param_5,
@ -165,10 +165,13 @@ void J2DPrint::private_initiate(JUTFont* pFont, f32 param_1, f32 param_2, JUtili
field_0x4c = 32.0f;
if (mFont != NULL) {
if (!param_7) {
param_2 = mFont->getLeading();
f32 temp;
if (param_7 == false) {
temp = param_2;
} else {
temp = mFont->getLeading();
}
field_0x4c = param_2;
field_0x4c = temp;
}
field_0x5a = 1;

View File

@ -92,34 +92,22 @@ J3DMaterialTable::~J3DMaterialTable() {}
/* 8032F64C-8032F6F8 329F8C 00AC+00 0/0 1/1 5/5 .text
* removeMatColorAnimator__16J3DMaterialTableFP11J3DAnmColor */
#ifdef NONMATCHING
int J3DMaterialTable::removeMatColorAnimator(J3DAnmColor* pAnmColor) {
int ret = false;
u16 updateMatNum = pAnmColor->getUpdateMaterialNum();
for (u16 i = 0; i < updateMatNum; i++) {
if (pAnmColor->isValidUpdateMaterialID(i)) {
u16 updateMatID = pAnmColor->getUpdateMaterialID(i);
J3DMaterial* materialNode = getMaterialNodePointer(i);
if (materialNode->getMaterialAnm() == NULL) {
J3DMaterial* materialNode = getMaterialNodePointer(pAnmColor->getUpdateMaterialID(i));
J3DMaterialAnm* materialAnm = materialNode->getMaterialAnm();
if (materialAnm == NULL) {
ret = true;
} else {
materialNode->getMaterialAnm()->setMatColorAnm(0, NULL);
materialAnm->setMatColorAnm(0, NULL);
}
}
}
return ret;
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm int J3DMaterialTable::removeMatColorAnimator(J3DAnmColor* param_0) {
nofralloc
#include "asm/JSystem/J3DGraphAnimator/J3DMaterialAttach/removeMatColorAnimator__16J3DMaterialTableFP11J3DAnmColor.s"
}
#pragma pop
#endif
/* 8032F6F8-8032F7B4 32A038 00BC+00 0/0 5/5 10/10 .text
* removeTexNoAnimator__16J3DMaterialTableFP16J3DAnmTexPattern */

View File

@ -55,7 +55,7 @@ asm void DSPReleaseHalt2(u32 param_0) {
/* ############################################################################################## */
/* 804512F8-80451300 0007F8 0004+04 2/2 0/0 0/0 .sbss flag */
static u32 flag;
static volatile BOOL flag;
/* 8029E540-8029E54C 298E80 000C+00 1/1 0/0 0/0 .text setup_callback__FUs */
static void setup_callback(u16 param_0) {

View File

@ -152,8 +152,6 @@ JKRAram::~JKRAram() {
}
/* 802D21DC-802D2248 2CCB1C 006C+00 1/0 0/0 0/0 .text run__7JKRAramFv */
// almost full match
#ifdef NONMATCHING
void* JKRAram::run(void) {
int result;
JKRAMCommand* command;
@ -165,22 +163,13 @@ void* JKRAram::run(void) {
command = message->command;
delete message;
if (result != 1) {
} else {
switch (result) {
case 1:
JKRAramPiece::startDMA(command);
break;
}
} while (true);
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void* JKRAram::run() {
nofralloc
#include "asm/JSystem/JKernel/JKRAram/run__7JKRAramFv.s"
}
#pragma pop
#endif
/* ############################################################################################## */
/* 8039D078-8039D078 0296D8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */

View File

@ -127,7 +127,6 @@ JKRDvdArchive::~JKRDvdArchive() {
}
/* 802D7DB4-802D8050 2D26F4 029C+00 1/1 0/0 0/0 .text open__13JKRDvdArchiveFl */
#ifdef NONMATCHING
bool JKRDvdArchive::open(s32 entryNum) {
mArcInfoBlock = NULL;
field_0x64 = NULL;
@ -151,12 +150,7 @@ bool JKRDvdArchive::open(s32 entryNum) {
JKRDvdRipper::ALLOC_DIRECTION_FORWARD, 0, &mCompression, NULL);
DCInvalidateRange(arcHeader, sizeof(SArcHeader));
int alignment;
if (mMountDirection == MOUNT_DIRECTION_HEAD) {
alignment = 0x20;
} else {
alignment = -0x20;
}
int alignment = mMountDirection == MOUNT_DIRECTION_HEAD ? 0x20 : -0x20;
mArcInfoBlock = (SArcDataInfo*)JKRAllocFromHeap(mHeap, arcHeader->file_data_offset, alignment);
if (!mArcInfoBlock) {
@ -174,18 +168,18 @@ bool JKRDvdArchive::open(s32 entryNum) {
mStringTable = (char*)((int)&mArcInfoBlock->num_nodes + mArcInfoBlock->string_table_offset);
mExpandedSize = NULL;
bool useCompression = false;
u8 useCompression = 0;
SDIFileEntry* fileEntry = mFiles;
for (u32 i = 0; i < mArcInfoBlock->num_file_entries; fileEntry++, i++) {
if (!fileEntry->isUnknownFlag1()) {
useCompression |= fileEntry->isCompressed();
if (fileEntry->isUnknownFlag1()) {
useCompression |= fileEntry->getCompressFlag();
}
}
if (useCompression) {
mExpandedSize = (s32*)JKRAllocFromHeap(mHeap, sizeof(s32) * mArcInfoBlock->num_file_entries,
abs(alignment));
if (mExpandedSize) {
if (!mExpandedSize) {
// !@bug: mArcInfoBlock is allocated from mHeap but free'd to sSystemHeap. I don't know
// what will happen if mHeap != sSystemHeap, but it's still a bug to free to the wrong
// allocator.
@ -213,16 +207,6 @@ cleanup:
return true;
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm bool JKRDvdArchive::open(s32 param_0) {
nofralloc
#include "asm/JSystem/JKernel/JKRDvdArchive/open__13JKRDvdArchiveFl.s"
}
#pragma pop
#endif
/* 802D8050-802D8168 2D2990 0118+00 1/0 0/0 0/0 .text
* fetchResource__13JKRDvdArchiveFPQ210JKRArchive12SDIFileEntryPUl */

View File

@ -59,9 +59,8 @@ SECTION_SDATA2 static f32 lit_2289[1 + 1 /* padding */] = {
};
/* 8027B144-8027B220 275A84 00DC+00 1/1 0/0 0/0 .text JPAVolumePoint__FP18JPAEmitterWorkData */
// matches with literals
#ifdef NONMATCHING
// bug in diff.py preventing me from seeing what's wrong
void JPAVolumePoint(JPAEmitterWorkData* work) {
work->mVolumePos.zero();
work->mVelOmni.set(work->mpEmtr->get_r_zh(), work->mpEmtr->get_r_zh(),
@ -86,15 +85,14 @@ static asm void JPAVolumePoint(JPAEmitterWorkData* param_0) {
/* 80455320-80455328 003920 0008+00 6/6 0/0 0/0 .sdata2 @2321 */
SECTION_SDATA2 static f64 lit_2321 = 4503601774854144.0 /* cast s32 to float */;
/* 8027B220-8027B33C 275B60 011C+00 1/1 0/0 0/0 .text JPAVolumeLine__FP18JPAEmitterWorkData */
/* 8027B220-8027B33C 275B60 011C+00 1/1 0/0 0/0 .text JPAVolumeLine */
// matches with literals
#ifdef NONMATCHING
// bug in diff.py preventing me from seeing what's wrong
void JPAVolumeLine(JPAEmitterWorkData* work) {
if (work->mpEmtr->checkFlag(JPADynFlag_FixedInterval)) {
work->mVolumePos.set(0.0f, 0.0f,
work->mVolumeSize *
(s32)((work->mVolumeEmitIdx / (work->mEmitCount - 1.0f) - 0.5f)));
((work->mVolumeEmitIdx / (work->mEmitCount - 1.0f) - 0.5f)));
work->mVolumeEmitIdx++;
} else {
work->mVolumePos.set(0.0f, 0.0f, work->mVolumeSize * work->mpEmtr->get_r_zh());
@ -117,17 +115,22 @@ static asm void JPAVolumeLine(JPAEmitterWorkData* param_0) {
#endif
/* 8027B33C-8027B4E8 275C7C 01AC+00 1/1 0/0 0/0 .text JPAVolumeCircle__FP18JPAEmitterWorkData */
/* 8027B33C-8027B4E8 275C7C 01AC+00 1/1 0/0 0/0 .text JPAVolumeCircle */
// regalloc. Could be issue with mul asm implementations
#ifdef NONMATCHING
// bug in diff.py preventing me from seeing what's wrong
void JPAVolumeCircle(JPAEmitterWorkData* work) {
f32 theta, distance, sizeXZ;
s16 thetai;
f32 theta;
f32 distance;
f32 sizeXZ;
f32 temp;
if (work->mpEmtr->checkFlag(JPADynFlag_FixedInterval)) {
theta = work->mVolumeSweep * (work->mVolumeEmitIdx++ / work->mEmitCount);
theta = (s16)((work->mVolumeEmitIdx << 16) / work->mEmitCount);
thetai = theta * work->mVolumeSweep;
work->mVolumeEmitIdx++;
} else {
theta = work->mVolumeSweep * work->mpEmtr->get_r_ss();
thetai = theta;
}
distance = work->mpEmtr->get_r_f();
@ -136,7 +139,7 @@ void JPAVolumeCircle(JPAEmitterWorkData* work) {
}
sizeXZ = work->mVolumeSize * (work->mVolumeMinRad + distance * (1.0f - work->mVolumeMinRad));
work->mVolumePos.set(sizeXZ * JMASSin(theta), 0.0f, sizeXZ * JMASCos(theta));
work->mVolumePos.set(sizeXZ * JMASSin(thetai), 0.0f, sizeXZ * JMASCos(thetai));
work->mVelOmni.mul(work->mVolumePos, work->mGlobalScl);
work->mVelAxis.set(work->mVolumePos.x, 0.0f, work->mVolumePos.z);
}
@ -154,15 +157,13 @@ static asm void JPAVolumeCircle(JPAEmitterWorkData* param_0) {
#endif
/* 8027B4E8-8027B5F0 275E28 0108+00 1/1 0/0 0/0 .text JPAVolumeCube__FP18JPAEmitterWorkData */
/* 8027B4E8-8027B5F0 275E28 0108+00 1/1 0/0 0/0 .text JPAVolumeCube */
// matches with literals
#ifdef NONMATCHING
// bug in diff.py preventing me from seeing what's wrong
void JPAVolumeCube(JPAEmitterWorkData* work) {
f32 size = work->mVolumeSize;
work->mVolumePos.set(size * work->mpEmtr->get_r_zh(), size * work->mpEmtr->get_r_zh(),
size * work->mpEmtr->get_r_zh());
work->mVolumePos.set(work->mpEmtr->get_r_zh() * work->mVolumeSize,
work->mpEmtr->get_r_zh() * work->mVolumeSize,
work->mpEmtr->get_r_zh() * work->mVolumeSize);
work->mVelOmni.mul(work->mVolumePos, work->mGlobalScl);
work->mVelAxis.set(work->mVolumePos.x, 0.0f, work->mVolumePos.z);
}

View File

@ -220,25 +220,9 @@ void Z2StatusMgr::menuOut() {
}
/* 802B61BC-802B61E8 2B0AFC 002C+00 2/2 1/1 0/0 .text isMovieDemo__11Z2StatusMgrFv */
#ifdef NONMATCHING
bool Z2StatusMgr::isMovieDemo(void) {
bool isMovieDemo = false;
if (mDemoStatus == 2 || mDemoStatus == 8 || mDemoStatus == 9) {
isMovieDemo = true;
}
return isMovieDemo;
return mDemoStatus == 2 || mDemoStatus == 8 || mDemoStatus == 9;
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm bool Z2StatusMgr::isMovieDemo() {
nofralloc
#include "asm/Z2AudioLib/Z2StatusMgr/isMovieDemo__11Z2StatusMgrFv.s"
}
#pragma pop
#endif
/* ############################################################################################## */
/* 8039BC88-8039BC88 0282E8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */

View File

@ -217,45 +217,33 @@ inline void AIResetStreamSampleCount(void) { __AIRegs[0] = (__AIRegs[0] & ~0x20)
inline void AISetStreamTrigger(u32 trigger) { __AIRegs[3] = trigger; }
/* 80350084-803501F0 34A9C4 016C+00 0/0 1/1 0/0 .text AIInit */
// time assignments are weird
#ifdef NONMATCHING
void AIInit(u8* stack) {
if (__AI_init_flag == TRUE) {
return;
}
if (__AI_init_flag == TRUE) {
return;
}
OSRegisterVersion(__AIVersion);
bound_32KHz = OSNanosecondsToTicks(31524);
bound_48KHz = OSNanosecondsToTicks(42024);
min_wait = OSNanosecondsToTicks(42000);
max_wait = OSNanosecondsToTicks(63000);
buffer = OSNanosecondsToTicks(3000);
OSRegisterVersion(__AIVersion);
bound_32KHz = OSNanosecondsToTicks(31524);
bound_48KHz = OSNanosecondsToTicks(42024);
min_wait = OSNanosecondsToTicks(42000);
max_wait = OSNanosecondsToTicks(63000);
buffer = OSNanosecondsToTicks(3000);
AISetStreamVolRight(0);
AISetStreamVolLeft(0);
AISetStreamTrigger(0);
AIResetStreamSampleCount();
__AI_set_stream_sample_rate(1);
AISetDSPSampleRate(0);
__AIS_Callback = 0;
__AID_Callback = 0;
__CallbackStack = stack;
__OSSetInterruptHandler(5, __AIDHandler);
__OSUnmaskInterrupts(0x04000000);
__OSSetInterruptHandler(8, __AISHandler);
__OSUnmaskInterrupts(0x800000);
__AI_init_flag = TRUE;
AISetStreamVolRight(0);
AISetStreamVolLeft(0);
AISetStreamTrigger(0);
AIResetStreamSampleCount();
__AI_set_stream_sample_rate(1);
AISetDSPSampleRate(0);
__AIS_Callback = 0;
__AID_Callback = 0;
__CallbackStack = stack;
__OSSetInterruptHandler(5, __AIDHandler);
__OSUnmaskInterrupts(0x04000000);
__OSSetInterruptHandler(8, __AISHandler);
__OSUnmaskInterrupts(0x800000);
__AI_init_flag = TRUE;
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void AIInit(u8* stack) {
nofralloc
#include "asm/dolphin/ai/ai/AIInit.s"
}
#pragma pop
#endif
/* 803501F0-8035026C 34AB30 007C+00 1/1 0/0 0/0 .text __AISHandler */
void __AISHandler(s16 interrupt, OSContext* context) {

View File

@ -19,20 +19,20 @@ static void AlarmHandlerForTimeout();
static void Read();
static void SeekTwiceBeforeRead();
void DVDLowRead();
void DVDLowSeek();
void DVDLowWaitCoverClose();
void DVDLowReadDiskID();
void DVDLowStopMotor();
void DVDLowRequestError();
void DVDLowInquiry();
void DVDLowAudioStream();
void DVDLowRequestAudioStatus();
void DVDLowAudioBufferConfig();
BOOL DVDLowSeek(u32 arg0, DVDLowCallback cb);
BOOL DVDLowWaitCoverClose(DVDLowCallback cb);
BOOL DVDLowReadDiskID(u32 arg0, DVDLowCallback cb);
BOOL DVDLowStopMotor(DVDLowCallback cb);
BOOL DVDLowRequestError(DVDLowCallback cb);
BOOL DVDLowInquiry(u32 arg0, DVDLowCallback cb);
BOOL DVDLowAudioStream(u32 arg0, u32 arg1, u32 arg2, DVDLowCallback cb);
BOOL DVDLowRequestAudioStatus(u32 arg0, DVDLowCallback cb);
BOOL DVDLowAudioBufferConfig(s32 arg0, u32 arg1, DVDLowCallback cb);
void DVDLowReset();
void DVDLowBreak();
BOOL DVDLowBreak();
DVDLowCallback DVDLowClearCallback();
void __DVDLowSetWAType();
void __DVDLowTestAlarm();
void __DVDLowSetWAType(u32 arg0, u32 arg1);
BOOL __DVDLowTestAlarm(OSAlarm* alarm);
//
// External References:
@ -44,8 +44,8 @@ void OSSetAlarm();
void OSCancelAlarm();
void OSSetCurrentContext();
void OSClearContext();
void OSDisableInterrupts();
void OSRestoreInterrupts();
BOOL OSDisableInterrupts();
void OSRestoreInterrupts(BOOL enabled);
void __OSMaskInterrupts();
OSTime __OSGetSystemTime();
void DVDGetCurrentDiskID();
@ -62,12 +62,26 @@ typedef struct DVDCommand {
DVDLowCallback callback;
} DVDCommand;
typedef struct BI2Debug {
/* 0x00 */ s32 debugMonSize;
/* 0x04 */ s32 simMemSize;
/* 0x08 */ u32 argOffset;
/* 0x0C */ u32 debugFlag;
/* 0x10 */ int trackLocation;
/* 0x14 */ int trackSize;
/* 0x18 */ u32 countryCode;
/* 0x1C */ u8 unk[8];
/* 0x24 */ u32 padSpec;
} BI2Debug;
#define OS_BI2_DEBUG_ADDRESS 0x800000F4
/* ############################################################################################## */
/* 8044C830-8044C870 079550 003C+04 6/6 0/0 0/0 .bss CommandList */
static u8 CommandList[60 + 4 /* padding */];
/* 80451710-80451714 000C10 0004+00 12/12 0/0 0/0 .sbss StopAtNextInt */
static u8 StopAtNextInt[4];
static volatile BOOL StopAtNextInt;
/* 80451714-80451718 000C14 0004+00 1/1 0/0 0/0 .sbss LastLength */
static u8 LastLength[4];
@ -88,19 +102,19 @@ static u8 data_80451724[4];
static u8 ResetOccurred[4];
/* 8045172C-80451730 000C2C 0004+00 3/3 0/0 0/0 .sbss WaitingCoverClose */
static DVDLowCallback WaitingCoverClose;
static volatile BOOL WaitingCoverClose;
/* 80451730-80451734 000C30 0004+00 2/2 0/0 0/0 .sbss Breaking */
static u8 Breaking[4];
static BOOL Breaking;
/* 80451734-80451738 000C34 0004+00 2/2 0/0 0/0 .sbss WorkAroundType */
static u8 WorkAroundType[4];
static u32 WorkAroundType;
/* 80451738-80451740 000C38 0004+04 2/2 0/0 0/0 .sbss WorkAroundSeekLocation */
static u8 WorkAroundSeekLocation[4 + 4 /* padding */];
static u32 WorkAroundSeekLocation[2];
/* 80451740-80451744 000C40 0004+00 2/2 0/0 0/0 .sbss LastReadFinished */
static u8 LastReadFinished[4];
static BOOL LastReadFinished;
/* 80451744-80451748 000C44 0004+00 2/2 0/0 0/0 .sbss None */
static u8 data_80451744[4];
@ -118,14 +132,12 @@ static u8 LastCommandWasRead[4];
static u32 NextCommandNumber;
/* 80347674-803476B4 341FB4 0040+00 0/0 1/1 0/0 .text __DVDInitWA */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void __DVDInitWA() {
nofralloc
#include "asm/dolphin/dvd/dvdlow/__DVDInitWA.s"
void __DVDInitWA() {
NextCommandNumber = 0;
((DVDCommand*)CommandList)[0]._0 = -1;
__DVDLowSetWAType(0, 0);
OSInitAlarm();
}
#pragma pop
/* ############################################################################################## */
/* 8044C870-8044C898 079590 0028+00 0/1 0/0 0/0 .bss AlarmForWA */
@ -135,10 +147,10 @@ static u8 AlarmForWA[40];
#pragma pop
/* 8044C898-8044C8C0 0795B8 0028+00 9/11 0/0 0/0 .bss AlarmForTimeout */
static u8 AlarmForTimeout[40];
static OSAlarm AlarmForTimeout;
/* 8044C8C0-8044C8E8 0795E0 0028+00 1/1 0/0 0/0 .bss AlarmForBreak */
static u8 AlarmForBreak[40];
static OSAlarm AlarmForBreak;
/* 8044C8E8-8044C8F4 079608 000C+00 0/1 0/0 0/0 .bss Prev */
#pragma push
@ -241,94 +253,127 @@ asm void DVDLowRead() {
#pragma pop
/* 80347EB0-80347F44 3427F0 0094+00 3/3 2/2 0/0 .text DVDLowSeek */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void DVDLowSeek() {
nofralloc
#include "asm/dolphin/dvd/dvdlow/DVDLowSeek.s"
BOOL DVDLowSeek(u32 arg0, DVDLowCallback cb) {
u32 temp;
Callback = cb;
StopAtNextInt = FALSE;
__DIRegs[2] = 0xAB000000;
__DIRegs[3] = arg0 >> 2;
__DIRegs[7] = 1;
temp = ((u32)((BI2Debug*)(OS_BI2_DEBUG_ADDRESS))->simMemSize >> 2) * 10;
OSCreateAlarm(&AlarmForTimeout);
OSSetAlarm(&AlarmForTimeout, (OSTime)temp, AlarmHandlerForTimeout);
return TRUE;
}
#pragma pop
/* 80347F44-80347F70 342884 002C+00 0/0 3/3 0/0 .text DVDLowWaitCoverClose */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void DVDLowWaitCoverClose() {
nofralloc
#include "asm/dolphin/dvd/dvdlow/DVDLowWaitCoverClose.s"
BOOL DVDLowWaitCoverClose(DVDLowCallback cb) {
Callback = cb;
WaitingCoverClose = TRUE;
StopAtNextInt = FALSE;
__DIRegs[1] = 2;
return TRUE;
}
#pragma pop
/* 80347F70-80348014 3428B0 00A4+00 0/0 2/2 0/0 .text DVDLowReadDiskID */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void DVDLowReadDiskID() {
nofralloc
#include "asm/dolphin/dvd/dvdlow/DVDLowReadDiskID.s"
BOOL DVDLowReadDiskID(u32 arg0, DVDLowCallback cb) {
u32 temp;
Callback = cb;
StopAtNextInt = FALSE;
__DIRegs[2] = 0xA8000040;
__DIRegs[3] = 0;
__DIRegs[4] = 0x20;
__DIRegs[5] = arg0;
__DIRegs[6] = 0x20;
__DIRegs[7] = 3;
temp = ((u32)((BI2Debug*)(OS_BI2_DEBUG_ADDRESS))->simMemSize >> 2) * 10;
OSCreateAlarm(&AlarmForTimeout);
OSSetAlarm(&AlarmForTimeout, (OSTime)temp, AlarmHandlerForTimeout);
return 1;
}
#pragma pop
/* 80348014-803480A0 342954 008C+00 0/0 9/9 0/0 .text DVDLowStopMotor */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void DVDLowStopMotor() {
nofralloc
#include "asm/dolphin/dvd/dvdlow/DVDLowStopMotor.s"
BOOL DVDLowStopMotor(DVDLowCallback cb) {
u32 temp;
Callback = cb;
StopAtNextInt = FALSE;
__DIRegs[2] = 0xE3000000;
__DIRegs[7] = 1;
temp = ((u32)((BI2Debug*)(OS_BI2_DEBUG_ADDRESS))->simMemSize >> 2) * 10;
OSCreateAlarm(&AlarmForTimeout);
OSSetAlarm(&AlarmForTimeout, (OSTime)temp, AlarmHandlerForTimeout);
return 1;
}
#pragma pop
/* 803480A0-8034812C 3429E0 008C+00 0/0 7/7 0/0 .text DVDLowRequestError */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void DVDLowRequestError() {
nofralloc
#include "asm/dolphin/dvd/dvdlow/DVDLowRequestError.s"
BOOL DVDLowRequestError(DVDLowCallback cb) {
u32 temp;
Callback = cb;
StopAtNextInt = FALSE;
__DIRegs[2] = 0xE0000000;
__DIRegs[7] = 1;
temp = ((u32)((BI2Debug*)(OS_BI2_DEBUG_ADDRESS))->simMemSize >> 2) * 10;
OSCreateAlarm(&AlarmForTimeout);
OSSetAlarm(&AlarmForTimeout, (OSTime)temp, AlarmHandlerForTimeout);
return 1;
}
#pragma pop
/* 8034812C-803481C8 342A6C 009C+00 0/0 1/1 0/0 .text DVDLowInquiry */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void DVDLowInquiry() {
nofralloc
#include "asm/dolphin/dvd/dvdlow/DVDLowInquiry.s"
BOOL DVDLowInquiry(u32 arg0, DVDLowCallback cb) {
u32 temp;
Callback = cb;
StopAtNextInt = FALSE;
__DIRegs[2] = 0x12000000;
__DIRegs[4] = 0x20;
__DIRegs[5] = arg0;
__DIRegs[6] = 0x20;
__DIRegs[7] = 3;
temp = ((u32)((BI2Debug*)(OS_BI2_DEBUG_ADDRESS))->simMemSize >> 2) * 10;
OSCreateAlarm(&AlarmForTimeout);
OSSetAlarm(&AlarmForTimeout, (OSTime)temp, AlarmHandlerForTimeout);
return 1;
}
#pragma pop
/* 803481C8-80348260 342B08 0098+00 0/0 2/2 0/0 .text DVDLowAudioStream */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void DVDLowAudioStream() {
nofralloc
#include "asm/dolphin/dvd/dvdlow/DVDLowAudioStream.s"
BOOL DVDLowAudioStream(u32 arg0, u32 arg1, u32 arg2, DVDLowCallback cb) {
u32 temp;
Callback = cb;
StopAtNextInt = FALSE;
__DIRegs[2] = arg0 | 0xe1000000;
__DIRegs[3] = arg2 >> 2;
__DIRegs[4] = arg1;
__DIRegs[7] = 1;
temp = ((u32)((BI2Debug*)(OS_BI2_DEBUG_ADDRESS))->simMemSize >> 2) * 10;
OSCreateAlarm(&AlarmForTimeout);
OSSetAlarm(&AlarmForTimeout, (OSTime)temp, AlarmHandlerForTimeout);
return 1;
}
#pragma pop
/* 80348260-803482EC 342BA0 008C+00 0/0 1/1 0/0 .text DVDLowRequestAudioStatus */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void DVDLowRequestAudioStatus() {
nofralloc
#include "asm/dolphin/dvd/dvdlow/DVDLowRequestAudioStatus.s"
BOOL DVDLowRequestAudioStatus(u32 arg0, DVDLowCallback cb) {
u32 temp;
Callback = cb;
StopAtNextInt = FALSE;
__DIRegs[2] = arg0 | 0xe2000000;
__DIRegs[7] = 1;
temp = ((u32)((BI2Debug*)(OS_BI2_DEBUG_ADDRESS))->simMemSize >> 2) * 10;
OSCreateAlarm(&AlarmForTimeout);
OSSetAlarm(&AlarmForTimeout, (OSTime)temp, AlarmHandlerForTimeout);
return 1;
}
#pragma pop
/* 803482EC-80348388 342C2C 009C+00 0/0 3/3 0/0 .text DVDLowAudioBufferConfig */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void DVDLowAudioBufferConfig() {
nofralloc
#include "asm/dolphin/dvd/dvdlow/DVDLowAudioBufferConfig.s"
BOOL DVDLowAudioBufferConfig(s32 arg0, u32 arg1, DVDLowCallback cb) {
u32 temp;
Callback = cb;
StopAtNextInt = FALSE;
__DIRegs[2] = arg1 | ((arg0 ? 0x10000 : 0) | 0xe4000000);
__DIRegs[7] = 1;
temp = ((u32)((BI2Debug*)(OS_BI2_DEBUG_ADDRESS))->simMemSize >> 2) * 10;
OSCreateAlarm(&AlarmForTimeout);
OSSetAlarm(&AlarmForTimeout, (OSTime)temp, AlarmHandlerForTimeout);
return 1;
}
#pragma pop
/* 80348388-80348444 342CC8 00BC+00 0/0 1/1 0/0 .text DVDLowReset */
#pragma push
@ -341,41 +386,39 @@ asm void DVDLowReset() {
#pragma pop
/* 80348444-80348458 342D84 0014+00 0/0 1/1 0/0 .text DVDLowBreak */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void DVDLowBreak() {
nofralloc
#include "asm/dolphin/dvd/dvdlow/DVDLowBreak.s"
BOOL DVDLowBreak() {
StopAtNextInt = TRUE;
Breaking = TRUE;
return TRUE;
}
#pragma pop
/* 80348458-80348474 342D98 001C+00 0/0 1/1 0/0 .text DVDLowClearCallback */
DVDLowCallback DVDLowClearCallback() {
DVDLowCallback rv;
__DIRegs[1] = 0;
rv = Callback;
WaitingCoverClose = NULL;
WaitingCoverClose = FALSE;
Callback = NULL;
return rv;
}
/* 80348474-803484B8 342DB4 0044+00 1/1 0/0 0/0 .text __DVDLowSetWAType */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void __DVDLowSetWAType() {
nofralloc
#include "asm/dolphin/dvd/dvdlow/__DVDLowSetWAType.s"
void __DVDLowSetWAType(u32 arg0, u32 arg1) {
BOOL enabled = OSDisableInterrupts();
WorkAroundType = arg0;
WorkAroundSeekLocation[0] = arg1;
OSRestoreInterrupts(enabled);
}
#pragma pop
/* 803484B8-803484F0 342DF8 0038+00 0/0 1/1 0/0 .text __DVDLowTestAlarm */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void __DVDLowTestAlarm() {
nofralloc
#include "asm/dolphin/dvd/dvdlow/__DVDLowTestAlarm.s"
BOOL __DVDLowTestAlarm(OSAlarm* alarm) {
if (alarm == &AlarmForBreak) {
return TRUE;
}
if (alarm == &AlarmForTimeout) {
return TRUE;
}
return FALSE;
}
#pragma pop

View File

@ -12,7 +12,6 @@
#define OS_CURRENTCONTEXT_PADDR 0x00C0
#define OS_EXCEPTIONTABLE_ADDR 0x3000
#define OS_DBJUMPPOINT_ADDR 0x60
#define OS_BI2_DEBUG_ADDRESS 0x800000F4
#define OS_DEBUG_ADDRESS_2 0x800030E9
#define DEBUGFLAG_ADDR 0x800030E8

View File

@ -16,7 +16,7 @@ OSThreadQueue __OSActiveThreadQueue : (OS_BASE_CACHED | 0x00DC);
SECTION_INIT void memset();
int __PADDisableRecalibration();
extern u8 __OSRebootParams[28 + 4 /* padding */];
extern OSExecParams __OSRebootParams;
//
// Declarations:
@ -60,13 +60,19 @@ void OSRegisterResetFunction(OSResetFunctionInfo* func) {
}
/* 8033F6E4-8033F78C 33A024 00A8+00 1/1 0/0 0/0 .text __OSCallResetFunctions */
#ifdef NONMATCHING
BOOL __OSCallResetFunctions(u32 arg0) {
OSResetFunctionInfo* iter;
s32 retCode = 0;
u32 priority = 0;
s32 temp;
for (iter = ResetFunctionQueue.first; iter != NULL; iter = iter->next) {
retCode |= !iter->func(arg0);
for (iter = ResetFunctionQueue.first; iter != NULL; ) {
if (retCode != 0 && priority != iter->priority)
break;
temp = !iter->func(arg0);
priority = iter->priority;
iter = iter->next;
retCode |= temp;
}
retCode |= !__OSSyncSram();
if (retCode) {
@ -74,16 +80,6 @@ BOOL __OSCallResetFunctions(u32 arg0) {
}
return 1;
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm BOOL __OSCallResetFunctions(u32 param_0) {
nofralloc
#include "asm/dolphin/os/OSReset/__OSCallResetFunctions.s"
}
#pragma pop
#endif
/* 8033F78C-8033F7FC 33A0CC 0070+00 2/2 0/0 0/0 .text Reset */
static asm void Reset(register s32 param_0) {
@ -140,14 +136,24 @@ lbl_8033F7F8:
}
/* 8033F7FC-8033F864 33A13C 0068+00 1/1 0/0 0/0 .text KillThreads */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void KillThreads(void) {
nofralloc
#include "asm/dolphin/os/OSReset/KillThreads.s"
#pragma dont_inline on
static void KillThreads(void) {
OSThread* thread;
OSThread* next;
for (thread = __OSActiveThreadQueue.head; thread; thread = next) {
next = thread->active_threads_link.next;
switch (thread->state) {
case 1:
case 4:
OSCancelThread(thread);
continue;
default:
continue;
}
}
}
#pragma pop
#pragma dont_inline reset
/* 8033F864-8033F8AC 33A1A4 0048+00 0/0 3/3 0/0 .text __OSDoHotReset */
void __OSDoHotReset(s32 arg0) {
@ -158,28 +164,15 @@ void __OSDoHotReset(s32 arg0) {
}
/* ############################################################################################## */
/* 803D07E8-803D0838 02D908 004E+02 1/1 0/0 0/0 .data @153 */
SECTION_DATA static char lit_153[] =
"OSResetSystem(): You can't specify TRUE to forceMenu if you restart. Ignored\n";
/* 80451698-804516A0 000B98 0004+04 1/1 0/0 0/0 .sbss bootThisDol */
static u8 bootThisDol[4 + 4 /* padding */];
static u32 bootThisDol;
/* 8033F8AC-8033FAAC 33A1EC 0200+00 0/0 5/5 0/0 .text OSResetSystem */
#ifdef NONMATCHING
void OSResetSystem(int reset, u32 resetCode, BOOL forceMenu) {
BOOL rc;
BOOL disableRecalibration;
u32 unk[3];
u32 unk;
OSDisableScheduler();
__OSStopAudioSystem();
if (reset == OS_RESET_SHUTDOWN) {
disableRecalibration = __PADDisableRecalibration(TRUE);
}
while (!__OSCallResetFunctions(FALSE))
;
if (reset == OS_RESET_HOTRESET && forceMenu) {
OSSram* sram;
@ -188,46 +181,52 @@ void OSResetSystem(int reset, u32 resetCode, BOOL forceMenu) {
sram->flags |= 0x40;
__OSUnlockSram(TRUE);
while (!__OSSyncSram())
;
resetCode = 0;
}
OSDisableInterrupts();
__OSCallResetFunctions(TRUE);
LCDisable();
if (reset == OS_RESET_SHUTDOWN || (reset == OS_RESET_RESTART && (bootThisDol || resetCode + 0x3fff0000 == 0))) {
__OSStopAudioSystem();
disableRecalibration = __PADDisableRecalibration(TRUE);
while (!__OSCallResetFunctions(FALSE));
while (!__OSSyncSram());
OSDisableInterrupts();
__OSCallResetFunctions(TRUE);
LCDisable();
__PADDisableRecalibration(disableRecalibration);
KillThreads();
} else {
__OSStopAudioSystem();
while (!__OSCallResetFunctions(FALSE));
while (!__OSSyncSram());
OSDisableInterrupts();
__OSCallResetFunctions(TRUE);
LCDisable();
KillThreads();
}
if (reset == OS_RESET_HOTRESET) {
__OSDoHotReset(resetCode);
} else if (reset == OS_RESET_RESTART) {
KillThreads();
if (forceMenu == TRUE) {
OSReport("OSResetSystem(): You can't specify TRUE to forceMenu if you restart. Ignored\n");
}
OSEnableScheduler();
__OSReboot(resetCode, forceMenu);
__OSReboot(resetCode, bootThisDol);
}
KillThreads();
memset(OSPhysicalToCached(0x40), 0, 0xcc - 0x40);
memset(OSPhysicalToCached(0xd4), 0, 0xe8 - 0xd4);
memset(OSPhysicalToCached(0xf4), 0, 0xf8 - 0xf4);
memset(OSPhysicalToCached(0x3000), 0, 0xc0);
memset(OSPhysicalToCached(0x30c8), 0, 0xd4 - 0xc8);
memset(OSPhysicalToCached(0x30e2), 0, 1);
__PADDisableRecalibration(disableRecalibration);
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void OSResetSystem(int reset, u32 resetCode, BOOL forceMenu) {
nofralloc
#include "asm/dolphin/os/OSReset/OSResetSystem.s"
}
#pragma pop
#endif
/* 8033FAAC-8033FAE4 33A3EC 0038+00 0/0 3/3 0/0 .text OSGetResetCode */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm u32 OSGetResetCode(void) {
nofralloc
#include "asm/dolphin/os/OSReset/OSGetResetCode.s"
u32 OSGetResetCode(void)
{
if (__OSRebootParams.valid)
return 0x80000000 | __OSRebootParams.restartCode;
return ((__PIRegs[9] & ~7) >> 3);
}
#pragma pop

View File

@ -6,11 +6,10 @@
#include "dolphin/os/OSResetSW.h"
#include "dol2asm.h"
#include "dolphin/os/OS.h"
#include "dolphin/os/OSReset.h"
u8 GameChoice : (OS_BASE_CACHED | 0x30E3);
vu32 __PIRegs[12] : 0xCC003000;
void __OSResetSWInterruptHandler(OSInterrupt interrupt, OSContext* context);
//
@ -40,7 +39,6 @@ static OSTime HoldUp;
static OSTime HoldDown;
/* 8033FAE4-8033FBD8 33A424 00F4+00 0/0 1/1 0/0 .text __OSResetSWInterruptHandler */
#ifdef NONMATCHING
void __OSResetSWInterruptHandler(OSInterrupt interrupt, OSContext* context) {
OSResetCallback callback;
@ -60,26 +58,58 @@ void __OSResetSWInterruptHandler(OSInterrupt interrupt, OSContext* context) {
}
__PIRegs[0] = 2;
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void __OSResetSWInterruptHandler(OSInterrupt interrupt, OSContext* context) {
nofralloc
#include "asm/dolphin/os/OSResetSW/__OSResetSWInterruptHandler.s"
}
#pragma pop
#endif
/* 8033FBD8-8033FE70 33A518 0298+00 1/1 0/0 0/0 .text OSGetResetButtonState */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm BOOL OSGetResetButtonState(void) {
nofralloc
#include "asm/dolphin/os/OSResetSW/OSGetResetButtonState.s"
BOOL OSGetResetButtonState(void) {
BOOL enabled = OSDisableInterrupts();
BOOL state;
OSTime now = __OSGetSystemTime();
u32 reg = __PIRegs[0];
if (!(reg & 0x00010000)) {
if (!Down) {
Down = TRUE;
state = HoldUp ? TRUE : FALSE;
HoldDown = now;
} else {
state = HoldUp || (OSMicrosecondsToTicks(100) < now - HoldDown)
? TRUE
: FALSE;
}
} else if (Down) {
Down = FALSE;
state = LastState;
if (state) {
HoldUp = now;
} else {
HoldUp = 0;
}
} else if (HoldUp && (now - HoldUp < OSMillisecondsToTicks(40))) {
state = TRUE;
} else {
state = FALSE;
HoldUp = 0;
}
LastState = state;
if (GameChoice & 0x1F) {
OSTime fire = (GameChoice & 0x1F) * 60;
fire = __OSStartTime + OSSecondsToTicks(fire);
if (fire < now) {
now -= fire;
now = OSTicksToSeconds(now) / 2;
if ((now & 1) == 0) {
state = TRUE;
} else {
state = FALSE;
}
}
}
OSRestoreInterrupts(enabled);
return state;
}
#pragma pop
/* 8033FE70-8033FE90 33A7B0 0020+00 0/0 1/1 0/0 .text OSGetResetSwitchState */
BOOL OSGetResetSwitchState(void) {

View File

@ -134,8 +134,6 @@ static void GetDates(s32 days, OSCalendarTime* cal) {
#define BIAS (2000 * 365 + (2000 + 3) / 4 - (2000 - 1) / 100 + (2000 - 1) / 400)
/* 80342974-80342B78 33D2B4 0204+00 0/0 4/4 0/0 .text OSTicksToCalendarTime */
#ifdef NONMATCHING
#pragma push
#pragma dont_inline on
void OSTicksToCalendarTime(OSTime ticks, OSCalendarTime* td) {
int days;
@ -163,14 +161,4 @@ void OSTicksToCalendarTime(OSTime ticks, OSCalendarTime* td) {
td->minutes = (secs / 60) % 60;
td->seconds = secs % 60;
}
#pragma pop
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void OSTicksToCalendarTime(OSTime ticks, OSCalendarTime* ct) {
nofralloc
#include "asm/dolphin/os/OSTime/OSTicksToCalendarTime.s"
}
#pragma pop
#endif
#pragma dont_inline reset

View File

@ -180,7 +180,6 @@ inline void SITransferNext(s32 chan) {
static u8 cmdTypeAndStatus_78[4];
/* 80344EF8-8034523C 33F838 0344+00 1/1 0/0 0/0 .text SIInterruptHandler */
#ifdef NONMATCHING
static void SIInterruptHandler(OSInterrupt interrupt, OSContext* context) {
u32 reg;
@ -247,16 +246,6 @@ static void SIInterruptHandler(OSInterrupt interrupt, OSContext* context) {
}
}
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void SIInterruptHandler(OSInterrupt interrupt, OSContext* context) {
nofralloc
#include "asm/dolphin/si/SIBios/SIInterruptHandler.s"
}
#pragma pop
#endif
/* 8034523C-803452D4 33FB7C 0098+00 2/2 0/0 0/0 .text SIEnablePollingInterrupt */
static BOOL SIEnablePollingInterrupt(BOOL enable) {
@ -677,7 +666,6 @@ static void GetTypeCallback(s32 chan, u32 error, OSContext* context) {
}
/* 80345F90-80346154 3408D0 01C4+00 2/2 3/3 0/0 .text SIGetType */
#ifdef NONMATCHING
u32 SIGetType(s32 chan) {
static u32 cmdTypeAndStatus;
BOOL enabled;
@ -712,16 +700,6 @@ u32 SIGetType(s32 chan) {
OSRestoreInterrupts(enabled);
return type;
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm u32 SIGetType(s32 chan) {
nofralloc
#include "asm/dolphin/si/SIBios/SIGetType.s"
}
#pragma pop
#endif
/* 80346154-80346290 340A94 013C+00 0/0 6/6 0/0 .text SIGetTypeAsync */
u32 SIGetTypeAsync(s32 chan, SITypeAndStatusCallback callback) {

View File

@ -176,7 +176,7 @@ extern "C" void fopAcM_setCullSizeBox__FP10fopAc_ac_cffffff();
extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc();
extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc();
extern "C" void getRes__14dRes_control_cFPCcPCcP11dRes_info_ci();
extern "C" void dKyw_get_AllWind_vecpow__FP4cXyz();
extern "C" void dKyw_get_AllWind_vecpow__FP4cXyzP4cXyz();
extern "C" void GetAc__22dCcD_GAtTgCoCommonBaseFv();
extern "C" void __ct__10dCcD_GSttsFv();
extern "C" void __ct__12dCcD_GObjInfFv();

View File

@ -139,7 +139,7 @@ extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc();
extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc();
extern "C" void getRes__14dRes_control_cFPCcPCcP11dRes_info_ci();
extern "C" void dPath_GetRoomPath__Fii();
extern "C" void dKyw_get_AllWind_vecpow__FP4cXyz();
extern "C" void dKyw_get_AllWind_vecpow__FP4cXyzP4cXyz();
extern "C" void __ct__10dCcD_GSttsFv();
extern "C" void __ct__12dCcD_GObjInfFv();
extern "C" void __dt__12dCcD_GObjInfFv();

View File

@ -138,7 +138,7 @@ extern "C" void fopAcM_searchActorDistanceXZ2__FPC10fopAc_ac_cPC10fopAc_ac_c();
extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc();
extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc();
extern "C" void getRes__14dRes_control_cFPCcPCcP11dRes_info_ci();
extern "C" void dKyw_get_AllWind_vecpow__FP4cXyz();
extern "C" void dKyw_get_AllWind_vecpow__FP4cXyzP4cXyz();
extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c();
extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c();
extern "C" void __pl__4cXyzCFRC3Vec();

View File

@ -162,7 +162,7 @@ extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc();
extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc();
extern "C" void getRes__14dRes_control_cFPCcPCcP11dRes_info_ci();
extern "C" void dPath_GetRoomPath__Fii();
extern "C" void dKyw_get_AllWind_vecpow__FP4cXyz();
extern "C" void dKyw_get_AllWind_vecpow__FP4cXyzP4cXyz();
extern "C" void __ct__10dCcD_GSttsFv();
extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c();
extern "C" void __pl__4cXyzCFRC3Vec();

View File

@ -15,38 +15,21 @@
// Forward References:
//
extern "C" void __ct__9dInsect_cFv();
extern "C" void Insect_GetDemoMain__9dInsect_cFv();
extern "C" void CalcZBuffer__9dInsect_cFf();
extern "C" extern char const* const d_d_insect__stringBase0;
//
// External References:
//
extern "C" void mDoLib_project__FP3VecP3Vec();
extern "C" void mDoLib_pos2camera__FP3VecP3Vec();
extern "C" void __ct__10fopAc_ac_cFv();
extern "C" void fopAcM_delete__FP10fopAc_ac_c();
extern "C" void fopAcM_orderItemEvent__FP10fopAc_ac_cUsUs();
extern "C" void fopAcM_createItemForTrBoxDemo__FPC4cXyziiiPC5csXyzPC4cXyz();
extern "C" void fopAcM_createItem__FPC4cXyziiiPC5csXyzPC4cXyzi();
extern "C" void fopAcM_cancelCarryNow__FP10fopAc_ac_c();
extern "C" void isEventBit__11dSv_event_cCFUs();
extern "C" void reset__14dEvt_control_cFv();
extern "C" void setPtI_Id__14dEvt_control_cFUi();
extern "C" void endCheckOld__16dEvent_manager_cFPCc();
extern "C" void newData__13dDlst_peekZ_cFssPUl();
extern "C" void Insect_Release__9dInsect_cFv();
extern "C" void isCatchNotGiveInsect__14dMenu_Insect_cFUc();
extern "C" u8 saveBitLabels__16dSv_event_flag_c[1644 + 4 /* padding */];
//
// Declarations:
//
inline int dComIfGs_isEventBit(u16 event) {
return g_dComIfG_gameInfo.info.getSavedata().getEvent().isEventBit(event);
}
/* ############################################################################################## */
/* 803BA078-803BA088 017198 000C+04 1/1 0/0 0/0 .data __vt__9dInsect_c */
SECTION_DATA extern void* __vt__9dInsect_c[3 + 1 /* padding */] = {
(void*)NULL /* RTTI */,
(void*)NULL,
@ -67,17 +50,12 @@ dInsect_c::dInsect_c() {
}
/* ############################################################################################## */
/* 80393D98-80393D98 0203F8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
#pragma push
#pragma force_active on
SECTION_DEAD static char const* const stringBase_80393D98 = "DEFAULT_GETITEM";
#pragma pop
/* 8015E078-8015E26C 1589B8 01F4+00 0/0 0/0 24/24 .text Insect_GetDemoMain__9dInsect_cFv
*/
#ifdef NONMATCHING
void dInsect_c::Insect_GetDemoMain() {
if (field_0x58C != 1) {
switch (field_0x58C) {
case 0:
if (fopAcM_checkCarryNow(this)) {
cLib_offBit(mAttentionInfo.mFlags,0x10);
fopAcM_cancelCarryNow(this);
@ -93,7 +71,8 @@ void dInsect_c::Insect_GetDemoMain() {
} else {
cLib_onBit(mAttentionInfo.mFlags,0x10);
}
} else {
break;
case 1:
if (mEvtInfo.checkCommandItem()) {
if (field_0x588 != -1) {
dComIfGp_event_setItemPartnerId(field_0x588);
@ -105,87 +84,49 @@ void dInsect_c::Insect_GetDemoMain() {
fopAcM_orderItemEvent(this,0,0);
mEvtInfo.i_onCondition(8);
}
}
if (dComIfGp_evmng_endCheck("DEFAULT_GETITEM")) {
i_dComIfGp_event_reset();
if (dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[field_0x582]) || field_0x585 != 0) {
field_0x56D = 1;
field_0x58C = 0;
if (field_0x584 == 0) {
fopAcM_createItem(&current.pos,0,-1,-1,0,0,0);
field_0x584 = 1;
break;
case 2:
if (dComIfGp_evmng_endCheck("DEFAULT_GETITEM")) {
i_dComIfGp_event_reset();
if (dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[field_0x582]) || field_0x585 != 0) {
field_0x56D = 1;
field_0x58C = 0;
if (field_0x584 == 0) {
fopAcM_createItem(&current.pos,0,-1,-1,0,0,0);
field_0x584 = 1;
}
} else {
fopAcM_delete(this);
}
} else {
fopAcM_delete(this);
}
break;
}
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dInsect_c::Insect_GetDemoMain() {
nofralloc
#include "asm/d/d_insect/Insect_GetDemoMain__9dInsect_cFv.s"
}
#pragma pop
#endif
/* ############################################################################################## */
/* 804535E0-804535E4 001BE0 0004+00 1/1 0/0 0/0 .sdata2 @3871 */
SECTION_SDATA2 static f32 lit_3871 = 20.0f;
/* 804535E4-804535E8 001BE4 0004+00 1/1 0/0 0/0 .sdata2 @3872 */
SECTION_SDATA2 static u8 lit_3872[4] = {
0x00,
0x00,
0x00,
0x00,
};
/* 804535E8-804535EC 001BE8 0004+00 1/1 0/0 0/0 .sdata2 @3873 */
SECTION_SDATA2 static f32 lit_3873 = 608.0f;
/* 804535EC-804535F0 001BEC 0004+00 1/1 0/0 0/0 .sdata2 @3874 */
SECTION_SDATA2 static f32 lit_3874 = 448.0f;
/* 804535F0-804535F4 001BF0 0004+00 1/1 0/0 0/0 .sdata2 @3875 */
SECTION_SDATA2 static f32 lit_3875 = -10.0f;
/* 804535F4-804535F8 001BF4 0004+00 1/1 0/0 0/0 .sdata2 @3876 */
SECTION_SDATA2 static f32 lit_3876 = 16777215.0f;
/* 804535F8-80453600 001BF8 0004+04 1/1 0/0 0/0 .sdata2 @3877 */
SECTION_SDATA2 static f32 lit_3877[1 + 1 /* padding */] = {
1.0f,
/* padding */
0.0f,
};
/* 8015E26C-8015E3F8 158BAC 018C+00 0/0 0/0 3/3 .text CalcZBuffer__9dInsect_cFf */
#ifdef NONMATCHING
void dInsect_c::CalcZBuffer(f32 param_0) {
f32 camera_trim_height;
cXyz pos;
cXyz pos_projected;
cXyz pos;
pos = current.pos;
pos.y += FLOAT_LABEL(lit_3871);
pos.y += 20.0f;
mDoLib_project(&pos_projected,&pos);
mDoLib_project(&pos, &pos_projected);
if (dComIfGp_getCamera(0)) {
camera_trim_height = dComIfGp_getCamera(0)->mCamera.field_0x93c;
camera_trim_height = *(f32*)&dComIfGp_getCamera(0)->mCamera.mCamSetup.mTypeTable;
} else {
camera_trim_height = FLOAT_LABEL(lit_3872);
camera_trim_height = 0.0f;
}
if (pos_projected.x < FLOAT_LABEL(lit_3872) ||
pos_projected.x > FLOAT_LABEL(lit_3873) ||
pos_projected.y < camera_trim_height ||
pos_projected.y < FLOAT_LABEL(lit_3874) - camera_trim_height) {
if (pos_projected.x > 0.0f &&
pos_projected.x < 608.0f &&
pos_projected.y > camera_trim_height &&
pos_projected.y < 448.0f - camera_trim_height) {
dComIfGd_peekZ(pos_projected.x,pos_projected.y,&field_0x578);
} else {
field_0x578 = 0;
@ -194,23 +135,13 @@ void dInsect_c::CalcZBuffer(f32 param_0) {
f32 view_near = dComIfGd_getView()->mNear;
f32 view_far = dComIfGd_getView()->mFar;
mDoLib_pos2camera(&pos_projected,&pos);
mDoLib_pos2camera(&pos, &pos_projected);
pos_projected.z += param_0;
if (pos_projected.z == FLOAT_LABEL(lit_3872)) {
pos_projected.z = FLOAT_LABEL(lit_3875);
if (!pos_projected.z) {
pos_projected.z = -10.0f;
}
field_0x57C = view_near + ((view_far * view_near) / pos_projected.z) / (view_far - view_near);
field_0x57C = (((view_near + ((view_far * view_near) / pos_projected.z)) / (view_far - view_near)) + 1.0f) * 16777215.0f;
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dInsect_c::CalcZBuffer(f32 param_0) {
nofralloc
#include "asm/d/d_insect/CalcZBuffer__9dInsect_cFf.s"
}
#pragma pop
#endif
/* 80393D98-80393D98 0203F8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */

View File

@ -218,13 +218,11 @@ static asm void dThunder_Delete(dThunder_c* param_0) {
/* 801AE3FC-801AE458 1A8D3C 005C+00 1/0 0/0 0/0 .text dThunder_Create__FP12kankyo_class
*/
#ifdef NONMATCHING
// regalloc
static int dThunder_Create(kankyo_class* param_0) {
dThunder_c* thunder_ptr = (dThunder_c*)param_0;
int ret = thunder_ptr->createHeap();
int ret;
if (ret == 0) {
if (thunder_ptr->createHeap() == 0) {
return 5;
} else {
ret = thunder_ptr->create();
@ -233,16 +231,6 @@ static int dThunder_Create(kankyo_class* param_0) {
return ret;
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void dThunder_Create(kankyo_class* param_0) {
nofralloc
#include "asm/d/d_ky_thunder/dThunder_Create__FP12kankyo_class.s"
}
#pragma pop
#endif
/* ############################################################################################## */
/* 80394F40-80394F40 0215A0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */

View File

@ -122,7 +122,7 @@ extern "C" static void dKyw_pntwind_get_info__FP4cXyzP4cXyzPf();
extern "C" void dKyw_pntlight_collision_get_info__FP4cXyzP4cXyzPf();
extern "C" void dKyw_pntwind_get_vecpow__FP4cXyz();
extern "C" void dKyw_get_AllWind_vec__FP4cXyzP4cXyzPf();
extern "C" void dKyw_get_AllWind_vecpow__FP4cXyz();
extern "C" void dKyw_get_AllWind_vecpow__FP4cXyzP4cXyz();
extern "C" void dKyw_custom_windpower__Ff();
extern "C" void dKyw_evt_wind_set__Fss();
extern "C" void dKyw_evt_wind_set_go__Fv();
@ -1753,17 +1753,17 @@ asm void dKyw_get_AllWind_vec(cXyz* param_0, cXyz* param_1, f32* param_2) {
}
#pragma pop
/* 8005B530-8005B60C 055E70 00DC+00 0/0 0/0 5/5 .text dKyw_get_AllWind_vecpow__FP4cXyz */
// missing mr instruction
/* 8005B530-8005B60C 055E70 00DC+00 0/0 0/0 5/5 .text dKyw_get_AllWind_vecpow__FP4cXyzP4cXyz */
// matches with literals
#ifdef NONMATCHING
void dKyw_get_AllWind_vecpow(cXyz* param_0) {
void dKyw_get_AllWind_vecpow(cXyz* param_0, cXyz* param_1) {
f32 sp8;
cXyz spC;
cXyz sp18;
cXyz sp24;
cXyz sp30;
dKyw_pntwind_get_info(param_0, &sp30, &sp8);
dKyw_pntwind_get_info(param_1, &sp30, &sp8);
sp18 = g_env_light.mWind.vec * (g_env_light.mWind.pow * (1.0f - sp8));
sp24 = sp30 * (5.0f * sp8);
spC = sp18 + sp24;
@ -1774,9 +1774,9 @@ void dKyw_get_AllWind_vecpow(cXyz* param_0) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void dKyw_get_AllWind_vecpow(cXyz* param_0) {
asm void dKyw_get_AllWind_vecpow(cXyz* param_0, cXyz* param_1) {
nofralloc
#include "asm/d/kankyo/d_kankyo_wether/dKyw_get_AllWind_vecpow__FP4cXyz.s"
#include "asm/d/kankyo/d_kankyo_wether/dKyw_get_AllWind_vecpow__FP4cXyzP4cXyz.s"
}
#pragma pop
#endif

View File

@ -360,7 +360,7 @@ void dMeter2Info_c::decMsgKeyWaitTimer() {
/* 8021C250-8021C370 216B90 0120+00 0/0 16/16 0/0 .text
* getString__13dMeter2Info_cFUlPcP14JMSMesgEntry_c */
// missing branch + some regalloc
// missing branch
#ifdef NONMATCHING
void dMeter2Info_c::getString(u32 stringID, char* outStr, JMSMesgEntry_c* p_msgEntry) {
strcpy(outStr, "");
@ -378,10 +378,9 @@ void dMeter2Info_c::getString(u32 stringID, char* outStr, JMSMesgEntry_c* p_msgE
u32 stringOffset = (*(u32*)(msgRes + 0x24));
u8* strPtr = inf + stringOffset + 8;
u16 i = 0;
u16 entryCount = *(u16*)(inf + 8);
u16 i;
for (; i < entryCount; i++) {
for (i = 0; i < *(u16*)(inf + 8); i++) {
u8* entry = (inf + (i * 0x14));
if (stringID == *(u16*)(entry + 0x14)) {

View File

@ -962,21 +962,11 @@ asm int dMsgFlow_c::query007(mesg_flow_node_branch* param_0, fopAc_ac_c* param_1
/* 8024B45C-8024B4A4 245D9C 0048+00 1/0 0/0 0/0 .text
* query008__10dMsgFlow_cFP21mesg_flow_node_branchP10fopAc_ac_ci */
#ifdef NONMATCHING
int dMsgFlow_c::query008(mesg_flow_node_branch* flow_node, fopAc_ac_c* param_1, int param_2) {
u16 prm0 = flow_node->params[0];
return (u8)daNpcKakashi_getSwdTutorialStep() != (u16)(prm0 - 1);
u32 prm0 = flow_node->params[0];
u16 prm1 = prm0;
return (u8)daNpcKakashi_getSwdTutorialStep() - 1 != (u16)prm1;
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm int dMsgFlow_c::query008(mesg_flow_node_branch* param_0, fopAc_ac_c* param_1, int param_2) {
nofralloc
#include "asm/d/msg/d_msg_flow/query008__10dMsgFlow_cFP21mesg_flow_node_branchP10fopAc_ac_ci.s"
}
#pragma pop
#endif
/* 8024B4A4-8024B4D0 245DE4 002C+00 1/0 0/0 0/0 .text
* query009__10dMsgFlow_cFP21mesg_flow_node_branchP10fopAc_ac_ci */
@ -1353,7 +1343,7 @@ int dMsgFlow_c::query043(mesg_flow_node_branch* flow_node, fopAc_ac_c*, int) {
u8 bomb_num = dComIfGs_getBombNum(dComIfGs_getTmpReg(0xFBFF) - 1);
u8 bomb_max = dComIfGs_getBombMax(POKE_BOMB);
return bomb_num + (u8)prm0 >= bomb_max;
return bomb_max >= bomb_num + prm0;
}
#else
#pragma push
@ -1569,11 +1559,13 @@ asm int dMsgFlow_c::event004(mesg_flow_node_event* param_0, fopAc_ac_c* param_1)
/* 8024C5F0-8024C654 246F30 0064+00 1/0 0/0 0/0 .text
* event005__10dMsgFlow_cFP20mesg_flow_node_eventP10fopAc_ac_c */
// matches with literals
#ifdef NONMATCHING
int dMsgFlow_c::event005(mesg_flow_node_event* flow_node, fopAc_ac_c*) {
f32 prm0 = getParam(flow_node->params);
i_dComIfGp_setItemLifeCount(-prm0, 0);
f32 prm1 = -prm0;
i_dComIfGp_setItemLifeCount(prm1, 0);
return 1;
}
#else

View File

@ -222,37 +222,35 @@ static u8 data_80451060;
/* 80197098-80197270 1919D8 01D8+00 1/1 0/0 0/0 .text dShopSystem_searchItemActor__FPvPv
*/
#ifdef NONMATCHING
static int dShopSystem_searchItemActor(void* param_0, void* param_1) {
if (fopAcM_IsActor(param_0) && fopAcM_GetName(param_0) == PROC_TAG_SHOPITM) {
u32 param = fopAcM_GetParam(param_0);
if ((param & 0xF0000000) == (fopAcM_GetParam(param_1) & 0xF0000000) &&
if ((fopAcM_GetParam(param_1) & 0xF0000000) == (fopAcM_GetParam(param_0) & 0xF0000000) &&
dShopSystem_item_count < data_80451058) {
u32 param2 = (param >> 0x18) & 0xF;
u8 param2 = (fopAcM_GetParam(param_0) >> 0x18) & 0xF;
if (dShopSystem_itemActor[0] != param_0 && dShopSystem_itemActor[1] != param_0 &&
dShopSystem_itemActor[2] != param_0 && dShopSystem_itemActor[3] != param_0 &&
dShopSystem_itemActor[4] != param_0 && dShopSystem_itemActor[5] != param_0 &&
dShopSystem_itemActor[6] != param_0) {
u8 sw = static_cast<fopAc_ac_c*>(param_0)->orig.angle.z;
u8 sw2 = static_cast<fopAc_ac_c*>(param_0)->orig.angle.z >> 8;
u8 item_no = param;
u8 sw2 = ((u16)static_cast<fopAc_ac_c*>(param_0)->orig.angle.z) >> 8;
u8 item_no = fopAcM_GetParam(param_0) & 0xff;
if ((sw == 0xFF || !dComIfGs_isSaveSwitch(sw)) &&
(sw2 == 0xFF || dComIfGs_isSaveSwitch(sw2))) {
if (sw != 0xFF && item_no == HYLIA_SHIELD && checkItemGet(item_no, true)) {
dComIfGs_onSaveSwitch(sw);
} else {
if (param2 == 0) {
data_80451060 = 1;
dShopSystem_itemActor[dShopSystem_item_count] = (fopAc_ac_c*) param_0;
dShopSystem_itemNo[dShopSystem_item_count] = item_no;
} else if (dShopSystem_itemActor[param2 - 1] == NULL) {
dShopSystem_itemActor[param2 - 1] = (fopAc_ac_c*) param_0;
dShopSystem_itemNo[param2 - 1] = item_no;
}
dShopSystem_item_count++;
}
if (param2 == 0) {
data_80451060 = 1;
dShopSystem_itemActor[dShopSystem_item_count] = param_0;
dShopSystem_itemNo[dShopSystem_item_count] = item_no;
} else if (dShopSystem_itemActor[param2 - 1] == NULL) {
dShopSystem_itemActor[param2 - 1] = param_0;
dShopSystem_itemNo[param2 - 1] = item_no;
}
dShopSystem_item_count++;
}
}
}
@ -260,16 +258,6 @@ static int dShopSystem_searchItemActor(void* param_0, void* param_1) {
return 0;
}
#else
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void dShopSystem_searchItemActor(void* param_0, void* param_1) {
nofralloc
#include "asm/d/shop/d_shop_system/dShopSystem_searchItemActor__FPvPv.s"
}
#pragma pop
#endif
/* ############################################################################################## */
/* 804506F0-804506F8 000170 0008+00 6/6 0/0 0/0 .sdata dShopSystem_cameraActor */