MSL_C cleanup (#238)

* clean up MSL_C files according to prime decomp

* remove asm
This commit is contained in:
TakaRikka
2023-01-02 22:28:46 -07:00
committed by GitHub
parent f6a9947c6c
commit e1114ebcf9
101 changed files with 1310 additions and 1941 deletions
+7 -7
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 | 21.344157% | 767652 | 3596544
.text | 21.473726% | 772312 | 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 | 29.636538% | 1191588 | 4020672
Total | 29.752439% | 1196248 | 4020672
## Total
Section | Percentage | Decompiled (bytes) | Total (bytes)
---|---|---|---
main.dol | 29.636538% | 1191588 | 4020672
RELs | 33.290749% | 3828544 | 11500324
Total | 32.344136% | 5020132 | 15520996
main.dol | 29.752439% | 1196248 | 4020672
RELs | 33.301114% | 3829736 | 11500324
Total | 32.381839% | 5025984 | 15520996
## RELs
@@ -529,7 +529,7 @@ d_a_obj_lv2candle | 100.000000% | 6960 | 6960
d_a_obj_wood_pendulum | 44.455748% | 1748 | 3932
d_a_obj_onsen | 49.239281% | 1424 | 2892
d_a_obj_hasu2 | 41.190476% | 1384 | 3360
d_a_obj_catdoor | 46.041413% | 1512 | 3284
d_a_obj_catdoor | 82.338611% | 2704 | 3284
d_a_obj_bkdoor | 45.847554% | 1612 | 3516
d_a_obj_mgate | 47.398844% | 1968 | 4152
d_a_obj_ganonwall2 | 41.938675% | 1696 | 4044
@@ -785,4 +785,4 @@ d_a_b_oh2 | 37.960954% | 2100 | 5532
d_a_b_bq | 28.033347% | 11164 | 39824
d_a_b_zant_sima | 40.995025% | 1648 | 4020
d_a_b_gm | 30.376176% | 11628 | 38280
Total | 33.290749% | 3828544 | 11500324
Total | 33.301114% | 3829736 | 11500324
-5
View File
@@ -1,5 +0,0 @@
lbl_803650D0:
/* 803650D0 7C 64 FE 70 */ srawi r4, r3, 0x1f
/* 803650D4 7C 80 1A 78 */ xor r0, r4, r3
/* 803650D8 7C 64 00 50 */ subf r3, r4, r0
/* 803650DC 4E 80 00 20 */ blr
@@ -1,54 +0,0 @@
lbl_803650E0:
/* 803650E0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803650E4 7C 08 02 A6 */ mflr r0
/* 803650E8 90 01 00 14 */ stw r0, 0x14(r1)
/* 803650EC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 803650F0 7C 7F 1B 78 */ mr r31, r3
/* 803650F4 93 C1 00 08 */ stw r30, 8(r1)
/* 803650F8 7C 9E 23 78 */ mr r30, r4
/* 803650FC 80 63 00 1C */ lwz r3, 0x1c(r3)
/* 80365100 80 1F 00 24 */ lwz r0, 0x24(r31)
/* 80365104 7C 03 00 51 */ subf. r0, r3, r0
/* 80365108 41 82 00 50 */ beq lbl_80365158
/* 8036510C 90 1F 00 28 */ stw r0, 0x28(r31)
/* 80365110 38 BF 00 28 */ addi r5, r31, 0x28
/* 80365114 81 9F 00 40 */ lwz r12, 0x40(r31)
/* 80365118 80 7F 00 00 */ lwz r3, 0(r31)
/* 8036511C 80 9F 00 1C */ lwz r4, 0x1c(r31)
/* 80365120 80 DF 00 48 */ lwz r6, 0x48(r31)
/* 80365124 7D 89 03 A6 */ mtctr r12
/* 80365128 4E 80 04 21 */ bctrl
/* 8036512C 28 1E 00 00 */ cmplwi r30, 0
/* 80365130 41 82 00 0C */ beq lbl_8036513C
/* 80365134 80 1F 00 28 */ lwz r0, 0x28(r31)
/* 80365138 90 1E 00 00 */ stw r0, 0(r30)
lbl_8036513C:
/* 8036513C 2C 03 00 00 */ cmpwi r3, 0
/* 80365140 41 82 00 08 */ beq lbl_80365148
/* 80365144 48 00 00 48 */ b lbl_8036518C
lbl_80365148:
/* 80365148 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 8036514C 80 1F 00 28 */ lwz r0, 0x28(r31)
/* 80365150 7C 03 02 14 */ add r0, r3, r0
/* 80365154 90 1F 00 18 */ stw r0, 0x18(r31)
lbl_80365158:
/* 80365158 80 1F 00 1C */ lwz r0, 0x1c(r31)
/* 8036515C 38 60 00 00 */ li r3, 0
/* 80365160 90 1F 00 24 */ stw r0, 0x24(r31)
/* 80365164 80 1F 00 20 */ lwz r0, 0x20(r31)
/* 80365168 90 1F 00 28 */ stw r0, 0x28(r31)
/* 8036516C 80 BF 00 18 */ lwz r5, 0x18(r31)
/* 80365170 80 9F 00 2C */ lwz r4, 0x2c(r31)
/* 80365174 80 1F 00 28 */ lwz r0, 0x28(r31)
/* 80365178 7C A4 20 38 */ and r4, r5, r4
/* 8036517C 7C 04 00 50 */ subf r0, r4, r0
/* 80365180 90 1F 00 28 */ stw r0, 0x28(r31)
/* 80365184 80 1F 00 18 */ lwz r0, 0x18(r31)
/* 80365188 90 1F 00 34 */ stw r0, 0x34(r31)
lbl_8036518C:
/* 8036518C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80365190 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80365194 83 C1 00 08 */ lwz r30, 8(r1)
/* 80365198 7C 08 03 A6 */ mtlr r0
/* 8036519C 38 21 00 10 */ addi r1, r1, 0x10
/* 803651A0 4E 80 00 20 */ blr
@@ -1,14 +0,0 @@
lbl_803651A4:
/* 803651A4 80 03 00 1C */ lwz r0, 0x1c(r3)
/* 803651A8 90 03 00 24 */ stw r0, 0x24(r3)
/* 803651AC 80 03 00 20 */ lwz r0, 0x20(r3)
/* 803651B0 90 03 00 28 */ stw r0, 0x28(r3)
/* 803651B4 80 A3 00 18 */ lwz r5, 0x18(r3)
/* 803651B8 80 83 00 2C */ lwz r4, 0x2c(r3)
/* 803651BC 80 03 00 28 */ lwz r0, 0x28(r3)
/* 803651C0 7C A4 20 38 */ and r4, r5, r4
/* 803651C4 7C 04 00 50 */ subf r0, r4, r0
/* 803651C8 90 03 00 28 */ stw r0, 0x28(r3)
/* 803651CC 80 03 00 18 */ lwz r0, 0x18(r3)
/* 803651D0 90 03 00 34 */ stw r0, 0x34(r3)
/* 803651D4 4E 80 00 20 */ blr
@@ -1,218 +0,0 @@
lbl_80365494:
/* 80365494 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80365498 7C 08 02 A6 */ mflr r0
/* 8036549C 90 01 00 34 */ stw r0, 0x34(r1)
/* 803654A0 BF 21 00 14 */ stmw r25, 0x14(r1)
/* 803654A4 7C 99 23 78 */ mr r25, r4
/* 803654A8 7C DA 33 78 */ mr r26, r6
/* 803654AC 7C 7B 1B 78 */ mr r27, r3
/* 803654B0 7C BC 2B 78 */ mr r28, r5
/* 803654B4 38 80 00 00 */ li r4, 0
/* 803654B8 7F 43 D3 78 */ mr r3, r26
/* 803654BC 48 00 3C 59 */ bl fwide
/* 803654C0 2C 03 00 00 */ cmpwi r3, 0
/* 803654C4 40 82 00 10 */ bne lbl_803654D4
/* 803654C8 7F 43 D3 78 */ mr r3, r26
/* 803654CC 38 80 FF FF */ li r4, -1
/* 803654D0 48 00 3C 45 */ bl fwide
lbl_803654D4:
/* 803654D4 7F B9 E1 D7 */ mullw. r29, r25, r28
/* 803654D8 41 82 00 1C */ beq lbl_803654F4
/* 803654DC 88 1A 00 0A */ lbz r0, 0xa(r26)
/* 803654E0 28 00 00 00 */ cmplwi r0, 0
/* 803654E4 40 82 00 10 */ bne lbl_803654F4
/* 803654E8 A0 1A 00 04 */ lhz r0, 4(r26)
/* 803654EC 54 00 D7 7F */ rlwinm. r0, r0, 0x1a, 0x1d, 0x1f
/* 803654F0 40 82 00 0C */ bne lbl_803654FC
lbl_803654F4:
/* 803654F4 38 60 00 00 */ li r3, 0
/* 803654F8 48 00 02 94 */ b lbl_8036578C
lbl_803654FC:
/* 803654FC 28 00 00 02 */ cmplwi r0, 2
/* 80365500 40 82 00 08 */ bne lbl_80365508
/* 80365504 48 00 0F C9 */ bl __stdio_atexit
lbl_80365508:
/* 80365508 88 1A 00 05 */ lbz r0, 5(r26)
/* 8036550C 3B E0 00 01 */ li r31, 1
/* 80365510 38 60 00 00 */ li r3, 0
/* 80365514 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f
/* 80365518 41 82 00 14 */ beq lbl_8036552C
/* 8036551C 88 1A 00 04 */ lbz r0, 4(r26)
/* 80365520 54 00 FF BE */ rlwinm r0, r0, 0x1f, 0x1e, 0x1f
/* 80365524 28 00 00 02 */ cmplwi r0, 2
/* 80365528 40 82 00 08 */ bne lbl_80365530
lbl_8036552C:
/* 8036552C 38 60 00 01 */ li r3, 1
lbl_80365530:
/* 80365530 2C 03 00 00 */ cmpwi r3, 0
/* 80365534 40 82 00 18 */ bne lbl_8036554C
/* 80365538 88 1A 00 04 */ lbz r0, 4(r26)
/* 8036553C 54 00 FF BE */ rlwinm r0, r0, 0x1f, 0x1e, 0x1f
/* 80365540 28 00 00 01 */ cmplwi r0, 1
/* 80365544 41 82 00 08 */ beq lbl_8036554C
/* 80365548 3B E0 00 00 */ li r31, 0
lbl_8036554C:
/* 8036554C 88 1A 00 08 */ lbz r0, 8(r26)
/* 80365550 54 00 DF 7F */ rlwinm. r0, r0, 0x1b, 0x1d, 0x1f
/* 80365554 40 82 00 54 */ bne lbl_803655A8
/* 80365558 88 7A 00 04 */ lbz r3, 4(r26)
/* 8036555C 54 60 EF BD */ rlwinm. r0, r3, 0x1d, 0x1e, 0x1e
/* 80365560 54 63 EF 7E */ rlwinm r3, r3, 0x1d, 0x1d, 0x1f
/* 80365564 41 82 00 44 */ beq lbl_803655A8
/* 80365568 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d
/* 8036556C 41 82 00 24 */ beq lbl_80365590
/* 80365570 7F 43 D3 78 */ mr r3, r26
/* 80365574 38 80 00 00 */ li r4, 0
/* 80365578 38 A0 00 02 */ li r5, 2
/* 8036557C 48 00 06 39 */ bl fseek
/* 80365580 2C 03 00 00 */ cmpwi r3, 0
/* 80365584 41 82 00 0C */ beq lbl_80365590
/* 80365588 38 60 00 00 */ li r3, 0
/* 8036558C 48 00 02 00 */ b lbl_8036578C
lbl_80365590:
/* 80365590 88 1A 00 08 */ lbz r0, 8(r26)
/* 80365594 38 60 00 01 */ li r3, 1
/* 80365598 50 60 2E 34 */ rlwimi r0, r3, 5, 0x18, 0x1a
/* 8036559C 7F 43 D3 78 */ mr r3, r26
/* 803655A0 98 1A 00 08 */ stb r0, 8(r26)
/* 803655A4 4B FF FC 01 */ bl __prep_buffer
lbl_803655A8:
/* 803655A8 88 1A 00 08 */ lbz r0, 8(r26)
/* 803655AC 54 00 DF 7E */ rlwinm r0, r0, 0x1b, 0x1d, 0x1f
/* 803655B0 28 00 00 01 */ cmplwi r0, 1
/* 803655B4 41 82 00 1C */ beq lbl_803655D0
/* 803655B8 38 60 00 01 */ li r3, 1
/* 803655BC 38 00 00 00 */ li r0, 0
/* 803655C0 98 7A 00 0A */ stb r3, 0xa(r26)
/* 803655C4 38 60 00 00 */ li r3, 0
/* 803655C8 90 1A 00 28 */ stw r0, 0x28(r26)
/* 803655CC 48 00 01 C0 */ b lbl_8036578C
lbl_803655D0:
/* 803655D0 28 1D 00 00 */ cmplwi r29, 0
/* 803655D4 7F 7E DB 78 */ mr r30, r27
/* 803655D8 3B 80 00 00 */ li r28, 0
/* 803655DC 41 82 01 20 */ beq lbl_803656FC
/* 803655E0 80 9A 00 24 */ lwz r4, 0x24(r26)
/* 803655E4 80 7A 00 1C */ lwz r3, 0x1c(r26)
/* 803655E8 7C 04 18 40 */ cmplw r4, r3
/* 803655EC 40 82 00 0C */ bne lbl_803655F8
/* 803655F0 2C 1F 00 00 */ cmpwi r31, 0
/* 803655F4 41 82 01 08 */ beq lbl_803656FC
lbl_803655F8:
/* 803655F8 80 1A 00 20 */ lwz r0, 0x20(r26)
/* 803655FC 7C 63 20 50 */ subf r3, r3, r4
/* 80365600 7C 03 00 50 */ subf r0, r3, r0
/* 80365604 90 1A 00 28 */ stw r0, 0x28(r26)
lbl_80365608:
/* 80365608 80 1A 00 28 */ lwz r0, 0x28(r26)
/* 8036560C 3B 60 00 00 */ li r27, 0
/* 80365610 7C 00 E8 40 */ cmplw r0, r29
/* 80365614 90 01 00 08 */ stw r0, 8(r1)
/* 80365618 40 81 00 08 */ ble lbl_80365620
/* 8036561C 93 A1 00 08 */ stw r29, 8(r1)
lbl_80365620:
/* 80365620 88 1A 00 04 */ lbz r0, 4(r26)
/* 80365624 54 00 FF BE */ rlwinm r0, r0, 0x1f, 0x1e, 0x1f
/* 80365628 28 00 00 01 */ cmplwi r0, 1
/* 8036562C 40 82 00 30 */ bne lbl_8036565C
/* 80365630 80 A1 00 08 */ lwz r5, 8(r1)
/* 80365634 28 05 00 00 */ cmplwi r5, 0
/* 80365638 41 82 00 24 */ beq lbl_8036565C
/* 8036563C 7F C3 F3 78 */ mr r3, r30
/* 80365640 38 80 00 0A */ li r4, 0xa
/* 80365644 48 00 0A 95 */ bl __memrchr
/* 80365648 7C 7B 1B 79 */ or. r27, r3, r3
/* 8036564C 41 82 00 10 */ beq lbl_8036565C
/* 80365650 38 1B 00 01 */ addi r0, r27, 1
/* 80365654 7C 1E 00 50 */ subf r0, r30, r0
/* 80365658 90 01 00 08 */ stw r0, 8(r1)
lbl_8036565C:
/* 8036565C 80 A1 00 08 */ lwz r5, 8(r1)
/* 80365660 28 05 00 00 */ cmplwi r5, 0
/* 80365664 41 82 00 3C */ beq lbl_803656A0
/* 80365668 80 7A 00 24 */ lwz r3, 0x24(r26)
/* 8036566C 7F C4 F3 78 */ mr r4, r30
/* 80365670 4B C9 DE D1 */ bl memcpy
/* 80365674 80 61 00 08 */ lwz r3, 8(r1)
/* 80365678 80 1A 00 24 */ lwz r0, 0x24(r26)
/* 8036567C 7F DE 1A 14 */ add r30, r30, r3
/* 80365680 7F 9C 1A 14 */ add r28, r28, r3
/* 80365684 7C 00 1A 14 */ add r0, r0, r3
/* 80365688 7F A3 E8 50 */ subf r29, r3, r29
/* 8036568C 90 1A 00 24 */ stw r0, 0x24(r26)
/* 80365690 80 61 00 08 */ lwz r3, 8(r1)
/* 80365694 80 1A 00 28 */ lwz r0, 0x28(r26)
/* 80365698 7C 03 00 50 */ subf r0, r3, r0
/* 8036569C 90 1A 00 28 */ stw r0, 0x28(r26)
lbl_803656A0:
/* 803656A0 80 1A 00 28 */ lwz r0, 0x28(r26)
/* 803656A4 28 00 00 00 */ cmplwi r0, 0
/* 803656A8 41 82 00 18 */ beq lbl_803656C0
/* 803656AC 28 1B 00 00 */ cmplwi r27, 0
/* 803656B0 40 82 00 10 */ bne lbl_803656C0
/* 803656B4 88 1A 00 04 */ lbz r0, 4(r26)
/* 803656B8 54 00 FF BF */ rlwinm. r0, r0, 0x1f, 0x1e, 0x1f
/* 803656BC 40 82 00 30 */ bne lbl_803656EC
lbl_803656C0:
/* 803656C0 7F 43 D3 78 */ mr r3, r26
/* 803656C4 38 80 00 00 */ li r4, 0
/* 803656C8 4B FF FA 19 */ bl __flush_buffer
/* 803656CC 2C 03 00 00 */ cmpwi r3, 0
/* 803656D0 41 82 00 1C */ beq lbl_803656EC
/* 803656D4 38 60 00 01 */ li r3, 1
/* 803656D8 38 00 00 00 */ li r0, 0
/* 803656DC 98 7A 00 0A */ stb r3, 0xa(r26)
/* 803656E0 3B A0 00 00 */ li r29, 0
/* 803656E4 90 1A 00 28 */ stw r0, 0x28(r26)
/* 803656E8 48 00 00 14 */ b lbl_803656FC
lbl_803656EC:
/* 803656EC 28 1D 00 00 */ cmplwi r29, 0
/* 803656F0 41 82 00 0C */ beq lbl_803656FC
/* 803656F4 2C 1F 00 00 */ cmpwi r31, 0
/* 803656F8 40 82 FF 10 */ bne lbl_80365608
lbl_803656FC:
/* 803656FC 28 1D 00 00 */ cmplwi r29, 0
/* 80365700 41 82 00 68 */ beq lbl_80365768
/* 80365704 2C 1F 00 00 */ cmpwi r31, 0
/* 80365708 40 82 00 60 */ bne lbl_80365768
/* 8036570C 83 7A 00 1C */ lwz r27, 0x1c(r26)
/* 80365710 7C 1E EA 14 */ add r0, r30, r29
/* 80365714 83 FA 00 20 */ lwz r31, 0x20(r26)
/* 80365718 7F 43 D3 78 */ mr r3, r26
/* 8036571C 38 81 00 08 */ addi r4, r1, 8
/* 80365720 93 DA 00 1C */ stw r30, 0x1c(r26)
/* 80365724 93 BA 00 20 */ stw r29, 0x20(r26)
/* 80365728 90 1A 00 24 */ stw r0, 0x24(r26)
/* 8036572C 4B FF F9 B5 */ bl __flush_buffer
/* 80365730 2C 03 00 00 */ cmpwi r3, 0
/* 80365734 41 82 00 14 */ beq lbl_80365748
/* 80365738 38 60 00 01 */ li r3, 1
/* 8036573C 38 00 00 00 */ li r0, 0
/* 80365740 98 7A 00 0A */ stb r3, 0xa(r26)
/* 80365744 90 1A 00 28 */ stw r0, 0x28(r26)
lbl_80365748:
/* 80365748 80 01 00 08 */ lwz r0, 8(r1)
/* 8036574C 7F 43 D3 78 */ mr r3, r26
/* 80365750 93 7A 00 1C */ stw r27, 0x1c(r26)
/* 80365754 7F 9C 02 14 */ add r28, r28, r0
/* 80365758 93 FA 00 20 */ stw r31, 0x20(r26)
/* 8036575C 4B FF FA 49 */ bl __prep_buffer
/* 80365760 38 00 00 00 */ li r0, 0
/* 80365764 90 1A 00 28 */ stw r0, 0x28(r26)
lbl_80365768:
/* 80365768 88 1A 00 04 */ lbz r0, 4(r26)
/* 8036576C 54 00 FF BE */ rlwinm r0, r0, 0x1f, 0x1e, 0x1f
/* 80365770 28 00 00 02 */ cmplwi r0, 2
/* 80365774 41 82 00 0C */ beq lbl_80365780
/* 80365778 38 00 00 00 */ li r0, 0
/* 8036577C 90 1A 00 28 */ stw r0, 0x28(r26)
lbl_80365780:
/* 80365780 38 19 FF FF */ addi r0, r25, -1
/* 80365784 7C 1C 02 14 */ add r0, r28, r0
/* 80365788 7C 60 CB 96 */ divwu r3, r0, r25
lbl_8036578C:
/* 8036578C BB 21 00 14 */ lmw r25, 0x14(r1)
/* 80365790 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80365794 7C 08 03 A6 */ mtlr r0
/* 80365798 38 21 00 30 */ addi r1, r1, 0x30
/* 8036579C 4E 80 00 20 */ blr
@@ -1,32 +0,0 @@
lbl_803657A0:
/* 803657A0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 803657A4 7C 08 02 A6 */ mflr r0
/* 803657A8 90 01 00 24 */ stw r0, 0x24(r1)
/* 803657AC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 803657B0 7C DF 33 78 */ mr r31, r6
/* 803657B4 93 C1 00 18 */ stw r30, 0x18(r1)
/* 803657B8 7C BE 2B 78 */ mr r30, r5
/* 803657BC 93 A1 00 14 */ stw r29, 0x14(r1)
/* 803657C0 7C 9D 23 78 */ mr r29, r4
/* 803657C4 93 81 00 10 */ stw r28, 0x10(r1)
/* 803657C8 7C 7C 1B 78 */ mr r28, r3
/* 803657CC 38 60 00 02 */ li r3, 2
/* 803657D0 4B FF FC 99 */ bl __begin_critical_region
/* 803657D4 7F 83 E3 78 */ mr r3, r28
/* 803657D8 7F A4 EB 78 */ mr r4, r29
/* 803657DC 7F C5 F3 78 */ mr r5, r30
/* 803657E0 7F E6 FB 78 */ mr r6, r31
/* 803657E4 4B FF FC B1 */ bl __fwrite
/* 803657E8 7C 60 1B 78 */ mr r0, r3
/* 803657EC 38 60 00 02 */ li r3, 2
/* 803657F0 7C 1F 03 78 */ mr r31, r0
/* 803657F4 4B FF FC 71 */ bl __end_critical_region
/* 803657F8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 803657FC 7F E3 FB 78 */ mr r3, r31
/* 80365800 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80365804 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80365808 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8036580C 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80365810 7C 08 03 A6 */ mtlr r0
/* 80365814 38 21 00 20 */ addi r1, r1, 0x20
/* 80365818 4E 80 00 20 */ blr
-129
View File
@@ -1,129 +0,0 @@
lbl_803659F8:
/* 803659F8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 803659FC 7C 08 02 A6 */ mflr r0
/* 80365A00 90 01 00 24 */ stw r0, 0x24(r1)
/* 80365A04 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80365A08 7C 7F 1B 79 */ or. r31, r3, r3
/* 80365A0C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80365A10 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80365A14 40 82 00 0C */ bne lbl_80365A20
/* 80365A18 38 60 FF FF */ li r3, -1
/* 80365A1C 48 00 01 7C */ b lbl_80365B98
lbl_80365A20:
/* 80365A20 A0 1F 00 04 */ lhz r0, 4(r31)
/* 80365A24 54 03 D7 7F */ rlwinm. r3, r0, 0x1a, 0x1d, 0x1f
/* 80365A28 40 82 00 0C */ bne lbl_80365A34
/* 80365A2C 38 60 00 00 */ li r3, 0
/* 80365A30 48 00 01 68 */ b lbl_80365B98
lbl_80365A34:
/* 80365A34 28 1F 00 00 */ cmplwi r31, 0
/* 80365A38 40 82 00 10 */ bne lbl_80365A48
/* 80365A3C 4B FF D5 D1 */ bl __flush_all
/* 80365A40 7C 7D 1B 78 */ mr r29, r3
/* 80365A44 48 00 00 F4 */ b lbl_80365B38
lbl_80365A48:
/* 80365A48 88 1F 00 0A */ lbz r0, 0xa(r31)
/* 80365A4C 28 00 00 00 */ cmplwi r0, 0
/* 80365A50 40 82 00 0C */ bne lbl_80365A5C
/* 80365A54 28 03 00 00 */ cmplwi r3, 0
/* 80365A58 40 82 00 0C */ bne lbl_80365A64
lbl_80365A5C:
/* 80365A5C 3B A0 FF FF */ li r29, -1
/* 80365A60 48 00 00 D8 */ b lbl_80365B38
lbl_80365A64:
/* 80365A64 88 1F 00 04 */ lbz r0, 4(r31)
/* 80365A68 54 00 EF 7E */ rlwinm r0, r0, 0x1d, 0x1d, 0x1f
/* 80365A6C 28 00 00 01 */ cmplwi r0, 1
/* 80365A70 40 82 00 0C */ bne lbl_80365A7C
/* 80365A74 3B A0 00 00 */ li r29, 0
/* 80365A78 48 00 00 C0 */ b lbl_80365B38
lbl_80365A7C:
/* 80365A7C 88 7F 00 08 */ lbz r3, 8(r31)
/* 80365A80 54 60 DF 7E */ rlwinm r0, r3, 0x1b, 0x1d, 0x1f
/* 80365A84 28 00 00 03 */ cmplwi r0, 3
/* 80365A88 41 80 00 10 */ blt lbl_80365A98
/* 80365A8C 38 00 00 02 */ li r0, 2
/* 80365A90 50 03 2E 34 */ rlwimi r3, r0, 5, 0x18, 0x1a
/* 80365A94 98 7F 00 08 */ stb r3, 8(r31)
lbl_80365A98:
/* 80365A98 88 1F 00 08 */ lbz r0, 8(r31)
/* 80365A9C 54 00 DF 7E */ rlwinm r0, r0, 0x1b, 0x1d, 0x1f
/* 80365AA0 28 00 00 02 */ cmplwi r0, 2
/* 80365AA4 40 82 00 0C */ bne lbl_80365AB0
/* 80365AA8 38 00 00 00 */ li r0, 0
/* 80365AAC 90 1F 00 28 */ stw r0, 0x28(r31)
lbl_80365AB0:
/* 80365AB0 88 7F 00 08 */ lbz r3, 8(r31)
/* 80365AB4 54 60 DF 7E */ rlwinm r0, r3, 0x1b, 0x1d, 0x1f
/* 80365AB8 28 00 00 01 */ cmplwi r0, 1
/* 80365ABC 41 82 00 14 */ beq lbl_80365AD0
/* 80365AC0 3B A0 00 00 */ li r29, 0
/* 80365AC4 53 A3 2E 34 */ rlwimi r3, r29, 5, 0x18, 0x1a
/* 80365AC8 98 7F 00 08 */ stb r3, 8(r31)
/* 80365ACC 48 00 00 6C */ b lbl_80365B38
lbl_80365AD0:
/* 80365AD0 A0 1F 00 04 */ lhz r0, 4(r31)
/* 80365AD4 54 00 D7 7E */ rlwinm r0, r0, 0x1a, 0x1d, 0x1f
/* 80365AD8 28 00 00 01 */ cmplwi r0, 1
/* 80365ADC 41 82 00 0C */ beq lbl_80365AE8
/* 80365AE0 3B C0 00 00 */ li r30, 0
/* 80365AE4 48 00 00 10 */ b lbl_80365AF4
lbl_80365AE8:
/* 80365AE8 7F E3 FB 78 */ mr r3, r31
/* 80365AEC 48 00 03 A5 */ bl ftell
/* 80365AF0 7C 7E 1B 78 */ mr r30, r3
lbl_80365AF4:
/* 80365AF4 7F E3 FB 78 */ mr r3, r31
/* 80365AF8 38 80 00 00 */ li r4, 0
/* 80365AFC 4B FF F5 E5 */ bl __flush_buffer
/* 80365B00 2C 03 00 00 */ cmpwi r3, 0
/* 80365B04 41 82 00 1C */ beq lbl_80365B20
/* 80365B08 38 60 00 01 */ li r3, 1
/* 80365B0C 38 00 00 00 */ li r0, 0
/* 80365B10 98 7F 00 0A */ stb r3, 0xa(r31)
/* 80365B14 3B A0 FF FF */ li r29, -1
/* 80365B18 90 1F 00 28 */ stw r0, 0x28(r31)
/* 80365B1C 48 00 00 1C */ b lbl_80365B38
lbl_80365B20:
/* 80365B20 3B A0 00 00 */ li r29, 0
/* 80365B24 88 1F 00 08 */ lbz r0, 8(r31)
/* 80365B28 53 A0 2E 34 */ rlwimi r0, r29, 5, 0x18, 0x1a
/* 80365B2C 98 1F 00 08 */ stb r0, 8(r31)
/* 80365B30 93 DF 00 18 */ stw r30, 0x18(r31)
/* 80365B34 93 BF 00 28 */ stw r29, 0x28(r31)
lbl_80365B38:
/* 80365B38 81 9F 00 44 */ lwz r12, 0x44(r31)
/* 80365B3C 80 7F 00 00 */ lwz r3, 0(r31)
/* 80365B40 7D 89 03 A6 */ mtctr r12
/* 80365B44 4E 80 04 21 */ bctrl
/* 80365B48 A0 1F 00 04 */ lhz r0, 4(r31)
/* 80365B4C 38 80 00 00 */ li r4, 0
/* 80365B50 50 80 35 F2 */ rlwimi r0, r4, 6, 0x17, 0x19
/* 80365B54 7C 7E 1B 78 */ mr r30, r3
/* 80365B58 B0 1F 00 04 */ sth r0, 4(r31)
/* 80365B5C 90 9F 00 00 */ stw r4, 0(r31)
/* 80365B60 88 1F 00 08 */ lbz r0, 8(r31)
/* 80365B64 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f
/* 80365B68 41 82 00 0C */ beq lbl_80365B74
/* 80365B6C 80 7F 00 1C */ lwz r3, 0x1c(r31)
/* 80365B70 4B FF CF E9 */ bl free
lbl_80365B74:
/* 80365B74 2C 1D 00 00 */ cmpwi r29, 0
/* 80365B78 38 60 00 00 */ li r3, 0
/* 80365B7C 40 82 00 0C */ bne lbl_80365B88
/* 80365B80 2C 1E 00 00 */ cmpwi r30, 0
/* 80365B84 41 82 00 08 */ beq lbl_80365B8C
lbl_80365B88:
/* 80365B88 38 60 00 01 */ li r3, 1
lbl_80365B8C:
/* 80365B8C 7C 03 00 D0 */ neg r0, r3
/* 80365B90 7C 00 1B 78 */ or r0, r0, r3
/* 80365B94 7C 03 FE 70 */ srawi r3, r0, 0x1f
lbl_80365B98:
/* 80365B98 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80365B9C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80365BA0 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80365BA4 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80365BA8 7C 08 03 A6 */ mtlr r0
/* 80365BAC 38 21 00 20 */ addi r1, r1, 0x20
/* 80365BB0 4E 80 00 20 */ blr
-90
View File
@@ -1,90 +0,0 @@
lbl_803658C0:
/* 803658C0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803658C4 7C 08 02 A6 */ mflr r0
/* 803658C8 90 01 00 14 */ stw r0, 0x14(r1)
/* 803658CC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 803658D0 7C 7F 1B 79 */ or. r31, r3, r3
/* 803658D4 93 C1 00 08 */ stw r30, 8(r1)
/* 803658D8 40 82 00 0C */ bne lbl_803658E4
/* 803658DC 4B FF D7 31 */ bl __flush_all
/* 803658E0 48 00 01 00 */ b lbl_803659E0
lbl_803658E4:
/* 803658E4 88 1F 00 0A */ lbz r0, 0xa(r31)
/* 803658E8 28 00 00 00 */ cmplwi r0, 0
/* 803658EC 40 82 00 10 */ bne lbl_803658FC
/* 803658F0 A0 1F 00 04 */ lhz r0, 4(r31)
/* 803658F4 54 00 D7 7F */ rlwinm. r0, r0, 0x1a, 0x1d, 0x1f
/* 803658F8 40 82 00 0C */ bne lbl_80365904
lbl_803658FC:
/* 803658FC 38 60 FF FF */ li r3, -1
/* 80365900 48 00 00 E0 */ b lbl_803659E0
lbl_80365904:
/* 80365904 88 1F 00 04 */ lbz r0, 4(r31)
/* 80365908 54 00 EF 7E */ rlwinm r0, r0, 0x1d, 0x1d, 0x1f
/* 8036590C 28 00 00 01 */ cmplwi r0, 1
/* 80365910 40 82 00 0C */ bne lbl_8036591C
/* 80365914 38 60 00 00 */ li r3, 0
/* 80365918 48 00 00 C8 */ b lbl_803659E0
lbl_8036591C:
/* 8036591C 88 7F 00 08 */ lbz r3, 8(r31)
/* 80365920 54 60 DF 7E */ rlwinm r0, r3, 0x1b, 0x1d, 0x1f
/* 80365924 28 00 00 03 */ cmplwi r0, 3
/* 80365928 41 80 00 10 */ blt lbl_80365938
/* 8036592C 38 00 00 02 */ li r0, 2
/* 80365930 50 03 2E 34 */ rlwimi r3, r0, 5, 0x18, 0x1a
/* 80365934 98 7F 00 08 */ stb r3, 8(r31)
lbl_80365938:
/* 80365938 88 1F 00 08 */ lbz r0, 8(r31)
/* 8036593C 54 00 DF 7E */ rlwinm r0, r0, 0x1b, 0x1d, 0x1f
/* 80365940 28 00 00 02 */ cmplwi r0, 2
/* 80365944 40 82 00 0C */ bne lbl_80365950
/* 80365948 38 00 00 00 */ li r0, 0
/* 8036594C 90 1F 00 28 */ stw r0, 0x28(r31)
lbl_80365950:
/* 80365950 88 9F 00 08 */ lbz r4, 8(r31)
/* 80365954 54 80 DF 7E */ rlwinm r0, r4, 0x1b, 0x1d, 0x1f
/* 80365958 28 00 00 01 */ cmplwi r0, 1
/* 8036595C 41 82 00 18 */ beq lbl_80365974
/* 80365960 38 00 00 00 */ li r0, 0
/* 80365964 38 60 00 00 */ li r3, 0
/* 80365968 50 04 2E 34 */ rlwimi r4, r0, 5, 0x18, 0x1a
/* 8036596C 98 9F 00 08 */ stb r4, 8(r31)
/* 80365970 48 00 00 70 */ b lbl_803659E0
lbl_80365974:
/* 80365974 A0 1F 00 04 */ lhz r0, 4(r31)
/* 80365978 54 00 D7 7E */ rlwinm r0, r0, 0x1a, 0x1d, 0x1f
/* 8036597C 28 00 00 01 */ cmplwi r0, 1
/* 80365980 41 82 00 0C */ beq lbl_8036598C
/* 80365984 3B C0 00 00 */ li r30, 0
/* 80365988 48 00 00 10 */ b lbl_80365998
lbl_8036598C:
/* 8036598C 7F E3 FB 78 */ mr r3, r31
/* 80365990 48 00 05 01 */ bl ftell
/* 80365994 7C 7E 1B 78 */ mr r30, r3
lbl_80365998:
/* 80365998 7F E3 FB 78 */ mr r3, r31
/* 8036599C 38 80 00 00 */ li r4, 0
/* 803659A0 4B FF F7 41 */ bl __flush_buffer
/* 803659A4 2C 03 00 00 */ cmpwi r3, 0
/* 803659A8 41 82 00 1C */ beq lbl_803659C4
/* 803659AC 38 60 00 01 */ li r3, 1
/* 803659B0 38 00 00 00 */ li r0, 0
/* 803659B4 98 7F 00 0A */ stb r3, 0xa(r31)
/* 803659B8 38 60 FF FF */ li r3, -1
/* 803659BC 90 1F 00 28 */ stw r0, 0x28(r31)
/* 803659C0 48 00 00 20 */ b lbl_803659E0
lbl_803659C4:
/* 803659C4 88 1F 00 08 */ lbz r0, 8(r31)
/* 803659C8 38 80 00 00 */ li r4, 0
/* 803659CC 50 80 2E 34 */ rlwimi r0, r4, 5, 0x18, 0x1a
/* 803659D0 38 60 00 00 */ li r3, 0
/* 803659D4 98 1F 00 08 */ stb r0, 8(r31)
/* 803659D8 93 DF 00 18 */ stw r30, 0x18(r31)
/* 803659DC 90 9F 00 28 */ stw r4, 0x28(r31)
lbl_803659E0:
/* 803659E0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 803659E4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 803659E8 83 C1 00 08 */ lwz r30, 8(r1)
/* 803659EC 7C 08 03 A6 */ mtlr r0
/* 803659F0 38 21 00 10 */ addi r1, r1, 0x10
/* 803659F4 4E 80 00 20 */ blr
@@ -1,55 +0,0 @@
lbl_80366410:
/* 80366410 7C 03 00 D0 */ neg r0, r3
/* 80366414 38 84 FF FF */ addi r4, r4, -1
/* 80366418 54 06 07 BF */ clrlwi. r6, r0, 0x1e
/* 8036641C 38 63 FF FF */ addi r3, r3, -1
/* 80366420 41 82 00 18 */ beq lbl_80366438
/* 80366424 7C A6 28 50 */ subf r5, r6, r5
lbl_80366428:
/* 80366428 8C 04 00 01 */ lbzu r0, 1(r4)
/* 8036642C 34 C6 FF FF */ addic. r6, r6, -1
/* 80366430 9C 03 00 01 */ stbu r0, 1(r3)
/* 80366434 40 82 FF F4 */ bne lbl_80366428
lbl_80366438:
/* 80366438 54 A6 D9 7F */ rlwinm. r6, r5, 0x1b, 5, 0x1f
/* 8036643C 38 E4 FF FD */ addi r7, r4, -3
/* 80366440 38 83 FF FD */ addi r4, r3, -3
/* 80366444 41 82 00 4C */ beq lbl_80366490
lbl_80366448:
/* 80366448 80 67 00 04 */ lwz r3, 4(r7)
/* 8036644C 34 C6 FF FF */ addic. r6, r6, -1
/* 80366450 80 07 00 08 */ lwz r0, 8(r7)
/* 80366454 90 64 00 04 */ stw r3, 4(r4)
/* 80366458 80 67 00 0C */ lwz r3, 0xc(r7)
/* 8036645C 90 04 00 08 */ stw r0, 8(r4)
/* 80366460 80 07 00 10 */ lwz r0, 0x10(r7)
/* 80366464 90 64 00 0C */ stw r3, 0xc(r4)
/* 80366468 80 67 00 14 */ lwz r3, 0x14(r7)
/* 8036646C 90 04 00 10 */ stw r0, 0x10(r4)
/* 80366470 80 07 00 18 */ lwz r0, 0x18(r7)
/* 80366474 90 64 00 14 */ stw r3, 0x14(r4)
/* 80366478 80 67 00 1C */ lwz r3, 0x1c(r7)
/* 8036647C 90 04 00 18 */ stw r0, 0x18(r4)
/* 80366480 84 07 00 20 */ lwzu r0, 0x20(r7)
/* 80366484 90 64 00 1C */ stw r3, 0x1c(r4)
/* 80366488 94 04 00 20 */ stwu r0, 0x20(r4)
/* 8036648C 40 82 FF BC */ bne lbl_80366448
lbl_80366490:
/* 80366490 54 A3 F7 7F */ rlwinm. r3, r5, 0x1e, 0x1d, 0x1f
/* 80366494 41 82 00 14 */ beq lbl_803664A8
lbl_80366498:
/* 80366498 84 07 00 04 */ lwzu r0, 4(r7)
/* 8036649C 34 63 FF FF */ addic. r3, r3, -1
/* 803664A0 94 04 00 04 */ stwu r0, 4(r4)
/* 803664A4 40 82 FF F4 */ bne lbl_80366498
lbl_803664A8:
/* 803664A8 54 A5 07 BF */ clrlwi. r5, r5, 0x1e
/* 803664AC 38 C7 00 03 */ addi r6, r7, 3
/* 803664B0 38 64 00 03 */ addi r3, r4, 3
/* 803664B4 4D 82 00 20 */ beqlr
lbl_803664B8:
/* 803664B8 8C 06 00 01 */ lbzu r0, 1(r6)
/* 803664BC 34 A5 FF FF */ addic. r5, r5, -1
/* 803664C0 9C 03 00 01 */ stbu r0, 1(r3)
/* 803664C4 40 82 FF F4 */ bne lbl_803664B8
/* 803664C8 4E 80 00 20 */ blr
@@ -1,50 +0,0 @@
lbl_80366368:
/* 80366368 7C E3 2A 14 */ add r7, r3, r5
/* 8036636C 7C C4 2A 14 */ add r6, r4, r5
/* 80366370 54 E3 07 BF */ clrlwi. r3, r7, 0x1e
/* 80366374 41 82 00 18 */ beq lbl_8036638C
/* 80366378 7C A3 28 50 */ subf r5, r3, r5
lbl_8036637C:
/* 8036637C 8C 06 FF FF */ lbzu r0, -1(r6)
/* 80366380 34 63 FF FF */ addic. r3, r3, -1
/* 80366384 9C 07 FF FF */ stbu r0, -1(r7)
/* 80366388 40 82 FF F4 */ bne lbl_8036637C
lbl_8036638C:
/* 8036638C 54 A4 D9 7F */ rlwinm. r4, r5, 0x1b, 5, 0x1f
/* 80366390 41 82 00 4C */ beq lbl_803663DC
lbl_80366394:
/* 80366394 80 66 FF FC */ lwz r3, -4(r6)
/* 80366398 34 84 FF FF */ addic. r4, r4, -1
/* 8036639C 80 06 FF F8 */ lwz r0, -8(r6)
/* 803663A0 90 67 FF FC */ stw r3, -4(r7)
/* 803663A4 80 66 FF F4 */ lwz r3, -0xc(r6)
/* 803663A8 90 07 FF F8 */ stw r0, -8(r7)
/* 803663AC 80 06 FF F0 */ lwz r0, -0x10(r6)
/* 803663B0 90 67 FF F4 */ stw r3, -0xc(r7)
/* 803663B4 80 66 FF EC */ lwz r3, -0x14(r6)
/* 803663B8 90 07 FF F0 */ stw r0, -0x10(r7)
/* 803663BC 80 06 FF E8 */ lwz r0, -0x18(r6)
/* 803663C0 90 67 FF EC */ stw r3, -0x14(r7)
/* 803663C4 80 66 FF E4 */ lwz r3, -0x1c(r6)
/* 803663C8 90 07 FF E8 */ stw r0, -0x18(r7)
/* 803663CC 84 06 FF E0 */ lwzu r0, -0x20(r6)
/* 803663D0 90 67 FF E4 */ stw r3, -0x1c(r7)
/* 803663D4 94 07 FF E0 */ stwu r0, -0x20(r7)
/* 803663D8 40 82 FF BC */ bne lbl_80366394
lbl_803663DC:
/* 803663DC 54 A3 F7 7F */ rlwinm. r3, r5, 0x1e, 0x1d, 0x1f
/* 803663E0 41 82 00 14 */ beq lbl_803663F4
lbl_803663E4:
/* 803663E4 84 06 FF FC */ lwzu r0, -4(r6)
/* 803663E8 34 63 FF FF */ addic. r3, r3, -1
/* 803663EC 94 07 FF FC */ stwu r0, -4(r7)
/* 803663F0 40 82 FF F4 */ bne lbl_803663E4
lbl_803663F4:
/* 803663F4 54 A5 07 BF */ clrlwi. r5, r5, 0x1e
/* 803663F8 4D 82 00 20 */ beqlr
lbl_803663FC:
/* 803663FC 8C 06 FF FF */ lbzu r0, -1(r6)
/* 80366400 34 A5 FF FF */ addic. r5, r5, -1
/* 80366404 9C 07 FF FF */ stbu r0, -1(r7)
/* 80366408 40 82 FF F4 */ bne lbl_803663FC
/* 8036640C 4E 80 00 20 */ blr
@@ -1,49 +0,0 @@
lbl_803661FC:
/* 803661FC 7D 63 2A 14 */ add r11, r3, r5
/* 80366200 7D 44 2A 14 */ add r10, r4, r5
/* 80366204 55 63 07 BF */ clrlwi. r3, r11, 0x1e
/* 80366208 41 82 00 18 */ beq lbl_80366220
/* 8036620C 7C A3 28 50 */ subf r5, r3, r5
lbl_80366210:
/* 80366210 8C 0A FF FF */ lbzu r0, -1(r10)
/* 80366214 34 63 FF FF */ addic. r3, r3, -1
/* 80366218 9C 0B FF FF */ stbu r0, -1(r11)
/* 8036621C 40 82 FF F4 */ bne lbl_80366210
lbl_80366220:
/* 80366220 55 48 1E F8 */ rlwinm r8, r10, 3, 0x1b, 0x1c
/* 80366224 55 47 07 BE */ clrlwi r7, r10, 0x1e
/* 80366228 21 28 00 20 */ subfic r9, r8, 0x20
/* 8036622C 54 A6 E8 FE */ srwi r6, r5, 3
/* 80366230 20 07 00 04 */ subfic r0, r7, 4
/* 80366234 7D 4A 02 14 */ add r10, r10, r0
/* 80366238 84 8A FF FC */ lwzu r4, -4(r10)
lbl_8036623C:
/* 8036623C 80 0A FF FC */ lwz r0, -4(r10)
/* 80366240 7C 83 4C 30 */ srw r3, r4, r9
/* 80366244 34 C6 FF FF */ addic. r6, r6, -1
/* 80366248 7C 04 40 30 */ slw r4, r0, r8
/* 8036624C 7C 00 4C 30 */ srw r0, r0, r9
/* 80366250 7C 83 1B 78 */ or r3, r4, r3
/* 80366254 90 6B FF FC */ stw r3, -4(r11)
/* 80366258 84 8A FF F8 */ lwzu r4, -8(r10)
/* 8036625C 7C 83 40 30 */ slw r3, r4, r8
/* 80366260 7C 60 03 78 */ or r0, r3, r0
/* 80366264 94 0B FF F8 */ stwu r0, -8(r11)
/* 80366268 40 82 FF D4 */ bne lbl_8036623C
/* 8036626C 54 A0 07 7B */ rlwinm. r0, r5, 0, 0x1d, 0x1d
/* 80366270 41 82 00 18 */ beq lbl_80366288
/* 80366274 84 6A FF FC */ lwzu r3, -4(r10)
/* 80366278 7C 80 4C 30 */ srw r0, r4, r9
/* 8036627C 7C 63 40 30 */ slw r3, r3, r8
/* 80366280 7C 60 03 78 */ or r0, r3, r0
/* 80366284 94 0B FF FC */ stwu r0, -4(r11)
lbl_80366288:
/* 80366288 54 A5 07 BF */ clrlwi. r5, r5, 0x1e
/* 8036628C 4D 82 00 20 */ beqlr
/* 80366290 7D 4A 3A 14 */ add r10, r10, r7
lbl_80366294:
/* 80366294 8C 0A FF FF */ lbzu r0, -1(r10)
/* 80366298 34 A5 FF FF */ addic. r5, r5, -1
/* 8036629C 9C 0B FF FF */ stbu r0, -1(r11)
/* 803662A0 40 82 FF F4 */ bne lbl_80366294
/* 803662A4 4E 80 00 20 */ blr
@@ -1,54 +0,0 @@
lbl_803662A8:
/* 803662A8 7C 03 00 D0 */ neg r0, r3
/* 803662AC 39 04 FF FF */ addi r8, r4, -1
/* 803662B0 54 06 07 BF */ clrlwi. r6, r0, 0x1e
/* 803662B4 38 63 FF FF */ addi r3, r3, -1
/* 803662B8 41 82 00 18 */ beq lbl_803662D0
/* 803662BC 7C A6 28 50 */ subf r5, r6, r5
lbl_803662C0:
/* 803662C0 8C 08 00 01 */ lbzu r0, 1(r8)
/* 803662C4 34 C6 FF FF */ addic. r6, r6, -1
/* 803662C8 9C 03 00 01 */ stbu r0, 1(r3)
/* 803662CC 40 82 FF F4 */ bne lbl_803662C0
lbl_803662D0:
/* 803662D0 38 08 00 01 */ addi r0, r8, 1
/* 803662D4 38 C3 FF FD */ addi r6, r3, -3
/* 803662D8 54 09 07 BE */ clrlwi r9, r0, 0x1e
/* 803662DC 54 A7 E8 FE */ srwi r7, r5, 3
/* 803662E0 7D 09 40 50 */ subf r8, r9, r8
/* 803662E4 54 0A 1E F8 */ rlwinm r10, r0, 3, 0x1b, 0x1c
/* 803662E8 84 88 00 01 */ lwzu r4, 1(r8)
/* 803662EC 21 6A 00 20 */ subfic r11, r10, 0x20
lbl_803662F0:
/* 803662F0 80 68 00 04 */ lwz r3, 4(r8)
/* 803662F4 7C 84 50 30 */ slw r4, r4, r10
/* 803662F8 34 E7 FF FF */ addic. r7, r7, -1
/* 803662FC 7C 60 5C 30 */ srw r0, r3, r11
/* 80366300 7C 63 50 30 */ slw r3, r3, r10
/* 80366304 7C 80 03 78 */ or r0, r4, r0
/* 80366308 90 06 00 04 */ stw r0, 4(r6)
/* 8036630C 84 88 00 08 */ lwzu r4, 8(r8)
/* 80366310 7C 80 5C 30 */ srw r0, r4, r11
/* 80366314 7C 60 03 78 */ or r0, r3, r0
/* 80366318 94 06 00 08 */ stwu r0, 8(r6)
/* 8036631C 40 82 FF D4 */ bne lbl_803662F0
/* 80366320 54 A0 07 7B */ rlwinm. r0, r5, 0, 0x1d, 0x1d
/* 80366324 41 82 00 18 */ beq lbl_8036633C
/* 80366328 84 08 00 04 */ lwzu r0, 4(r8)
/* 8036632C 7C 83 50 30 */ slw r3, r4, r10
/* 80366330 7C 00 5C 30 */ srw r0, r0, r11
/* 80366334 7C 60 03 78 */ or r0, r3, r0
/* 80366338 94 06 00 04 */ stwu r0, 4(r6)
lbl_8036633C:
/* 8036633C 54 A5 07 BF */ clrlwi. r5, r5, 0x1e
/* 80366340 38 88 00 03 */ addi r4, r8, 3
/* 80366344 38 66 00 03 */ addi r3, r6, 3
/* 80366348 4D 82 00 20 */ beqlr
/* 8036634C 20 09 00 04 */ subfic r0, r9, 4
/* 80366350 7C 80 20 50 */ subf r4, r0, r4
lbl_80366354:
/* 80366354 8C 04 00 01 */ lbzu r0, 1(r4)
/* 80366358 34 A5 FF FF */ addic. r5, r5, -1
/* 8036635C 9C 03 00 01 */ stbu r0, 1(r3)
/* 80366360 40 82 FF F4 */ bne lbl_80366354
/* 80366364 4E 80 00 20 */ blr
+13 -1
View File
@@ -1,6 +1,18 @@
#ifndef MSL_COMMON_SRC_FILE_POS_H
#define MSL_COMMON_SRC_FILE_POS_H
#include "dolphin/types.h"
#include "MSL_C/MSL_Common/Src/ansi_files.h"
#ifdef __cplusplus
extern "C" {
#endif
int fseek(FILE* file, long offset, int mode);
int _fseek(FILE* file, fpos_t offset, int mode);
long ftell(FILE* file);
#ifdef __cplusplus
}
#endif
#endif /* MSL_COMMON_SRC_FILE_POS_H */
+12 -1
View File
@@ -1,6 +1,17 @@
#ifndef MSL_COMMON_SRC_ABORT_EXIT_H
#define MSL_COMMON_SRC_ABORT_EXIT_H
#include "dolphin/types.h"
#ifdef __cplusplus
extern "C" {
#endif
void exit(int status);
void abort(void);
extern void (*__stdio_exit)(void);
#ifdef __cplusplus
};
#endif
#endif /* MSL_COMMON_SRC_ABORT_EXIT_H */
+12 -1
View File
@@ -1,6 +1,17 @@
#ifndef MSL_COMMON_SRC_ALLOC_H
#define MSL_COMMON_SRC_ALLOC_H
#include "dolphin/types.h"
#include "MSL_C/MSL_Common/Src/ansi_files.h"
#ifdef __cplusplus
extern "C" {
#endif
void free(FILE* file);
void __pool_free();
#ifdef __cplusplus
}
#endif
#endif /* MSL_COMMON_SRC_ALLOC_H */
+81 -19
View File
@@ -1,11 +1,33 @@
#ifndef MSL_COMMON_SRC_ANSI_FILES_H
#define MSL_COMMON_SRC_ANSI_FILES_H
#include "MSL_C/MSL_Common/Src/stddef.h"
#ifdef __cplusplus
extern "C" {
#endif
#define SEEK_SET 0
#define SEEK_CUR 1
#define SEEK_END 2
typedef unsigned long __file_handle;
typedef unsigned long fpos_t;
#ifndef __cplusplus
typedef unsigned short wchar_t;
#endif
#define set_error(file) \
do { \
(file)->file_state.error = 1; \
(file)->buffer_length = 0; \
} while (0)
enum __file_kinds {
/* 0x0 */ CLOSED_FILE,
/* 0x1 */ DISK_FILE,
/* 0x2 */ CONSOLE_FILE,
/* 0x3 */ UNAVAILABLE_FILE,
__closed_file,
__disk_file,
__console_file,
__unavailable_file,
};
enum __file_orientation {
@@ -23,6 +45,26 @@ typedef struct _file_modes {
unsigned int binary_io : 1;
} file_modes;
enum __io_modes {
__read = 1,
__write = 2,
__read_write = 3,
__append = 4,
};
enum __io_states {
__neutral,
__writing,
__reading,
__rereading,
};
enum __io_results {
__no_io_error,
__io_error,
__io_EOF,
};
typedef struct _file_states {
unsigned int io_state : 3;
unsigned int free_buffer : 1;
@@ -30,28 +72,34 @@ typedef struct _file_states {
unsigned char error;
} file_states;
typedef void (*__idle_proc)(void);
typedef int (*__pos_proc)(__file_handle file, fpos_t* position, int mode, __idle_proc idle_proc);
typedef int (*__io_proc)(__file_handle file, unsigned char* buff, size_t* count,
__idle_proc idle_proc);
typedef int (*__close_proc)(__file_handle file);
typedef struct _FILE {
/* 0x00 */ unsigned int handle;
/* 0x00 */ __file_handle handle;
/* 0x04 */ file_modes file_mode;
/* 0x08 */ file_states file_state;
/* 0x0C */ unsigned char flag;
/* 0x0C */ unsigned char is_dynamically_allocated;
/* 0x0D */ char char_buffer;
/* 0x0E */ char char_buffer_2;
/* 0x0E */ char char_buffer_overflow;
/* 0x0F */ char ungetc_buffer[2];
/* 0x12 */ unsigned short ungetc_wide_buffer[2];
/* 0x18 */ unsigned int position;
/* 0x12 */ wchar_t ungetc_wide_buffer[2];
/* 0x18 */ unsigned long position;
/* 0x1C */ unsigned char* buffer;
/* 0x20 */ unsigned int buffer_size;
/* 0x20 */ unsigned long buffer_size;
/* 0x24 */ unsigned char* buffer_ptr;
/* 0x28 */ unsigned int buffer_length;
/* 0x2C */ unsigned int buffer_alignment;
/* 0x30 */ unsigned int buffer_length2;
/* 0x34 */ unsigned int buffer_position;
/* 0x38 */ void* position_fn;
/* 0x3C */ void* read_fn;
/* 0x40 */ void* write_fn;
/* 0x44 */ void* close_fn;
/* 0x48 */ void* unknown;
/* 0x28 */ unsigned long buffer_length;
/* 0x2C */ unsigned long buffer_alignment;
/* 0x30 */ unsigned long save_buffer_length;
/* 0x34 */ unsigned long buffer_position;
/* 0x38 */ __pos_proc position_fn;
/* 0x3C */ __io_proc read_fn;
/* 0x40 */ __io_proc write_fn;
/* 0x44 */ __close_proc close_fn;
/* 0x48 */ __idle_proc idle_fn;
/* 0x4C */ struct _FILE* next_file;
} FILE;
@@ -62,6 +110,20 @@ typedef struct _files {
FILE empty;
} files;
#define _IONBF 0
#define _IOLBF 1
#define _IOFBF 2
extern files __files;
extern int __close_console(__file_handle file);
extern int __write_console(__file_handle file, unsigned char* buf, size_t* count, __idle_proc idle_fn);
extern int __read_console(__file_handle file, unsigned char* buf, size_t* count, __idle_proc idle_fn);
unsigned int __flush_all(void);
void __close_all(void);
#ifdef __cplusplus
};
#endif
#endif /* MSL_COMMON_SRC_ANSI_FILES_H */
+14 -1
View File
@@ -1,6 +1,19 @@
#ifndef MSL_COMMON_SRC_ARITH_H
#define MSL_COMMON_SRC_ARITH_H
#include "dolphin/types.h"
#ifdef __cplusplus
extern "C" {
#endif
typedef struct {
int quot; /* quotient */
int rem; /* remainder */
} div_t;
div_t div(int numerator, int denominator);
#ifdef __cplusplus
}
#endif
#endif /* MSL_COMMON_SRC_ARITH_H */
+6 -1
View File
@@ -1,6 +1,11 @@
#ifndef MSL_COMMON_SRC_BUFFER_IO_H
#define MSL_COMMON_SRC_BUFFER_IO_H
#include "dolphin/types.h"
#include "MSL_C/MSL_Common/Src/ansi_files.h"
enum { __align_buffer, __dont_align_buffer };
void __prep_buffer(FILE* file);
int __flush_buffer(FILE* file, size_t* bytes_flushed);
#endif /* MSL_COMMON_SRC_BUFFER_IO_H */
+2 -2
View File
@@ -2,13 +2,13 @@
#define MSL_COMMON_SRC_CHAR_IO_H
#include "MSL_C/MSL_Common/Src/ansi_files.h"
#include "dolphin/types.h"
#ifdef __cplusplus
extern "C" {
#endif
int fputs(const char*, FILE*);
int fputs(const char* str, FILE* stream);
int __put_char(int c, FILE* stream);
#ifdef __cplusplus
}
+23 -2
View File
@@ -1,12 +1,33 @@
#ifndef MSL_COMMON_SRC_CTYPE_H
#define MSL_COMMON_SRC_CTYPE_H
#include "dolphin/types.h"
#ifdef __cplusplus
extern "C" {
#endif
#define EOF -1L
extern unsigned char __ctype_map[];
extern unsigned char __lower_map[];
extern unsigned char __upper_map[];
#define __control_char 0x01
#define __motion_char 0x02
#define __space_char 0x04
#define __punctuation 0x08
#define __digit 0x10
#define __hex_digit 0x20
#define __lower_case 0x40
#define __upper_case 0x80
#define __letter (__lower_case | __upper_case)
#define __alphanumeric (__letter | __digit)
#define __graphic (__alphanumeric | __punctuation)
#define __printable (__graphic | __space_char)
#define __whitespace (__motion_char | __space_char)
#define __control (__motion_char | __control_char)
#define __zero_fill(c) ((int)(unsigned char)(c))
int tolower(int);
#ifdef __cplusplus

Some files were not shown because too many files have changed in this diff Show More