mirror of
https://github.com/zeldaret/tp
synced 2026-05-23 06:54:28 -04:00
some MSL_C work (#192)
* wip * bunch of MSL_C files thanks to pikmin2 decomp for their work * format / asm * progress * fix * fix remove-asm to work with C files * init / start
This commit is contained in:
@@ -84,6 +84,14 @@ LDFLAGS := -unused -map $(MAP) -fp hard -nodefaults -w off
|
||||
# Compiler flags
|
||||
CFLAGS += -Cpp_exceptions off -proc gekko -fp hard -O3 -nodefaults -str pool,readonly,reuse -RTTI off -maxerrors 5 -enum int $(INCLUDES)
|
||||
|
||||
# O4,p for init.c
|
||||
$(BUILD_DIR)/src/init.o: CFLAGS := -Cpp_exceptions off -proc gekko -fp hard -O4,p -nodefaults -str pool,readonly,reuse -RTTI off -maxerrors 5 -enum int $(INCLUDES)
|
||||
|
||||
# __start.c needs mwcc 1.2.5 and O4,p
|
||||
$(BUILD_DIR)/src/__start.o: CFLAGS := -Cpp_exceptions off -proc gekko -fp hard -O4,p -nodefaults -str pool,readonly,reuse -RTTI off -maxerrors 5 -enum int $(INCLUDES)
|
||||
$(BUILD_DIR)/src/__start.o: MWCC_VERSION := 1.2.5
|
||||
$(BUILD_DIR)/src/__start.o: CC := $(WINE) tools/mwcc_compiler/$(MWCC_VERSION)/mwcceppc.exe
|
||||
|
||||
# elf2dol needs to know these in order to calculate sbss correctly.
|
||||
SDATA_PDHR := 9
|
||||
SBSS_PDHR := 10
|
||||
@@ -169,6 +177,12 @@ rungame: game
|
||||
dolphin-emu $(BUILD_DIR)/game/sys/main.dol
|
||||
|
||||
#
|
||||
$(BUILD_DIR)/%.o: %.c
|
||||
@mkdir -p $(@D)
|
||||
@echo building... $<
|
||||
@$(ICONV) -f UTF-8 -t CP932 < $< > $(basename $@).c
|
||||
@$(CC) $(CFLAGS) -c -o $@ $(basename $@).c
|
||||
|
||||
$(BUILD_DIR)/%.o: %.cpp
|
||||
@mkdir -p $(@D)
|
||||
@echo building... $<
|
||||
|
||||
+5
-5
@@ -4,25 +4,25 @@
|
||||
|
||||
Section | Percentage | Decompiled (bytes) | Total (bytes)
|
||||
---|---|---|---
|
||||
.init | 86.402027% | 8184 | 9472
|
||||
.init | 91.849662% | 8700 | 9472
|
||||
.extab | 100.000000% | 96 | 96
|
||||
.extabindex | 100.000000% | 96 | 96
|
||||
.text | 12.024877% | 432480 | 3596544
|
||||
.text | 12.154891% | 437156 | 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 | 21.273061% | 855320 | 4020672
|
||||
Total | 21.402193% | 860512 | 4020672
|
||||
|
||||
## Total
|
||||
|
||||
Section | Percentage | Decompiled (bytes) | Total (bytes)
|
||||
---|---|---|---
|
||||
main.dol | 21.273061% | 855320 | 4020672
|
||||
main.dol | 21.402193% | 860512 | 4020672
|
||||
RELs | 33.172039% | 3814892 | 11500324
|
||||
Total | 30.089641% | 4670212 | 15520996
|
||||
Total | 30.123093% | 4675404 | 15520996
|
||||
|
||||
## RELs
|
||||
|
||||
|
||||
@@ -1,47 +0,0 @@
|
||||
lbl_8036307C:
|
||||
/* 8036307C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80363080 7C 08 02 A6 */ mflr r0
|
||||
/* 80363084 3C 80 80 3D */ lis r4, __files@ha /* 0x803D29B0@ha */
|
||||
/* 80363088 38 60 00 02 */ li r3, 2
|
||||
/* 8036308C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80363090 38 04 29 B0 */ addi r0, r4, __files@l /* 0x803D29B0@l */
|
||||
/* 80363094 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 80363098 7C 1F 03 78 */ mr r31, r0
|
||||
/* 8036309C 48 00 23 CD */ bl __begin_critical_region
|
||||
/* 803630A0 48 00 00 60 */ b lbl_80363100
|
||||
lbl_803630A4:
|
||||
/* 803630A4 A0 1F 00 04 */ lhz r0, 4(r31)
|
||||
/* 803630A8 54 00 D7 7F */ rlwinm. r0, r0, 0x1a, 0x1d, 0x1f
|
||||
/* 803630AC 41 82 00 0C */ beq lbl_803630B8
|
||||
/* 803630B0 7F E3 FB 78 */ mr r3, r31
|
||||
/* 803630B4 48 00 29 45 */ bl fclose
|
||||
lbl_803630B8:
|
||||
/* 803630B8 7F E3 FB 78 */ mr r3, r31
|
||||
/* 803630BC 83 FF 00 4C */ lwz r31, 0x4c(r31)
|
||||
/* 803630C0 88 03 00 0C */ lbz r0, 0xc(r3)
|
||||
/* 803630C4 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803630C8 41 82 00 0C */ beq lbl_803630D4
|
||||
/* 803630CC 4B FF FA 8D */ bl free
|
||||
/* 803630D0 48 00 00 30 */ b lbl_80363100
|
||||
lbl_803630D4:
|
||||
/* 803630D4 A0 03 00 04 */ lhz r0, 4(r3)
|
||||
/* 803630D8 38 80 00 03 */ li r4, 3
|
||||
/* 803630DC 50 80 35 F2 */ rlwimi r0, r4, 6, 0x17, 0x19
|
||||
/* 803630E0 28 1F 00 00 */ cmplwi r31, 0
|
||||
/* 803630E4 B0 03 00 04 */ sth r0, 4(r3)
|
||||
/* 803630E8 41 82 00 18 */ beq lbl_80363100
|
||||
/* 803630EC 88 1F 00 0C */ lbz r0, 0xc(r31)
|
||||
/* 803630F0 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803630F4 41 82 00 0C */ beq lbl_80363100
|
||||
/* 803630F8 38 00 00 00 */ li r0, 0
|
||||
/* 803630FC 90 03 00 4C */ stw r0, 0x4c(r3)
|
||||
lbl_80363100:
|
||||
/* 80363100 28 1F 00 00 */ cmplwi r31, 0
|
||||
/* 80363104 40 82 FF A0 */ bne lbl_803630A4
|
||||
/* 80363108 38 60 00 02 */ li r3, 2
|
||||
/* 8036310C 48 00 23 59 */ bl __end_critical_region
|
||||
/* 80363110 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80363114 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 80363118 7C 08 03 A6 */ mtlr r0
|
||||
/* 8036311C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80363120 4E 80 00 20 */ blr
|
||||
@@ -1,32 +0,0 @@
|
||||
lbl_8036300C:
|
||||
/* 8036300C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80363010 7C 08 02 A6 */ mflr r0
|
||||
/* 80363014 3C 60 80 3D */ lis r3, __files@ha /* 0x803D29B0@ha */
|
||||
/* 80363018 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8036301C 38 03 29 B0 */ addi r0, r3, __files@l /* 0x803D29B0@l */
|
||||
/* 80363020 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 80363024 3B E0 00 00 */ li r31, 0
|
||||
/* 80363028 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 8036302C 7C 1E 03 78 */ mr r30, r0
|
||||
/* 80363030 48 00 00 28 */ b lbl_80363058
|
||||
lbl_80363034:
|
||||
/* 80363034 A0 1E 00 04 */ lhz r0, 4(r30)
|
||||
/* 80363038 54 00 D7 7F */ rlwinm. r0, r0, 0x1a, 0x1d, 0x1f
|
||||
/* 8036303C 41 82 00 18 */ beq lbl_80363054
|
||||
/* 80363040 7F C3 F3 78 */ mr r3, r30
|
||||
/* 80363044 48 00 28 7D */ bl fflush
|
||||
/* 80363048 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 8036304C 41 82 00 08 */ beq lbl_80363054
|
||||
/* 80363050 3B E0 FF FF */ li r31, -1
|
||||
lbl_80363054:
|
||||
/* 80363054 83 DE 00 4C */ lwz r30, 0x4c(r30)
|
||||
lbl_80363058:
|
||||
/* 80363058 28 1E 00 00 */ cmplwi r30, 0
|
||||
/* 8036305C 40 82 FF D8 */ bne lbl_80363034
|
||||
/* 80363060 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80363064 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80363068 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 8036306C 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 80363070 7C 08 03 A6 */ mtlr r0
|
||||
/* 80363074 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80363078 4E 80 00 20 */ blr
|
||||
@@ -1,11 +0,0 @@
|
||||
lbl_80365470:
|
||||
/* 80365470 2C 03 FF FF */ cmpwi r3, -1
|
||||
/* 80365474 40 82 00 0C */ bne lbl_80365480
|
||||
/* 80365478 38 60 FF FF */ li r3, -1
|
||||
/* 8036547C 4E 80 00 20 */ blr
|
||||
lbl_80365480:
|
||||
/* 80365480 3C 80 80 3D */ lis r4, __lower_map@ha /* 0x803D2D18@ha */
|
||||
/* 80365484 54 60 06 3E */ clrlwi r0, r3, 0x18
|
||||
/* 80365488 38 64 2D 18 */ addi r3, r4, __lower_map@l /* 0x803D2D18@l */
|
||||
/* 8036548C 7C 63 00 AE */ lbzx r3, r3, r0
|
||||
/* 80365490 4E 80 00 20 */ blr
|
||||
@@ -1,14 +0,0 @@
|
||||
lbl_803660D8:
|
||||
/* 803660D8 54 84 06 3E */ clrlwi r4, r4, 0x18
|
||||
/* 803660DC 7C 63 2A 14 */ add r3, r3, r5
|
||||
/* 803660E0 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 803660E4 48 00 00 10 */ b lbl_803660F4
|
||||
lbl_803660E8:
|
||||
/* 803660E8 8C 03 FF FF */ lbzu r0, -1(r3)
|
||||
/* 803660EC 7C 00 20 40 */ cmplw r0, r4
|
||||
/* 803660F0 4D 82 00 20 */ beqlr
|
||||
lbl_803660F4:
|
||||
/* 803660F4 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 803660F8 40 82 FF F0 */ bne lbl_803660E8
|
||||
/* 803660FC 38 60 00 00 */ li r3, 0
|
||||
/* 80366100 4E 80 00 20 */ blr
|
||||
@@ -1,14 +0,0 @@
|
||||
lbl_80366104:
|
||||
/* 80366104 54 84 06 3E */ clrlwi r4, r4, 0x18
|
||||
/* 80366108 38 63 FF FF */ addi r3, r3, -1
|
||||
/* 8036610C 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 80366110 48 00 00 10 */ b lbl_80366120
|
||||
lbl_80366114:
|
||||
/* 80366114 8C 03 00 01 */ lbzu r0, 1(r3)
|
||||
/* 80366118 7C 00 20 40 */ cmplw r0, r4
|
||||
/* 8036611C 4D 82 00 20 */ beqlr
|
||||
lbl_80366120:
|
||||
/* 80366120 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 80366124 40 82 FF F0 */ bne lbl_80366114
|
||||
/* 80366128 38 60 00 00 */ li r3, 0
|
||||
/* 8036612C 4E 80 00 20 */ blr
|
||||
@@ -1,22 +0,0 @@
|
||||
lbl_8036608C:
|
||||
/* 8036608C 38 C3 FF FF */ addi r6, r3, -1
|
||||
/* 80366090 38 E4 FF FF */ addi r7, r4, -1
|
||||
/* 80366094 38 85 00 01 */ addi r4, r5, 1
|
||||
/* 80366098 48 00 00 30 */ b lbl_803660C8
|
||||
lbl_8036609C:
|
||||
/* 8036609C 8C 66 00 01 */ lbzu r3, 1(r6)
|
||||
/* 803660A0 8C 07 00 01 */ lbzu r0, 1(r7)
|
||||
/* 803660A4 7C 03 00 40 */ cmplw r3, r0
|
||||
/* 803660A8 41 82 00 20 */ beq lbl_803660C8
|
||||
/* 803660AC 88 86 00 00 */ lbz r4, 0(r6)
|
||||
/* 803660B0 38 60 00 01 */ li r3, 1
|
||||
/* 803660B4 88 07 00 00 */ lbz r0, 0(r7)
|
||||
/* 803660B8 7C 04 00 40 */ cmplw r4, r0
|
||||
/* 803660BC 4C 80 00 20 */ bgelr
|
||||
/* 803660C0 38 60 FF FF */ li r3, -1
|
||||
/* 803660C4 4E 80 00 20 */ blr
|
||||
lbl_803660C8:
|
||||
/* 803660C8 34 84 FF FF */ addic. r4, r4, -1
|
||||
/* 803660CC 40 82 FF D0 */ bne lbl_8036609C
|
||||
/* 803660D0 38 60 00 00 */ li r3, 0
|
||||
/* 803660D4 4E 80 00 20 */ blr
|
||||
@@ -1,64 +0,0 @@
|
||||
lbl_80366130:
|
||||
/* 80366130 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80366134 7C 08 02 A6 */ mflr r0
|
||||
/* 80366138 28 05 00 20 */ cmplwi r5, 0x20
|
||||
/* 8036613C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80366140 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 80366144 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 80366148 7F E6 22 78 */ xor r6, r31, r4
|
||||
/* 8036614C 7C C0 00 34 */ cntlzw r0, r6
|
||||
/* 80366150 7F E0 00 30 */ slw r0, r31, r0
|
||||
/* 80366154 54 07 0F FE */ srwi r7, r0, 0x1f
|
||||
/* 80366158 41 80 00 40 */ blt lbl_80366198
|
||||
/* 8036615C 54 C0 07 BF */ clrlwi. r0, r6, 0x1e
|
||||
/* 80366160 41 82 00 1C */ beq lbl_8036617C
|
||||
/* 80366164 2C 07 00 00 */ cmpwi r7, 0
|
||||
/* 80366168 40 82 00 0C */ bne lbl_80366174
|
||||
/* 8036616C 48 00 01 3D */ bl __copy_longs_unaligned
|
||||
/* 80366170 48 00 00 20 */ b lbl_80366190
|
||||
lbl_80366174:
|
||||
/* 80366174 48 00 00 89 */ bl __copy_longs_rev_unaligned
|
||||
/* 80366178 48 00 00 18 */ b lbl_80366190
|
||||
lbl_8036617C:
|
||||
/* 8036617C 2C 07 00 00 */ cmpwi r7, 0
|
||||
/* 80366180 40 82 00 0C */ bne lbl_8036618C
|
||||
/* 80366184 48 00 02 8D */ bl __copy_longs_aligned
|
||||
/* 80366188 48 00 00 08 */ b lbl_80366190
|
||||
lbl_8036618C:
|
||||
/* 8036618C 48 00 01 DD */ bl __copy_longs_rev_aligned
|
||||
lbl_80366190:
|
||||
/* 80366190 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80366194 48 00 00 54 */ b lbl_803661E8
|
||||
lbl_80366198:
|
||||
/* 80366198 2C 07 00 00 */ cmpwi r7, 0
|
||||
/* 8036619C 40 82 00 28 */ bne lbl_803661C4
|
||||
/* 803661A0 38 64 FF FF */ addi r3, r4, -1
|
||||
/* 803661A4 38 9F FF FF */ addi r4, r31, -1
|
||||
/* 803661A8 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 803661AC 48 00 00 0C */ b lbl_803661B8
|
||||
lbl_803661B0:
|
||||
/* 803661B0 8C 03 00 01 */ lbzu r0, 1(r3)
|
||||
/* 803661B4 9C 04 00 01 */ stbu r0, 1(r4)
|
||||
lbl_803661B8:
|
||||
/* 803661B8 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 803661BC 40 82 FF F4 */ bne lbl_803661B0
|
||||
/* 803661C0 48 00 00 24 */ b lbl_803661E4
|
||||
lbl_803661C4:
|
||||
/* 803661C4 7C 64 2A 14 */ add r3, r4, r5
|
||||
/* 803661C8 7C 9F 2A 14 */ add r4, r31, r5
|
||||
/* 803661CC 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 803661D0 48 00 00 0C */ b lbl_803661DC
|
||||
lbl_803661D4:
|
||||
/* 803661D4 8C 03 FF FF */ lbzu r0, -1(r3)
|
||||
/* 803661D8 9C 04 FF FF */ stbu r0, -1(r4)
|
||||
lbl_803661DC:
|
||||
/* 803661DC 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 803661E0 40 82 FF F4 */ bne lbl_803661D4
|
||||
lbl_803661E4:
|
||||
/* 803661E4 7F E3 FB 78 */ mr r3, r31
|
||||
lbl_803661E8:
|
||||
/* 803661E8 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 803661EC 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 803661F0 7C 08 03 A6 */ mtlr r0
|
||||
/* 803661F4 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 803661F8 4E 80 00 20 */ blr
|
||||
@@ -1,5 +0,0 @@
|
||||
lbl_803664CC:
|
||||
/* 803664CC 3C 60 80 36 */ lis r3, __close_all@ha /* 0x8036307C@ha */
|
||||
/* 803664D0 38 03 30 7C */ addi r0, r3, __close_all@l /* 0x8036307C@l */
|
||||
/* 803664D4 90 0D 94 18 */ stw r0, __stdio_exit(r13)
|
||||
/* 803664D8 4E 80 00 20 */ blr
|
||||
@@ -1,14 +0,0 @@
|
||||
lbl_80368ABC:
|
||||
/* 80368ABC 38 84 FF FF */ addi r4, r4, -1
|
||||
/* 80368AC0 38 A3 FF FF */ addi r5, r3, -1
|
||||
lbl_80368AC4:
|
||||
/* 80368AC4 8C 05 00 01 */ lbzu r0, 1(r5)
|
||||
/* 80368AC8 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80368ACC 40 82 FF F8 */ bne lbl_80368AC4
|
||||
/* 80368AD0 38 A5 FF FF */ addi r5, r5, -1
|
||||
lbl_80368AD4:
|
||||
/* 80368AD4 8C 04 00 01 */ lbzu r0, 1(r4)
|
||||
/* 80368AD8 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80368ADC 9C 05 00 01 */ stbu r0, 1(r5)
|
||||
/* 80368AE0 40 82 FF F4 */ bne lbl_80368AD4
|
||||
/* 80368AE4 4E 80 00 20 */ blr
|
||||
@@ -1,15 +0,0 @@
|
||||
lbl_80368924:
|
||||
/* 80368924 38 63 FF FF */ addi r3, r3, -1
|
||||
/* 80368928 54 80 06 3E */ clrlwi r0, r4, 0x18
|
||||
/* 8036892C 48 00 00 0C */ b lbl_80368938
|
||||
lbl_80368930:
|
||||
/* 80368930 7C 04 00 40 */ cmplw r4, r0
|
||||
/* 80368934 4D 82 00 20 */ beqlr
|
||||
lbl_80368938:
|
||||
/* 80368938 8C 83 00 01 */ lbzu r4, 1(r3)
|
||||
/* 8036893C 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 80368940 40 82 FF F0 */ bne lbl_80368930
|
||||
/* 80368944 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80368948 4D 82 00 20 */ beqlr
|
||||
/* 8036894C 38 60 00 00 */ li r3, 0
|
||||
/* 80368950 4E 80 00 20 */ blr
|
||||
@@ -1,88 +0,0 @@
|
||||
lbl_80368994:
|
||||
/* 80368994 88 A3 00 00 */ lbz r5, 0(r3)
|
||||
/* 80368998 88 04 00 00 */ lbz r0, 0(r4)
|
||||
/* 8036899C 7C 00 28 51 */ subf. r0, r0, r5
|
||||
/* 803689A0 41 82 00 0C */ beq lbl_803689AC
|
||||
/* 803689A4 7C 03 03 78 */ mr r3, r0
|
||||
/* 803689A8 4E 80 00 20 */ blr
|
||||
lbl_803689AC:
|
||||
/* 803689AC 54 80 07 BE */ clrlwi r0, r4, 0x1e
|
||||
/* 803689B0 54 66 07 BE */ clrlwi r6, r3, 0x1e
|
||||
/* 803689B4 7C 00 30 40 */ cmplw r0, r6
|
||||
/* 803689B8 40 82 00 CC */ bne lbl_80368A84
|
||||
/* 803689BC 28 06 00 00 */ cmplwi r6, 0
|
||||
/* 803689C0 41 82 00 58 */ beq lbl_80368A18
|
||||
/* 803689C4 28 05 00 00 */ cmplwi r5, 0
|
||||
/* 803689C8 40 82 00 0C */ bne lbl_803689D4
|
||||
/* 803689CC 38 60 00 00 */ li r3, 0
|
||||
/* 803689D0 4E 80 00 20 */ blr
|
||||
lbl_803689D4:
|
||||
/* 803689D4 20 06 00 03 */ subfic r0, r6, 3
|
||||
/* 803689D8 7C 09 03 A6 */ mtctr r0
|
||||
/* 803689DC 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 803689E0 41 82 00 30 */ beq lbl_80368A10
|
||||
lbl_803689E4:
|
||||
/* 803689E4 8C A3 00 01 */ lbzu r5, 1(r3)
|
||||
/* 803689E8 8C 04 00 01 */ lbzu r0, 1(r4)
|
||||
/* 803689EC 7C 00 28 51 */ subf. r0, r0, r5
|
||||
/* 803689F0 41 82 00 0C */ beq lbl_803689FC
|
||||
/* 803689F4 7C 03 03 78 */ mr r3, r0
|
||||
/* 803689F8 4E 80 00 20 */ blr
|
||||
lbl_803689FC:
|
||||
/* 803689FC 28 05 00 00 */ cmplwi r5, 0
|
||||
/* 80368A00 40 82 00 0C */ bne lbl_80368A0C
|
||||
/* 80368A04 38 60 00 00 */ li r3, 0
|
||||
/* 80368A08 4E 80 00 20 */ blr
|
||||
lbl_80368A0C:
|
||||
/* 80368A0C 42 00 FF D8 */ bdnz lbl_803689E4
|
||||
lbl_80368A10:
|
||||
/* 80368A10 38 63 00 01 */ addi r3, r3, 1
|
||||
/* 80368A14 38 84 00 01 */ addi r4, r4, 1
|
||||
lbl_80368A18:
|
||||
/* 80368A18 80 E3 00 00 */ lwz r7, 0(r3)
|
||||
/* 80368A1C 3C A0 80 81 */ lis r5, 0x8081 /* 0x80808080@ha */
|
||||
/* 80368A20 38 C5 80 80 */ addi r6, r5, 0x8080 /* 0x80808080@l */
|
||||
/* 80368A24 81 04 00 00 */ lwz r8, 0(r4)
|
||||
/* 80368A28 3C A7 FE FF */ addis r5, r7, 0xfeff
|
||||
/* 80368A2C 38 05 FE FF */ addi r0, r5, -257
|
||||
/* 80368A30 7C 00 30 39 */ and. r0, r0, r6
|
||||
/* 80368A34 40 82 00 38 */ bne lbl_80368A6C
|
||||
/* 80368A38 48 00 00 1C */ b lbl_80368A54
|
||||
lbl_80368A3C:
|
||||
/* 80368A3C 84 E3 00 04 */ lwzu r7, 4(r3)
|
||||
/* 80368A40 85 04 00 04 */ lwzu r8, 4(r4)
|
||||
/* 80368A44 3C A7 FE FF */ addis r5, r7, 0xfeff
|
||||
/* 80368A48 38 05 FE FF */ addi r0, r5, -257
|
||||
/* 80368A4C 7C 00 30 39 */ and. r0, r0, r6
|
||||
/* 80368A50 40 82 00 1C */ bne lbl_80368A6C
|
||||
lbl_80368A54:
|
||||
/* 80368A54 7C 07 40 40 */ cmplw r7, r8
|
||||
/* 80368A58 41 82 FF E4 */ beq lbl_80368A3C
|
||||
/* 80368A5C 38 60 FF FF */ li r3, -1
|
||||
/* 80368A60 4C 81 00 20 */ blelr
|
||||
/* 80368A64 38 60 00 01 */ li r3, 1
|
||||
/* 80368A68 4E 80 00 20 */ blr
|
||||
lbl_80368A6C:
|
||||
/* 80368A6C 88 A3 00 00 */ lbz r5, 0(r3)
|
||||
/* 80368A70 88 04 00 00 */ lbz r0, 0(r4)
|
||||
/* 80368A74 7C 00 28 51 */ subf. r0, r0, r5
|
||||
/* 80368A78 41 82 00 0C */ beq lbl_80368A84
|
||||
/* 80368A7C 7C 03 03 78 */ mr r3, r0
|
||||
/* 80368A80 4E 80 00 20 */ blr
|
||||
lbl_80368A84:
|
||||
/* 80368A84 28 05 00 00 */ cmplwi r5, 0
|
||||
/* 80368A88 40 82 00 0C */ bne lbl_80368A94
|
||||
/* 80368A8C 38 60 00 00 */ li r3, 0
|
||||
/* 80368A90 4E 80 00 20 */ blr
|
||||
lbl_80368A94:
|
||||
/* 80368A94 8C A3 00 01 */ lbzu r5, 1(r3)
|
||||
/* 80368A98 8C 04 00 01 */ lbzu r0, 1(r4)
|
||||
/* 80368A9C 7C 00 28 51 */ subf. r0, r0, r5
|
||||
/* 80368AA0 41 82 00 0C */ beq lbl_80368AAC
|
||||
/* 80368AA4 7C 03 03 78 */ mr r3, r0
|
||||
/* 80368AA8 4E 80 00 20 */ blr
|
||||
lbl_80368AAC:
|
||||
/* 80368AAC 28 05 00 00 */ cmplwi r5, 0
|
||||
/* 80368AB0 40 82 FF E4 */ bne lbl_80368A94
|
||||
/* 80368AB4 38 60 00 00 */ li r3, 0
|
||||
/* 80368AB8 4E 80 00 20 */ blr
|
||||
@@ -1,53 +0,0 @@
|
||||
lbl_80368B2C:
|
||||
/* 80368B2C 54 60 07 BE */ clrlwi r0, r3, 0x1e
|
||||
/* 80368B30 54 85 07 BE */ clrlwi r5, r4, 0x1e
|
||||
/* 80368B34 7C 00 28 40 */ cmplw r0, r5
|
||||
/* 80368B38 7C 67 1B 78 */ mr r7, r3
|
||||
/* 80368B3C 40 82 00 84 */ bne lbl_80368BC0
|
||||
/* 80368B40 28 05 00 00 */ cmplwi r5, 0
|
||||
/* 80368B44 41 82 00 40 */ beq lbl_80368B84
|
||||
/* 80368B48 88 04 00 00 */ lbz r0, 0(r4)
|
||||
/* 80368B4C 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80368B50 98 07 00 00 */ stb r0, 0(r7)
|
||||
/* 80368B54 4D 82 00 20 */ beqlr
|
||||
/* 80368B58 20 05 00 03 */ subfic r0, r5, 3
|
||||
/* 80368B5C 7C 09 03 A6 */ mtctr r0
|
||||
/* 80368B60 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80368B64 41 82 00 18 */ beq lbl_80368B7C
|
||||
lbl_80368B68:
|
||||
/* 80368B68 8C 04 00 01 */ lbzu r0, 1(r4)
|
||||
/* 80368B6C 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80368B70 9C 07 00 01 */ stbu r0, 1(r7)
|
||||
/* 80368B74 4D 82 00 20 */ beqlr
|
||||
/* 80368B78 42 00 FF F0 */ bdnz lbl_80368B68
|
||||
lbl_80368B7C:
|
||||
/* 80368B7C 38 E7 00 01 */ addi r7, r7, 1
|
||||
/* 80368B80 38 84 00 01 */ addi r4, r4, 1
|
||||
lbl_80368B84:
|
||||
/* 80368B84 81 04 00 00 */ lwz r8, 0(r4)
|
||||
/* 80368B88 3C A0 80 81 */ lis r5, 0x8081 /* 0x80808080@ha */
|
||||
/* 80368B8C 38 C5 80 80 */ addi r6, r5, 0x8080 /* 0x80808080@l */
|
||||
/* 80368B90 3C A8 FE FF */ addis r5, r8, 0xfeff
|
||||
/* 80368B94 38 05 FE FF */ addi r0, r5, -257
|
||||
/* 80368B98 7C 00 30 39 */ and. r0, r0, r6
|
||||
/* 80368B9C 40 82 00 24 */ bne lbl_80368BC0
|
||||
/* 80368BA0 38 E7 FF FC */ addi r7, r7, -4
|
||||
lbl_80368BA4:
|
||||
/* 80368BA4 95 07 00 04 */ stwu r8, 4(r7)
|
||||
/* 80368BA8 85 04 00 04 */ lwzu r8, 4(r4)
|
||||
/* 80368BAC 3C A8 FE FF */ addis r5, r8, 0xfeff
|
||||
/* 80368BB0 38 05 FE FF */ addi r0, r5, -257
|
||||
/* 80368BB4 7C 00 30 39 */ and. r0, r0, r6
|
||||
/* 80368BB8 41 82 FF EC */ beq lbl_80368BA4
|
||||
/* 80368BBC 38 E7 00 04 */ addi r7, r7, 4
|
||||
lbl_80368BC0:
|
||||
/* 80368BC0 88 04 00 00 */ lbz r0, 0(r4)
|
||||
/* 80368BC4 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80368BC8 98 07 00 00 */ stb r0, 0(r7)
|
||||
/* 80368BCC 4D 82 00 20 */ beqlr
|
||||
lbl_80368BD0:
|
||||
/* 80368BD0 8C 04 00 01 */ lbzu r0, 1(r4)
|
||||
/* 80368BD4 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80368BD8 9C 07 00 01 */ stbu r0, 1(r7)
|
||||
/* 80368BDC 40 82 FF F4 */ bne lbl_80368BD0
|
||||
/* 80368BE0 4E 80 00 20 */ blr
|
||||
@@ -1,9 +0,0 @@
|
||||
lbl_80368BE4:
|
||||
/* 80368BE4 38 83 FF FF */ addi r4, r3, -1
|
||||
/* 80368BE8 38 60 FF FF */ li r3, -1
|
||||
lbl_80368BEC:
|
||||
/* 80368BEC 8C 04 00 01 */ lbzu r0, 1(r4)
|
||||
/* 80368BF0 38 63 00 01 */ addi r3, r3, 1
|
||||
/* 80368BF4 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80368BF8 40 82 FF F4 */ bne lbl_80368BEC
|
||||
/* 80368BFC 4E 80 00 20 */ blr
|
||||
@@ -1,21 +0,0 @@
|
||||
lbl_80368954:
|
||||
/* 80368954 38 63 FF FF */ addi r3, r3, -1
|
||||
/* 80368958 38 84 FF FF */ addi r4, r4, -1
|
||||
/* 8036895C 38 C5 00 01 */ addi r6, r5, 1
|
||||
/* 80368960 48 00 00 24 */ b lbl_80368984
|
||||
lbl_80368964:
|
||||
/* 80368964 8C 03 00 01 */ lbzu r0, 1(r3)
|
||||
/* 80368968 8C A4 00 01 */ lbzu r5, 1(r4)
|
||||
/* 8036896C 7C 00 28 40 */ cmplw r0, r5
|
||||
/* 80368970 41 82 00 0C */ beq lbl_8036897C
|
||||
/* 80368974 7C 65 00 50 */ subf r3, r5, r0
|
||||
/* 80368978 4E 80 00 20 */ blr
|
||||
lbl_8036897C:
|
||||
/* 8036897C 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80368980 41 82 00 0C */ beq lbl_8036898C
|
||||
lbl_80368984:
|
||||
/* 80368984 34 C6 FF FF */ addic. r6, r6, -1
|
||||
/* 80368988 40 82 FF DC */ bne lbl_80368964
|
||||
lbl_8036898C:
|
||||
/* 8036898C 38 60 00 00 */ li r3, 0
|
||||
/* 80368990 4E 80 00 20 */ blr
|
||||
@@ -1,22 +0,0 @@
|
||||
lbl_80368AE8:
|
||||
/* 80368AE8 38 84 FF FF */ addi r4, r4, -1
|
||||
/* 80368AEC 38 C3 FF FF */ addi r6, r3, -1
|
||||
/* 80368AF0 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 80368AF4 48 00 00 2C */ b lbl_80368B20
|
||||
lbl_80368AF8:
|
||||
/* 80368AF8 8C 04 00 01 */ lbzu r0, 1(r4)
|
||||
/* 80368AFC 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80368B00 9C 06 00 01 */ stbu r0, 1(r6)
|
||||
/* 80368B04 40 82 00 1C */ bne lbl_80368B20
|
||||
/* 80368B08 38 00 00 00 */ li r0, 0
|
||||
/* 80368B0C 48 00 00 08 */ b lbl_80368B14
|
||||
lbl_80368B10:
|
||||
/* 80368B10 9C 06 00 01 */ stbu r0, 1(r6)
|
||||
lbl_80368B14:
|
||||
/* 80368B14 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 80368B18 40 82 FF F8 */ bne lbl_80368B10
|
||||
/* 80368B1C 4E 80 00 20 */ blr
|
||||
lbl_80368B20:
|
||||
/* 80368B20 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 80368B24 40 82 FF D4 */ bne lbl_80368AF8
|
||||
/* 80368B28 4E 80 00 20 */ blr
|
||||
@@ -1,22 +0,0 @@
|
||||
lbl_803688DC:
|
||||
/* 803688DC 38 A3 FF FF */ addi r5, r3, -1
|
||||
/* 803688E0 54 80 06 3E */ clrlwi r0, r4, 0x18
|
||||
/* 803688E4 38 60 00 00 */ li r3, 0
|
||||
/* 803688E8 48 00 00 10 */ b lbl_803688F8
|
||||
lbl_803688EC:
|
||||
/* 803688EC 7C 04 00 40 */ cmplw r4, r0
|
||||
/* 803688F0 40 82 00 08 */ bne lbl_803688F8
|
||||
/* 803688F4 7C A3 2B 78 */ mr r3, r5
|
||||
lbl_803688F8:
|
||||
/* 803688F8 8C 85 00 01 */ lbzu r4, 1(r5)
|
||||
/* 803688FC 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 80368900 40 82 FF EC */ bne lbl_803688EC
|
||||
/* 80368904 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 80368908 4C 82 00 20 */ bnelr
|
||||
/* 8036890C 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 80368910 41 82 00 0C */ beq lbl_8036891C
|
||||
/* 80368914 38 60 00 00 */ li r3, 0
|
||||
/* 80368918 4E 80 00 20 */ blr
|
||||
lbl_8036891C:
|
||||
/* 8036891C 7C A3 2B 78 */ mr r3, r5
|
||||
/* 80368920 4E 80 00 20 */ blr
|
||||
@@ -1,43 +0,0 @@
|
||||
lbl_80369114:
|
||||
/* 80369114 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 80369118 41 82 00 10 */ beq lbl_80369128
|
||||
/* 8036911C A0 03 00 04 */ lhz r0, 4(r3)
|
||||
/* 80369120 54 00 D7 7F */ rlwinm. r0, r0, 0x1a, 0x1d, 0x1f
|
||||
/* 80369124 40 82 00 0C */ bne lbl_80369130
|
||||
lbl_80369128:
|
||||
/* 80369128 38 60 00 00 */ li r3, 0
|
||||
/* 8036912C 4E 80 00 20 */ blr
|
||||
lbl_80369130:
|
||||
/* 80369130 88 A3 00 05 */ lbz r5, 5(r3)
|
||||
/* 80369134 54 A0 E7 BE */ rlwinm r0, r5, 0x1c, 0x1e, 0x1f
|
||||
/* 80369138 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 8036913C 41 82 00 58 */ beq lbl_80369194
|
||||
/* 80369140 40 80 00 10 */ bge lbl_80369150
|
||||
/* 80369144 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 80369148 40 80 00 14 */ bge lbl_8036915C
|
||||
/* 8036914C 4E 80 00 20 */ blr
|
||||
lbl_80369150:
|
||||
/* 80369150 2C 00 00 03 */ cmpwi r0, 3
|
||||
/* 80369154 4C 80 00 20 */ bgelr
|
||||
/* 80369158 48 00 00 34 */ b lbl_8036918C
|
||||
lbl_8036915C:
|
||||
/* 8036915C 2C 04 00 00 */ cmpwi r4, 0
|
||||
/* 80369160 40 81 00 14 */ ble lbl_80369174
|
||||
/* 80369164 38 00 00 02 */ li r0, 2
|
||||
/* 80369168 50 05 26 B6 */ rlwimi r5, r0, 4, 0x1a, 0x1b
|
||||
/* 8036916C 98 A3 00 05 */ stb r5, 5(r3)
|
||||
/* 80369170 48 00 00 14 */ b lbl_80369184
|
||||
lbl_80369174:
|
||||
/* 80369174 40 80 00 10 */ bge lbl_80369184
|
||||
/* 80369178 38 00 00 01 */ li r0, 1
|
||||
/* 8036917C 50 05 26 B6 */ rlwimi r5, r0, 4, 0x1a, 0x1b
|
||||
/* 80369180 98 A3 00 05 */ stb r5, 5(r3)
|
||||
lbl_80369184:
|
||||
/* 80369184 7C 83 23 78 */ mr r3, r4
|
||||
/* 80369188 4E 80 00 20 */ blr
|
||||
lbl_8036918C:
|
||||
/* 8036918C 38 60 00 01 */ li r3, 1
|
||||
/* 80369190 4E 80 00 20 */ blr
|
||||
lbl_80369194:
|
||||
/* 80369194 38 60 FF FF */ li r3, -1
|
||||
/* 80369198 4E 80 00 20 */ blr
|
||||
@@ -1,250 +0,0 @@
|
||||
lbl_80369B9C:
|
||||
/* 80369B9C 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 80369BA0 D8 41 00 10 */ stfd f2, 0x10(r1)
|
||||
/* 80369BA4 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 80369BA8 81 41 00 10 */ lwz r10, 0x10(r1)
|
||||
/* 80369BAC 80 C1 00 08 */ lwz r6, 8(r1)
|
||||
/* 80369BB0 80 A1 00 14 */ lwz r5, 0x14(r1)
|
||||
/* 80369BB4 55 48 00 7E */ clrlwi r8, r10, 1
|
||||
/* 80369BB8 54 C0 00 00 */ rlwinm r0, r6, 0, 0, 0
|
||||
/* 80369BBC 80 81 00 0C */ lwz r4, 0xc(r1)
|
||||
/* 80369BC0 7D 03 2B 79 */ or. r3, r8, r5
|
||||
/* 80369BC4 7C C7 02 78 */ xor r7, r6, r0
|
||||
/* 80369BC8 41 82 00 28 */ beq lbl_80369BF0
|
||||
/* 80369BCC 3C C0 7F F0 */ lis r6, 0x7ff0
|
||||
/* 80369BD0 7C 07 30 00 */ cmpw r7, r6
|
||||
/* 80369BD4 40 80 00 1C */ bge lbl_80369BF0
|
||||
/* 80369BD8 7C 65 00 D0 */ neg r3, r5
|
||||
/* 80369BDC 7C A3 1B 78 */ or r3, r5, r3
|
||||
/* 80369BE0 54 63 0F FE */ srwi r3, r3, 0x1f
|
||||
/* 80369BE4 7D 03 1B 78 */ or r3, r8, r3
|
||||
/* 80369BE8 7C 03 30 40 */ cmplw r3, r6
|
||||
/* 80369BEC 40 81 00 18 */ ble lbl_80369C04
|
||||
lbl_80369BF0:
|
||||
/* 80369BF0 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 80369BF4 C8 01 00 10 */ lfd f0, 0x10(r1)
|
||||
/* 80369BF8 FC 01 00 32 */ fmul f0, f1, f0
|
||||
/* 80369BFC FC 20 00 24 */ fdiv f1, f0, f0
|
||||
/* 80369C00 48 00 02 D0 */ b lbl_80369ED0
|
||||
lbl_80369C04:
|
||||
/* 80369C04 7C 07 40 00 */ cmpw r7, r8
|
||||
/* 80369C08 41 81 00 30 */ bgt lbl_80369C38
|
||||
/* 80369C0C 41 80 00 0C */ blt lbl_80369C18
|
||||
/* 80369C10 7C 04 28 40 */ cmplw r4, r5
|
||||
/* 80369C14 40 80 00 0C */ bge lbl_80369C20
|
||||
lbl_80369C18:
|
||||
/* 80369C18 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 80369C1C 48 00 02 B4 */ b lbl_80369ED0
|
||||
lbl_80369C20:
|
||||
/* 80369C20 40 82 00 18 */ bne lbl_80369C38
|
||||
/* 80369C24 3C 60 80 3A */ lis r3, Zero@ha /* 0x803A2370@ha */
|
||||
/* 80369C28 54 00 27 38 */ rlwinm r0, r0, 4, 0x1c, 0x1c
|
||||
/* 80369C2C 38 63 23 70 */ addi r3, r3, Zero@l /* 0x803A2370@l */
|
||||
/* 80369C30 7C 23 04 AE */ lfdx f1, r3, r0
|
||||
/* 80369C34 48 00 02 9C */ b lbl_80369ED0
|
||||
lbl_80369C38:
|
||||
/* 80369C38 3C 60 00 10 */ lis r3, 0x10
|
||||
/* 80369C3C 7C 07 18 00 */ cmpw r7, r3
|
||||
/* 80369C40 40 80 00 4C */ bge lbl_80369C8C
|
||||
/* 80369C44 2C 07 00 00 */ cmpwi r7, 0
|
||||
/* 80369C48 40 82 00 24 */ bne lbl_80369C6C
|
||||
/* 80369C4C 7C 83 23 78 */ mr r3, r4
|
||||
/* 80369C50 39 60 FB ED */ li r11, -1043
|
||||
/* 80369C54 48 00 00 0C */ b lbl_80369C60
|
||||
lbl_80369C58:
|
||||
/* 80369C58 54 63 08 3C */ slwi r3, r3, 1
|
||||
/* 80369C5C 39 6B FF FF */ addi r11, r11, -1
|
||||
lbl_80369C60:
|
||||
/* 80369C60 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80369C64 41 81 FF F4 */ bgt lbl_80369C58
|
||||
/* 80369C68 48 00 00 2C */ b lbl_80369C94
|
||||
lbl_80369C6C:
|
||||
/* 80369C6C 54 E3 58 28 */ slwi r3, r7, 0xb
|
||||
/* 80369C70 39 60 FC 02 */ li r11, -1022
|
||||
/* 80369C74 48 00 00 0C */ b lbl_80369C80
|
||||
lbl_80369C78:
|
||||
/* 80369C78 54 63 08 3C */ slwi r3, r3, 1
|
||||
/* 80369C7C 39 6B FF FF */ addi r11, r11, -1
|
||||
lbl_80369C80:
|
||||
/* 80369C80 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80369C84 41 81 FF F4 */ bgt lbl_80369C78
|
||||
/* 80369C88 48 00 00 0C */ b lbl_80369C94
|
||||
lbl_80369C8C:
|
||||
/* 80369C8C 7C E3 A6 70 */ srawi r3, r7, 0x14
|
||||
/* 80369C90 39 63 FC 01 */ addi r11, r3, -1023
|
||||
lbl_80369C94:
|
||||
/* 80369C94 3C 60 00 10 */ lis r3, 0x10
|
||||
/* 80369C98 7C 08 18 00 */ cmpw r8, r3
|
||||
/* 80369C9C 40 80 00 4C */ bge lbl_80369CE8
|
||||
/* 80369CA0 2C 08 00 00 */ cmpwi r8, 0
|
||||
/* 80369CA4 40 82 00 24 */ bne lbl_80369CC8
|
||||
/* 80369CA8 7C A6 2B 78 */ mr r6, r5
|
||||
/* 80369CAC 38 60 FB ED */ li r3, -1043
|
||||
/* 80369CB0 48 00 00 0C */ b lbl_80369CBC
|
||||
lbl_80369CB4:
|
||||
/* 80369CB4 54 C6 08 3C */ slwi r6, r6, 1
|
||||
/* 80369CB8 38 63 FF FF */ addi r3, r3, -1
|
||||
lbl_80369CBC:
|
||||
/* 80369CBC 2C 06 00 00 */ cmpwi r6, 0
|
||||
/* 80369CC0 41 81 FF F4 */ bgt lbl_80369CB4
|
||||
/* 80369CC4 48 00 00 2C */ b lbl_80369CF0
|
||||
lbl_80369CC8:
|
||||
/* 80369CC8 55 06 58 28 */ slwi r6, r8, 0xb
|
||||
/* 80369CCC 38 60 FC 02 */ li r3, -1022
|
||||
/* 80369CD0 48 00 00 0C */ b lbl_80369CDC
|
||||
lbl_80369CD4:
|
||||
/* 80369CD4 54 C6 08 3C */ slwi r6, r6, 1
|
||||
/* 80369CD8 38 63 FF FF */ addi r3, r3, -1
|
||||
lbl_80369CDC:
|
||||
/* 80369CDC 2C 06 00 00 */ cmpwi r6, 0
|
||||
/* 80369CE0 41 81 FF F4 */ bgt lbl_80369CD4
|
||||
/* 80369CE4 48 00 00 0C */ b lbl_80369CF0
|
||||
lbl_80369CE8:
|
||||
/* 80369CE8 7D 03 A6 70 */ srawi r3, r8, 0x14
|
||||
/* 80369CEC 38 63 FC 01 */ addi r3, r3, -1023
|
||||
lbl_80369CF0:
|
||||
/* 80369CF0 2C 0B FC 02 */ cmpwi r11, -1022
|
||||
/* 80369CF4 41 80 00 10 */ blt lbl_80369D04
|
||||
/* 80369CF8 54 E6 03 3E */ clrlwi r6, r7, 0xc
|
||||
/* 80369CFC 64 C9 00 10 */ oris r9, r6, 0x10
|
||||
/* 80369D00 48 00 00 34 */ b lbl_80369D34
|
||||
lbl_80369D04:
|
||||
/* 80369D04 21 2B FC 02 */ subfic r9, r11, -1022
|
||||
/* 80369D08 2C 09 00 1F */ cmpwi r9, 0x1f
|
||||
/* 80369D0C 41 81 00 1C */ bgt lbl_80369D28
|
||||
/* 80369D10 20 C9 00 20 */ subfic r6, r9, 0x20
|
||||
/* 80369D14 7C E7 48 30 */ slw r7, r7, r9
|
||||
/* 80369D18 7C 86 34 30 */ srw r6, r4, r6
|
||||
/* 80369D1C 7C 84 48 30 */ slw r4, r4, r9
|
||||
/* 80369D20 7C E9 33 78 */ or r9, r7, r6
|
||||
/* 80369D24 48 00 00 10 */ b lbl_80369D34
|
||||
lbl_80369D28:
|
||||
/* 80369D28 38 C9 FF E0 */ addi r6, r9, -32
|
||||
/* 80369D2C 7C 89 30 30 */ slw r9, r4, r6
|
||||
/* 80369D30 38 80 00 00 */ li r4, 0
|
||||
lbl_80369D34:
|
||||
/* 80369D34 2C 03 FC 02 */ cmpwi r3, -1022
|
||||
/* 80369D38 41 80 00 10 */ blt lbl_80369D48
|
||||
/* 80369D3C 55 46 03 3E */ clrlwi r6, r10, 0xc
|
||||
/* 80369D40 64 C7 00 10 */ oris r7, r6, 0x10
|
||||
/* 80369D44 48 00 00 34 */ b lbl_80369D78
|
||||
lbl_80369D48:
|
||||
/* 80369D48 21 43 FC 02 */ subfic r10, r3, -1022
|
||||
/* 80369D4C 2C 0A 00 1F */ cmpwi r10, 0x1f
|
||||
/* 80369D50 41 81 00 1C */ bgt lbl_80369D6C
|
||||
/* 80369D54 20 CA 00 20 */ subfic r6, r10, 0x20
|
||||
/* 80369D58 7D 07 50 30 */ slw r7, r8, r10
|
||||
/* 80369D5C 7C A6 34 30 */ srw r6, r5, r6
|
||||
/* 80369D60 7C A5 50 30 */ slw r5, r5, r10
|
||||
/* 80369D64 7C E7 33 78 */ or r7, r7, r6
|
||||
/* 80369D68 48 00 00 10 */ b lbl_80369D78
|
||||
lbl_80369D6C:
|
||||
/* 80369D6C 38 CA FF E0 */ addi r6, r10, -32
|
||||
/* 80369D70 7C A7 30 30 */ slw r7, r5, r6
|
||||
/* 80369D74 38 A0 00 00 */ li r5, 0
|
||||
lbl_80369D78:
|
||||
/* 80369D78 7C C3 58 51 */ subf. r6, r3, r11
|
||||
/* 80369D7C 7C C9 03 A6 */ mtctr r6
|
||||
/* 80369D80 41 82 00 64 */ beq lbl_80369DE4
|
||||
lbl_80369D84:
|
||||
/* 80369D84 7C 04 28 40 */ cmplw r4, r5
|
||||
/* 80369D88 7D 07 48 50 */ subf r8, r7, r9
|
||||
/* 80369D8C 7D 45 20 50 */ subf r10, r5, r4
|
||||
/* 80369D90 40 80 00 08 */ bge lbl_80369D98
|
||||
/* 80369D94 39 08 FF FF */ addi r8, r8, -1
|
||||
lbl_80369D98:
|
||||
/* 80369D98 2C 08 00 00 */ cmpwi r8, 0
|
||||
/* 80369D9C 40 80 00 18 */ bge lbl_80369DB4
|
||||
/* 80369DA0 54 86 0F FE */ srwi r6, r4, 0x1f
|
||||
/* 80369DA4 7C 84 22 14 */ add r4, r4, r4
|
||||
/* 80369DA8 7C C9 32 14 */ add r6, r9, r6
|
||||
/* 80369DAC 7D 29 32 14 */ add r9, r9, r6
|
||||
/* 80369DB0 48 00 00 30 */ b lbl_80369DE0
|
||||
lbl_80369DB4:
|
||||
/* 80369DB4 7D 04 53 79 */ or. r4, r8, r10
|
||||
/* 80369DB8 40 82 00 18 */ bne lbl_80369DD0
|
||||
/* 80369DBC 3C 60 80 3A */ lis r3, Zero@ha /* 0x803A2370@ha */
|
||||
/* 80369DC0 54 00 27 38 */ rlwinm r0, r0, 4, 0x1c, 0x1c
|
||||
/* 80369DC4 38 63 23 70 */ addi r3, r3, Zero@l /* 0x803A2370@l */
|
||||
/* 80369DC8 7C 23 04 AE */ lfdx f1, r3, r0
|
||||
/* 80369DCC 48 00 01 04 */ b lbl_80369ED0
|
||||
lbl_80369DD0:
|
||||
/* 80369DD0 55 46 0F FE */ srwi r6, r10, 0x1f
|
||||
/* 80369DD4 7C 8A 52 14 */ add r4, r10, r10
|
||||
/* 80369DD8 7D 28 32 14 */ add r9, r8, r6
|
||||
/* 80369DDC 7D 28 4A 14 */ add r9, r8, r9
|
||||
lbl_80369DE0:
|
||||
/* 80369DE0 42 00 FF A4 */ bdnz lbl_80369D84
|
||||
lbl_80369DE4:
|
||||
/* 80369DE4 7C 04 28 40 */ cmplw r4, r5
|
||||
/* 80369DE8 7C C7 48 50 */ subf r6, r7, r9
|
||||
/* 80369DEC 7C A5 20 50 */ subf r5, r5, r4
|
||||
/* 80369DF0 40 80 00 08 */ bge lbl_80369DF8
|
||||
/* 80369DF4 38 C6 FF FF */ addi r6, r6, -1
|
||||
lbl_80369DF8:
|
||||
/* 80369DF8 2C 06 00 00 */ cmpwi r6, 0
|
||||
/* 80369DFC 41 80 00 0C */ blt lbl_80369E08
|
||||
/* 80369E00 7C C9 33 78 */ mr r9, r6
|
||||
/* 80369E04 7C A4 2B 78 */ mr r4, r5
|
||||
lbl_80369E08:
|
||||
/* 80369E08 7D 25 23 79 */ or. r5, r9, r4
|
||||
/* 80369E0C 40 82 00 18 */ bne lbl_80369E24
|
||||
/* 80369E10 3C 60 80 3A */ lis r3, Zero@ha /* 0x803A2370@ha */
|
||||
/* 80369E14 54 00 27 38 */ rlwinm r0, r0, 4, 0x1c, 0x1c
|
||||
/* 80369E18 38 63 23 70 */ addi r3, r3, Zero@l /* 0x803A2370@l */
|
||||
/* 80369E1C 7C 23 04 AE */ lfdx f1, r3, r0
|
||||
/* 80369E20 48 00 00 B0 */ b lbl_80369ED0
|
||||
lbl_80369E24:
|
||||
/* 80369E24 3C A0 00 10 */ lis r5, 0x10
|
||||
/* 80369E28 48 00 00 18 */ b lbl_80369E40
|
||||
lbl_80369E2C:
|
||||
/* 80369E2C 54 86 0F FE */ srwi r6, r4, 0x1f
|
||||
/* 80369E30 7C 84 22 14 */ add r4, r4, r4
|
||||
/* 80369E34 7C C9 32 14 */ add r6, r9, r6
|
||||
/* 80369E38 38 63 FF FF */ addi r3, r3, -1
|
||||
/* 80369E3C 7D 29 32 14 */ add r9, r9, r6
|
||||
lbl_80369E40:
|
||||
/* 80369E40 7C 09 28 00 */ cmpw r9, r5
|
||||
/* 80369E44 41 80 FF E8 */ blt lbl_80369E2C
|
||||
/* 80369E48 2C 03 FC 02 */ cmpwi r3, -1022
|
||||
/* 80369E4C 41 80 00 24 */ blt lbl_80369E70
|
||||
/* 80369E50 38 63 03 FF */ addi r3, r3, 0x3ff
|
||||
/* 80369E54 3C A9 FF F0 */ addis r5, r9, 0xfff0
|
||||
/* 80369E58 54 63 A0 16 */ slwi r3, r3, 0x14
|
||||
/* 80369E5C 90 81 00 0C */ stw r4, 0xc(r1)
|
||||
/* 80369E60 7C A3 1B 78 */ or r3, r5, r3
|
||||
/* 80369E64 7C 60 03 78 */ or r0, r3, r0
|
||||
/* 80369E68 90 01 00 08 */ stw r0, 8(r1)
|
||||
/* 80369E6C 48 00 00 60 */ b lbl_80369ECC
|
||||
lbl_80369E70:
|
||||
/* 80369E70 20 C3 FC 02 */ subfic r6, r3, -1022
|
||||
/* 80369E74 2C 06 00 14 */ cmpwi r6, 0x14
|
||||
/* 80369E78 41 81 00 1C */ bgt lbl_80369E94
|
||||
/* 80369E7C 20 66 00 20 */ subfic r3, r6, 0x20
|
||||
/* 80369E80 7C 84 34 30 */ srw r4, r4, r6
|
||||
/* 80369E84 7D 23 18 30 */ slw r3, r9, r3
|
||||
/* 80369E88 7D 29 36 30 */ sraw r9, r9, r6
|
||||
/* 80369E8C 7C 83 1B 78 */ or r3, r4, r3
|
||||
/* 80369E90 48 00 00 30 */ b lbl_80369EC0
|
||||
lbl_80369E94:
|
||||
/* 80369E94 2C 06 00 1F */ cmpwi r6, 0x1f
|
||||
/* 80369E98 41 81 00 1C */ bgt lbl_80369EB4
|
||||
/* 80369E9C 20 A6 00 20 */ subfic r5, r6, 0x20
|
||||
/* 80369EA0 7C 83 34 30 */ srw r3, r4, r6
|
||||
/* 80369EA4 7D 24 28 30 */ slw r4, r9, r5
|
||||
/* 80369EA8 7C 09 03 78 */ mr r9, r0
|
||||
/* 80369EAC 7C 83 1B 78 */ or r3, r4, r3
|
||||
/* 80369EB0 48 00 00 10 */ b lbl_80369EC0
|
||||
lbl_80369EB4:
|
||||
/* 80369EB4 38 66 FF E0 */ addi r3, r6, -32
|
||||
/* 80369EB8 7D 23 1E 30 */ sraw r3, r9, r3
|
||||
/* 80369EBC 7C 09 03 78 */ mr r9, r0
|
||||
lbl_80369EC0:
|
||||
/* 80369EC0 7D 20 03 78 */ or r0, r9, r0
|
||||
/* 80369EC4 90 61 00 0C */ stw r3, 0xc(r1)
|
||||
/* 80369EC8 90 01 00 08 */ stw r0, 8(r1)
|
||||
lbl_80369ECC:
|
||||
/* 80369ECC C8 21 00 08 */ lfd f1, 8(r1)
|
||||
lbl_80369ED0:
|
||||
/* 80369ED0 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 80369ED4 4E 80 00 20 */ blr
|
||||
@@ -1,94 +0,0 @@
|
||||
lbl_8036BEBC:
|
||||
/* 8036BEBC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8036BEC0 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 8036BEC4 80 A1 00 08 */ lwz r5, 8(r1)
|
||||
/* 8036BEC8 80 C1 00 0C */ lwz r6, 0xc(r1)
|
||||
/* 8036BECC 54 A3 65 7E */ rlwinm r3, r5, 0xc, 0x15, 0x1f
|
||||
/* 8036BED0 38 E3 FC 01 */ addi r7, r3, -1023
|
||||
/* 8036BED4 2C 07 00 14 */ cmpwi r7, 0x14
|
||||
/* 8036BED8 40 80 00 94 */ bge lbl_8036BF6C
|
||||
/* 8036BEDC 2C 07 00 00 */ cmpwi r7, 0
|
||||
/* 8036BEE0 40 80 00 40 */ bge lbl_8036BF20
|
||||
/* 8036BEE4 C8 42 D0 E0 */ lfd f2, lit_124(r2)
|
||||
/* 8036BEE8 C8 02 D0 E8 */ lfd f0, lit_125(r2)
|
||||
/* 8036BEEC FC 22 08 2A */ fadd f1, f2, f1
|
||||
/* 8036BEF0 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 8036BEF4 40 81 00 F8 */ ble lbl_8036BFEC
|
||||
/* 8036BEF8 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 8036BEFC 40 80 00 10 */ bge lbl_8036BF0C
|
||||
/* 8036BF00 3C A0 80 00 */ lis r5, 0x8000
|
||||
/* 8036BF04 38 C0 00 00 */ li r6, 0
|
||||
/* 8036BF08 48 00 00 E4 */ b lbl_8036BFEC
|
||||
lbl_8036BF0C:
|
||||
/* 8036BF0C 7C A0 33 79 */ or. r0, r5, r6
|
||||
/* 8036BF10 41 82 00 DC */ beq lbl_8036BFEC
|
||||
/* 8036BF14 3C A0 3F F0 */ lis r5, 0x3ff0
|
||||
/* 8036BF18 38 C0 00 00 */ li r6, 0
|
||||
/* 8036BF1C 48 00 00 D0 */ b lbl_8036BFEC
|
||||
lbl_8036BF20:
|
||||
/* 8036BF20 3C 60 00 10 */ lis r3, 0x0010 /* 0x000FFFFF@ha */
|
||||
/* 8036BF24 38 03 FF FF */ addi r0, r3, 0xFFFF /* 0x000FFFFF@l */
|
||||
/* 8036BF28 7C 04 3E 30 */ sraw r4, r0, r7
|
||||
/* 8036BF2C 7C A0 20 38 */ and r0, r5, r4
|
||||
/* 8036BF30 7C C0 03 79 */ or. r0, r6, r0
|
||||
/* 8036BF34 40 82 00 08 */ bne lbl_8036BF3C
|
||||
/* 8036BF38 48 00 00 C0 */ b lbl_8036BFF8
|
||||
lbl_8036BF3C:
|
||||
/* 8036BF3C C8 42 D0 E0 */ lfd f2, lit_124(r2)
|
||||
/* 8036BF40 C8 02 D0 E8 */ lfd f0, lit_125(r2)
|
||||
/* 8036BF44 FC 22 08 2A */ fadd f1, f2, f1
|
||||
/* 8036BF48 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 8036BF4C 40 81 00 A0 */ ble lbl_8036BFEC
|
||||
/* 8036BF50 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 8036BF54 40 81 00 0C */ ble lbl_8036BF60
|
||||
/* 8036BF58 7C 60 3E 30 */ sraw r0, r3, r7
|
||||
/* 8036BF5C 7C A5 02 14 */ add r5, r5, r0
|
||||
lbl_8036BF60:
|
||||
/* 8036BF60 7C A5 20 78 */ andc r5, r5, r4
|
||||
/* 8036BF64 38 C0 00 00 */ li r6, 0
|
||||
/* 8036BF68 48 00 00 84 */ b lbl_8036BFEC
|
||||
lbl_8036BF6C:
|
||||
/* 8036BF6C 2C 07 00 33 */ cmpwi r7, 0x33
|
||||
/* 8036BF70 40 81 00 14 */ ble lbl_8036BF84
|
||||
/* 8036BF74 2C 07 04 00 */ cmpwi r7, 0x400
|
||||
/* 8036BF78 40 82 00 80 */ bne lbl_8036BFF8
|
||||
/* 8036BF7C FC 21 08 2A */ fadd f1, f1, f1
|
||||
/* 8036BF80 48 00 00 78 */ b lbl_8036BFF8
|
||||
lbl_8036BF84:
|
||||
/* 8036BF84 38 07 FF EC */ addi r0, r7, -20
|
||||
/* 8036BF88 38 60 FF FF */ li r3, -1
|
||||
/* 8036BF8C 7C 64 04 30 */ srw r4, r3, r0
|
||||
/* 8036BF90 7C C0 20 39 */ and. r0, r6, r4
|
||||
/* 8036BF94 40 82 00 08 */ bne lbl_8036BF9C
|
||||
/* 8036BF98 48 00 00 60 */ b lbl_8036BFF8
|
||||
lbl_8036BF9C:
|
||||
/* 8036BF9C C8 42 D0 E0 */ lfd f2, lit_124(r2)
|
||||
/* 8036BFA0 C8 02 D0 E8 */ lfd f0, lit_125(r2)
|
||||
/* 8036BFA4 FC 22 08 2A */ fadd f1, f2, f1
|
||||
/* 8036BFA8 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 8036BFAC 40 81 00 40 */ ble lbl_8036BFEC
|
||||
/* 8036BFB0 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 8036BFB4 40 81 00 34 */ ble lbl_8036BFE8
|
||||
/* 8036BFB8 2C 07 00 14 */ cmpwi r7, 0x14
|
||||
/* 8036BFBC 40 82 00 0C */ bne lbl_8036BFC8
|
||||
/* 8036BFC0 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 8036BFC4 48 00 00 24 */ b lbl_8036BFE8
|
||||
lbl_8036BFC8:
|
||||
/* 8036BFC8 20 07 00 34 */ subfic r0, r7, 0x34
|
||||
/* 8036BFCC 38 60 00 01 */ li r3, 1
|
||||
/* 8036BFD0 7C 60 00 30 */ slw r0, r3, r0
|
||||
/* 8036BFD4 7C 06 02 14 */ add r0, r6, r0
|
||||
/* 8036BFD8 7C 00 30 40 */ cmplw r0, r6
|
||||
/* 8036BFDC 40 80 00 08 */ bge lbl_8036BFE4
|
||||
/* 8036BFE0 38 A5 00 01 */ addi r5, r5, 1
|
||||
lbl_8036BFE4:
|
||||
/* 8036BFE4 7C 06 03 78 */ mr r6, r0
|
||||
lbl_8036BFE8:
|
||||
/* 8036BFE8 7C C6 20 78 */ andc r6, r6, r4
|
||||
lbl_8036BFEC:
|
||||
/* 8036BFEC 90 A1 00 08 */ stw r5, 8(r1)
|
||||
/* 8036BFF0 90 C1 00 0C */ stw r6, 0xc(r1)
|
||||
/* 8036BFF4 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
lbl_8036BFF8:
|
||||
/* 8036BFF8 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8036BFFC 4E 80 00 20 */ blr
|
||||
@@ -1,11 +0,0 @@
|
||||
lbl_8036C000:
|
||||
/* 8036C000 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 8036C004 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 8036C008 D8 41 00 10 */ stfd f2, 0x10(r1)
|
||||
/* 8036C00C 80 61 00 08 */ lwz r3, 8(r1)
|
||||
/* 8036C010 80 01 00 10 */ lwz r0, 0x10(r1)
|
||||
/* 8036C014 50 60 00 7E */ rlwimi r0, r3, 0, 1, 0x1f
|
||||
/* 8036C018 90 01 00 08 */ stw r0, 8(r1)
|
||||
/* 8036C01C C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 8036C020 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 8036C024 4E 80 00 20 */ blr
|
||||
@@ -1,62 +0,0 @@
|
||||
lbl_8036C028:
|
||||
/* 8036C028 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 8036C02C 7C 08 02 A6 */ mflr r0
|
||||
/* 8036C030 3C 60 3F E9 */ lis r3, 0x3FE9 /* 0x3FE921FB@ha */
|
||||
/* 8036C034 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 8036C038 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 8036C03C 38 03 21 FB */ addi r0, r3, 0x21FB /* 0x3FE921FB@l */
|
||||
/* 8036C040 80 61 00 08 */ lwz r3, 8(r1)
|
||||
/* 8036C044 54 63 00 7E */ clrlwi r3, r3, 1
|
||||
/* 8036C048 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 8036C04C 41 81 00 10 */ bgt lbl_8036C05C
|
||||
/* 8036C050 C8 42 D0 F0 */ lfd f2, lit_67(r2)
|
||||
/* 8036C054 4B FF EA 55 */ bl __kernel_cos
|
||||
/* 8036C058 48 00 00 94 */ b lbl_8036C0EC
|
||||
lbl_8036C05C:
|
||||
/* 8036C05C 3C 00 7F F0 */ lis r0, 0x7ff0
|
||||
/* 8036C060 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 8036C064 41 80 00 0C */ blt lbl_8036C070
|
||||
/* 8036C068 FC 21 08 28 */ fsub f1, f1, f1
|
||||
/* 8036C06C 48 00 00 80 */ b lbl_8036C0EC
|
||||
lbl_8036C070:
|
||||
/* 8036C070 38 61 00 10 */ addi r3, r1, 0x10
|
||||
/* 8036C074 4B FF E6 95 */ bl __ieee754_rem_pio2
|
||||
/* 8036C078 54 60 07 BE */ clrlwi r0, r3, 0x1e
|
||||
/* 8036C07C 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 8036C080 41 82 00 30 */ beq lbl_8036C0B0
|
||||
/* 8036C084 40 80 00 10 */ bge lbl_8036C094
|
||||
/* 8036C088 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 8036C08C 40 80 00 14 */ bge lbl_8036C0A0
|
||||
/* 8036C090 48 00 00 4C */ b lbl_8036C0DC
|
||||
lbl_8036C094:
|
||||
/* 8036C094 2C 00 00 03 */ cmpwi r0, 3
|
||||
/* 8036C098 40 80 00 44 */ bge lbl_8036C0DC
|
||||
/* 8036C09C 48 00 00 2C */ b lbl_8036C0C8
|
||||
lbl_8036C0A0:
|
||||
/* 8036C0A0 C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 8036C0A4 C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 8036C0A8 4B FF EA 01 */ bl __kernel_cos
|
||||
/* 8036C0AC 48 00 00 40 */ b lbl_8036C0EC
|
||||
lbl_8036C0B0:
|
||||
/* 8036C0B0 C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 8036C0B4 38 60 00 01 */ li r3, 1
|
||||
/* 8036C0B8 C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 8036C0BC 4B FF F9 35 */ bl __kernel_sin
|
||||
/* 8036C0C0 FC 20 08 50 */ fneg f1, f1
|
||||
/* 8036C0C4 48 00 00 28 */ b lbl_8036C0EC
|
||||
lbl_8036C0C8:
|
||||
/* 8036C0C8 C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 8036C0CC C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 8036C0D0 4B FF E9 D9 */ bl __kernel_cos
|
||||
/* 8036C0D4 FC 20 08 50 */ fneg f1, f1
|
||||
/* 8036C0D8 48 00 00 14 */ b lbl_8036C0EC
|
||||
lbl_8036C0DC:
|
||||
/* 8036C0DC C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 8036C0E0 38 60 00 01 */ li r3, 1
|
||||
/* 8036C0E4 C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 8036C0E8 4B FF F9 09 */ bl __kernel_sin
|
||||
lbl_8036C0EC:
|
||||
/* 8036C0EC 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 8036C0F0 7C 08 03 A6 */ mtlr r0
|
||||
/* 8036C0F4 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 8036C0F8 4E 80 00 20 */ blr
|
||||
@@ -1,95 +0,0 @@
|
||||
lbl_8036C0FC:
|
||||
/* 8036C0FC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8036C100 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 8036C104 80 A1 00 08 */ lwz r5, 8(r1)
|
||||
/* 8036C108 80 C1 00 0C */ lwz r6, 0xc(r1)
|
||||
/* 8036C10C 54 A3 65 7E */ rlwinm r3, r5, 0xc, 0x15, 0x1f
|
||||
/* 8036C110 38 E3 FC 01 */ addi r7, r3, -1023
|
||||
/* 8036C114 2C 07 00 14 */ cmpwi r7, 0x14
|
||||
/* 8036C118 40 80 00 98 */ bge lbl_8036C1B0
|
||||
/* 8036C11C 2C 07 00 00 */ cmpwi r7, 0
|
||||
/* 8036C120 40 80 00 44 */ bge lbl_8036C164
|
||||
/* 8036C124 C8 42 D0 F8 */ lfd f2, lit_124(r2)
|
||||
/* 8036C128 C8 02 D1 00 */ lfd f0, lit_125(r2)
|
||||
/* 8036C12C FC 22 08 2A */ fadd f1, f2, f1
|
||||
/* 8036C130 FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 8036C134 40 81 00 FC */ ble lbl_8036C230
|
||||
/* 8036C138 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 8036C13C 41 80 00 10 */ blt lbl_8036C14C
|
||||
/* 8036C140 38 C0 00 00 */ li r6, 0
|
||||
/* 8036C144 38 A0 00 00 */ li r5, 0
|
||||
/* 8036C148 48 00 00 E8 */ b lbl_8036C230
|
||||
lbl_8036C14C:
|
||||
/* 8036C14C 54 A0 00 7E */ clrlwi r0, r5, 1
|
||||
/* 8036C150 7C 00 33 79 */ or. r0, r0, r6
|
||||
/* 8036C154 41 82 00 DC */ beq lbl_8036C230
|
||||
/* 8036C158 3C A0 BF F0 */ lis r5, 0xbff0
|
||||
/* 8036C15C 38 C0 00 00 */ li r6, 0
|
||||
/* 8036C160 48 00 00 D0 */ b lbl_8036C230
|
||||
lbl_8036C164:
|
||||
/* 8036C164 3C 60 00 10 */ lis r3, 0x0010 /* 0x000FFFFF@ha */
|
||||
/* 8036C168 38 03 FF FF */ addi r0, r3, 0xFFFF /* 0x000FFFFF@l */
|
||||
/* 8036C16C 7C 04 3E 30 */ sraw r4, r0, r7
|
||||
/* 8036C170 7C A0 20 38 */ and r0, r5, r4
|
||||
/* 8036C174 7C C0 03 79 */ or. r0, r6, r0
|
||||
/* 8036C178 40 82 00 08 */ bne lbl_8036C180
|
||||
/* 8036C17C 48 00 00 C0 */ b lbl_8036C23C
|
||||
lbl_8036C180:
|
||||
/* 8036C180 C8 42 D0 F8 */ lfd f2, lit_124(r2)
|
||||
/* 8036C184 C8 02 D1 00 */ lfd f0, lit_125(r2)
|
||||
/* 8036C188 FC 22 08 2A */ fadd f1, f2, f1
|
||||
/* 8036C18C FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 8036C190 40 81 00 A0 */ ble lbl_8036C230
|
||||
/* 8036C194 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 8036C198 40 80 00 0C */ bge lbl_8036C1A4
|
||||
/* 8036C19C 7C 60 3E 30 */ sraw r0, r3, r7
|
||||
/* 8036C1A0 7C A5 02 14 */ add r5, r5, r0
|
||||
lbl_8036C1A4:
|
||||
/* 8036C1A4 7C A5 20 78 */ andc r5, r5, r4
|
||||
/* 8036C1A8 38 C0 00 00 */ li r6, 0
|
||||
/* 8036C1AC 48 00 00 84 */ b lbl_8036C230
|
||||
lbl_8036C1B0:
|
||||
/* 8036C1B0 2C 07 00 33 */ cmpwi r7, 0x33
|
||||
/* 8036C1B4 40 81 00 14 */ ble lbl_8036C1C8
|
||||
/* 8036C1B8 2C 07 04 00 */ cmpwi r7, 0x400
|
||||
/* 8036C1BC 40 82 00 80 */ bne lbl_8036C23C
|
||||
/* 8036C1C0 FC 21 08 2A */ fadd f1, f1, f1
|
||||
/* 8036C1C4 48 00 00 78 */ b lbl_8036C23C
|
||||
lbl_8036C1C8:
|
||||
/* 8036C1C8 38 07 FF EC */ addi r0, r7, -20
|
||||
/* 8036C1CC 38 60 FF FF */ li r3, -1
|
||||
/* 8036C1D0 7C 64 04 30 */ srw r4, r3, r0
|
||||
/* 8036C1D4 7C C0 20 39 */ and. r0, r6, r4
|
||||
/* 8036C1D8 40 82 00 08 */ bne lbl_8036C1E0
|
||||
/* 8036C1DC 48 00 00 60 */ b lbl_8036C23C
|
||||
lbl_8036C1E0:
|
||||
/* 8036C1E0 C8 42 D0 F8 */ lfd f2, lit_124(r2)
|
||||
/* 8036C1E4 C8 02 D1 00 */ lfd f0, lit_125(r2)
|
||||
/* 8036C1E8 FC 22 08 2A */ fadd f1, f2, f1
|
||||
/* 8036C1EC FC 01 00 40 */ fcmpo cr0, f1, f0
|
||||
/* 8036C1F0 40 81 00 40 */ ble lbl_8036C230
|
||||
/* 8036C1F4 2C 05 00 00 */ cmpwi r5, 0
|
||||
/* 8036C1F8 40 80 00 34 */ bge lbl_8036C22C
|
||||
/* 8036C1FC 2C 07 00 14 */ cmpwi r7, 0x14
|
||||
/* 8036C200 40 82 00 0C */ bne lbl_8036C20C
|
||||
/* 8036C204 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 8036C208 48 00 00 24 */ b lbl_8036C22C
|
||||
lbl_8036C20C:
|
||||
/* 8036C20C 20 07 00 34 */ subfic r0, r7, 0x34
|
||||
/* 8036C210 38 60 00 01 */ li r3, 1
|
||||
/* 8036C214 7C 60 00 30 */ slw r0, r3, r0
|
||||
/* 8036C218 7C 06 02 14 */ add r0, r6, r0
|
||||
/* 8036C21C 7C 00 30 40 */ cmplw r0, r6
|
||||
/* 8036C220 40 80 00 08 */ bge lbl_8036C228
|
||||
/* 8036C224 38 A5 00 01 */ addi r5, r5, 1
|
||||
lbl_8036C228:
|
||||
/* 8036C228 7C 06 03 78 */ mr r6, r0
|
||||
lbl_8036C22C:
|
||||
/* 8036C22C 7C C6 20 78 */ andc r6, r6, r4
|
||||
lbl_8036C230:
|
||||
/* 8036C230 90 A1 00 08 */ stw r5, 8(r1)
|
||||
/* 8036C234 90 C1 00 0C */ stw r6, 0xc(r1)
|
||||
/* 8036C238 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
lbl_8036C23C:
|
||||
/* 8036C23C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8036C240 4E 80 00 20 */ blr
|
||||
@@ -1,40 +0,0 @@
|
||||
lbl_8036C244:
|
||||
/* 8036C244 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8036C248 38 80 00 00 */ li r4, 0
|
||||
/* 8036C24C 3C 00 7F F0 */ lis r0, 0x7ff0
|
||||
/* 8036C250 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 8036C254 80 A1 00 08 */ lwz r5, 8(r1)
|
||||
/* 8036C258 90 83 00 00 */ stw r4, 0(r3)
|
||||
/* 8036C25C 54 A4 00 7E */ clrlwi r4, r5, 1
|
||||
/* 8036C260 80 C1 00 0C */ lwz r6, 0xc(r1)
|
||||
/* 8036C264 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 8036C268 40 80 00 0C */ bge lbl_8036C274
|
||||
/* 8036C26C 7C 80 33 79 */ or. r0, r4, r6
|
||||
/* 8036C270 40 82 00 0C */ bne lbl_8036C27C
|
||||
lbl_8036C274:
|
||||
/* 8036C274 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 8036C278 48 00 00 50 */ b lbl_8036C2C8
|
||||
lbl_8036C27C:
|
||||
/* 8036C27C 3C 00 00 10 */ lis r0, 0x10
|
||||
/* 8036C280 7C 04 00 00 */ cmpw r4, r0
|
||||
/* 8036C284 40 80 00 20 */ bge lbl_8036C2A4
|
||||
/* 8036C288 C8 02 D1 08 */ lfd f0, lit_57(r2)
|
||||
/* 8036C28C 38 00 FF CA */ li r0, -54
|
||||
/* 8036C290 90 03 00 00 */ stw r0, 0(r3)
|
||||
/* 8036C294 FC 01 00 32 */ fmul f0, f1, f0
|
||||
/* 8036C298 D8 01 00 08 */ stfd f0, 8(r1)
|
||||
/* 8036C29C 80 A1 00 08 */ lwz r5, 8(r1)
|
||||
/* 8036C2A0 54 A4 00 7E */ clrlwi r4, r5, 1
|
||||
lbl_8036C2A4:
|
||||
/* 8036C2A4 54 A0 03 00 */ rlwinm r0, r5, 0, 0xc, 0
|
||||
/* 8036C2A8 80 A3 00 00 */ lwz r5, 0(r3)
|
||||
/* 8036C2AC 7C 84 A6 70 */ srawi r4, r4, 0x14
|
||||
/* 8036C2B0 64 00 3F E0 */ oris r0, r0, 0x3fe0
|
||||
/* 8036C2B4 90 01 00 08 */ stw r0, 8(r1)
|
||||
/* 8036C2B8 7C 84 2A 14 */ add r4, r4, r5
|
||||
/* 8036C2BC 38 04 FC 02 */ addi r0, r4, -1022
|
||||
/* 8036C2C0 90 03 00 00 */ stw r0, 0(r3)
|
||||
/* 8036C2C4 C8 21 00 08 */ lfd f1, 8(r1)
|
||||
lbl_8036C2C8:
|
||||
/* 8036C2C8 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8036C2CC 4E 80 00 20 */ blr
|
||||
@@ -1,70 +0,0 @@
|
||||
lbl_8036C494:
|
||||
/* 8036C494 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8036C498 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 8036C49C 80 A1 00 08 */ lwz r5, 8(r1)
|
||||
/* 8036C4A0 80 C1 00 0C */ lwz r6, 0xc(r1)
|
||||
/* 8036C4A4 54 A4 65 7E */ rlwinm r4, r5, 0xc, 0x15, 0x1f
|
||||
/* 8036C4A8 38 E4 FC 01 */ addi r7, r4, -1023
|
||||
/* 8036C4AC 2C 07 00 14 */ cmpwi r7, 0x14
|
||||
/* 8036C4B0 40 80 00 70 */ bge lbl_8036C520
|
||||
/* 8036C4B4 2C 07 00 00 */ cmpwi r7, 0
|
||||
/* 8036C4B8 40 80 00 18 */ bge lbl_8036C4D0
|
||||
/* 8036C4BC 54 A4 00 00 */ rlwinm r4, r5, 0, 0, 0
|
||||
/* 8036C4C0 38 00 00 00 */ li r0, 0
|
||||
/* 8036C4C4 90 83 00 00 */ stw r4, 0(r3)
|
||||
/* 8036C4C8 90 03 00 04 */ stw r0, 4(r3)
|
||||
/* 8036C4CC 48 00 00 BC */ b lbl_8036C588
|
||||
lbl_8036C4D0:
|
||||
/* 8036C4D0 3C 80 00 10 */ lis r4, 0x0010 /* 0x000FFFFF@ha */
|
||||
/* 8036C4D4 38 04 FF FF */ addi r0, r4, 0xFFFF /* 0x000FFFFF@l */
|
||||
/* 8036C4D8 7C 04 3E 30 */ sraw r4, r0, r7
|
||||
/* 8036C4DC 7C A0 20 38 */ and r0, r5, r4
|
||||
/* 8036C4E0 7C C0 03 79 */ or. r0, r6, r0
|
||||
/* 8036C4E4 40 82 00 20 */ bne lbl_8036C504
|
||||
/* 8036C4E8 54 A4 00 00 */ rlwinm r4, r5, 0, 0, 0
|
||||
/* 8036C4EC 38 00 00 00 */ li r0, 0
|
||||
/* 8036C4F0 90 81 00 08 */ stw r4, 8(r1)
|
||||
/* 8036C4F4 90 01 00 0C */ stw r0, 0xc(r1)
|
||||
/* 8036C4F8 D8 23 00 00 */ stfd f1, 0(r3)
|
||||
/* 8036C4FC C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 8036C500 48 00 00 88 */ b lbl_8036C588
|
||||
lbl_8036C504:
|
||||
/* 8036C504 7C A4 20 78 */ andc r4, r5, r4
|
||||
/* 8036C508 38 00 00 00 */ li r0, 0
|
||||
/* 8036C50C 90 83 00 00 */ stw r4, 0(r3)
|
||||
/* 8036C510 90 03 00 04 */ stw r0, 4(r3)
|
||||
/* 8036C514 C8 03 00 00 */ lfd f0, 0(r3)
|
||||
/* 8036C518 FC 21 00 28 */ fsub f1, f1, f0
|
||||
/* 8036C51C 48 00 00 6C */ b lbl_8036C588
|
||||
lbl_8036C520:
|
||||
/* 8036C520 2C 07 00 33 */ cmpwi r7, 0x33
|
||||
/* 8036C524 40 81 00 20 */ ble lbl_8036C544
|
||||
/* 8036C528 54 A4 00 00 */ rlwinm r4, r5, 0, 0, 0
|
||||
/* 8036C52C 38 00 00 00 */ li r0, 0
|
||||
/* 8036C530 90 81 00 08 */ stw r4, 8(r1)
|
||||
/* 8036C534 90 01 00 0C */ stw r0, 0xc(r1)
|
||||
/* 8036C538 D8 23 00 00 */ stfd f1, 0(r3)
|
||||
/* 8036C53C C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 8036C540 48 00 00 48 */ b lbl_8036C588
|
||||
lbl_8036C544:
|
||||
/* 8036C544 38 07 FF EC */ addi r0, r7, -20
|
||||
/* 8036C548 38 80 FF FF */ li r4, -1
|
||||
/* 8036C54C 7C 84 04 30 */ srw r4, r4, r0
|
||||
/* 8036C550 7C C0 20 39 */ and. r0, r6, r4
|
||||
/* 8036C554 40 82 00 20 */ bne lbl_8036C574
|
||||
/* 8036C558 54 A4 00 00 */ rlwinm r4, r5, 0, 0, 0
|
||||
/* 8036C55C 38 00 00 00 */ li r0, 0
|
||||
/* 8036C560 90 81 00 08 */ stw r4, 8(r1)
|
||||
/* 8036C564 90 01 00 0C */ stw r0, 0xc(r1)
|
||||
/* 8036C568 D8 23 00 00 */ stfd f1, 0(r3)
|
||||
/* 8036C56C C8 21 00 08 */ lfd f1, 8(r1)
|
||||
/* 8036C570 48 00 00 18 */ b lbl_8036C588
|
||||
lbl_8036C574:
|
||||
/* 8036C574 90 A3 00 00 */ stw r5, 0(r3)
|
||||
/* 8036C578 7C C0 20 78 */ andc r0, r6, r4
|
||||
/* 8036C57C 90 03 00 04 */ stw r0, 4(r3)
|
||||
/* 8036C580 C8 03 00 00 */ lfd f0, 0(r3)
|
||||
/* 8036C584 FC 21 00 28 */ fsub f1, f1, f0
|
||||
lbl_8036C588:
|
||||
/* 8036C588 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8036C58C 4E 80 00 20 */ blr
|
||||
@@ -1,63 +0,0 @@
|
||||
lbl_8036C590:
|
||||
/* 8036C590 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 8036C594 7C 08 02 A6 */ mflr r0
|
||||
/* 8036C598 3C 60 3F E9 */ lis r3, 0x3FE9 /* 0x3FE921FB@ha */
|
||||
/* 8036C59C D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 8036C5A0 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 8036C5A4 38 03 21 FB */ addi r0, r3, 0x21FB /* 0x3FE921FB@l */
|
||||
/* 8036C5A8 80 61 00 08 */ lwz r3, 8(r1)
|
||||
/* 8036C5AC 54 63 00 7E */ clrlwi r3, r3, 1
|
||||
/* 8036C5B0 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 8036C5B4 41 81 00 14 */ bgt lbl_8036C5C8
|
||||
/* 8036C5B8 C8 42 D1 38 */ lfd f2, lit_67(r2)
|
||||
/* 8036C5BC 38 60 00 00 */ li r3, 0
|
||||
/* 8036C5C0 4B FF F4 31 */ bl __kernel_sin
|
||||
/* 8036C5C4 48 00 00 94 */ b lbl_8036C658
|
||||
lbl_8036C5C8:
|
||||
/* 8036C5C8 3C 00 7F F0 */ lis r0, 0x7ff0
|
||||
/* 8036C5CC 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 8036C5D0 41 80 00 0C */ blt lbl_8036C5DC
|
||||
/* 8036C5D4 FC 21 08 28 */ fsub f1, f1, f1
|
||||
/* 8036C5D8 48 00 00 80 */ b lbl_8036C658
|
||||
lbl_8036C5DC:
|
||||
/* 8036C5DC 38 61 00 10 */ addi r3, r1, 0x10
|
||||
/* 8036C5E0 4B FF E1 29 */ bl __ieee754_rem_pio2
|
||||
/* 8036C5E4 54 60 07 BE */ clrlwi r0, r3, 0x1e
|
||||
/* 8036C5E8 2C 00 00 01 */ cmpwi r0, 1
|
||||
/* 8036C5EC 41 82 00 34 */ beq lbl_8036C620
|
||||
/* 8036C5F0 40 80 00 10 */ bge lbl_8036C600
|
||||
/* 8036C5F4 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 8036C5F8 40 80 00 14 */ bge lbl_8036C60C
|
||||
/* 8036C5FC 48 00 00 4C */ b lbl_8036C648
|
||||
lbl_8036C600:
|
||||
/* 8036C600 2C 00 00 03 */ cmpwi r0, 3
|
||||
/* 8036C604 40 80 00 44 */ bge lbl_8036C648
|
||||
/* 8036C608 48 00 00 28 */ b lbl_8036C630
|
||||
lbl_8036C60C:
|
||||
/* 8036C60C C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 8036C610 38 60 00 01 */ li r3, 1
|
||||
/* 8036C614 C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 8036C618 4B FF F3 D9 */ bl __kernel_sin
|
||||
/* 8036C61C 48 00 00 3C */ b lbl_8036C658
|
||||
lbl_8036C620:
|
||||
/* 8036C620 C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 8036C624 C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 8036C628 4B FF E4 81 */ bl __kernel_cos
|
||||
/* 8036C62C 48 00 00 2C */ b lbl_8036C658
|
||||
lbl_8036C630:
|
||||
/* 8036C630 C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 8036C634 38 60 00 01 */ li r3, 1
|
||||
/* 8036C638 C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 8036C63C 4B FF F3 B5 */ bl __kernel_sin
|
||||
/* 8036C640 FC 20 08 50 */ fneg f1, f1
|
||||
/* 8036C644 48 00 00 14 */ b lbl_8036C658
|
||||
lbl_8036C648:
|
||||
/* 8036C648 C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 8036C64C C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 8036C650 4B FF E4 59 */ bl __kernel_cos
|
||||
/* 8036C654 FC 20 08 50 */ fneg f1, f1
|
||||
lbl_8036C658:
|
||||
/* 8036C658 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 8036C65C 7C 08 03 A6 */ mtlr r0
|
||||
/* 8036C660 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 8036C664 4E 80 00 20 */ blr
|
||||
@@ -1,34 +0,0 @@
|
||||
lbl_8036C668:
|
||||
/* 8036C668 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 8036C66C 7C 08 02 A6 */ mflr r0
|
||||
/* 8036C670 3C 60 3F E9 */ lis r3, 0x3FE9 /* 0x3FE921FB@ha */
|
||||
/* 8036C674 D8 21 00 08 */ stfd f1, 8(r1)
|
||||
/* 8036C678 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 8036C67C 38 03 21 FB */ addi r0, r3, 0x21FB /* 0x3FE921FB@l */
|
||||
/* 8036C680 80 61 00 08 */ lwz r3, 8(r1)
|
||||
/* 8036C684 54 63 00 7E */ clrlwi r3, r3, 1
|
||||
/* 8036C688 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 8036C68C 41 81 00 14 */ bgt lbl_8036C6A0
|
||||
/* 8036C690 C8 42 D1 40 */ lfd f2, lit_58(r2)
|
||||
/* 8036C694 38 60 00 01 */ li r3, 1
|
||||
/* 8036C698 4B FF F3 F9 */ bl __kernel_tan
|
||||
/* 8036C69C 48 00 00 34 */ b lbl_8036C6D0
|
||||
lbl_8036C6A0:
|
||||
/* 8036C6A0 3C 00 7F F0 */ lis r0, 0x7ff0
|
||||
/* 8036C6A4 7C 03 00 00 */ cmpw r3, r0
|
||||
/* 8036C6A8 41 80 00 0C */ blt lbl_8036C6B4
|
||||
/* 8036C6AC FC 21 08 28 */ fsub f1, f1, f1
|
||||
/* 8036C6B0 48 00 00 20 */ b lbl_8036C6D0
|
||||
lbl_8036C6B4:
|
||||
/* 8036C6B4 38 61 00 10 */ addi r3, r1, 0x10
|
||||
/* 8036C6B8 4B FF E0 51 */ bl __ieee754_rem_pio2
|
||||
/* 8036C6BC 54 60 0F BC */ rlwinm r0, r3, 1, 0x1e, 0x1e
|
||||
/* 8036C6C0 C8 21 00 10 */ lfd f1, 0x10(r1)
|
||||
/* 8036C6C4 C8 41 00 18 */ lfd f2, 0x18(r1)
|
||||
/* 8036C6C8 20 60 00 01 */ subfic r3, r0, 1
|
||||
/* 8036C6CC 4B FF F3 C5 */ bl __kernel_tan
|
||||
lbl_8036C6D0:
|
||||
/* 8036C6D0 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 8036C6D4 7C 08 03 A6 */ mtlr r0
|
||||
/* 8036C6D8 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 8036C6DC 4E 80 00 20 */ blr
|
||||
@@ -1,9 +0,0 @@
|
||||
lbl_8036C6E0:
|
||||
/* 8036C6E0 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8036C6E4 7C 08 02 A6 */ mflr r0
|
||||
/* 8036C6E8 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8036C6EC 4B FF CB 89 */ bl __ieee754_acos
|
||||
/* 8036C6F0 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8036C6F4 7C 08 03 A6 */ mtlr r0
|
||||
/* 8036C6F8 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8036C6FC 4E 80 00 20 */ blr
|
||||
@@ -1,9 +0,0 @@
|
||||
lbl_8036C700:
|
||||
/* 8036C700 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8036C704 7C 08 02 A6 */ mflr r0
|
||||
/* 8036C708 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8036C70C 4B FF CD A5 */ bl __ieee754_asin
|
||||
/* 8036C710 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8036C714 7C 08 03 A6 */ mtlr r0
|
||||
/* 8036C718 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8036C71C 4E 80 00 20 */ blr
|
||||
@@ -1,9 +0,0 @@
|
||||
lbl_8036C720:
|
||||
/* 8036C720 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8036C724 7C 08 02 A6 */ mflr r0
|
||||
/* 8036C728 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8036C72C 4B FF CF BD */ bl __ieee754_atan2
|
||||
/* 8036C730 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8036C734 7C 08 03 A6 */ mtlr r0
|
||||
/* 8036C738 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8036C73C 4E 80 00 20 */ blr
|
||||
@@ -1,9 +0,0 @@
|
||||
lbl_8036C740:
|
||||
/* 8036C740 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8036C744 7C 08 02 A6 */ mflr r0
|
||||
/* 8036C748 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8036C74C 4B FF D2 2D */ bl __ieee754_exp
|
||||
/* 8036C750 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8036C754 7C 08 03 A6 */ mtlr r0
|
||||
/* 8036C758 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8036C75C 4E 80 00 20 */ blr
|
||||
@@ -1,9 +0,0 @@
|
||||
lbl_8036C760:
|
||||
/* 8036C760 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8036C764 7C 08 02 A6 */ mflr r0
|
||||
/* 8036C768 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8036C76C 4B FF D4 31 */ bl __ieee754_fmod
|
||||
/* 8036C770 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8036C774 7C 08 03 A6 */ mtlr r0
|
||||
/* 8036C778 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8036C77C 4E 80 00 20 */ blr
|
||||
@@ -1,9 +0,0 @@
|
||||
lbl_8036C780:
|
||||
/* 8036C780 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8036C784 7C 08 02 A6 */ mflr r0
|
||||
/* 8036C788 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8036C78C 4B FF D7 4D */ bl __ieee754_pow
|
||||
/* 8036C790 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8036C794 7C 08 03 A6 */ mtlr r0
|
||||
/* 8036C798 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8036C79C 4E 80 00 20 */ blr
|
||||
@@ -1,9 +0,0 @@
|
||||
lbl_8036CA54:
|
||||
/* 8036CA54 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8036CA58 7C 08 02 A6 */ mflr r0
|
||||
/* 8036CA5C 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8036CA60 4B FF FD 41 */ bl __ieee754_sqrt
|
||||
/* 8036CA64 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8036CA68 7C 08 03 A6 */ mtlr r0
|
||||
/* 8036CA6C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8036CA70 4E 80 00 20 */ blr
|
||||
@@ -1,10 +0,0 @@
|
||||
lbl_8036CA30:
|
||||
/* 8036CA30 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8036CA34 7C 08 02 A6 */ mflr r0
|
||||
/* 8036CA38 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8036CA3C 4B FF FC A5 */ bl acos
|
||||
/* 8036CA40 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8036CA44 FC 20 08 18 */ frsp f1, f1
|
||||
/* 8036CA48 7C 08 03 A6 */ mtlr r0
|
||||
/* 8036CA4C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8036CA50 4E 80 00 20 */ blr
|
||||
@@ -1,10 +0,0 @@
|
||||
lbl_8036CA0C:
|
||||
/* 8036CA0C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8036CA10 7C 08 02 A6 */ mflr r0
|
||||
/* 8036CA14 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8036CA18 4B FF F6 11 */ bl cos
|
||||
/* 8036CA1C 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8036CA20 FC 20 08 18 */ frsp f1, f1
|
||||
/* 8036CA24 7C 08 03 A6 */ mtlr r0
|
||||
/* 8036CA28 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8036CA2C 4E 80 00 20 */ blr
|
||||
@@ -1,10 +0,0 @@
|
||||
lbl_8036C9E8:
|
||||
/* 8036C9E8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8036C9EC 7C 08 02 A6 */ mflr r0
|
||||
/* 8036C9F0 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8036C9F4 4B FF FB 9D */ bl sin
|
||||
/* 8036C9F8 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8036C9FC FC 20 08 18 */ frsp f1, f1
|
||||
/* 8036CA00 7C 08 03 A6 */ mtlr r0
|
||||
/* 8036CA04 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8036CA08 4E 80 00 20 */ blr
|
||||
@@ -1,10 +0,0 @@
|
||||
lbl_8036C9C4:
|
||||
/* 8036C9C4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8036C9C8 7C 08 02 A6 */ mflr r0
|
||||
/* 8036C9CC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8036C9D0 4B FF FC 99 */ bl tan
|
||||
/* 8036C9D4 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 8036C9D8 FC 20 08 18 */ frsp f1, f1
|
||||
/* 8036C9DC 7C 08 03 A6 */ mtlr r0
|
||||
/* 8036C9E0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 8036C9E4 4E 80 00 20 */ blr
|
||||
@@ -1,57 +0,0 @@
|
||||
lbl_803691A4:
|
||||
/* 803691A4 94 21 FF E0 */ stwu r1, -0x20(r1)
|
||||
/* 803691A8 7C 08 02 A6 */ mflr r0
|
||||
/* 803691AC 90 01 00 24 */ stw r0, 0x24(r1)
|
||||
/* 803691B0 93 E1 00 1C */ stw r31, 0x1c(r1)
|
||||
/* 803691B4 7C DF 33 78 */ mr r31, r6
|
||||
/* 803691B8 93 C1 00 18 */ stw r30, 0x18(r1)
|
||||
/* 803691BC 7C BE 2B 78 */ mr r30, r5
|
||||
/* 803691C0 93 A1 00 14 */ stw r29, 0x14(r1)
|
||||
/* 803691C4 7C 9D 23 78 */ mr r29, r4
|
||||
/* 803691C8 93 81 00 10 */ stw r28, 0x10(r1)
|
||||
/* 803691CC 7C 7C 1B 78 */ mr r28, r3
|
||||
/* 803691D0 4B FD 0D 2D */ bl OSGetConsoleType
|
||||
/* 803691D4 54 60 00 85 */ rlwinm. r0, r3, 0, 2, 2
|
||||
/* 803691D8 40 82 00 64 */ bne lbl_8036923C
|
||||
/* 803691DC 80 0D 94 30 */ lwz r0, initialized(r13)
|
||||
/* 803691E0 38 60 00 00 */ li r3, 0
|
||||
/* 803691E4 2C 00 00 00 */ cmpwi r0, 0
|
||||
/* 803691E8 40 82 00 20 */ bne lbl_80369208
|
||||
/* 803691EC 3C 60 00 01 */ lis r3, 0x0001 /* 0x0000E100@ha */
|
||||
/* 803691F0 38 63 E1 00 */ addi r3, r3, 0xE100 /* 0x0000E100@l */
|
||||
/* 803691F4 4B FD B7 3D */ bl InitializeUART
|
||||
/* 803691F8 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 803691FC 40 82 00 0C */ bne lbl_80369208
|
||||
/* 80369200 38 00 00 01 */ li r0, 1
|
||||
/* 80369204 90 0D 94 30 */ stw r0, initialized(r13)
|
||||
lbl_80369208:
|
||||
/* 80369208 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 8036920C 41 82 00 0C */ beq lbl_80369218
|
||||
/* 80369210 38 60 00 01 */ li r3, 1
|
||||
/* 80369214 48 00 00 40 */ b lbl_80369254
|
||||
lbl_80369218:
|
||||
/* 80369218 80 9E 00 00 */ lwz r4, 0(r30)
|
||||
/* 8036921C 7F A3 EB 78 */ mr r3, r29
|
||||
/* 80369220 4B FD B7 81 */ bl WriteUARTN
|
||||
/* 80369224 2C 03 00 00 */ cmpwi r3, 0
|
||||
/* 80369228 41 82 00 14 */ beq lbl_8036923C
|
||||
/* 8036922C 38 00 00 00 */ li r0, 0
|
||||
/* 80369230 38 60 00 01 */ li r3, 1
|
||||
/* 80369234 90 1E 00 00 */ stw r0, 0(r30)
|
||||
/* 80369238 48 00 00 1C */ b lbl_80369254
|
||||
lbl_8036923C:
|
||||
/* 8036923C 7F 83 E3 78 */ mr r3, r28
|
||||
/* 80369240 7F A4 EB 78 */ mr r4, r29
|
||||
/* 80369244 7F C5 F3 78 */ mr r5, r30
|
||||
/* 80369248 7F E6 FB 78 */ mr r6, r31
|
||||
/* 8036924C 48 00 8F 51 */ bl __TRK_write_console
|
||||
/* 80369250 38 60 00 00 */ li r3, 0
|
||||
lbl_80369254:
|
||||
/* 80369254 80 01 00 24 */ lwz r0, 0x24(r1)
|
||||
/* 80369258 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
||||
/* 8036925C 83 C1 00 18 */ lwz r30, 0x18(r1)
|
||||
/* 80369260 83 A1 00 14 */ lwz r29, 0x14(r1)
|
||||
/* 80369264 83 81 00 10 */ lwz r28, 0x10(r1)
|
||||
/* 80369268 7C 08 03 A6 */ mtlr r0
|
||||
/* 8036926C 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 80369270 4E 80 00 20 */ blr
|
||||
@@ -1,12 +0,0 @@
|
||||
lbl_800035C0:
|
||||
/* 800035C0 38 84 FF FF */ addi r4, r4, -1
|
||||
/* 800035C4 38 C3 FF FF */ addi r6, r3, -1
|
||||
/* 800035C8 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 800035CC 48 00 00 0C */ b lbl_800035D8
|
||||
lbl_800035D0:
|
||||
/* 800035D0 8C 04 00 01 */ lbzu r0, 1(r4)
|
||||
/* 800035D4 9C 06 00 01 */ stbu r0, 1(r6)
|
||||
lbl_800035D8:
|
||||
/* 800035D8 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 800035DC 40 82 FF F4 */ bne lbl_800035D0
|
||||
/* 800035E0 4E 80 00 20 */ blr
|
||||
@@ -1,13 +0,0 @@
|
||||
lbl_80003590:
|
||||
/* 80003590 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 80003594 7C 08 02 A6 */ mflr r0
|
||||
/* 80003598 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8000359C 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 800035A0 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 800035A4 48 36 BF DD */ bl TRK_fill_mem
|
||||
/* 800035A8 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 800035AC 7F E3 FB 78 */ mr r3, r31
|
||||
/* 800035B0 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 800035B4 7C 08 03 A6 */ mtlr r0
|
||||
/* 800035B8 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 800035BC 4E 80 00 20 */ blr
|
||||
@@ -1,12 +0,0 @@
|
||||
lbl_80005518:
|
||||
/* 80005518 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8000551C 7C 08 02 A6 */ mflr r0
|
||||
/* 80005520 38 60 00 00 */ li r3, 0
|
||||
/* 80005524 38 80 00 00 */ li r4, 0
|
||||
/* 80005528 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 8000552C 38 A0 00 00 */ li r5, 0
|
||||
/* 80005530 48 33 A3 7D */ bl OSResetSystem
|
||||
/* 80005534 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80005538 7C 08 03 A6 */ mtlr r0
|
||||
/* 8000553C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80005540 4E 80 00 20 */ blr
|
||||
@@ -1,18 +0,0 @@
|
||||
lbl_80003100:
|
||||
/* 80003100 7C 08 02 A6 */ mflr r0
|
||||
/* 80003104 3C 60 80 00 */ lis r3, 0x8000 /* 0x800030E4@ha */
|
||||
/* 80003108 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 8000310C 94 21 FF F8 */ stwu r1, -8(r1)
|
||||
/* 80003110 A0 03 30 E4 */ lhz r0, 0x30E4(r3) /* 0x800030E4@l */
|
||||
/* 80003114 70 00 0E EF */ andi. r0, r0, 0xeef
|
||||
/* 80003118 2C 00 0E EF */ cmpwi r0, 0xeef
|
||||
/* 8000311C 40 82 00 14 */ bne lbl_80003130
|
||||
/* 80003120 38 60 00 00 */ li r3, 0
|
||||
/* 80003124 38 80 00 00 */ li r4, 0
|
||||
/* 80003128 38 A0 00 00 */ li r5, 0
|
||||
/* 8000312C 48 33 C7 81 */ bl OSResetSystem
|
||||
lbl_80003130:
|
||||
/* 80003130 80 01 00 0C */ lwz r0, 0xc(r1)
|
||||
/* 80003134 38 21 00 08 */ addi r1, r1, 8
|
||||
/* 80003138 7C 08 03 A6 */ mtlr r0
|
||||
/* 8000313C 4E 80 00 20 */ blr
|
||||
@@ -1,56 +0,0 @@
|
||||
lbl_80003488:
|
||||
/* 80003488 28 05 00 20 */ cmplwi r5, 0x20
|
||||
/* 8000348C 54 84 06 3E */ clrlwi r4, r4, 0x18
|
||||
/* 80003490 38 C3 FF FF */ addi r6, r3, -1
|
||||
/* 80003494 7C 87 23 78 */ mr r7, r4
|
||||
/* 80003498 41 80 00 90 */ blt lbl_80003528
|
||||
/* 8000349C 7C C0 30 F8 */ nor r0, r6, r6
|
||||
/* 800034A0 54 03 07 BF */ clrlwi. r3, r0, 0x1e
|
||||
/* 800034A4 41 82 00 14 */ beq lbl_800034B8
|
||||
/* 800034A8 7C A3 28 50 */ subf r5, r3, r5
|
||||
lbl_800034AC:
|
||||
/* 800034AC 34 63 FF FF */ addic. r3, r3, -1
|
||||
/* 800034B0 9C E6 00 01 */ stbu r7, 1(r6)
|
||||
/* 800034B4 40 82 FF F8 */ bne lbl_800034AC
|
||||
lbl_800034B8:
|
||||
/* 800034B8 28 07 00 00 */ cmplwi r7, 0
|
||||
/* 800034BC 41 82 00 1C */ beq lbl_800034D8
|
||||
/* 800034C0 54 E3 C0 0E */ slwi r3, r7, 0x18
|
||||
/* 800034C4 54 E0 80 1E */ slwi r0, r7, 0x10
|
||||
/* 800034C8 54 E4 40 2E */ slwi r4, r7, 8
|
||||
/* 800034CC 7C 60 03 78 */ or r0, r3, r0
|
||||
/* 800034D0 7C 80 03 78 */ or r0, r4, r0
|
||||
/* 800034D4 7C E7 03 78 */ or r7, r7, r0
|
||||
lbl_800034D8:
|
||||
/* 800034D8 54 A3 D9 7F */ rlwinm. r3, r5, 0x1b, 5, 0x1f
|
||||
/* 800034DC 38 86 FF FD */ addi r4, r6, -3
|
||||
/* 800034E0 41 82 00 2C */ beq lbl_8000350C
|
||||
lbl_800034E4:
|
||||
/* 800034E4 90 E4 00 04 */ stw r7, 4(r4)
|
||||
/* 800034E8 34 63 FF FF */ addic. r3, r3, -1
|
||||
/* 800034EC 90 E4 00 08 */ stw r7, 8(r4)
|
||||
/* 800034F0 90 E4 00 0C */ stw r7, 0xc(r4)
|
||||
/* 800034F4 90 E4 00 10 */ stw r7, 0x10(r4)
|
||||
/* 800034F8 90 E4 00 14 */ stw r7, 0x14(r4)
|
||||
/* 800034FC 90 E4 00 18 */ stw r7, 0x18(r4)
|
||||
/* 80003500 90 E4 00 1C */ stw r7, 0x1c(r4)
|
||||
/* 80003504 94 E4 00 20 */ stwu r7, 0x20(r4)
|
||||
/* 80003508 40 82 FF DC */ bne lbl_800034E4
|
||||
lbl_8000350C:
|
||||
/* 8000350C 54 A3 F7 7F */ rlwinm. r3, r5, 0x1e, 0x1d, 0x1f
|
||||
/* 80003510 41 82 00 10 */ beq lbl_80003520
|
||||
lbl_80003514:
|
||||
/* 80003514 34 63 FF FF */ addic. r3, r3, -1
|
||||
/* 80003518 94 E4 00 04 */ stwu r7, 4(r4)
|
||||
/* 8000351C 40 82 FF F8 */ bne lbl_80003514
|
||||
lbl_80003520:
|
||||
/* 80003520 38 C4 00 03 */ addi r6, r4, 3
|
||||
/* 80003524 54 A5 07 BE */ clrlwi r5, r5, 0x1e
|
||||
lbl_80003528:
|
||||
/* 80003528 28 05 00 00 */ cmplwi r5, 0
|
||||
/* 8000352C 4D 82 00 20 */ beqlr
|
||||
lbl_80003530:
|
||||
/* 80003530 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 80003534 9C E6 00 01 */ stbu r7, 1(r6)
|
||||
/* 80003538 40 82 FF F8 */ bne lbl_80003530
|
||||
/* 8000353C 4E 80 00 20 */ blr
|
||||
@@ -1,4 +0,0 @@
|
||||
lbl_80003140:
|
||||
/* 80003140 38 00 00 01 */ li r0, 1
|
||||
/* 80003144 98 0D 91 50 */ stb r0, data_804516D0(r13)
|
||||
/* 80003148 4E 80 00 20 */ blr
|
||||
@@ -1,26 +0,0 @@
|
||||
lbl_80003540:
|
||||
/* 80003540 7C 04 18 40 */ cmplw r4, r3
|
||||
/* 80003544 41 80 00 28 */ blt lbl_8000356C
|
||||
/* 80003548 38 84 FF FF */ addi r4, r4, -1
|
||||
/* 8000354C 38 C3 FF FF */ addi r6, r3, -1
|
||||
/* 80003550 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 80003554 48 00 00 0C */ b lbl_80003560
|
||||
lbl_80003558:
|
||||
/* 80003558 8C 04 00 01 */ lbzu r0, 1(r4)
|
||||
/* 8000355C 9C 06 00 01 */ stbu r0, 1(r6)
|
||||
lbl_80003560:
|
||||
/* 80003560 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 80003564 40 82 FF F4 */ bne lbl_80003558
|
||||
/* 80003568 4E 80 00 20 */ blr
|
||||
lbl_8000356C:
|
||||
/* 8000356C 7C 84 2A 14 */ add r4, r4, r5
|
||||
/* 80003570 7C C3 2A 14 */ add r6, r3, r5
|
||||
/* 80003574 38 A5 00 01 */ addi r5, r5, 1
|
||||
/* 80003578 48 00 00 0C */ b lbl_80003584
|
||||
lbl_8000357C:
|
||||
/* 8000357C 8C 04 FF FF */ lbzu r0, -1(r4)
|
||||
/* 80003580 9C 06 FF FF */ stbu r0, -1(r6)
|
||||
lbl_80003584:
|
||||
/* 80003584 34 A5 FF FF */ addic. r5, r5, -1
|
||||
/* 80003588 40 82 FF F4 */ bne lbl_8000357C
|
||||
/* 8000358C 4E 80 00 20 */ blr
|
||||
@@ -1,13 +0,0 @@
|
||||
lbl_80003458:
|
||||
/* 80003458 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 8000345C 7C 08 02 A6 */ mflr r0
|
||||
/* 80003460 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 80003464 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 80003468 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 8000346C 48 00 00 1D */ bl __fill_mem
|
||||
/* 80003470 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 80003474 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80003478 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 8000347C 7C 08 03 A6 */ mtlr r0
|
||||
/* 80003480 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 80003484 4E 80 00 20 */ blr
|
||||
@@ -14,7 +14,7 @@ struct DynamicModuleControlBase {
|
||||
|
||||
/* 0x0C */ /*vtable*/
|
||||
/* 802621CC */ virtual ~DynamicModuleControlBase();
|
||||
/* 800188DC */ virtual const char* getModuleName() const {return NULL;};
|
||||
/* 800188DC */ virtual const char* getModuleName() const { return NULL; };
|
||||
/* 80263210 */ virtual int getModuleSize() const;
|
||||
/* 80263200 */ virtual const char* getModuleTypeString() const;
|
||||
/* 80262470 */ virtual void dump();
|
||||
@@ -43,7 +43,7 @@ struct DynamicModuleControl : DynamicModuleControlBase {
|
||||
/* 80263218 */ virtual const char* getModuleName() const;
|
||||
/* 80263000 */ virtual int getModuleSize() const;
|
||||
/* 80263070 */ virtual const char* getModuleTypeString() const;
|
||||
//virtual void dump();
|
||||
// virtual void dump();
|
||||
/* 80262C0C */ virtual void dump2();
|
||||
/* 802627E8 */ virtual bool do_load();
|
||||
/* 80262AFC */ virtual BOOL do_load_async();
|
||||
|
||||
@@ -422,21 +422,18 @@ struct J2DBlendInfo {
|
||||
mType = other.mType;
|
||||
mSrcFactor = other.mSrcFactor;
|
||||
mDstFactor = other.mDstFactor;
|
||||
//mOp = other.mOp;
|
||||
// mOp = other.mOp;
|
||||
}
|
||||
|
||||
/* 0x0 */ u8 mType;
|
||||
/* 0x1 */ u8 mSrcFactor;
|
||||
/* 0x2 */ u8 mDstFactor;
|
||||
|
||||
};
|
||||
|
||||
extern J2DBlendInfo j2dDefaultBlendInfo;
|
||||
|
||||
struct J2DBlend {
|
||||
J2DBlend() {
|
||||
mBlendInfo = j2dDefaultBlendInfo;
|
||||
}
|
||||
J2DBlend() { mBlendInfo = j2dDefaultBlendInfo; }
|
||||
|
||||
/* 0x0 */ J2DBlendInfo mBlendInfo;
|
||||
/* 0x3 */ u8 mOp;
|
||||
@@ -444,9 +441,7 @@ struct J2DBlend {
|
||||
|
||||
class J2DPEBlock {
|
||||
public:
|
||||
J2DPEBlock() {
|
||||
initialize();
|
||||
}
|
||||
J2DPEBlock() { initialize(); }
|
||||
|
||||
/* 802F17FC */ void initialize();
|
||||
/* 802F1840 */ void setGX();
|
||||
@@ -475,10 +470,8 @@ public:
|
||||
|
||||
class J2DIndBlockFull : public J2DIndBlock {
|
||||
public:
|
||||
J2DIndBlockFull() {
|
||||
initialize();
|
||||
}
|
||||
|
||||
J2DIndBlockFull() { initialize(); }
|
||||
|
||||
/* 802F1664 */ virtual void initialize();
|
||||
/* 802F1730 */ virtual void setGX();
|
||||
/* 802F1B94 */ virtual void getType();
|
||||
@@ -515,9 +508,7 @@ private:
|
||||
/* 0x24 */ J2DTexMtx* mTexMtx[8];
|
||||
|
||||
public:
|
||||
J2DTexGenBlock() {
|
||||
initialize();
|
||||
}
|
||||
J2DTexGenBlock() { initialize(); }
|
||||
|
||||
/* 802EB510 */ void initialize();
|
||||
/* 802EB570 */ void setGX();
|
||||
@@ -547,9 +538,7 @@ private:
|
||||
/* 0x12 */ u8 mCullMode;
|
||||
|
||||
public:
|
||||
J2DColorBlock() {
|
||||
initialize();
|
||||
}
|
||||
J2DColorBlock() { initialize(); }
|
||||
|
||||
/* 802EB394 */ void initialize();
|
||||
/* 802EB424 */ void setGX();
|
||||
|
||||
@@ -42,7 +42,6 @@ public:
|
||||
J2DTevBlock* getTevBlock() { return mTevBlock; }
|
||||
J2DIndBlock* getIndBlock() { return mIndBlock; }
|
||||
|
||||
|
||||
private:
|
||||
/* 0x04 */ int field_0x4;
|
||||
/* 0x08 */ int field_0x8;
|
||||
|
||||
@@ -50,9 +50,9 @@ public:
|
||||
/* 802F9A74 */ virtual void setAnimationVF(J2DAnmVisibilityFull*);
|
||||
/* 802F9A78 */ virtual void setAnimationVC(J2DAnmVtxColor*);
|
||||
/* 802F99E8 */ virtual J2DPane* createPane(J2DScrnBlockHeader const&, JSURandomInputStream*,
|
||||
J2DPane*, u32);
|
||||
J2DPane*, u32);
|
||||
/* 802F8B98 */ virtual J2DPane* createPane(J2DScrnBlockHeader const&, JSURandomInputStream*,
|
||||
J2DPane*, u32, JKRArchive*);
|
||||
J2DPane*, u32, JKRArchive*);
|
||||
|
||||
/* 802F8498 */ J2DScreen();
|
||||
/* 802F85A8 */ void clean();
|
||||
|
||||
@@ -219,7 +219,7 @@ inline JKRCompression JKRConvertAttrToCompressionType(u32 attr) {
|
||||
}
|
||||
|
||||
inline void* JKRGetResource(u32 node, const char* path, JKRArchive* archive) {
|
||||
return JKRArchive::getGlbResource(node,path,archive);
|
||||
return JKRArchive::getGlbResource(node, path, archive);
|
||||
}
|
||||
|
||||
inline void* JKRGetTypeResource(u32 tag, const char* name, JKRArchive* arc) {
|
||||
|
||||
@@ -55,7 +55,7 @@ public:
|
||||
};
|
||||
|
||||
inline bool JKRDetachResource(void* resource, JKRFileLoader* fileLoader) {
|
||||
return JKRFileLoader::detachResource(resource,fileLoader);
|
||||
return JKRFileLoader::detachResource(resource, fileLoader);
|
||||
}
|
||||
|
||||
inline void* JKRGetNameResource(const char* name, JKRFileLoader* loader) {
|
||||
|
||||
@@ -6,9 +6,7 @@
|
||||
|
||||
class JSUMemoryInputStream : JSURandomInputStream {
|
||||
public:
|
||||
JSUMemoryInputStream(const void* res, u32 size) {
|
||||
setBuffer(res, size);
|
||||
}
|
||||
JSUMemoryInputStream(const void* res, u32 size) { setBuffer(res, size); }
|
||||
|
||||
/* 802552B8 */ ~JSUMemoryInputStream() {}
|
||||
/* 802DC520 */ void setBuffer(void const*, s32);
|
||||
|
||||
@@ -1,39 +1,66 @@
|
||||
#ifndef MSL_COMMON_SRC_ANSI_FILES_H
|
||||
#define MSL_COMMON_SRC_ANSI_FILES_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
enum __file_kinds {
|
||||
/* 0x0 */ CLOSED_FILE,
|
||||
/* 0x1 */ DISK_FILE,
|
||||
/* 0x2 */ CONSOLE_FILE,
|
||||
/* 0x3 */ UNAVAILABLE_FILE,
|
||||
};
|
||||
|
||||
struct FILE {
|
||||
/* 0x00 */ u32 handle;
|
||||
/* 0x04 */ u32 file_mode;
|
||||
/* 0x08 */ u32 file_state;
|
||||
/* 0x0C */ u8 flag;
|
||||
enum __file_orientation {
|
||||
/* 0x0 */ UNORIENTED,
|
||||
/* 0x1 */ CHAR_ORIENTED,
|
||||
/* 0x2 */ WIDE_ORIENTED,
|
||||
};
|
||||
|
||||
typedef struct _file_modes {
|
||||
unsigned int open_mode : 2;
|
||||
unsigned int io_mode : 3;
|
||||
unsigned int buffer_mode : 2;
|
||||
unsigned int file_kind : 3;
|
||||
unsigned int file_orientation : 2;
|
||||
unsigned int binary_io : 1;
|
||||
} file_modes;
|
||||
|
||||
typedef struct _file_states {
|
||||
unsigned int io_state : 3;
|
||||
unsigned int free_buffer : 1;
|
||||
unsigned char eof;
|
||||
unsigned char error;
|
||||
} file_states;
|
||||
|
||||
typedef struct _FILE {
|
||||
/* 0x00 */ unsigned int handle;
|
||||
/* 0x04 */ file_modes file_mode;
|
||||
/* 0x08 */ file_states file_state;
|
||||
/* 0x0C */ unsigned char flag;
|
||||
/* 0x0D */ char char_buffer;
|
||||
/* 0x0E */ char char_buffer_2;
|
||||
/* 0x0F */ char ungetc_buffer[2];
|
||||
/* 0x12 */ u16 ungetc_wide_buffer[2];
|
||||
/* 0x18 */ u32 position;
|
||||
/* 0x1C */ u8* buffer;
|
||||
/* 0x20 */ u32 buffer_size;
|
||||
/* 0x24 */ u8* buffer_ptr;
|
||||
/* 0x28 */ u32 buffer_length;
|
||||
/* 0x2C */ u32 buffer_alignment;
|
||||
/* 0x30 */ u32 buffer_length2;
|
||||
/* 0x34 */ u32 buffer_position;
|
||||
/* 0x12 */ unsigned short ungetc_wide_buffer[2];
|
||||
/* 0x18 */ unsigned int position;
|
||||
/* 0x1C */ unsigned char* buffer;
|
||||
/* 0x20 */ unsigned int 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;
|
||||
/* 0x4C */ struct FILE* next_file;
|
||||
};
|
||||
/* 0x4C */ struct _FILE* next_file;
|
||||
} FILE;
|
||||
|
||||
struct files {
|
||||
typedef struct _files {
|
||||
FILE stdin;
|
||||
FILE stdout;
|
||||
FILE stderr;
|
||||
FILE empty;
|
||||
};
|
||||
} files;
|
||||
|
||||
extern files __files;
|
||||
|
||||
|
||||
@@ -4,6 +4,14 @@
|
||||
#include "MSL_C/MSL_Common/Src/ansi_files.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
extern "C" int fputs(const char*, FILE*);
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
int fputs(const char*, FILE*);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* MSL_COMMON_SRC_CHAR_IO_H */
|
||||
|
||||
@@ -3,8 +3,14 @@
|
||||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
int tolower(int);
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* MSL_COMMON_SRC_CTYPE_H */
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
|
||||
#define fpclassify(x) ((sizeof(x) == sizeof(float)) ? __fpclassifyf(x) : __fpclassifyd(x))
|
||||
#define signbit(x) ((sizeof(x) == sizeof(float)) ? __signbitf(x) : __signbitd(x))
|
||||
#define isfinite(x) ((fpclassify(x) > 2))
|
||||
|
||||
#define __signbitf(x) ((*(u8*)&(x)) & 0x80)
|
||||
|
||||
|
||||
@@ -3,6 +3,14 @@
|
||||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
extern "C" int memcmp(const void*, const void*, size_t);
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
int memcmp(const void*, const void*, size_t);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* MSL_COMMON_SRC_MEM_H */
|
||||
|
||||
@@ -4,10 +4,18 @@
|
||||
#include "Runtime.PPCEABI.H/__va_arg.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
extern "C" size_t sprintf(const char*, const char*, ...);
|
||||
extern "C" size_t snprintf(const char*, size_t, const char*, ...);
|
||||
extern "C" size_t vsnprintf(char*, size_t, const char*, va_list);
|
||||
extern "C" size_t vprintf(const char*, va_list);
|
||||
extern "C" size_t printf(const char*, ...);
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
size_t sprintf(const char*, const char*, ...);
|
||||
size_t snprintf(const char*, size_t, const char*, ...);
|
||||
size_t vsnprintf(char*, size_t, const char*, va_list);
|
||||
size_t vprintf(const char*, va_list);
|
||||
size_t printf(const char*, ...);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* MSL_COMMON_SRC_PRINTF_H */
|
||||
|
||||
@@ -3,8 +3,11 @@
|
||||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
void* memcpy(void*, const void*, s32);
|
||||
#endif
|
||||
|
||||
void* memcpy(void*, const void*, size_t);
|
||||
void* memset(void*, int, u32);
|
||||
char* strrchr(const char*, int);
|
||||
char* strchr(const char*, int);
|
||||
@@ -16,6 +19,9 @@ char* strcpy(char*, const char*);
|
||||
u32 strlen(const char*);
|
||||
|
||||
int stricmp(const char*, const char*);
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* MSL_COMMON_SRC_STRING_H */
|
||||
|
||||
+40
-34
@@ -4,57 +4,60 @@
|
||||
#include "MSL_C/MSL_Common/Src/float.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
s32 abs(s32);
|
||||
f64 acos(f64);
|
||||
f32 acosf(f32);
|
||||
f64 asin(f64);
|
||||
f64 atan(f64);
|
||||
f64 atan2(f64);
|
||||
f64 ceil(f64);
|
||||
f64 copysign(f64, f64);
|
||||
f64 cos(f64);
|
||||
f32 cosf(f32);
|
||||
f64 exp(f64);
|
||||
#endif
|
||||
|
||||
extern f32 __fabsf(f32);
|
||||
inline f64 fabs(f64 f) {
|
||||
int abs(int);
|
||||
double acos(double);
|
||||
float acosf(float);
|
||||
double asin(double);
|
||||
double atan(double);
|
||||
double atan2(double, double);
|
||||
double ceil(double);
|
||||
double copysign(double, double);
|
||||
double cos(double);
|
||||
float cosf(float);
|
||||
double exp(double);
|
||||
|
||||
extern float __fabsf(float);
|
||||
inline double fabs(double f) {
|
||||
return __fabsf(f);
|
||||
}
|
||||
inline f64 fabsf2(f32 f) {
|
||||
inline double fabsf2(float f) {
|
||||
return __fabsf(f);
|
||||
}
|
||||
inline f32 fabsf(f32 f) {
|
||||
inline float fabsf(float f) {
|
||||
return fabsf2(f);
|
||||
}
|
||||
|
||||
f64 floor(f64);
|
||||
f64 fmod(f64, f64);
|
||||
inline f32 fmodf(f32 f1, f32 f2) {
|
||||
double floor(double);
|
||||
double fmod(double, double);
|
||||
inline float fmodf(float f1, float f2) {
|
||||
return fmod(f1, f2);
|
||||
}
|
||||
|
||||
f64 frexp(f64, s32*);
|
||||
f64 ldexp(f64, s32);
|
||||
f64 modf(f64, f64*);
|
||||
f64 pow(f64, f64);
|
||||
f64 sin(f64);
|
||||
f32 sinf(f32);
|
||||
f64 sqrt(f64);
|
||||
f64 tan(f64);
|
||||
f32 tanf(f32);
|
||||
double frexp(double, int*);
|
||||
double ldexp(double, int);
|
||||
double modf(double, double*);
|
||||
double pow(double, double);
|
||||
double sin(double);
|
||||
float sinf(float);
|
||||
double sqrt(double);
|
||||
double tan(double);
|
||||
float tanf(float);
|
||||
|
||||
extern f32 __float_nan[4];
|
||||
extern f32 __float_epsilon[4];
|
||||
extern f32 __float_max[4];
|
||||
extern float __float_nan[4];
|
||||
extern float __float_epsilon[4];
|
||||
extern float __float_max[4];
|
||||
|
||||
inline f64 sqrt_step(f64 tmpd, f32 mag) {
|
||||
inline double sqrt_step(double tmpd, float mag) {
|
||||
return tmpd * 0.5 * (3.0 - mag * (tmpd * tmpd));
|
||||
}
|
||||
|
||||
inline f32 sqrtf(f32 mag) {
|
||||
inline float sqrtf(float mag) {
|
||||
if (mag > 0.0f) {
|
||||
f64 tmpd = __frsqrte(mag);
|
||||
double tmpd = __frsqrte(mag);
|
||||
tmpd = sqrt_step(tmpd, mag);
|
||||
tmpd = sqrt_step(tmpd, mag);
|
||||
tmpd = sqrt_step(tmpd, mag);
|
||||
@@ -67,6 +70,9 @@ inline f32 sqrtf(f32 mag) {
|
||||
return mag;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
@@ -3,15 +3,21 @@
|
||||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
// not sure what the members are.
|
||||
// OK when the struct is 12 bytes.
|
||||
typedef struct __va_list_struct {
|
||||
u8 data[12];
|
||||
};
|
||||
char gpr;
|
||||
char fpr;
|
||||
char reserved[2];
|
||||
char* input_arg_area;
|
||||
char* reg_save_area;
|
||||
} _va_list_struct;
|
||||
|
||||
typedef __va_list_struct __va_list[1];
|
||||
typedef _va_list_struct __va_list[1];
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" void __va_arg(void*, int);
|
||||
#else
|
||||
void __va_arg(void*, int);
|
||||
#endif
|
||||
|
||||
#if IN_VSCODE_EDITOR
|
||||
#define __builtin_va_info(...)
|
||||
|
||||
@@ -3,6 +3,8 @@
|
||||
|
||||
// this helps remove useless error from the linter when using vscode.
|
||||
#ifndef IN_VSCODE_EDITOR
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define SECTION_INIT extern "C" __declspec(section ".init")
|
||||
#define SECTION_RODATA __declspec(section ".rodata")
|
||||
#define SECTION_DATA __declspec(section ".data")
|
||||
@@ -23,6 +25,29 @@
|
||||
#define COMPILER_STRIP_GATE(NAME, VALUE) SECTION_DEAD void* const cg_##NAME = (void*)(VALUE)
|
||||
#define ALIGN_DECL(ALIGNMENT) __attribute__((aligned(ALIGNMENT)))
|
||||
#define REGISTER_CTORS(ADDR, FUNCTION) SECTION_CTORS void* const _ctors_##ADDR = (void*)(FUNCTION);
|
||||
#else
|
||||
#define SECTION_INIT __declspec(section ".init")
|
||||
#define SECTION_RODATA __declspec(section ".rodata")
|
||||
#define SECTION_DATA __declspec(section ".data")
|
||||
#define SECTION_SDATA __declspec(section ".sdata")
|
||||
#define SECTION_SDATA2 __declspec(section ".sdata2")
|
||||
#define SECTION_BSS __declspec(section ".data")
|
||||
#define SECTION_SBSS __declspec(section ".sdata")
|
||||
#define SECTION_SBSS2 __declspec(section ".sdata2")
|
||||
#define SECTION_CTORS __declspec(section ".ctors")
|
||||
#define SECTION_DTORS __declspec(section ".dtors")
|
||||
#define SECTION_EXTAB __declspec(section "extab_")
|
||||
#define SECTION_EXTABINDEX __declspec(section "extabindex_")
|
||||
#define SECTION_DEAD __declspec(section ".dead")
|
||||
#define SECTION_CTORS10 __declspec(section ".ctors$10")
|
||||
#define SECTION_CTORS15 __declspec(section ".ctors$15")
|
||||
#define SECTION_DTORS10 __declspec(section ".dtors$10")
|
||||
#define SECTION_DTORS15 __declspec(section ".dtors$15")
|
||||
#define COMPILER_STRIP_GATE(NAME, VALUE) SECTION_DEAD void* const cg_##NAME = (void*)(VALUE)
|
||||
#define ALIGN_DECL(ALIGNMENT) __attribute__((aligned(ALIGNMENT)))
|
||||
#define REGISTER_CTORS(ADDR, FUNCTION) SECTION_CTORS void* const _ctors_##ADDR = (void*)(FUNCTION);
|
||||
#endif
|
||||
|
||||
#else
|
||||
#define SECTION_INIT
|
||||
#define SECTION_RODATA
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#ifndef MSL_COMMON_SRC_ERRNO_H
|
||||
#define MSL_COMMON_SRC_ERRNO_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
extern int errno;
|
||||
|
||||
#endif /* MSL_COMMON_SRC_ERRNO_H */
|
||||
@@ -0,0 +1,228 @@
|
||||
#ifndef FDLIBM_H
|
||||
#define FDLIBM_H
|
||||
|
||||
/* @(#)fdlibm.h 1.5 04/04/22 */
|
||||
/*
|
||||
* ====================================================
|
||||
* Copyright (C) 2004 by Sun Microsystems, Inc. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and distribute this
|
||||
* software is freely granted, provided that this notice
|
||||
* is preserved.
|
||||
* ====================================================
|
||||
*/
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/* Sometimes it's necessary to define __LITTLE_ENDIAN explicitly
|
||||
but these catch some common cases. */
|
||||
|
||||
#if defined(i386) || defined(i486) || defined(intel) || defined(x86) || defined(i86pc) || \
|
||||
defined(__alpha) || defined(__osf__)
|
||||
#define __LITTLE_ENDIAN
|
||||
#endif
|
||||
|
||||
#ifdef __LITTLE_ENDIAN
|
||||
#define __HI(x) *(1 + (int*)&x)
|
||||
#define __LO(x) *(int*)&x
|
||||
#define __HIp(x) *(1 + (int*)x)
|
||||
#define __LOp(x) *(int*)x
|
||||
#else
|
||||
#define __HI(x) *(int*)&x
|
||||
#define __LO(x) *(1 + (int*)&x)
|
||||
#define __HIp(x) *(int*)x
|
||||
#define __LOp(x) *(1 + (int*)x)
|
||||
#endif
|
||||
|
||||
// TODO: should __STDC__ actually be defined?
|
||||
//#ifdef __STDC__
|
||||
#define __P(p) p
|
||||
//#else
|
||||
//#define __P(p) ()
|
||||
//#endif
|
||||
|
||||
/*
|
||||
* ANSI/POSIX
|
||||
*/
|
||||
|
||||
extern int signgam;
|
||||
|
||||
#define MAXFLOAT ((float)3.40282346638528860e+38)
|
||||
|
||||
enum fdversion { fdlibm_ieee = -1, fdlibm_svid, fdlibm_xopen, fdlibm_posix };
|
||||
|
||||
#define _LIB_VERSION_TYPE enum fdversion
|
||||
#define _LIB_VERSION _fdlib_version
|
||||
|
||||
/* if global variable _LIB_VERSION is not desirable, one may
|
||||
* change the following to be a constant by:
|
||||
* #define _LIB_VERSION_TYPE const enum version
|
||||
* In that case, after one initializes the value _LIB_VERSION (see
|
||||
* s_lib_version.c) during compile time, it cannot be modified
|
||||
* in the middle of a program
|
||||
*/
|
||||
extern _LIB_VERSION_TYPE _LIB_VERSION;
|
||||
|
||||
#define _IEEE_ fdlibm_ieee
|
||||
#define _SVID_ fdlibm_svid
|
||||
#define _XOPEN_ fdlibm_xopen
|
||||
#define _POSIX_ fdlibm_posix
|
||||
|
||||
struct exception {
|
||||
int type;
|
||||
char* name;
|
||||
double arg1;
|
||||
double arg2;
|
||||
double retval;
|
||||
};
|
||||
|
||||
#define HUGE MAXFLOAT
|
||||
|
||||
/*
|
||||
* set X_TLOSS = pi*2**52, which is possibly defined in <values.h>
|
||||
* (one may replace the following line by "#include <values.h>")
|
||||
*/
|
||||
|
||||
#define X_TLOSS 1.41484755040568800000e+16
|
||||
|
||||
#define DOMAIN 1
|
||||
#define SING 2
|
||||
#define OVERFLOW 3
|
||||
#define UNDERFLOW 4
|
||||
#define TLOSS 5
|
||||
#define PLOSS 6
|
||||
|
||||
/*
|
||||
* ANSI/POSIX
|
||||
*/
|
||||
extern double acos __P((double));
|
||||
extern double asin __P((double));
|
||||
extern double atan __P((double));
|
||||
extern double atan2 __P((double, double));
|
||||
extern double cos __P((double));
|
||||
extern double sin __P((double));
|
||||
extern double tan __P((double));
|
||||
|
||||
extern double cosh __P((double));
|
||||
extern double sinh __P((double));
|
||||
extern double tanh __P((double));
|
||||
|
||||
extern double exp __P((double));
|
||||
extern double frexp __P((double, int*));
|
||||
extern double ldexp __P((double, int));
|
||||
extern double log __P((double));
|
||||
extern double log10 __P((double));
|
||||
extern double modf __P((double, double*));
|
||||
|
||||
extern double pow __P((double, double));
|
||||
extern double sqrt __P((double));
|
||||
|
||||
extern double ceil __P((double));
|
||||
extern double fabs __P((double));
|
||||
extern double floor __P((double));
|
||||
extern double fmod __P((double, double));
|
||||
|
||||
extern double erf __P((double));
|
||||
extern double erfc __P((double));
|
||||
extern double gamma __P((double));
|
||||
extern double hypot __P((double, double));
|
||||
extern int isnan __P((double));
|
||||
extern int finite __P((double));
|
||||
extern double j0 __P((double));
|
||||
extern double j1 __P((double));
|
||||
extern double jn __P((int, double));
|
||||
extern double lgamma __P((double));
|
||||
extern double y0 __P((double));
|
||||
extern double y1 __P((double));
|
||||
extern double yn __P((int, double));
|
||||
|
||||
extern double acosh __P((double));
|
||||
extern double asinh __P((double));
|
||||
extern double atanh __P((double));
|
||||
extern double cbrt __P((double));
|
||||
extern double logb __P((double));
|
||||
extern double nextafter __P((double, double));
|
||||
extern double remainder __P((double, double));
|
||||
#ifdef _SCALB_INT
|
||||
extern double scalb __P((double, int));
|
||||
#else
|
||||
extern double scalb __P((double, double));
|
||||
#endif
|
||||
|
||||
extern int matherr __P((struct exception*));
|
||||
|
||||
/*
|
||||
* IEEE Test Vector
|
||||
*/
|
||||
extern double significand __P((double));
|
||||
|
||||
/*
|
||||
* Functions callable from C, intended to support IEEE arithmetic.
|
||||
*/
|
||||
extern double copysign __P((double, double));
|
||||
extern int ilogb __P((double));
|
||||
extern double rint __P((double));
|
||||
extern double scalbn __P((double, int));
|
||||
|
||||
/*
|
||||
* BSD math library entry points
|
||||
*/
|
||||
extern double expm1 __P((double));
|
||||
extern double log1p __P((double));
|
||||
|
||||
/*
|
||||
* Reentrant version of gamma & lgamma; passes signgam back by reference
|
||||
* as the second argument; user must allocate space for signgam.
|
||||
*/
|
||||
#ifdef _REENTRANT
|
||||
extern double gamma_r __P((double, int*));
|
||||
extern double lgamma_r __P((double, int*));
|
||||
#endif /* _REENTRANT */
|
||||
|
||||
/* ieee style elementary functions */
|
||||
extern double __ieee754_sqrt __P((double));
|
||||
extern double __ieee754_acos __P((double));
|
||||
extern double __ieee754_acosh __P((double));
|
||||
extern double __ieee754_log __P((double));
|
||||
extern double __ieee754_atanh __P((double));
|
||||
extern double __ieee754_asin __P((double));
|
||||
extern double __ieee754_atan2 __P((double, double));
|
||||
extern double __ieee754_exp __P((double));
|
||||
extern double __ieee754_cosh __P((double));
|
||||
extern double __ieee754_fmod __P((double, double));
|
||||
extern double __ieee754_pow __P((double, double));
|
||||
extern double __ieee754_lgamma_r __P((double, int*));
|
||||
extern double __ieee754_gamma_r __P((double, int*));
|
||||
extern double __ieee754_lgamma __P((double));
|
||||
extern double __ieee754_gamma __P((double));
|
||||
extern double __ieee754_log10 __P((double));
|
||||
extern double __ieee754_sinh __P((double));
|
||||
extern double __ieee754_hypot __P((double, double));
|
||||
extern double __ieee754_j0 __P((double));
|
||||
extern double __ieee754_j1 __P((double));
|
||||
extern double __ieee754_y0 __P((double));
|
||||
extern double __ieee754_y1 __P((double));
|
||||
extern double __ieee754_jn __P((int, double));
|
||||
extern double __ieee754_yn __P((int, double));
|
||||
extern double __ieee754_remainder __P((double, double));
|
||||
extern int __ieee754_rem_pio2 __P((double, double*));
|
||||
#ifdef _SCALB_INT
|
||||
extern double __ieee754_scalb __P((double, int));
|
||||
#else
|
||||
extern double __ieee754_scalb __P((double, double));
|
||||
#endif
|
||||
|
||||
/* fdlibm kernel function */
|
||||
extern double __kernel_standard __P((double, double, int));
|
||||
extern double __kernel_sin __P((double, double, int));
|
||||
extern double __kernel_cos __P((double, double));
|
||||
extern double __kernel_tan __P((double, double, int));
|
||||
extern int __kernel_rem_pio2 __P((double*, double*, int, int, int, const int*));
|
||||
|
||||
#ifdef __cplusplus
|
||||
};
|
||||
#endif
|
||||
|
||||
#endif /* FDLIBM_H */
|
||||
@@ -4,15 +4,15 @@
|
||||
//
|
||||
|
||||
#include "JSystem/J2DGraph/J2DScreen.h"
|
||||
#include "JSystem/JGeometry.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "JSystem/JSupport/JSUMemoryStream.h"
|
||||
#include "JSystem/J2DGraph/J2DMaterialFactory.h"
|
||||
#include "JSystem/J2DGraph/J2DOrthoGraph.h"
|
||||
#include "JSystem/J2DGraph/J2DPictureEx.h"
|
||||
#include "JSystem/J2DGraph/J2DTextBoxEx.h"
|
||||
#include "JSystem/J2DGraph/J2DWindowEx.h"
|
||||
#include "JSystem/J2DGraph/J2DPictureEx.h"
|
||||
#include "JSystem/J2DGraph/J2DOrthoGraph.h"
|
||||
#include "JSystem/J2DGraph/J2DMaterialFactory.h"
|
||||
#include "JSystem/JGeometry.h"
|
||||
#include "JSystem/JSupport/JSUMemoryStream.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
@@ -356,12 +356,12 @@ bool J2DScreen::getScreenInformation(JSURandomInputStream* stream) {
|
||||
* makeHierarchyPanes__9J2DScreenFP7J2DPaneP20JSURandomInputStreamUlP10JKRArchive */
|
||||
// goto can probably be replaced
|
||||
s32 J2DScreen::makeHierarchyPanes(J2DPane* basePane, JSURandomInputStream* stream, u32 param_2,
|
||||
JKRArchive* archive) {
|
||||
JKRArchive* archive) {
|
||||
J2DScrnBlockHeader header;
|
||||
J2DPane* next_pane = basePane;
|
||||
|
||||
do {
|
||||
loop:
|
||||
loop:
|
||||
stream->peek(&header, sizeof(J2DScrnBlockHeader));
|
||||
|
||||
switch (header.mTag) {
|
||||
@@ -382,7 +382,7 @@ s32 J2DScreen::makeHierarchyPanes(J2DPane* basePane, JSURandomInputStream* strea
|
||||
case 'TEX1':
|
||||
J2DResReference* texRes = getResReference(stream, param_2);
|
||||
mTexRes = texRes;
|
||||
|
||||
|
||||
if (texRes != NULL) {
|
||||
goto loop;
|
||||
}
|
||||
@@ -390,7 +390,7 @@ s32 J2DScreen::makeHierarchyPanes(J2DPane* basePane, JSURandomInputStream* strea
|
||||
case 'FNT1':
|
||||
J2DResReference* fntRes = getResReference(stream, param_2);
|
||||
mFontRes = fntRes;
|
||||
|
||||
|
||||
if (fntRes != NULL) {
|
||||
goto loop;
|
||||
}
|
||||
@@ -407,8 +407,7 @@ s32 J2DScreen::makeHierarchyPanes(J2DPane* basePane, JSURandomInputStream* strea
|
||||
} else {
|
||||
next_pane = createPane(header, stream, basePane, param_2, archive);
|
||||
}
|
||||
}
|
||||
while (next_pane != NULL);
|
||||
} while (next_pane != NULL);
|
||||
|
||||
return 2;
|
||||
}
|
||||
@@ -452,7 +451,7 @@ J2DPane* J2DScreen::createPane(J2DScrnBlockHeader const& header, JSURandomInputS
|
||||
case 'TBX2':
|
||||
if (param_3 & 0x1F0000) {
|
||||
newPane = new J2DTextBoxEx(basePane, stream, param_3, mMaterials);
|
||||
break;
|
||||
break;
|
||||
}
|
||||
newPane = new J2DTextBox(basePane, stream, param_3, mMaterials);
|
||||
break;
|
||||
@@ -465,7 +464,7 @@ J2DPane* J2DScreen::createPane(J2DScrnBlockHeader const& header, JSURandomInputS
|
||||
stream->seek(start, JSUStreamSeekFrom_SET);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
return newPane;
|
||||
}
|
||||
|
||||
@@ -508,7 +507,8 @@ void J2DScreen::draw(f32 param_0, f32 param_1, J2DGrafContext const* grafCtx) {
|
||||
GXSetVtxDesc(GX_VA_TEX0, GX_NONE);
|
||||
GXSetCullMode(GX_CULL_NONE);
|
||||
GXSetNumTexGens(0);
|
||||
GXSetChanCtrl(GX_COLOR0A0, GX_DISABLE, GX_SRC_REG, GX_SRC_VTX, GX_LIGHT_NULL, GX_DF_NONE, GX_AF_NONE);
|
||||
GXSetChanCtrl(GX_COLOR0A0, GX_DISABLE, GX_SRC_REG, GX_SRC_VTX, GX_LIGHT_NULL, GX_DF_NONE,
|
||||
GX_AF_NONE);
|
||||
for (int i = 0; i < 4; i++) {
|
||||
GXSetTevSwapModeTable((GXTevSwapSel)i, GX_CH_RED, GX_CH_GREEN, GX_CH_BLUE, GX_CH_ALPHA);
|
||||
}
|
||||
@@ -628,8 +628,7 @@ asm J2DResReference* J2DScreen::getResReference(JSURandomInputStream* param_0, u
|
||||
* createMaterial__9J2DScreenFP20JSURandomInputStreamUlP10JKRArchive */
|
||||
// nametab section has issues
|
||||
#ifdef NONMATCHING
|
||||
bool J2DScreen::createMaterial(JSURandomInputStream* stream, u32 param_1,
|
||||
JKRArchive* archive) {
|
||||
bool J2DScreen::createMaterial(JSURandomInputStream* stream, u32 param_1, JKRArchive* archive) {
|
||||
s32 position = stream->getPosition();
|
||||
|
||||
J2DScrnBlockHeader header;
|
||||
@@ -655,7 +654,8 @@ bool J2DScreen::createMaterial(JSURandomInputStream* stream, u32 param_1,
|
||||
}
|
||||
|
||||
if (param_1 & 0x1F0000) {
|
||||
u32 offset = buffer[0x14] << 0x18 | buffer[0x15] << 0x10 | buffer[0x16] << 8 | buffer[0x17];
|
||||
u32 offset =
|
||||
buffer[0x14] << 0x18 | buffer[0x15] << 0x10 | buffer[0x16] << 8 | buffer[0x17];
|
||||
char* sec = (char*)buffer + offset;
|
||||
u16* sec_s = (u16*)sec + *(u16*)sec;
|
||||
|
||||
@@ -726,7 +726,7 @@ void* J2DScreen::getNameResource(char const* resName) {
|
||||
/* 802F9690-802F9704 2F3FD0 0074+00 0/0 30/30 3/3 .text animation__9J2DScreenFv */
|
||||
void J2DScreen::animation() {
|
||||
animationPane(mTransform);
|
||||
|
||||
|
||||
for (u16 i = 0; i < mMaterialNum; i++) {
|
||||
mMaterials[i].animation();
|
||||
}
|
||||
@@ -741,7 +741,7 @@ void J2DScreen::setAnimation(J2DAnmColor* anmColor) {
|
||||
u16 matID = anmColor->getUpdateMaterialID(i);
|
||||
if (matID < mMaterialNum) {
|
||||
mMaterials[matID].setAnimation(anmColor);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -755,7 +755,7 @@ void J2DScreen::setAnimation(J2DAnmTextureSRTKey* anmSRTKey) {
|
||||
u16 matID = anmSRTKey->getUpdateMaterialID(i);
|
||||
if (matID < mMaterialNum) {
|
||||
mMaterials[matID].setAnimation(anmSRTKey);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -769,7 +769,7 @@ void J2DScreen::setAnimation(J2DAnmTexPattern* anmPattern) {
|
||||
u16 matID = anmPattern->getUpdateMaterialID(i);
|
||||
if (matID < mMaterialNum) {
|
||||
mMaterials[matID].setAnimation(anmPattern);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -783,7 +783,7 @@ void J2DScreen::setAnimation(J2DAnmTevRegKey* anmRegKey) {
|
||||
u16 matID = anmRegKey->getCRegUpdateMaterialID(i);
|
||||
if (matID < mMaterialNum) {
|
||||
mMaterials[matID].setAnimation(anmRegKey);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
u16 kMatNum = anmRegKey->getKRegUpdateMaterialNum();
|
||||
@@ -791,7 +791,7 @@ void J2DScreen::setAnimation(J2DAnmTevRegKey* anmRegKey) {
|
||||
u16 matID = anmRegKey->getKRegUpdateMaterialID(i);
|
||||
if (matID < mMaterialNum) {
|
||||
mMaterials[matID].setAnimation(anmRegKey);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -810,7 +810,7 @@ void J2DScreen::setAnimation(J2DAnmVisibilityFull* anmVisibility) {
|
||||
/* 802F99E8-802F9A18 2F4328 0030+00 1/0 0/0 0/0 .text
|
||||
* createPane__9J2DScreenFRC18J2DScrnBlockHeaderP20JSURandomInputStreamP7J2DPaneUl */
|
||||
J2DPane* J2DScreen::createPane(J2DScrnBlockHeader const& header, JSURandomInputStream* stream,
|
||||
J2DPane* basePane, u32 param_3) {
|
||||
J2DPane* basePane, u32 param_3) {
|
||||
return createPane(header, stream, basePane, param_3, NULL);
|
||||
}
|
||||
|
||||
|
||||
@@ -11,18 +11,18 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void fseek();
|
||||
extern "C" static void _fseek();
|
||||
extern "C" void ftell();
|
||||
void fseek();
|
||||
static void _fseek();
|
||||
void ftell();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void __flush_buffer();
|
||||
extern "C" void __end_critical_region();
|
||||
extern "C" void __begin_critical_region();
|
||||
extern "C" extern u8 errno[4 + 4 /* padding */];
|
||||
void __flush_buffer();
|
||||
void __end_critical_region();
|
||||
void __begin_critical_region();
|
||||
extern u8 errno[4 + 4 /* padding */];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
@@ -11,20 +11,20 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void exit();
|
||||
extern "C" void abort();
|
||||
extern "C" extern u8 data_804519A0[8];
|
||||
void exit();
|
||||
void abort();
|
||||
extern u8 data_804519A0[8];
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void _ExitProcess();
|
||||
extern "C" void __destroy_global_chain();
|
||||
extern "C" void __end_critical_region();
|
||||
extern "C" void __begin_critical_region();
|
||||
extern "C" void __kill_critical_regions();
|
||||
extern "C" void raise();
|
||||
void _ExitProcess();
|
||||
void __destroy_global_chain();
|
||||
void __end_critical_region();
|
||||
void __begin_critical_region();
|
||||
void __kill_critical_regions();
|
||||
void raise();
|
||||
SECTION_DTORS10 extern void* const __destroy_global_chain_reference;
|
||||
|
||||
//
|
||||
@@ -35,18 +35,23 @@ SECTION_DTORS10 extern void* const __destroy_global_chain_reference;
|
||||
/* 8044D440-8044D540 07A160 0100+00 2/2 0/0 0/0 .bss __atexit_funcs */
|
||||
static u8 __atexit_funcs[256];
|
||||
|
||||
/* 80451990-80451994 000E90 0004+00 2/2 0/0 0/0 .sbss __aborting */
|
||||
static u8 __aborting[4];
|
||||
/* ############################################################################################## */
|
||||
/* 804519A0-804519A8 000EA0 0008+00 0/0 1/1 0/0 .sbss None */
|
||||
extern u8 data_804519A0[8];
|
||||
u8 data_804519A0[8];
|
||||
|
||||
/* 80451994-80451998 000E94 0004+00 2/2 0/0 0/0 .sbss __atexit_curr_func */
|
||||
static u8 __atexit_curr_func[4];
|
||||
/* 8045199C-804519A0 000E9C 0004+00 2/2 0/0 0/0 .sbss __console_exit */
|
||||
static u8 __console_exit[4];
|
||||
|
||||
/* 80451998-8045199C 000E98 0004+00 1/1 1/1 0/0 .sbss __stdio_exit */
|
||||
extern u8 __stdio_exit[4];
|
||||
u8 __stdio_exit[4];
|
||||
|
||||
/* 8045199C-804519A0 000E9C 0004+00 2/2 0/0 0/0 .sbss __console_exit */
|
||||
static u8 __console_exit[4];
|
||||
/* 80451994-80451998 000E94 0004+00 2/2 0/0 0/0 .sbss __atexit_curr_func */
|
||||
static u8 __atexit_curr_func[4];
|
||||
|
||||
/* 80451990-80451994 000E90 0004+00 2/2 0/0 0/0 .sbss __aborting */
|
||||
static u8 __aborting[4];
|
||||
|
||||
/* 803629CC-80362ABC 35D30C 00F0+00 0/0 2/2 0/0 .text exit */
|
||||
#pragma push
|
||||
@@ -67,8 +72,3 @@ asm void abort() {
|
||||
#include "asm/MSL_C/MSL_Common/Src/abort_exit/abort.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 804519A0-804519A8 000EA0 0008+00 0/0 1/1 0/0 .sbss None */
|
||||
extern u8 data_804519A0[8];
|
||||
u8 data_804519A0[8];
|
||||
@@ -11,20 +11,20 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void free();
|
||||
extern "C" void __pool_free();
|
||||
extern "C" static void deallocate_from_fixed_pools();
|
||||
extern "C" static void deallocate_from_var_pools();
|
||||
void free();
|
||||
void __pool_free();
|
||||
static void deallocate_from_fixed_pools();
|
||||
static void deallocate_from_var_pools();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
SECTION_INIT void memset();
|
||||
extern "C" void __sys_free();
|
||||
extern "C" void __end_critical_region();
|
||||
extern "C" void __begin_critical_region();
|
||||
extern "C" extern u8 data_804519A0[8];
|
||||
void __sys_free();
|
||||
void __end_critical_region();
|
||||
void __begin_critical_region();
|
||||
extern u8 data_804519A0[8];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
@@ -0,0 +1,181 @@
|
||||
//
|
||||
// Generated By: dol2asm
|
||||
// Translation Unit: MSL_Common/Src/ansi_files
|
||||
//
|
||||
|
||||
#include "MSL_C/MSL_Common/Src/ansi_files.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
unsigned int __flush_all();
|
||||
void __close_all();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
void free(FILE*);
|
||||
void __end_critical_region(int);
|
||||
void __begin_critical_region(int);
|
||||
int fflush(FILE*);
|
||||
void fclose(FILE*);
|
||||
int __close_console(unsigned int);
|
||||
int __write_console(int, int, int*, int);
|
||||
int __read_console(unsigned int, unsigned int, unsigned int*);
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 8044D778-8044D878 07A498 0100+00 1/0 0/0 0/0 .bss stdin_buff */
|
||||
static u8 stdin_buff[0x100];
|
||||
|
||||
/* 8044D678-8044D778 07A398 0100+00 1/0 0/0 0/0 .bss stdout_buff */
|
||||
static u8 stdout_buff[0x100];
|
||||
|
||||
/* 8044D578-8044D678 07A298 0100+00 1/0 0/0 0/0 .bss stderr_buff */
|
||||
static u8 stderr_buff[0x100];
|
||||
|
||||
/* 803D29B0-803D2AF0 -00001 0140+00 3/2 15/15 0/0 .data __files */
|
||||
SECTION_DATA extern files __files = {
|
||||
{0,
|
||||
0,
|
||||
1,
|
||||
1,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
{0, 0},
|
||||
{0, 0},
|
||||
0,
|
||||
stdin_buff,
|
||||
0x00000100,
|
||||
stdin_buff,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
NULL,
|
||||
__read_console,
|
||||
__write_console,
|
||||
__close_console,
|
||||
NULL,
|
||||
&__files.stdout},
|
||||
{1,
|
||||
0,
|
||||
2,
|
||||
1,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
{0, 0},
|
||||
{0, 0},
|
||||
0,
|
||||
stdout_buff,
|
||||
0x00000100,
|
||||
stdout_buff,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
NULL,
|
||||
__read_console,
|
||||
__write_console,
|
||||
__close_console,
|
||||
NULL,
|
||||
&__files.stderr},
|
||||
{2,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
2,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
{0, 0},
|
||||
{0, 0},
|
||||
0,
|
||||
stderr_buff,
|
||||
0x00000100,
|
||||
stderr_buff,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
NULL,
|
||||
__read_console,
|
||||
__write_console,
|
||||
__close_console,
|
||||
NULL,
|
||||
&__files.empty},
|
||||
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, {0, 0},
|
||||
{0, 0}, 0, NULL, 0x00000000, NULL, 0, 0, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL},
|
||||
};
|
||||
|
||||
/* 8036300C-8036307C 35D94C 0070+00 0/0 2/2 0/0 .text __flush_all */
|
||||
unsigned int __flush_all(void) {
|
||||
unsigned int ret = 0;
|
||||
FILE* file = &__files.stdin;
|
||||
|
||||
while (file) {
|
||||
if (file->file_mode.file_kind != 0 && fflush(file)) {
|
||||
ret = -1;
|
||||
}
|
||||
file = file->next_file;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
/* 8036307C-80363124 35D9BC 00A8+00 0/0 1/1 0/0 .text __close_all */
|
||||
void __close_all(void) {
|
||||
FILE* file = &__files.stdin;
|
||||
FILE* last_file;
|
||||
|
||||
__begin_critical_region(2);
|
||||
|
||||
while (file != NULL) {
|
||||
if (file->file_mode.file_kind != CLOSED_FILE) {
|
||||
fclose(file);
|
||||
}
|
||||
|
||||
last_file = file;
|
||||
file = file->next_file;
|
||||
|
||||
if (last_file->flag) {
|
||||
free(last_file);
|
||||
} else {
|
||||
last_file->file_mode.file_kind = UNAVAILABLE_FILE;
|
||||
if (file != NULL && file->flag) {
|
||||
last_file->next_file = NULL;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
__end_critical_region(2);
|
||||
}
|
||||
@@ -1,142 +0,0 @@
|
||||
//
|
||||
// Generated By: dol2asm
|
||||
// Translation Unit: MSL_Common/Src/ansi_files
|
||||
//
|
||||
|
||||
#include "MSL_C/MSL_Common/Src/ansi_files.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void __flush_all();
|
||||
extern "C" void __close_all();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void free();
|
||||
extern "C" void __end_critical_region();
|
||||
extern "C" void __begin_critical_region();
|
||||
extern "C" void fflush();
|
||||
extern "C" void fclose();
|
||||
extern "C" bool __close_console();
|
||||
extern "C" void __write_console();
|
||||
extern "C" void __read_console();
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 8044D578-8044D678 07A298 0100+00 1/0 0/0 0/0 .bss stderr_buff */
|
||||
extern "C" u8 stderr_buff[256];
|
||||
|
||||
/* 8044D678-8044D778 07A398 0100+00 1/0 0/0 0/0 .bss stdout_buff */
|
||||
extern "C" u8 stdout_buff[256];
|
||||
|
||||
/* 8044D778-8044D878 07A498 0100+00 1/0 0/0 0/0 .bss stdin_buff */
|
||||
extern "C" u8 stdin_buff[256];
|
||||
|
||||
/* 803D29B0-803D2AF0 -00001 0140+00 3/2 15/15 0/0 .data __files */
|
||||
SECTION_DATA extern files __files = {{0,
|
||||
0x0A800000,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
{0, 0},
|
||||
{0, 0},
|
||||
0,
|
||||
stdin_buff,
|
||||
0x00000100,
|
||||
stdin_buff,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
NULL,
|
||||
__read_console,
|
||||
__write_console,
|
||||
__close_console,
|
||||
NULL,
|
||||
&__files.stdout},
|
||||
{1,
|
||||
0x12800000,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
{0, 0},
|
||||
{0, 0},
|
||||
0,
|
||||
stdout_buff,
|
||||
0x00000100,
|
||||
stdout_buff,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
NULL,
|
||||
__read_console,
|
||||
__write_console,
|
||||
__close_console,
|
||||
NULL,
|
||||
&__files.stderr},
|
||||
{2,
|
||||
0x10800000,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
{0, 0},
|
||||
{0, 0},
|
||||
0,
|
||||
stderr_buff,
|
||||
0x00000100,
|
||||
stderr_buff,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
NULL,
|
||||
__read_console,
|
||||
__write_console,
|
||||
__close_console,
|
||||
NULL,
|
||||
&__files.empty},
|
||||
{0, 0x00000000, 0, 0, 0, 0, {0, 0}, {0, 0},
|
||||
0, NULL, 0x00000000, NULL, 0, 0, 0, 0,
|
||||
NULL, NULL, NULL, NULL, NULL, NULL}};
|
||||
|
||||
/* 8044D578-8044D678 07A298 0100+00 1/0 0/0 0/0 .bss stderr_buff */
|
||||
static u8 stderr_buff[256];
|
||||
|
||||
/* 8044D678-8044D778 07A398 0100+00 1/0 0/0 0/0 .bss stdout_buff */
|
||||
static u8 stdout_buff[256];
|
||||
|
||||
/* 8044D778-8044D878 07A498 0100+00 1/0 0/0 0/0 .bss stdin_buff */
|
||||
static u8 stdin_buff[256];
|
||||
|
||||
/* 8036300C-8036307C 35D94C 0070+00 0/0 2/2 0/0 .text __flush_all */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void __flush_all() {
|
||||
nofralloc
|
||||
#include "asm/MSL_C/MSL_Common/Src/ansi_files/__flush_all.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 8036307C-80363124 35D9BC 00A8+00 0/0 1/1 0/0 .text __close_all */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void __close_all() {
|
||||
nofralloc
|
||||
#include "asm/MSL_C/MSL_Common/Src/ansi_files/__close_all.s"
|
||||
}
|
||||
#pragma pop
|
||||
@@ -11,8 +11,8 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void div();
|
||||
extern "C" void abs();
|
||||
void div();
|
||||
void abs();
|
||||
|
||||
//
|
||||
// External References:
|
||||
@@ -11,8 +11,8 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void __flush_buffer();
|
||||
extern "C" void __prep_buffer();
|
||||
void __flush_buffer();
|
||||
void __prep_buffer();
|
||||
|
||||
//
|
||||
// External References:
|
||||
@@ -11,19 +11,19 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void __put_char();
|
||||
void __put_char();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void __flush_buffer();
|
||||
extern "C" void __prep_buffer();
|
||||
extern "C" void __end_critical_region();
|
||||
extern "C" void __begin_critical_region();
|
||||
extern "C" void fseek();
|
||||
extern "C" void __stdio_atexit();
|
||||
extern "C" void fwide();
|
||||
void __flush_buffer();
|
||||
void __prep_buffer();
|
||||
void __end_critical_region();
|
||||
void __begin_critical_region();
|
||||
void fseek();
|
||||
void __stdio_atexit();
|
||||
void fwide();
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
@@ -11,7 +11,7 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" extern u8 __upper_map[256];
|
||||
extern unsigned char __upper_map[256];
|
||||
|
||||
//
|
||||
// External References:
|
||||
@@ -23,7 +23,7 @@ extern "C" extern u8 __upper_map[256];
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803D2C18-803D2D18 02FD38 0100+00 0/0 3/3 0/0 .data __ctype_map */
|
||||
SECTION_DATA extern u8 __ctype_map[256] = {
|
||||
SECTION_DATA extern unsigned char __ctype_map[256] = {
|
||||
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01,
|
||||
0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
|
||||
0x04, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08,
|
||||
@@ -43,7 +43,7 @@ SECTION_DATA extern u8 __ctype_map[256] = {
|
||||
};
|
||||
|
||||
/* 803D2D18-803D2E18 02FE38 0100+00 1/1 3/3 0/0 .data __lower_map */
|
||||
SECTION_DATA extern u8 __lower_map[256] = {
|
||||
SECTION_DATA extern unsigned char __lower_map[256] = {
|
||||
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F,
|
||||
0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F,
|
||||
0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C, 0x2D, 0x2E, 0x2F,
|
||||
@@ -63,18 +63,19 @@ SECTION_DATA extern u8 __lower_map[256] = {
|
||||
};
|
||||
|
||||
/* 80365470-80365494 35FDB0 0024+00 0/0 4/4 0/0 .text tolower */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm int tolower(int) {
|
||||
nofralloc
|
||||
#include "asm/MSL_C/MSL_Common/Src/ctype/tolower.s"
|
||||
int tolower(int __c) {
|
||||
{
|
||||
if (__c == -1) {
|
||||
return 0xffffffff;
|
||||
}
|
||||
|
||||
return (unsigned int)__lower_map[__c & 0xff];
|
||||
}
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 803D2E18-803D2F18 02FF38 0100+00 0/0 1/1 0/0 .data __upper_map */
|
||||
SECTION_DATA extern u8 __upper_map[256] = {
|
||||
SECTION_DATA extern unsigned char __upper_map[256] = {
|
||||
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F,
|
||||
0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F,
|
||||
0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2A, 0x2B, 0x2C, 0x2D, 0x2E, 0x2F,
|
||||
@@ -11,22 +11,22 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void __fwrite();
|
||||
extern "C" void fwrite();
|
||||
void __fwrite();
|
||||
void fwrite();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
SECTION_INIT void memcpy();
|
||||
extern "C" void __flush_buffer();
|
||||
extern "C" void __prep_buffer();
|
||||
extern "C" void __end_critical_region();
|
||||
extern "C" void __begin_critical_region();
|
||||
extern "C" void fseek();
|
||||
extern "C" void __memrchr();
|
||||
extern "C" void __stdio_atexit();
|
||||
extern "C" void fwide();
|
||||
void __flush_buffer();
|
||||
void __prep_buffer();
|
||||
void __end_critical_region();
|
||||
void __begin_critical_region();
|
||||
void fseek();
|
||||
void __memrchr();
|
||||
void __stdio_atexit();
|
||||
void fwide();
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
@@ -0,0 +1,10 @@
|
||||
//
|
||||
// Generated By: dol2asm
|
||||
// Translation Unit: MSL_Common/Src/errno
|
||||
//
|
||||
|
||||
#include "errno.h"
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 804519A8-804519B0 000EA8 0004+04 0/0 6/6 0/0 .sbss errno */
|
||||
int errno;
|
||||
@@ -1,27 +0,0 @@
|
||||
//
|
||||
// Generated By: dol2asm
|
||||
// Translation Unit: MSL_Common/Src/errno
|
||||
//
|
||||
|
||||
#include "MSL_C/MSL_Common/Src/errno.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" extern u8 errno[4 + 4 /* padding */];
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 804519A8-804519B0 000EA8 0004+04 0/0 6/6 0/0 .sbss errno */
|
||||
extern u8 errno[4 + 4 /* padding */];
|
||||
u8 errno[4 + 4 /* padding */];
|
||||
@@ -11,15 +11,15 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void strnicmp();
|
||||
extern "C" void stricmp();
|
||||
void strnicmp();
|
||||
void stricmp();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void __msl_strnicmp();
|
||||
extern "C" extern u8 __lower_map[256];
|
||||
void __msl_strnicmp();
|
||||
extern u8 __lower_map[256];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
@@ -11,19 +11,19 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void __msl_strnicmp();
|
||||
extern "C" void fflush();
|
||||
extern "C" void fclose();
|
||||
void __msl_strnicmp();
|
||||
void fflush();
|
||||
void fclose();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void free();
|
||||
extern "C" void __flush_all();
|
||||
extern "C" void __flush_buffer();
|
||||
extern "C" void ftell();
|
||||
extern "C" extern u8 __lower_map[256];
|
||||
void free();
|
||||
void __flush_all();
|
||||
void __flush_buffer();
|
||||
void ftell();
|
||||
extern u8 __lower_map[256];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
@@ -11,11 +11,11 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" extern u32 __float_nan;
|
||||
extern "C" extern u32 __float_huge;
|
||||
extern "C" extern u32 __float_max;
|
||||
extern "C" extern u32 __float_epsilon;
|
||||
extern "C" extern f32 data_80450AF0;
|
||||
extern u32 __float_nan;
|
||||
extern u32 __float_huge;
|
||||
extern u32 __float_max;
|
||||
extern u32 __float_epsilon;
|
||||
extern f32 data_80450AF0;
|
||||
|
||||
//
|
||||
// External References:
|
||||
@@ -11,13 +11,13 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void wcstombs();
|
||||
void wcstombs();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void strncpy();
|
||||
void strncpy();
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
@@ -0,0 +1,124 @@
|
||||
//
|
||||
// Generated By: dol2asm
|
||||
// Translation Unit: MSL_Common/Src/mem
|
||||
//
|
||||
|
||||
#include "MSL_C/MSL_Common/Src/mem.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
unsigned char* __memrchr(unsigned char*, unsigned char, size_t);
|
||||
void* memchr(unsigned char*, int, size_t);
|
||||
void* memmove(void* dst, const void* src, size_t len);
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
void __copy_longs_rev_unaligned(void* dst, const void* src, size_t len);
|
||||
void __copy_longs_unaligned(void* dst, const void* src, size_t len);
|
||||
void __copy_longs_rev_aligned(void* dst, const void* src, size_t len);
|
||||
void __copy_longs_aligned(void* dst, const void* src, size_t len);
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* 8036608C-803660D8 3609CC 004C+00 0/0 19/19 5/5 .text memcmp */
|
||||
int memcmp(const void* __s1, const void* __s2, size_t __n) {
|
||||
const unsigned char* val1 = ((const unsigned char*)__s1 - 1);
|
||||
const unsigned char* val2 = ((const unsigned char*)__s2 - 1);
|
||||
|
||||
size_t size = __n + 1;
|
||||
while (--size > 0) {
|
||||
if (*++val1 != *++val2) {
|
||||
return val1[0] < val2[0] ? -1 : 1;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* 803660D8-80366104 360A18 002C+00 0/0 1/1 0/0 .text __memrchr */
|
||||
unsigned char* __memrchr(unsigned char* s, unsigned char c, size_t n) {
|
||||
int n_count;
|
||||
size_t char_check;
|
||||
|
||||
char_check = (unsigned char)c;
|
||||
s = &s[n];
|
||||
n_count = n + 1;
|
||||
while (--n_count) {
|
||||
if (*--s == char_check) {
|
||||
return s;
|
||||
}
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* 80366104-80366130 360A44 002C+00 0/0 1/1 0/0 .text memchr */
|
||||
void* memchr(unsigned char* s, int c, size_t n) {
|
||||
int n_count;
|
||||
size_t char_check;
|
||||
|
||||
char_check = (unsigned char)c;
|
||||
s = &s[-1];
|
||||
n_count = n + 1;
|
||||
while (--n_count) {
|
||||
if (*++s == char_check) {
|
||||
return s;
|
||||
}
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* 80366130-803661FC 360A70 00CC+00 0/0 2/2 0/0 .text memmove */
|
||||
void* memmove(void* dst, const void* src, size_t len) {
|
||||
unsigned char* csrc;
|
||||
unsigned char* cdst;
|
||||
|
||||
int reverse = (unsigned int)src < (unsigned int)dst;
|
||||
|
||||
if (len >= 32) {
|
||||
if (((unsigned int)dst ^ (unsigned int)src) & 3) {
|
||||
if (!reverse) {
|
||||
__copy_longs_unaligned(dst, src, len);
|
||||
} else {
|
||||
__copy_longs_rev_unaligned(dst, src, len);
|
||||
}
|
||||
} else {
|
||||
if (!reverse) {
|
||||
__copy_longs_aligned(dst, src, len);
|
||||
} else {
|
||||
__copy_longs_rev_aligned(dst, src, len);
|
||||
}
|
||||
}
|
||||
|
||||
return dst;
|
||||
} else {
|
||||
if (!reverse) {
|
||||
csrc = ((unsigned char*)src) - 1;
|
||||
cdst = ((unsigned char*)dst) - 1;
|
||||
len++;
|
||||
|
||||
while (--len > 0) {
|
||||
*++cdst = *++csrc;
|
||||
}
|
||||
} else {
|
||||
csrc = (unsigned char*)src + len;
|
||||
cdst = (unsigned char*)dst + len;
|
||||
len++;
|
||||
|
||||
while (--len > 0) {
|
||||
*--cdst = *--csrc;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return dst;
|
||||
}
|
||||
@@ -1,69 +0,0 @@
|
||||
//
|
||||
// Generated By: dol2asm
|
||||
// Translation Unit: MSL_Common/Src/mem
|
||||
//
|
||||
|
||||
#include "MSL_C/MSL_Common/Src/mem.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void __memrchr();
|
||||
extern "C" void memchr();
|
||||
extern "C" void memmove();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void __copy_longs_rev_unaligned();
|
||||
extern "C" void __copy_longs_unaligned();
|
||||
extern "C" void __copy_longs_rev_aligned();
|
||||
extern "C" void __copy_longs_aligned();
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* 8036608C-803660D8 3609CC 004C+00 0/0 19/19 5/5 .text memcmp */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm int memcmp(const void*, const void*, size_t) {
|
||||
nofralloc
|
||||
#include "asm/MSL_C/MSL_Common/Src/mem/memcmp.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 803660D8-80366104 360A18 002C+00 0/0 1/1 0/0 .text __memrchr */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void __memrchr() {
|
||||
nofralloc
|
||||
#include "asm/MSL_C/MSL_Common/Src/mem/__memrchr.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80366104-80366130 360A44 002C+00 0/0 1/1 0/0 .text memchr */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void memchr() {
|
||||
nofralloc
|
||||
#include "asm/MSL_C/MSL_Common/Src/mem/memchr.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80366130-803661FC 360A70 00CC+00 0/0 2/2 0/0 .text memmove */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void memmove() {
|
||||
nofralloc
|
||||
#include "asm/MSL_C/MSL_Common/Src/mem/memmove.s"
|
||||
}
|
||||
#pragma pop
|
||||
@@ -11,10 +11,10 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void __copy_longs_rev_unaligned();
|
||||
extern "C" void __copy_longs_unaligned();
|
||||
extern "C" void __copy_longs_rev_aligned();
|
||||
extern "C" void __copy_longs_aligned();
|
||||
void __copy_longs_rev_unaligned();
|
||||
void __copy_longs_unaligned();
|
||||
void __copy_longs_rev_aligned();
|
||||
void __copy_longs_aligned();
|
||||
|
||||
//
|
||||
// External References:
|
||||
@@ -11,25 +11,20 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void __stdio_atexit();
|
||||
void __stdio_atexit();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void __close_all();
|
||||
extern "C" extern u8 __stdio_exit[4];
|
||||
void __close_all(void);
|
||||
extern void (*__stdio_exit)(void);
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* 803664CC-803664DC 360E0C 0010+00 0/0 2/2 0/0 .text __stdio_atexit */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void __stdio_atexit() {
|
||||
nofralloc
|
||||
#include "asm/MSL_C/MSL_Common/Src/misc_io/__stdio_atexit.s"
|
||||
void __stdio_atexit() {
|
||||
__stdio_exit = __close_all;
|
||||
}
|
||||
#pragma pop
|
||||
@@ -12,37 +12,37 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void fprintf();
|
||||
extern "C" void __StringWrite();
|
||||
extern "C" void __FileWrite();
|
||||
extern "C" void __pformatter();
|
||||
extern "C" static void float2str();
|
||||
extern "C" static void round_decimal();
|
||||
extern "C" static void double2hex();
|
||||
extern "C" static void longlong2str();
|
||||
extern "C" static void long2str();
|
||||
extern "C" static void parse_format();
|
||||
extern "C" extern char const* const MSL_Common_Src_printf__stringBase0;
|
||||
void fprintf();
|
||||
void __StringWrite();
|
||||
void __FileWrite();
|
||||
void __pformatter();
|
||||
static void float2str();
|
||||
static void round_decimal();
|
||||
static void double2hex();
|
||||
static void longlong2str();
|
||||
static void long2str();
|
||||
static void parse_format();
|
||||
extern char const* const MSL_Common_Src_printf__stringBase0;
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
SECTION_INIT void memcpy();
|
||||
extern "C" void __div2u();
|
||||
extern "C" void __mod2u();
|
||||
extern "C" void __num2dec();
|
||||
extern "C" void __end_critical_region();
|
||||
extern "C" void __begin_critical_region();
|
||||
extern "C" void fwrite();
|
||||
extern "C" void wcstombs();
|
||||
extern "C" void memchr();
|
||||
extern "C" void strchr();
|
||||
extern "C" void strcpy();
|
||||
extern "C" void strlen();
|
||||
extern "C" void fwide();
|
||||
extern "C" extern void* __files[80];
|
||||
extern "C" extern u8 __ctype_map[256];
|
||||
void __div2u();
|
||||
void __mod2u();
|
||||
void __num2dec();
|
||||
void __end_critical_region();
|
||||
void __begin_critical_region();
|
||||
void fwrite();
|
||||
void wcstombs();
|
||||
void memchr();
|
||||
void strchr();
|
||||
void strcpy();
|
||||
void strlen();
|
||||
void fwide();
|
||||
extern void* __files[80];
|
||||
extern u8 __ctype_map[256];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
@@ -11,7 +11,7 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void __StringRead();
|
||||
void __StringRead();
|
||||
|
||||
//
|
||||
// External References:
|
||||
@@ -11,15 +11,15 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void raise();
|
||||
void raise();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void exit();
|
||||
extern "C" void __end_critical_region();
|
||||
extern "C" void __begin_critical_region();
|
||||
void exit();
|
||||
void __end_critical_region();
|
||||
void __begin_critical_region();
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
@@ -0,0 +1,257 @@
|
||||
//
|
||||
// Generated By: dol2asm
|
||||
// Translation Unit: MSL_Common/Src/string
|
||||
//
|
||||
|
||||
#include "MSL_C/MSL_Common/Src/string.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
#define K1 0x80808080
|
||||
#define K2 0xFEFEFEFF
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* 803688DC-80368924 36321C 0048+00 0/0 1/1 0/0 .text strrchr */
|
||||
char* strrchr(const char* str, int chr) {
|
||||
const u8* p = (u8*)str - 1;
|
||||
const u8* q = NULL;
|
||||
u32 c = (chr & 0xFF);
|
||||
|
||||
u32 ch;
|
||||
while (ch = *++p) {
|
||||
if (ch == c) {
|
||||
q = p;
|
||||
}
|
||||
}
|
||||
|
||||
if (q != NULL) {
|
||||
return (char*)q;
|
||||
}
|
||||
|
||||
return c ? NULL : (char*)p;
|
||||
}
|
||||
|
||||
/* 80368924-80368954 363264 0030+00 0/0 3/3 0/0 .text strchr */
|
||||
char* strchr(const char* str, int chr) {
|
||||
const u8* p = (u8*)str - 1;
|
||||
u32 c = (chr & 0xFF);
|
||||
|
||||
u32 ch;
|
||||
while (ch = *++p) {
|
||||
if (ch == c) {
|
||||
return (char*)p;
|
||||
}
|
||||
}
|
||||
|
||||
return c ? NULL : (char*)p;
|
||||
}
|
||||
|
||||
/* 80368954-80368994 363294 0040+00 0/0 6/6 0/0 .text strncmp */
|
||||
int strncmp(const char* strA, const char* strB, u32 n) {
|
||||
const u8* p1 = (u8*)strA - 1;
|
||||
const u8* p2 = (u8*)strB - 1;
|
||||
u32 c1, c2;
|
||||
|
||||
n++;
|
||||
while (--n) {
|
||||
if ((c1 = *++p1) != (c2 = *++p2)) {
|
||||
return c1 - c2;
|
||||
} else if (c1 == 0) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* 80368994-80368ABC 3632D4 0128+00 0/0 155/155 279/279 .text strcmp */
|
||||
int strcmp(const char* strA, const char* strB) {
|
||||
register u8* left = (u8*)strA;
|
||||
register u8* right = (u8*)strB;
|
||||
u32 align, l1, r1, x;
|
||||
|
||||
l1 = *left;
|
||||
r1 = *right;
|
||||
if (l1 - r1) {
|
||||
return l1 - r1;
|
||||
}
|
||||
|
||||
if ((align = ((int)left & 3)) != ((int)right & 3)) {
|
||||
goto bytecopy;
|
||||
}
|
||||
|
||||
if (align) {
|
||||
if (l1 == 0) {
|
||||
return 0;
|
||||
}
|
||||
for (align = 3 - align; align; align--) {
|
||||
l1 = *(++left);
|
||||
r1 = *(++right);
|
||||
if (l1 - r1) {
|
||||
return l1 - r1;
|
||||
}
|
||||
if (l1 == 0) {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
left++;
|
||||
right++;
|
||||
}
|
||||
|
||||
l1 = *(int*)left;
|
||||
r1 = *(int*)right;
|
||||
x = l1 + K2;
|
||||
if (x & K1) {
|
||||
goto adjust;
|
||||
}
|
||||
|
||||
while (l1 == r1) {
|
||||
l1 = *(++((int*)(left)));
|
||||
r1 = *(++((int*)(right)));
|
||||
x = l1 + K2;
|
||||
if (x & K1) {
|
||||
goto adjust;
|
||||
}
|
||||
}
|
||||
|
||||
if (l1 > r1) {
|
||||
return 1;
|
||||
}
|
||||
return -1;
|
||||
|
||||
adjust:
|
||||
l1 = *left;
|
||||
r1 = *right;
|
||||
if (l1 - r1) {
|
||||
return l1 - r1;
|
||||
}
|
||||
|
||||
bytecopy:
|
||||
if (l1 == 0) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
do {
|
||||
l1 = *(++left);
|
||||
r1 = *(++right);
|
||||
if (l1 - r1) {
|
||||
return l1 - r1;
|
||||
}
|
||||
if (l1 == 0) {
|
||||
return 0;
|
||||
}
|
||||
} while (1);
|
||||
}
|
||||
|
||||
/* 80368ABC-80368AE8 3633FC 002C+00 0/0 20/20 8/8 .text strcat */
|
||||
char* strcat(char* dst, const char* src) {
|
||||
const u8* p = (u8*)src - 1;
|
||||
u8* q = (u8*)dst - 1;
|
||||
|
||||
while (*++q) {
|
||||
}
|
||||
|
||||
q--;
|
||||
|
||||
while (*++q = *++p) {
|
||||
}
|
||||
|
||||
return dst;
|
||||
}
|
||||
|
||||
/* 80368AE8-80368B2C 363428 0044+00 0/0 9/9 1/1 .text strncpy */
|
||||
char* strncpy(char* dst, const char* src, size_t n) {
|
||||
const u8* p = (const u8*)src - 1;
|
||||
u8* q = (u8*)dst - 1;
|
||||
|
||||
n++;
|
||||
while (--n) {
|
||||
if (!(*++q = *++p)) {
|
||||
while (--n) {
|
||||
*++q = 0;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return dst;
|
||||
}
|
||||
|
||||
/* 80368B2C-80368BE4 36346C 00B8+00 0/0 131/131 13/13 .text strcpy */
|
||||
char* strcpy(char* dst, const char* src) {
|
||||
register u8 *destb, *fromb;
|
||||
register u32 w, t, align;
|
||||
|
||||
fromb = (u8*)src;
|
||||
destb = (u8*)dst;
|
||||
|
||||
if ((align = ((int)fromb & 3)) != ((int)destb & 3)) {
|
||||
goto bytecopy;
|
||||
}
|
||||
|
||||
if (align) {
|
||||
if ((*destb = *fromb) == 0) {
|
||||
return dst;
|
||||
}
|
||||
|
||||
for (align = 3 - align; align; align--) {
|
||||
if ((*(++destb) = *(++fromb)) == 0) {
|
||||
return dst;
|
||||
}
|
||||
}
|
||||
++destb;
|
||||
++fromb;
|
||||
}
|
||||
|
||||
w = *((int*)(fromb));
|
||||
|
||||
t = w + K2;
|
||||
|
||||
t &= K1;
|
||||
if (t) {
|
||||
goto bytecopy;
|
||||
}
|
||||
--((int*)(destb));
|
||||
|
||||
do {
|
||||
*(++((int*)(destb))) = w;
|
||||
w = *(++((int*)(fromb)));
|
||||
|
||||
t = w + K2;
|
||||
t &= K1;
|
||||
if (t) {
|
||||
goto adjust;
|
||||
}
|
||||
} while (1);
|
||||
|
||||
adjust:
|
||||
++((int*)(destb));
|
||||
|
||||
bytecopy:
|
||||
if ((*destb = *fromb) == 0) {
|
||||
return dst;
|
||||
}
|
||||
|
||||
do {
|
||||
if ((*(++destb) = *(++fromb)) == 0) {
|
||||
return dst;
|
||||
}
|
||||
} while (1);
|
||||
|
||||
return dst;
|
||||
}
|
||||
|
||||
/* 80368BE4-80368C00 363524 001C+00 0/0 28/28 8/8 .text strlen */
|
||||
u32 strlen(const char* str) {
|
||||
size_t len = -1;
|
||||
u8* p = (u8*)str - 1;
|
||||
|
||||
do {
|
||||
len++;
|
||||
} while (*++p);
|
||||
|
||||
return len;
|
||||
}
|
||||
@@ -1,98 +0,0 @@
|
||||
//
|
||||
// Generated By: dol2asm
|
||||
// Translation Unit: MSL_Common/Src/string
|
||||
//
|
||||
|
||||
#include "MSL_C/MSL_Common/Src/string.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void _epilog();
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* 803688DC-80368924 36321C 0048+00 0/0 1/1 0/0 .text strrchr */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm char* strrchr(const char*, int) {
|
||||
nofralloc
|
||||
#include "asm/MSL_C/MSL_Common/Src/string/strrchr.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80368924-80368954 363264 0030+00 0/0 3/3 0/0 .text strchr */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm char* strchr(const char*, int) {
|
||||
nofralloc
|
||||
#include "asm/MSL_C/MSL_Common/Src/string/strchr.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80368954-80368994 363294 0040+00 0/0 6/6 0/0 .text strncmp */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm int strncmp(const char*, const char*, u32) {
|
||||
nofralloc
|
||||
#include "asm/MSL_C/MSL_Common/Src/string/strncmp.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80368994-80368ABC 3632D4 0128+00 0/0 155/155 279/279 .text strcmp */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm int strcmp(const char*, const char*) {
|
||||
nofralloc
|
||||
#include "asm/MSL_C/MSL_Common/Src/string/strcmp.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80368ABC-80368AE8 3633FC 002C+00 0/0 20/20 8/8 .text strcat */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm char* strcat(char*, const char*) {
|
||||
nofralloc
|
||||
#include "asm/MSL_C/MSL_Common/Src/string/strcat.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80368AE8-80368B2C 363428 0044+00 0/0 9/9 1/1 .text strncpy */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm char* strncpy(char*, const char*, u32) {
|
||||
nofralloc
|
||||
#include "asm/MSL_C/MSL_Common/Src/string/strncpy.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80368B2C-80368BE4 36346C 00B8+00 0/0 131/131 13/13 .text strcpy */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm char* strcpy(char*, const char*) {
|
||||
nofralloc
|
||||
#include "asm/MSL_C/MSL_Common/Src/string/strcpy.s"
|
||||
}
|
||||
#pragma pop
|
||||
|
||||
/* 80368BE4-80368C00 363524 001C+00 0/0 28/28 8/8 .text strlen */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm u32 strlen(const char*) {
|
||||
nofralloc
|
||||
#include "asm/MSL_C/MSL_Common/Src/string/strlen.s"
|
||||
}
|
||||
#pragma pop
|
||||
@@ -11,18 +11,18 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void strtol();
|
||||
extern "C" void strtoul();
|
||||
extern "C" void __strtoul();
|
||||
void strtol();
|
||||
void strtoul();
|
||||
void __strtoul();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void __StringRead();
|
||||
extern "C" extern u8 __ctype_map[256];
|
||||
extern "C" extern u8 __upper_map[256];
|
||||
extern "C" extern u8 errno[4 + 4 /* padding */];
|
||||
void __StringRead();
|
||||
extern u8 __ctype_map[256];
|
||||
extern u8 __upper_map[256];
|
||||
extern u8 errno[4 + 4 /* padding */];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
@@ -0,0 +1,44 @@
|
||||
//
|
||||
// Generated By: dol2asm
|
||||
// Translation Unit: MSL_Common/Src/wchar_io
|
||||
//
|
||||
|
||||
#include "MSL_C/MSL_Common/Src/wchar_io.h"
|
||||
#include "MSL_C/MSL_Common/Src/ansi_files.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
int fwide(FILE* file, int mode);
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* 80369114-8036919C 363A54 0088+00 0/0 5/5 0/0 .text fwide */
|
||||
int fwide(FILE* file, int mode) {
|
||||
if (file == NULL || file->file_mode.file_kind == CLOSED_FILE) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
switch (file->file_mode.file_orientation) {
|
||||
case UNORIENTED:
|
||||
if (mode > 0) {
|
||||
file->file_mode.file_orientation = WIDE_ORIENTED;
|
||||
} else if (mode < 0) {
|
||||
file->file_mode.file_orientation = CHAR_ORIENTED;
|
||||
}
|
||||
return mode;
|
||||
case WIDE_ORIENTED:
|
||||
return 1;
|
||||
case CHAR_ORIENTED:
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
@@ -1,32 +0,0 @@
|
||||
//
|
||||
// Generated By: dol2asm
|
||||
// Translation Unit: MSL_Common/Src/wchar_io
|
||||
//
|
||||
|
||||
#include "MSL_C/MSL_Common/Src/wchar_io.h"
|
||||
#include "dol2asm.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void fwide();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* 80369114-8036919C 363A54 0088+00 0/0 5/5 0/0 .text fwide */
|
||||
#pragma push
|
||||
#pragma optimization_level 0
|
||||
#pragma optimizewithasm off
|
||||
asm void fwide() {
|
||||
nofralloc
|
||||
#include "asm/MSL_C/MSL_Common/Src/wchar_io/fwide.s"
|
||||
}
|
||||
#pragma pop
|
||||
+11
-11
@@ -11,22 +11,22 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void __num2dec();
|
||||
extern "C" void __num2dec_internal();
|
||||
extern "C" void __two_exp();
|
||||
extern "C" void __timesdec();
|
||||
extern "C" extern char const* const MSL_Common_Embedded_Src_ansi_fp__stringBase0;
|
||||
void __num2dec();
|
||||
void __num2dec_internal();
|
||||
void __two_exp();
|
||||
void __timesdec();
|
||||
extern char const* const MSL_Common_Embedded_Src_ansi_fp__stringBase0;
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void __div2u();
|
||||
extern "C" void __mod2u();
|
||||
extern "C" void __cvt_dbl_usll();
|
||||
extern "C" void frexp();
|
||||
extern "C" void ldexp();
|
||||
extern "C" void modf();
|
||||
void __div2u();
|
||||
void __mod2u();
|
||||
void __cvt_dbl_usll();
|
||||
void frexp();
|
||||
void ldexp();
|
||||
void modf();
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
+61
-59
@@ -3,62 +3,62 @@
|
||||
#
|
||||
|
||||
LIBMSL_C_PPCEABI_BARE_H_A_CPP_FILES := \
|
||||
libs/MSL_C/MSL_Common/Src/abort_exit.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/alloc.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/errno.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/ansi_files.cpp \
|
||||
libs/MSL_C/MSL_Common_Embedded/Src/ansi_fp.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/arith.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/buffer_io.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/char_io.cpp \
|
||||
libs/MSL_C/PPC_EABI/Src/critical_regions.gamecube.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/ctype.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/direct_io.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/file_io.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/FILE_POS.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/mbstring.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/mem.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/mem_funcs.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/misc_io.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/printf.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/scanf.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/float.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/signal.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/string.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/strtoul.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/wchar_io.cpp \
|
||||
libs/MSL_C/PPC_EABI/Src/uart_console_io_gcn.cpp \
|
||||
libs/MSL_C/Math/Double_precision/e_acos.cpp \
|
||||
libs/MSL_C/Math/Double_precision/e_asin.cpp \
|
||||
libs/MSL_C/Math/Double_precision/e_atan2.cpp \
|
||||
libs/MSL_C/Math/Double_precision/e_exp.cpp \
|
||||
libs/MSL_C/Math/Double_precision/e_fmod.cpp \
|
||||
libs/MSL_C/Math/Double_precision/e_pow.cpp \
|
||||
libs/MSL_C/Math/Double_precision/e_rem_pio2.cpp \
|
||||
libs/MSL_C/Math/Double_precision/k_cos.cpp \
|
||||
libs/MSL_C/Math/Double_precision/k_rem_pio2.cpp \
|
||||
libs/MSL_C/Math/Double_precision/k_sin.cpp \
|
||||
libs/MSL_C/Math/Double_precision/k_tan.cpp \
|
||||
libs/MSL_C/Math/Double_precision/s_atan.cpp \
|
||||
libs/MSL_C/Math/Double_precision/s_ceil.cpp \
|
||||
libs/MSL_C/Math/Double_precision/s_copysign.cpp \
|
||||
libs/MSL_C/Math/Double_precision/s_cos.cpp \
|
||||
libs/MSL_C/Math/Double_precision/s_floor.cpp \
|
||||
libs/MSL_C/Math/Double_precision/s_frexp.cpp \
|
||||
libs/MSL_C/Math/Double_precision/s_ldexp.cpp \
|
||||
libs/MSL_C/Math/Double_precision/s_modf.cpp \
|
||||
libs/MSL_C/Math/Double_precision/s_sin.cpp \
|
||||
libs/MSL_C/Math/Double_precision/s_tan.cpp \
|
||||
libs/MSL_C/Math/Double_precision/w_acos.cpp \
|
||||
libs/MSL_C/Math/Double_precision/w_asin.cpp \
|
||||
libs/MSL_C/Math/Double_precision/w_atan2.cpp \
|
||||
libs/MSL_C/Math/Double_precision/w_exp.cpp \
|
||||
libs/MSL_C/Math/Double_precision/w_fmod.cpp \
|
||||
libs/MSL_C/Math/Double_precision/w_pow.cpp \
|
||||
libs/MSL_C/Math/Double_precision/e_sqrt.cpp \
|
||||
libs/MSL_C/PPC_EABI/Src/math_ppc.cpp \
|
||||
libs/MSL_C/Math/Double_precision/w_sqrt.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/extras.cpp \
|
||||
libs/MSL_C/MSL_Common/Src/abort_exit.c \
|
||||
libs/MSL_C/MSL_Common/Src/alloc.c \
|
||||
libs/MSL_C/MSL_Common/Src/errno.c \
|
||||
libs/MSL_C/MSL_Common/Src/ansi_files.c \
|
||||
libs/MSL_C/MSL_Common_Embedded/Src/ansi_fp.c \
|
||||
libs/MSL_C/MSL_Common/Src/arith.c \
|
||||
libs/MSL_C/MSL_Common/Src/buffer_io.c \
|
||||
libs/MSL_C/MSL_Common/Src/char_io.c \
|
||||
libs/MSL_C/PPC_EABI/Src/critical_regions.gamecube.c \
|
||||
libs/MSL_C/MSL_Common/Src/ctype.c \
|
||||
libs/MSL_C/MSL_Common/Src/direct_io.c \
|
||||
libs/MSL_C/MSL_Common/Src/file_io.c \
|
||||
libs/MSL_C/MSL_Common/Src/FILE_POS.c \
|
||||
libs/MSL_C/MSL_Common/Src/mbstring.c \
|
||||
libs/MSL_C/MSL_Common/Src/mem.c \
|
||||
libs/MSL_C/MSL_Common/Src/mem_funcs.c \
|
||||
libs/MSL_C/MSL_Common/Src/misc_io.c \
|
||||
libs/MSL_C/MSL_Common/Src/printf.c \
|
||||
libs/MSL_C/MSL_Common/Src/scanf.c \
|
||||
libs/MSL_C/MSL_Common/Src/float.c \
|
||||
libs/MSL_C/MSL_Common/Src/signal.c \
|
||||
libs/MSL_C/MSL_Common/Src/string.c \
|
||||
libs/MSL_C/MSL_Common/Src/strtoul.c \
|
||||
libs/MSL_C/MSL_Common/Src/wchar_io.c \
|
||||
libs/MSL_C/PPC_EABI/Src/uart_console_io_gcn.c \
|
||||
libs/MSL_C/Math/Double_precision/e_acos.c \
|
||||
libs/MSL_C/Math/Double_precision/e_asin.c \
|
||||
libs/MSL_C/Math/Double_precision/e_atan2.c \
|
||||
libs/MSL_C/Math/Double_precision/e_exp.c \
|
||||
libs/MSL_C/Math/Double_precision/e_fmod.c \
|
||||
libs/MSL_C/Math/Double_precision/e_pow.c \
|
||||
libs/MSL_C/Math/Double_precision/e_rem_pio2.c \
|
||||
libs/MSL_C/Math/Double_precision/k_cos.c \
|
||||
libs/MSL_C/Math/Double_precision/k_rem_pio2.c \
|
||||
libs/MSL_C/Math/Double_precision/k_sin.c \
|
||||
libs/MSL_C/Math/Double_precision/k_tan.c \
|
||||
libs/MSL_C/Math/Double_precision/s_atan.c \
|
||||
libs/MSL_C/Math/Double_precision/s_ceil.c \
|
||||
libs/MSL_C/Math/Double_precision/s_copysign.c \
|
||||
libs/MSL_C/Math/Double_precision/s_cos.c \
|
||||
libs/MSL_C/Math/Double_precision/s_floor.c \
|
||||
libs/MSL_C/Math/Double_precision/s_frexp.c \
|
||||
libs/MSL_C/Math/Double_precision/s_ldexp.c \
|
||||
libs/MSL_C/Math/Double_precision/s_modf.c \
|
||||
libs/MSL_C/Math/Double_precision/s_sin.c \
|
||||
libs/MSL_C/Math/Double_precision/s_tan.c \
|
||||
libs/MSL_C/Math/Double_precision/w_acos.c \
|
||||
libs/MSL_C/Math/Double_precision/w_asin.c \
|
||||
libs/MSL_C/Math/Double_precision/w_atan2.c \
|
||||
libs/MSL_C/Math/Double_precision/w_exp.c \
|
||||
libs/MSL_C/Math/Double_precision/w_fmod.c \
|
||||
libs/MSL_C/Math/Double_precision/w_pow.c \
|
||||
libs/MSL_C/Math/Double_precision/e_sqrt.c \
|
||||
libs/MSL_C/PPC_EABI/Src/math_ppc.c \
|
||||
libs/MSL_C/Math/Double_precision/w_sqrt.c \
|
||||
libs/MSL_C/MSL_Common/Src/extras.c \
|
||||
|
||||
LIBMSL_C_PPCEABI_BARE_H_A_O_FILES := \
|
||||
$(BUILD_DIR)/libs/MSL_C/MSL_Common/Src/abort_exit.o \
|
||||
@@ -119,6 +119,8 @@ LIBMSL_C_PPCEABI_BARE_H_A_O_FILES := \
|
||||
$(BUILD_DIR)/libs/MSL_C/MSL_Common/Src/extras.o \
|
||||
|
||||
LIBMSL_C_PPCEABI_BARE_H_A_CFLAGS := \
|
||||
-O4,p \
|
||||
-lang=c \
|
||||
|
||||
LIBMSL_C_PPCEABI_BARE_H_A_LDFLAGS := \
|
||||
-nodefaults \
|
||||
@@ -131,9 +133,9 @@ $(BUILD_DIR)/libMSL_C.a: $(LIBMSL_C_PPCEABI_BARE_H_A_O_FILES)
|
||||
@echo $(LIBMSL_C_PPCEABI_BARE_H_A_O_FILES) > build/LIBMSL_C_PPCEABI_BARE_H_A_ofiles
|
||||
@$(LD) -xm l $(LIBMSL_C_PPCEABI_BARE_H_A_LDFLAGS) -o $(BUILD_DIR)/libMSL_C.a @build/LIBMSL_C_PPCEABI_BARE_H_A_ofiles
|
||||
|
||||
$(BUILD_DIR)/libs/MSL_C/%.o: libs/MSL_C/%.cpp
|
||||
$(BUILD_DIR)/libs/MSL_C/%.o: libs/MSL_C/%.c
|
||||
@mkdir -p $(@D)
|
||||
@echo building... $<
|
||||
@$(ICONV) -f UTF-8 -t CP932 < $< > $(basename $@).cpp
|
||||
@$(CC) $(CFLAGS) $(LIBMSL_C_PPCEABI_BARE_H_A_CFLAGS) -c -o $@ $(basename $@).cpp
|
||||
@$(ICONV) -f UTF-8 -t CP932 < $< > $(basename $@).c
|
||||
@$(CC) $(CFLAGS) $(LIBMSL_C_PPCEABI_BARE_H_A_CFLAGS) -c -o $@ $(basename $@).c
|
||||
|
||||
|
||||
+3
-3
@@ -11,14 +11,14 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void __ieee754_acos();
|
||||
void __ieee754_acos();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void sqrt();
|
||||
extern "C" extern u32 __float_nan;
|
||||
void sqrt();
|
||||
extern u32 __float_nan;
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
+3
-3
@@ -11,14 +11,14 @@
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void __ieee754_asin();
|
||||
void __ieee754_asin();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void sqrt();
|
||||
extern "C" extern u32 __float_nan;
|
||||
void sqrt();
|
||||
extern u32 __float_nan;
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user