mirror of https://github.com/zeldaret/tp.git
2163 lines
108 KiB
ArmAsm
2163 lines
108 KiB
ArmAsm
.include "macros.inc"
|
|
|
|
.section .text, "ax" # 8034bf6c
|
|
|
|
|
|
.global __VIRetraceHandler
|
|
__VIRetraceHandler:
|
|
/* 8034BF6C 00348EAC 7C 08 02 A6 */ mflr r0
|
|
/* 8034BF70 00348EB0 3C 60 CC 00 */ lis r3, 0xCC002000@ha
|
|
/* 8034BF74 00348EB4 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 8034BF78 00348EB8 38 A3 20 00 */ addi r5, r3, 0xCC002000@l
|
|
/* 8034BF7C 00348EBC 3C 60 80 45 */ lis r3, lbl_8044CA28@ha
|
|
/* 8034BF80 00348EC0 94 21 FD 08 */ stwu r1, -0x2f8(r1)
|
|
/* 8034BF84 00348EC4 38 E0 00 00 */ li r7, 0
|
|
/* 8034BF88 00348EC8 BF 61 02 E4 */ stmw r27, 0x2e4(r1)
|
|
/* 8034BF8C 00348ECC 3B C4 00 00 */ addi r30, r4, 0
|
|
/* 8034BF90 00348ED0 3B E3 CA 28 */ addi r31, r3, lbl_8044CA28@l
|
|
/* 8034BF94 00348ED4 A4 C5 00 30 */ lhzu r6, 0x30(r5)
|
|
/* 8034BF98 00348ED8 54 C0 04 21 */ rlwinm. r0, r6, 0, 0x10, 0x10
|
|
/* 8034BF9C 00348EDC 41 82 00 10 */ beq lbl_8034BFAC
|
|
/* 8034BFA0 00348EE0 54 C0 04 5E */ rlwinm r0, r6, 0, 0x11, 0xf
|
|
/* 8034BFA4 00348EE4 B0 05 00 00 */ sth r0, 0(r5)
|
|
/* 8034BFA8 00348EE8 60 E7 00 01 */ ori r7, r7, 1
|
|
lbl_8034BFAC:
|
|
/* 8034BFAC 00348EEC 3C 60 CC 00 */ lis r3, 0xCC002034@ha
|
|
/* 8034BFB0 00348EF0 A4 83 20 34 */ lhzu r4, 0xCC002034@l(r3)
|
|
/* 8034BFB4 00348EF4 54 80 04 21 */ rlwinm. r0, r4, 0, 0x10, 0x10
|
|
/* 8034BFB8 00348EF8 41 82 00 10 */ beq lbl_8034BFC8
|
|
/* 8034BFBC 00348EFC 54 80 04 5E */ rlwinm r0, r4, 0, 0x11, 0xf
|
|
/* 8034BFC0 00348F00 B0 03 00 00 */ sth r0, 0(r3)
|
|
/* 8034BFC4 00348F04 60 E7 00 02 */ ori r7, r7, 2
|
|
lbl_8034BFC8:
|
|
/* 8034BFC8 00348F08 3C 60 CC 00 */ lis r3, 0xCC002038@ha
|
|
/* 8034BFCC 00348F0C A4 83 20 38 */ lhzu r4, 0xCC002038@l(r3)
|
|
/* 8034BFD0 00348F10 54 80 04 21 */ rlwinm. r0, r4, 0, 0x10, 0x10
|
|
/* 8034BFD4 00348F14 41 82 00 10 */ beq lbl_8034BFE4
|
|
/* 8034BFD8 00348F18 54 80 04 5E */ rlwinm r0, r4, 0, 0x11, 0xf
|
|
/* 8034BFDC 00348F1C B0 03 00 00 */ sth r0, 0(r3)
|
|
/* 8034BFE0 00348F20 60 E7 00 04 */ ori r7, r7, 4
|
|
lbl_8034BFE4:
|
|
/* 8034BFE4 00348F24 3C 60 CC 00 */ lis r3, 0xCC00203C@ha
|
|
/* 8034BFE8 00348F28 A4 83 20 3C */ lhzu r4, 0xCC00203C@l(r3)
|
|
/* 8034BFEC 00348F2C 54 80 04 21 */ rlwinm. r0, r4, 0, 0x10, 0x10
|
|
/* 8034BFF0 00348F30 41 82 00 10 */ beq lbl_8034C000
|
|
/* 8034BFF4 00348F34 54 80 04 5E */ rlwinm r0, r4, 0, 0x11, 0xf
|
|
/* 8034BFF8 00348F38 B0 03 00 00 */ sth r0, 0(r3)
|
|
/* 8034BFFC 00348F3C 60 E7 00 08 */ ori r7, r7, 8
|
|
lbl_8034C000:
|
|
/* 8034C000 00348F40 54 E0 07 7B */ rlwinm. r0, r7, 0, 0x1d, 0x1d
|
|
/* 8034C004 00348F44 40 82 00 0C */ bne lbl_8034C010
|
|
/* 8034C008 00348F48 54 E0 07 39 */ rlwinm. r0, r7, 0, 0x1c, 0x1c
|
|
/* 8034C00C 00348F4C 41 82 00 54 */ beq lbl_8034C060
|
|
lbl_8034C010:
|
|
/* 8034C010 00348F50 38 61 00 18 */ addi r3, r1, 0x18
|
|
/* 8034C014 00348F54 4B FE FF ED */ bl OSClearContext
|
|
/* 8034C018 00348F58 38 61 00 18 */ addi r3, r1, 0x18
|
|
/* 8034C01C 00348F5C 4B FE FE 1D */ bl OSSetCurrentContext
|
|
/* 8034C020 00348F60 80 0D 92 7C */ lwz r0, lbl_804517FC-_SDA_BASE_(r13)
|
|
/* 8034C024 00348F64 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8034C028 00348F68 41 82 00 24 */ beq lbl_8034C04C
|
|
/* 8034C02C 00348F6C 38 61 00 16 */ addi r3, r1, 0x16
|
|
/* 8034C030 00348F70 38 81 00 14 */ addi r4, r1, 0x14
|
|
/* 8034C034 00348F74 48 00 1D 29 */ bl __VIGetCurrentPosition
|
|
/* 8034C038 00348F78 81 8D 92 7C */ lwz r12, lbl_804517FC-_SDA_BASE_(r13)
|
|
/* 8034C03C 00348F7C A8 61 00 16 */ lha r3, 0x16(r1)
|
|
/* 8034C040 00348F80 7D 88 03 A6 */ mtlr r12
|
|
/* 8034C044 00348F84 A8 81 00 14 */ lha r4, 0x14(r1)
|
|
/* 8034C048 00348F88 4E 80 00 21 */ blrl
|
|
lbl_8034C04C:
|
|
/* 8034C04C 00348F8C 38 61 00 18 */ addi r3, r1, 0x18
|
|
/* 8034C050 00348F90 4B FE FF B1 */ bl OSClearContext
|
|
/* 8034C054 00348F94 7F C3 F3 78 */ mr r3, r30
|
|
/* 8034C058 00348F98 4B FE FD E1 */ bl OSSetCurrentContext
|
|
/* 8034C05C 00348F9C 48 00 01 70 */ b lbl_8034C1CC
|
|
lbl_8034C060:
|
|
/* 8034C060 00348FA0 80 8D 92 64 */ lwz r4, lbl_804517E4-_SDA_BASE_(r13)
|
|
/* 8034C064 00348FA4 38 61 00 18 */ addi r3, r1, 0x18
|
|
/* 8034C068 00348FA8 38 04 00 01 */ addi r0, r4, 1
|
|
/* 8034C06C 00348FAC 90 0D 92 64 */ stw r0, lbl_804517E4-_SDA_BASE_(r13)
|
|
/* 8034C070 00348FB0 4B FE FF 91 */ bl OSClearContext
|
|
/* 8034C074 00348FB4 38 61 00 18 */ addi r3, r1, 0x18
|
|
/* 8034C078 00348FB8 4B FE FD C1 */ bl OSSetCurrentContext
|
|
/* 8034C07C 00348FBC 81 8D 92 74 */ lwz r12, lbl_804517F4-_SDA_BASE_(r13)
|
|
/* 8034C080 00348FC0 28 0C 00 00 */ cmplwi r12, 0
|
|
/* 8034C084 00348FC4 41 82 00 10 */ beq lbl_8034C094
|
|
/* 8034C088 00348FC8 80 6D 92 64 */ lwz r3, lbl_804517E4-_SDA_BASE_(r13)
|
|
/* 8034C08C 00348FCC 7D 88 03 A6 */ mtlr r12
|
|
/* 8034C090 00348FD0 4E 80 00 21 */ blrl
|
|
lbl_8034C094:
|
|
/* 8034C094 00348FD4 80 0D 92 68 */ lwz r0, lbl_804517E8-_SDA_BASE_(r13)
|
|
/* 8034C098 00348FD8 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8034C09C 00348FDC 41 82 00 F4 */ beq lbl_8034C190
|
|
/* 8034C0A0 00348FE0 80 0D 92 98 */ lwz r0, lbl_80451818-_SDA_BASE_(r13)
|
|
/* 8034C0A4 00348FE4 28 00 00 01 */ cmplwi r0, 1
|
|
/* 8034C0A8 00348FE8 40 82 00 10 */ bne lbl_8034C0B8
|
|
/* 8034C0AC 00348FEC 48 00 18 55 */ bl getCurrentFieldEvenOdd
|
|
/* 8034C0B0 00348FF0 28 03 00 00 */ cmplwi r3, 0
|
|
/* 8034C0B4 00348FF4 41 82 00 C4 */ beq lbl_8034C178
|
|
lbl_8034C0B8:
|
|
/* 8034C0B8 00348FF8 3C 60 CC 00 */ lis r3, 0xCC002000@ha
|
|
/* 8034C0BC 00348FFC 3B A3 20 00 */ addi r29, r3, 0xCC002000@l
|
|
/* 8034C0C0 00349000 48 00 00 78 */ b lbl_8034C138
|
|
lbl_8034C0C4:
|
|
/* 8034C0C4 00349004 80 6D 92 A0 */ lwz r3, lbl_80451820-_SDA_BASE_(r13)
|
|
/* 8034C0C8 00349008 38 A0 00 20 */ li r5, 0x20
|
|
/* 8034C0CC 0034900C 83 6D 92 A4 */ lwz r27, lbl_80451824-_SDA_BASE_(r13)
|
|
/* 8034C0D0 00349010 38 9B 00 00 */ addi r4, r27, 0
|
|
/* 8034C0D4 00349014 48 01 65 9D */ bl func_80362670
|
|
/* 8034C0D8 00349018 7C 84 00 34 */ cntlzw r4, r4
|
|
/* 8034C0DC 0034901C 2C 04 00 20 */ cmpwi r4, 0x20
|
|
/* 8034C0E0 00349020 38 00 FF FF */ li r0, -1
|
|
/* 8034C0E4 00349024 7F 60 00 38 */ and r0, r27, r0
|
|
/* 8034C0E8 00349028 40 80 00 08 */ bge lbl_8034C0F0
|
|
/* 8034C0EC 0034902C 48 00 00 0C */ b lbl_8034C0F8
|
|
lbl_8034C0F0:
|
|
/* 8034C0F0 00349030 7C 03 00 34 */ cntlzw r3, r0
|
|
/* 8034C0F4 00349034 38 83 00 20 */ addi r4, r3, 0x20
|
|
lbl_8034C0F8:
|
|
/* 8034C0F8 00349038 54 86 08 3C */ slwi r6, r4, 1
|
|
/* 8034C0FC 0034903C 7C 7F 32 14 */ add r3, r31, r6
|
|
/* 8034C100 00349040 A0 03 00 78 */ lhz r0, 0x78(r3)
|
|
/* 8034C104 00349044 20 A4 00 3F */ subfic r5, r4, 0x3f
|
|
/* 8034C108 00349048 38 60 00 00 */ li r3, 0
|
|
/* 8034C10C 0034904C 7C 1D 33 2E */ sthx r0, r29, r6
|
|
/* 8034C110 00349050 38 80 00 01 */ li r4, 1
|
|
/* 8034C114 00349054 48 01 65 39 */ bl func_8036264C
|
|
/* 8034C118 00349058 80 0D 92 A0 */ lwz r0, lbl_80451820-_SDA_BASE_(r13)
|
|
/* 8034C11C 0034905C 7C 65 18 F8 */ nor r5, r3, r3
|
|
/* 8034C120 00349060 7C 84 20 F8 */ nor r4, r4, r4
|
|
/* 8034C124 00349064 80 6D 92 A4 */ lwz r3, lbl_80451824-_SDA_BASE_(r13)
|
|
/* 8034C128 00349068 7C 00 28 38 */ and r0, r0, r5
|
|
/* 8034C12C 0034906C 7C 63 20 38 */ and r3, r3, r4
|
|
/* 8034C130 00349070 90 6D 92 A4 */ stw r3, lbl_80451824-_SDA_BASE_(r13)
|
|
/* 8034C134 00349074 90 0D 92 A0 */ stw r0, lbl_80451820-_SDA_BASE_(r13)
|
|
lbl_8034C138:
|
|
/* 8034C138 00349078 80 0D 92 A0 */ lwz r0, lbl_80451820-_SDA_BASE_(r13)
|
|
/* 8034C13C 0034907C 38 80 00 00 */ li r4, 0
|
|
/* 8034C140 00349080 80 6D 92 A4 */ lwz r3, lbl_80451824-_SDA_BASE_(r13)
|
|
/* 8034C144 00349084 7C 00 22 78 */ xor r0, r0, r4
|
|
/* 8034C148 00349088 7C 63 22 78 */ xor r3, r3, r4
|
|
/* 8034C14C 0034908C 7C 60 03 79 */ or. r0, r3, r0
|
|
/* 8034C150 00349090 40 82 FF 74 */ bne lbl_8034C0C4
|
|
/* 8034C154 00349094 90 8D 92 98 */ stw r4, lbl_80451818-_SDA_BASE_(r13)
|
|
/* 8034C158 00349098 38 80 00 01 */ li r4, 1
|
|
/* 8034C15C 0034909C 80 0D 92 B0 */ lwz r0, lbl_80451830-_SDA_BASE_(r13)
|
|
/* 8034C160 003490A0 80 7F 01 44 */ lwz r3, 0x144(r31)
|
|
/* 8034C164 003490A4 90 6D 92 A8 */ stw r3, lbl_80451828-_SDA_BASE_(r13)
|
|
/* 8034C168 003490A8 80 7F 01 18 */ lwz r3, 0x118(r31)
|
|
/* 8034C16C 003490AC 90 6D 92 AC */ stw r3, lbl_8045182C-_SDA_BASE_(r13)
|
|
/* 8034C170 003490B0 90 0D 92 B4 */ stw r0, lbl_80451834-_SDA_BASE_(r13)
|
|
/* 8034C174 003490B4 48 00 00 08 */ b lbl_8034C17C
|
|
lbl_8034C178:
|
|
/* 8034C178 003490B8 38 80 00 00 */ li r4, 0
|
|
lbl_8034C17C:
|
|
/* 8034C17C 003490BC 2C 04 00 00 */ cmpwi r4, 0
|
|
/* 8034C180 003490C0 41 82 00 10 */ beq lbl_8034C190
|
|
/* 8034C184 003490C4 38 00 00 00 */ li r0, 0
|
|
/* 8034C188 003490C8 90 0D 92 68 */ stw r0, lbl_804517E8-_SDA_BASE_(r13)
|
|
/* 8034C18C 003490CC 4B FF A1 E9 */ bl SIRefreshSamplingRate
|
|
lbl_8034C190:
|
|
/* 8034C190 003490D0 80 0D 92 78 */ lwz r0, lbl_804517F8-_SDA_BASE_(r13)
|
|
/* 8034C194 003490D4 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8034C198 003490D8 41 82 00 1C */ beq lbl_8034C1B4
|
|
/* 8034C19C 003490DC 38 61 00 18 */ addi r3, r1, 0x18
|
|
/* 8034C1A0 003490E0 4B FE FE 61 */ bl OSClearContext
|
|
/* 8034C1A4 003490E4 81 8D 92 78 */ lwz r12, lbl_804517F8-_SDA_BASE_(r13)
|
|
/* 8034C1A8 003490E8 80 6D 92 64 */ lwz r3, lbl_804517E4-_SDA_BASE_(r13)
|
|
/* 8034C1AC 003490EC 7D 88 03 A6 */ mtlr r12
|
|
/* 8034C1B0 003490F0 4E 80 00 21 */ blrl
|
|
lbl_8034C1B4:
|
|
/* 8034C1B4 003490F4 38 6D 92 6C */ addi r3, r13, lbl_804517EC-_SDA_BASE_
|
|
/* 8034C1B8 003490F8 4B FF 5A E1 */ bl OSWakeupThread
|
|
/* 8034C1BC 003490FC 38 61 00 18 */ addi r3, r1, 0x18
|
|
/* 8034C1C0 00349100 4B FE FE 41 */ bl OSClearContext
|
|
/* 8034C1C4 00349104 7F C3 F3 78 */ mr r3, r30
|
|
/* 8034C1C8 00349108 4B FE FC 71 */ bl OSSetCurrentContext
|
|
lbl_8034C1CC:
|
|
/* 8034C1CC 0034910C BB 61 02 E4 */ lmw r27, 0x2e4(r1)
|
|
/* 8034C1D0 00349110 80 01 02 FC */ lwz r0, 0x2fc(r1)
|
|
/* 8034C1D4 00349114 38 21 02 F8 */ addi r1, r1, 0x2f8
|
|
/* 8034C1D8 00349118 7C 08 03 A6 */ mtlr r0
|
|
/* 8034C1DC 0034911C 4E 80 00 20 */ blr
|
|
|
|
.global VISetPreRetraceCallback
|
|
VISetPreRetraceCallback:
|
|
/* 8034C1E0 00349120 7C 08 02 A6 */ mflr r0
|
|
/* 8034C1E4 00349124 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 8034C1E8 00349128 94 21 FF E8 */ stwu r1, -0x18(r1)
|
|
/* 8034C1EC 0034912C 93 E1 00 14 */ stw r31, 0x14(r1)
|
|
/* 8034C1F0 00349130 93 C1 00 10 */ stw r30, 0x10(r1)
|
|
/* 8034C1F4 00349134 7C 7E 1B 78 */ mr r30, r3
|
|
/* 8034C1F8 00349138 83 ED 92 74 */ lwz r31, lbl_804517F4-_SDA_BASE_(r13)
|
|
/* 8034C1FC 0034913C 4B FF 14 F9 */ bl __RAS_OSDisableInterrupts_begin
|
|
/* 8034C200 00349140 93 CD 92 74 */ stw r30, lbl_804517F4-_SDA_BASE_(r13)
|
|
/* 8034C204 00349144 4B FF 15 19 */ bl OSRestoreInterrupts
|
|
/* 8034C208 00349148 7F E3 FB 78 */ mr r3, r31
|
|
/* 8034C20C 0034914C 80 01 00 1C */ lwz r0, 0x1c(r1)
|
|
/* 8034C210 00349150 83 E1 00 14 */ lwz r31, 0x14(r1)
|
|
/* 8034C214 00349154 83 C1 00 10 */ lwz r30, 0x10(r1)
|
|
/* 8034C218 00349158 38 21 00 18 */ addi r1, r1, 0x18
|
|
/* 8034C21C 0034915C 7C 08 03 A6 */ mtlr r0
|
|
/* 8034C220 00349160 4E 80 00 20 */ blr
|
|
|
|
.global VISetPostRetraceCallback
|
|
VISetPostRetraceCallback:
|
|
/* 8034C224 00349164 7C 08 02 A6 */ mflr r0
|
|
/* 8034C228 00349168 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 8034C22C 0034916C 94 21 FF E8 */ stwu r1, -0x18(r1)
|
|
/* 8034C230 00349170 93 E1 00 14 */ stw r31, 0x14(r1)
|
|
/* 8034C234 00349174 93 C1 00 10 */ stw r30, 0x10(r1)
|
|
/* 8034C238 00349178 7C 7E 1B 78 */ mr r30, r3
|
|
/* 8034C23C 0034917C 83 ED 92 78 */ lwz r31, lbl_804517F8-_SDA_BASE_(r13)
|
|
/* 8034C240 00349180 4B FF 14 B5 */ bl __RAS_OSDisableInterrupts_begin
|
|
/* 8034C244 00349184 93 CD 92 78 */ stw r30, lbl_804517F8-_SDA_BASE_(r13)
|
|
/* 8034C248 00349188 4B FF 14 D5 */ bl OSRestoreInterrupts
|
|
/* 8034C24C 0034918C 7F E3 FB 78 */ mr r3, r31
|
|
/* 8034C250 00349190 80 01 00 1C */ lwz r0, 0x1c(r1)
|
|
/* 8034C254 00349194 83 E1 00 14 */ lwz r31, 0x14(r1)
|
|
/* 8034C258 00349198 83 C1 00 10 */ lwz r30, 0x10(r1)
|
|
/* 8034C25C 0034919C 38 21 00 18 */ addi r1, r1, 0x18
|
|
/* 8034C260 003491A0 7C 08 03 A6 */ mtlr r0
|
|
/* 8034C264 003491A4 4E 80 00 20 */ blr
|
|
|
|
.global getTiming
|
|
getTiming:
|
|
/* 8034C268 003491A8 28 03 00 1E */ cmplwi r3, 0x1e
|
|
/* 8034C26C 003491AC 3C 80 80 3D */ lis r4, lbl_803D1760@ha
|
|
/* 8034C270 003491B0 38 A4 17 60 */ addi r5, r4, lbl_803D1760@l
|
|
/* 8034C274 003491B4 41 81 00 94 */ bgt lbl_8034C308
|
|
/* 8034C278 003491B8 3C 80 80 3D */ lis r4, lbl_803D1954@ha
|
|
/* 8034C27C 003491BC 38 84 19 54 */ addi r4, r4, lbl_803D1954@l
|
|
/* 8034C280 003491C0 54 60 10 3A */ slwi r0, r3, 2
|
|
/* 8034C284 003491C4 7C 04 00 2E */ lwzx r0, r4, r0
|
|
/* 8034C288 003491C8 7C 09 03 A6 */ mtctr r0
|
|
/* 8034C28C 003491CC 4E 80 04 20 */ bctr
|
|
/* 8034C290 003491D0 38 65 00 44 */ addi r3, r5, 0x44
|
|
/* 8034C294 003491D4 4E 80 00 20 */ blr
|
|
/* 8034C298 003491D8 38 65 00 6A */ addi r3, r5, 0x6a
|
|
/* 8034C29C 003491DC 4E 80 00 20 */ blr
|
|
/* 8034C2A0 003491E0 38 65 00 90 */ addi r3, r5, 0x90
|
|
/* 8034C2A4 003491E4 4E 80 00 20 */ blr
|
|
/* 8034C2A8 003491E8 38 65 00 B6 */ addi r3, r5, 0xb6
|
|
/* 8034C2AC 003491EC 4E 80 00 20 */ blr
|
|
/* 8034C2B0 003491F0 38 65 00 44 */ addi r3, r5, 0x44
|
|
/* 8034C2B4 003491F4 4E 80 00 20 */ blr
|
|
/* 8034C2B8 003491F8 38 65 00 6A */ addi r3, r5, 0x6a
|
|
/* 8034C2BC 003491FC 4E 80 00 20 */ blr
|
|
/* 8034C2C0 00349200 38 65 00 DC */ addi r3, r5, 0xdc
|
|
/* 8034C2C4 00349204 4E 80 00 20 */ blr
|
|
/* 8034C2C8 00349208 38 65 01 02 */ addi r3, r5, 0x102
|
|
/* 8034C2CC 0034920C 4E 80 00 20 */ blr
|
|
/* 8034C2D0 00349210 38 65 01 28 */ addi r3, r5, 0x128
|
|
/* 8034C2D4 00349214 4E 80 00 20 */ blr
|
|
/* 8034C2D8 00349218 38 65 01 4E */ addi r3, r5, 0x14e
|
|
/* 8034C2DC 0034921C 4E 80 00 20 */ blr
|
|
/* 8034C2E0 00349220 38 65 00 90 */ addi r3, r5, 0x90
|
|
/* 8034C2E4 00349224 4E 80 00 20 */ blr
|
|
/* 8034C2E8 00349228 38 65 00 B6 */ addi r3, r5, 0xb6
|
|
/* 8034C2EC 0034922C 4E 80 00 20 */ blr
|
|
/* 8034C2F0 00349230 38 65 01 74 */ addi r3, r5, 0x174
|
|
/* 8034C2F4 00349234 4E 80 00 20 */ blr
|
|
/* 8034C2F8 00349238 38 65 01 9A */ addi r3, r5, 0x19a
|
|
/* 8034C2FC 0034923C 4E 80 00 20 */ blr
|
|
/* 8034C300 00349240 80 6D 92 BC */ lwz r3, lbl_8045183C-_SDA_BASE_(r13)
|
|
/* 8034C304 00349244 4E 80 00 20 */ blr
|
|
lbl_8034C308:
|
|
/* 8034C308 00349248 38 60 00 00 */ li r3, 0
|
|
/* 8034C30C 0034924C 4E 80 00 20 */ blr
|
|
|
|
.global __VIInit
|
|
__VIInit:
|
|
/* 8034C310 00349250 7C 08 02 A6 */ mflr r0
|
|
/* 8034C314 00349254 3C 80 80 00 */ lis r4, 0x800000CC@ha
|
|
/* 8034C318 00349258 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 8034C31C 0034925C 54 60 F0 BE */ srwi r0, r3, 2
|
|
/* 8034C320 00349260 94 21 FF D8 */ stwu r1, -0x28(r1)
|
|
/* 8034C324 00349264 93 E1 00 24 */ stw r31, 0x24(r1)
|
|
/* 8034C328 00349268 54 7F 07 BE */ clrlwi r31, r3, 0x1e
|
|
/* 8034C32C 0034926C 93 C1 00 20 */ stw r30, 0x20(r1)
|
|
/* 8034C330 00349270 7C 1E 03 78 */ mr r30, r0
|
|
/* 8034C334 00349274 90 04 00 CC */ stw r0, 0x800000CC@l(r4)
|
|
/* 8034C338 00349278 4B FF FF 31 */ bl getTiming
|
|
/* 8034C33C 0034927C 3C 80 CC 00 */ lis r4, 0xCC002000@ha
|
|
/* 8034C340 00349280 38 00 00 02 */ li r0, 2
|
|
/* 8034C344 00349284 38 A4 20 00 */ addi r5, r4, 0xCC002000@l
|
|
/* 8034C348 00349288 B4 05 00 02 */ sthu r0, 2(r5)
|
|
/* 8034C34C 0034928C 38 00 00 00 */ li r0, 0
|
|
/* 8034C350 00349290 90 01 00 1C */ stw r0, 0x1c(r1)
|
|
/* 8034C354 00349294 80 01 00 1C */ lwz r0, 0x1c(r1)
|
|
/* 8034C358 00349298 28 00 03 E8 */ cmplwi r0, 0x3e8
|
|
/* 8034C35C 0034929C 40 80 00 20 */ bge lbl_8034C37C
|
|
/* 8034C360 003492A0 48 00 00 10 */ b lbl_8034C370
|
|
lbl_8034C364:
|
|
/* 8034C364 003492A4 80 81 00 1C */ lwz r4, 0x1c(r1)
|
|
/* 8034C368 003492A8 38 04 00 08 */ addi r0, r4, 8
|
|
/* 8034C36C 003492AC 90 01 00 1C */ stw r0, 0x1c(r1)
|
|
lbl_8034C370:
|
|
/* 8034C370 003492B0 80 01 00 1C */ lwz r0, 0x1c(r1)
|
|
/* 8034C374 003492B4 28 00 03 E8 */ cmplwi r0, 0x3e8
|
|
/* 8034C378 003492B8 41 80 FF EC */ blt lbl_8034C364
|
|
lbl_8034C37C:
|
|
/* 8034C37C 003492BC 38 00 00 00 */ li r0, 0
|
|
/* 8034C380 003492C0 B0 05 00 00 */ sth r0, 0(r5)
|
|
/* 8034C384 003492C4 3D 60 CC 00 */ lis r11, 0xCC002006@ha
|
|
/* 8034C388 003492C8 38 E0 28 28 */ li r7, 0x2828
|
|
/* 8034C38C 003492CC A0 03 00 1A */ lhz r0, 0x1a(r3)
|
|
/* 8034C390 003492D0 38 C0 00 01 */ li r6, 1
|
|
/* 8034C394 003492D4 2C 1E 00 04 */ cmpwi r30, 4
|
|
/* 8034C398 003492D8 B0 0B 20 06 */ sth r0, 0xCC002006@l(r11)
|
|
/* 8034C39C 003492DC 38 00 10 01 */ li r0, 0x1001
|
|
/* 8034C3A0 003492E0 89 03 00 1D */ lbz r8, 0x1d(r3)
|
|
/* 8034C3A4 003492E4 89 23 00 1E */ lbz r9, 0x1e(r3)
|
|
/* 8034C3A8 003492E8 51 09 44 2E */ rlwimi r9, r8, 8, 0x10, 0x17
|
|
/* 8034C3AC 003492EC B1 2B 20 04 */ sth r9, 0x2004(r11)
|
|
/* 8034C3B0 003492F0 89 03 00 1F */ lbz r8, 0x1f(r3)
|
|
/* 8034C3B4 003492F4 89 23 00 1C */ lbz r9, 0x1c(r3)
|
|
/* 8034C3B8 003492F8 55 08 38 30 */ slwi r8, r8, 7
|
|
/* 8034C3BC 003492FC 7D 28 43 78 */ or r8, r9, r8
|
|
/* 8034C3C0 00349300 B1 0B 20 0A */ sth r8, 0x200a(r11)
|
|
/* 8034C3C4 00349304 A1 03 00 20 */ lhz r8, 0x20(r3)
|
|
/* 8034C3C8 00349308 55 08 0C 3C */ rlwinm r8, r8, 1, 0x10, 0x1e
|
|
/* 8034C3CC 0034930C B1 0B 20 08 */ sth r8, 0x2008(r11)
|
|
/* 8034C3D0 00349310 A1 03 00 02 */ lhz r8, 2(r3)
|
|
/* 8034C3D4 00349314 89 43 00 00 */ lbz r10, 0(r3)
|
|
/* 8034C3D8 00349318 55 08 08 3C */ slwi r8, r8, 1
|
|
/* 8034C3DC 0034931C A1 23 00 04 */ lhz r9, 4(r3)
|
|
/* 8034C3E0 00349320 39 08 FF FE */ addi r8, r8, -2
|
|
/* 8034C3E4 00349324 B1 4B 20 00 */ sth r10, 0x2000(r11)
|
|
/* 8034C3E8 00349328 7D 09 42 14 */ add r8, r9, r8
|
|
/* 8034C3EC 0034932C B1 0B 20 0E */ sth r8, 0x200e(r11)
|
|
/* 8034C3F0 00349330 A1 03 00 08 */ lhz r8, 8(r3)
|
|
/* 8034C3F4 00349334 39 08 00 02 */ addi r8, r8, 2
|
|
/* 8034C3F8 00349338 B1 0B 20 0C */ sth r8, 0x200c(r11)
|
|
/* 8034C3FC 0034933C A1 03 00 02 */ lhz r8, 2(r3)
|
|
/* 8034C400 00349340 A1 23 00 06 */ lhz r9, 6(r3)
|
|
/* 8034C404 00349344 55 08 08 3C */ slwi r8, r8, 1
|
|
/* 8034C408 00349348 39 08 FF FE */ addi r8, r8, -2
|
|
/* 8034C40C 0034934C 7D 09 42 14 */ add r8, r9, r8
|
|
/* 8034C410 00349350 B1 0B 20 12 */ sth r8, 0x2012(r11)
|
|
/* 8034C414 00349354 A1 03 00 0A */ lhz r8, 0xa(r3)
|
|
/* 8034C418 00349358 39 08 00 02 */ addi r8, r8, 2
|
|
/* 8034C41C 0034935C B1 0B 20 10 */ sth r8, 0x2010(r11)
|
|
/* 8034C420 00349360 A1 03 00 10 */ lhz r8, 0x10(r3)
|
|
/* 8034C424 00349364 89 23 00 0C */ lbz r9, 0xc(r3)
|
|
/* 8034C428 00349368 55 08 28 34 */ slwi r8, r8, 5
|
|
/* 8034C42C 0034936C 7D 28 43 78 */ or r8, r9, r8
|
|
/* 8034C430 00349370 B1 0B 20 16 */ sth r8, 0x2016(r11)
|
|
/* 8034C434 00349374 A1 03 00 14 */ lhz r8, 0x14(r3)
|
|
/* 8034C438 00349378 89 23 00 0E */ lbz r9, 0xe(r3)
|
|
/* 8034C43C 0034937C 55 08 28 34 */ slwi r8, r8, 5
|
|
/* 8034C440 00349380 7D 28 43 78 */ or r8, r9, r8
|
|
/* 8034C444 00349384 B1 0B 20 14 */ sth r8, 0x2014(r11)
|
|
/* 8034C448 00349388 A1 03 00 12 */ lhz r8, 0x12(r3)
|
|
/* 8034C44C 0034938C 89 23 00 0D */ lbz r9, 0xd(r3)
|
|
/* 8034C450 00349390 55 08 28 34 */ slwi r8, r8, 5
|
|
/* 8034C454 00349394 7D 28 43 78 */ or r8, r9, r8
|
|
/* 8034C458 00349398 B1 0B 20 1A */ sth r8, 0x201a(r11)
|
|
/* 8034C45C 0034939C A1 03 00 16 */ lhz r8, 0x16(r3)
|
|
/* 8034C460 003493A0 89 23 00 0F */ lbz r9, 0xf(r3)
|
|
/* 8034C464 003493A4 55 08 28 34 */ slwi r8, r8, 5
|
|
/* 8034C468 003493A8 7D 28 43 78 */ or r8, r9, r8
|
|
/* 8034C46C 003493AC B1 0B 20 18 */ sth r8, 0x2018(r11)
|
|
/* 8034C470 003493B0 B0 EB 20 48 */ sth r7, 0x2048(r11)
|
|
/* 8034C474 003493B4 B0 CB 20 36 */ sth r6, 0x2036(r11)
|
|
/* 8034C478 003493B8 B0 0B 20 34 */ sth r0, 0x2034(r11)
|
|
/* 8034C47C 003493BC A0 03 00 18 */ lhz r0, 0x18(r3)
|
|
/* 8034C480 003493C0 A0 63 00 1A */ lhz r3, 0x1a(r3)
|
|
/* 8034C484 003493C4 7C 06 0E 70 */ srawi r6, r0, 1
|
|
/* 8034C488 003493C8 38 03 00 01 */ addi r0, r3, 1
|
|
/* 8034C48C 003493CC 7C C6 01 94 */ addze r6, r6
|
|
/* 8034C490 003493D0 B0 0B 20 32 */ sth r0, 0x2032(r11)
|
|
/* 8034C494 003493D4 38 66 00 01 */ addi r3, r6, 1
|
|
/* 8034C498 003493D8 60 60 10 00 */ ori r0, r3, 0x1000
|
|
/* 8034C49C 003493DC B0 0B 20 30 */ sth r0, 0x2030(r11)
|
|
/* 8034C4A0 003493E0 40 80 00 18 */ bge lbl_8034C4B8
|
|
/* 8034C4A4 003493E4 2C 1E 00 01 */ cmpwi r30, 1
|
|
/* 8034C4A8 003493E8 40 80 00 08 */ bge lbl_8034C4B0
|
|
/* 8034C4AC 003493EC 48 00 00 0C */ b lbl_8034C4B8
|
|
lbl_8034C4B0:
|
|
/* 8034C4B0 003493F0 7F C3 F3 78 */ mr r3, r30
|
|
/* 8034C4B4 003493F4 48 00 00 08 */ b lbl_8034C4BC
|
|
lbl_8034C4B8:
|
|
/* 8034C4B8 003493F8 38 60 00 00 */ li r3, 0
|
|
lbl_8034C4BC:
|
|
/* 8034C4BC 003493FC 28 1F 00 01 */ cmplwi r31, 1
|
|
/* 8034C4C0 00349400 41 81 00 24 */ bgt lbl_8034C4E4
|
|
/* 8034C4C4 00349404 57 E0 17 7A */ rlwinm r0, r31, 2, 0x1d, 0x1d
|
|
/* 8034C4C8 00349408 60 00 00 01 */ ori r0, r0, 1
|
|
/* 8034C4CC 0034940C 50 60 40 2E */ rlwimi r0, r3, 8, 0, 0x17
|
|
/* 8034C4D0 00349410 B0 05 00 00 */ sth r0, 0(r5)
|
|
/* 8034C4D4 00349414 3C 60 CC 00 */ lis r3, 0xCC00206C@ha
|
|
/* 8034C4D8 00349418 38 00 00 00 */ li r0, 0
|
|
/* 8034C4DC 0034941C B0 03 20 6C */ sth r0, 0xCC00206C@l(r3)
|
|
/* 8034C4E0 00349420 48 00 00 1C */ b lbl_8034C4FC
|
|
lbl_8034C4E4:
|
|
/* 8034C4E4 00349424 54 60 40 2E */ slwi r0, r3, 8
|
|
/* 8034C4E8 00349428 60 00 00 05 */ ori r0, r0, 5
|
|
/* 8034C4EC 0034942C B0 05 00 00 */ sth r0, 0(r5)
|
|
/* 8034C4F0 00349430 3C 60 CC 00 */ lis r3, 0xCC00206C@ha
|
|
/* 8034C4F4 00349434 38 00 00 01 */ li r0, 1
|
|
/* 8034C4F8 00349438 B0 03 20 6C */ sth r0, 0xCC00206C@l(r3)
|
|
lbl_8034C4FC:
|
|
/* 8034C4FC 0034943C 80 01 00 2C */ lwz r0, 0x2c(r1)
|
|
/* 8034C500 00349440 83 E1 00 24 */ lwz r31, 0x24(r1)
|
|
/* 8034C504 00349444 83 C1 00 20 */ lwz r30, 0x20(r1)
|
|
/* 8034C508 00349448 38 21 00 28 */ addi r1, r1, 0x28
|
|
/* 8034C50C 0034944C 7C 08 03 A6 */ mtlr r0
|
|
/* 8034C510 00349450 4E 80 00 20 */ blr
|
|
|
|
.global VIInit
|
|
VIInit:
|
|
/* 8034C514 00349454 7C 08 02 A6 */ mflr r0
|
|
/* 8034C518 00349458 3C 80 80 3D */ lis r4, lbl_803D1760@ha
|
|
/* 8034C51C 0034945C 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 8034C520 00349460 3C 60 80 45 */ lis r3, lbl_8044CA28@ha
|
|
/* 8034C524 00349464 94 21 FF E8 */ stwu r1, -0x18(r1)
|
|
/* 8034C528 00349468 93 E1 00 14 */ stw r31, 0x14(r1)
|
|
/* 8034C52C 0034946C 93 C1 00 10 */ stw r30, 0x10(r1)
|
|
/* 8034C530 00349470 3B C3 CA 28 */ addi r30, r3, lbl_8044CA28@l
|
|
/* 8034C534 00349474 93 A1 00 0C */ stw r29, 0xc(r1)
|
|
/* 8034C538 00349478 3B A4 17 60 */ addi r29, r4, lbl_803D1760@l
|
|
/* 8034C53C 0034947C 93 81 00 08 */ stw r28, 8(r1)
|
|
/* 8034C540 00349480 80 0D 92 60 */ lwz r0, lbl_804517E0-_SDA_BASE_(r13)
|
|
/* 8034C544 00349484 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 8034C548 00349488 40 82 04 5C */ bne lbl_8034C9A4
|
|
/* 8034C54C 0034948C 80 6D 84 90 */ lwz r3, lbl_80450A10-_SDA_BASE_(r13)
|
|
/* 8034C550 00349490 4B FE E3 25 */ bl OSRegisterVersion
|
|
/* 8034C554 00349494 38 00 00 01 */ li r0, 1
|
|
/* 8034C558 00349498 90 0D 92 60 */ stw r0, lbl_804517E0-_SDA_BASE_(r13)
|
|
/* 8034C55C 0034949C 3C 60 CC 00 */ lis r3, 0xCC002000@ha
|
|
/* 8034C560 003494A0 3B 83 20 00 */ addi r28, r3, 0xCC002000@l
|
|
/* 8034C564 003494A4 90 0D 92 80 */ stw r0, lbl_80451800-_SDA_BASE_(r13)
|
|
/* 8034C568 003494A8 A4 1C 00 02 */ lhzu r0, 2(r28)
|
|
/* 8034C56C 003494AC 54 00 07 FF */ clrlwi. r0, r0, 0x1f
|
|
/* 8034C570 003494B0 40 82 00 0C */ bne lbl_8034C57C
|
|
/* 8034C574 003494B4 38 60 00 00 */ li r3, 0
|
|
/* 8034C578 003494B8 4B FF FD 99 */ bl __VIInit
|
|
lbl_8034C57C:
|
|
/* 8034C57C 003494BC 3B E0 00 00 */ li r31, 0
|
|
/* 8034C580 003494C0 93 ED 92 64 */ stw r31, lbl_804517E4-_SDA_BASE_(r13)
|
|
/* 8034C584 003494C4 3C 60 CC 00 */ lis r3, 0xCC002000@ha
|
|
/* 8034C588 003494C8 38 63 20 00 */ addi r3, r3, 0xCC002000@l
|
|
/* 8034C58C 003494CC 93 ED 92 94 */ stw r31, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034C590 003494D0 38 00 02 80 */ li r0, 0x280
|
|
/* 8034C594 003494D4 93 ED 92 90 */ stw r31, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034C598 003494D8 93 ED 92 A4 */ stw r31, lbl_80451824-_SDA_BASE_(r13)
|
|
/* 8034C59C 003494DC 93 ED 92 A0 */ stw r31, lbl_80451820-_SDA_BASE_(r13)
|
|
/* 8034C5A0 003494E0 93 ED 92 88 */ stw r31, lbl_80451808-_SDA_BASE_(r13)
|
|
/* 8034C5A4 003494E4 93 ED 92 98 */ stw r31, lbl_80451818-_SDA_BASE_(r13)
|
|
/* 8034C5A8 003494E8 93 ED 92 68 */ stw r31, lbl_804517E8-_SDA_BASE_(r13)
|
|
/* 8034C5AC 003494EC A0 BD 01 C2 */ lhz r5, 0x1c2(r29)
|
|
/* 8034C5B0 003494F0 A0 DD 01 C0 */ lhz r6, 0x1c0(r29)
|
|
/* 8034C5B4 003494F4 54 A5 54 2A */ rlwinm r5, r5, 0xa, 0x10, 0x15
|
|
/* 8034C5B8 003494F8 7C C5 2B 78 */ or r5, r6, r5
|
|
/* 8034C5BC 003494FC B0 A3 00 4E */ sth r5, 0x4e(r3)
|
|
/* 8034C5C0 00349500 A0 DD 01 C2 */ lhz r6, 0x1c2(r29)
|
|
/* 8034C5C4 00349504 A0 BD 01 C4 */ lhz r5, 0x1c4(r29)
|
|
/* 8034C5C8 00349508 7C C6 36 70 */ srawi r6, r6, 6
|
|
/* 8034C5CC 0034950C 54 A5 20 36 */ slwi r5, r5, 4
|
|
/* 8034C5D0 00349510 7C C5 2B 78 */ or r5, r6, r5
|
|
/* 8034C5D4 00349514 B0 A3 00 4C */ sth r5, 0x4c(r3)
|
|
/* 8034C5D8 00349518 A0 BD 01 C8 */ lhz r5, 0x1c8(r29)
|
|
/* 8034C5DC 0034951C A0 DD 01 C6 */ lhz r6, 0x1c6(r29)
|
|
/* 8034C5E0 00349520 54 A5 54 2A */ rlwinm r5, r5, 0xa, 0x10, 0x15
|
|
/* 8034C5E4 00349524 7C C5 2B 78 */ or r5, r6, r5
|
|
/* 8034C5E8 00349528 B0 A3 00 52 */ sth r5, 0x52(r3)
|
|
/* 8034C5EC 0034952C A0 DD 01 C8 */ lhz r6, 0x1c8(r29)
|
|
/* 8034C5F0 00349530 A0 BD 01 CA */ lhz r5, 0x1ca(r29)
|
|
/* 8034C5F4 00349534 7C C6 36 70 */ srawi r6, r6, 6
|
|
/* 8034C5F8 00349538 54 A5 20 36 */ slwi r5, r5, 4
|
|
/* 8034C5FC 0034953C 7C C5 2B 78 */ or r5, r6, r5
|
|
/* 8034C600 00349540 B0 A3 00 50 */ sth r5, 0x50(r3)
|
|
/* 8034C604 00349544 A0 BD 01 CE */ lhz r5, 0x1ce(r29)
|
|
/* 8034C608 00349548 A0 DD 01 CC */ lhz r6, 0x1cc(r29)
|
|
/* 8034C60C 0034954C 54 A5 54 2A */ rlwinm r5, r5, 0xa, 0x10, 0x15
|
|
/* 8034C610 00349550 7C C5 2B 78 */ or r5, r6, r5
|
|
/* 8034C614 00349554 B0 A3 00 56 */ sth r5, 0x56(r3)
|
|
/* 8034C618 00349558 A0 BD 01 CE */ lhz r5, 0x1ce(r29)
|
|
/* 8034C61C 0034955C A0 9D 01 D0 */ lhz r4, 0x1d0(r29)
|
|
/* 8034C620 00349560 7C A5 36 70 */ srawi r5, r5, 6
|
|
/* 8034C624 00349564 54 84 20 36 */ slwi r4, r4, 4
|
|
/* 8034C628 00349568 7C A4 23 78 */ or r4, r5, r4
|
|
/* 8034C62C 0034956C B0 83 00 54 */ sth r4, 0x54(r3)
|
|
/* 8034C630 00349570 A0 9D 01 D4 */ lhz r4, 0x1d4(r29)
|
|
/* 8034C634 00349574 A0 BD 01 D2 */ lhz r5, 0x1d2(r29)
|
|
/* 8034C638 00349578 54 84 40 2E */ slwi r4, r4, 8
|
|
/* 8034C63C 0034957C 7C A4 23 78 */ or r4, r5, r4
|
|
/* 8034C640 00349580 B0 83 00 5A */ sth r4, 0x5a(r3)
|
|
/* 8034C644 00349584 A0 9D 01 D8 */ lhz r4, 0x1d8(r29)
|
|
/* 8034C648 00349588 A0 BD 01 D6 */ lhz r5, 0x1d6(r29)
|
|
/* 8034C64C 0034958C 54 84 40 2E */ slwi r4, r4, 8
|
|
/* 8034C650 00349590 7C A4 23 78 */ or r4, r5, r4
|
|
/* 8034C654 00349594 B0 83 00 58 */ sth r4, 0x58(r3)
|
|
/* 8034C658 00349598 A0 9D 01 DC */ lhz r4, 0x1dc(r29)
|
|
/* 8034C65C 0034959C A0 BD 01 DA */ lhz r5, 0x1da(r29)
|
|
/* 8034C660 003495A0 54 84 40 2E */ slwi r4, r4, 8
|
|
/* 8034C664 003495A4 7C A4 23 78 */ or r4, r5, r4
|
|
/* 8034C668 003495A8 B0 83 00 5E */ sth r4, 0x5e(r3)
|
|
/* 8034C66C 003495AC A0 9D 01 E0 */ lhz r4, 0x1e0(r29)
|
|
/* 8034C670 003495B0 A0 BD 01 DE */ lhz r5, 0x1de(r29)
|
|
/* 8034C674 003495B4 54 84 40 2E */ slwi r4, r4, 8
|
|
/* 8034C678 003495B8 7C A4 23 78 */ or r4, r5, r4
|
|
/* 8034C67C 003495BC B0 83 00 5C */ sth r4, 0x5c(r3)
|
|
/* 8034C680 003495C0 A0 9D 01 E4 */ lhz r4, 0x1e4(r29)
|
|
/* 8034C684 003495C4 A0 BD 01 E2 */ lhz r5, 0x1e2(r29)
|
|
/* 8034C688 003495C8 54 84 40 2E */ slwi r4, r4, 8
|
|
/* 8034C68C 003495CC 7C A4 23 78 */ or r4, r5, r4
|
|
/* 8034C690 003495D0 B0 83 00 62 */ sth r4, 0x62(r3)
|
|
/* 8034C694 003495D4 A0 9D 01 E8 */ lhz r4, 0x1e8(r29)
|
|
/* 8034C698 003495D8 A0 BD 01 E6 */ lhz r5, 0x1e6(r29)
|
|
/* 8034C69C 003495DC 54 84 40 2E */ slwi r4, r4, 8
|
|
/* 8034C6A0 003495E0 7C A4 23 78 */ or r4, r5, r4
|
|
/* 8034C6A4 003495E4 B0 83 00 60 */ sth r4, 0x60(r3)
|
|
/* 8034C6A8 003495E8 A0 9D 01 EC */ lhz r4, 0x1ec(r29)
|
|
/* 8034C6AC 003495EC A0 BD 01 EA */ lhz r5, 0x1ea(r29)
|
|
/* 8034C6B0 003495F0 54 84 40 2E */ slwi r4, r4, 8
|
|
/* 8034C6B4 003495F4 7C A4 23 78 */ or r4, r5, r4
|
|
/* 8034C6B8 003495F8 B0 83 00 66 */ sth r4, 0x66(r3)
|
|
/* 8034C6BC 003495FC A0 9D 01 F0 */ lhz r4, 0x1f0(r29)
|
|
/* 8034C6C0 00349600 A0 BD 01 EE */ lhz r5, 0x1ee(r29)
|
|
/* 8034C6C4 00349604 54 84 40 2E */ slwi r4, r4, 8
|
|
/* 8034C6C8 00349608 7C A4 23 78 */ or r4, r5, r4
|
|
/* 8034C6CC 0034960C B0 83 00 64 */ sth r4, 0x64(r3)
|
|
/* 8034C6D0 00349610 B0 03 00 70 */ sth r0, 0x70(r3)
|
|
/* 8034C6D4 00349614 4B FF 3A 71 */ bl __OSLockSram
|
|
/* 8034C6D8 00349618 88 03 00 10 */ lbz r0, 0x10(r3)
|
|
/* 8034C6DC 0034961C 38 60 00 00 */ li r3, 0
|
|
/* 8034C6E0 00349620 7C 00 07 74 */ extsb r0, r0
|
|
/* 8034C6E4 00349624 B3 ED 92 86 */ sth r31, lbl_80451806-_SDA_BASE_(r13)
|
|
/* 8034C6E8 00349628 B0 0D 92 84 */ sth r0, lbl_80451804-_SDA_BASE_(r13)
|
|
/* 8034C6EC 0034962C 4B FF 3E 4D */ bl __OSUnlockSram
|
|
/* 8034C6F0 00349630 A3 BC 00 00 */ lhz r29, 0(r28)
|
|
/* 8034C6F4 00349634 3C 60 80 00 */ lis r3, 0x800000CC@ha
|
|
/* 8034C6F8 00349638 80 63 00 CC */ lwz r3, 0x800000CC@l(r3)
|
|
/* 8034C6FC 0034963C 38 9E 01 14 */ addi r4, r30, 0x114
|
|
/* 8034C700 00349640 57 A0 F7 FE */ rlwinm r0, r29, 0x1e, 0x1f, 0x1f
|
|
/* 8034C704 00349644 90 1E 01 14 */ stw r0, 0x114(r30)
|
|
/* 8034C708 00349648 57 A0 C7 BE */ rlwinm r0, r29, 0x18, 0x1e, 0x1f
|
|
/* 8034C70C 0034964C 28 03 00 01 */ cmplwi r3, 1
|
|
/* 8034C710 00349650 90 1E 01 18 */ stw r0, 0x118(r30)
|
|
/* 8034C714 00349654 3B 9E 01 18 */ addi r28, r30, 0x118
|
|
/* 8034C718 00349658 40 82 00 18 */ bne lbl_8034C730
|
|
/* 8034C71C 0034965C 80 1C 00 00 */ lwz r0, 0(r28)
|
|
/* 8034C720 00349660 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8034C724 00349664 40 82 00 0C */ bne lbl_8034C730
|
|
/* 8034C728 00349668 38 00 00 05 */ li r0, 5
|
|
/* 8034C72C 0034966C 90 1C 00 00 */ stw r0, 0(r28)
|
|
lbl_8034C730:
|
|
/* 8034C730 00349670 80 7C 00 00 */ lwz r3, 0(r28)
|
|
/* 8034C734 00349674 28 03 00 03 */ cmplwi r3, 3
|
|
/* 8034C738 00349678 40 82 00 08 */ bne lbl_8034C740
|
|
/* 8034C73C 0034967C 38 60 00 00 */ li r3, 0
|
|
lbl_8034C740:
|
|
/* 8034C740 00349680 80 04 00 00 */ lwz r0, 0(r4)
|
|
/* 8034C744 00349684 54 63 10 3A */ slwi r3, r3, 2
|
|
/* 8034C748 00349688 7C 63 02 14 */ add r3, r3, r0
|
|
/* 8034C74C 0034968C 4B FF FB 1D */ bl getTiming
|
|
/* 8034C750 00349690 90 7E 01 44 */ stw r3, 0x144(r30)
|
|
/* 8034C754 00349694 38 9E 01 44 */ addi r4, r30, 0x144
|
|
/* 8034C758 00349698 38 00 02 80 */ li r0, 0x280
|
|
/* 8034C75C 0034969C B3 BE 00 02 */ sth r29, 2(r30)
|
|
/* 8034C760 003496A0 39 00 00 00 */ li r8, 0
|
|
/* 8034C764 003496A4 38 DE 00 F6 */ addi r6, r30, 0xf6
|
|
/* 8034C768 003496A8 80 84 00 00 */ lwz r4, 0(r4)
|
|
/* 8034C76C 003496AC 38 7E 00 F2 */ addi r3, r30, 0xf2
|
|
/* 8034C770 003496B0 90 8D 92 A8 */ stw r4, lbl_80451828-_SDA_BASE_(r13)
|
|
/* 8034C774 003496B4 80 9C 00 00 */ lwz r4, 0(r28)
|
|
/* 8034C778 003496B8 90 8D 92 AC */ stw r4, lbl_8045182C-_SDA_BASE_(r13)
|
|
/* 8034C77C 003496BC B0 1E 00 F4 */ sth r0, 0xf4(r30)
|
|
/* 8034C780 003496C0 80 8D 92 A8 */ lwz r4, lbl_80451828-_SDA_BASE_(r13)
|
|
/* 8034C784 003496C4 A4 04 00 02 */ lhzu r0, 2(r4)
|
|
/* 8034C788 003496C8 54 00 0C 3C */ rlwinm r0, r0, 1, 0x10, 0x1e
|
|
/* 8034C78C 003496CC B0 1E 00 F6 */ sth r0, 0xf6(r30)
|
|
/* 8034C790 003496D0 A0 1E 00 F4 */ lhz r0, 0xf4(r30)
|
|
/* 8034C794 003496D4 20 00 02 D0 */ subfic r0, r0, 0x2d0
|
|
/* 8034C798 003496D8 7C 00 0E 70 */ srawi r0, r0, 1
|
|
/* 8034C79C 003496DC 7C 00 01 94 */ addze r0, r0
|
|
/* 8034C7A0 003496E0 B0 1E 00 F0 */ sth r0, 0xf0(r30)
|
|
/* 8034C7A4 003496E4 B1 1E 00 F2 */ sth r8, 0xf2(r30)
|
|
/* 8034C7A8 003496E8 A0 1E 00 F4 */ lhz r0, 0xf4(r30)
|
|
/* 8034C7AC 003496EC A8 FE 00 F0 */ lha r7, 0xf0(r30)
|
|
/* 8034C7B0 003496F0 A8 AD 92 84 */ lha r5, lbl_80451804-_SDA_BASE_(r13)
|
|
/* 8034C7B4 003496F4 20 00 02 D0 */ subfic r0, r0, 0x2d0
|
|
/* 8034C7B8 003496F8 A1 24 00 00 */ lhz r9, 0(r4)
|
|
/* 8034C7BC 003496FC 7C A7 2A 14 */ add r5, r7, r5
|
|
/* 8034C7C0 00349700 7C 05 00 00 */ cmpw r5, r0
|
|
/* 8034C7C4 00349704 40 81 00 08 */ ble lbl_8034C7CC
|
|
/* 8034C7C8 00349708 48 00 00 18 */ b lbl_8034C7E0
|
|
lbl_8034C7CC:
|
|
/* 8034C7CC 0034970C 2C 05 00 00 */ cmpwi r5, 0
|
|
/* 8034C7D0 00349710 40 80 00 08 */ bge lbl_8034C7D8
|
|
/* 8034C7D4 00349714 48 00 00 08 */ b lbl_8034C7DC
|
|
lbl_8034C7D8:
|
|
/* 8034C7D8 00349718 7C A8 2B 78 */ mr r8, r5
|
|
lbl_8034C7DC:
|
|
/* 8034C7DC 0034971C 7D 00 43 78 */ mr r0, r8
|
|
lbl_8034C7E0:
|
|
/* 8034C7E0 00349720 B0 1E 00 F8 */ sth r0, 0xf8(r30)
|
|
/* 8034C7E4 00349724 39 1E 01 10 */ addi r8, r30, 0x110
|
|
/* 8034C7E8 00349728 80 1E 01 10 */ lwz r0, 0x110(r30)
|
|
/* 8034C7EC 0034972C 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 8034C7F0 00349730 40 82 00 0C */ bne lbl_8034C7FC
|
|
/* 8034C7F4 00349734 39 60 00 02 */ li r11, 2
|
|
/* 8034C7F8 00349738 48 00 00 08 */ b lbl_8034C800
|
|
lbl_8034C7FC:
|
|
/* 8034C7FC 0034973C 39 60 00 01 */ li r11, 1
|
|
lbl_8034C800:
|
|
/* 8034C800 00349740 A0 03 00 00 */ lhz r0, 0(r3)
|
|
/* 8034C804 00349744 A8 AD 92 86 */ lha r5, lbl_80451806-_SDA_BASE_(r13)
|
|
/* 8034C808 00349748 7C 07 07 34 */ extsh r7, r0
|
|
/* 8034C80C 0034974C 54 00 07 FE */ clrlwi r0, r0, 0x1f
|
|
/* 8034C810 00349750 7C E7 2A 14 */ add r7, r7, r5
|
|
/* 8034C814 00349754 7C 07 00 00 */ cmpw r7, r0
|
|
/* 8034C818 00349758 40 81 00 08 */ ble lbl_8034C820
|
|
/* 8034C81C 0034975C 48 00 00 08 */ b lbl_8034C824
|
|
lbl_8034C820:
|
|
/* 8034C820 00349760 7C 07 03 78 */ mr r7, r0
|
|
lbl_8034C824:
|
|
/* 8034C824 00349764 B0 FE 00 FA */ sth r7, 0xfa(r30)
|
|
/* 8034C828 00349768 7D 27 07 34 */ extsh r7, r9
|
|
/* 8034C82C 0034976C 54 E7 08 3C */ slwi r7, r7, 1
|
|
/* 8034C830 00349770 A3 86 00 00 */ lhz r28, 0(r6)
|
|
/* 8034C834 00349774 7D 80 38 50 */ subf r12, r0, r7
|
|
/* 8034C838 00349778 A9 43 00 00 */ lha r10, 0(r3)
|
|
/* 8034C83C 0034977C 7F 87 07 34 */ extsh r7, r28
|
|
/* 8034C840 00349780 7D 27 2A 14 */ add r9, r7, r5
|
|
/* 8034C844 00349784 7D 2A 4A 14 */ add r9, r10, r9
|
|
/* 8034C848 00349788 7C EC 48 51 */ subf. r7, r12, r9
|
|
/* 8034C84C 0034978C 40 81 00 0C */ ble lbl_8034C858
|
|
/* 8034C850 00349790 7D 2C 48 50 */ subf r9, r12, r9
|
|
/* 8034C854 00349794 48 00 00 08 */ b lbl_8034C85C
|
|
lbl_8034C858:
|
|
/* 8034C858 00349798 39 20 00 00 */ li r9, 0
|
|
lbl_8034C85C:
|
|
/* 8034C85C 0034979C 7D 4A 2A 14 */ add r10, r10, r5
|
|
/* 8034C860 003497A0 7C E0 50 51 */ subf. r7, r0, r10
|
|
/* 8034C864 003497A4 40 80 00 0C */ bge lbl_8034C870
|
|
/* 8034C868 003497A8 7C E0 50 50 */ subf r7, r0, r10
|
|
/* 8034C86C 003497AC 48 00 00 08 */ b lbl_8034C874
|
|
lbl_8034C870:
|
|
/* 8034C870 003497B0 38 E0 00 00 */ li r7, 0
|
|
lbl_8034C874:
|
|
/* 8034C874 003497B4 7C FC 3A 14 */ add r7, r28, r7
|
|
/* 8034C878 003497B8 7C E9 38 50 */ subf r7, r9, r7
|
|
/* 8034C87C 003497BC B0 FE 00 FC */ sth r7, 0xfc(r30)
|
|
/* 8034C880 003497C0 A8 E3 00 00 */ lha r7, 0(r3)
|
|
/* 8034C884 003497C4 7D 27 2A 14 */ add r9, r7, r5
|
|
/* 8034C888 003497C8 7C E0 48 51 */ subf. r7, r0, r9
|
|
/* 8034C88C 003497CC 40 80 00 0C */ bge lbl_8034C898
|
|
/* 8034C890 003497D0 7C E0 48 50 */ subf r7, r0, r9
|
|
/* 8034C894 003497D4 48 00 00 08 */ b lbl_8034C89C
|
|
lbl_8034C898:
|
|
/* 8034C898 003497D8 38 E0 00 00 */ li r7, 0
|
|
lbl_8034C89C:
|
|
/* 8034C89C 003497DC 7D 47 5B D6 */ divw r10, r7, r11
|
|
/* 8034C8A0 003497E0 38 FE 01 08 */ addi r7, r30, 0x108
|
|
/* 8034C8A4 003497E4 A1 3E 01 08 */ lhz r9, 0x108(r30)
|
|
/* 8034C8A8 003497E8 7D 2A 48 50 */ subf r9, r10, r9
|
|
/* 8034C8AC 003497EC B1 3E 00 FE */ sth r9, 0xfe(r30)
|
|
/* 8034C8B0 003497F0 A8 C6 00 00 */ lha r6, 0(r6)
|
|
/* 8034C8B4 003497F4 A9 23 00 00 */ lha r9, 0(r3)
|
|
/* 8034C8B8 003497F8 7C C6 2A 14 */ add r6, r6, r5
|
|
/* 8034C8BC 003497FC 7C C9 32 14 */ add r6, r9, r6
|
|
/* 8034C8C0 00349800 7C 6C 30 51 */ subf. r3, r12, r6
|
|
/* 8034C8C4 00349804 40 81 00 0C */ ble lbl_8034C8D0
|
|
/* 8034C8C8 00349808 7C CC 30 50 */ subf r6, r12, r6
|
|
/* 8034C8CC 0034980C 48 00 00 08 */ b lbl_8034C8D4
|
|
lbl_8034C8D0:
|
|
/* 8034C8D0 00349810 38 C0 00 00 */ li r6, 0
|
|
lbl_8034C8D4:
|
|
/* 8034C8D4 00349814 7C A9 2A 14 */ add r5, r9, r5
|
|
/* 8034C8D8 00349818 7C 60 28 51 */ subf. r3, r0, r5
|
|
/* 8034C8DC 0034981C 40 80 00 0C */ bge lbl_8034C8E8
|
|
/* 8034C8E0 00349820 7C 00 28 50 */ subf r0, r0, r5
|
|
/* 8034C8E4 00349824 48 00 00 08 */ b lbl_8034C8EC
|
|
lbl_8034C8E8:
|
|
/* 8034C8E8 00349828 38 00 00 00 */ li r0, 0
|
|
lbl_8034C8EC:
|
|
/* 8034C8EC 0034982C 7C 00 5B D6 */ divw r0, r0, r11
|
|
/* 8034C8F0 00349830 A0 7E 01 0C */ lhz r3, 0x10c(r30)
|
|
/* 8034C8F4 00349834 7C 03 02 14 */ add r0, r3, r0
|
|
/* 8034C8F8 00349838 7C A6 5B D6 */ divw r5, r6, r11
|
|
/* 8034C8FC 0034983C 7C 05 00 50 */ subf r0, r5, r0
|
|
/* 8034C900 00349840 B0 1E 01 00 */ sth r0, 0x100(r30)
|
|
/* 8034C904 00349844 39 20 02 80 */ li r9, 0x280
|
|
/* 8034C908 00349848 3B 80 00 00 */ li r28, 0
|
|
/* 8034C90C 0034984C B1 3E 01 02 */ sth r9, 0x102(r30)
|
|
/* 8034C910 00349850 38 A0 00 28 */ li r5, 0x28
|
|
/* 8034C914 00349854 38 00 00 01 */ li r0, 1
|
|
/* 8034C918 00349858 A0 C4 00 00 */ lhz r6, 0(r4)
|
|
/* 8034C91C 0034985C 38 6D 92 6C */ addi r3, r13, lbl_804517EC-_SDA_BASE_
|
|
/* 8034C920 00349860 54 C6 0C 3C */ rlwinm r6, r6, 1, 0x10, 0x1e
|
|
/* 8034C924 00349864 B0 DE 01 04 */ sth r6, 0x104(r30)
|
|
/* 8034C928 00349868 B3 9E 01 06 */ sth r28, 0x106(r30)
|
|
/* 8034C92C 0034986C B3 87 00 00 */ sth r28, 0(r7)
|
|
/* 8034C930 00349870 B1 3E 01 0A */ sth r9, 0x10a(r30)
|
|
/* 8034C934 00349874 A0 84 00 00 */ lhz r4, 0(r4)
|
|
/* 8034C938 00349878 54 84 0C 3C */ rlwinm r4, r4, 1, 0x10, 0x1e
|
|
/* 8034C93C 0034987C B0 9E 01 0C */ sth r4, 0x10c(r30)
|
|
/* 8034C940 00349880 93 88 00 00 */ stw r28, 0(r8)
|
|
/* 8034C944 00349884 98 BE 01 1C */ stb r5, 0x11c(r30)
|
|
/* 8034C948 00349888 98 BE 01 1D */ stb r5, 0x11d(r30)
|
|
/* 8034C94C 0034988C 98 BE 01 1E */ stb r5, 0x11e(r30)
|
|
/* 8034C950 00349890 9B 9E 01 2C */ stb r28, 0x12c(r30)
|
|
/* 8034C954 00349894 90 1E 01 30 */ stw r0, 0x130(r30)
|
|
/* 8034C958 00349898 93 9E 01 34 */ stw r28, 0x134(r30)
|
|
/* 8034C95C 0034989C 4B FF 43 19 */ bl OSInitThreadQueue
|
|
/* 8034C960 003498A0 3C 60 CC 00 */ lis r3, 0xCC002030@ha
|
|
/* 8034C964 003498A4 A0 03 20 30 */ lhz r0, 0xCC002030@l(r3)
|
|
/* 8034C968 003498A8 38 83 20 00 */ addi r4, r3, 0x2000
|
|
/* 8034C96C 003498AC 38 A3 20 00 */ addi r5, r3, 0x2000
|
|
/* 8034C970 003498B0 54 00 04 7E */ clrlwi r0, r0, 0x11
|
|
/* 8034C974 003498B4 B0 04 00 30 */ sth r0, 0x30(r4)
|
|
.global __VIRetraceHandler
|
|
/* 8034C978 003498B8 3C 60 80 35 */ lis r3, __VIRetraceHandler@ha
|
|
.global __VIRetraceHandler
|
|
/* 8034C97C 003498BC 38 83 BF 6C */ addi r4, r3, __VIRetraceHandler@l
|
|
/* 8034C980 003498C0 A0 05 00 34 */ lhz r0, 0x34(r5)
|
|
/* 8034C984 003498C4 38 60 00 18 */ li r3, 0x18
|
|
/* 8034C988 003498C8 54 00 04 7E */ clrlwi r0, r0, 0x11
|
|
/* 8034C98C 003498CC B0 05 00 34 */ sth r0, 0x34(r5)
|
|
/* 8034C990 003498D0 93 8D 92 74 */ stw r28, lbl_804517F4-_SDA_BASE_(r13)
|
|
/* 8034C994 003498D4 93 8D 92 78 */ stw r28, lbl_804517F8-_SDA_BASE_(r13)
|
|
/* 8034C998 003498D8 4B FF 0D A9 */ bl __OSSetInterruptHandler
|
|
/* 8034C99C 003498DC 38 60 00 80 */ li r3, 0x80
|
|
/* 8034C9A0 003498E0 4B FF 11 A5 */ bl __OSUnmaskInterrupts
|
|
lbl_8034C9A4:
|
|
/* 8034C9A4 003498E4 80 01 00 1C */ lwz r0, 0x1c(r1)
|
|
/* 8034C9A8 003498E8 83 E1 00 14 */ lwz r31, 0x14(r1)
|
|
/* 8034C9AC 003498EC 83 C1 00 10 */ lwz r30, 0x10(r1)
|
|
/* 8034C9B0 003498F0 83 A1 00 0C */ lwz r29, 0xc(r1)
|
|
/* 8034C9B4 003498F4 83 81 00 08 */ lwz r28, 8(r1)
|
|
/* 8034C9B8 003498F8 38 21 00 18 */ addi r1, r1, 0x18
|
|
/* 8034C9BC 003498FC 7C 08 03 A6 */ mtlr r0
|
|
/* 8034C9C0 00349900 4E 80 00 20 */ blr
|
|
|
|
.global VIWaitForRetrace
|
|
VIWaitForRetrace:
|
|
/* 8034C9C4 00349904 7C 08 02 A6 */ mflr r0
|
|
/* 8034C9C8 00349908 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 8034C9CC 0034990C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 8034C9D0 00349910 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 8034C9D4 00349914 93 C1 00 08 */ stw r30, 8(r1)
|
|
/* 8034C9D8 00349918 4B FF 0D 1D */ bl __RAS_OSDisableInterrupts_begin
|
|
/* 8034C9DC 0034991C 83 CD 92 64 */ lwz r30, lbl_804517E4-_SDA_BASE_(r13)
|
|
/* 8034C9E0 00349920 7C 7F 1B 78 */ mr r31, r3
|
|
lbl_8034C9E4:
|
|
/* 8034C9E4 00349924 38 6D 92 6C */ addi r3, r13, lbl_804517EC-_SDA_BASE_
|
|
/* 8034C9E8 00349928 4B FF 51 C5 */ bl OSSleepThread
|
|
/* 8034C9EC 0034992C 80 0D 92 64 */ lwz r0, lbl_804517E4-_SDA_BASE_(r13)
|
|
/* 8034C9F0 00349930 7C 1E 00 40 */ cmplw r30, r0
|
|
/* 8034C9F4 00349934 41 82 FF F0 */ beq lbl_8034C9E4
|
|
/* 8034C9F8 00349938 7F E3 FB 78 */ mr r3, r31
|
|
/* 8034C9FC 0034993C 4B FF 0D 21 */ bl OSRestoreInterrupts
|
|
/* 8034CA00 00349940 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 8034CA04 00349944 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 8034CA08 00349948 83 C1 00 08 */ lwz r30, 8(r1)
|
|
/* 8034CA0C 0034994C 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 8034CA10 00349950 7C 08 03 A6 */ mtlr r0
|
|
/* 8034CA14 00349954 4E 80 00 20 */ blr
|
|
|
|
.global setFbbRegs
|
|
setFbbRegs:
|
|
/* 8034CA18 00349958 94 21 FF B8 */ stwu r1, -0x48(r1)
|
|
/* 8034CA1C 0034995C 3D 20 80 45 */ lis r9, lbl_8044CA28@ha
|
|
/* 8034CA20 00349960 39 29 CA 28 */ addi r9, r9, lbl_8044CA28@l
|
|
/* 8034CA24 00349964 93 E1 00 44 */ stw r31, 0x44(r1)
|
|
/* 8034CA28 00349968 89 03 00 2C */ lbz r8, 0x2c(r3)
|
|
/* 8034CA2C 0034996C A0 03 00 0E */ lhz r0, 0xe(r3)
|
|
/* 8034CA30 00349970 55 1F 28 34 */ slwi r31, r8, 5
|
|
/* 8034CA34 00349974 A1 03 00 16 */ lhz r8, 0x16(r3)
|
|
/* 8034CA38 00349978 7C 1F 01 D6 */ mullw r0, r31, r0
|
|
/* 8034CA3C 0034997C 81 63 00 20 */ lwz r11, 0x20(r3)
|
|
/* 8034CA40 00349980 81 43 00 30 */ lwz r10, 0x30(r3)
|
|
/* 8034CA44 00349984 A1 83 00 0A */ lhz r12, 0xa(r3)
|
|
/* 8034CA48 00349988 55 08 08 34 */ rlwinm r8, r8, 1, 0, 0x1a
|
|
/* 8034CA4C 0034998C 7C 08 02 14 */ add r0, r8, r0
|
|
/* 8034CA50 00349990 7C 0A 02 14 */ add r0, r10, r0
|
|
/* 8034CA54 00349994 2C 0B 00 00 */ cmpwi r11, 0
|
|
/* 8034CA58 00349998 90 04 00 00 */ stw r0, 0(r4)
|
|
/* 8034CA5C 0034999C 40 82 00 0C */ bne lbl_8034CA68
|
|
/* 8034CA60 003499A0 81 04 00 00 */ lwz r8, 0(r4)
|
|
/* 8034CA64 003499A4 48 00 00 0C */ b lbl_8034CA70
|
|
lbl_8034CA68:
|
|
/* 8034CA68 003499A8 80 04 00 00 */ lwz r0, 0(r4)
|
|
/* 8034CA6C 003499AC 7D 00 FA 14 */ add r8, r0, r31
|
|
lbl_8034CA70:
|
|
/* 8034CA70 003499B0 7D 80 0E 70 */ srawi r0, r12, 1
|
|
/* 8034CA74 003499B4 91 05 00 00 */ stw r8, 0(r5)
|
|
/* 8034CA78 003499B8 7C 00 01 94 */ addze r0, r0
|
|
/* 8034CA7C 003499BC 54 00 08 3C */ slwi r0, r0, 1
|
|
/* 8034CA80 003499C0 7C 00 60 10 */ subfc r0, r0, r12
|
|
/* 8034CA84 003499C4 2C 00 00 01 */ cmpwi r0, 1
|
|
/* 8034CA88 003499C8 40 82 00 14 */ bne lbl_8034CA9C
|
|
/* 8034CA8C 003499CC 81 04 00 00 */ lwz r8, 0(r4)
|
|
/* 8034CA90 003499D0 80 05 00 00 */ lwz r0, 0(r5)
|
|
/* 8034CA94 003499D4 90 04 00 00 */ stw r0, 0(r4)
|
|
/* 8034CA98 003499D8 91 05 00 00 */ stw r8, 0(r5)
|
|
lbl_8034CA9C:
|
|
/* 8034CA9C 003499DC 80 04 00 00 */ lwz r0, 0(r4)
|
|
/* 8034CAA0 003499E0 54 00 00 BE */ clrlwi r0, r0, 2
|
|
/* 8034CAA4 003499E4 90 04 00 00 */ stw r0, 0(r4)
|
|
/* 8034CAA8 003499E8 80 05 00 00 */ lwz r0, 0(r5)
|
|
/* 8034CAAC 003499EC 54 00 00 BE */ clrlwi r0, r0, 2
|
|
/* 8034CAB0 003499F0 90 05 00 00 */ stw r0, 0(r5)
|
|
/* 8034CAB4 003499F4 80 03 00 44 */ lwz r0, 0x44(r3)
|
|
/* 8034CAB8 003499F8 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 8034CABC 003499FC 41 82 00 90 */ beq lbl_8034CB4C
|
|
/* 8034CAC0 00349A00 89 03 00 2C */ lbz r8, 0x2c(r3)
|
|
/* 8034CAC4 00349A04 A0 03 00 0E */ lhz r0, 0xe(r3)
|
|
/* 8034CAC8 00349A08 55 1F 28 34 */ slwi r31, r8, 5
|
|
/* 8034CACC 00349A0C A1 03 00 16 */ lhz r8, 0x16(r3)
|
|
/* 8034CAD0 00349A10 7C 1F 01 D6 */ mullw r0, r31, r0
|
|
/* 8034CAD4 00349A14 81 63 00 20 */ lwz r11, 0x20(r3)
|
|
/* 8034CAD8 00349A18 81 43 00 48 */ lwz r10, 0x48(r3)
|
|
/* 8034CADC 00349A1C A1 83 00 0A */ lhz r12, 0xa(r3)
|
|
/* 8034CAE0 00349A20 55 08 08 34 */ rlwinm r8, r8, 1, 0, 0x1a
|
|
/* 8034CAE4 00349A24 7C 08 02 14 */ add r0, r8, r0
|
|
/* 8034CAE8 00349A28 7C 0A 02 14 */ add r0, r10, r0
|
|
/* 8034CAEC 00349A2C 2C 0B 00 00 */ cmpwi r11, 0
|
|
/* 8034CAF0 00349A30 90 06 00 00 */ stw r0, 0(r6)
|
|
/* 8034CAF4 00349A34 40 82 00 0C */ bne lbl_8034CB00
|
|
/* 8034CAF8 00349A38 81 06 00 00 */ lwz r8, 0(r6)
|
|
/* 8034CAFC 00349A3C 48 00 00 0C */ b lbl_8034CB08
|
|
lbl_8034CB00:
|
|
/* 8034CB00 00349A40 80 06 00 00 */ lwz r0, 0(r6)
|
|
/* 8034CB04 00349A44 7D 00 FA 14 */ add r8, r0, r31
|
|
lbl_8034CB08:
|
|
/* 8034CB08 00349A48 7D 80 0E 70 */ srawi r0, r12, 1
|
|
/* 8034CB0C 00349A4C 91 07 00 00 */ stw r8, 0(r7)
|
|
/* 8034CB10 00349A50 7C 00 01 94 */ addze r0, r0
|
|
/* 8034CB14 00349A54 54 00 08 3C */ slwi r0, r0, 1
|
|
/* 8034CB18 00349A58 7C 00 60 10 */ subfc r0, r0, r12
|
|
/* 8034CB1C 00349A5C 2C 00 00 01 */ cmpwi r0, 1
|
|
/* 8034CB20 00349A60 40 82 00 14 */ bne lbl_8034CB34
|
|
/* 8034CB24 00349A64 81 06 00 00 */ lwz r8, 0(r6)
|
|
/* 8034CB28 00349A68 80 07 00 00 */ lwz r0, 0(r7)
|
|
/* 8034CB2C 00349A6C 90 06 00 00 */ stw r0, 0(r6)
|
|
/* 8034CB30 00349A70 91 07 00 00 */ stw r8, 0(r7)
|
|
lbl_8034CB34:
|
|
/* 8034CB34 00349A74 80 06 00 00 */ lwz r0, 0(r6)
|
|
/* 8034CB38 00349A78 54 00 00 BE */ clrlwi r0, r0, 2
|
|
/* 8034CB3C 00349A7C 90 06 00 00 */ stw r0, 0(r6)
|
|
/* 8034CB40 00349A80 80 07 00 00 */ lwz r0, 0(r7)
|
|
/* 8034CB44 00349A84 54 00 00 BE */ clrlwi r0, r0, 2
|
|
/* 8034CB48 00349A88 90 07 00 00 */ stw r0, 0(r7)
|
|
lbl_8034CB4C:
|
|
/* 8034CB4C 00349A8C 80 04 00 00 */ lwz r0, 0(r4)
|
|
/* 8034CB50 00349A90 3D 00 01 00 */ lis r8, 0x100
|
|
/* 8034CB54 00349A94 7C 00 40 40 */ cmplw r0, r8
|
|
/* 8034CB58 00349A98 40 80 00 30 */ bge lbl_8034CB88
|
|
/* 8034CB5C 00349A9C 80 05 00 00 */ lwz r0, 0(r5)
|
|
/* 8034CB60 00349AA0 7C 00 40 40 */ cmplw r0, r8
|
|
/* 8034CB64 00349AA4 40 80 00 24 */ bge lbl_8034CB88
|
|
/* 8034CB68 00349AA8 80 06 00 00 */ lwz r0, 0(r6)
|
|
/* 8034CB6C 00349AAC 7C 00 40 40 */ cmplw r0, r8
|
|
/* 8034CB70 00349AB0 40 80 00 18 */ bge lbl_8034CB88
|
|
/* 8034CB74 00349AB4 80 07 00 00 */ lwz r0, 0(r7)
|
|
/* 8034CB78 00349AB8 7C 00 40 40 */ cmplw r0, r8
|
|
/* 8034CB7C 00349ABC 40 80 00 0C */ bge lbl_8034CB88
|
|
/* 8034CB80 00349AC0 39 40 00 00 */ li r10, 0
|
|
/* 8034CB84 00349AC4 48 00 00 08 */ b lbl_8034CB8C
|
|
lbl_8034CB88:
|
|
/* 8034CB88 00349AC8 39 40 00 01 */ li r10, 1
|
|
lbl_8034CB8C:
|
|
/* 8034CB8C 00349ACC 28 0A 00 00 */ cmplwi r10, 0
|
|
/* 8034CB90 00349AD0 41 82 00 34 */ beq lbl_8034CBC4
|
|
/* 8034CB94 00349AD4 80 04 00 00 */ lwz r0, 0(r4)
|
|
/* 8034CB98 00349AD8 54 00 D9 7E */ srwi r0, r0, 5
|
|
/* 8034CB9C 00349ADC 90 04 00 00 */ stw r0, 0(r4)
|
|
/* 8034CBA0 00349AE0 80 05 00 00 */ lwz r0, 0(r5)
|
|
/* 8034CBA4 00349AE4 54 00 D9 7E */ srwi r0, r0, 5
|
|
/* 8034CBA8 00349AE8 90 05 00 00 */ stw r0, 0(r5)
|
|
/* 8034CBAC 00349AEC 80 06 00 00 */ lwz r0, 0(r6)
|
|
/* 8034CBB0 00349AF0 54 00 D9 7E */ srwi r0, r0, 5
|
|
/* 8034CBB4 00349AF4 90 06 00 00 */ stw r0, 0(r6)
|
|
/* 8034CBB8 00349AF8 80 07 00 00 */ lwz r0, 0(r7)
|
|
/* 8034CBBC 00349AFC 54 00 D9 7E */ srwi r0, r0, 5
|
|
/* 8034CBC0 00349B00 90 07 00 00 */ stw r0, 0(r7)
|
|
lbl_8034CBC4:
|
|
/* 8034CBC4 00349B04 80 04 00 00 */ lwz r0, 0(r4)
|
|
/* 8034CBC8 00349B08 55 4B 60 26 */ slwi r11, r10, 0xc
|
|
/* 8034CBCC 00349B0C 3D 00 00 01 */ lis r8, 1
|
|
/* 8034CBD0 00349B10 B0 09 00 1E */ sth r0, 0x1e(r9)
|
|
/* 8034CBD4 00349B14 3C 00 00 02 */ lis r0, 2
|
|
/* 8034CBD8 00349B18 81 4D 92 90 */ lwz r10, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CBDC 00349B1C 81 8D 92 94 */ lwz r12, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CBE0 00349B20 7D 4A 43 78 */ or r10, r10, r8
|
|
/* 8034CBE4 00349B24 91 8D 92 94 */ stw r12, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CBE8 00349B28 91 4D 92 90 */ stw r10, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CBEC 00349B2C 81 44 00 00 */ lwz r10, 0(r4)
|
|
/* 8034CBF0 00349B30 88 83 00 3C */ lbz r4, 0x3c(r3)
|
|
/* 8034CBF4 00349B34 55 4A 84 3E */ srwi r10, r10, 0x10
|
|
/* 8034CBF8 00349B38 54 84 40 2E */ slwi r4, r4, 8
|
|
/* 8034CBFC 00349B3C 7D 44 23 78 */ or r4, r10, r4
|
|
/* 8034CC00 00349B40 7D 64 23 78 */ or r4, r11, r4
|
|
/* 8034CC04 00349B44 B0 89 00 1C */ sth r4, 0x1c(r9)
|
|
/* 8034CC08 00349B48 80 8D 92 90 */ lwz r4, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CC0C 00349B4C 81 4D 92 94 */ lwz r10, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CC10 00349B50 7C 80 03 78 */ or r0, r4, r0
|
|
/* 8034CC14 00349B54 91 4D 92 94 */ stw r10, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CC18 00349B58 90 0D 92 90 */ stw r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CC1C 00349B5C 80 05 00 00 */ lwz r0, 0(r5)
|
|
/* 8034CC20 00349B60 B0 09 00 26 */ sth r0, 0x26(r9)
|
|
/* 8034CC24 00349B64 80 0D 92 90 */ lwz r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CC28 00349B68 80 8D 92 94 */ lwz r4, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CC2C 00349B6C 60 00 10 00 */ ori r0, r0, 0x1000
|
|
/* 8034CC30 00349B70 90 8D 92 94 */ stw r4, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CC34 00349B74 90 0D 92 90 */ stw r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CC38 00349B78 80 05 00 00 */ lwz r0, 0(r5)
|
|
/* 8034CC3C 00349B7C 54 00 84 3E */ srwi r0, r0, 0x10
|
|
/* 8034CC40 00349B80 B0 09 00 24 */ sth r0, 0x24(r9)
|
|
/* 8034CC44 00349B84 80 0D 92 90 */ lwz r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CC48 00349B88 80 8D 92 94 */ lwz r4, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CC4C 00349B8C 60 00 20 00 */ ori r0, r0, 0x2000
|
|
/* 8034CC50 00349B90 90 8D 92 94 */ stw r4, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CC54 00349B94 90 0D 92 90 */ stw r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CC58 00349B98 80 03 00 44 */ lwz r0, 0x44(r3)
|
|
/* 8034CC5C 00349B9C 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 8034CC60 00349BA0 41 82 00 80 */ beq lbl_8034CCE0
|
|
/* 8034CC64 00349BA4 80 66 00 00 */ lwz r3, 0(r6)
|
|
/* 8034CC68 00349BA8 38 08 80 00 */ addi r0, r8, -32768
|
|
/* 8034CC6C 00349BAC B0 69 00 22 */ sth r3, 0x22(r9)
|
|
/* 8034CC70 00349BB0 80 6D 92 90 */ lwz r3, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CC74 00349BB4 80 8D 92 94 */ lwz r4, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CC78 00349BB8 60 63 40 00 */ ori r3, r3, 0x4000
|
|
/* 8034CC7C 00349BBC 90 8D 92 94 */ stw r4, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CC80 00349BC0 90 6D 92 90 */ stw r3, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CC84 00349BC4 80 66 00 00 */ lwz r3, 0(r6)
|
|
/* 8034CC88 00349BC8 54 63 84 3E */ srwi r3, r3, 0x10
|
|
/* 8034CC8C 00349BCC B0 69 00 20 */ sth r3, 0x20(r9)
|
|
/* 8034CC90 00349BD0 80 6D 92 90 */ lwz r3, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CC94 00349BD4 80 8D 92 94 */ lwz r4, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CC98 00349BD8 7C 60 03 78 */ or r0, r3, r0
|
|
/* 8034CC9C 00349BDC 90 8D 92 94 */ stw r4, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CCA0 00349BE0 90 0D 92 90 */ stw r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CCA4 00349BE4 80 07 00 00 */ lwz r0, 0(r7)
|
|
/* 8034CCA8 00349BE8 B0 09 00 2A */ sth r0, 0x2a(r9)
|
|
/* 8034CCAC 00349BEC 80 0D 92 90 */ lwz r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CCB0 00349BF0 80 6D 92 94 */ lwz r3, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CCB4 00349BF4 60 00 04 00 */ ori r0, r0, 0x400
|
|
/* 8034CCB8 00349BF8 90 6D 92 94 */ stw r3, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CCBC 00349BFC 90 0D 92 90 */ stw r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CCC0 00349C00 80 07 00 00 */ lwz r0, 0(r7)
|
|
/* 8034CCC4 00349C04 54 00 84 3E */ srwi r0, r0, 0x10
|
|
/* 8034CCC8 00349C08 B0 09 00 28 */ sth r0, 0x28(r9)
|
|
/* 8034CCCC 00349C0C 80 0D 92 90 */ lwz r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CCD0 00349C10 80 6D 92 94 */ lwz r3, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CCD4 00349C14 60 00 08 00 */ ori r0, r0, 0x800
|
|
/* 8034CCD8 00349C18 90 6D 92 94 */ stw r3, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CCDC 00349C1C 90 0D 92 90 */ stw r0, lbl_80451810-_SDA_BASE_(r13)
|
|
lbl_8034CCE0:
|
|
/* 8034CCE0 00349C20 83 E1 00 44 */ lwz r31, 0x44(r1)
|
|
/* 8034CCE4 00349C24 38 21 00 48 */ addi r1, r1, 0x48
|
|
/* 8034CCE8 00349C28 4E 80 00 20 */ blr
|
|
|
|
.global setVerticalRegs
|
|
setVerticalRegs:
|
|
/* 8034CCEC 00349C2C 94 21 FF D8 */ stwu r1, -0x28(r1)
|
|
/* 8034CCF0 00349C30 3D 60 80 45 */ lis r11, lbl_8044CA28@ha
|
|
/* 8034CCF4 00349C34 39 6B CA 28 */ addi r11, r11, lbl_8044CA28@l
|
|
/* 8034CCF8 00349C38 93 E1 00 24 */ stw r31, 0x24(r1)
|
|
/* 8034CCFC 00349C3C 83 E1 00 30 */ lwz r31, 0x30(r1)
|
|
/* 8034CD00 00349C40 93 C1 00 20 */ stw r30, 0x20(r1)
|
|
/* 8034CD04 00349C44 93 A1 00 1C */ stw r29, 0x1c(r1)
|
|
/* 8034CD08 00349C48 A0 0B 00 6C */ lhz r0, 0x6c(r11)
|
|
/* 8034CD0C 00349C4C 54 00 07 FF */ clrlwi. r0, r0, 0x1f
|
|
/* 8034CD10 00349C50 41 82 00 10 */ beq lbl_8034CD20
|
|
/* 8034CD14 00349C54 39 80 00 01 */ li r12, 1
|
|
/* 8034CD18 00349C58 3B A0 00 02 */ li r29, 2
|
|
/* 8034CD1C 00349C5C 48 00 00 0C */ b lbl_8034CD28
|
|
lbl_8034CD20:
|
|
/* 8034CD20 00349C60 39 80 00 02 */ li r12, 2
|
|
/* 8034CD24 00349C64 3B A0 00 01 */ li r29, 1
|
|
lbl_8034CD28:
|
|
/* 8034CD28 00349C68 54 7E 04 3E */ clrlwi r30, r3, 0x10
|
|
/* 8034CD2C 00349C6C 7F C0 0E 70 */ srawi r0, r30, 1
|
|
/* 8034CD30 00349C70 7C 00 01 94 */ addze r0, r0
|
|
/* 8034CD34 00349C74 54 00 08 3C */ slwi r0, r0, 1
|
|
/* 8034CD38 00349C78 7C 00 F0 11 */ subfc. r0, r0, r30
|
|
/* 8034CD3C 00349C7C 40 82 00 3C */ bne lbl_8034CD78
|
|
/* 8034CD40 00349C80 55 83 04 3E */ clrlwi r3, r12, 0x10
|
|
/* 8034CD44 00349C84 54 C0 04 3E */ clrlwi r0, r6, 0x10
|
|
/* 8034CD48 00349C88 7C 03 01 D6 */ mullw r0, r3, r0
|
|
/* 8034CD4C 00349C8C 54 83 04 3E */ clrlwi r3, r4, 0x10
|
|
/* 8034CD50 00349C90 7C 03 00 50 */ subf r0, r3, r0
|
|
/* 8034CD54 00349C94 57 A3 04 3E */ clrlwi r3, r29, 0x10
|
|
/* 8034CD58 00349C98 7F A3 F1 D6 */ mullw r29, r3, r30
|
|
/* 8034CD5C 00349C9C 7C 1E 00 50 */ subf r0, r30, r0
|
|
/* 8034CD60 00349CA0 7F C3 01 D6 */ mullw r30, r3, r0
|
|
/* 8034CD64 00349CA4 7C 07 EA 14 */ add r0, r7, r29
|
|
/* 8034CD68 00349CA8 7C C9 F2 14 */ add r6, r9, r30
|
|
/* 8034CD6C 00349CAC 7C 68 EA 14 */ add r3, r8, r29
|
|
/* 8034CD70 00349CB0 7C EA F2 14 */ add r7, r10, r30
|
|
/* 8034CD74 00349CB4 48 00 00 38 */ b lbl_8034CDAC
|
|
lbl_8034CD78:
|
|
/* 8034CD78 00349CB8 55 83 04 3E */ clrlwi r3, r12, 0x10
|
|
/* 8034CD7C 00349CBC 54 C0 04 3E */ clrlwi r0, r6, 0x10
|
|
/* 8034CD80 00349CC0 7C 03 01 D6 */ mullw r0, r3, r0
|
|
/* 8034CD84 00349CC4 54 83 04 3E */ clrlwi r3, r4, 0x10
|
|
/* 8034CD88 00349CC8 7C 03 00 50 */ subf r0, r3, r0
|
|
/* 8034CD8C 00349CCC 57 A3 04 3E */ clrlwi r3, r29, 0x10
|
|
/* 8034CD90 00349CD0 7F A3 F1 D6 */ mullw r29, r3, r30
|
|
/* 8034CD94 00349CD4 7C 1E 00 50 */ subf r0, r30, r0
|
|
/* 8034CD98 00349CD8 7F C3 01 D6 */ mullw r30, r3, r0
|
|
/* 8034CD9C 00349CDC 7C 08 EA 14 */ add r0, r8, r29
|
|
/* 8034CDA0 00349CE0 7C CA F2 14 */ add r6, r10, r30
|
|
/* 8034CDA4 00349CE4 7C 67 EA 14 */ add r3, r7, r29
|
|
/* 8034CDA8 00349CE8 7C E9 F2 14 */ add r7, r9, r30
|
|
lbl_8034CDAC:
|
|
/* 8034CDAC 00349CEC 54 88 04 3E */ clrlwi r8, r4, 0x10
|
|
/* 8034CDB0 00349CF0 55 84 04 3E */ clrlwi r4, r12, 0x10
|
|
/* 8034CDB4 00349CF4 7C 88 23 D6 */ divw r4, r8, r4
|
|
/* 8034CDB8 00349CF8 2C 1F 00 00 */ cmpwi r31, 0
|
|
/* 8034CDBC 00349CFC 54 84 04 3E */ clrlwi r4, r4, 0x10
|
|
/* 8034CDC0 00349D00 41 82 00 20 */ beq lbl_8034CDE0
|
|
/* 8034CDC4 00349D04 54 84 08 3C */ slwi r4, r4, 1
|
|
/* 8034CDC8 00349D08 38 84 FF FE */ addi r4, r4, -2
|
|
/* 8034CDCC 00349D0C 7C 00 22 14 */ add r0, r0, r4
|
|
/* 8034CDD0 00349D10 7C 63 22 14 */ add r3, r3, r4
|
|
/* 8034CDD4 00349D14 38 80 00 00 */ li r4, 0
|
|
/* 8034CDD8 00349D18 38 C6 00 02 */ addi r6, r6, 2
|
|
/* 8034CDDC 00349D1C 38 E7 00 02 */ addi r7, r7, 2
|
|
lbl_8034CDE0:
|
|
/* 8034CDE0 00349D20 54 A5 06 3E */ clrlwi r5, r5, 0x18
|
|
/* 8034CDE4 00349D24 54 84 23 36 */ rlwinm r4, r4, 4, 0xc, 0x1b
|
|
/* 8034CDE8 00349D28 7C A4 23 78 */ or r4, r5, r4
|
|
/* 8034CDEC 00349D2C B0 8B 00 00 */ sth r4, 0(r11)
|
|
/* 8034CDF0 00349D30 3C 80 80 00 */ lis r4, 0x8000
|
|
/* 8034CDF4 00349D34 3D 20 01 00 */ lis r9, 0x100
|
|
/* 8034CDF8 00349D38 80 AD 92 90 */ lwz r5, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CDFC 00349D3C 3D 00 02 00 */ lis r8, 0x200
|
|
/* 8034CE00 00349D40 81 4D 92 94 */ lwz r10, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CE04 00349D44 7C A4 23 78 */ or r4, r5, r4
|
|
/* 8034CE08 00349D48 3C A0 00 40 */ lis r5, 0x40
|
|
/* 8034CE0C 00349D4C 91 4D 92 94 */ stw r10, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CE10 00349D50 90 8D 92 90 */ stw r4, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CE14 00349D54 3C 80 00 80 */ lis r4, 0x80
|
|
/* 8034CE18 00349D58 B0 0B 00 0E */ sth r0, 0xe(r11)
|
|
/* 8034CE1C 00349D5C 80 0D 92 90 */ lwz r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CE20 00349D60 81 4D 92 94 */ lwz r10, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CE24 00349D64 7C 00 4B 78 */ or r0, r0, r9
|
|
/* 8034CE28 00349D68 91 4D 92 94 */ stw r10, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CE2C 00349D6C 90 0D 92 90 */ stw r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CE30 00349D70 B0 CB 00 0C */ sth r6, 0xc(r11)
|
|
/* 8034CE34 00349D74 80 0D 92 90 */ lwz r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CE38 00349D78 80 CD 92 94 */ lwz r6, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CE3C 00349D7C 7C 00 43 78 */ or r0, r0, r8
|
|
/* 8034CE40 00349D80 90 CD 92 94 */ stw r6, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CE44 00349D84 90 0D 92 90 */ stw r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CE48 00349D88 B0 6B 00 12 */ sth r3, 0x12(r11)
|
|
/* 8034CE4C 00349D8C 80 0D 92 90 */ lwz r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CE50 00349D90 80 6D 92 94 */ lwz r3, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CE54 00349D94 7C 00 2B 78 */ or r0, r0, r5
|
|
/* 8034CE58 00349D98 90 6D 92 94 */ stw r3, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CE5C 00349D9C 90 0D 92 90 */ stw r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CE60 00349DA0 B0 EB 00 10 */ sth r7, 0x10(r11)
|
|
/* 8034CE64 00349DA4 80 0D 92 90 */ lwz r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CE68 00349DA8 80 6D 92 94 */ lwz r3, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CE6C 00349DAC 7C 00 23 78 */ or r0, r0, r4
|
|
/* 8034CE70 00349DB0 90 6D 92 94 */ stw r3, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034CE74 00349DB4 90 0D 92 90 */ stw r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034CE78 00349DB8 83 E1 00 24 */ lwz r31, 0x24(r1)
|
|
/* 8034CE7C 00349DBC 83 C1 00 20 */ lwz r30, 0x20(r1)
|
|
/* 8034CE80 00349DC0 83 A1 00 1C */ lwz r29, 0x1c(r1)
|
|
/* 8034CE84 00349DC4 38 21 00 28 */ addi r1, r1, 0x28
|
|
/* 8034CE88 00349DC8 4E 80 00 20 */ blr
|
|
|
|
.global VIConfigure
|
|
VIConfigure:
|
|
/* 8034CE8C 00349DCC 7C 08 02 A6 */ mflr r0
|
|
/* 8034CE90 00349DD0 3C A0 80 3D */ lis r5, lbl_803D1760@ha
|
|
/* 8034CE94 00349DD4 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 8034CE98 00349DD8 3C 80 80 45 */ lis r4, lbl_8044CA28@ha
|
|
/* 8034CE9C 00349DDC 94 21 FF 88 */ stwu r1, -0x78(r1)
|
|
/* 8034CEA0 00349DE0 BD E1 00 34 */ stmw r15, 0x34(r1)
|
|
/* 8034CEA4 00349DE4 3A 63 00 00 */ addi r19, r3, 0
|
|
/* 8034CEA8 00349DE8 3A 05 17 60 */ addi r16, r5, lbl_803D1760@l
|
|
/* 8034CEAC 00349DEC 3B C4 CA 28 */ addi r30, r4, lbl_8044CA28@l
|
|
/* 8034CEB0 00349DF0 4B FF 08 45 */ bl __RAS_OSDisableInterrupts_begin
|
|
/* 8034CEB4 00349DF4 80 93 00 00 */ lwz r4, 0(r19)
|
|
/* 8034CEB8 00349DF8 3B BE 01 14 */ addi r29, r30, 0x114
|
|
/* 8034CEBC 00349DFC 80 1E 01 14 */ lwz r0, 0x114(r30)
|
|
/* 8034CEC0 00349E00 39 E3 00 00 */ addi r15, r3, 0
|
|
/* 8034CEC4 00349E04 54 84 07 BE */ clrlwi r4, r4, 0x1e
|
|
/* 8034CEC8 00349E08 7C 00 20 40 */ cmplw r0, r4
|
|
/* 8034CECC 00349E0C 41 82 00 10 */ beq lbl_8034CEDC
|
|
/* 8034CED0 00349E10 38 00 00 01 */ li r0, 1
|
|
/* 8034CED4 00349E14 90 0D 92 88 */ stw r0, lbl_80451808-_SDA_BASE_(r13)
|
|
/* 8034CED8 00349E18 90 9D 00 00 */ stw r4, 0(r29)
|
|
lbl_8034CEDC:
|
|
/* 8034CEDC 00349E1C 80 13 00 00 */ lwz r0, 0(r19)
|
|
/* 8034CEE0 00349E20 3C 60 80 00 */ lis r3, 0x800000CC@ha
|
|
/* 8034CEE4 00349E24 82 23 00 CC */ lwz r17, 0x800000CC@l(r3)
|
|
/* 8034CEE8 00349E28 54 00 F0 BE */ srwi r0, r0, 2
|
|
/* 8034CEEC 00349E2C 28 00 00 04 */ cmplwi r0, 4
|
|
/* 8034CEF0 00349E30 7C 12 03 78 */ mr r18, r0
|
|
/* 8034CEF4 00349E34 40 82 00 6C */ bne lbl_8034CF60
|
|
/* 8034CEF8 00349E38 80 0D 92 C0 */ lwz r0, lbl_80451840-_SDA_BASE_(r13)
|
|
/* 8034CEFC 00349E3C 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8034CF00 00349E40 40 82 00 60 */ bne lbl_8034CF60
|
|
/* 8034CF04 00349E44 38 00 00 01 */ li r0, 1
|
|
/* 8034CF08 00349E48 4C C6 31 82 */ crclr 6
|
|
/* 8034CF0C 00349E4C 90 0D 92 C0 */ stw r0, lbl_80451840-_SDA_BASE_(r13)
|
|
/* 8034CF10 00349E50 38 70 02 70 */ addi r3, r16, 0x270
|
|
/* 8034CF14 00349E54 4B CB 9B A9 */ bl OSReport
|
|
/* 8034CF18 00349E58 38 70 02 9C */ addi r3, r16, 0x29c
|
|
/* 8034CF1C 00349E5C 4C C6 31 82 */ crclr 6
|
|
/* 8034CF20 00349E60 4B CB 9B 9D */ bl OSReport
|
|
/* 8034CF24 00349E64 38 70 02 C8 */ addi r3, r16, 0x2c8
|
|
/* 8034CF28 00349E68 4C C6 31 82 */ crclr 6
|
|
/* 8034CF2C 00349E6C 4B CB 9B 91 */ bl OSReport
|
|
/* 8034CF30 00349E70 38 70 02 F4 */ addi r3, r16, 0x2f4
|
|
/* 8034CF34 00349E74 4C C6 31 82 */ crclr 6
|
|
/* 8034CF38 00349E78 4B CB 9B 85 */ bl OSReport
|
|
/* 8034CF3C 00349E7C 38 70 03 20 */ addi r3, r16, 0x320
|
|
/* 8034CF40 00349E80 4C C6 31 82 */ crclr 6
|
|
/* 8034CF44 00349E84 4B CB 9B 79 */ bl OSReport
|
|
/* 8034CF48 00349E88 38 70 03 4C */ addi r3, r16, 0x34c
|
|
/* 8034CF4C 00349E8C 4C C6 31 82 */ crclr 6
|
|
/* 8034CF50 00349E90 4B CB 9B 6D */ bl OSReport
|
|
/* 8034CF54 00349E94 38 70 02 70 */ addi r3, r16, 0x270
|
|
/* 8034CF58 00349E98 4C C6 31 82 */ crclr 6
|
|
/* 8034CF5C 00349E9C 4B CB 9B 61 */ bl OSReport
|
|
lbl_8034CF60:
|
|
/* 8034CF60 00349EA0 2C 11 00 02 */ cmpwi r17, 2
|
|
/* 8034CF64 00349EA4 41 82 00 2C */ beq lbl_8034CF90
|
|
/* 8034CF68 00349EA8 40 80 00 14 */ bge lbl_8034CF7C
|
|
/* 8034CF6C 00349EAC 2C 11 00 00 */ cmpwi r17, 0
|
|
/* 8034CF70 00349EB0 41 82 00 20 */ beq lbl_8034CF90
|
|
/* 8034CF74 00349EB4 40 80 00 3C */ bge lbl_8034CFB0
|
|
/* 8034CF78 00349EB8 48 00 00 48 */ b lbl_8034CFC0
|
|
lbl_8034CF7C:
|
|
/* 8034CF7C 00349EBC 2C 11 00 05 */ cmpwi r17, 5
|
|
/* 8034CF80 00349EC0 41 82 00 30 */ beq lbl_8034CFB0
|
|
/* 8034CF84 00349EC4 41 80 00 3C */ blt lbl_8034CFC0
|
|
/* 8034CF88 00349EC8 2C 11 00 08 */ cmpwi r17, 8
|
|
/* 8034CF8C 00349ECC 40 80 00 34 */ bge lbl_8034CFC0
|
|
lbl_8034CF90:
|
|
/* 8034CF90 00349ED0 28 12 00 00 */ cmplwi r18, 0
|
|
/* 8034CF94 00349ED4 41 82 00 48 */ beq lbl_8034CFDC
|
|
/* 8034CF98 00349ED8 28 12 00 02 */ cmplwi r18, 2
|
|
/* 8034CF9C 00349EDC 41 82 00 40 */ beq lbl_8034CFDC
|
|
/* 8034CFA0 00349EE0 38 12 FF FA */ addi r0, r18, -6
|
|
/* 8034CFA4 00349EE4 28 00 00 01 */ cmplwi r0, 1
|
|
/* 8034CFA8 00349EE8 41 81 00 18 */ bgt lbl_8034CFC0
|
|
/* 8034CFAC 00349EEC 48 00 00 30 */ b lbl_8034CFDC
|
|
lbl_8034CFB0:
|
|
/* 8034CFB0 00349EF0 28 12 00 01 */ cmplwi r18, 1
|
|
/* 8034CFB4 00349EF4 41 82 00 28 */ beq lbl_8034CFDC
|
|
/* 8034CFB8 00349EF8 28 12 00 05 */ cmplwi r18, 5
|
|
/* 8034CFBC 00349EFC 41 82 00 20 */ beq lbl_8034CFDC
|
|
lbl_8034CFC0:
|
|
/* 8034CFC0 00349F00 38 D1 00 00 */ addi r6, r17, 0
|
|
/* 8034CFC4 00349F04 4C C6 31 82 */ crclr 6
|
|
/* 8034CFC8 00349F08 38 F2 00 00 */ addi r7, r18, 0
|
|
/* 8034CFCC 00349F0C 38 B0 03 78 */ addi r5, r16, 0x378
|
|
/* 8034CFD0 00349F10 38 6D 84 94 */ addi r3, r13, lbl_80450A14-_SDA_BASE_
|
|
/* 8034CFD4 00349F14 38 80 07 BB */ li r4, 0x7bb
|
|
/* 8034CFD8 00349F18 4B CB 9E A5 */ bl OSPanic
|
|
lbl_8034CFDC:
|
|
/* 8034CFDC 00349F1C 28 12 00 00 */ cmplwi r18, 0
|
|
/* 8034CFE0 00349F20 41 82 00 0C */ beq lbl_8034CFEC
|
|
/* 8034CFE4 00349F24 28 12 00 02 */ cmplwi r18, 2
|
|
/* 8034CFE8 00349F28 40 82 00 0C */ bne lbl_8034CFF4
|
|
lbl_8034CFEC:
|
|
/* 8034CFEC 00349F2C 92 3E 01 18 */ stw r17, 0x118(r30)
|
|
/* 8034CFF0 00349F30 48 00 00 08 */ b lbl_8034CFF8
|
|
lbl_8034CFF4:
|
|
/* 8034CFF4 00349F34 92 5E 01 18 */ stw r18, 0x118(r30)
|
|
lbl_8034CFF8:
|
|
/* 8034CFF8 00349F38 A0 13 00 0A */ lhz r0, 0xa(r19)
|
|
/* 8034CFFC 00349F3C B0 1E 00 F0 */ sth r0, 0xf0(r30)
|
|
/* 8034D000 00349F40 80 1D 00 00 */ lwz r0, 0(r29)
|
|
/* 8034D004 00349F44 28 00 00 01 */ cmplwi r0, 1
|
|
/* 8034D008 00349F48 40 82 00 10 */ bne lbl_8034D018
|
|
/* 8034D00C 00349F4C A0 13 00 0C */ lhz r0, 0xc(r19)
|
|
/* 8034D010 00349F50 54 00 0C 3C */ rlwinm r0, r0, 1, 0x10, 0x1e
|
|
/* 8034D014 00349F54 48 00 00 08 */ b lbl_8034D01C
|
|
lbl_8034D018:
|
|
/* 8034D018 00349F58 A0 13 00 0C */ lhz r0, 0xc(r19)
|
|
lbl_8034D01C:
|
|
/* 8034D01C 00349F5C B0 1E 00 F2 */ sth r0, 0xf2(r30)
|
|
/* 8034D020 00349F60 3B 1E 00 F2 */ addi r24, r30, 0xf2
|
|
/* 8034D024 00349F64 3B 3E 00 F4 */ addi r25, r30, 0xf4
|
|
/* 8034D028 00349F68 A0 13 00 0E */ lhz r0, 0xe(r19)
|
|
/* 8034D02C 00349F6C 3B 9E 01 02 */ addi r28, r30, 0x102
|
|
/* 8034D030 00349F70 3B 5E 01 10 */ addi r26, r30, 0x110
|
|
/* 8034D034 00349F74 B0 1E 00 F4 */ sth r0, 0xf4(r30)
|
|
/* 8034D038 00349F78 38 00 00 00 */ li r0, 0
|
|
/* 8034D03C 00349F7C 3A 3E 01 0A */ addi r17, r30, 0x10a
|
|
/* 8034D040 00349F80 A0 73 00 04 */ lhz r3, 4(r19)
|
|
/* 8034D044 00349F84 3B 7E 01 0C */ addi r27, r30, 0x10c
|
|
/* 8034D048 00349F88 3A 1E 01 06 */ addi r16, r30, 0x106
|
|
/* 8034D04C 00349F8C B0 7E 01 02 */ sth r3, 0x102(r30)
|
|
/* 8034D050 00349F90 3A 5E 01 08 */ addi r18, r30, 0x108
|
|
/* 8034D054 00349F94 A0 73 00 08 */ lhz r3, 8(r19)
|
|
/* 8034D058 00349F98 B0 7E 01 04 */ sth r3, 0x104(r30)
|
|
/* 8034D05C 00349F9C 80 73 00 14 */ lwz r3, 0x14(r19)
|
|
/* 8034D060 00349FA0 90 7E 01 10 */ stw r3, 0x110(r30)
|
|
/* 8034D064 00349FA4 A0 7E 01 02 */ lhz r3, 0x102(r30)
|
|
/* 8034D068 00349FA8 B0 7E 01 0A */ sth r3, 0x10a(r30)
|
|
/* 8034D06C 00349FAC A0 7E 01 04 */ lhz r3, 0x104(r30)
|
|
/* 8034D070 00349FB0 B0 7E 01 0C */ sth r3, 0x10c(r30)
|
|
/* 8034D074 00349FB4 B0 1E 01 06 */ sth r0, 0x106(r30)
|
|
/* 8034D078 00349FB8 B0 1E 01 08 */ sth r0, 0x108(r30)
|
|
/* 8034D07C 00349FBC 80 1D 00 00 */ lwz r0, 0(r29)
|
|
/* 8034D080 00349FC0 28 00 00 02 */ cmplwi r0, 2
|
|
/* 8034D084 00349FC4 40 82 00 0C */ bne lbl_8034D090
|
|
/* 8034D088 00349FC8 A0 1B 00 00 */ lhz r0, 0(r27)
|
|
/* 8034D08C 00349FCC 48 00 00 30 */ b lbl_8034D0BC
|
|
lbl_8034D090:
|
|
/* 8034D090 00349FD0 28 00 00 03 */ cmplwi r0, 3
|
|
/* 8034D094 00349FD4 40 82 00 0C */ bne lbl_8034D0A0
|
|
/* 8034D098 00349FD8 A0 1B 00 00 */ lhz r0, 0(r27)
|
|
/* 8034D09C 00349FDC 48 00 00 20 */ b lbl_8034D0BC
|
|
lbl_8034D0A0:
|
|
/* 8034D0A0 00349FE0 80 1A 00 00 */ lwz r0, 0(r26)
|
|
/* 8034D0A4 00349FE4 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 8034D0A8 00349FE8 40 82 00 10 */ bne lbl_8034D0B8
|
|
/* 8034D0AC 00349FEC A0 1B 00 00 */ lhz r0, 0(r27)
|
|
/* 8034D0B0 00349FF0 54 00 0C 3C */ rlwinm r0, r0, 1, 0x10, 0x1e
|
|
/* 8034D0B4 00349FF4 48 00 00 08 */ b lbl_8034D0BC
|
|
lbl_8034D0B8:
|
|
/* 8034D0B8 00349FF8 A0 1B 00 00 */ lhz r0, 0(r27)
|
|
lbl_8034D0BC:
|
|
/* 8034D0BC 00349FFC 3A FE 00 F6 */ addi r23, r30, 0xf6
|
|
/* 8034D0C0 0034A000 B0 1E 00 F6 */ sth r0, 0xf6(r30)
|
|
/* 8034D0C4 0034A004 80 1D 00 00 */ lwz r0, 0(r29)
|
|
/* 8034D0C8 0034A008 28 00 00 03 */ cmplwi r0, 3
|
|
/* 8034D0CC 0034A00C 40 82 00 0C */ bne lbl_8034D0D8
|
|
/* 8034D0D0 0034A010 38 00 00 01 */ li r0, 1
|
|
/* 8034D0D4 0034A014 48 00 00 08 */ b lbl_8034D0DC
|
|
lbl_8034D0D8:
|
|
/* 8034D0D8 0034A018 38 00 00 00 */ li r0, 0
|
|
lbl_8034D0DC:
|
|
/* 8034D0DC 0034A01C 3A BE 01 34 */ addi r21, r30, 0x134
|
|
/* 8034D0E0 0034A020 90 1E 01 34 */ stw r0, 0x134(r30)
|
|
/* 8034D0E4 0034A024 3A DE 01 18 */ addi r22, r30, 0x118
|
|
/* 8034D0E8 0034A028 80 7E 01 18 */ lwz r3, 0x118(r30)
|
|
/* 8034D0EC 0034A02C 80 1D 00 00 */ lwz r0, 0(r29)
|
|
/* 8034D0F0 0034A030 54 63 10 3A */ slwi r3, r3, 2
|
|
/* 8034D0F4 0034A034 7C 63 02 14 */ add r3, r3, r0
|
|
/* 8034D0F8 0034A038 4B FF F1 71 */ bl getTiming
|
|
/* 8034D0FC 0034A03C 7C 7F 1B 78 */ mr r31, r3
|
|
/* 8034D100 0034A040 93 FE 01 44 */ stw r31, 0x144(r30)
|
|
/* 8034D104 0034A044 A0 19 00 00 */ lhz r0, 0(r25)
|
|
/* 8034D108 0034A048 A8 9E 00 F0 */ lha r4, 0xf0(r30)
|
|
/* 8034D10C 0034A04C A8 6D 92 84 */ lha r3, lbl_80451804-_SDA_BASE_(r13)
|
|
/* 8034D110 0034A050 20 00 02 D0 */ subfic r0, r0, 0x2d0
|
|
/* 8034D114 0034A054 A0 DF 00 02 */ lhz r6, 2(r31)
|
|
/* 8034D118 0034A058 7C 64 1A 14 */ add r3, r4, r3
|
|
/* 8034D11C 0034A05C 7C 03 00 00 */ cmpw r3, r0
|
|
/* 8034D120 0034A060 40 81 00 08 */ ble lbl_8034D128
|
|
/* 8034D124 0034A064 48 00 00 14 */ b lbl_8034D138
|
|
lbl_8034D128:
|
|
/* 8034D128 0034A068 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8034D12C 0034A06C 40 80 00 08 */ bge lbl_8034D134
|
|
/* 8034D130 0034A070 38 60 00 00 */ li r3, 0
|
|
lbl_8034D134:
|
|
/* 8034D134 0034A074 7C 60 1B 78 */ mr r0, r3
|
|
lbl_8034D138:
|
|
/* 8034D138 0034A078 B0 1E 00 F8 */ sth r0, 0xf8(r30)
|
|
/* 8034D13C 0034A07C 38 7E 00 F8 */ addi r3, r30, 0xf8
|
|
/* 8034D140 0034A080 80 1A 00 00 */ lwz r0, 0(r26)
|
|
/* 8034D144 0034A084 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 8034D148 0034A088 40 82 00 0C */ bne lbl_8034D154
|
|
/* 8034D14C 0034A08C 38 00 00 02 */ li r0, 2
|
|
/* 8034D150 0034A090 48 00 00 08 */ b lbl_8034D158
|
|
lbl_8034D154:
|
|
/* 8034D154 0034A094 38 00 00 01 */ li r0, 1
|
|
lbl_8034D158:
|
|
/* 8034D158 0034A098 A0 98 00 00 */ lhz r4, 0(r24)
|
|
/* 8034D15C 0034A09C A8 AD 92 86 */ lha r5, lbl_80451806-_SDA_BASE_(r13)
|
|
/* 8034D160 0034A0A0 7C 87 07 34 */ extsh r7, r4
|
|
/* 8034D164 0034A0A4 54 84 07 FE */ clrlwi r4, r4, 0x1f
|
|
/* 8034D168 0034A0A8 7C E7 2A 14 */ add r7, r7, r5
|
|
/* 8034D16C 0034A0AC 7C 07 20 00 */ cmpw r7, r4
|
|
/* 8034D170 0034A0B0 40 81 00 08 */ ble lbl_8034D178
|
|
/* 8034D174 0034A0B4 48 00 00 08 */ b lbl_8034D17C
|
|
lbl_8034D178:
|
|
/* 8034D178 0034A0B8 7C 87 23 78 */ mr r7, r4
|
|
lbl_8034D17C:
|
|
/* 8034D17C 0034A0BC B0 FE 00 FA */ sth r7, 0xfa(r30)
|
|
/* 8034D180 0034A0C0 7C C6 07 34 */ extsh r6, r6
|
|
/* 8034D184 0034A0C4 54 C6 08 3C */ slwi r6, r6, 1
|
|
/* 8034D188 0034A0C8 A0 F7 00 00 */ lhz r7, 0(r23)
|
|
/* 8034D18C 0034A0CC 7C C4 30 50 */ subf r6, r4, r6
|
|
/* 8034D190 0034A0D0 A9 58 00 00 */ lha r10, 0(r24)
|
|
/* 8034D194 0034A0D4 3A 7E 00 FA */ addi r19, r30, 0xfa
|
|
/* 8034D198 0034A0D8 7C E8 07 34 */ extsh r8, r7
|
|
/* 8034D19C 0034A0DC 7D 28 2A 14 */ add r9, r8, r5
|
|
/* 8034D1A0 0034A0E0 7D 2A 4A 14 */ add r9, r10, r9
|
|
/* 8034D1A4 0034A0E4 7D 06 48 51 */ subf. r8, r6, r9
|
|
/* 8034D1A8 0034A0E8 40 81 00 0C */ ble lbl_8034D1B4
|
|
/* 8034D1AC 0034A0EC 7D 26 48 50 */ subf r9, r6, r9
|
|
/* 8034D1B0 0034A0F0 48 00 00 08 */ b lbl_8034D1B8
|
|
lbl_8034D1B4:
|
|
/* 8034D1B4 0034A0F4 39 20 00 00 */ li r9, 0
|
|
lbl_8034D1B8:
|
|
/* 8034D1B8 0034A0F8 7D 4A 2A 14 */ add r10, r10, r5
|
|
/* 8034D1BC 0034A0FC 7D 04 50 51 */ subf. r8, r4, r10
|
|
/* 8034D1C0 0034A100 40 80 00 0C */ bge lbl_8034D1CC
|
|
/* 8034D1C4 0034A104 7D 04 50 50 */ subf r8, r4, r10
|
|
/* 8034D1C8 0034A108 48 00 00 08 */ b lbl_8034D1D0
|
|
lbl_8034D1CC:
|
|
/* 8034D1CC 0034A10C 39 00 00 00 */ li r8, 0
|
|
lbl_8034D1D0:
|
|
/* 8034D1D0 0034A110 7C E7 42 14 */ add r7, r7, r8
|
|
/* 8034D1D4 0034A114 7C E9 38 50 */ subf r7, r9, r7
|
|
/* 8034D1D8 0034A118 3A 9E 00 FC */ addi r20, r30, 0xfc
|
|
/* 8034D1DC 0034A11C B0 FE 00 FC */ sth r7, 0xfc(r30)
|
|
/* 8034D1E0 0034A120 A8 F8 00 00 */ lha r7, 0(r24)
|
|
/* 8034D1E4 0034A124 7D 07 2A 14 */ add r8, r7, r5
|
|
/* 8034D1E8 0034A128 7C E4 40 51 */ subf. r7, r4, r8
|
|
/* 8034D1EC 0034A12C 40 80 00 0C */ bge lbl_8034D1F8
|
|
/* 8034D1F0 0034A130 7C E4 40 50 */ subf r7, r4, r8
|
|
/* 8034D1F4 0034A134 48 00 00 08 */ b lbl_8034D1FC
|
|
lbl_8034D1F8:
|
|
/* 8034D1F8 0034A138 38 E0 00 00 */ li r7, 0
|
|
lbl_8034D1FC:
|
|
/* 8034D1FC 0034A13C 7D 07 03 D6 */ divw r8, r7, r0
|
|
/* 8034D200 0034A140 A0 F2 00 00 */ lhz r7, 0(r18)
|
|
/* 8034D204 0034A144 7C E8 38 50 */ subf r7, r8, r7
|
|
/* 8034D208 0034A148 B0 FE 00 FE */ sth r7, 0xfe(r30)
|
|
/* 8034D20C 0034A14C A8 F7 00 00 */ lha r7, 0(r23)
|
|
/* 8034D210 0034A150 A9 38 00 00 */ lha r9, 0(r24)
|
|
/* 8034D214 0034A154 7D 07 2A 14 */ add r8, r7, r5
|
|
/* 8034D218 0034A158 7D 09 42 14 */ add r8, r9, r8
|
|
/* 8034D21C 0034A15C 7C E6 40 51 */ subf. r7, r6, r8
|
|
/* 8034D220 0034A160 40 81 00 0C */ ble lbl_8034D22C
|
|
/* 8034D224 0034A164 7C C6 40 50 */ subf r6, r6, r8
|
|
/* 8034D228 0034A168 48 00 00 08 */ b lbl_8034D230
|
|
lbl_8034D22C:
|
|
/* 8034D22C 0034A16C 38 C0 00 00 */ li r6, 0
|
|
lbl_8034D230:
|
|
/* 8034D230 0034A170 7C E9 2A 14 */ add r7, r9, r5
|
|
/* 8034D234 0034A174 7C A4 38 51 */ subf. r5, r4, r7
|
|
/* 8034D238 0034A178 40 80 00 0C */ bge lbl_8034D244
|
|
/* 8034D23C 0034A17C 7C 84 38 50 */ subf r4, r4, r7
|
|
/* 8034D240 0034A180 48 00 00 08 */ b lbl_8034D248
|
|
lbl_8034D244:
|
|
/* 8034D244 0034A184 38 80 00 00 */ li r4, 0
|
|
lbl_8034D248:
|
|
/* 8034D248 0034A188 7C 84 03 D6 */ divw r4, r4, r0
|
|
/* 8034D24C 0034A18C A0 BB 00 00 */ lhz r5, 0(r27)
|
|
/* 8034D250 0034A190 7C C6 03 D6 */ divw r6, r6, r0
|
|
/* 8034D254 0034A194 7C 05 22 14 */ add r0, r5, r4
|
|
/* 8034D258 0034A198 7C 06 00 50 */ subf r0, r6, r0
|
|
/* 8034D25C 0034A19C B0 1E 01 00 */ sth r0, 0x100(r30)
|
|
/* 8034D260 0034A1A0 80 0D 92 80 */ lwz r0, lbl_80451800-_SDA_BASE_(r13)
|
|
/* 8034D264 0034A1A4 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8034D268 0034A1A8 40 82 00 0C */ bne lbl_8034D274
|
|
/* 8034D26C 0034A1AC 38 00 00 03 */ li r0, 3
|
|
/* 8034D270 0034A1B0 90 16 00 00 */ stw r0, 0(r22)
|
|
lbl_8034D274:
|
|
/* 8034D274 0034A1B4 A0 BF 00 18 */ lhz r5, 0x18(r31)
|
|
/* 8034D278 0034A1B8 7C A4 0E 70 */ srawi r4, r5, 1
|
|
/* 8034D27C 0034A1BC 7C 84 01 94 */ addze r4, r4
|
|
/* 8034D280 0034A1C0 7C A0 0E 70 */ srawi r0, r5, 1
|
|
/* 8034D284 0034A1C4 7C 00 01 94 */ addze r0, r0
|
|
/* 8034D288 0034A1C8 54 00 08 3C */ slwi r0, r0, 1
|
|
/* 8034D28C 0034A1CC 7C 00 28 10 */ subfc r0, r0, r5
|
|
/* 8034D290 0034A1D0 54 00 04 3F */ clrlwi. r0, r0, 0x10
|
|
/* 8034D294 0034A1D4 54 84 04 3E */ clrlwi r4, r4, 0x10
|
|
/* 8034D298 0034A1D8 41 82 00 0C */ beq lbl_8034D2A4
|
|
/* 8034D29C 0034A1DC A0 BF 00 1A */ lhz r5, 0x1a(r31)
|
|
/* 8034D2A0 0034A1E0 48 00 00 08 */ b lbl_8034D2A8
|
|
lbl_8034D2A4:
|
|
/* 8034D2A4 0034A1E4 38 A0 00 00 */ li r5, 0
|
|
lbl_8034D2A8:
|
|
/* 8034D2A8 0034A1E8 38 05 00 01 */ addi r0, r5, 1
|
|
/* 8034D2AC 0034A1EC B0 1E 00 32 */ sth r0, 0x32(r30)
|
|
/* 8034D2B0 0034A1F0 38 04 00 01 */ addi r0, r4, 1
|
|
/* 8034D2B4 0034A1F4 60 00 10 00 */ ori r0, r0, 0x1000
|
|
/* 8034D2B8 0034A1F8 80 CD 92 90 */ lwz r6, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D2BC 0034A1FC 38 9E 00 02 */ addi r4, r30, 2
|
|
/* 8034D2C0 0034A200 38 BE 00 6C */ addi r5, r30, 0x6c
|
|
/* 8034D2C4 0034A204 80 ED 92 94 */ lwz r7, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D2C8 0034A208 60 C6 00 40 */ ori r6, r6, 0x40
|
|
/* 8034D2CC 0034A20C 90 ED 92 94 */ stw r7, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D2D0 0034A210 90 CD 92 90 */ stw r6, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D2D4 0034A214 B0 1E 00 30 */ sth r0, 0x30(r30)
|
|
/* 8034D2D8 0034A218 80 0D 92 90 */ lwz r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D2DC 0034A21C 80 CD 92 94 */ lwz r6, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D2E0 0034A220 60 00 00 80 */ ori r0, r0, 0x80
|
|
/* 8034D2E4 0034A224 90 CD 92 94 */ stw r6, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D2E8 0034A228 90 0D 92 90 */ stw r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D2EC 0034A22C 80 1D 00 00 */ lwz r0, 0(r29)
|
|
/* 8034D2F0 0034A230 A0 DE 00 02 */ lhz r6, 2(r30)
|
|
/* 8034D2F4 0034A234 28 00 00 02 */ cmplwi r0, 2
|
|
/* 8034D2F8 0034A238 A0 FE 00 6C */ lhz r7, 0x6c(r30)
|
|
/* 8034D2FC 0034A23C 41 82 00 0C */ beq lbl_8034D308
|
|
/* 8034D300 0034A240 28 00 00 03 */ cmplwi r0, 3
|
|
/* 8034D304 0034A244 40 82 00 18 */ bne lbl_8034D31C
|
|
lbl_8034D308:
|
|
/* 8034D308 0034A248 54 C6 07 B8 */ rlwinm r6, r6, 0, 0x1e, 0x1c
|
|
/* 8034D30C 0034A24C 54 E0 00 3C */ rlwinm r0, r7, 0, 0, 0x1e
|
|
/* 8034D310 0034A250 60 C6 00 04 */ ori r6, r6, 4
|
|
/* 8034D314 0034A254 60 09 00 01 */ ori r9, r0, 1
|
|
/* 8034D318 0034A258 48 00 00 10 */ b lbl_8034D328
|
|
lbl_8034D31C:
|
|
/* 8034D31C 0034A25C 54 C6 07 B8 */ rlwinm r6, r6, 0, 0x1e, 0x1c
|
|
/* 8034D320 0034A260 50 06 17 7A */ rlwimi r6, r0, 2, 0x1d, 0x1d
|
|
/* 8034D324 0034A264 54 E9 00 3C */ rlwinm r9, r7, 0, 0, 0x1e
|
|
lbl_8034D328:
|
|
/* 8034D328 0034A268 80 F6 00 00 */ lwz r7, 0(r22)
|
|
/* 8034D32C 0034A26C 54 C6 07 76 */ rlwinm r6, r6, 0, 0x1d, 0x1b
|
|
/* 8034D330 0034A270 81 15 00 00 */ lwz r8, 0(r21)
|
|
/* 8034D334 0034A274 28 07 00 01 */ cmplwi r7, 1
|
|
/* 8034D338 0034A278 55 00 18 38 */ slwi r0, r8, 3
|
|
/* 8034D33C 0034A27C 7C C6 03 78 */ or r6, r6, r0
|
|
/* 8034D340 0034A280 41 82 00 10 */ beq lbl_8034D350
|
|
/* 8034D344 0034A284 38 07 FF FE */ addi r0, r7, -2
|
|
/* 8034D348 0034A288 28 00 00 01 */ cmplwi r0, 1
|
|
/* 8034D34C 0034A28C 41 81 00 14 */ bgt lbl_8034D360
|
|
lbl_8034D350:
|
|
/* 8034D350 0034A290 54 C6 06 2A */ rlwinm r6, r6, 0, 0x18, 0x15
|
|
/* 8034D354 0034A294 54 E0 40 2E */ slwi r0, r7, 8
|
|
/* 8034D358 0034A298 7C C0 03 78 */ or r0, r6, r0
|
|
/* 8034D35C 0034A29C 48 00 00 08 */ b lbl_8034D364
|
|
lbl_8034D360:
|
|
/* 8034D360 0034A2A0 54 C0 06 2A */ rlwinm r0, r6, 0, 0x18, 0x15
|
|
lbl_8034D364:
|
|
/* 8034D364 0034A2A4 B0 04 00 00 */ sth r0, 0(r4)
|
|
/* 8034D368 0034A2A8 3C 00 40 00 */ lis r0, 0x4000
|
|
/* 8034D36C 0034A2AC 2C 08 00 00 */ cmpwi r8, 0
|
|
/* 8034D370 0034A2B0 B1 25 00 00 */ sth r9, 0(r5)
|
|
/* 8034D374 0034A2B4 80 8D 92 90 */ lwz r4, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D378 0034A2B8 80 AD 92 94 */ lwz r5, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D37C 0034A2BC 7C 80 03 78 */ or r0, r4, r0
|
|
/* 8034D380 0034A2C0 90 AD 92 94 */ stw r5, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D384 0034A2C4 90 0D 92 90 */ stw r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D388 0034A2C8 80 8D 92 90 */ lwz r4, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D38C 0034A2CC 80 0D 92 94 */ lwz r0, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D390 0034A2D0 60 00 02 00 */ ori r0, r0, 0x200
|
|
/* 8034D394 0034A2D4 90 0D 92 94 */ stw r0, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D398 0034A2D8 90 8D 92 90 */ stw r4, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D39C 0034A2DC A0 99 00 00 */ lhz r4, 0(r25)
|
|
/* 8034D3A0 0034A2E0 A0 B1 00 00 */ lhz r5, 0(r17)
|
|
/* 8034D3A4 0034A2E4 41 82 00 0C */ beq lbl_8034D3B0
|
|
/* 8034D3A8 0034A2E8 54 A0 08 3C */ slwi r0, r5, 1
|
|
/* 8034D3AC 0034A2EC 48 00 00 08 */ b lbl_8034D3B4
|
|
lbl_8034D3B0:
|
|
/* 8034D3B0 0034A2F0 7C A0 2B 78 */ mr r0, r5
|
|
lbl_8034D3B4:
|
|
/* 8034D3B4 0034A2F4 54 08 04 3E */ clrlwi r8, r0, 0x10
|
|
/* 8034D3B8 0034A2F8 7C 08 20 40 */ cmplw r8, r4
|
|
/* 8034D3BC 0034A2FC 40 80 00 50 */ bge lbl_8034D40C
|
|
/* 8034D3C0 0034A300 55 06 40 2E */ slwi r6, r8, 8
|
|
/* 8034D3C4 0034A304 38 06 FF FF */ addi r0, r6, -1
|
|
/* 8034D3C8 0034A308 7C 04 02 14 */ add r0, r4, r0
|
|
/* 8034D3CC 0034A30C 7C 00 23 96 */ divwu r0, r0, r4
|
|
/* 8034D3D0 0034A310 60 00 10 00 */ ori r0, r0, 0x1000
|
|
/* 8034D3D4 0034A314 B0 1E 00 4A */ sth r0, 0x4a(r30)
|
|
/* 8034D3D8 0034A318 3C 00 04 00 */ lis r0, 0x400
|
|
/* 8034D3DC 0034A31C 80 CD 92 90 */ lwz r6, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D3E0 0034A320 80 ED 92 94 */ lwz r7, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D3E4 0034A324 7C E0 03 78 */ or r0, r7, r0
|
|
/* 8034D3E8 0034A328 90 0D 92 94 */ stw r0, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D3EC 0034A32C 90 CD 92 90 */ stw r6, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D3F0 0034A330 B1 1E 00 70 */ sth r8, 0x70(r30)
|
|
/* 8034D3F4 0034A334 80 CD 92 90 */ lwz r6, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D3F8 0034A338 80 0D 92 94 */ lwz r0, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D3FC 0034A33C 60 00 00 80 */ ori r0, r0, 0x80
|
|
/* 8034D400 0034A340 90 0D 92 94 */ stw r0, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D404 0034A344 90 CD 92 90 */ stw r6, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D408 0034A348 48 00 00 24 */ b lbl_8034D42C
|
|
lbl_8034D40C:
|
|
/* 8034D40C 0034A34C 38 00 01 00 */ li r0, 0x100
|
|
/* 8034D410 0034A350 B0 1E 00 4A */ sth r0, 0x4a(r30)
|
|
/* 8034D414 0034A354 3C 00 04 00 */ lis r0, 0x400
|
|
/* 8034D418 0034A358 80 CD 92 90 */ lwz r6, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D41C 0034A35C 80 ED 92 94 */ lwz r7, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D420 0034A360 7C E0 03 78 */ or r0, r7, r0
|
|
/* 8034D424 0034A364 90 0D 92 94 */ stw r0, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D428 0034A368 90 CD 92 90 */ stw r6, lbl_80451810-_SDA_BASE_(r13)
|
|
lbl_8034D42C:
|
|
/* 8034D42C 0034A36C A0 03 00 00 */ lhz r0, 0(r3)
|
|
/* 8034D430 0034A370 21 84 02 D0 */ subfic r12, r4, 0x2d0
|
|
/* 8034D434 0034A374 A0 DF 00 1A */ lhz r6, 0x1a(r31)
|
|
/* 8034D438 0034A378 3C 60 10 00 */ lis r3, 0x1000
|
|
/* 8034D43C 0034A37C 3D 00 20 00 */ lis r8, 0x2000
|
|
/* 8034D440 0034A380 B0 DE 00 06 */ sth r6, 6(r30)
|
|
/* 8034D444 0034A384 3D 20 04 00 */ lis r9, 0x400
|
|
/* 8034D448 0034A388 3C E0 08 00 */ lis r7, 0x800
|
|
/* 8034D44C 0034A38C 81 4D 92 90 */ lwz r10, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D450 0034A390 3C C0 00 10 */ lis r6, 0x10
|
|
/* 8034D454 0034A394 3C 80 00 20 */ lis r4, 0x20
|
|
/* 8034D458 0034A398 81 6D 92 94 */ lwz r11, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D45C 0034A39C 7D 4A 1B 78 */ or r10, r10, r3
|
|
/* 8034D460 0034A3A0 3C 60 00 04 */ lis r3, 4
|
|
/* 8034D464 0034A3A4 91 6D 92 94 */ stw r11, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D468 0034A3A8 91 4D 92 90 */ stw r10, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D46C 0034A3AC 89 5F 00 1D */ lbz r10, 0x1d(r31)
|
|
/* 8034D470 0034A3B0 89 7F 00 1E */ lbz r11, 0x1e(r31)
|
|
/* 8034D474 0034A3B4 51 4B 44 2E */ rlwimi r11, r10, 8, 0x10, 0x17
|
|
/* 8034D478 0034A3B8 B1 7E 00 04 */ sth r11, 4(r30)
|
|
/* 8034D47C 0034A3BC 81 4D 92 90 */ lwz r10, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D480 0034A3C0 81 6D 92 94 */ lwz r11, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D484 0034A3C4 7D 48 43 78 */ or r8, r10, r8
|
|
/* 8034D488 0034A3C8 91 6D 92 94 */ stw r11, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D48C 0034A3CC 91 0D 92 90 */ stw r8, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D490 0034A3D0 89 1F 00 1F */ lbz r8, 0x1f(r31)
|
|
/* 8034D494 0034A3D4 89 5F 00 1C */ lbz r10, 0x1c(r31)
|
|
/* 8034D498 0034A3D8 7E 28 02 14 */ add r17, r8, r0
|
|
/* 8034D49C 0034A3DC A1 7F 00 20 */ lhz r11, 0x20(r31)
|
|
/* 8034D4A0 0034A3E0 3A 31 FF D8 */ addi r17, r17, -40
|
|
/* 8034D4A4 0034A3E4 56 28 3C 30 */ rlwinm r8, r17, 7, 0x10, 0x18
|
|
/* 8034D4A8 0034A3E8 7D 48 43 78 */ or r8, r10, r8
|
|
/* 8034D4AC 0034A3EC B1 1E 00 0A */ sth r8, 0xa(r30)
|
|
/* 8034D4B0 0034A3F0 7D 0B 02 14 */ add r8, r11, r0
|
|
/* 8034D4B4 0034A3F4 38 08 00 28 */ addi r0, r8, 0x28
|
|
/* 8034D4B8 0034A3F8 81 4D 92 90 */ lwz r10, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D4BC 0034A3FC 7C 0C 00 50 */ subf r0, r12, r0
|
|
/* 8034D4C0 0034A400 56 28 BA 7E */ srwi r8, r17, 9
|
|
/* 8034D4C4 0034A404 81 6D 92 94 */ lwz r11, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D4C8 0034A408 54 00 08 3C */ slwi r0, r0, 1
|
|
/* 8034D4CC 0034A40C 7D 49 4B 78 */ or r9, r10, r9
|
|
/* 8034D4D0 0034A410 91 6D 92 94 */ stw r11, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D4D4 0034A414 7D 00 03 78 */ or r0, r8, r0
|
|
/* 8034D4D8 0034A418 91 2D 92 90 */ stw r9, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D4DC 0034A41C B0 1E 00 08 */ sth r0, 8(r30)
|
|
/* 8034D4E0 0034A420 80 0D 92 90 */ lwz r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D4E4 0034A424 81 0D 92 94 */ lwz r8, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D4E8 0034A428 7C 00 3B 78 */ or r0, r0, r7
|
|
/* 8034D4EC 0034A42C 91 0D 92 94 */ stw r8, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D4F0 0034A430 90 0D 92 90 */ stw r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D4F4 0034A434 A0 1F 00 10 */ lhz r0, 0x10(r31)
|
|
/* 8034D4F8 0034A438 88 FF 00 0C */ lbz r7, 0xc(r31)
|
|
/* 8034D4FC 0034A43C 54 00 28 34 */ slwi r0, r0, 5
|
|
/* 8034D500 0034A440 7C E0 03 78 */ or r0, r7, r0
|
|
/* 8034D504 0034A444 B0 1E 00 16 */ sth r0, 0x16(r30)
|
|
/* 8034D508 0034A448 80 0D 92 90 */ lwz r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D50C 0034A44C 80 ED 92 94 */ lwz r7, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D510 0034A450 7C 00 33 78 */ or r0, r0, r6
|
|
/* 8034D514 0034A454 90 ED 92 94 */ stw r7, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D518 0034A458 90 0D 92 90 */ stw r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D51C 0034A45C A0 1F 00 14 */ lhz r0, 0x14(r31)
|
|
/* 8034D520 0034A460 88 DF 00 0E */ lbz r6, 0xe(r31)
|
|
/* 8034D524 0034A464 54 00 28 34 */ slwi r0, r0, 5
|
|
/* 8034D528 0034A468 7C C0 03 78 */ or r0, r6, r0
|
|
/* 8034D52C 0034A46C B0 1E 00 14 */ sth r0, 0x14(r30)
|
|
/* 8034D530 0034A470 80 0D 92 90 */ lwz r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D534 0034A474 80 CD 92 94 */ lwz r6, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D538 0034A478 7C 00 23 78 */ or r0, r0, r4
|
|
/* 8034D53C 0034A47C 90 CD 92 94 */ stw r6, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D540 0034A480 90 0D 92 90 */ stw r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D544 0034A484 A0 1F 00 12 */ lhz r0, 0x12(r31)
|
|
/* 8034D548 0034A488 88 9F 00 0D */ lbz r4, 0xd(r31)
|
|
/* 8034D54C 0034A48C 54 00 28 34 */ slwi r0, r0, 5
|
|
/* 8034D550 0034A490 7C 80 03 78 */ or r0, r4, r0
|
|
/* 8034D554 0034A494 B0 1E 00 1A */ sth r0, 0x1a(r30)
|
|
/* 8034D558 0034A498 80 0D 92 90 */ lwz r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D55C 0034A49C 80 8D 92 94 */ lwz r4, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D560 0034A4A0 7C 00 1B 78 */ or r0, r0, r3
|
|
/* 8034D564 0034A4A4 90 8D 92 94 */ stw r4, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D568 0034A4A8 90 0D 92 90 */ stw r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D56C 0034A4AC A0 1F 00 16 */ lhz r0, 0x16(r31)
|
|
/* 8034D570 0034A4B0 88 7F 00 0F */ lbz r3, 0xf(r31)
|
|
/* 8034D574 0034A4B4 54 00 28 34 */ slwi r0, r0, 5
|
|
/* 8034D578 0034A4B8 7C 60 03 78 */ or r0, r3, r0
|
|
/* 8034D57C 0034A4BC B0 1E 00 18 */ sth r0, 0x18(r30)
|
|
/* 8034D580 0034A4C0 80 6D 92 90 */ lwz r3, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D584 0034A4C4 3C 00 00 08 */ lis r0, 8
|
|
/* 8034D588 0034A4C8 38 DE 01 1C */ addi r6, r30, 0x11c
|
|
/* 8034D58C 0034A4CC 80 8D 92 94 */ lwz r4, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D590 0034A4D0 7C 60 03 78 */ or r0, r3, r0
|
|
/* 8034D594 0034A4D4 90 8D 92 94 */ stw r4, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D598 0034A4D8 90 0D 92 90 */ stw r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D59C 0034A4DC A0 7C 00 00 */ lhz r3, 0(r28)
|
|
/* 8034D5A0 0034A4E0 80 9A 00 00 */ lwz r4, 0(r26)
|
|
/* 8034D5A4 0034A4E4 38 03 00 0F */ addi r0, r3, 0xf
|
|
/* 8034D5A8 0034A4E8 A0 70 00 00 */ lhz r3, 0(r16)
|
|
/* 8034D5AC 0034A4EC 7C 00 26 70 */ srawi r0, r0, 4
|
|
/* 8034D5B0 0034A4F0 7C 00 01 94 */ addze r0, r0
|
|
/* 8034D5B4 0034A4F4 2C 04 00 00 */ cmpwi r4, 0
|
|
/* 8034D5B8 0034A4F8 98 1E 01 1C */ stb r0, 0x11c(r30)
|
|
/* 8034D5BC 0034A4FC 40 82 00 0C */ bne lbl_8034D5C8
|
|
/* 8034D5C0 0034A500 88 86 00 00 */ lbz r4, 0(r6)
|
|
/* 8034D5C4 0034A504 48 00 00 0C */ b lbl_8034D5D0
|
|
lbl_8034D5C8:
|
|
/* 8034D5C8 0034A508 88 06 00 00 */ lbz r0, 0(r6)
|
|
/* 8034D5CC 0034A50C 54 04 0E 3C */ rlwinm r4, r0, 1, 0x18, 0x1e
|
|
lbl_8034D5D0:
|
|
/* 8034D5D0 0034A510 7C 60 26 70 */ srawi r0, r3, 4
|
|
/* 8034D5D4 0034A514 98 9E 01 1D */ stb r4, 0x11d(r30)
|
|
/* 8034D5D8 0034A518 7C 00 01 94 */ addze r0, r0
|
|
/* 8034D5DC 0034A51C 54 00 20 36 */ slwi r0, r0, 4
|
|
/* 8034D5E0 0034A520 7C 00 18 10 */ subfc r0, r0, r3
|
|
/* 8034D5E4 0034A524 98 1E 01 2C */ stb r0, 0x12c(r30)
|
|
/* 8034D5E8 0034A528 38 05 00 0F */ addi r0, r5, 0xf
|
|
/* 8034D5EC 0034A52C 3C 60 08 00 */ lis r3, 0x800
|
|
/* 8034D5F0 0034A530 88 9E 01 2C */ lbz r4, 0x12c(r30)
|
|
/* 8034D5F4 0034A534 7C 04 02 14 */ add r0, r4, r0
|
|
/* 8034D5F8 0034A538 7C 00 26 70 */ srawi r0, r0, 4
|
|
/* 8034D5FC 0034A53C 7C 00 01 94 */ addze r0, r0
|
|
/* 8034D600 0034A540 98 1E 01 1E */ stb r0, 0x11e(r30)
|
|
/* 8034D604 0034A544 88 1E 01 1E */ lbz r0, 0x11e(r30)
|
|
/* 8034D608 0034A548 88 9E 01 1D */ lbz r4, 0x11d(r30)
|
|
/* 8034D60C 0034A54C 50 04 44 2E */ rlwimi r4, r0, 8, 0x10, 0x17
|
|
/* 8034D610 0034A550 B0 9E 00 48 */ sth r4, 0x48(r30)
|
|
/* 8034D614 0034A554 80 8D 92 90 */ lwz r4, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D618 0034A558 80 0D 92 B8 */ lwz r0, lbl_80451838-_SDA_BASE_(r13)
|
|
/* 8034D61C 0034A55C 80 AD 92 94 */ lwz r5, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D620 0034A560 28 00 00 00 */ cmplwi r0, 0
|
|
/* 8034D624 0034A564 7C A0 1B 78 */ or r0, r5, r3
|
|
/* 8034D628 0034A568 90 0D 92 94 */ stw r0, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D62C 0034A56C 90 8D 92 90 */ stw r4, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D630 0034A570 41 82 00 1C */ beq lbl_8034D64C
|
|
/* 8034D634 0034A574 38 7E 00 F0 */ addi r3, r30, 0xf0
|
|
/* 8034D638 0034A578 38 9E 01 24 */ addi r4, r30, 0x124
|
|
/* 8034D63C 0034A57C 38 BE 01 28 */ addi r5, r30, 0x128
|
|
/* 8034D640 0034A580 38 DE 01 3C */ addi r6, r30, 0x13c
|
|
/* 8034D644 0034A584 38 FE 01 40 */ addi r7, r30, 0x140
|
|
/* 8034D648 0034A588 4B FF F3 D1 */ bl setFbbRegs
|
|
lbl_8034D64C:
|
|
/* 8034D64C 0034A58C 80 1E 01 30 */ lwz r0, 0x130(r30)
|
|
/* 8034D650 0034A590 90 01 00 08 */ stw r0, 8(r1)
|
|
/* 8034D654 0034A594 A0 73 00 00 */ lhz r3, 0(r19)
|
|
/* 8034D658 0034A598 A0 94 00 00 */ lhz r4, 0(r20)
|
|
/* 8034D65C 0034A59C 88 BF 00 00 */ lbz r5, 0(r31)
|
|
/* 8034D660 0034A5A0 A0 DF 00 02 */ lhz r6, 2(r31)
|
|
/* 8034D664 0034A5A4 A0 FF 00 04 */ lhz r7, 4(r31)
|
|
/* 8034D668 0034A5A8 A1 1F 00 06 */ lhz r8, 6(r31)
|
|
/* 8034D66C 0034A5AC A1 3F 00 08 */ lhz r9, 8(r31)
|
|
/* 8034D670 0034A5B0 A1 5F 00 0A */ lhz r10, 0xa(r31)
|
|
/* 8034D674 0034A5B4 4B FF F6 79 */ bl setVerticalRegs
|
|
/* 8034D678 0034A5B8 7D E3 7B 78 */ mr r3, r15
|
|
/* 8034D67C 0034A5BC 4B FF 00 A1 */ bl OSRestoreInterrupts
|
|
/* 8034D680 0034A5C0 B9 E1 00 34 */ lmw r15, 0x34(r1)
|
|
/* 8034D684 0034A5C4 80 01 00 7C */ lwz r0, 0x7c(r1)
|
|
/* 8034D688 0034A5C8 38 21 00 78 */ addi r1, r1, 0x78
|
|
/* 8034D68C 0034A5CC 7C 08 03 A6 */ mtlr r0
|
|
/* 8034D690 0034A5D0 4E 80 00 20 */ blr
|
|
|
|
.global VIFlush
|
|
VIFlush:
|
|
/* 8034D694 0034A5D4 7C 08 02 A6 */ mflr r0
|
|
/* 8034D698 0034A5D8 3C 60 80 45 */ lis r3, lbl_8044CA28@ha
|
|
/* 8034D69C 0034A5DC 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 8034D6A0 0034A5E0 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
/* 8034D6A4 0034A5E4 93 E1 00 1C */ stw r31, 0x1c(r1)
|
|
/* 8034D6A8 0034A5E8 3B E3 CA 28 */ addi r31, r3, lbl_8044CA28@l
|
|
/* 8034D6AC 0034A5EC 93 C1 00 18 */ stw r30, 0x18(r1)
|
|
/* 8034D6B0 0034A5F0 93 A1 00 14 */ stw r29, 0x14(r1)
|
|
/* 8034D6B4 0034A5F4 93 81 00 10 */ stw r28, 0x10(r1)
|
|
/* 8034D6B8 0034A5F8 4B FF 00 3D */ bl __RAS_OSDisableInterrupts_begin
|
|
/* 8034D6BC 0034A5FC 80 AD 92 98 */ lwz r5, lbl_80451818-_SDA_BASE_(r13)
|
|
/* 8034D6C0 0034A600 3B C3 00 00 */ addi r30, r3, 0
|
|
/* 8034D6C4 0034A604 38 00 00 00 */ li r0, 0
|
|
/* 8034D6C8 0034A608 80 8D 92 88 */ lwz r4, lbl_80451808-_SDA_BASE_(r13)
|
|
/* 8034D6CC 0034A60C 7C A3 23 78 */ or r3, r5, r4
|
|
/* 8034D6D0 0034A610 90 6D 92 98 */ stw r3, lbl_80451818-_SDA_BASE_(r13)
|
|
/* 8034D6D4 0034A614 90 0D 92 88 */ stw r0, lbl_80451808-_SDA_BASE_(r13)
|
|
/* 8034D6D8 0034A618 80 8D 92 A0 */ lwz r4, lbl_80451820-_SDA_BASE_(r13)
|
|
/* 8034D6DC 0034A61C 80 AD 92 A4 */ lwz r5, lbl_80451824-_SDA_BASE_(r13)
|
|
/* 8034D6E0 0034A620 80 0D 92 90 */ lwz r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D6E4 0034A624 80 6D 92 94 */ lwz r3, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D6E8 0034A628 7C 80 03 78 */ or r0, r4, r0
|
|
/* 8034D6EC 0034A62C 7C A3 1B 78 */ or r3, r5, r3
|
|
/* 8034D6F0 0034A630 90 6D 92 A4 */ stw r3, lbl_80451824-_SDA_BASE_(r13)
|
|
/* 8034D6F4 0034A634 90 0D 92 A0 */ stw r0, lbl_80451820-_SDA_BASE_(r13)
|
|
/* 8034D6F8 0034A638 48 00 00 78 */ b lbl_8034D770
|
|
lbl_8034D6FC:
|
|
/* 8034D6FC 0034A63C 80 6D 92 90 */ lwz r3, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D700 0034A640 38 A0 00 20 */ li r5, 0x20
|
|
/* 8034D704 0034A644 83 8D 92 94 */ lwz r28, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D708 0034A648 38 9C 00 00 */ addi r4, r28, 0
|
|
/* 8034D70C 0034A64C 48 01 4F 65 */ bl func_80362670
|
|
/* 8034D710 0034A650 7C 84 00 34 */ cntlzw r4, r4
|
|
/* 8034D714 0034A654 2C 04 00 20 */ cmpwi r4, 0x20
|
|
/* 8034D718 0034A658 38 00 FF FF */ li r0, -1
|
|
/* 8034D71C 0034A65C 7F 80 00 38 */ and r0, r28, r0
|
|
/* 8034D720 0034A660 40 80 00 08 */ bge lbl_8034D728
|
|
/* 8034D724 0034A664 48 00 00 0C */ b lbl_8034D730
|
|
lbl_8034D728:
|
|
/* 8034D728 0034A668 7C 03 00 34 */ cntlzw r3, r0
|
|
/* 8034D72C 0034A66C 38 83 00 20 */ addi r4, r3, 0x20
|
|
lbl_8034D730:
|
|
/* 8034D730 0034A670 54 83 08 3C */ slwi r3, r4, 1
|
|
/* 8034D734 0034A674 7C 1F 1A 2E */ lhzx r0, r31, r3
|
|
/* 8034D738 0034A678 7C 7F 1A 14 */ add r3, r31, r3
|
|
/* 8034D73C 0034A67C 20 A4 00 3F */ subfic r5, r4, 0x3f
|
|
/* 8034D740 0034A680 B0 03 00 78 */ sth r0, 0x78(r3)
|
|
/* 8034D744 0034A684 38 60 00 00 */ li r3, 0
|
|
/* 8034D748 0034A688 38 80 00 01 */ li r4, 1
|
|
/* 8034D74C 0034A68C 48 01 4F 01 */ bl func_8036264C
|
|
/* 8034D750 0034A690 80 0D 92 90 */ lwz r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D754 0034A694 7C 65 18 F8 */ nor r5, r3, r3
|
|
/* 8034D758 0034A698 7C 84 20 F8 */ nor r4, r4, r4
|
|
/* 8034D75C 0034A69C 80 6D 92 94 */ lwz r3, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D760 0034A6A0 7C 00 28 38 */ and r0, r0, r5
|
|
/* 8034D764 0034A6A4 7C 63 20 38 */ and r3, r3, r4
|
|
/* 8034D768 0034A6A8 90 6D 92 94 */ stw r3, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D76C 0034A6AC 90 0D 92 90 */ stw r0, lbl_80451810-_SDA_BASE_(r13)
|
|
lbl_8034D770:
|
|
/* 8034D770 0034A6B0 80 0D 92 90 */ lwz r0, lbl_80451810-_SDA_BASE_(r13)
|
|
/* 8034D774 0034A6B4 38 60 00 00 */ li r3, 0
|
|
/* 8034D778 0034A6B8 80 8D 92 94 */ lwz r4, lbl_80451814-_SDA_BASE_(r13)
|
|
/* 8034D77C 0034A6BC 7C 00 1A 78 */ xor r0, r0, r3
|
|
/* 8034D780 0034A6C0 7C 83 1A 78 */ xor r3, r4, r3
|
|
/* 8034D784 0034A6C4 7C 60 03 79 */ or. r0, r3, r0
|
|
/* 8034D788 0034A6C8 40 82 FF 74 */ bne lbl_8034D6FC
|
|
/* 8034D78C 0034A6CC 38 00 00 01 */ li r0, 1
|
|
/* 8034D790 0034A6D0 90 0D 92 68 */ stw r0, lbl_804517E8-_SDA_BASE_(r13)
|
|
/* 8034D794 0034A6D4 7F C3 F3 78 */ mr r3, r30
|
|
/* 8034D798 0034A6D8 80 1F 01 20 */ lwz r0, 0x120(r31)
|
|
/* 8034D79C 0034A6DC 90 0D 92 B0 */ stw r0, lbl_80451830-_SDA_BASE_(r13)
|
|
/* 8034D7A0 0034A6E0 4B FE FF 7D */ bl OSRestoreInterrupts
|
|
/* 8034D7A4 0034A6E4 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
/* 8034D7A8 0034A6E8 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
|
/* 8034D7AC 0034A6EC 83 C1 00 18 */ lwz r30, 0x18(r1)
|
|
/* 8034D7B0 0034A6F0 83 A1 00 14 */ lwz r29, 0x14(r1)
|
|
/* 8034D7B4 0034A6F4 83 81 00 10 */ lwz r28, 0x10(r1)
|
|
/* 8034D7B8 0034A6F8 38 21 00 20 */ addi r1, r1, 0x20
|
|
/* 8034D7BC 0034A6FC 7C 08 03 A6 */ mtlr r0
|
|
/* 8034D7C0 0034A700 4E 80 00 20 */ blr
|
|
|
|
.global VISetNextFrameBuffer
|
|
VISetNextFrameBuffer:
|
|
/* 8034D7C4 0034A704 7C 08 02 A6 */ mflr r0
|
|
/* 8034D7C8 0034A708 3C 80 80 45 */ lis r4, lbl_8044CA28@ha
|
|
/* 8034D7CC 0034A70C 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 8034D7D0 0034A710 94 21 FF E8 */ stwu r1, -0x18(r1)
|
|
/* 8034D7D4 0034A714 93 E1 00 14 */ stw r31, 0x14(r1)
|
|
/* 8034D7D8 0034A718 3B E4 CA 28 */ addi r31, r4, lbl_8044CA28@l
|
|
/* 8034D7DC 0034A71C 93 C1 00 10 */ stw r30, 0x10(r1)
|
|
/* 8034D7E0 0034A720 3B C3 00 00 */ addi r30, r3, 0
|
|
/* 8034D7E4 0034A724 4B FE FF 11 */ bl __RAS_OSDisableInterrupts_begin
|
|
/* 8034D7E8 0034A728 93 DF 01 20 */ stw r30, 0x120(r31)
|
|
/* 8034D7EC 0034A72C 38 00 00 01 */ li r0, 1
|
|
/* 8034D7F0 0034A730 3B C3 00 00 */ addi r30, r3, 0
|
|
/* 8034D7F4 0034A734 90 0D 92 B8 */ stw r0, lbl_80451838-_SDA_BASE_(r13)
|
|
/* 8034D7F8 0034A738 38 7F 00 F0 */ addi r3, r31, 0xf0
|
|
/* 8034D7FC 0034A73C 38 9F 01 24 */ addi r4, r31, 0x124
|
|
/* 8034D800 0034A740 38 BF 01 28 */ addi r5, r31, 0x128
|
|
/* 8034D804 0034A744 38 DF 01 3C */ addi r6, r31, 0x13c
|
|
/* 8034D808 0034A748 38 FF 01 40 */ addi r7, r31, 0x140
|
|
/* 8034D80C 0034A74C 4B FF F2 0D */ bl setFbbRegs
|
|
/* 8034D810 0034A750 7F C3 F3 78 */ mr r3, r30
|
|
/* 8034D814 0034A754 4B FE FF 09 */ bl OSRestoreInterrupts
|
|
/* 8034D818 0034A758 80 01 00 1C */ lwz r0, 0x1c(r1)
|
|
/* 8034D81C 0034A75C 83 E1 00 14 */ lwz r31, 0x14(r1)
|
|
/* 8034D820 0034A760 83 C1 00 10 */ lwz r30, 0x10(r1)
|
|
/* 8034D824 0034A764 38 21 00 18 */ addi r1, r1, 0x18
|
|
/* 8034D828 0034A768 7C 08 03 A6 */ mtlr r0
|
|
/* 8034D82C 0034A76C 4E 80 00 20 */ blr
|
|
|
|
.global VIGetNextFrameBuffer
|
|
VIGetNextFrameBuffer:
|
|
/* 8034D830 0034A770 80 6D 92 B0 */ lwz r3, lbl_80451830-_SDA_BASE_(r13)
|
|
/* 8034D834 0034A774 4E 80 00 20 */ blr
|
|
|
|
.global VIGetCurrentFrameBuffer
|
|
VIGetCurrentFrameBuffer:
|
|
/* 8034D838 0034A778 80 6D 92 B4 */ lwz r3, lbl_80451834-_SDA_BASE_(r13)
|
|
/* 8034D83C 0034A77C 4E 80 00 20 */ blr
|
|
|
|
.global VISetBlack
|
|
VISetBlack:
|
|
/* 8034D840 0034A780 7C 08 02 A6 */ mflr r0
|
|
/* 8034D844 0034A784 3C 80 80 45 */ lis r4, lbl_8044CA28@ha
|
|
/* 8034D848 0034A788 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 8034D84C 0034A78C 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
/* 8034D850 0034A790 93 E1 00 1C */ stw r31, 0x1c(r1)
|
|
/* 8034D854 0034A794 3B E4 CA 28 */ addi r31, r4, lbl_8044CA28@l
|
|
/* 8034D858 0034A798 93 C1 00 18 */ stw r30, 0x18(r1)
|
|
/* 8034D85C 0034A79C 3B C3 00 00 */ addi r30, r3, 0
|
|
/* 8034D860 0034A7A0 4B FE FE 95 */ bl __RAS_OSDisableInterrupts_begin
|
|
/* 8034D864 0034A7A4 93 DF 01 30 */ stw r30, 0x130(r31)
|
|
/* 8034D868 0034A7A8 7C 7E 1B 78 */ mr r30, r3
|
|
/* 8034D86C 0034A7AC 81 5F 01 44 */ lwz r10, 0x144(r31)
|
|
/* 8034D870 0034A7B0 80 1F 01 30 */ lwz r0, 0x130(r31)
|
|
/* 8034D874 0034A7B4 90 01 00 08 */ stw r0, 8(r1)
|
|
/* 8034D878 0034A7B8 A0 7F 00 FA */ lhz r3, 0xfa(r31)
|
|
/* 8034D87C 0034A7BC A0 9F 00 F6 */ lhz r4, 0xf6(r31)
|
|
/* 8034D880 0034A7C0 88 AA 00 00 */ lbz r5, 0(r10)
|
|
/* 8034D884 0034A7C4 A0 CA 00 02 */ lhz r6, 2(r10)
|
|
/* 8034D888 0034A7C8 A0 EA 00 04 */ lhz r7, 4(r10)
|
|
/* 8034D88C 0034A7CC A1 0A 00 06 */ lhz r8, 6(r10)
|
|
/* 8034D890 0034A7D0 A1 2A 00 08 */ lhz r9, 8(r10)
|
|
/* 8034D894 0034A7D4 A1 4A 00 0A */ lhz r10, 0xa(r10)
|
|
/* 8034D898 0034A7D8 4B FF F4 55 */ bl setVerticalRegs
|
|
/* 8034D89C 0034A7DC 7F C3 F3 78 */ mr r3, r30
|
|
/* 8034D8A0 0034A7E0 4B FE FE 7D */ bl OSRestoreInterrupts
|
|
/* 8034D8A4 0034A7E4 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
/* 8034D8A8 0034A7E8 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
|
/* 8034D8AC 0034A7EC 83 C1 00 18 */ lwz r30, 0x18(r1)
|
|
/* 8034D8B0 0034A7F0 38 21 00 20 */ addi r1, r1, 0x20
|
|
/* 8034D8B4 0034A7F4 7C 08 03 A6 */ mtlr r0
|
|
/* 8034D8B8 0034A7F8 4E 80 00 20 */ blr
|
|
|
|
.global VIGetRetraceCount
|
|
VIGetRetraceCount:
|
|
/* 8034D8BC 0034A7FC 80 6D 92 64 */ lwz r3, lbl_804517E4-_SDA_BASE_(r13)
|
|
/* 8034D8C0 0034A800 4E 80 00 20 */ blr
|
|
|
|
.global GetCurrentDisplayPosition
|
|
GetCurrentDisplayPosition:
|
|
/* 8034D8C4 0034A804 3C A0 CC 00 */ lis r5, 0xCC002000@ha
|
|
/* 8034D8C8 0034A808 38 E5 20 00 */ addi r7, r5, 0xCC002000@l
|
|
/* 8034D8CC 0034A80C A4 07 00 2C */ lhzu r0, 0x2c(r7)
|
|
/* 8034D8D0 0034A810 38 C5 20 00 */ addi r6, r5, 0x2000
|
|
/* 8034D8D4 0034A814 54 09 05 7E */ clrlwi r9, r0, 0x15
|
|
lbl_8034D8D8:
|
|
/* 8034D8D8 0034A818 A0 07 00 00 */ lhz r0, 0(r7)
|
|
/* 8034D8DC 0034A81C 7D 28 4B 78 */ mr r8, r9
|
|
/* 8034D8E0 0034A820 A0 A6 00 2E */ lhz r5, 0x2e(r6)
|
|
/* 8034D8E4 0034A824 54 09 05 7E */ clrlwi r9, r0, 0x15
|
|
/* 8034D8E8 0034A828 7C 08 48 40 */ cmplw r8, r9
|
|
/* 8034D8EC 0034A82C 54 A0 05 7E */ clrlwi r0, r5, 0x15
|
|
/* 8034D8F0 0034A830 40 82 FF E8 */ bne lbl_8034D8D8
|
|
/* 8034D8F4 0034A834 90 03 00 00 */ stw r0, 0(r3)
|
|
/* 8034D8F8 0034A838 91 24 00 00 */ stw r9, 0(r4)
|
|
/* 8034D8FC 0034A83C 4E 80 00 20 */ blr
|
|
|
|
.global getCurrentFieldEvenOdd
|
|
getCurrentFieldEvenOdd:
|
|
/* 8034D900 0034A840 3C 60 CC 00 */ lis r3, 0xCC002000@ha
|
|
/* 8034D904 0034A844 38 E3 20 00 */ addi r7, r3, 0xCC002000@l
|
|
/* 8034D908 0034A848 A4 07 00 2C */ lhzu r0, 0x2c(r7)
|
|
/* 8034D90C 0034A84C 38 83 20 00 */ addi r4, r3, 0x2000
|
|
/* 8034D910 0034A850 54 05 05 7E */ clrlwi r5, r0, 0x15
|
|
lbl_8034D914:
|
|
/* 8034D914 0034A854 A0 07 00 00 */ lhz r0, 0(r7)
|
|
/* 8034D918 0034A858 7C A6 2B 78 */ mr r6, r5
|
|
/* 8034D91C 0034A85C A0 64 00 2E */ lhz r3, 0x2e(r4)
|
|
/* 8034D920 0034A860 54 05 05 7E */ clrlwi r5, r0, 0x15
|
|
/* 8034D924 0034A864 7C 06 28 40 */ cmplw r6, r5
|
|
/* 8034D928 0034A868 54 63 05 7E */ clrlwi r3, r3, 0x15
|
|
/* 8034D92C 0034A86C 40 82 FF E8 */ bne lbl_8034D914
|
|
/* 8034D930 0034A870 80 CD 92 A8 */ lwz r6, lbl_80451828-_SDA_BASE_(r13)
|
|
/* 8034D934 0034A874 38 05 FF FF */ addi r0, r5, -1
|
|
/* 8034D938 0034A878 38 83 FF FF */ addi r4, r3, -1
|
|
/* 8034D93C 0034A87C A0 66 00 1A */ lhz r3, 0x1a(r6)
|
|
/* 8034D940 0034A880 54 05 08 3C */ slwi r5, r0, 1
|
|
/* 8034D944 0034A884 A0 06 00 18 */ lhz r0, 0x18(r6)
|
|
/* 8034D948 0034A888 7C 64 1B 96 */ divwu r3, r4, r3
|
|
/* 8034D94C 0034A88C 7C 65 1A 14 */ add r3, r5, r3
|
|
/* 8034D950 0034A890 7C 03 00 40 */ cmplw r3, r0
|
|
/* 8034D954 0034A894 40 80 00 0C */ bge lbl_8034D960
|
|
/* 8034D958 0034A898 38 60 00 01 */ li r3, 1
|
|
/* 8034D95C 0034A89C 4E 80 00 20 */ blr
|
|
lbl_8034D960:
|
|
/* 8034D960 0034A8A0 38 60 00 00 */ li r3, 0
|
|
/* 8034D964 0034A8A4 4E 80 00 20 */ blr
|
|
/* 8034D968 0034A8A8 7C 08 02 A6 */ mflr r0
|
|
/* 8034D96C 0034A8AC 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 8034D970 0034A8B0 94 21 FF D8 */ stwu r1, -0x28(r1)
|
|
/* 8034D974 0034A8B4 93 E1 00 24 */ stw r31, 0x24(r1)
|
|
/* 8034D978 0034A8B8 93 C1 00 20 */ stw r30, 0x20(r1)
|
|
/* 8034D97C 0034A8BC 4B FE FD 79 */ bl __RAS_OSDisableInterrupts_begin
|
|
/* 8034D980 0034A8C0 3B C3 00 00 */ addi r30, r3, 0
|
|
/* 8034D984 0034A8C4 38 61 00 10 */ addi r3, r1, 0x10
|
|
/* 8034D988 0034A8C8 38 81 00 14 */ addi r4, r1, 0x14
|
|
/* 8034D98C 0034A8CC 4B FF FF 39 */ bl GetCurrentDisplayPosition
|
|
/* 8034D990 0034A8D0 80 AD 92 A8 */ lwz r5, lbl_80451828-_SDA_BASE_(r13)
|
|
/* 8034D994 0034A8D4 80 61 00 10 */ lwz r3, 0x10(r1)
|
|
/* 8034D998 0034A8D8 A0 05 00 1A */ lhz r0, 0x1a(r5)
|
|
/* 8034D99C 0034A8DC 38 63 FF FF */ addi r3, r3, -1
|
|
/* 8034D9A0 0034A8E0 80 81 00 14 */ lwz r4, 0x14(r1)
|
|
/* 8034D9A4 0034A8E4 7C 63 03 96 */ divwu r3, r3, r0
|
|
/* 8034D9A8 0034A8E8 A0 05 00 18 */ lhz r0, 0x18(r5)
|
|
/* 8034D9AC 0034A8EC 38 84 FF FF */ addi r4, r4, -1
|
|
/* 8034D9B0 0034A8F0 54 84 08 3C */ slwi r4, r4, 1
|
|
/* 8034D9B4 0034A8F4 7C 64 1A 14 */ add r3, r4, r3
|
|
/* 8034D9B8 0034A8F8 7C 03 00 40 */ cmplw r3, r0
|
|
/* 8034D9BC 0034A8FC 40 80 00 0C */ bge lbl_8034D9C8
|
|
/* 8034D9C0 0034A900 3B E0 00 01 */ li r31, 1
|
|
/* 8034D9C4 0034A904 48 00 00 08 */ b lbl_8034D9CC
|
|
lbl_8034D9C8:
|
|
/* 8034D9C8 0034A908 3B E0 00 00 */ li r31, 0
|
|
lbl_8034D9CC:
|
|
/* 8034D9CC 0034A90C 7F C3 F3 78 */ mr r3, r30
|
|
/* 8034D9D0 0034A910 4B FE FD 4D */ bl OSRestoreInterrupts
|
|
/* 8034D9D4 0034A914 3C 60 80 45 */ lis r3, lbl_8044CB18@ha
|
|
/* 8034D9D8 0034A918 38 63 CB 18 */ addi r3, r3, lbl_8044CB18@l
|
|
/* 8034D9DC 0034A91C A0 03 00 0A */ lhz r0, 0xa(r3)
|
|
/* 8034D9E0 0034A920 6B E3 00 01 */ xori r3, r31, 1
|
|
/* 8034D9E4 0034A924 54 00 07 FE */ clrlwi r0, r0, 0x1f
|
|
/* 8034D9E8 0034A928 7C 63 02 78 */ xor r3, r3, r0
|
|
/* 8034D9EC 0034A92C 80 01 00 2C */ lwz r0, 0x2c(r1)
|
|
/* 8034D9F0 0034A930 83 E1 00 24 */ lwz r31, 0x24(r1)
|
|
/* 8034D9F4 0034A934 83 C1 00 20 */ lwz r30, 0x20(r1)
|
|
/* 8034D9F8 0034A938 38 21 00 28 */ addi r1, r1, 0x28
|
|
/* 8034D9FC 0034A93C 7C 08 03 A6 */ mtlr r0
|
|
/* 8034DA00 0034A940 4E 80 00 20 */ blr
|
|
|
|
.global VIGetCurrentLine
|
|
VIGetCurrentLine:
|
|
/* 8034DA04 0034A944 7C 08 02 A6 */ mflr r0
|
|
/* 8034DA08 0034A948 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 8034DA0C 0034A94C 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
/* 8034DA10 0034A950 93 E1 00 1C */ stw r31, 0x1c(r1)
|
|
/* 8034DA14 0034A954 93 C1 00 18 */ stw r30, 0x18(r1)
|
|
/* 8034DA18 0034A958 83 ED 92 A8 */ lwz r31, lbl_80451828-_SDA_BASE_(r13)
|
|
/* 8034DA1C 0034A95C 4B FE FC D9 */ bl __RAS_OSDisableInterrupts_begin
|
|
/* 8034DA20 0034A960 3C 80 CC 00 */ lis r4, 0xCC002000@ha
|
|
/* 8034DA24 0034A964 39 04 20 00 */ addi r8, r4, 0xCC002000@l
|
|
/* 8034DA28 0034A968 A4 08 00 2C */ lhzu r0, 0x2c(r8)
|
|
/* 8034DA2C 0034A96C 38 A4 20 00 */ addi r5, r4, 0x2000
|
|
/* 8034DA30 0034A970 54 06 05 7E */ clrlwi r6, r0, 0x15
|
|
lbl_8034DA34:
|
|
/* 8034DA34 0034A974 A0 08 00 00 */ lhz r0, 0(r8)
|
|
/* 8034DA38 0034A978 7C C7 33 78 */ mr r7, r6
|
|
/* 8034DA3C 0034A97C A0 85 00 2E */ lhz r4, 0x2e(r5)
|
|
/* 8034DA40 0034A980 54 06 05 7E */ clrlwi r6, r0, 0x15
|
|
/* 8034DA44 0034A984 7C 07 30 40 */ cmplw r7, r6
|
|
/* 8034DA48 0034A988 54 87 05 7E */ clrlwi r7, r4, 0x15
|
|
/* 8034DA4C 0034A98C 40 82 FF E8 */ bne lbl_8034DA34
|
|
/* 8034DA50 0034A990 80 8D 92 A8 */ lwz r4, lbl_80451828-_SDA_BASE_(r13)
|
|
/* 8034DA54 0034A994 38 A7 FF FF */ addi r5, r7, -1
|
|
/* 8034DA58 0034A998 38 C6 FF FF */ addi r6, r6, -1
|
|
/* 8034DA5C 0034A99C A0 04 00 1A */ lhz r0, 0x1a(r4)
|
|
/* 8034DA60 0034A9A0 54 C4 08 3C */ slwi r4, r6, 1
|
|
/* 8034DA64 0034A9A4 7C 05 03 96 */ divwu r0, r5, r0
|
|
/* 8034DA68 0034A9A8 7F C4 02 14 */ add r30, r4, r0
|
|
/* 8034DA6C 0034A9AC 4B FE FC B1 */ bl OSRestoreInterrupts
|
|
/* 8034DA70 0034A9B0 A0 1F 00 18 */ lhz r0, 0x18(r31)
|
|
/* 8034DA74 0034A9B4 7C 1E 00 40 */ cmplw r30, r0
|
|
/* 8034DA78 0034A9B8 41 80 00 08 */ blt lbl_8034DA80
|
|
/* 8034DA7C 0034A9BC 7F C0 F0 50 */ subf r30, r0, r30
|
|
lbl_8034DA80:
|
|
/* 8034DA80 0034A9C0 57 C3 F8 7E */ srwi r3, r30, 1
|
|
/* 8034DA84 0034A9C4 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
/* 8034DA88 0034A9C8 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
|
/* 8034DA8C 0034A9CC 83 C1 00 18 */ lwz r30, 0x18(r1)
|
|
/* 8034DA90 0034A9D0 38 21 00 20 */ addi r1, r1, 0x20
|
|
/* 8034DA94 0034A9D4 7C 08 03 A6 */ mtlr r0
|
|
/* 8034DA98 0034A9D8 4E 80 00 20 */ blr
|
|
|
|
.global VIGetTvFormat
|
|
VIGetTvFormat:
|
|
/* 8034DA9C 0034A9DC 7C 08 02 A6 */ mflr r0
|
|
/* 8034DAA0 0034A9E0 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 8034DAA4 0034A9E4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 8034DAA8 0034A9E8 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 8034DAAC 0034A9EC 4B FE FC 49 */ bl __RAS_OSDisableInterrupts_begin
|
|
/* 8034DAB0 0034A9F0 80 AD 92 AC */ lwz r5, lbl_8045182C-_SDA_BASE_(r13)
|
|
/* 8034DAB4 0034A9F4 28 05 00 07 */ cmplwi r5, 7
|
|
/* 8034DAB8 0034A9F8 41 81 00 30 */ bgt lbl_8034DAE8
|
|
/* 8034DABC 0034A9FC 3C 80 80 3D */ lis r4, lbl_803D1B24@ha
|
|
/* 8034DAC0 0034AA00 38 84 1B 24 */ addi r4, r4, lbl_803D1B24@l
|
|
/* 8034DAC4 0034AA04 54 A0 10 3A */ slwi r0, r5, 2
|
|
/* 8034DAC8 0034AA08 7C 04 00 2E */ lwzx r0, r4, r0
|
|
/* 8034DACC 0034AA0C 7C 09 03 A6 */ mtctr r0
|
|
/* 8034DAD0 0034AA10 4E 80 04 20 */ bctr
|
|
/* 8034DAD4 0034AA14 3B E0 00 00 */ li r31, 0
|
|
/* 8034DAD8 0034AA18 48 00 00 10 */ b lbl_8034DAE8
|
|
/* 8034DADC 0034AA1C 3B E0 00 01 */ li r31, 1
|
|
/* 8034DAE0 0034AA20 48 00 00 08 */ b lbl_8034DAE8
|
|
/* 8034DAE4 0034AA24 7C BF 2B 78 */ mr r31, r5
|
|
lbl_8034DAE8:
|
|
/* 8034DAE8 0034AA28 4B FE FC 35 */ bl OSRestoreInterrupts
|
|
/* 8034DAEC 0034AA2C 7F E3 FB 78 */ mr r3, r31
|
|
/* 8034DAF0 0034AA30 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 8034DAF4 0034AA34 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 8034DAF8 0034AA38 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 8034DAFC 0034AA3C 7C 08 03 A6 */ mtlr r0
|
|
/* 8034DB00 0034AA40 4E 80 00 20 */ blr
|
|
|
|
.global VIGetDTVStatus
|
|
VIGetDTVStatus:
|
|
/* 8034DB04 0034AA44 7C 08 02 A6 */ mflr r0
|
|
/* 8034DB08 0034AA48 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 8034DB0C 0034AA4C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 8034DB10 0034AA50 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 8034DB14 0034AA54 4B FE FB E1 */ bl __RAS_OSDisableInterrupts_begin
|
|
/* 8034DB18 0034AA58 3C 80 CC 00 */ lis r4, 0xCC00206E@ha
|
|
/* 8034DB1C 0034AA5C A0 04 20 6E */ lhz r0, 0xCC00206E@l(r4)
|
|
/* 8034DB20 0034AA60 54 1F 07 BE */ clrlwi r31, r0, 0x1e
|
|
/* 8034DB24 0034AA64 4B FE FB F9 */ bl OSRestoreInterrupts
|
|
/* 8034DB28 0034AA68 57 E3 07 FE */ clrlwi r3, r31, 0x1f
|
|
/* 8034DB2C 0034AA6C 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 8034DB30 0034AA70 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 8034DB34 0034AA74 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 8034DB38 0034AA78 7C 08 03 A6 */ mtlr r0
|
|
/* 8034DB3C 0034AA7C 4E 80 00 20 */ blr
|
|
|
|
.global __VIDisplayPositionToXY
|
|
__VIDisplayPositionToXY:
|
|
/* 8034DB40 0034AA80 81 2D 92 A8 */ lwz r9, lbl_80451828-_SDA_BASE_(r13)
|
|
/* 8034DB44 0034AA84 3C E0 80 45 */ lis r7, lbl_8044CB18@ha
|
|
/* 8034DB48 0034AA88 38 E7 CB 18 */ addi r7, r7, lbl_8044CB18@l
|
|
/* 8034DB4C 0034AA8C A0 09 00 1A */ lhz r0, 0x1a(r9)
|
|
/* 8034DB50 0034AA90 39 03 FF FF */ addi r8, r3, -1
|
|
/* 8034DB54 0034AA94 80 E7 00 24 */ lwz r7, 0x24(r7)
|
|
/* 8034DB58 0034AA98 38 84 FF FF */ addi r4, r4, -1
|
|
/* 8034DB5C 0034AA9C 7C 08 03 96 */ divwu r0, r8, r0
|
|
/* 8034DB60 0034AAA0 54 84 08 3C */ slwi r4, r4, 1
|
|
/* 8034DB64 0034AAA4 28 07 00 00 */ cmplwi r7, 0
|
|
/* 8034DB68 0034AAA8 7C 04 02 14 */ add r0, r4, r0
|
|
/* 8034DB6C 0034AAAC 40 82 00 C0 */ bne lbl_8034DC2C
|
|
/* 8034DB70 0034AAB0 A1 49 00 18 */ lhz r10, 0x18(r9)
|
|
/* 8034DB74 0034AAB4 7C 00 50 40 */ cmplw r0, r10
|
|
/* 8034DB78 0034AAB8 40 80 00 58 */ bge lbl_8034DBD0
|
|
/* 8034DB7C 0034AABC 88 89 00 00 */ lbz r4, 0(r9)
|
|
/* 8034DB80 0034AAC0 A1 09 00 04 */ lhz r8, 4(r9)
|
|
/* 8034DB84 0034AAC4 1C E4 00 03 */ mulli r7, r4, 3
|
|
/* 8034DB88 0034AAC8 7C 88 3A 14 */ add r4, r8, r7
|
|
/* 8034DB8C 0034AACC 7C 00 20 40 */ cmplw r0, r4
|
|
/* 8034DB90 0034AAD0 40 80 00 10 */ bge lbl_8034DBA0
|
|
/* 8034DB94 0034AAD4 38 00 FF FF */ li r0, -1
|
|
/* 8034DB98 0034AAD8 B0 06 00 00 */ sth r0, 0(r6)
|
|
/* 8034DB9C 0034AADC 48 00 01 B4 */ b lbl_8034DD50
|
|
lbl_8034DBA0:
|
|
/* 8034DBA0 0034AAE0 A0 89 00 08 */ lhz r4, 8(r9)
|
|
/* 8034DBA4 0034AAE4 7C 84 50 50 */ subf r4, r4, r10
|
|
/* 8034DBA8 0034AAE8 7C 00 20 40 */ cmplw r0, r4
|
|
/* 8034DBAC 0034AAEC 41 80 00 10 */ blt lbl_8034DBBC
|
|
/* 8034DBB0 0034AAF0 38 00 FF FF */ li r0, -1
|
|
/* 8034DBB4 0034AAF4 B0 06 00 00 */ sth r0, 0(r6)
|
|
/* 8034DBB8 0034AAF8 48 00 01 98 */ b lbl_8034DD50
|
|
lbl_8034DBBC:
|
|
/* 8034DBBC 0034AAFC 7C 07 00 50 */ subf r0, r7, r0
|
|
/* 8034DBC0 0034AB00 7C 08 00 50 */ subf r0, r8, r0
|
|
/* 8034DBC4 0034AB04 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e
|
|
/* 8034DBC8 0034AB08 B0 06 00 00 */ sth r0, 0(r6)
|
|
/* 8034DBCC 0034AB0C 48 00 01 84 */ b lbl_8034DD50
|
|
lbl_8034DBD0:
|
|
/* 8034DBD0 0034AB10 88 89 00 00 */ lbz r4, 0(r9)
|
|
/* 8034DBD4 0034AB14 7C 0A 00 50 */ subf r0, r10, r0
|
|
/* 8034DBD8 0034AB18 A1 09 00 06 */ lhz r8, 6(r9)
|
|
/* 8034DBDC 0034AB1C 1C E4 00 03 */ mulli r7, r4, 3
|
|
/* 8034DBE0 0034AB20 7C 88 3A 14 */ add r4, r8, r7
|
|
/* 8034DBE4 0034AB24 7C 00 20 40 */ cmplw r0, r4
|
|
/* 8034DBE8 0034AB28 40 80 00 10 */ bge lbl_8034DBF8
|
|
/* 8034DBEC 0034AB2C 38 00 FF FF */ li r0, -1
|
|
/* 8034DBF0 0034AB30 B0 06 00 00 */ sth r0, 0(r6)
|
|
/* 8034DBF4 0034AB34 48 00 01 5C */ b lbl_8034DD50
|
|
lbl_8034DBF8:
|
|
/* 8034DBF8 0034AB38 A0 89 00 0A */ lhz r4, 0xa(r9)
|
|
/* 8034DBFC 0034AB3C 7C 84 50 50 */ subf r4, r4, r10
|
|
/* 8034DC00 0034AB40 7C 00 20 40 */ cmplw r0, r4
|
|
/* 8034DC04 0034AB44 41 80 00 10 */ blt lbl_8034DC14
|
|
/* 8034DC08 0034AB48 38 00 FF FF */ li r0, -1
|
|
/* 8034DC0C 0034AB4C B0 06 00 00 */ sth r0, 0(r6)
|
|
/* 8034DC10 0034AB50 48 00 01 40 */ b lbl_8034DD50
|
|
lbl_8034DC14:
|
|
/* 8034DC14 0034AB54 7C 07 00 50 */ subf r0, r7, r0
|
|
/* 8034DC18 0034AB58 7C 08 00 50 */ subf r0, r8, r0
|
|
/* 8034DC1C 0034AB5C 54 04 00 3C */ rlwinm r4, r0, 0, 0, 0x1e
|
|
/* 8034DC20 0034AB60 38 04 00 01 */ addi r0, r4, 1
|
|
/* 8034DC24 0034AB64 B0 06 00 00 */ sth r0, 0(r6)
|
|
/* 8034DC28 0034AB68 48 00 01 28 */ b lbl_8034DD50
|
|
lbl_8034DC2C:
|
|
/* 8034DC2C 0034AB6C 28 07 00 01 */ cmplwi r7, 1
|
|
/* 8034DC30 0034AB70 40 82 00 68 */ bne lbl_8034DC98
|
|
/* 8034DC34 0034AB74 A0 E9 00 18 */ lhz r7, 0x18(r9)
|
|
/* 8034DC38 0034AB78 7C 00 38 40 */ cmplw r0, r7
|
|
/* 8034DC3C 0034AB7C 41 80 00 08 */ blt lbl_8034DC44
|
|
/* 8034DC40 0034AB80 7C 07 00 50 */ subf r0, r7, r0
|
|
lbl_8034DC44:
|
|
/* 8034DC44 0034AB84 88 89 00 00 */ lbz r4, 0(r9)
|
|
/* 8034DC48 0034AB88 A1 49 00 04 */ lhz r10, 4(r9)
|
|
/* 8034DC4C 0034AB8C 1D 04 00 03 */ mulli r8, r4, 3
|
|
/* 8034DC50 0034AB90 7C 8A 42 14 */ add r4, r10, r8
|
|
/* 8034DC54 0034AB94 7C 00 20 40 */ cmplw r0, r4
|
|
/* 8034DC58 0034AB98 40 80 00 10 */ bge lbl_8034DC68
|
|
/* 8034DC5C 0034AB9C 38 00 FF FF */ li r0, -1
|
|
/* 8034DC60 0034ABA0 B0 06 00 00 */ sth r0, 0(r6)
|
|
/* 8034DC64 0034ABA4 48 00 00 EC */ b lbl_8034DD50
|
|
lbl_8034DC68:
|
|
/* 8034DC68 0034ABA8 A0 89 00 08 */ lhz r4, 8(r9)
|
|
/* 8034DC6C 0034ABAC 7C 84 38 50 */ subf r4, r4, r7
|
|
/* 8034DC70 0034ABB0 7C 00 20 40 */ cmplw r0, r4
|
|
/* 8034DC74 0034ABB4 41 80 00 10 */ blt lbl_8034DC84
|
|
/* 8034DC78 0034ABB8 38 00 FF FF */ li r0, -1
|
|
/* 8034DC7C 0034ABBC B0 06 00 00 */ sth r0, 0(r6)
|
|
/* 8034DC80 0034ABC0 48 00 00 D0 */ b lbl_8034DD50
|
|
lbl_8034DC84:
|
|
/* 8034DC84 0034ABC4 7C 08 00 50 */ subf r0, r8, r0
|
|
/* 8034DC88 0034ABC8 7C 0A 00 50 */ subf r0, r10, r0
|
|
/* 8034DC8C 0034ABCC 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e
|
|
/* 8034DC90 0034ABD0 B0 06 00 00 */ sth r0, 0(r6)
|
|
/* 8034DC94 0034ABD4 48 00 00 BC */ b lbl_8034DD50
|
|
lbl_8034DC98:
|
|
/* 8034DC98 0034ABD8 28 07 00 02 */ cmplwi r7, 2
|
|
/* 8034DC9C 0034ABDC 40 82 00 B4 */ bne lbl_8034DD50
|
|
/* 8034DCA0 0034ABE0 A1 49 00 18 */ lhz r10, 0x18(r9)
|
|
/* 8034DCA4 0034ABE4 7C 00 50 40 */ cmplw r0, r10
|
|
/* 8034DCA8 0034ABE8 40 80 00 54 */ bge lbl_8034DCFC
|
|
/* 8034DCAC 0034ABEC 88 89 00 00 */ lbz r4, 0(r9)
|
|
/* 8034DCB0 0034ABF0 A1 09 00 04 */ lhz r8, 4(r9)
|
|
/* 8034DCB4 0034ABF4 1C E4 00 03 */ mulli r7, r4, 3
|
|
/* 8034DCB8 0034ABF8 7C 88 3A 14 */ add r4, r8, r7
|
|
/* 8034DCBC 0034ABFC 7C 00 20 40 */ cmplw r0, r4
|
|
/* 8034DCC0 0034AC00 40 80 00 10 */ bge lbl_8034DCD0
|
|
/* 8034DCC4 0034AC04 38 00 FF FF */ li r0, -1
|
|
/* 8034DCC8 0034AC08 B0 06 00 00 */ sth r0, 0(r6)
|
|
/* 8034DCCC 0034AC0C 48 00 00 84 */ b lbl_8034DD50
|
|
lbl_8034DCD0:
|
|
/* 8034DCD0 0034AC10 A0 89 00 08 */ lhz r4, 8(r9)
|
|
/* 8034DCD4 0034AC14 7C 84 50 50 */ subf r4, r4, r10
|
|
/* 8034DCD8 0034AC18 7C 00 20 40 */ cmplw r0, r4
|
|
/* 8034DCDC 0034AC1C 41 80 00 10 */ blt lbl_8034DCEC
|
|
/* 8034DCE0 0034AC20 38 00 FF FF */ li r0, -1
|
|
/* 8034DCE4 0034AC24 B0 06 00 00 */ sth r0, 0(r6)
|
|
/* 8034DCE8 0034AC28 48 00 00 68 */ b lbl_8034DD50
|
|
lbl_8034DCEC:
|
|
/* 8034DCEC 0034AC2C 7C 07 00 50 */ subf r0, r7, r0
|
|
/* 8034DCF0 0034AC30 7C 08 00 50 */ subf r0, r8, r0
|
|
/* 8034DCF4 0034AC34 B0 06 00 00 */ sth r0, 0(r6)
|
|
/* 8034DCF8 0034AC38 48 00 00 58 */ b lbl_8034DD50
|
|
lbl_8034DCFC:
|
|
/* 8034DCFC 0034AC3C 88 89 00 00 */ lbz r4, 0(r9)
|
|
/* 8034DD00 0034AC40 7C 0A 00 50 */ subf r0, r10, r0
|
|
/* 8034DD04 0034AC44 A1 09 00 06 */ lhz r8, 6(r9)
|
|
/* 8034DD08 0034AC48 1C E4 00 03 */ mulli r7, r4, 3
|
|
/* 8034DD0C 0034AC4C 7C 88 3A 14 */ add r4, r8, r7
|
|
/* 8034DD10 0034AC50 7C 00 20 40 */ cmplw r0, r4
|
|
/* 8034DD14 0034AC54 40 80 00 10 */ bge lbl_8034DD24
|
|
/* 8034DD18 0034AC58 38 00 FF FF */ li r0, -1
|
|
/* 8034DD1C 0034AC5C B0 06 00 00 */ sth r0, 0(r6)
|
|
/* 8034DD20 0034AC60 48 00 00 30 */ b lbl_8034DD50
|
|
lbl_8034DD24:
|
|
/* 8034DD24 0034AC64 A0 89 00 0A */ lhz r4, 0xa(r9)
|
|
/* 8034DD28 0034AC68 7C 84 50 50 */ subf r4, r4, r10
|
|
/* 8034DD2C 0034AC6C 7C 00 20 40 */ cmplw r0, r4
|
|
/* 8034DD30 0034AC70 41 80 00 10 */ blt lbl_8034DD40
|
|
/* 8034DD34 0034AC74 38 00 FF FF */ li r0, -1
|
|
/* 8034DD38 0034AC78 B0 06 00 00 */ sth r0, 0(r6)
|
|
/* 8034DD3C 0034AC7C 48 00 00 14 */ b lbl_8034DD50
|
|
lbl_8034DD40:
|
|
/* 8034DD40 0034AC80 7C 07 00 50 */ subf r0, r7, r0
|
|
/* 8034DD44 0034AC84 7C 08 00 50 */ subf r0, r8, r0
|
|
/* 8034DD48 0034AC88 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e
|
|
/* 8034DD4C 0034AC8C B0 06 00 00 */ sth r0, 0(r6)
|
|
lbl_8034DD50:
|
|
/* 8034DD50 0034AC90 38 03 FF FF */ addi r0, r3, -1
|
|
/* 8034DD54 0034AC94 B0 05 00 00 */ sth r0, 0(r5)
|
|
/* 8034DD58 0034AC98 4E 80 00 20 */ blr
|
|
|
|
.global __VIGetCurrentPosition
|
|
__VIGetCurrentPosition:
|
|
/* 8034DD5C 0034AC9C 7C 08 02 A6 */ mflr r0
|
|
/* 8034DD60 0034ACA0 3C E0 CC 00 */ lis r7, 0xCC002000@ha
|
|
/* 8034DD64 0034ACA4 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 8034DD68 0034ACA8 38 C4 00 00 */ addi r6, r4, 0
|
|
/* 8034DD6C 0034ACAC 39 27 20 00 */ addi r9, r7, 0xCC002000@l
|
|
/* 8034DD70 0034ACB0 94 21 FF F8 */ stwu r1, -8(r1)
|
|
/* 8034DD74 0034ACB4 38 A3 00 00 */ addi r5, r3, 0
|
|
/* 8034DD78 0034ACB8 38 87 20 00 */ addi r4, r7, 0x2000
|
|
/* 8034DD7C 0034ACBC A4 09 00 2C */ lhzu r0, 0x2c(r9)
|
|
/* 8034DD80 0034ACC0 54 08 05 7E */ clrlwi r8, r0, 0x15
|
|
lbl_8034DD84:
|
|
/* 8034DD84 0034ACC4 A0 09 00 00 */ lhz r0, 0(r9)
|
|
/* 8034DD88 0034ACC8 7D 07 43 78 */ mr r7, r8
|
|
/* 8034DD8C 0034ACCC A0 64 00 2E */ lhz r3, 0x2e(r4)
|
|
/* 8034DD90 0034ACD0 54 08 05 7E */ clrlwi r8, r0, 0x15
|
|
/* 8034DD94 0034ACD4 7C 07 40 40 */ cmplw r7, r8
|
|
/* 8034DD98 0034ACD8 54 60 05 7E */ clrlwi r0, r3, 0x15
|
|
/* 8034DD9C 0034ACDC 40 82 FF E8 */ bne lbl_8034DD84
|
|
/* 8034DDA0 0034ACE0 7C 03 03 78 */ mr r3, r0
|
|
/* 8034DDA4 0034ACE4 38 88 00 00 */ addi r4, r8, 0
|
|
/* 8034DDA8 0034ACE8 4B FF FD 99 */ bl __VIDisplayPositionToXY
|
|
/* 8034DDAC 0034ACEC 80 01 00 0C */ lwz r0, 0xc(r1)
|
|
/* 8034DDB0 0034ACF0 38 21 00 08 */ addi r1, r1, 8
|
|
/* 8034DDB4 0034ACF4 7C 08 03 A6 */ mtlr r0
|
|
/* 8034DDB8 0034ACF8 4E 80 00 20 */ blr
|
|
|