donut-decomp/asm/libnw4r_g3d/g3d_init.s

113 lines
4.4 KiB
ArmAsm

.include "macros.inc"
.section .text, "ax" # 0x80006A00 - 0x80406260 ; 0x003FF860
.global G3dInit__Q24nw4r3g3dFb
G3dInit__Q24nw4r3g3dFb:
/* 800F16B0 000ED4F0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 800F16B4 000ED4F4 7C 08 02 A6 */ mflr r0
/* 800F16B8 000ED4F8 90 01 00 14 */ stw r0, 0x14(r1)
/* 800F16BC 000ED4FC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 800F16C0 000ED500 7C 7F 1B 78 */ mr r31, r3
/* 800F16C4 000ED504 80 6D 86 20 */ lwz r3, "NW4R_G3D_Version___22@unnamed@g3d_init_cpp@"@sda21(r13)
/* 800F16C8 000ED508 4B F2 A0 19 */ bl OSRegisterVersion
/* 800F16CC 000ED50C 2C 1F 00 00 */ cmpwi r31, 0x0
/* 800F16D0 000ED510 41 82 00 0C */ beq lbl_800F16DC
/* 800F16D4 000ED514 48 02 FB BD */ bl Enable__Q34nw4r2ut2LCFv
/* 800F16D8 000ED518 48 00 00 08 */ b lbl_800F16E0
.global lbl_800F16DC
lbl_800F16DC:
/* 800F16DC 000ED51C 48 02 FC 15 */ bl Disable__Q34nw4r2ut2LCFv
.global lbl_800F16E0
lbl_800F16E0:
/* 800F16E0 000ED520 38 60 00 04 */ li r3, 0x4
/* 800F16E4 000ED524 64 63 00 04 */ oris r3, r3, 0x4
/* 800F16E8 000ED528 7C 72 E3 A6 */ mtspr GQR2, r3
/* 800F16EC 000ED52C 38 60 00 05 */ li r3, 0x5
/* 800F16F0 000ED530 64 63 00 05 */ oris r3, r3, 0x5
/* 800F16F4 000ED534 7C 73 E3 A6 */ mtspr GQR3, r3
/* 800F16F8 000ED538 38 60 00 06 */ li r3, 0x6
/* 800F16FC 000ED53C 64 63 00 06 */ oris r3, r3, 0x6
/* 800F1700 000ED540 7C 74 E3 A6 */ mtspr GQR4, r3
/* 800F1704 000ED544 38 60 00 07 */ li r3, 0x7
/* 800F1708 000ED548 64 63 00 07 */ oris r3, r3, 0x7
/* 800F170C 000ED54C 7C 75 E3 A6 */ mtspr GQR5, r3
/* 800F1710 000ED550 3C 80 05 07 */ lis r4, 0x507
/* 800F1714 000ED554 38 04 05 07 */ addi r0, r4, 0x507
/* 800F1718 000ED558 7C 16 E3 A6 */ mtspr GQR6, r0
/* 800F171C 000ED55C 3C 80 08 07 */ lis r4, 0x807
/* 800F1720 000ED560 38 04 08 07 */ addi r0, r4, 0x807
/* 800F1724 000ED564 7C 17 E3 A6 */ mtspr GQR7, r0
/* 800F1728 000ED568 4B F3 C8 E9 */ bl VIGetTvFormat
/* 800F172C 000ED56C 2C 03 00 00 */ cmpwi r3, 0x0
/* 800F1730 000ED570 41 82 00 20 */ beq lbl_800F1750
/* 800F1734 000ED574 28 03 00 01 */ cmplwi r3, 0x1
/* 800F1738 000ED578 41 82 00 24 */ beq lbl_800F175C
/* 800F173C 000ED57C 28 03 00 05 */ cmplwi r3, 0x5
/* 800F1740 000ED580 41 82 00 28 */ beq lbl_800F1768
/* 800F1744 000ED584 28 03 00 02 */ cmplwi r3, 0x2
/* 800F1748 000ED588 41 82 00 2C */ beq lbl_800F1774
/* 800F174C 000ED58C 48 00 00 34 */ b lbl_800F1780
.global lbl_800F1750
lbl_800F1750:
/* 800F1750 000ED590 3C 60 80 43 */ lis r3, GXNtsc480IntDf@ha
/* 800F1754 000ED594 38 63 0C 60 */ addi r3, r3, GXNtsc480IntDf@l
/* 800F1758 000ED598 48 00 00 30 */ b lbl_800F1788
.global lbl_800F175C
lbl_800F175C:
/* 800F175C 000ED59C 3C 60 80 43 */ lis r3, GXPal528IntDf@ha
/* 800F1760 000ED5A0 38 63 0C D8 */ addi r3, r3, GXPal528IntDf@l
/* 800F1764 000ED5A4 48 00 00 24 */ b lbl_800F1788
.global lbl_800F1768
lbl_800F1768:
/* 800F1768 000ED5A8 3C 60 80 43 */ lis r3, GXEurgb60Hz480IntDf@ha
/* 800F176C 000ED5AC 38 63 0D 14 */ addi r3, r3, GXEurgb60Hz480IntDf@l
/* 800F1770 000ED5B0 48 00 00 18 */ b lbl_800F1788
.global lbl_800F1774
lbl_800F1774:
/* 800F1774 000ED5B4 3C 60 80 43 */ lis r3, GXMpal480IntDf@ha
/* 800F1778 000ED5B8 38 63 0C 9C */ addi r3, r3, GXMpal480IntDf@l
/* 800F177C 000ED5BC 48 00 00 0C */ b lbl_800F1788
.global lbl_800F1780
lbl_800F1780:
/* 800F1780 000ED5C0 3C 60 80 43 */ lis r3, GXNtsc480IntDf@ha
/* 800F1784 000ED5C4 38 63 0C 60 */ addi r3, r3, GXNtsc480IntDf@l
.global lbl_800F1788
lbl_800F1788:
/* 800F1788 000ED5C8 4B FE E0 89 */ bl SetRenderModeObj__Q34nw4r3g3d8G3DStateFRC16_GXRenderModeObj
/* 800F178C 000ED5CC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 800F1790 000ED5D0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 800F1794 000ED5D4 7C 08 03 A6 */ mtlr r0
/* 800F1798 000ED5D8 38 21 00 10 */ addi r1, r1, 0x10
/* 800F179C 000ED5DC 4E 80 00 20 */ blr
.include "macros.inc"
.section .data, "wa" # 0x80421040 - 0x80496700 ; 0x000756C0
.global "@8056"
"@8056":
.4byte 0x3C3C204E
.4byte 0x57345220
.4byte 0x2020202D
.4byte 0x20473344
.4byte 0x20096669
.4byte 0x6E616C20
.4byte 0x20206275
.4byte 0x696C643A
.4byte 0x20417072
.4byte 0x20323820
.4byte 0x32303131
.4byte 0x2031313A
.4byte 0x30353A35
.4byte 0x38202830
.4byte 0x78343330
.4byte 0x325F3138
.4byte 0x3829203E
.4byte 0x3E000000
.include "macros.inc"
.section .sdata, "wa" # 0x80556420 - 0x8055C6E0 ; 0x000062C0
.global "NW4R_G3D_Version___22@unnamed@g3d_init_cpp@"
"NW4R_G3D_Version___22@unnamed@g3d_init_cpp@":
.4byte "@8056"
.4byte 0