mirror of
https://github.com/encounter/oot-gc.git
synced 2026-03-30 11:33:44 -07:00
1465 lines
68 KiB
ArmAsm
1465 lines
68 KiB
ArmAsm
# GXInit.c
|
|
.include "macros.inc"
|
|
|
|
.section .text, "ax"
|
|
|
|
.balign 4
|
|
|
|
__GXDefaultTexRegionCallback:
|
|
/* 0A2CE4 800A8284 7C0802A6 */ mflr r0
|
|
/* 0A2CE8 800A8288 90010004 */ stw r0, 4(r1)
|
|
/* 0A2CEC 800A828C 9421FFE0 */ stwu r1, -0x20(r1)
|
|
/* 0A2CF0 800A8290 93E1001C */ stw r31, 0x1c(r1)
|
|
/* 0A2CF4 800A8294 93C10018 */ stw r30, 0x18(r1)
|
|
/* 0A2CF8 800A8298 93A10014 */ stw r29, 0x14(r1)
|
|
/* 0A2CFC 800A829C 7C7D1B78 */ mr r29, r3
|
|
/* 0A2D00 800A82A0 7C9E2378 */ mr r30, r4
|
|
/* 0A2D04 800A82A4 7FA3EB78 */ mr r3, r29
|
|
/* 0A2D08 800A82A8 480048F5 */ bl GXGetTexObjFmt
|
|
/* 0A2D0C 800A82AC 7C7F1B78 */ mr r31, r3
|
|
/* 0A2D10 800A82B0 7FA3EB78 */ mr r3, r29
|
|
/* 0A2D14 800A82B4 480048F1 */ bl GXGetTexObjMipMap
|
|
/* 0A2D18 800A82B8 7FC41E70 */ srawi r4, r30, 3
|
|
/* 0A2D1C 800A82BC 7C840194 */ addze r4, r4
|
|
/* 0A2D20 800A82C0 54841838 */ slwi r4, r4, 3
|
|
/* 0A2D24 800A82C4 2C1F0007 */ cmpwi r31, 7
|
|
/* 0A2D28 800A82C8 7C84F010 */ subfc r4, r4, r30
|
|
/* 0A2D2C 800A82CC 41820068 */ beq lbl_800A8334
|
|
/* 0A2D30 800A82D0 40800010 */ bge lbl_800A82E0
|
|
/* 0A2D34 800A82D4 2C1F0006 */ cmpwi r31, 6
|
|
/* 0A2D38 800A82D8 40800014 */ bge lbl_800A82EC
|
|
/* 0A2D3C 800A82DC 48000058 */ b lbl_800A8334
|
|
lbl_800A82E0:
|
|
/* 0A2D40 800A82E0 2C1F000B */ cmpwi r31, 0xb
|
|
/* 0A2D44 800A82E4 40800050 */ bge lbl_800A8334
|
|
/* 0A2D48 800A82E8 48000038 */ b lbl_800A8320
|
|
lbl_800A82EC:
|
|
/* 0A2D4C 800A82EC 5460063E */ clrlwi r0, r3, 0x18
|
|
/* 0A2D50 800A82F0 28000000 */ cmplwi r0, 0
|
|
/* 0A2D54 800A82F4 41820018 */ beq lbl_800A830C
|
|
/* 0A2D58 800A82F8 54832036 */ slwi r3, r4, 4
|
|
/* 0A2D5C 800A82FC 80028400 */ lwz r0, __GXData@sda21(r2)
|
|
/* 0A2D60 800A8300 38630308 */ addi r3, r3, 0x308
|
|
/* 0A2D64 800A8304 7C601A14 */ add r3, r0, r3
|
|
/* 0A2D68 800A8308 4800005C */ b lbl_800A8364
|
|
lbl_800A830C:
|
|
/* 0A2D6C 800A830C 54832036 */ slwi r3, r4, 4
|
|
/* 0A2D70 800A8310 80028400 */ lwz r0, __GXData@sda21(r2)
|
|
/* 0A2D74 800A8314 38630288 */ addi r3, r3, 0x288
|
|
/* 0A2D78 800A8318 7C601A14 */ add r3, r0, r3
|
|
/* 0A2D7C 800A831C 48000048 */ b lbl_800A8364
|
|
lbl_800A8320:
|
|
/* 0A2D80 800A8320 54832036 */ slwi r3, r4, 4
|
|
/* 0A2D84 800A8324 80028400 */ lwz r0, __GXData@sda21(r2)
|
|
/* 0A2D88 800A8328 38630208 */ addi r3, r3, 0x208
|
|
/* 0A2D8C 800A832C 7C601A14 */ add r3, r0, r3
|
|
/* 0A2D90 800A8330 48000034 */ b lbl_800A8364
|
|
lbl_800A8334:
|
|
/* 0A2D94 800A8334 5460063E */ clrlwi r0, r3, 0x18
|
|
/* 0A2D98 800A8338 28000000 */ cmplwi r0, 0
|
|
/* 0A2D9C 800A833C 41820018 */ beq lbl_800A8354
|
|
/* 0A2DA0 800A8340 54832036 */ slwi r3, r4, 4
|
|
/* 0A2DA4 800A8344 80028400 */ lwz r0, __GXData@sda21(r2)
|
|
/* 0A2DA8 800A8348 38630288 */ addi r3, r3, 0x288
|
|
/* 0A2DAC 800A834C 7C601A14 */ add r3, r0, r3
|
|
/* 0A2DB0 800A8350 48000014 */ b lbl_800A8364
|
|
lbl_800A8354:
|
|
/* 0A2DB4 800A8354 54832036 */ slwi r3, r4, 4
|
|
/* 0A2DB8 800A8358 80028400 */ lwz r0, __GXData@sda21(r2)
|
|
/* 0A2DBC 800A835C 38630208 */ addi r3, r3, 0x208
|
|
/* 0A2DC0 800A8360 7C601A14 */ add r3, r0, r3
|
|
lbl_800A8364:
|
|
/* 0A2DC4 800A8364 80010024 */ lwz r0, 0x24(r1)
|
|
/* 0A2DC8 800A8368 83E1001C */ lwz r31, 0x1c(r1)
|
|
/* 0A2DCC 800A836C 83C10018 */ lwz r30, 0x18(r1)
|
|
/* 0A2DD0 800A8370 83A10014 */ lwz r29, 0x14(r1)
|
|
/* 0A2DD4 800A8374 38210020 */ addi r1, r1, 0x20
|
|
/* 0A2DD8 800A8378 7C0803A6 */ mtlr r0
|
|
/* 0A2DDC 800A837C 4E800020 */ blr
|
|
|
|
__GXDefaultTlutRegionCallback:
|
|
/* 0A2DE0 800A8380 28030014 */ cmplwi r3, 0x14
|
|
/* 0A2DE4 800A8384 4180000C */ blt lbl_800A8390
|
|
/* 0A2DE8 800A8388 38600000 */ li r3, 0
|
|
/* 0A2DEC 800A838C 48000014 */ b lbl_800A83A0
|
|
lbl_800A8390:
|
|
/* 0A2DF0 800A8390 54632036 */ slwi r3, r3, 4
|
|
/* 0A2DF4 800A8394 80028400 */ lwz r0, __GXData@sda21(r2)
|
|
/* 0A2DF8 800A8398 38630388 */ addi r3, r3, 0x388
|
|
/* 0A2DFC 800A839C 7C601A14 */ add r3, r0, r3
|
|
lbl_800A83A0:
|
|
/* 0A2E00 800A83A0 4E800020 */ blr
|
|
|
|
__GXShutdown:
|
|
/* 0A2E04 800A83A4 7C0802A6 */ mflr r0
|
|
/* 0A2E08 800A83A8 90010004 */ stw r0, 4(r1)
|
|
/* 0A2E0C 800A83AC 9421FFE0 */ stwu r1, -0x20(r1)
|
|
/* 0A2E10 800A83B0 93E1001C */ stw r31, 0x1c(r1)
|
|
/* 0A2E14 800A83B4 2C030000 */ cmpwi r3, 0
|
|
/* 0A2E18 800A83B8 408200FC */ bne lbl_800A84B4
|
|
/* 0A2E1C 800A83BC 800D8C58 */ lwz r0, calledOnce$37@sda21(r13)
|
|
/* 0A2E20 800A83C0 28000000 */ cmplwi r0, 0
|
|
/* 0A2E24 800A83C4 40820058 */ bne lbl_800A841C
|
|
/* 0A2E28 800A83C8 806D8C44 */ lwz r3, __memReg@sda21(r13)
|
|
/* 0A2E2C 800A83CC 38C3004E */ addi r6, r3, 0x4e
|
|
/* 0A2E30 800A83D0 A0860000 */ lhz r4, 0(r6)
|
|
/* 0A2E34 800A83D4 38A30050 */ addi r5, r3, 0x50
|
|
/* 0A2E38 800A83D8 48000004 */ b lbl_800A83DC
|
|
lbl_800A83DC:
|
|
/* 0A2E3C 800A83DC 48000004 */ b lbl_800A83E0
|
|
lbl_800A83E0:
|
|
/* 0A2E40 800A83E0 7C802378 */ mr r0, r4
|
|
/* 0A2E44 800A83E4 A0860000 */ lhz r4, 0(r6)
|
|
/* 0A2E48 800A83E8 A0650000 */ lhz r3, 0(r5)
|
|
/* 0A2E4C 800A83EC 7C040040 */ cmplw r4, r0
|
|
/* 0A2E50 800A83F0 4082FFF0 */ bne lbl_800A83E0
|
|
/* 0A2E54 800A83F4 5480801E */ slwi r0, r4, 0x10
|
|
/* 0A2E58 800A83F8 7C001B78 */ or r0, r0, r3
|
|
/* 0A2E5C 800A83FC 900D8C48 */ stw r0, peCount$35@sda21(r13)
|
|
/* 0A2E60 800A8400 4BFF9EA9 */ bl OSGetTime
|
|
/* 0A2E64 800A8404 908D8C54 */ stw r4, (time$36 + 4)@sda21(r13)
|
|
/* 0A2E68 800A8408 38000001 */ li r0, 1
|
|
/* 0A2E6C 800A840C 906D8C50 */ stw r3, time$36@sda21(r13)
|
|
/* 0A2E70 800A8410 38600000 */ li r3, 0
|
|
/* 0A2E74 800A8414 900D8C58 */ stw r0, calledOnce$37@sda21(r13)
|
|
/* 0A2E78 800A8418 48000108 */ b lbl_800A8520
|
|
lbl_800A841C:
|
|
/* 0A2E7C 800A841C 4BFF9E8D */ bl OSGetTime
|
|
/* 0A2E80 800A8420 80AD8C44 */ lwz r5, __memReg@sda21(r13)
|
|
/* 0A2E84 800A8424 38C5004E */ addi r6, r5, 0x4e
|
|
/* 0A2E88 800A8428 A0E60000 */ lhz r7, 0(r6)
|
|
/* 0A2E8C 800A842C 38A50050 */ addi r5, r5, 0x50
|
|
/* 0A2E90 800A8430 48000004 */ b lbl_800A8434
|
|
lbl_800A8434:
|
|
/* 0A2E94 800A8434 48000004 */ b lbl_800A8438
|
|
lbl_800A8438:
|
|
/* 0A2E98 800A8438 7CE03B78 */ mr r0, r7
|
|
/* 0A2E9C 800A843C A0E60000 */ lhz r7, 0(r6)
|
|
/* 0A2EA0 800A8440 A1450000 */ lhz r10, 0(r5)
|
|
/* 0A2EA4 800A8444 7C070040 */ cmplw r7, r0
|
|
/* 0A2EA8 800A8448 4082FFF0 */ bne lbl_800A8438
|
|
/* 0A2EAC 800A844C 80CD8C54 */ lwz r6, (time$36 + 4)@sda21(r13)
|
|
/* 0A2EB0 800A8450 38000000 */ li r0, 0
|
|
/* 0A2EB4 800A8454 80AD8C50 */ lwz r5, time$36@sda21(r13)
|
|
/* 0A2EB8 800A8458 54E9801E */ slwi r9, r7, 0x10
|
|
/* 0A2EBC 800A845C 7D062010 */ subfc r8, r6, r4
|
|
/* 0A2EC0 800A8460 7CA51910 */ subfe r5, r5, r3
|
|
/* 0A2EC4 800A8464 38E0000A */ li r7, 0xa
|
|
/* 0A2EC8 800A8468 6CA68000 */ xoris r6, r5, 0x8000
|
|
/* 0A2ECC 800A846C 6C058000 */ xoris r5, r0, 0x8000
|
|
/* 0A2ED0 800A8470 7C074010 */ subfc r0, r7, r8
|
|
/* 0A2ED4 800A8474 7CA53110 */ subfe r5, r5, r6
|
|
/* 0A2ED8 800A8478 7CA63110 */ subfe r5, r6, r6
|
|
/* 0A2EDC 800A847C 7CA500D0 */ neg r5, r5
|
|
/* 0A2EE0 800A8480 2C050000 */ cmpwi r5, 0
|
|
/* 0A2EE4 800A8484 7D255378 */ or r5, r9, r10
|
|
/* 0A2EE8 800A8488 4182000C */ beq lbl_800A8494
|
|
/* 0A2EEC 800A848C 38600000 */ li r3, 0
|
|
/* 0A2EF0 800A8490 48000090 */ b lbl_800A8520
|
|
lbl_800A8494:
|
|
/* 0A2EF4 800A8494 800D8C48 */ lwz r0, peCount$35@sda21(r13)
|
|
/* 0A2EF8 800A8498 7C050040 */ cmplw r5, r0
|
|
/* 0A2EFC 800A849C 41820080 */ beq lbl_800A851C
|
|
/* 0A2F00 800A84A0 908D8C54 */ stw r4, (time$36 + 4)@sda21(r13)
|
|
/* 0A2F04 800A84A4 906D8C50 */ stw r3, time$36@sda21(r13)
|
|
/* 0A2F08 800A84A8 38600000 */ li r3, 0
|
|
/* 0A2F0C 800A84AC 90AD8C48 */ stw r5, peCount$35@sda21(r13)
|
|
/* 0A2F10 800A84B0 48000070 */ b lbl_800A8520
|
|
lbl_800A84B4:
|
|
/* 0A2F14 800A84B4 38600000 */ li r3, 0
|
|
/* 0A2F18 800A84B8 48001669 */ bl GXSetBreakPtCallback
|
|
/* 0A2F1C 800A84BC 38600000 */ li r3, 0
|
|
/* 0A2F20 800A84C0 48002D1D */ bl GXSetDrawSyncCallback
|
|
/* 0A2F24 800A84C4 38600000 */ li r3, 0
|
|
/* 0A2F28 800A84C8 48002DE1 */ bl GXSetDrawDoneCallback
|
|
/* 0A2F2C 800A84CC 3BE00000 */ li r31, 0
|
|
/* 0A2F30 800A84D0 3C60CC01 */ lis r3, 0xcc01
|
|
/* 0A2F34 800A84D4 93E38000 */ stw r31, -0x8000(r3)
|
|
/* 0A2F38 800A84D8 93E38000 */ stw r31, -0x8000(r3)
|
|
/* 0A2F3C 800A84DC 93E38000 */ stw r31, -0x8000(r3)
|
|
/* 0A2F40 800A84E0 93E38000 */ stw r31, -0x8000(r3)
|
|
/* 0A2F44 800A84E4 93E38000 */ stw r31, -0x8000(r3)
|
|
/* 0A2F48 800A84E8 93E38000 */ stw r31, -0x8000(r3)
|
|
/* 0A2F4C 800A84EC 93E38000 */ stw r31, -0x8000(r3)
|
|
/* 0A2F50 800A84F0 93E38000 */ stw r31, -0x8000(r3)
|
|
/* 0A2F54 800A84F4 4BFF3601 */ bl PPCSync
|
|
/* 0A2F58 800A84F8 806D8C3C */ lwz r3, __cpReg@sda21(r13)
|
|
/* 0A2F5C 800A84FC 38800003 */ li r4, 3
|
|
/* 0A2F60 800A8500 38000001 */ li r0, 1
|
|
/* 0A2F64 800A8504 B3E30002 */ sth r31, 2(r3)
|
|
/* 0A2F68 800A8508 806D8C3C */ lwz r3, __cpReg@sda21(r13)
|
|
/* 0A2F6C 800A850C B0830004 */ sth r4, 4(r3)
|
|
/* 0A2F70 800A8510 80628400 */ lwz r3, __GXData@sda21(r2)
|
|
/* 0A2F74 800A8514 980305AA */ stb r0, 0x5aa(r3)
|
|
/* 0A2F78 800A8518 480026C9 */ bl __GXAbort
|
|
lbl_800A851C:
|
|
/* 0A2F7C 800A851C 38600001 */ li r3, 1
|
|
lbl_800A8520:
|
|
/* 0A2F80 800A8520 80010024 */ lwz r0, 0x24(r1)
|
|
/* 0A2F84 800A8524 83E1001C */ lwz r31, 0x1c(r1)
|
|
/* 0A2F88 800A8528 38210020 */ addi r1, r1, 0x20
|
|
/* 0A2F8C 800A852C 7C0803A6 */ mtlr r0
|
|
/* 0A2F90 800A8530 4E800020 */ blr
|
|
|
|
glabel GXInit
|
|
/* 0A2F94 800A8534 7C0802A6 */ mflr r0
|
|
/* 0A2F98 800A8538 90010004 */ stw r0, 4(r1)
|
|
/* 0A2F9C 800A853C 9421FFC0 */ stwu r1, -0x40(r1)
|
|
/* 0A2FA0 800A8540 BF210024 */ stmw r25, 0x24(r1)
|
|
/* 0A2FA4 800A8544 7C7A1B78 */ mr r26, r3
|
|
/* 0A2FA8 800A8548 7C992378 */ mr r25, r4
|
|
/* 0A2FAC 800A854C 3C808013 */ lis r4, FifoObj@ha
|
|
/* 0A2FB0 800A8550 806D8790 */ lwz r3, __GXVersion@sda21(r13)
|
|
/* 0A2FB4 800A8554 3BC41E38 */ addi r30, r4, FifoObj@l
|
|
/* 0A2FB8 800A8558 4BFF4139 */ bl OSRegisterVersion
|
|
/* 0A2FBC 800A855C 80A28400 */ lwz r5, __GXData@sda21(r2)
|
|
/* 0A2FC0 800A8560 38000000 */ li r0, 0
|
|
/* 0A2FC4 800A8564 3B800001 */ li r28, 1
|
|
/* 0A2FC8 800A8568 980505A8 */ stb r0, 0x5a8(r5)
|
|
/* 0A2FCC 800A856C 38600001 */ li r3, 1
|
|
/* 0A2FD0 800A8570 38800000 */ li r4, 0
|
|
/* 0A2FD4 800A8574 9B8505A9 */ stb r28, 0x5a9(r5)
|
|
/* 0A2FD8 800A8578 9B8505AA */ stb r28, 0x5aa(r5)
|
|
/* 0A2FDC 800A857C 90050594 */ stw r0, 0x594(r5)
|
|
/* 0A2FE0 800A8580 90050598 */ stw r0, 0x598(r5)
|
|
/* 0A2FE4 800A8584 4800256D */ bl GXSetMisc
|
|
/* 0A2FE8 800A8588 3C80CC00 */ lis r4, HW_REGS_BASE@ha
|
|
/* 0A2FEC 800A858C 38A43000 */ addi r5, r4, PI_REGS_BASE@l
|
|
/* 0A2FF0 800A8590 908D8C3C */ stw r4, __cpReg@sda21(r13)
|
|
/* 0A2FF4 800A8594 38641000 */ addi r3, r4, PE_REGS_BASE@l
|
|
/* 0A2FF8 800A8598 38044000 */ addi r0, r4, MI_REGS_BASE@l
|
|
/* 0A2FFC 800A859C 90AD8C38 */ stw r5, __piReg@sda21(r13)
|
|
/* 0A3000 800A85A0 906D8C40 */ stw r3, __peReg@sda21(r13)
|
|
/* 0A3004 800A85A4 900D8C44 */ stw r0, __memReg@sda21(r13)
|
|
/* 0A3008 800A85A8 480015BD */ bl __GXFifoInit
|
|
/* 0A300C 800A85AC 7FC3F378 */ mr r3, r30
|
|
/* 0A3010 800A85B0 7F44D378 */ mr r4, r26
|
|
/* 0A3014 800A85B4 7F25CB78 */ mr r5, r25
|
|
/* 0A3018 800A85B8 48001181 */ bl GXInitFifoBase
|
|
/* 0A301C 800A85BC 7FC3F378 */ mr r3, r30
|
|
/* 0A3020 800A85C0 48001261 */ bl GXSetCPUFifo
|
|
/* 0A3024 800A85C4 7FC3F378 */ mr r3, r30
|
|
/* 0A3028 800A85C8 48001381 */ bl GXSetGPFifo
|
|
/* 0A302C 800A85CC 800D8C5C */ lwz r0, resetFuncRegistered$70@sda21(r13)
|
|
/* 0A3030 800A85D0 28000000 */ cmplwi r0, 0
|
|
/* 0A3034 800A85D4 40820014 */ bne lbl_800A85E8
|
|
/* 0A3038 800A85D8 3C60800F */ lis r3, GXResetFuncInfo@ha
|
|
/* 0A303C 800A85DC 38631CEC */ addi r3, r3, GXResetFuncInfo@l
|
|
/* 0A3040 800A85E0 4BFF7849 */ bl OSRegisterResetFunction
|
|
/* 0A3044 800A85E4 938D8C5C */ stw r28, resetFuncRegistered$70@sda21(r13)
|
|
lbl_800A85E8:
|
|
/* 0A3048 800A85E8 48002D85 */ bl __GXPEInit
|
|
/* 0A304C 800A85EC 4BFF359D */ bl PPCMfhid2
|
|
/* 0A3050 800A85F0 3C800C01 */ lis r4, 0xc01
|
|
/* 0A3054 800A85F4 7C7C1B78 */ mr r28, r3
|
|
/* 0A3058 800A85F8 38648000 */ addi r3, r4, -32768
|
|
/* 0A305C 800A85FC 4BFF359D */ bl PPCMtwpar
|
|
/* 0A3060 800A8600 67834000 */ oris r3, r28, 0x4000
|
|
/* 0A3064 800A8604 4BFF358D */ bl PPCMthid2
|
|
/* 0A3068 800A8608 80C28400 */ lwz r6, __GXData@sda21(r2)
|
|
/* 0A306C 800A860C 3BA00000 */ li r29, 0
|
|
/* 0A3070 800A8610 38600000 */ li r3, 0
|
|
/* 0A3074 800A8614 93A60204 */ stw r29, 0x204(r6)
|
|
/* 0A3078 800A8618 5467083C */ slwi r7, r3, 1
|
|
/* 0A307C 800A861C 38A000FF */ li r5, 0xff
|
|
/* 0A3080 800A8620 80060204 */ lwz r0, 0x204(r6)
|
|
/* 0A3084 800A8624 53A0C00E */ rlwimi r0, r29, 0x18, 0, 7
|
|
/* 0A3088 800A8628 3880000F */ li r4, 0xf
|
|
/* 0A308C 800A862C 90060204 */ stw r0, 0x204(r6)
|
|
/* 0A3090 800A8630 38000022 */ li r0, 0x22
|
|
/* 0A3094 800A8634 3BE700C0 */ addi r31, r7, 0xc0
|
|
/* 0A3098 800A8638 90A60124 */ stw r5, 0x124(r6)
|
|
/* 0A309C 800A863C 3B6700C1 */ addi r27, r7, 0xc1
|
|
/* 0A30A0 800A8640 80A60124 */ lwz r5, 0x124(r6)
|
|
/* 0A30A4 800A8644 5085C00E */ rlwimi r5, r4, 0x18, 0, 7
|
|
/* 0A30A8 800A8648 90A60124 */ stw r5, 0x124(r6)
|
|
/* 0A30AC 800A864C 93A6007C */ stw r29, 0x7c(r6)
|
|
/* 0A30B0 800A8650 8086007C */ lwz r4, 0x7c(r6)
|
|
/* 0A30B4 800A8654 5004C00E */ rlwimi r4, r0, 0x18, 0, 7
|
|
/* 0A30B8 800A8658 9086007C */ stw r4, 0x7c(r6)
|
|
/* 0A30BC 800A865C 48000004 */ b lbl_800A8660
|
|
lbl_800A8660:
|
|
/* 0A30C0 800A8660 38000008 */ li r0, 8
|
|
/* 0A30C4 800A8664 7C0903A6 */ mtctr r0
|
|
/* 0A30C8 800A8668 48000004 */ b lbl_800A866C
|
|
lbl_800A866C:
|
|
/* 0A30CC 800A866C 48000004 */ b lbl_800A8670
|
|
lbl_800A8670:
|
|
/* 0A30D0 800A8670 81828400 */ lwz r12, __GXData@sda21(r2)
|
|
/* 0A30D4 800A8674 547AF87E */ srwi r26, r3, 1
|
|
/* 0A30D8 800A8678 397D0130 */ addi r11, r29, 0x130
|
|
/* 0A30DC 800A867C 3B800000 */ li r28, 0
|
|
/* 0A30E0 800A8680 7F8C592E */ stwx r28, r12, r11
|
|
/* 0A30E4 800A8684 395D0170 */ addi r10, r29, 0x170
|
|
/* 0A30E8 800A8688 5759103A */ slwi r25, r26, 2
|
|
/* 0A30EC 800A868C 7F8C512E */ stwx r28, r12, r10
|
|
/* 0A30F0 800A8690 39390100 */ addi r9, r25, 0x100
|
|
/* 0A30F4 800A8694 38FD0554 */ addi r7, r29, 0x554
|
|
/* 0A30F8 800A8698 7F8C492E */ stwx r28, r12, r9
|
|
/* 0A30FC 800A869C 390000FF */ li r8, 0xff
|
|
/* 0A3100 800A86A0 38D901B0 */ addi r6, r25, 0x1b0
|
|
/* 0A3104 800A86A4 7D0C392E */ stwx r8, r12, r7
|
|
/* 0A3108 800A86A8 3BBD0004 */ addi r29, r29, 4
|
|
/* 0A310C 800A86AC 389A00F6 */ addi r4, r26, 0xf6
|
|
/* 0A3110 800A86B0 7CAC582E */ lwzx r5, r12, r11
|
|
/* 0A3114 800A86B4 53E5C00E */ rlwimi r5, r31, 0x18, 0, 7
|
|
/* 0A3118 800A86B8 381A0028 */ addi r0, r26, 0x28
|
|
/* 0A311C 800A86BC 7CAC592E */ stwx r5, r12, r11
|
|
/* 0A3120 800A86C0 38630001 */ addi r3, r3, 1
|
|
/* 0A3124 800A86C4 547AF87E */ srwi r26, r3, 1
|
|
/* 0A3128 800A86C8 7CAC502E */ lwzx r5, r12, r10
|
|
/* 0A312C 800A86CC 5365C00E */ rlwimi r5, r27, 0x18, 0, 7
|
|
/* 0A3130 800A86D0 397D0130 */ addi r11, r29, 0x130
|
|
/* 0A3134 800A86D4 7CAC512E */ stwx r5, r12, r10
|
|
/* 0A3138 800A86D8 395D0170 */ addi r10, r29, 0x170
|
|
/* 0A313C 800A86DC 38FD0554 */ addi r7, r29, 0x554
|
|
/* 0A3140 800A86E0 7CAC302E */ lwzx r5, r12, r6
|
|
/* 0A3144 800A86E4 5085C00E */ rlwimi r5, r4, 0x18, 0, 7
|
|
/* 0A3148 800A86E8 5759103A */ slwi r25, r26, 2
|
|
/* 0A314C 800A86EC 7CAC312E */ stwx r5, r12, r6
|
|
/* 0A3150 800A86F0 3BFF0002 */ addi r31, r31, 2
|
|
/* 0A3154 800A86F4 3B7B0002 */ addi r27, r27, 2
|
|
/* 0A3158 800A86F8 7C8C482E */ lwzx r4, r12, r9
|
|
/* 0A315C 800A86FC 5004C00E */ rlwimi r4, r0, 0x18, 0, 7
|
|
/* 0A3160 800A8700 38D901B0 */ addi r6, r25, 0x1b0
|
|
/* 0A3164 800A8704 7C8C492E */ stwx r4, r12, r9
|
|
/* 0A3168 800A8708 39390100 */ addi r9, r25, 0x100
|
|
/* 0A316C 800A870C 389A00F6 */ addi r4, r26, 0xf6
|
|
/* 0A3170 800A8710 7F8C592E */ stwx r28, r12, r11
|
|
/* 0A3174 800A8714 381A0028 */ addi r0, r26, 0x28
|
|
/* 0A3178 800A8718 3BBD0004 */ addi r29, r29, 4
|
|
/* 0A317C 800A871C 7F8C512E */ stwx r28, r12, r10
|
|
/* 0A3180 800A8720 38630001 */ addi r3, r3, 1
|
|
/* 0A3184 800A8724 7F8C492E */ stwx r28, r12, r9
|
|
/* 0A3188 800A8728 7D0C392E */ stwx r8, r12, r7
|
|
/* 0A318C 800A872C 7CAC582E */ lwzx r5, r12, r11
|
|
/* 0A3190 800A8730 53E5C00E */ rlwimi r5, r31, 0x18, 0, 7
|
|
/* 0A3194 800A8734 3BFF0002 */ addi r31, r31, 2
|
|
/* 0A3198 800A8738 7CAC592E */ stwx r5, r12, r11
|
|
/* 0A319C 800A873C 7CAC502E */ lwzx r5, r12, r10
|
|
/* 0A31A0 800A8740 5365C00E */ rlwimi r5, r27, 0x18, 0, 7
|
|
/* 0A31A4 800A8744 3B7B0002 */ addi r27, r27, 2
|
|
/* 0A31A8 800A8748 7CAC512E */ stwx r5, r12, r10
|
|
/* 0A31AC 800A874C 7CAC302E */ lwzx r5, r12, r6
|
|
/* 0A31B0 800A8750 5085C00E */ rlwimi r5, r4, 0x18, 0, 7
|
|
/* 0A31B4 800A8754 7CAC312E */ stwx r5, r12, r6
|
|
/* 0A31B8 800A8758 7C8C482E */ lwzx r4, r12, r9
|
|
/* 0A31BC 800A875C 5004C00E */ rlwimi r4, r0, 0x18, 0, 7
|
|
/* 0A31C0 800A8760 7C8C492E */ stwx r4, r12, r9
|
|
/* 0A31C4 800A8764 4200FF0C */ bdnz lbl_800A8670
|
|
/* 0A31C8 800A8768 938C0120 */ stw r28, 0x120(r12)
|
|
/* 0A31CC 800A876C 5784083C */ slwi r4, r28, 1
|
|
/* 0A31D0 800A8770 38000027 */ li r0, 0x27
|
|
/* 0A31D4 800A8774 806C0120 */ lwz r3, 0x120(r12)
|
|
/* 0A31D8 800A8778 5003C00E */ rlwimi r3, r0, 0x18, 0, 7
|
|
/* 0A31DC 800A877C 7F85E378 */ mr r5, r28
|
|
/* 0A31E0 800A8780 906C0120 */ stw r3, 0x120(r12)
|
|
/* 0A31E4 800A8784 38C40030 */ addi r6, r4, 0x30
|
|
/* 0A31E8 800A8788 38E40031 */ addi r7, r4, 0x31
|
|
/* 0A31EC 800A878C 48000004 */ b lbl_800A8790
|
|
lbl_800A8790:
|
|
/* 0A31F0 800A8790 38000002 */ li r0, 2
|
|
/* 0A31F4 800A8794 7C0903A6 */ mtctr r0
|
|
/* 0A31F8 800A8798 48000004 */ b lbl_800A879C
|
|
lbl_800A879C:
|
|
/* 0A31FC 800A879C 48000004 */ b lbl_800A87A0
|
|
lbl_800A87A0:
|
|
/* 0A3200 800A87A0 81028400 */ lwz r8, __GXData@sda21(r2)
|
|
/* 0A3204 800A87A4 388500B8 */ addi r4, r5, 0xb8
|
|
/* 0A3208 800A87A8 386500D8 */ addi r3, r5, 0xd8
|
|
/* 0A320C 800A87AC 7F88212E */ stwx r28, r8, r4
|
|
/* 0A3210 800A87B0 38A50004 */ addi r5, r5, 4
|
|
/* 0A3214 800A87B4 7F88192E */ stwx r28, r8, r3
|
|
/* 0A3218 800A87B8 7C08202E */ lwzx r0, r8, r4
|
|
/* 0A321C 800A87BC 50C0C00E */ rlwimi r0, r6, 0x18, 0, 7
|
|
/* 0A3220 800A87C0 38C60002 */ addi r6, r6, 2
|
|
/* 0A3224 800A87C4 7C08212E */ stwx r0, r8, r4
|
|
/* 0A3228 800A87C8 388500B8 */ addi r4, r5, 0xb8
|
|
/* 0A322C 800A87CC 7C08182E */ lwzx r0, r8, r3
|
|
/* 0A3230 800A87D0 50E0C00E */ rlwimi r0, r7, 0x18, 0, 7
|
|
/* 0A3234 800A87D4 38E70002 */ addi r7, r7, 2
|
|
/* 0A3238 800A87D8 7C08192E */ stwx r0, r8, r3
|
|
/* 0A323C 800A87DC 386500D8 */ addi r3, r5, 0xd8
|
|
/* 0A3240 800A87E0 38A50004 */ addi r5, r5, 4
|
|
/* 0A3244 800A87E4 7F88212E */ stwx r28, r8, r4
|
|
/* 0A3248 800A87E8 7F88192E */ stwx r28, r8, r3
|
|
/* 0A324C 800A87EC 7C08202E */ lwzx r0, r8, r4
|
|
/* 0A3250 800A87F0 50C0C00E */ rlwimi r0, r6, 0x18, 0, 7
|
|
/* 0A3254 800A87F4 38C60002 */ addi r6, r6, 2
|
|
/* 0A3258 800A87F8 7C08212E */ stwx r0, r8, r4
|
|
/* 0A325C 800A87FC 388500B8 */ addi r4, r5, 0xb8
|
|
/* 0A3260 800A8800 7C08182E */ lwzx r0, r8, r3
|
|
/* 0A3264 800A8804 50E0C00E */ rlwimi r0, r7, 0x18, 0, 7
|
|
/* 0A3268 800A8808 38E70002 */ addi r7, r7, 2
|
|
/* 0A326C 800A880C 7C08192E */ stwx r0, r8, r3
|
|
/* 0A3270 800A8810 386500D8 */ addi r3, r5, 0xd8
|
|
/* 0A3274 800A8814 38A50004 */ addi r5, r5, 4
|
|
/* 0A3278 800A8818 7F88212E */ stwx r28, r8, r4
|
|
/* 0A327C 800A881C 7F88192E */ stwx r28, r8, r3
|
|
/* 0A3280 800A8820 7C08202E */ lwzx r0, r8, r4
|
|
/* 0A3284 800A8824 50C0C00E */ rlwimi r0, r6, 0x18, 0, 7
|
|
/* 0A3288 800A8828 38C60002 */ addi r6, r6, 2
|
|
/* 0A328C 800A882C 7C08212E */ stwx r0, r8, r4
|
|
/* 0A3290 800A8830 388500B8 */ addi r4, r5, 0xb8
|
|
/* 0A3294 800A8834 7C08182E */ lwzx r0, r8, r3
|
|
/* 0A3298 800A8838 50E0C00E */ rlwimi r0, r7, 0x18, 0, 7
|
|
/* 0A329C 800A883C 38E70002 */ addi r7, r7, 2
|
|
/* 0A32A0 800A8840 7C08192E */ stwx r0, r8, r3
|
|
/* 0A32A4 800A8844 386500D8 */ addi r3, r5, 0xd8
|
|
/* 0A32A8 800A8848 38A50004 */ addi r5, r5, 4
|
|
/* 0A32AC 800A884C 7F88212E */ stwx r28, r8, r4
|
|
/* 0A32B0 800A8850 7F88192E */ stwx r28, r8, r3
|
|
/* 0A32B4 800A8854 7C08202E */ lwzx r0, r8, r4
|
|
/* 0A32B8 800A8858 50C0C00E */ rlwimi r0, r6, 0x18, 0, 7
|
|
/* 0A32BC 800A885C 38C60002 */ addi r6, r6, 2
|
|
/* 0A32C0 800A8860 7C08212E */ stwx r0, r8, r4
|
|
/* 0A32C4 800A8864 7C08182E */ lwzx r0, r8, r3
|
|
/* 0A32C8 800A8868 50E0C00E */ rlwimi r0, r7, 0x18, 0, 7
|
|
/* 0A32CC 800A886C 38E70002 */ addi r7, r7, 2
|
|
/* 0A32D0 800A8870 7C08192E */ stwx r0, r8, r3
|
|
/* 0A32D4 800A8874 4200FF2C */ bdnz lbl_800A87A0
|
|
/* 0A32D8 800A8878 806800F8 */ lwz r3, 0xf8(r8)
|
|
/* 0A32DC 800A887C 38000020 */ li r0, 0x20
|
|
/* 0A32E0 800A8880 5003C00E */ rlwimi r3, r0, 0x18, 0, 7
|
|
/* 0A32E4 800A8884 906800F8 */ stw r3, 0xf8(r8)
|
|
/* 0A32E8 800A8888 3C601062 */ lis r3, 0x1062
|
|
/* 0A32EC 800A888C 38000021 */ li r0, 0x21
|
|
/* 0A32F0 800A8890 808800FC */ lwz r4, 0xfc(r8)
|
|
/* 0A32F4 800A8894 5004C00E */ rlwimi r4, r0, 0x18, 0, 7
|
|
/* 0A32F8 800A8898 38000041 */ li r0, 0x41
|
|
/* 0A32FC 800A889C 908800FC */ stw r4, 0xfc(r8)
|
|
/* 0A3300 800A88A0 38C00042 */ li r6, 0x42
|
|
/* 0A3304 800A88A4 38A00040 */ li r5, 0x40
|
|
/* 0A3308 800A88A8 808801D0 */ lwz r4, 0x1d0(r8)
|
|
/* 0A330C 800A88AC 5004C00E */ rlwimi r4, r0, 0x18, 0, 7
|
|
/* 0A3310 800A88B0 38000043 */ li r0, 0x43
|
|
/* 0A3314 800A88B4 908801D0 */ stw r4, 0x1d0(r8)
|
|
/* 0A3318 800A88B8 3BA00000 */ li r29, 0
|
|
/* 0A331C 800A88BC 3C808000 */ lis r4, 0x8000
|
|
/* 0A3320 800A88C0 80E801D4 */ lwz r7, 0x1d4(r8)
|
|
/* 0A3324 800A88C4 50C7C00E */ rlwimi r7, r6, 0x18, 0, 7
|
|
/* 0A3328 800A88C8 38634DD3 */ addi r3, r3, 0x4dd3
|
|
/* 0A332C 800A88CC 90E801D4 */ stw r7, 0x1d4(r8)
|
|
/* 0A3330 800A88D0 80C801D8 */ lwz r6, 0x1d8(r8)
|
|
/* 0A3334 800A88D4 50A6C00E */ rlwimi r6, r5, 0x18, 0, 7
|
|
/* 0A3338 800A88D8 90C801D8 */ stw r6, 0x1d8(r8)
|
|
/* 0A333C 800A88DC 80A801DC */ lwz r5, 0x1dc(r8)
|
|
/* 0A3340 800A88E0 5005C00E */ rlwimi r5, r0, 0x18, 0, 7
|
|
/* 0A3344 800A88E4 90A801DC */ stw r5, 0x1dc(r8)
|
|
/* 0A3348 800A88E8 800801FC */ lwz r0, 0x1fc(r8)
|
|
/* 0A334C 800A88EC 53A03DF0 */ rlwimi r0, r29, 7, 0x17, 0x18
|
|
/* 0A3350 800A88F0 900801FC */ stw r0, 0x1fc(r8)
|
|
/* 0A3354 800A88F4 C0028404 */ lfs f0, D_80136104@sda21(r2)
|
|
/* 0A3358 800A88F8 D0080510 */ stfs f0, 0x510(r8)
|
|
/* 0A335C 800A88FC C0028408 */ lfs f0, D_80136108@sda21(r2)
|
|
/* 0A3360 800A8900 D008050C */ stfs f0, 0x50c(r8)
|
|
/* 0A3364 800A8904 93A805AC */ stw r29, 0x5ac(r8)
|
|
/* 0A3368 800A8908 9BA805AB */ stb r29, 0x5ab(r8)
|
|
/* 0A336C 800A890C 800400F8 */ lwz r0, 0xf8(r4)
|
|
/* 0A3370 800A8910 7C030016 */ mulhwu r0, r3, r0
|
|
/* 0A3374 800A8914 5419D97E */ srwi r25, r0, 5
|
|
/* 0A3378 800A8918 48004EA1 */ bl __GXFlushTextureState
|
|
/* 0A337C 800A891C 5720AAFE */ srwi r0, r25, 0xb
|
|
/* 0A3380 800A8920 64006900 */ oris r0, r0, 0x6900
|
|
/* 0A3384 800A8924 3B800061 */ li r28, 0x61
|
|
/* 0A3388 800A8928 3FE0CC01 */ lis r31, 0xcc01
|
|
/* 0A338C 800A892C 9B9F8000 */ stb r28, -0x8000(r31)
|
|
/* 0A3390 800A8930 60000400 */ ori r0, r0, 0x400
|
|
/* 0A3394 800A8934 901F8000 */ stw r0, -0x8000(r31)
|
|
/* 0A3398 800A8938 48004E81 */ bl __GXFlushTextureState
|
|
/* 0A339C 800A893C 3C603E10 */ lis r3, 0x3e10
|
|
/* 0A33A0 800A8940 9B9F8000 */ stb r28, -0x8000(r31)
|
|
/* 0A33A4 800A8944 380383E1 */ addi r0, r3, -31775
|
|
/* 0A33A8 800A8948 7C00C816 */ mulhwu r0, r0, r25
|
|
/* 0A33AC 800A894C 5400B2BE */ srwi r0, r0, 0xa
|
|
/* 0A33B0 800A8950 64004600 */ oris r0, r0, 0x4600
|
|
/* 0A33B4 800A8954 60000200 */ ori r0, r0, 0x200
|
|
/* 0A33B8 800A8958 901F8000 */ stw r0, -0x8000(r31)
|
|
/* 0A33BC 800A895C 57A9103A */ slwi r9, r29, 2
|
|
/* 0A33C0 800A8960 48000004 */ b lbl_800A8964
|
|
lbl_800A8964:
|
|
/* 0A33C4 800A8964 38000002 */ li r0, 2
|
|
/* 0A33C8 800A8968 7C0903A6 */ mtctr r0
|
|
/* 0A33CC 800A896C 38C00001 */ li r6, 1
|
|
/* 0A33D0 800A8970 38800008 */ li r4, 8
|
|
/* 0A33D4 800A8974 48000004 */ b lbl_800A8978
|
|
lbl_800A8978:
|
|
/* 0A33D8 800A8978 48000004 */ b lbl_800A897C
|
|
lbl_800A897C:
|
|
/* 0A33DC 800A897C 81028400 */ lwz r8, __GXData@sda21(r2)
|
|
/* 0A33E0 800A8980 38E9001C */ addi r7, r9, 0x1c
|
|
/* 0A33E4 800A8984 38A9003C */ addi r5, r9, 0x3c
|
|
/* 0A33E8 800A8988 7C08382E */ lwzx r0, r8, r7
|
|
/* 0A33EC 800A898C 50C0F042 */ rlwimi r0, r6, 0x1e, 1, 1
|
|
/* 0A33F0 800A8990 63A30080 */ ori r3, r29, 0x80
|
|
/* 0A33F4 800A8994 7C08392E */ stwx r0, r8, r7
|
|
/* 0A33F8 800A8998 39290004 */ addi r9, r9, 4
|
|
/* 0A33FC 800A899C 38E9001C */ addi r7, r9, 0x1c
|
|
/* 0A3400 800A89A0 7C08282E */ lwzx r0, r8, r5
|
|
/* 0A3404 800A89A4 50C0F800 */ rlwimi r0, r6, 0x1f, 0, 0
|
|
/* 0A3408 800A89A8 3BBD0001 */ addi r29, r29, 1
|
|
/* 0A340C 800A89AC 7C08292E */ stwx r0, r8, r5
|
|
/* 0A3410 800A89B0 989F8000 */ stb r4, -0x8000(r31)
|
|
/* 0A3414 800A89B4 987F8000 */ stb r3, -0x8000(r31)
|
|
/* 0A3418 800A89B8 63A30080 */ ori r3, r29, 0x80
|
|
/* 0A341C 800A89BC 3BBD0001 */ addi r29, r29, 1
|
|
/* 0A3420 800A89C0 7C08282E */ lwzx r0, r8, r5
|
|
/* 0A3424 800A89C4 38A9003C */ addi r5, r9, 0x3c
|
|
/* 0A3428 800A89C8 39290004 */ addi r9, r9, 4
|
|
/* 0A342C 800A89CC 901F8000 */ stw r0, -0x8000(r31)
|
|
/* 0A3430 800A89D0 7C08382E */ lwzx r0, r8, r7
|
|
/* 0A3434 800A89D4 50C0F042 */ rlwimi r0, r6, 0x1e, 1, 1
|
|
/* 0A3438 800A89D8 7C08392E */ stwx r0, r8, r7
|
|
/* 0A343C 800A89DC 38E9001C */ addi r7, r9, 0x1c
|
|
/* 0A3440 800A89E0 7C08282E */ lwzx r0, r8, r5
|
|
/* 0A3444 800A89E4 50C0F800 */ rlwimi r0, r6, 0x1f, 0, 0
|
|
/* 0A3448 800A89E8 7C08292E */ stwx r0, r8, r5
|
|
/* 0A344C 800A89EC 989F8000 */ stb r4, -0x8000(r31)
|
|
/* 0A3450 800A89F0 987F8000 */ stb r3, -0x8000(r31)
|
|
/* 0A3454 800A89F4 63A30080 */ ori r3, r29, 0x80
|
|
/* 0A3458 800A89F8 3BBD0001 */ addi r29, r29, 1
|
|
/* 0A345C 800A89FC 7C08282E */ lwzx r0, r8, r5
|
|
/* 0A3460 800A8A00 38A9003C */ addi r5, r9, 0x3c
|
|
/* 0A3464 800A8A04 39290004 */ addi r9, r9, 4
|
|
/* 0A3468 800A8A08 901F8000 */ stw r0, -0x8000(r31)
|
|
/* 0A346C 800A8A0C 7C08382E */ lwzx r0, r8, r7
|
|
/* 0A3470 800A8A10 50C0F042 */ rlwimi r0, r6, 0x1e, 1, 1
|
|
/* 0A3474 800A8A14 7C08392E */ stwx r0, r8, r7
|
|
/* 0A3478 800A8A18 38E9001C */ addi r7, r9, 0x1c
|
|
/* 0A347C 800A8A1C 7C08282E */ lwzx r0, r8, r5
|
|
/* 0A3480 800A8A20 50C0F800 */ rlwimi r0, r6, 0x1f, 0, 0
|
|
/* 0A3484 800A8A24 7C08292E */ stwx r0, r8, r5
|
|
/* 0A3488 800A8A28 989F8000 */ stb r4, -0x8000(r31)
|
|
/* 0A348C 800A8A2C 987F8000 */ stb r3, -0x8000(r31)
|
|
/* 0A3490 800A8A30 63A30080 */ ori r3, r29, 0x80
|
|
/* 0A3494 800A8A34 3BBD0001 */ addi r29, r29, 1
|
|
/* 0A3498 800A8A38 7C08282E */ lwzx r0, r8, r5
|
|
/* 0A349C 800A8A3C 38A9003C */ addi r5, r9, 0x3c
|
|
/* 0A34A0 800A8A40 39290004 */ addi r9, r9, 4
|
|
/* 0A34A4 800A8A44 901F8000 */ stw r0, -0x8000(r31)
|
|
/* 0A34A8 800A8A48 7C08382E */ lwzx r0, r8, r7
|
|
/* 0A34AC 800A8A4C 50C0F042 */ rlwimi r0, r6, 0x1e, 1, 1
|
|
/* 0A34B0 800A8A50 7C08392E */ stwx r0, r8, r7
|
|
/* 0A34B4 800A8A54 7C08282E */ lwzx r0, r8, r5
|
|
/* 0A34B8 800A8A58 50C0F800 */ rlwimi r0, r6, 0x1f, 0, 0
|
|
/* 0A34BC 800A8A5C 7C08292E */ stwx r0, r8, r5
|
|
/* 0A34C0 800A8A60 989F8000 */ stb r4, -0x8000(r31)
|
|
/* 0A34C4 800A8A64 987F8000 */ stb r3, -0x8000(r31)
|
|
/* 0A34C8 800A8A68 7C08282E */ lwzx r0, r8, r5
|
|
/* 0A34CC 800A8A6C 901F8000 */ stw r0, -0x8000(r31)
|
|
/* 0A34D0 800A8A70 4200FF0C */ bdnz lbl_800A897C
|
|
/* 0A34D4 800A8A74 38A00001 */ li r5, 1
|
|
/* 0A34D8 800A8A78 38000000 */ li r0, 0
|
|
/* 0A34DC 800A8A7C 50A007FE */ rlwimi r0, r5, 0, 0x1f, 0x1f
|
|
/* 0A34E0 800A8A80 7C080378 */ mr r8, r0
|
|
/* 0A34E4 800A8A84 38000000 */ li r0, 0
|
|
/* 0A34E8 800A8A88 50A007FE */ rlwimi r0, r5, 0, 0x1f, 0x1f
|
|
/* 0A34EC 800A8A8C 7C090378 */ mr r9, r0
|
|
/* 0A34F0 800A8A90 50A80FBC */ rlwimi r8, r5, 1, 0x1e, 0x1e
|
|
/* 0A34F4 800A8A94 50A8177A */ rlwimi r8, r5, 2, 0x1d, 0x1d
|
|
/* 0A34F8 800A8A98 50A81F38 */ rlwimi r8, r5, 3, 0x1c, 0x1c
|
|
/* 0A34FC 800A8A9C 50A826F6 */ rlwimi r8, r5, 4, 0x1b, 0x1b
|
|
/* 0A3500 800A8AA0 39400000 */ li r10, 0
|
|
/* 0A3504 800A8AA4 38E00010 */ li r7, 0x10
|
|
/* 0A3508 800A8AA8 3CC0CC01 */ lis r6, 0xcc01
|
|
/* 0A350C 800A8AAC 50A90FBC */ rlwimi r9, r5, 1, 0x1e, 0x1e
|
|
/* 0A3510 800A8AB0 98E68000 */ stb r7, -0x8000(r6)
|
|
/* 0A3514 800A8AB4 38001000 */ li r0, 0x1000
|
|
/* 0A3518 800A8AB8 90068000 */ stw r0, -0x8000(r6)
|
|
/* 0A351C 800A8ABC 50A82EB4 */ rlwimi r8, r5, 5, 0x1a, 0x1a
|
|
/* 0A3520 800A8AC0 50A9177A */ rlwimi r9, r5, 2, 0x1d, 0x1d
|
|
/* 0A3524 800A8AC4 91068000 */ stw r8, -0x8000(r6)
|
|
/* 0A3528 800A8AC8 3BE00000 */ li r31, 0
|
|
/* 0A352C 800A8ACC 38801012 */ li r4, 0x1012
|
|
/* 0A3530 800A8AD0 98E68000 */ stb r7, -0x8000(r6)
|
|
/* 0A3534 800A8AD4 50AA07FE */ rlwimi r10, r5, 0, 0x1f, 0x1f
|
|
/* 0A3538 800A8AD8 50A91F38 */ rlwimi r9, r5, 3, 0x1c, 0x1c
|
|
/* 0A353C 800A8ADC 90868000 */ stw r4, -0x8000(r6)
|
|
/* 0A3540 800A8AE0 38000058 */ li r0, 0x58
|
|
/* 0A3544 800A8AE4 38A00061 */ li r5, 0x61
|
|
/* 0A3548 800A8AE8 91468000 */ stw r10, -0x8000(r6)
|
|
/* 0A354C 800A8AEC 3C60800F */ lis r3, GXTexRegionAddrTable@ha
|
|
/* 0A3550 800A8AF0 5009C00E */ rlwimi r9, r0, 0x18, 0, 7
|
|
/* 0A3554 800A8AF4 98A68000 */ stb r5, -0x8000(r6)
|
|
/* 0A3558 800A8AF8 57E4103A */ slwi r4, r31, 2
|
|
/* 0A355C 800A8AFC 38031C2C */ addi r0, r3, GXTexRegionAddrTable@l
|
|
/* 0A3560 800A8B00 91268000 */ stw r9, -0x8000(r6)
|
|
/* 0A3564 800A8B04 7F602214 */ add r27, r0, r4
|
|
/* 0A3568 800A8B08 57FC2036 */ slwi r28, r31, 4
|
|
/* 0A356C 800A8B0C 48000004 */ b lbl_800A8B10
|
|
lbl_800A8B10:
|
|
/* 0A3570 800A8B10 48000004 */ b lbl_800A8B14
|
|
lbl_800A8B14:
|
|
/* 0A3574 800A8B14 48000004 */ b lbl_800A8B18
|
|
lbl_800A8B18:
|
|
/* 0A3578 800A8B18 80028400 */ lwz r0, __GXData@sda21(r2)
|
|
/* 0A357C 800A8B1C 387C0208 */ addi r3, r28, 0x208
|
|
/* 0A3580 800A8B20 80BB0000 */ lwz r5, 0(r27)
|
|
/* 0A3584 800A8B24 38800000 */ li r4, 0
|
|
/* 0A3588 800A8B28 80FB0020 */ lwz r7, 0x20(r27)
|
|
/* 0A358C 800A8B2C 7C601A14 */ add r3, r0, r3
|
|
/* 0A3590 800A8B30 38C00000 */ li r6, 0
|
|
/* 0A3594 800A8B34 39000000 */ li r8, 0
|
|
/* 0A3598 800A8B38 48004325 */ bl GXInitTexCacheRegion
|
|
/* 0A359C 800A8B3C 80028400 */ lwz r0, __GXData@sda21(r2)
|
|
/* 0A35A0 800A8B40 387C0288 */ addi r3, r28, 0x288
|
|
/* 0A35A4 800A8B44 80BB0040 */ lwz r5, 0x40(r27)
|
|
/* 0A35A8 800A8B48 38800000 */ li r4, 0
|
|
/* 0A35AC 800A8B4C 80FB0060 */ lwz r7, 0x60(r27)
|
|
/* 0A35B0 800A8B50 7C601A14 */ add r3, r0, r3
|
|
/* 0A35B4 800A8B54 38C00000 */ li r6, 0
|
|
/* 0A35B8 800A8B58 39000000 */ li r8, 0
|
|
/* 0A35BC 800A8B5C 48004301 */ bl GXInitTexCacheRegion
|
|
/* 0A35C0 800A8B60 80028400 */ lwz r0, __GXData@sda21(r2)
|
|
/* 0A35C4 800A8B64 387C0308 */ addi r3, r28, 0x308
|
|
/* 0A35C8 800A8B68 80BB0080 */ lwz r5, 0x80(r27)
|
|
/* 0A35CC 800A8B6C 38800001 */ li r4, 1
|
|
/* 0A35D0 800A8B70 80FB00A0 */ lwz r7, 0xa0(r27)
|
|
/* 0A35D4 800A8B74 7C601A14 */ add r3, r0, r3
|
|
/* 0A35D8 800A8B78 38C00000 */ li r6, 0
|
|
/* 0A35DC 800A8B7C 39000000 */ li r8, 0
|
|
/* 0A35E0 800A8B80 480042DD */ bl GXInitTexCacheRegion
|
|
/* 0A35E4 800A8B84 3B7B0004 */ addi r27, r27, 4
|
|
/* 0A35E8 800A8B88 3B9C0010 */ addi r28, r28, 0x10
|
|
/* 0A35EC 800A8B8C 3BFF0001 */ addi r31, r31, 1
|
|
/* 0A35F0 800A8B90 281F0008 */ cmplwi r31, 8
|
|
/* 0A35F4 800A8B94 4180FF84 */ blt lbl_800A8B18
|
|
/* 0A35F8 800A8B98 3B200000 */ li r25, 0
|
|
/* 0A35FC 800A8B9C 57236824 */ slwi r3, r25, 0xd
|
|
/* 0A3600 800A8BA0 3F63000C */ addis r27, r3, 0xc
|
|
/* 0A3604 800A8BA4 573C2036 */ slwi r28, r25, 4
|
|
/* 0A3608 800A8BA8 48000004 */ b lbl_800A8BAC
|
|
lbl_800A8BAC:
|
|
/* 0A360C 800A8BAC 48000004 */ b lbl_800A8BB0
|
|
lbl_800A8BB0:
|
|
/* 0A3610 800A8BB0 48000004 */ b lbl_800A8BB4
|
|
lbl_800A8BB4:
|
|
/* 0A3614 800A8BB4 80028400 */ lwz r0, __GXData@sda21(r2)
|
|
/* 0A3618 800A8BB8 387C0388 */ addi r3, r28, 0x388
|
|
/* 0A361C 800A8BBC 7F64DB78 */ mr r4, r27
|
|
/* 0A3620 800A8BC0 7C601A14 */ add r3, r0, r3
|
|
/* 0A3624 800A8BC4 38A00010 */ li r5, 0x10
|
|
/* 0A3628 800A8BC8 48004389 */ bl GXInitTlutRegion
|
|
/* 0A362C 800A8BCC 3B7B2000 */ addi r27, r27, 0x2000
|
|
/* 0A3630 800A8BD0 3B9C0010 */ addi r28, r28, 0x10
|
|
/* 0A3634 800A8BD4 3B390001 */ addi r25, r25, 1
|
|
/* 0A3638 800A8BD8 28190010 */ cmplwi r25, 0x10
|
|
/* 0A363C 800A8BDC 4180FFD8 */ blt lbl_800A8BB4
|
|
/* 0A3640 800A8BE0 3B200000 */ li r25, 0
|
|
/* 0A3644 800A8BE4 57237820 */ slwi r3, r25, 0xf
|
|
/* 0A3648 800A8BE8 3F63000E */ addis r27, r3, 0xe
|
|
/* 0A364C 800A8BEC 48000004 */ b lbl_800A8BF0
|
|
lbl_800A8BF0:
|
|
/* 0A3650 800A8BF0 48000004 */ b lbl_800A8BF4
|
|
lbl_800A8BF4:
|
|
/* 0A3654 800A8BF4 48000004 */ b lbl_800A8BF8
|
|
lbl_800A8BF8:
|
|
/* 0A3658 800A8BF8 38190010 */ addi r0, r25, 0x10
|
|
/* 0A365C 800A8BFC 80A28400 */ lwz r5, __GXData@sda21(r2)
|
|
/* 0A3660 800A8C00 54032036 */ slwi r3, r0, 4
|
|
/* 0A3664 800A8C04 38630388 */ addi r3, r3, 0x388
|
|
/* 0A3668 800A8C08 7F64DB78 */ mr r4, r27
|
|
/* 0A366C 800A8C0C 7C651A14 */ add r3, r5, r3
|
|
/* 0A3670 800A8C10 38A00040 */ li r5, 0x40
|
|
/* 0A3674 800A8C14 4800433D */ bl GXInitTlutRegion
|
|
/* 0A3678 800A8C18 3F7B0001 */ addis r27, r27, 1
|
|
/* 0A367C 800A8C1C 3B7B8000 */ addi r27, r27, -32768
|
|
/* 0A3680 800A8C20 3B390001 */ addi r25, r25, 1
|
|
/* 0A3684 800A8C24 28190004 */ cmplwi r25, 4
|
|
/* 0A3688 800A8C28 4180FFD0 */ blt lbl_800A8BF8
|
|
/* 0A368C 800A8C2C 806D8C3C */ lwz r3, __cpReg@sda21(r13)
|
|
/* 0A3690 800A8C30 39800000 */ li r12, 0
|
|
/* 0A3694 800A8C34 38000008 */ li r0, 8
|
|
/* 0A3698 800A8C38 B1830006 */ sth r12, 6(r3)
|
|
/* 0A369C 800A8C3C 3D40CC01 */ lis r10, 0xcc01
|
|
/* 0A36A0 800A8C40 39200020 */ li r9, 0x20
|
|
/* 0A36A4 800A8C44 81628400 */ lwz r11, __GXData@sda21(r2)
|
|
/* 0A36A8 800A8C48 39000010 */ li r8, 0x10
|
|
/* 0A36AC 800A8C4C 38E01006 */ li r7, 0x1006
|
|
/* 0A36B0 800A8C50 806B05A4 */ lwz r3, 0x5a4(r11)
|
|
/* 0A36B4 800A8C54 51832636 */ rlwimi r3, r12, 4, 0x18, 0x1b
|
|
/* 0A36B8 800A8C58 38C00061 */ li r6, 0x61
|
|
/* 0A36BC 800A8C5C 906B05A4 */ stw r3, 0x5a4(r11)
|
|
/* 0A36C0 800A8C60 3CA02300 */ lis r5, 0x2300
|
|
/* 0A36C4 800A8C64 3C802400 */ lis r4, 0x2400
|
|
/* 0A36C8 800A8C68 980A8000 */ stb r0, -0x8000(r10)
|
|
/* 0A36CC 800A8C6C 3C006700 */ lis r0, 0x6700
|
|
/* 0A36D0 800A8C70 38600000 */ li r3, 0
|
|
/* 0A36D4 800A8C74 992A8000 */ stb r9, -0x8000(r10)
|
|
/* 0A36D8 800A8C78 812B05A4 */ lwz r9, 0x5a4(r11)
|
|
/* 0A36DC 800A8C7C 912A8000 */ stw r9, -0x8000(r10)
|
|
/* 0A36E0 800A8C80 990A8000 */ stb r8, -0x8000(r10)
|
|
/* 0A36E4 800A8C84 90EA8000 */ stw r7, -0x8000(r10)
|
|
/* 0A36E8 800A8C88 918A8000 */ stw r12, -0x8000(r10)
|
|
/* 0A36EC 800A8C8C 98CA8000 */ stb r6, -0x8000(r10)
|
|
/* 0A36F0 800A8C90 90AA8000 */ stw r5, -0x8000(r10)
|
|
/* 0A36F4 800A8C94 98CA8000 */ stb r6, -0x8000(r10)
|
|
/* 0A36F8 800A8C98 908A8000 */ stw r4, -0x8000(r10)
|
|
/* 0A36FC 800A8C9C 98CA8000 */ stb r6, -0x8000(r10)
|
|
/* 0A3700 800A8CA0 900A8000 */ stw r0, -0x8000(r10)
|
|
/* 0A3704 800A8CA4 48004AE5 */ bl __GXSetIndirectMask
|
|
/* 0A3708 800A8CA8 38600002 */ li r3, 2
|
|
/* 0A370C 800A8CAC 48004569 */ bl __GXSetTmemConfig
|
|
/* 0A3710 800A8CB0 4800001D */ bl __GXInitGX
|
|
/* 0A3714 800A8CB4 7FC3F378 */ mr r3, r30
|
|
/* 0A3718 800A8CB8 BB210024 */ lmw r25, 0x24(r1)
|
|
/* 0A371C 800A8CBC 80010044 */ lwz r0, 0x44(r1)
|
|
/* 0A3720 800A8CC0 38210040 */ addi r1, r1, 0x40
|
|
/* 0A3724 800A8CC4 7C0803A6 */ mtlr r0
|
|
/* 0A3728 800A8CC8 4E800020 */ blr
|
|
|
|
glabel __GXInitGX
|
|
/* 0A372C 800A8CCC 7C0802A6 */ mflr r0
|
|
/* 0A3730 800A8CD0 90010004 */ stw r0, 4(r1)
|
|
/* 0A3734 800A8CD4 9421FF60 */ stwu r1, -0xa0(r1)
|
|
/* 0A3738 800A8CD8 93E1009C */ stw r31, 0x9c(r1)
|
|
/* 0A373C 800A8CDC 93C10098 */ stw r30, 0x98(r1)
|
|
/* 0A3740 800A8CE0 93A10094 */ stw r29, 0x94(r1)
|
|
/* 0A3744 800A8CE4 8082840C */ lwz r4, D_8013610C@sda21(r2)
|
|
/* 0A3748 800A8CE8 3CA0800F */ lis r5, D_800F1AC0@ha
|
|
/* 0A374C 800A8CEC 80628410 */ lwz r3, D_80136110@sda21(r2)
|
|
/* 0A3750 800A8CF0 3BE51AC0 */ addi r31, r5, D_800F1AC0@l
|
|
/* 0A3754 800A8CF4 80028414 */ lwz r0, D_80136114@sda21(r2)
|
|
/* 0A3758 800A8CF8 90810028 */ stw r4, 0x28(r1)
|
|
/* 0A375C 800A8CFC 90610024 */ stw r3, 0x24(r1)
|
|
/* 0A3760 800A8D00 90010020 */ stw r0, 0x20(r1)
|
|
/* 0A3764 800A8D04 4BFFECF9 */ bl VIGetTvFormat
|
|
/* 0A3768 800A8D08 2C030002 */ cmpwi r3, 2
|
|
/* 0A376C 800A8D0C 41820054 */ beq lbl_800A8D60
|
|
/* 0A3770 800A8D10 40800014 */ bge lbl_800A8D24
|
|
/* 0A3774 800A8D14 2C030000 */ cmpwi r3, 0
|
|
/* 0A3778 800A8D18 41820018 */ beq lbl_800A8D30
|
|
/* 0A377C 800A8D1C 40800024 */ bge lbl_800A8D40
|
|
/* 0A3780 800A8D20 48000050 */ b lbl_800A8D70
|
|
lbl_800A8D24:
|
|
/* 0A3784 800A8D24 2C030005 */ cmpwi r3, 5
|
|
/* 0A3788 800A8D28 41820028 */ beq lbl_800A8D50
|
|
/* 0A378C 800A8D2C 48000044 */ b lbl_800A8D70
|
|
lbl_800A8D30:
|
|
/* 0A3790 800A8D30 3C60800F */ lis r3, GXNtsc480IntDf@ha
|
|
/* 0A3794 800A8D34 38031E60 */ addi r0, r3, GXNtsc480IntDf@l
|
|
/* 0A3798 800A8D38 7C1E0378 */ mr r30, r0
|
|
/* 0A379C 800A8D3C 48000040 */ b lbl_800A8D7C
|
|
lbl_800A8D40:
|
|
/* 0A37A0 800A8D40 3C60800F */ lis r3, GXPal528IntDf@ha
|
|
/* 0A37A4 800A8D44 38031F14 */ addi r0, r3, GXPal528IntDf@l
|
|
/* 0A37A8 800A8D48 7C1E0378 */ mr r30, r0
|
|
/* 0A37AC 800A8D4C 48000030 */ b lbl_800A8D7C
|
|
lbl_800A8D50:
|
|
/* 0A37B0 800A8D50 3C60800F */ lis r3, GXEurgb60Hz480IntDf@ha
|
|
/* 0A37B4 800A8D54 38031F50 */ addi r0, r3, GXEurgb60Hz480IntDf@l
|
|
/* 0A37B8 800A8D58 7C1E0378 */ mr r30, r0
|
|
/* 0A37BC 800A8D5C 48000020 */ b lbl_800A8D7C
|
|
lbl_800A8D60:
|
|
/* 0A37C0 800A8D60 3C60800F */ lis r3, GXMpal480IntDf@ha
|
|
/* 0A37C4 800A8D64 38031ED8 */ addi r0, r3, GXMpal480IntDf@l
|
|
/* 0A37C8 800A8D68 7C1E0378 */ mr r30, r0
|
|
/* 0A37CC 800A8D6C 48000010 */ b lbl_800A8D7C
|
|
lbl_800A8D70:
|
|
/* 0A37D0 800A8D70 3C60800F */ lis r3, GXNtsc480IntDf@ha
|
|
/* 0A37D4 800A8D74 38031E60 */ addi r0, r3, GXNtsc480IntDf@l
|
|
/* 0A37D8 800A8D78 7C1E0378 */ mr r30, r0
|
|
lbl_800A8D7C:
|
|
/* 0A37DC 800A8D7C 80010028 */ lwz r0, 0x28(r1)
|
|
/* 0A37E0 800A8D80 3C800100 */ lis r4, 0x100
|
|
/* 0A37E4 800A8D84 3861001C */ addi r3, r1, 0x1c
|
|
/* 0A37E8 800A8D88 9001001C */ stw r0, 0x1c(r1)
|
|
/* 0A37EC 800A8D8C 3884FFFF */ addi r4, r4, -1
|
|
/* 0A37F0 800A8D90 480030AD */ bl GXSetCopyClear
|
|
/* 0A37F4 800A8D94 38600000 */ li r3, 0
|
|
/* 0A37F8 800A8D98 38800001 */ li r4, 1
|
|
/* 0A37FC 800A8D9C 38A00004 */ li r5, 4
|
|
/* 0A3800 800A8DA0 38C0003C */ li r6, 0x3c
|
|
/* 0A3804 800A8DA4 38E00000 */ li r7, 0
|
|
/* 0A3808 800A8DA8 3900007D */ li r8, 0x7d
|
|
/* 0A380C 800A8DAC 48001A89 */ bl GXSetTexCoordGen2
|
|
/* 0A3810 800A8DB0 38600001 */ li r3, 1
|
|
/* 0A3814 800A8DB4 38800001 */ li r4, 1
|
|
/* 0A3818 800A8DB8 38A00005 */ li r5, 5
|
|
/* 0A381C 800A8DBC 38C0003C */ li r6, 0x3c
|
|
/* 0A3820 800A8DC0 38E00000 */ li r7, 0
|
|
/* 0A3824 800A8DC4 3900007D */ li r8, 0x7d
|
|
/* 0A3828 800A8DC8 48001A6D */ bl GXSetTexCoordGen2
|
|
/* 0A382C 800A8DCC 38600002 */ li r3, 2
|
|
/* 0A3830 800A8DD0 38800001 */ li r4, 1
|
|
/* 0A3834 800A8DD4 38A00006 */ li r5, 6
|
|
/* 0A3838 800A8DD8 38C0003C */ li r6, 0x3c
|
|
/* 0A383C 800A8DDC 38E00000 */ li r7, 0
|
|
/* 0A3840 800A8DE0 3900007D */ li r8, 0x7d
|
|
/* 0A3844 800A8DE4 48001A51 */ bl GXSetTexCoordGen2
|
|
/* 0A3848 800A8DE8 38600003 */ li r3, 3
|
|
/* 0A384C 800A8DEC 38800001 */ li r4, 1
|
|
/* 0A3850 800A8DF0 38A00007 */ li r5, 7
|
|
/* 0A3854 800A8DF4 38C0003C */ li r6, 0x3c
|
|
/* 0A3858 800A8DF8 38E00000 */ li r7, 0
|
|
/* 0A385C 800A8DFC 3900007D */ li r8, 0x7d
|
|
/* 0A3860 800A8E00 48001A35 */ bl GXSetTexCoordGen2
|
|
/* 0A3864 800A8E04 38600004 */ li r3, 4
|
|
/* 0A3868 800A8E08 38800001 */ li r4, 1
|
|
/* 0A386C 800A8E0C 38A00008 */ li r5, 8
|
|
/* 0A3870 800A8E10 38C0003C */ li r6, 0x3c
|
|
/* 0A3874 800A8E14 38E00000 */ li r7, 0
|
|
/* 0A3878 800A8E18 3900007D */ li r8, 0x7d
|
|
/* 0A387C 800A8E1C 48001A19 */ bl GXSetTexCoordGen2
|
|
/* 0A3880 800A8E20 38600005 */ li r3, 5
|
|
/* 0A3884 800A8E24 38800001 */ li r4, 1
|
|
/* 0A3888 800A8E28 38A00009 */ li r5, 9
|
|
/* 0A388C 800A8E2C 38C0003C */ li r6, 0x3c
|
|
/* 0A3890 800A8E30 38E00000 */ li r7, 0
|
|
/* 0A3894 800A8E34 3900007D */ li r8, 0x7d
|
|
/* 0A3898 800A8E38 480019FD */ bl GXSetTexCoordGen2
|
|
/* 0A389C 800A8E3C 38600006 */ li r3, 6
|
|
/* 0A38A0 800A8E40 38800001 */ li r4, 1
|
|
/* 0A38A4 800A8E44 38A0000A */ li r5, 0xa
|
|
/* 0A38A8 800A8E48 38C0003C */ li r6, 0x3c
|
|
/* 0A38AC 800A8E4C 38E00000 */ li r7, 0
|
|
/* 0A38B0 800A8E50 3900007D */ li r8, 0x7d
|
|
/* 0A38B4 800A8E54 480019E1 */ bl GXSetTexCoordGen2
|
|
/* 0A38B8 800A8E58 38600007 */ li r3, 7
|
|
/* 0A38BC 800A8E5C 38800001 */ li r4, 1
|
|
/* 0A38C0 800A8E60 38A0000B */ li r5, 0xb
|
|
/* 0A38C4 800A8E64 38C0003C */ li r6, 0x3c
|
|
/* 0A38C8 800A8E68 38E00000 */ li r7, 0
|
|
/* 0A38CC 800A8E6C 3900007D */ li r8, 0x7d
|
|
/* 0A38D0 800A8E70 480019C5 */ bl GXSetTexCoordGen2
|
|
/* 0A38D4 800A8E74 38600001 */ li r3, 1
|
|
/* 0A38D8 800A8E78 48001C3D */ bl GXSetNumTexGens
|
|
/* 0A38DC 800A8E7C 4800136D */ bl GXClearVtxDesc
|
|
/* 0A38E0 800A8E80 480019A5 */ bl GXInvalidateVtxCache
|
|
/* 0A38E4 800A8E84 3BA00009 */ li r29, 9
|
|
/* 0A38E8 800A8E88 48000004 */ b lbl_800A8E8C
|
|
lbl_800A8E8C:
|
|
/* 0A38EC 800A8E8C 48000004 */ b lbl_800A8E90
|
|
lbl_800A8E90:
|
|
/* 0A38F0 800A8E90 48000004 */ b lbl_800A8E94
|
|
lbl_800A8E94:
|
|
/* 0A38F4 800A8E94 80828400 */ lwz r4, __GXData@sda21(r2)
|
|
/* 0A38F8 800A8E98 7FA3EB78 */ mr r3, r29
|
|
/* 0A38FC 800A8E9C 38A00000 */ li r5, 0
|
|
/* 0A3900 800A8EA0 480018F9 */ bl GXSetArray
|
|
/* 0A3904 800A8EA4 3BBD0001 */ addi r29, r29, 1
|
|
/* 0A3908 800A8EA8 281D0018 */ cmplwi r29, 0x18
|
|
/* 0A390C 800A8EAC 4081FFE8 */ ble lbl_800A8E94
|
|
/* 0A3910 800A8EB0 3BA00000 */ li r29, 0
|
|
/* 0A3914 800A8EB4 48000004 */ b lbl_800A8EB8
|
|
lbl_800A8EB8:
|
|
/* 0A3918 800A8EB8 48000004 */ b lbl_800A8EBC
|
|
lbl_800A8EBC:
|
|
/* 0A391C 800A8EBC 48000004 */ b lbl_800A8EC0
|
|
lbl_800A8EC0:
|
|
/* 0A3920 800A8EC0 7FA3EB78 */ mr r3, r29
|
|
/* 0A3924 800A8EC4 389F0080 */ addi r4, r31, 0x80
|
|
/* 0A3928 800A8EC8 480015B5 */ bl GXSetVtxAttrFmtv
|
|
/* 0A392C 800A8ECC 3BBD0001 */ addi r29, r29, 1
|
|
/* 0A3930 800A8ED0 281D0008 */ cmplwi r29, 8
|
|
/* 0A3934 800A8ED4 4180FFEC */ blt lbl_800A8EC0
|
|
/* 0A3938 800A8ED8 38600006 */ li r3, 6
|
|
/* 0A393C 800A8EDC 38800000 */ li r4, 0
|
|
/* 0A3940 800A8EE0 480026D9 */ bl GXSetLineWidth
|
|
/* 0A3944 800A8EE4 38600006 */ li r3, 6
|
|
/* 0A3948 800A8EE8 38800000 */ li r4, 0
|
|
/* 0A394C 800A8EEC 4800270D */ bl GXSetPointSize
|
|
/* 0A3950 800A8EF0 38600000 */ li r3, 0
|
|
/* 0A3954 800A8EF4 38800000 */ li r4, 0
|
|
/* 0A3958 800A8EF8 38A00000 */ li r5, 0
|
|
/* 0A395C 800A8EFC 4800273D */ bl GXEnableTexOffsets
|
|
/* 0A3960 800A8F00 38600001 */ li r3, 1
|
|
/* 0A3964 800A8F04 38800000 */ li r4, 0
|
|
/* 0A3968 800A8F08 38A00000 */ li r5, 0
|
|
/* 0A396C 800A8F0C 4800272D */ bl GXEnableTexOffsets
|
|
/* 0A3970 800A8F10 38600002 */ li r3, 2
|
|
/* 0A3974 800A8F14 38800000 */ li r4, 0
|
|
/* 0A3978 800A8F18 38A00000 */ li r5, 0
|
|
/* 0A397C 800A8F1C 4800271D */ bl GXEnableTexOffsets
|
|
/* 0A3980 800A8F20 38600003 */ li r3, 3
|
|
/* 0A3984 800A8F24 38800000 */ li r4, 0
|
|
/* 0A3988 800A8F28 38A00000 */ li r5, 0
|
|
/* 0A398C 800A8F2C 4800270D */ bl GXEnableTexOffsets
|
|
/* 0A3990 800A8F30 38600004 */ li r3, 4
|
|
/* 0A3994 800A8F34 38800000 */ li r4, 0
|
|
/* 0A3998 800A8F38 38A00000 */ li r5, 0
|
|
/* 0A399C 800A8F3C 480026FD */ bl GXEnableTexOffsets
|
|
/* 0A39A0 800A8F40 38600005 */ li r3, 5
|
|
/* 0A39A4 800A8F44 38800000 */ li r4, 0
|
|
/* 0A39A8 800A8F48 38A00000 */ li r5, 0
|
|
/* 0A39AC 800A8F4C 480026ED */ bl GXEnableTexOffsets
|
|
/* 0A39B0 800A8F50 38600006 */ li r3, 6
|
|
/* 0A39B4 800A8F54 38800000 */ li r4, 0
|
|
/* 0A39B8 800A8F58 38A00000 */ li r5, 0
|
|
/* 0A39BC 800A8F5C 480026DD */ bl GXEnableTexOffsets
|
|
/* 0A39C0 800A8F60 38600007 */ li r3, 7
|
|
/* 0A39C4 800A8F64 38800000 */ li r4, 0
|
|
/* 0A39C8 800A8F68 38A00000 */ li r5, 0
|
|
/* 0A39CC 800A8F6C 480026CD */ bl GXEnableTexOffsets
|
|
/* 0A39D0 800A8F70 C0228418 */ lfs f1, D_80136118@sda21(r2)
|
|
/* 0A39D4 800A8F74 3861002C */ addi r3, r1, 0x2c
|
|
/* 0A39D8 800A8F78 C0028408 */ lfs f0, D_80136108@sda21(r2)
|
|
/* 0A39DC 800A8F7C 38800000 */ li r4, 0
|
|
/* 0A39E0 800A8F80 D021002C */ stfs f1, 0x2c(r1)
|
|
/* 0A39E4 800A8F84 D0010030 */ stfs f0, 0x30(r1)
|
|
/* 0A39E8 800A8F88 D0010034 */ stfs f0, 0x34(r1)
|
|
/* 0A39EC 800A8F8C D0010038 */ stfs f0, 0x38(r1)
|
|
/* 0A39F0 800A8F90 D001003C */ stfs f0, 0x3c(r1)
|
|
/* 0A39F4 800A8F94 D0210040 */ stfs f1, 0x40(r1)
|
|
/* 0A39F8 800A8F98 D0010044 */ stfs f0, 0x44(r1)
|
|
/* 0A39FC 800A8F9C D0010048 */ stfs f0, 0x48(r1)
|
|
/* 0A3A00 800A8FA0 D001004C */ stfs f0, 0x4c(r1)
|
|
/* 0A3A04 800A8FA4 D0010050 */ stfs f0, 0x50(r1)
|
|
/* 0A3A08 800A8FA8 D0210054 */ stfs f1, 0x54(r1)
|
|
/* 0A3A0C 800A8FAC D0010058 */ stfs f0, 0x58(r1)
|
|
/* 0A3A10 800A8FB0 480058B9 */ bl GXLoadPosMtxImm
|
|
/* 0A3A14 800A8FB4 3861002C */ addi r3, r1, 0x2c
|
|
/* 0A3A18 800A8FB8 38800000 */ li r4, 0
|
|
/* 0A3A1C 800A8FBC 480058FD */ bl GXLoadNrmMtxImm
|
|
/* 0A3A20 800A8FC0 38600000 */ li r3, 0
|
|
/* 0A3A24 800A8FC4 48005945 */ bl GXSetCurrentMtx
|
|
/* 0A3A28 800A8FC8 3861002C */ addi r3, r1, 0x2c
|
|
/* 0A3A2C 800A8FCC 3880003C */ li r4, 0x3c
|
|
/* 0A3A30 800A8FD0 38A00000 */ li r5, 0
|
|
/* 0A3A34 800A8FD4 48005969 */ bl GXLoadTexMtxImm
|
|
/* 0A3A38 800A8FD8 3861002C */ addi r3, r1, 0x2c
|
|
/* 0A3A3C 800A8FDC 3880007D */ li r4, 0x7d
|
|
/* 0A3A40 800A8FE0 38A00000 */ li r5, 0
|
|
/* 0A3A44 800A8FE4 48005959 */ bl GXLoadTexMtxImm
|
|
/* 0A3A48 800A8FE8 A09E0004 */ lhz r4, 4(r30)
|
|
/* 0A3A4C 800A8FEC 3C604330 */ lis r3, 0x4330
|
|
/* 0A3A50 800A8FF0 A01E0008 */ lhz r0, 8(r30)
|
|
/* 0A3A54 800A8FF4 9081008C */ stw r4, 0x8c(r1)
|
|
/* 0A3A58 800A8FF8 C0228408 */ lfs f1, D_80136108@sda21(r2)
|
|
/* 0A3A5C 800A8FFC 90010084 */ stw r0, 0x84(r1)
|
|
/* 0A3A60 800A9000 C8828420 */ lfd f4, D_80136120@sda21(r2)
|
|
/* 0A3A64 800A9004 FC400890 */ fmr f2, f1
|
|
/* 0A3A68 800A9008 90610088 */ stw r3, 0x88(r1)
|
|
/* 0A3A6C 800A900C FCA00890 */ fmr f5, f1
|
|
/* 0A3A70 800A9010 C0C28418 */ lfs f6, D_80136118@sda21(r2)
|
|
/* 0A3A74 800A9014 90610080 */ stw r3, 0x80(r1)
|
|
/* 0A3A78 800A9018 C8610088 */ lfd f3, 0x88(r1)
|
|
/* 0A3A7C 800A901C C8010080 */ lfd f0, 0x80(r1)
|
|
/* 0A3A80 800A9020 EC632028 */ fsubs f3, f3, f4
|
|
/* 0A3A84 800A9024 EC802028 */ fsubs f4, f0, f4
|
|
/* 0A3A88 800A9028 48005AB1 */ bl GXSetViewport
|
|
/* 0A3A8C 800A902C 387F0150 */ addi r3, r31, 0x150
|
|
/* 0A3A90 800A9030 480057AD */ bl GXSetProjectionv
|
|
/* 0A3A94 800A9034 38600000 */ li r3, 0
|
|
/* 0A3A98 800A9038 4800268D */ bl GXSetCoPlanar
|
|
/* 0A3A9C 800A903C 38600002 */ li r3, 2
|
|
/* 0A3AA0 800A9040 48002641 */ bl GXSetCullMode
|
|
/* 0A3AA4 800A9044 38600000 */ li r3, 0
|
|
/* 0A3AA8 800A9048 48005BD9 */ bl GXSetClipMode
|
|
/* 0A3AAC 800A904C A0BE0004 */ lhz r5, 4(r30)
|
|
/* 0A3AB0 800A9050 38600000 */ li r3, 0
|
|
/* 0A3AB4 800A9054 A0DE0006 */ lhz r6, 6(r30)
|
|
/* 0A3AB8 800A9058 38800000 */ li r4, 0
|
|
/* 0A3ABC 800A905C 48005AC5 */ bl GXSetScissor
|
|
/* 0A3AC0 800A9060 38600000 */ li r3, 0
|
|
/* 0A3AC4 800A9064 38800000 */ li r4, 0
|
|
/* 0A3AC8 800A9068 48005B79 */ bl GXSetScissorBoxOffset
|
|
/* 0A3ACC 800A906C 38600000 */ li r3, 0
|
|
/* 0A3AD0 800A9070 4800356D */ bl GXSetNumChans
|
|
/* 0A3AD4 800A9074 38600004 */ li r3, 4
|
|
/* 0A3AD8 800A9078 38800000 */ li r4, 0
|
|
/* 0A3ADC 800A907C 38A00000 */ li r5, 0
|
|
/* 0A3AE0 800A9080 38C00001 */ li r6, 1
|
|
/* 0A3AE4 800A9084 38E00000 */ li r7, 0
|
|
/* 0A3AE8 800A9088 39000000 */ li r8, 0
|
|
/* 0A3AEC 800A908C 39200002 */ li r9, 2
|
|
/* 0A3AF0 800A9090 48003589 */ bl GXSetChanCtrl
|
|
/* 0A3AF4 800A9094 80010024 */ lwz r0, 0x24(r1)
|
|
/* 0A3AF8 800A9098 38810018 */ addi r4, r1, 0x18
|
|
/* 0A3AFC 800A909C 38600004 */ li r3, 4
|
|
/* 0A3B00 800A90A0 90010018 */ stw r0, 0x18(r1)
|
|
/* 0A3B04 800A90A4 48003359 */ bl GXSetChanAmbColor
|
|
/* 0A3B08 800A90A8 80010020 */ lwz r0, 0x20(r1)
|
|
/* 0A3B0C 800A90AC 38810014 */ addi r4, r1, 0x14
|
|
/* 0A3B10 800A90B0 38600004 */ li r3, 4
|
|
/* 0A3B14 800A90B4 90010014 */ stw r0, 0x14(r1)
|
|
/* 0A3B18 800A90B8 48003435 */ bl GXSetChanMatColor
|
|
/* 0A3B1C 800A90BC 38600005 */ li r3, 5
|
|
/* 0A3B20 800A90C0 38800000 */ li r4, 0
|
|
/* 0A3B24 800A90C4 38A00000 */ li r5, 0
|
|
/* 0A3B28 800A90C8 38C00001 */ li r6, 1
|
|
/* 0A3B2C 800A90CC 38E00000 */ li r7, 0
|
|
/* 0A3B30 800A90D0 39000000 */ li r8, 0
|
|
/* 0A3B34 800A90D4 39200002 */ li r9, 2
|
|
/* 0A3B38 800A90D8 48003541 */ bl GXSetChanCtrl
|
|
/* 0A3B3C 800A90DC 80010024 */ lwz r0, 0x24(r1)
|
|
/* 0A3B40 800A90E0 38810010 */ addi r4, r1, 0x10
|
|
/* 0A3B44 800A90E4 38600005 */ li r3, 5
|
|
/* 0A3B48 800A90E8 90010010 */ stw r0, 0x10(r1)
|
|
/* 0A3B4C 800A90EC 48003311 */ bl GXSetChanAmbColor
|
|
/* 0A3B50 800A90F0 80010020 */ lwz r0, 0x20(r1)
|
|
/* 0A3B54 800A90F4 3881000C */ addi r4, r1, 0xc
|
|
/* 0A3B58 800A90F8 38600005 */ li r3, 5
|
|
/* 0A3B5C 800A90FC 9001000C */ stw r0, 0xc(r1)
|
|
/* 0A3B60 800A9100 480033ED */ bl GXSetChanMatColor
|
|
/* 0A3B64 800A9104 48003E85 */ bl GXInvalidateTexAll
|
|
/* 0A3B68 800A9108 3C60800B */ lis r3, __GXDefaultTexRegionCallback@ha
|
|
/* 0A3B6C 800A910C 38638284 */ addi r3, r3, __GXDefaultTexRegionCallback@l
|
|
/* 0A3B70 800A9110 48003EC1 */ bl GXSetTexRegionCallback
|
|
/* 0A3B74 800A9114 3C60800B */ lis r3, __GXDefaultTlutRegionCallback@ha
|
|
/* 0A3B78 800A9118 38638380 */ addi r3, r3, __GXDefaultTlutRegionCallback@l
|
|
/* 0A3B7C 800A911C 48003EC9 */ bl GXSetTlutRegionCallback
|
|
/* 0A3B80 800A9120 3861005C */ addi r3, r1, 0x5c
|
|
/* 0A3B84 800A9124 389F0060 */ addi r4, r31, 0x60
|
|
/* 0A3B88 800A9128 38A00004 */ li r5, 4
|
|
/* 0A3B8C 800A912C 38C00004 */ li r6, 4
|
|
/* 0A3B90 800A9130 38E00003 */ li r7, 3
|
|
/* 0A3B94 800A9134 39000000 */ li r8, 0
|
|
/* 0A3B98 800A9138 39200000 */ li r9, 0
|
|
/* 0A3B9C 800A913C 39400000 */ li r10, 0
|
|
/* 0A3BA0 800A9140 48003659 */ bl GXInitTexObj
|
|
/* 0A3BA4 800A9144 3861005C */ addi r3, r1, 0x5c
|
|
/* 0A3BA8 800A9148 38800000 */ li r4, 0
|
|
/* 0A3BAC 800A914C 48003BED */ bl GXLoadTexObj
|
|
/* 0A3BB0 800A9150 3861005C */ addi r3, r1, 0x5c
|
|
/* 0A3BB4 800A9154 38800001 */ li r4, 1
|
|
/* 0A3BB8 800A9158 48003BE1 */ bl GXLoadTexObj
|
|
/* 0A3BBC 800A915C 3861005C */ addi r3, r1, 0x5c
|
|
/* 0A3BC0 800A9160 38800002 */ li r4, 2
|
|
/* 0A3BC4 800A9164 48003BD5 */ bl GXLoadTexObj
|
|
/* 0A3BC8 800A9168 3861005C */ addi r3, r1, 0x5c
|
|
/* 0A3BCC 800A916C 38800003 */ li r4, 3
|
|
/* 0A3BD0 800A9170 48003BC9 */ bl GXLoadTexObj
|
|
/* 0A3BD4 800A9174 3861005C */ addi r3, r1, 0x5c
|
|
/* 0A3BD8 800A9178 38800004 */ li r4, 4
|
|
/* 0A3BDC 800A917C 48003BBD */ bl GXLoadTexObj
|
|
/* 0A3BE0 800A9180 3861005C */ addi r3, r1, 0x5c
|
|
/* 0A3BE4 800A9184 38800005 */ li r4, 5
|
|
/* 0A3BE8 800A9188 48003BB1 */ bl GXLoadTexObj
|
|
/* 0A3BEC 800A918C 3861005C */ addi r3, r1, 0x5c
|
|
/* 0A3BF0 800A9190 38800006 */ li r4, 6
|
|
/* 0A3BF4 800A9194 48003BA5 */ bl GXLoadTexObj
|
|
/* 0A3BF8 800A9198 3861005C */ addi r3, r1, 0x5c
|
|
/* 0A3BFC 800A919C 38800007 */ li r4, 7
|
|
/* 0A3C00 800A91A0 48003B99 */ bl GXLoadTexObj
|
|
/* 0A3C04 800A91A4 38600000 */ li r3, 0
|
|
/* 0A3C08 800A91A8 38800000 */ li r4, 0
|
|
/* 0A3C0C 800A91AC 38A00000 */ li r5, 0
|
|
/* 0A3C10 800A91B0 38C00004 */ li r6, 4
|
|
/* 0A3C14 800A91B4 48004BC9 */ bl GXSetTevOrder
|
|
/* 0A3C18 800A91B8 38600001 */ li r3, 1
|
|
/* 0A3C1C 800A91BC 38800001 */ li r4, 1
|
|
/* 0A3C20 800A91C0 38A00001 */ li r5, 1
|
|
/* 0A3C24 800A91C4 38C00004 */ li r6, 4
|
|
/* 0A3C28 800A91C8 48004BB5 */ bl GXSetTevOrder
|
|
/* 0A3C2C 800A91CC 38600002 */ li r3, 2
|
|
/* 0A3C30 800A91D0 38800002 */ li r4, 2
|
|
/* 0A3C34 800A91D4 38A00002 */ li r5, 2
|
|
/* 0A3C38 800A91D8 38C00004 */ li r6, 4
|
|
/* 0A3C3C 800A91DC 48004BA1 */ bl GXSetTevOrder
|
|
/* 0A3C40 800A91E0 38600003 */ li r3, 3
|
|
/* 0A3C44 800A91E4 38800003 */ li r4, 3
|
|
/* 0A3C48 800A91E8 38A00003 */ li r5, 3
|
|
/* 0A3C4C 800A91EC 38C00004 */ li r6, 4
|
|
/* 0A3C50 800A91F0 48004B8D */ bl GXSetTevOrder
|
|
/* 0A3C54 800A91F4 38600004 */ li r3, 4
|
|
/* 0A3C58 800A91F8 38800004 */ li r4, 4
|
|
/* 0A3C5C 800A91FC 38A00004 */ li r5, 4
|
|
/* 0A3C60 800A9200 38C00004 */ li r6, 4
|
|
/* 0A3C64 800A9204 48004B79 */ bl GXSetTevOrder
|
|
/* 0A3C68 800A9208 38600005 */ li r3, 5
|
|
/* 0A3C6C 800A920C 38800005 */ li r4, 5
|
|
/* 0A3C70 800A9210 38A00005 */ li r5, 5
|
|
/* 0A3C74 800A9214 38C00004 */ li r6, 4
|
|
/* 0A3C78 800A9218 48004B65 */ bl GXSetTevOrder
|
|
/* 0A3C7C 800A921C 38600006 */ li r3, 6
|
|
/* 0A3C80 800A9220 38800006 */ li r4, 6
|
|
/* 0A3C84 800A9224 38A00006 */ li r5, 6
|
|
/* 0A3C88 800A9228 38C00004 */ li r6, 4
|
|
/* 0A3C8C 800A922C 48004B51 */ bl GXSetTevOrder
|
|
/* 0A3C90 800A9230 38600007 */ li r3, 7
|
|
/* 0A3C94 800A9234 38800007 */ li r4, 7
|
|
/* 0A3C98 800A9238 38A00007 */ li r5, 7
|
|
/* 0A3C9C 800A923C 38C00004 */ li r6, 4
|
|
/* 0A3CA0 800A9240 48004B3D */ bl GXSetTevOrder
|
|
/* 0A3CA4 800A9244 38600008 */ li r3, 8
|
|
/* 0A3CA8 800A9248 388000FF */ li r4, 0xff
|
|
/* 0A3CAC 800A924C 38A000FF */ li r5, 0xff
|
|
/* 0A3CB0 800A9250 38C000FF */ li r6, 0xff
|
|
/* 0A3CB4 800A9254 48004B29 */ bl GXSetTevOrder
|
|
/* 0A3CB8 800A9258 38600009 */ li r3, 9
|
|
/* 0A3CBC 800A925C 388000FF */ li r4, 0xff
|
|
/* 0A3CC0 800A9260 38A000FF */ li r5, 0xff
|
|
/* 0A3CC4 800A9264 38C000FF */ li r6, 0xff
|
|
/* 0A3CC8 800A9268 48004B15 */ bl GXSetTevOrder
|
|
/* 0A3CCC 800A926C 3860000A */ li r3, 0xa
|
|
/* 0A3CD0 800A9270 388000FF */ li r4, 0xff
|
|
/* 0A3CD4 800A9274 38A000FF */ li r5, 0xff
|
|
/* 0A3CD8 800A9278 38C000FF */ li r6, 0xff
|
|
/* 0A3CDC 800A927C 48004B01 */ bl GXSetTevOrder
|
|
/* 0A3CE0 800A9280 3860000B */ li r3, 0xb
|
|
/* 0A3CE4 800A9284 388000FF */ li r4, 0xff
|
|
/* 0A3CE8 800A9288 38A000FF */ li r5, 0xff
|
|
/* 0A3CEC 800A928C 38C000FF */ li r6, 0xff
|
|
/* 0A3CF0 800A9290 48004AED */ bl GXSetTevOrder
|
|
/* 0A3CF4 800A9294 3860000C */ li r3, 0xc
|
|
/* 0A3CF8 800A9298 388000FF */ li r4, 0xff
|
|
/* 0A3CFC 800A929C 38A000FF */ li r5, 0xff
|
|
/* 0A3D00 800A92A0 38C000FF */ li r6, 0xff
|
|
/* 0A3D04 800A92A4 48004AD9 */ bl GXSetTevOrder
|
|
/* 0A3D08 800A92A8 3860000D */ li r3, 0xd
|
|
/* 0A3D0C 800A92AC 388000FF */ li r4, 0xff
|
|
/* 0A3D10 800A92B0 38A000FF */ li r5, 0xff
|
|
/* 0A3D14 800A92B4 38C000FF */ li r6, 0xff
|
|
/* 0A3D18 800A92B8 48004AC5 */ bl GXSetTevOrder
|
|
/* 0A3D1C 800A92BC 3860000E */ li r3, 0xe
|
|
/* 0A3D20 800A92C0 388000FF */ li r4, 0xff
|
|
/* 0A3D24 800A92C4 38A000FF */ li r5, 0xff
|
|
/* 0A3D28 800A92C8 38C000FF */ li r6, 0xff
|
|
/* 0A3D2C 800A92CC 48004AB1 */ bl GXSetTevOrder
|
|
/* 0A3D30 800A92D0 3860000F */ li r3, 0xf
|
|
/* 0A3D34 800A92D4 388000FF */ li r4, 0xff
|
|
/* 0A3D38 800A92D8 38A000FF */ li r5, 0xff
|
|
/* 0A3D3C 800A92DC 38C000FF */ li r6, 0xff
|
|
/* 0A3D40 800A92E0 48004A9D */ bl GXSetTevOrder
|
|
/* 0A3D44 800A92E4 38600001 */ li r3, 1
|
|
/* 0A3D48 800A92E8 48004C31 */ bl GXSetNumTevStages
|
|
/* 0A3D4C 800A92EC 38600000 */ li r3, 0
|
|
/* 0A3D50 800A92F0 38800003 */ li r4, 3
|
|
/* 0A3D54 800A92F4 480044E9 */ bl GXSetTevOp
|
|
/* 0A3D58 800A92F8 38600007 */ li r3, 7
|
|
/* 0A3D5C 800A92FC 38800000 */ li r4, 0
|
|
/* 0A3D60 800A9300 38A00000 */ li r5, 0
|
|
/* 0A3D64 800A9304 38C00007 */ li r6, 7
|
|
/* 0A3D68 800A9308 38E00000 */ li r7, 0
|
|
/* 0A3D6C 800A930C 480049A1 */ bl GXSetAlphaCompare
|
|
/* 0A3D70 800A9310 38600000 */ li r3, 0
|
|
/* 0A3D74 800A9314 38800011 */ li r4, 0x11
|
|
/* 0A3D78 800A9318 38A00000 */ li r5, 0
|
|
/* 0A3D7C 800A931C 480049D5 */ bl GXSetZTexture
|
|
/* 0A3D80 800A9320 3BE00000 */ li r31, 0
|
|
/* 0A3D84 800A9324 48000004 */ b lbl_800A9328
|
|
lbl_800A9328:
|
|
/* 0A3D88 800A9328 48000004 */ b lbl_800A932C
|
|
lbl_800A932C:
|
|
/* 0A3D8C 800A932C 48000004 */ b lbl_800A9330
|
|
lbl_800A9330:
|
|
/* 0A3D90 800A9330 7FE3FB78 */ mr r3, r31
|
|
/* 0A3D94 800A9334 38800006 */ li r4, 6
|
|
/* 0A3D98 800A9338 480047F5 */ bl GXSetTevKColorSel
|
|
/* 0A3D9C 800A933C 7FE3FB78 */ mr r3, r31
|
|
/* 0A3DA0 800A9340 38800000 */ li r4, 0
|
|
/* 0A3DA4 800A9344 48004845 */ bl GXSetTevKAlphaSel
|
|
/* 0A3DA8 800A9348 7FE3FB78 */ mr r3, r31
|
|
/* 0A3DAC 800A934C 38800000 */ li r4, 0
|
|
/* 0A3DB0 800A9350 38A00000 */ li r5, 0
|
|
/* 0A3DB4 800A9354 48004891 */ bl GXSetTevSwapMode
|
|
/* 0A3DB8 800A9358 3BFF0001 */ addi r31, r31, 1
|
|
/* 0A3DBC 800A935C 281F0010 */ cmplwi r31, 0x10
|
|
/* 0A3DC0 800A9360 4180FFD0 */ blt lbl_800A9330
|
|
/* 0A3DC4 800A9364 38600000 */ li r3, 0
|
|
/* 0A3DC8 800A9368 38800000 */ li r4, 0
|
|
/* 0A3DCC 800A936C 38A00001 */ li r5, 1
|
|
/* 0A3DD0 800A9370 38C00002 */ li r6, 2
|
|
/* 0A3DD4 800A9374 38E00003 */ li r7, 3
|
|
/* 0A3DD8 800A9378 480048B5 */ bl GXSetTevSwapModeTable
|
|
/* 0A3DDC 800A937C 38600001 */ li r3, 1
|
|
/* 0A3DE0 800A9380 38800000 */ li r4, 0
|
|
/* 0A3DE4 800A9384 38A00000 */ li r5, 0
|
|
/* 0A3DE8 800A9388 38C00000 */ li r6, 0
|
|
/* 0A3DEC 800A938C 38E00003 */ li r7, 3
|
|
/* 0A3DF0 800A9390 4800489D */ bl GXSetTevSwapModeTable
|
|
/* 0A3DF4 800A9394 38600002 */ li r3, 2
|
|
/* 0A3DF8 800A9398 38800001 */ li r4, 1
|
|
/* 0A3DFC 800A939C 38A00001 */ li r5, 1
|
|
/* 0A3E00 800A93A0 38C00001 */ li r6, 1
|
|
/* 0A3E04 800A93A4 38E00003 */ li r7, 3
|
|
/* 0A3E08 800A93A8 48004885 */ bl GXSetTevSwapModeTable
|
|
/* 0A3E0C 800A93AC 38600003 */ li r3, 3
|
|
/* 0A3E10 800A93B0 38800002 */ li r4, 2
|
|
/* 0A3E14 800A93B4 38A00002 */ li r5, 2
|
|
/* 0A3E18 800A93B8 38C00002 */ li r6, 2
|
|
/* 0A3E1C 800A93BC 38E00003 */ li r7, 3
|
|
/* 0A3E20 800A93C0 4800486D */ bl GXSetTevSwapModeTable
|
|
/* 0A3E24 800A93C4 3BE00000 */ li r31, 0
|
|
/* 0A3E28 800A93C8 48000004 */ b lbl_800A93CC
|
|
lbl_800A93CC:
|
|
/* 0A3E2C 800A93CC 48000004 */ b lbl_800A93D0
|
|
lbl_800A93D0:
|
|
/* 0A3E30 800A93D0 48000004 */ b lbl_800A93D4
|
|
lbl_800A93D4:
|
|
/* 0A3E34 800A93D4 7FE3FB78 */ mr r3, r31
|
|
/* 0A3E38 800A93D8 48004365 */ bl GXSetTevDirect
|
|
/* 0A3E3C 800A93DC 3BFF0001 */ addi r31, r31, 1
|
|
/* 0A3E40 800A93E0 281F0010 */ cmplwi r31, 0x10
|
|
/* 0A3E44 800A93E4 4180FFF0 */ blt lbl_800A93D4
|
|
/* 0A3E48 800A93E8 38600000 */ li r3, 0
|
|
/* 0A3E4C 800A93EC 4800432D */ bl GXSetNumIndStages
|
|
/* 0A3E50 800A93F0 38600000 */ li r3, 0
|
|
/* 0A3E54 800A93F4 38800000 */ li r4, 0
|
|
/* 0A3E58 800A93F8 38A00000 */ li r5, 0
|
|
/* 0A3E5C 800A93FC 480041D9 */ bl GXSetIndTexCoordScale
|
|
/* 0A3E60 800A9400 38600001 */ li r3, 1
|
|
/* 0A3E64 800A9404 38800000 */ li r4, 0
|
|
/* 0A3E68 800A9408 38A00000 */ li r5, 0
|
|
/* 0A3E6C 800A940C 480041C9 */ bl GXSetIndTexCoordScale
|
|
/* 0A3E70 800A9410 38600002 */ li r3, 2
|
|
/* 0A3E74 800A9414 38800000 */ li r4, 0
|
|
/* 0A3E78 800A9418 38A00000 */ li r5, 0
|
|
/* 0A3E7C 800A941C 480041B9 */ bl GXSetIndTexCoordScale
|
|
/* 0A3E80 800A9420 38600003 */ li r3, 3
|
|
/* 0A3E84 800A9424 38800000 */ li r4, 0
|
|
/* 0A3E88 800A9428 38A00000 */ li r5, 0
|
|
/* 0A3E8C 800A942C 480041A9 */ bl GXSetIndTexCoordScale
|
|
/* 0A3E90 800A9430 C0428418 */ lfs f2, D_80136118@sda21(r2)
|
|
/* 0A3E94 800A9434 38810008 */ addi r4, r1, 8
|
|
/* 0A3E98 800A9438 80010024 */ lwz r0, 0x24(r1)
|
|
/* 0A3E9C 800A943C 38600000 */ li r3, 0
|
|
/* 0A3EA0 800A9440 FC801090 */ fmr f4, f2
|
|
/* 0A3EA4 800A9444 90010008 */ stw r0, 8(r1)
|
|
/* 0A3EA8 800A9448 C0228408 */ lfs f1, D_80136108@sda21(r2)
|
|
/* 0A3EAC 800A944C C062841C */ lfs f3, D_8013611C@sda21(r2)
|
|
/* 0A3EB0 800A9450 48004AF1 */ bl GXSetFog
|
|
/* 0A3EB4 800A9454 38600000 */ li r3, 0
|
|
/* 0A3EB8 800A9458 38800000 */ li r4, 0
|
|
/* 0A3EBC 800A945C 38A00000 */ li r5, 0
|
|
/* 0A3EC0 800A9460 48004EB5 */ bl GXSetFogRangeAdj
|
|
/* 0A3EC4 800A9464 38600000 */ li r3, 0
|
|
/* 0A3EC8 800A9468 38800004 */ li r4, 4
|
|
/* 0A3ECC 800A946C 38A00005 */ li r5, 5
|
|
/* 0A3ED0 800A9470 38C00000 */ li r6, 0
|
|
/* 0A3ED4 800A9474 48004FC5 */ bl GXSetBlendMode
|
|
/* 0A3ED8 800A9478 38600001 */ li r3, 1
|
|
/* 0A3EDC 800A947C 48005011 */ bl GXSetColorUpdate
|
|
/* 0A3EE0 800A9480 38600001 */ li r3, 1
|
|
/* 0A3EE4 800A9484 48005035 */ bl GXSetAlphaUpdate
|
|
/* 0A3EE8 800A9488 38600001 */ li r3, 1
|
|
/* 0A3EEC 800A948C 38800003 */ li r4, 3
|
|
/* 0A3EF0 800A9490 38A00001 */ li r5, 1
|
|
/* 0A3EF4 800A9494 48005051 */ bl GXSetZMode
|
|
/* 0A3EF8 800A9498 38600001 */ li r3, 1
|
|
/* 0A3EFC 800A949C 4800507D */ bl GXSetZCompLoc
|
|
/* 0A3F00 800A94A0 38600001 */ li r3, 1
|
|
/* 0A3F04 800A94A4 4800517D */ bl GXSetDither
|
|
/* 0A3F08 800A94A8 38600000 */ li r3, 0
|
|
/* 0A3F0C 800A94AC 38800000 */ li r4, 0
|
|
/* 0A3F10 800A94B0 4800519D */ bl GXSetDstAlpha
|
|
/* 0A3F14 800A94B4 38600000 */ li r3, 0
|
|
/* 0A3F18 800A94B8 38800000 */ li r4, 0
|
|
/* 0A3F1C 800A94BC 48005091 */ bl GXSetPixelFmt
|
|
/* 0A3F20 800A94C0 38600001 */ li r3, 1
|
|
/* 0A3F24 800A94C4 38800001 */ li r4, 1
|
|
/* 0A3F28 800A94C8 480051C1 */ bl GXSetFieldMask
|
|
/* 0A3F2C 800A94CC A01E0008 */ lhz r0, 8(r30)
|
|
/* 0A3F30 800A94D0 A07E0010 */ lhz r3, 0x10(r30)
|
|
/* 0A3F34 800A94D4 5400083C */ slwi r0, r0, 1
|
|
/* 0A3F38 800A94D8 7C030000 */ cmpw r3, r0
|
|
/* 0A3F3C 800A94DC 4082000C */ bne lbl_800A94E8
|
|
/* 0A3F40 800A94E0 38800001 */ li r4, 1
|
|
/* 0A3F44 800A94E4 48000008 */ b lbl_800A94EC
|
|
lbl_800A94E8:
|
|
/* 0A3F48 800A94E8 38800000 */ li r4, 0
|
|
lbl_800A94EC:
|
|
/* 0A3F4C 800A94EC 887E0018 */ lbz r3, 0x18(r30)
|
|
/* 0A3F50 800A94F0 480051D1 */ bl GXSetFieldMode
|
|
/* 0A3F54 800A94F4 A0BE0004 */ lhz r5, 4(r30)
|
|
/* 0A3F58 800A94F8 38600000 */ li r3, 0
|
|
/* 0A3F5C 800A94FC A0DE0006 */ lhz r6, 6(r30)
|
|
/* 0A3F60 800A9500 38800000 */ li r4, 0
|
|
/* 0A3F64 800A9504 4800235D */ bl GXSetDispCopySrc
|
|
/* 0A3F68 800A9508 A07E0004 */ lhz r3, 4(r30)
|
|
/* 0A3F6C 800A950C A09E0006 */ lhz r4, 6(r30)
|
|
/* 0A3F70 800A9510 48002449 */ bl GXSetDispCopyDst
|
|
/* 0A3F74 800A9514 A09E0008 */ lhz r4, 8(r30)
|
|
/* 0A3F78 800A9518 3C604330 */ lis r3, 0x4330
|
|
/* 0A3F7C 800A951C A01E0006 */ lhz r0, 6(r30)
|
|
/* 0A3F80 800A9520 90810084 */ stw r4, 0x84(r1)
|
|
/* 0A3F84 800A9524 C8428420 */ lfd f2, D_80136120@sda21(r2)
|
|
/* 0A3F88 800A9528 9001008C */ stw r0, 0x8c(r1)
|
|
/* 0A3F8C 800A952C 90610080 */ stw r3, 0x80(r1)
|
|
/* 0A3F90 800A9530 90610088 */ stw r3, 0x88(r1)
|
|
/* 0A3F94 800A9534 C8210080 */ lfd f1, 0x80(r1)
|
|
/* 0A3F98 800A9538 C8010088 */ lfd f0, 0x88(r1)
|
|
/* 0A3F9C 800A953C EC211028 */ fsubs f1, f1, f2
|
|
/* 0A3FA0 800A9540 EC001028 */ fsubs f0, f0, f2
|
|
/* 0A3FA4 800A9544 EC210024 */ fdivs f1, f1, f0
|
|
/* 0A3FA8 800A9548 48002829 */ bl GXSetDispCopyYScale
|
|
/* 0A3FAC 800A954C 38600003 */ li r3, 3
|
|
/* 0A3FB0 800A9550 48002591 */ bl GXSetCopyClamp
|
|
/* 0A3FB4 800A9554 887E0019 */ lbz r3, 0x19(r30)
|
|
/* 0A3FB8 800A9558 389E001A */ addi r4, r30, 0x1a
|
|
/* 0A3FBC 800A955C 38DE0032 */ addi r6, r30, 0x32
|
|
/* 0A3FC0 800A9560 38A00001 */ li r5, 1
|
|
/* 0A3FC4 800A9564 48002951 */ bl GXSetCopyFilter
|
|
/* 0A3FC8 800A9568 38600000 */ li r3, 0
|
|
/* 0A3FCC 800A956C 48002B51 */ bl GXSetDispCopyGamma
|
|
/* 0A3FD0 800A9570 38600000 */ li r3, 0
|
|
/* 0A3FD4 800A9574 48002549 */ bl GXSetDispCopyFrame2Field
|
|
/* 0A3FD8 800A9578 48002E4D */ bl GXClearBoundingBox
|
|
/* 0A3FDC 800A957C 38600001 */ li r3, 1
|
|
/* 0A3FE0 800A9580 48001BE9 */ bl GXPokeColorUpdate
|
|
/* 0A3FE4 800A9584 38600001 */ li r3, 1
|
|
/* 0A3FE8 800A9588 48001B65 */ bl GXPokeAlphaUpdate
|
|
/* 0A3FEC 800A958C 38600000 */ li r3, 0
|
|
/* 0A3FF0 800A9590 48001C15 */ bl GXPokeDither
|
|
/* 0A3FF4 800A9594 38600000 */ li r3, 0
|
|
/* 0A3FF8 800A9598 38800000 */ li r4, 0
|
|
/* 0A3FFC 800A959C 38A00001 */ li r5, 1
|
|
/* 0A4000 800A95A0 38C0000F */ li r6, 0xf
|
|
/* 0A4004 800A95A4 48001B61 */ bl GXPokeBlendMode
|
|
/* 0A4008 800A95A8 38600007 */ li r3, 7
|
|
/* 0A400C 800A95AC 38800000 */ li r4, 0
|
|
/* 0A4010 800A95B0 48001B09 */ bl GXPokeAlphaMode
|
|
/* 0A4014 800A95B4 38600001 */ li r3, 1
|
|
/* 0A4018 800A95B8 48001B15 */ bl GXPokeAlphaRead
|
|
/* 0A401C 800A95BC 38600000 */ li r3, 0
|
|
/* 0A4020 800A95C0 38800000 */ li r4, 0
|
|
/* 0A4024 800A95C4 48001BBD */ bl GXPokeDstAlpha
|
|
/* 0A4028 800A95C8 38600001 */ li r3, 1
|
|
/* 0A402C 800A95CC 38800007 */ li r4, 7
|
|
/* 0A4030 800A95D0 38A00001 */ li r5, 1
|
|
/* 0A4034 800A95D4 48001BE9 */ bl GXPokeZMode
|
|
/* 0A4038 800A95D8 38600023 */ li r3, 0x23
|
|
/* 0A403C 800A95DC 38800016 */ li r4, 0x16
|
|
/* 0A4040 800A95E0 480056ED */ bl GXSetGPMetric
|
|
/* 0A4044 800A95E4 480060D9 */ bl GXClearGPMetric
|
|
/* 0A4048 800A95E8 800100A4 */ lwz r0, 0xa4(r1)
|
|
/* 0A404C 800A95EC 83E1009C */ lwz r31, 0x9c(r1)
|
|
/* 0A4050 800A95F0 83C10098 */ lwz r30, 0x98(r1)
|
|
/* 0A4054 800A95F4 83A10094 */ lwz r29, 0x94(r1)
|
|
/* 0A4058 800A95F8 382100A0 */ addi r1, r1, 0xa0
|
|
/* 0A405C 800A95FC 7C0803A6 */ mtlr r0
|
|
/* 0A4060 800A9600 4E800020 */ blr
|
|
|
|
.section .data, "wa"
|
|
|
|
.balign 8
|
|
|
|
/* 000EEB40 800F1AC0 0044 */
|
|
D_800F1AC0:
|
|
.asciz "<< Dolphin SDK - GX\trelease build: Jul 23 2003 11:27:39 (0x2301) >>"
|
|
.balign 4
|
|
|
|
.balign 32
|
|
|
|
/* 000EEBA0 800F1B20 0020 */
|
|
DefaultTexData:
|
|
.long 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF
|
|
|
|
.balign 32
|
|
|
|
/* 000EEBC0 800F1B40 00D0 */
|
|
GXDefaultVATList:
|
|
.long 0x00000009, 0x00000001, 0x00000004, 0x00000000, 0x0000000A, 0x00000000, 0x00000004, 0x00000000
|
|
.long 0x0000000B, 0x00000001, 0x00000005, 0x00000000, 0x0000000C, 0x00000001, 0x00000005, 0x00000000
|
|
.long 0x0000000D, 0x00000001, 0x00000004, 0x00000000, 0x0000000E, 0x00000001, 0x00000004, 0x00000000
|
|
.long 0x0000000F, 0x00000001, 0x00000004, 0x00000000, 0x00000010, 0x00000001, 0x00000004, 0x00000000
|
|
.long 0x00000011, 0x00000001, 0x00000004, 0x00000000, 0x00000012, 0x00000001, 0x00000004, 0x00000000
|
|
.long 0x00000013, 0x00000001, 0x00000004, 0x00000000, 0x00000014, 0x00000001, 0x00000004, 0x00000000
|
|
.long 0x000000FF, 0x00000000, 0x00000000, 0x00000000
|
|
|
|
/* 000EEC90 800F1C10 001C */
|
|
GXDefaultProjData:
|
|
.float 1.0, 0.0, 1.0, 0.0, -1.0, -2.0, 0.0
|
|
|
|
/* 000EECAC 800F1C2C 00C0 */
|
|
GXTexRegionAddrTable:
|
|
.long 0x00000000, 0x00010000, 0x00020000, 0x00030000, 0x00040000, 0x00050000, 0x00060000, 0x00070000
|
|
.long 0x00008000, 0x00018000, 0x00028000, 0x00038000, 0x00048000, 0x00058000, 0x00068000, 0x00078000
|
|
.long 0x00000000, 0x00090000, 0x00020000, 0x000B0000, 0x00040000, 0x00098000, 0x00060000, 0x000B8000
|
|
.long 0x00080000, 0x00010000, 0x000A0000, 0x00030000, 0x00088000, 0x00050000, 0x000A8000, 0x00070000
|
|
.long 0x00000000, 0x00090000, 0x00020000, 0x000B0000, 0x00040000, 0x00090000, 0x00060000, 0x000B0000
|
|
.long 0x00080000, 0x00010000, 0x000A0000, 0x00030000, 0x00080000, 0x00050000, 0x000A0000, 0x00070000
|
|
|
|
/* 000EED6C 800F1CEC 0010 */
|
|
GXResetFuncInfo:
|
|
.long __GXShutdown, 0x0000007F, 0x00000000, 0x00000000
|
|
|
|
.section .bss, "wa"
|
|
|
|
.balign 4
|
|
|
|
/* 0012EEB8 80131E38 0080 */
|
|
FifoObj:
|
|
.skip 128
|
|
|
|
/* 0012EF38 80131EB8 05B0 */
|
|
gxData:
|
|
.skip 1456
|
|
|
|
.section .sdata, "wa"
|
|
|
|
.balign 8
|
|
|
|
/* 000F16F0 80135470 0004 */
|
|
glabel __GXVersion
|
|
.long D_800F1AC0
|
|
|
|
.section .sbss, "wa"
|
|
|
|
.balign 8
|
|
|
|
/* 000F1B98 80135918 0004 */
|
|
glabel __piReg
|
|
.skip 4
|
|
|
|
/* 000F1B9C 8013591C 0004 */
|
|
glabel __cpReg
|
|
.skip 4
|
|
|
|
/* 000F1BA0 80135920 0004 */
|
|
glabel __peReg
|
|
.skip 4
|
|
|
|
/* 000F1BA4 80135924 0004 */
|
|
glabel __memReg
|
|
.skip 4
|
|
|
|
/* 000F1BA8 80135928 0004 */
|
|
peCount$35:
|
|
.skip 4
|
|
|
|
.balign 8
|
|
|
|
/* 000F1BB0 80135930 0008 */
|
|
time$36:
|
|
.skip 8
|
|
|
|
/* 000F1BB8 80135938 0004 */
|
|
calledOnce$37:
|
|
.skip 4
|
|
|
|
/* 000F1BBC 8013593C 0004 */
|
|
resetFuncRegistered$70:
|
|
.skip 4
|
|
|
|
.section .sdata2, "wa"
|
|
|
|
.balign 8
|
|
|
|
/* 000F1C00 80136100 0004 */
|
|
glabel __GXData
|
|
.long gxData
|
|
|
|
/* 000F1C04 80136104 0004 */
|
|
D_80136104:
|
|
.float 16777216.0
|
|
|
|
/* 000F1C08 80136108 0004 */
|
|
D_80136108:
|
|
.float 0.0
|
|
|
|
/* 000F1C0C 8013610C 0004 */
|
|
D_8013610C:
|
|
.long 0x404040FF
|
|
|
|
/* 000F1C10 80136110 0004 */
|
|
D_80136110:
|
|
.long 0x00000000
|
|
|
|
/* 000F1C14 80136114 0004 */
|
|
D_80136114:
|
|
.long 0xFFFFFFFF
|
|
|
|
/* 000F1C18 80136118 0004 */
|
|
D_80136118:
|
|
.float 1.0
|
|
|
|
/* 000F1C1C 8013611C 0004 */
|
|
D_8013611C:
|
|
.float 0.10000000149011612
|
|
|
|
/* 000F1C20 80136120 0008 */
|
|
D_80136120:
|
|
.double 4503599627370496.0
|