donut-decomp/asm/libMobiclip/VX2_DecodeBlock8x16.s

965 lines
48 KiB
ArmAsm
Raw Normal View History

2022-10-16 16:05:58 +00:00
.include "macros.inc"
.section .text, "ax" # 0x80006A00 - 0x80406260 ; 0x003FF860
2022-10-16 16:31:36 +00:00
.global VX2CommandSkip18x16__FR14VX2DecoderData
VX2CommandSkip18x16__FR14VX2DecoderData:
2022-10-16 16:05:58 +00:00
/* 8015E040 00159E80 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8015E044 00159E84 7C 08 02 A6 */ mflr r0
/* 8015E048 00159E88 90 01 00 14 */ stw r0, 0x14(r1)
/* 8015E04C 00159E8C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8015E050 00159E90 93 C1 00 08 */ stw r30, 0x8(r1)
/* 8015E054 00159E94 7C 7E 1B 78 */ mr r30, r3
/* 8015E058 00159E98 81 43 08 B4 */ lwz r10, 0x8b4(r3)
/* 8015E05C 00159E9C A8 E3 0A 24 */ lha r7, 0xa24(r3)
/* 8015E060 00159EA0 A9 23 0A 26 */ lha r9, 0xa26(r3)
/* 8015E064 00159EA4 55 40 08 3C */ slwi r0, r10, 1
/* 8015E068 00159EA8 7F E7 02 14 */ add r31, r7, r0
/* 8015E06C 00159EAC 7C E8 0E 70 */ srawi r8, r7, 1
/* 8015E070 00159EB0 80 A3 00 00 */ lwz r5, 0x0(r3)
/* 8015E074 00159EB4 7D 26 0E 70 */ srawi r6, r9, 1
/* 8015E078 00159EB8 57 E4 07 7E */ clrlwi r4, r31, 29
/* 8015E07C 00159EBC 55 20 1F 38 */ rlwinm r0, r9, 3, 28, 28
/* 8015E080 00159EC0 7C 04 02 14 */ add r0, r4, r0
/* 8015E084 00159EC4 80 83 00 6C */ lwz r4, 0x6c(r3)
/* 8015E088 00159EC8 B0 E3 0A 20 */ sth r7, 0xa20(r3)
/* 8015E08C 00159ECC 7C C6 29 D6 */ mullw r6, r6, r5
/* 8015E090 00159ED0 7C E4 52 14 */ add r7, r4, r10
/* 8015E094 00159ED4 80 83 00 68 */ lwz r4, 0x68(r3)
/* 8015E098 00159ED8 54 00 10 3A */ slwi r0, r0, 2
/* 8015E09C 00159EDC B1 23 0A 22 */ sth r9, 0xa22(r3)
/* 8015E0A0 00159EE0 7C 84 52 14 */ add r4, r4, r10
/* 8015E0A4 00159EE4 7C 7E 02 14 */ add r3, r30, r0
/* 8015E0A8 00159EE8 7C 08 3A 14 */ add r0, r8, r7
/* 8015E0AC 00159EEC 81 83 0B A8 */ lwz r12, 0xba8(r3)
/* 8015E0B0 00159EF0 7C 66 02 14 */ add r3, r6, r0
/* 8015E0B4 00159EF4 7D 89 03 A6 */ mtctr r12
/* 8015E0B8 00159EF8 4E 80 04 21 */ bctrl
/* 8015E0BC 00159EFC 80 7E 00 00 */ lwz r3, 0x0(r30)
/* 8015E0C0 00159F00 57 E4 FF 7E */ extrwi r4, r31, 3, 28
/* 8015E0C4 00159F04 A8 1E 0A 20 */ lha r0, 0xa20(r30)
/* 8015E0C8 00159F08 7C 65 0E 70 */ srawi r5, r3, 1
/* 8015E0CC 00159F0C A8 7E 0A 22 */ lha r3, 0xa22(r30)
/* 8015E0D0 00159F10 7C 07 16 70 */ srawi r7, r0, 2
/* 8015E0D4 00159F14 81 1E 08 B8 */ lwz r8, 0x8b8(r30)
/* 8015E0D8 00159F18 54 60 17 38 */ rlwinm r0, r3, 2, 28, 28
/* 8015E0DC 00159F1C 7C 63 16 70 */ srawi r3, r3, 2
/* 8015E0E0 00159F20 7C 04 02 14 */ add r0, r4, r0
/* 8015E0E4 00159F24 80 9E 00 84 */ lwz r4, 0x84(r30)
/* 8015E0E8 00159F28 54 06 10 3A */ slwi r6, r0, 2
/* 8015E0EC 00159F2C 80 1E 00 80 */ lwz r0, 0x80(r30)
/* 8015E0F0 00159F30 7F FE 32 14 */ add r31, r30, r6
/* 8015E0F4 00159F34 7C 84 42 14 */ add r4, r4, r8
/* 8015E0F8 00159F38 7C C3 29 D6 */ mullw r6, r3, r5
/* 8015E0FC 00159F3C 81 9F 0D 28 */ lwz r12, 0xd28(r31)
/* 8015E100 00159F40 7C 67 22 14 */ add r3, r7, r4
/* 8015E104 00159F44 7C 80 42 14 */ add r4, r0, r8
/* 8015E108 00159F48 7C 66 1A 14 */ add r3, r6, r3
/* 8015E10C 00159F4C 7D 89 03 A6 */ mtctr r12
/* 8015E110 00159F50 4E 80 04 21 */ bctrl
/* 8015E114 00159F54 80 1E 00 00 */ lwz r0, 0x0(r30)
/* 8015E118 00159F58 A8 7E 0A 20 */ lha r3, 0xa20(r30)
/* 8015E11C 00159F5C 7C 05 0E 70 */ srawi r5, r0, 1
/* 8015E120 00159F60 A8 1E 0A 22 */ lha r0, 0xa22(r30)
/* 8015E124 00159F64 7C 66 16 70 */ srawi r6, r3, 2
/* 8015E128 00159F68 80 FE 08 B8 */ lwz r7, 0x8b8(r30)
/* 8015E12C 00159F6C 7C 00 16 70 */ srawi r0, r0, 2
/* 8015E130 00159F70 80 7E 00 9C */ lwz r3, 0x9c(r30)
/* 8015E134 00159F74 7C 80 29 D6 */ mullw r4, r0, r5
/* 8015E138 00159F78 80 1E 00 98 */ lwz r0, 0x98(r30)
/* 8015E13C 00159F7C 7C 63 3A 14 */ add r3, r3, r7
/* 8015E140 00159F80 81 9F 0D 28 */ lwz r12, 0xd28(r31)
/* 8015E144 00159F84 7C 66 1A 14 */ add r3, r6, r3
/* 8015E148 00159F88 7C 64 1A 14 */ add r3, r4, r3
/* 8015E14C 00159F8C 7C 80 3A 14 */ add r4, r0, r7
/* 8015E150 00159F90 7D 89 03 A6 */ mtctr r12
/* 8015E154 00159F94 4E 80 04 21 */ bctrl
/* 8015E158 00159F98 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8015E15C 00159F9C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8015E160 00159FA0 83 C1 00 08 */ lwz r30, 0x8(r1)
/* 8015E164 00159FA4 7C 08 03 A6 */ mtlr r0
/* 8015E168 00159FA8 38 21 00 10 */ addi r1, r1, 0x10
/* 8015E16C 00159FAC 4E 80 00 20 */ blr
2022-10-16 16:31:36 +00:00
.global VX2CommandBack18x16__FR14VX2DecoderData
VX2CommandBack18x16__FR14VX2DecoderData:
2022-10-16 16:05:58 +00:00
/* 8015E170 00159FB0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8015E174 00159FB4 7C 08 02 A6 */ mflr r0
2022-10-16 16:31:36 +00:00
/* 8015E178 00159FB8 3C 80 80 45 */ lis r4, VX2GolombCodeSigned@ha
/* 8015E17C 00159FBC 3C A0 80 45 */ lis r5, VX2GolombCodeSignedSize@ha
2022-10-16 16:05:58 +00:00
/* 8015E180 00159FC0 90 01 00 14 */ stw r0, 0x14(r1)
2022-10-16 16:31:36 +00:00
/* 8015E184 00159FC4 38 84 85 D8 */ addi r4, r4, VX2GolombCodeSigned@l
/* 8015E188 00159FC8 38 A5 05 D8 */ addi r5, r5, VX2GolombCodeSignedSize@l
2022-10-16 16:05:58 +00:00
/* 8015E18C 00159FCC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8015E190 00159FD0 93 C1 00 08 */ stw r30, 0x8(r1)
/* 8015E194 00159FD4 7C 7E 1B 78 */ mr r30, r3
/* 8015E198 00159FD8 81 03 0A 08 */ lwz r8, 0xa08(r3)
/* 8015E19C 00159FDC 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 8015E1A0 00159FE0 55 06 7C 7E */ srwi r6, r8, 17
/* 8015E1A4 00159FE4 7D 24 30 AE */ lbzx r9, r4, r6
/* 8015E1A8 00159FE8 7D 29 07 74 */ extsb r9, r9
/* 8015E1AC 00159FEC 55 24 10 3A */ slwi r4, r9, 2
/* 8015E1B0 00159FF0 7C 85 22 14 */ add r4, r5, r4
/* 8015E1B4 00159FF4 80 84 01 FC */ lwz r4, 0x1fc(r4)
/* 8015E1B8 00159FF8 7C E4 00 51 */ subf. r7, r4, r0
/* 8015E1BC 00159FFC 7D 08 20 30 */ slw r8, r8, r4
/* 8015E1C0 0015A000 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 8015E1C4 0015A004 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 8015E1C8 0015A008 40 80 00 2C */ bge lbl_8015E1F4
/* 8015E1CC 0015A00C 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 8015E1D0 0015A010 7C C0 26 2C */ lhbrx r6, r0, r4
/* 8015E1D4 0015A014 7C A7 00 D0 */ neg r5, r7
/* 8015E1D8 0015A018 38 84 00 02 */ addi r4, r4, 0x2
/* 8015E1DC 0015A01C 38 07 00 10 */ addi r0, r7, 0x10
/* 8015E1E0 0015A020 7C C5 28 30 */ slw r5, r6, r5
/* 8015E1E4 0015A024 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 8015E1E8 0015A028 7D 04 2B 78 */ or r4, r8, r5
/* 8015E1EC 0015A02C 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 8015E1F0 0015A030 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_8015E1F4
lbl_8015E1F4:
/* 8015E1F4 0015A034 A8 03 0A 24 */ lha r0, 0xa24(r3)
2022-10-16 16:31:36 +00:00
/* 8015E1F8 0015A038 3C 80 80 45 */ lis r4, VX2GolombCodeSigned@ha
2022-10-16 16:05:58 +00:00
/* 8015E1FC 0015A03C 80 C3 0A 08 */ lwz r6, 0xa08(r3)
2022-10-16 16:31:36 +00:00
/* 8015E200 0015A040 3C A0 80 45 */ lis r5, VX2GolombCodeSignedSize@ha
2022-10-16 16:05:58 +00:00
/* 8015E204 0015A044 7C 00 4A 14 */ add r0, r0, r9
/* 8015E208 0015A048 B0 03 0A 20 */ sth r0, 0xa20(r3)
/* 8015E20C 0015A04C 54 C0 7C 7E */ srwi r0, r6, 17
2022-10-16 16:31:36 +00:00
/* 8015E210 0015A050 38 84 85 D8 */ addi r4, r4, VX2GolombCodeSigned@l
2022-10-16 16:05:58 +00:00
/* 8015E214 0015A054 7D 24 00 AE */ lbzx r9, r4, r0
2022-10-16 16:31:36 +00:00
/* 8015E218 0015A058 38 A5 05 D8 */ addi r5, r5, VX2GolombCodeSignedSize@l
2022-10-16 16:05:58 +00:00
/* 8015E21C 0015A05C 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 8015E220 0015A060 7D 29 07 74 */ extsb r9, r9
/* 8015E224 0015A064 55 24 10 3A */ slwi r4, r9, 2
/* 8015E228 0015A068 7C 85 22 14 */ add r4, r5, r4
/* 8015E22C 0015A06C 80 84 01 FC */ lwz r4, 0x1fc(r4)
/* 8015E230 0015A070 7C E4 00 51 */ subf. r7, r4, r0
/* 8015E234 0015A074 7C C8 20 30 */ slw r8, r6, r4
/* 8015E238 0015A078 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 8015E23C 0015A07C 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 8015E240 0015A080 40 80 00 2C */ bge lbl_8015E26C
/* 8015E244 0015A084 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 8015E248 0015A088 7C C0 26 2C */ lhbrx r6, r0, r4
/* 8015E24C 0015A08C 7C A7 00 D0 */ neg r5, r7
/* 8015E250 0015A090 38 84 00 02 */ addi r4, r4, 0x2
/* 8015E254 0015A094 38 07 00 10 */ addi r0, r7, 0x10
/* 8015E258 0015A098 7C C5 28 30 */ slw r5, r6, r5
/* 8015E25C 0015A09C 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 8015E260 0015A0A0 7D 04 2B 78 */ or r4, r8, r5
/* 8015E264 0015A0A4 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 8015E268 0015A0A8 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_8015E26C
lbl_8015E26C:
/* 8015E26C 0015A0AC A8 03 0A 26 */ lha r0, 0xa26(r3)
/* 8015E270 0015A0B0 A8 83 0A 20 */ lha r4, 0xa20(r3)
/* 8015E274 0015A0B4 7D 20 4A 14 */ add r9, r0, r9
/* 8015E278 0015A0B8 81 43 08 B4 */ lwz r10, 0x8b4(r3)
/* 8015E27C 0015A0BC 80 A3 00 00 */ lwz r5, 0x0(r3)
/* 8015E280 0015A0C0 7D 26 07 34 */ extsh r6, r9
/* 8015E284 0015A0C4 55 40 08 3C */ slwi r0, r10, 1
/* 8015E288 0015A0C8 7C 88 0E 70 */ srawi r8, r4, 1
/* 8015E28C 0015A0CC 7F E4 02 14 */ add r31, r4, r0
/* 8015E290 0015A0D0 7C C6 0E 70 */ srawi r6, r6, 1
/* 8015E294 0015A0D4 80 E3 00 6C */ lwz r7, 0x6c(r3)
/* 8015E298 0015A0D8 55 20 1F 38 */ rlwinm r0, r9, 3, 28, 28
/* 8015E29C 0015A0DC 57 E4 07 7E */ clrlwi r4, r31, 29
/* 8015E2A0 0015A0E0 B1 23 0A 22 */ sth r9, 0xa22(r3)
/* 8015E2A4 0015A0E4 7C 04 02 14 */ add r0, r4, r0
/* 8015E2A8 0015A0E8 80 9E 00 68 */ lwz r4, 0x68(r30)
/* 8015E2AC 0015A0EC 54 00 10 3A */ slwi r0, r0, 2
/* 8015E2B0 0015A0F0 7C E7 52 14 */ add r7, r7, r10
/* 8015E2B4 0015A0F4 7C 7E 02 14 */ add r3, r30, r0
/* 8015E2B8 0015A0F8 7C 84 52 14 */ add r4, r4, r10
/* 8015E2BC 0015A0FC 7C C6 29 D6 */ mullw r6, r6, r5
/* 8015E2C0 0015A100 81 83 0B A8 */ lwz r12, 0xba8(r3)
/* 8015E2C4 0015A104 7C 08 3A 14 */ add r0, r8, r7
/* 8015E2C8 0015A108 7C 66 02 14 */ add r3, r6, r0
/* 8015E2CC 0015A10C 7D 89 03 A6 */ mtctr r12
/* 8015E2D0 0015A110 4E 80 04 21 */ bctrl
/* 8015E2D4 0015A114 80 7E 00 00 */ lwz r3, 0x0(r30)
/* 8015E2D8 0015A118 57 E4 FF 7E */ extrwi r4, r31, 3, 28
/* 8015E2DC 0015A11C A8 1E 0A 20 */ lha r0, 0xa20(r30)
/* 8015E2E0 0015A120 7C 65 0E 70 */ srawi r5, r3, 1
/* 8015E2E4 0015A124 A8 7E 0A 22 */ lha r3, 0xa22(r30)
/* 8015E2E8 0015A128 7C 07 16 70 */ srawi r7, r0, 2
/* 8015E2EC 0015A12C 81 1E 08 B8 */ lwz r8, 0x8b8(r30)
/* 8015E2F0 0015A130 54 60 17 38 */ rlwinm r0, r3, 2, 28, 28
/* 8015E2F4 0015A134 7C 63 16 70 */ srawi r3, r3, 2
/* 8015E2F8 0015A138 7C 04 02 14 */ add r0, r4, r0
/* 8015E2FC 0015A13C 80 9E 00 84 */ lwz r4, 0x84(r30)
/* 8015E300 0015A140 54 06 10 3A */ slwi r6, r0, 2
/* 8015E304 0015A144 80 1E 00 80 */ lwz r0, 0x80(r30)
/* 8015E308 0015A148 7F FE 32 14 */ add r31, r30, r6
/* 8015E30C 0015A14C 7C 84 42 14 */ add r4, r4, r8
/* 8015E310 0015A150 7C C3 29 D6 */ mullw r6, r3, r5
/* 8015E314 0015A154 81 9F 0D 28 */ lwz r12, 0xd28(r31)
/* 8015E318 0015A158 7C 67 22 14 */ add r3, r7, r4
/* 8015E31C 0015A15C 7C 80 42 14 */ add r4, r0, r8
/* 8015E320 0015A160 7C 66 1A 14 */ add r3, r6, r3
/* 8015E324 0015A164 7D 89 03 A6 */ mtctr r12
/* 8015E328 0015A168 4E 80 04 21 */ bctrl
/* 8015E32C 0015A16C 80 1E 00 00 */ lwz r0, 0x0(r30)
/* 8015E330 0015A170 A8 7E 0A 20 */ lha r3, 0xa20(r30)
/* 8015E334 0015A174 7C 05 0E 70 */ srawi r5, r0, 1
/* 8015E338 0015A178 A8 1E 0A 22 */ lha r0, 0xa22(r30)
/* 8015E33C 0015A17C 7C 66 16 70 */ srawi r6, r3, 2
/* 8015E340 0015A180 80 FE 08 B8 */ lwz r7, 0x8b8(r30)
/* 8015E344 0015A184 7C 00 16 70 */ srawi r0, r0, 2
/* 8015E348 0015A188 80 7E 00 9C */ lwz r3, 0x9c(r30)
/* 8015E34C 0015A18C 7C 80 29 D6 */ mullw r4, r0, r5
/* 8015E350 0015A190 80 1E 00 98 */ lwz r0, 0x98(r30)
/* 8015E354 0015A194 7C 63 3A 14 */ add r3, r3, r7
/* 8015E358 0015A198 81 9F 0D 28 */ lwz r12, 0xd28(r31)
/* 8015E35C 0015A19C 7C 66 1A 14 */ add r3, r6, r3
/* 8015E360 0015A1A0 7C 64 1A 14 */ add r3, r4, r3
/* 8015E364 0015A1A4 7C 80 3A 14 */ add r4, r0, r7
/* 8015E368 0015A1A8 7D 89 03 A6 */ mtctr r12
/* 8015E36C 0015A1AC 4E 80 04 21 */ bctrl
/* 8015E370 0015A1B0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8015E374 0015A1B4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8015E378 0015A1B8 83 C1 00 08 */ lwz r30, 0x8(r1)
/* 8015E37C 0015A1BC 7C 08 03 A6 */ mtlr r0
/* 8015E380 0015A1C0 38 21 00 10 */ addi r1, r1, 0x10
/* 8015E384 0015A1C4 4E 80 00 20 */ blr
/* 8015E388 0015A1C8 00 00 00 00 */ .4byte 0x00000000
/* 8015E38C 0015A1CC 00 00 00 00 */ .4byte 0x00000000
2022-10-16 16:31:36 +00:00
.global VX2CommandBack28x16__FR14VX2DecoderData
VX2CommandBack28x16__FR14VX2DecoderData:
2022-10-16 16:05:58 +00:00
/* 8015E390 0015A1D0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8015E394 0015A1D4 7C 08 02 A6 */ mflr r0
2022-10-16 16:31:36 +00:00
/* 8015E398 0015A1D8 3C 80 80 45 */ lis r4, VX2GolombCodeSigned@ha
/* 8015E39C 0015A1DC 3C A0 80 45 */ lis r5, VX2GolombCodeSignedSize@ha
2022-10-16 16:05:58 +00:00
/* 8015E3A0 0015A1E0 90 01 00 14 */ stw r0, 0x14(r1)
2022-10-16 16:31:36 +00:00
/* 8015E3A4 0015A1E4 38 84 85 D8 */ addi r4, r4, VX2GolombCodeSigned@l
/* 8015E3A8 0015A1E8 38 A5 05 D8 */ addi r5, r5, VX2GolombCodeSignedSize@l
2022-10-16 16:05:58 +00:00
/* 8015E3AC 0015A1EC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8015E3B0 0015A1F0 93 C1 00 08 */ stw r30, 0x8(r1)
/* 8015E3B4 0015A1F4 7C 7E 1B 78 */ mr r30, r3
/* 8015E3B8 0015A1F8 81 03 0A 08 */ lwz r8, 0xa08(r3)
/* 8015E3BC 0015A1FC 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 8015E3C0 0015A200 55 06 7C 7E */ srwi r6, r8, 17
/* 8015E3C4 0015A204 7D 24 30 AE */ lbzx r9, r4, r6
/* 8015E3C8 0015A208 7D 29 07 74 */ extsb r9, r9
/* 8015E3CC 0015A20C 55 24 10 3A */ slwi r4, r9, 2
/* 8015E3D0 0015A210 7C 85 22 14 */ add r4, r5, r4
/* 8015E3D4 0015A214 80 84 01 FC */ lwz r4, 0x1fc(r4)
/* 8015E3D8 0015A218 7C E4 00 51 */ subf. r7, r4, r0
/* 8015E3DC 0015A21C 7D 08 20 30 */ slw r8, r8, r4
/* 8015E3E0 0015A220 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 8015E3E4 0015A224 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 8015E3E8 0015A228 40 80 00 2C */ bge lbl_8015E414
/* 8015E3EC 0015A22C 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 8015E3F0 0015A230 7C C0 26 2C */ lhbrx r6, r0, r4
/* 8015E3F4 0015A234 7C A7 00 D0 */ neg r5, r7
/* 8015E3F8 0015A238 38 84 00 02 */ addi r4, r4, 0x2
/* 8015E3FC 0015A23C 38 07 00 10 */ addi r0, r7, 0x10
/* 8015E400 0015A240 7C C5 28 30 */ slw r5, r6, r5
/* 8015E404 0015A244 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 8015E408 0015A248 7D 04 2B 78 */ or r4, r8, r5
/* 8015E40C 0015A24C 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 8015E410 0015A250 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_8015E414
lbl_8015E414:
/* 8015E414 0015A254 A8 03 0A 24 */ lha r0, 0xa24(r3)
2022-10-16 16:31:36 +00:00
/* 8015E418 0015A258 3C 80 80 45 */ lis r4, VX2GolombCodeSigned@ha
2022-10-16 16:05:58 +00:00
/* 8015E41C 0015A25C 80 C3 0A 08 */ lwz r6, 0xa08(r3)
2022-10-16 16:31:36 +00:00
/* 8015E420 0015A260 3C A0 80 45 */ lis r5, VX2GolombCodeSignedSize@ha
2022-10-16 16:05:58 +00:00
/* 8015E424 0015A264 7C 00 4A 14 */ add r0, r0, r9
/* 8015E428 0015A268 B0 03 0A 20 */ sth r0, 0xa20(r3)
/* 8015E42C 0015A26C 54 C0 7C 7E */ srwi r0, r6, 17
2022-10-16 16:31:36 +00:00
/* 8015E430 0015A270 38 84 85 D8 */ addi r4, r4, VX2GolombCodeSigned@l
2022-10-16 16:05:58 +00:00
/* 8015E434 0015A274 7D 24 00 AE */ lbzx r9, r4, r0
2022-10-16 16:31:36 +00:00
/* 8015E438 0015A278 38 A5 05 D8 */ addi r5, r5, VX2GolombCodeSignedSize@l
2022-10-16 16:05:58 +00:00
/* 8015E43C 0015A27C 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 8015E440 0015A280 7D 29 07 74 */ extsb r9, r9
/* 8015E444 0015A284 55 24 10 3A */ slwi r4, r9, 2
/* 8015E448 0015A288 7C 85 22 14 */ add r4, r5, r4
/* 8015E44C 0015A28C 80 84 01 FC */ lwz r4, 0x1fc(r4)
/* 8015E450 0015A290 7C E4 00 51 */ subf. r7, r4, r0
/* 8015E454 0015A294 7C C8 20 30 */ slw r8, r6, r4
/* 8015E458 0015A298 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 8015E45C 0015A29C 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 8015E460 0015A2A0 40 80 00 2C */ bge lbl_8015E48C
/* 8015E464 0015A2A4 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 8015E468 0015A2A8 7C C0 26 2C */ lhbrx r6, r0, r4
/* 8015E46C 0015A2AC 7C A7 00 D0 */ neg r5, r7
/* 8015E470 0015A2B0 38 84 00 02 */ addi r4, r4, 0x2
/* 8015E474 0015A2B4 38 07 00 10 */ addi r0, r7, 0x10
/* 8015E478 0015A2B8 7C C5 28 30 */ slw r5, r6, r5
/* 8015E47C 0015A2BC 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 8015E480 0015A2C0 7D 04 2B 78 */ or r4, r8, r5
/* 8015E484 0015A2C4 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 8015E488 0015A2C8 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_8015E48C
lbl_8015E48C:
/* 8015E48C 0015A2CC A8 03 0A 26 */ lha r0, 0xa26(r3)
/* 8015E490 0015A2D0 A8 83 0A 20 */ lha r4, 0xa20(r3)
/* 8015E494 0015A2D4 7D 20 4A 14 */ add r9, r0, r9
/* 8015E498 0015A2D8 81 43 08 B4 */ lwz r10, 0x8b4(r3)
/* 8015E49C 0015A2DC 80 A3 00 00 */ lwz r5, 0x0(r3)
/* 8015E4A0 0015A2E0 7D 26 07 34 */ extsh r6, r9
/* 8015E4A4 0015A2E4 55 40 08 3C */ slwi r0, r10, 1
/* 8015E4A8 0015A2E8 7C 88 0E 70 */ srawi r8, r4, 1
/* 8015E4AC 0015A2EC 7F E4 02 14 */ add r31, r4, r0
/* 8015E4B0 0015A2F0 7C C6 0E 70 */ srawi r6, r6, 1
/* 8015E4B4 0015A2F4 80 E3 00 70 */ lwz r7, 0x70(r3)
/* 8015E4B8 0015A2F8 55 20 1F 38 */ rlwinm r0, r9, 3, 28, 28
/* 8015E4BC 0015A2FC 57 E4 07 7E */ clrlwi r4, r31, 29
/* 8015E4C0 0015A300 B1 23 0A 22 */ sth r9, 0xa22(r3)
/* 8015E4C4 0015A304 7C 04 02 14 */ add r0, r4, r0
/* 8015E4C8 0015A308 80 9E 00 68 */ lwz r4, 0x68(r30)
/* 8015E4CC 0015A30C 54 00 10 3A */ slwi r0, r0, 2
/* 8015E4D0 0015A310 7C E7 52 14 */ add r7, r7, r10
/* 8015E4D4 0015A314 7C 7E 02 14 */ add r3, r30, r0
/* 8015E4D8 0015A318 7C 84 52 14 */ add r4, r4, r10
/* 8015E4DC 0015A31C 7C C6 29 D6 */ mullw r6, r6, r5
/* 8015E4E0 0015A320 81 83 0B A8 */ lwz r12, 0xba8(r3)
/* 8015E4E4 0015A324 7C 08 3A 14 */ add r0, r8, r7
/* 8015E4E8 0015A328 7C 66 02 14 */ add r3, r6, r0
/* 8015E4EC 0015A32C 7D 89 03 A6 */ mtctr r12
/* 8015E4F0 0015A330 4E 80 04 21 */ bctrl
/* 8015E4F4 0015A334 80 7E 00 00 */ lwz r3, 0x0(r30)
/* 8015E4F8 0015A338 57 E4 FF 7E */ extrwi r4, r31, 3, 28
/* 8015E4FC 0015A33C A8 1E 0A 20 */ lha r0, 0xa20(r30)
/* 8015E500 0015A340 7C 65 0E 70 */ srawi r5, r3, 1
/* 8015E504 0015A344 A8 7E 0A 22 */ lha r3, 0xa22(r30)
/* 8015E508 0015A348 7C 07 16 70 */ srawi r7, r0, 2
/* 8015E50C 0015A34C 81 1E 08 B8 */ lwz r8, 0x8b8(r30)
/* 8015E510 0015A350 54 60 17 38 */ rlwinm r0, r3, 2, 28, 28
/* 8015E514 0015A354 7C 63 16 70 */ srawi r3, r3, 2
/* 8015E518 0015A358 7C 04 02 14 */ add r0, r4, r0
/* 8015E51C 0015A35C 80 9E 00 88 */ lwz r4, 0x88(r30)
/* 8015E520 0015A360 54 06 10 3A */ slwi r6, r0, 2
/* 8015E524 0015A364 80 1E 00 80 */ lwz r0, 0x80(r30)
/* 8015E528 0015A368 7F FE 32 14 */ add r31, r30, r6
/* 8015E52C 0015A36C 7C 84 42 14 */ add r4, r4, r8
/* 8015E530 0015A370 7C C3 29 D6 */ mullw r6, r3, r5
/* 8015E534 0015A374 81 9F 0D 28 */ lwz r12, 0xd28(r31)
/* 8015E538 0015A378 7C 67 22 14 */ add r3, r7, r4
/* 8015E53C 0015A37C 7C 80 42 14 */ add r4, r0, r8
/* 8015E540 0015A380 7C 66 1A 14 */ add r3, r6, r3
/* 8015E544 0015A384 7D 89 03 A6 */ mtctr r12
/* 8015E548 0015A388 4E 80 04 21 */ bctrl
/* 8015E54C 0015A38C 80 1E 00 00 */ lwz r0, 0x0(r30)
/* 8015E550 0015A390 A8 7E 0A 20 */ lha r3, 0xa20(r30)
/* 8015E554 0015A394 7C 05 0E 70 */ srawi r5, r0, 1
/* 8015E558 0015A398 A8 1E 0A 22 */ lha r0, 0xa22(r30)
/* 8015E55C 0015A39C 7C 66 16 70 */ srawi r6, r3, 2
/* 8015E560 0015A3A0 80 FE 08 B8 */ lwz r7, 0x8b8(r30)
/* 8015E564 0015A3A4 7C 00 16 70 */ srawi r0, r0, 2
/* 8015E568 0015A3A8 80 7E 00 A0 */ lwz r3, 0xa0(r30)
/* 8015E56C 0015A3AC 7C 80 29 D6 */ mullw r4, r0, r5
/* 8015E570 0015A3B0 80 1E 00 98 */ lwz r0, 0x98(r30)
/* 8015E574 0015A3B4 7C 63 3A 14 */ add r3, r3, r7
/* 8015E578 0015A3B8 81 9F 0D 28 */ lwz r12, 0xd28(r31)
/* 8015E57C 0015A3BC 7C 66 1A 14 */ add r3, r6, r3
/* 8015E580 0015A3C0 7C 64 1A 14 */ add r3, r4, r3
/* 8015E584 0015A3C4 7C 80 3A 14 */ add r4, r0, r7
/* 8015E588 0015A3C8 7D 89 03 A6 */ mtctr r12
/* 8015E58C 0015A3CC 4E 80 04 21 */ bctrl
/* 8015E590 0015A3D0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8015E594 0015A3D4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8015E598 0015A3D8 83 C1 00 08 */ lwz r30, 0x8(r1)
/* 8015E59C 0015A3DC 7C 08 03 A6 */ mtlr r0
/* 8015E5A0 0015A3E0 38 21 00 10 */ addi r1, r1, 0x10
/* 8015E5A4 0015A3E4 4E 80 00 20 */ blr
/* 8015E5A8 0015A3E8 00 00 00 00 */ .4byte 0x00000000
/* 8015E5AC 0015A3EC 00 00 00 00 */ .4byte 0x00000000
2022-10-16 16:31:36 +00:00
.global VX2CommandBack38x16__FR14VX2DecoderData
VX2CommandBack38x16__FR14VX2DecoderData:
2022-10-16 16:05:58 +00:00
/* 8015E5B0 0015A3F0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8015E5B4 0015A3F4 7C 08 02 A6 */ mflr r0
2022-10-16 16:31:36 +00:00
/* 8015E5B8 0015A3F8 3C 80 80 45 */ lis r4, VX2GolombCodeSigned@ha
/* 8015E5BC 0015A3FC 3C A0 80 45 */ lis r5, VX2GolombCodeSignedSize@ha
2022-10-16 16:05:58 +00:00
/* 8015E5C0 0015A400 90 01 00 14 */ stw r0, 0x14(r1)
2022-10-16 16:31:36 +00:00
/* 8015E5C4 0015A404 38 84 85 D8 */ addi r4, r4, VX2GolombCodeSigned@l
/* 8015E5C8 0015A408 38 A5 05 D8 */ addi r5, r5, VX2GolombCodeSignedSize@l
2022-10-16 16:05:58 +00:00
/* 8015E5CC 0015A40C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8015E5D0 0015A410 93 C1 00 08 */ stw r30, 0x8(r1)
/* 8015E5D4 0015A414 7C 7E 1B 78 */ mr r30, r3
/* 8015E5D8 0015A418 81 03 0A 08 */ lwz r8, 0xa08(r3)
/* 8015E5DC 0015A41C 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 8015E5E0 0015A420 55 06 7C 7E */ srwi r6, r8, 17
/* 8015E5E4 0015A424 7D 24 30 AE */ lbzx r9, r4, r6
/* 8015E5E8 0015A428 7D 29 07 74 */ extsb r9, r9
/* 8015E5EC 0015A42C 55 24 10 3A */ slwi r4, r9, 2
/* 8015E5F0 0015A430 7C 85 22 14 */ add r4, r5, r4
/* 8015E5F4 0015A434 80 84 01 FC */ lwz r4, 0x1fc(r4)
/* 8015E5F8 0015A438 7C E4 00 51 */ subf. r7, r4, r0
/* 8015E5FC 0015A43C 7D 08 20 30 */ slw r8, r8, r4
/* 8015E600 0015A440 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 8015E604 0015A444 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 8015E608 0015A448 40 80 00 2C */ bge lbl_8015E634
/* 8015E60C 0015A44C 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 8015E610 0015A450 7C C0 26 2C */ lhbrx r6, r0, r4
/* 8015E614 0015A454 7C A7 00 D0 */ neg r5, r7
/* 8015E618 0015A458 38 84 00 02 */ addi r4, r4, 0x2
/* 8015E61C 0015A45C 38 07 00 10 */ addi r0, r7, 0x10
/* 8015E620 0015A460 7C C5 28 30 */ slw r5, r6, r5
/* 8015E624 0015A464 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 8015E628 0015A468 7D 04 2B 78 */ or r4, r8, r5
/* 8015E62C 0015A46C 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 8015E630 0015A470 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_8015E634
lbl_8015E634:
/* 8015E634 0015A474 A8 03 0A 24 */ lha r0, 0xa24(r3)
2022-10-16 16:31:36 +00:00
/* 8015E638 0015A478 3C 80 80 45 */ lis r4, VX2GolombCodeSigned@ha
2022-10-16 16:05:58 +00:00
/* 8015E63C 0015A47C 80 C3 0A 08 */ lwz r6, 0xa08(r3)
2022-10-16 16:31:36 +00:00
/* 8015E640 0015A480 3C A0 80 45 */ lis r5, VX2GolombCodeSignedSize@ha
2022-10-16 16:05:58 +00:00
/* 8015E644 0015A484 7C 00 4A 14 */ add r0, r0, r9
/* 8015E648 0015A488 B0 03 0A 20 */ sth r0, 0xa20(r3)
/* 8015E64C 0015A48C 54 C0 7C 7E */ srwi r0, r6, 17
2022-10-16 16:31:36 +00:00
/* 8015E650 0015A490 38 84 85 D8 */ addi r4, r4, VX2GolombCodeSigned@l
2022-10-16 16:05:58 +00:00
/* 8015E654 0015A494 7D 24 00 AE */ lbzx r9, r4, r0
2022-10-16 16:31:36 +00:00
/* 8015E658 0015A498 38 A5 05 D8 */ addi r5, r5, VX2GolombCodeSignedSize@l
2022-10-16 16:05:58 +00:00
/* 8015E65C 0015A49C 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 8015E660 0015A4A0 7D 29 07 74 */ extsb r9, r9
/* 8015E664 0015A4A4 55 24 10 3A */ slwi r4, r9, 2
/* 8015E668 0015A4A8 7C 85 22 14 */ add r4, r5, r4
/* 8015E66C 0015A4AC 80 84 01 FC */ lwz r4, 0x1fc(r4)
/* 8015E670 0015A4B0 7C E4 00 51 */ subf. r7, r4, r0
/* 8015E674 0015A4B4 7C C8 20 30 */ slw r8, r6, r4
/* 8015E678 0015A4B8 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 8015E67C 0015A4BC 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 8015E680 0015A4C0 40 80 00 2C */ bge lbl_8015E6AC
/* 8015E684 0015A4C4 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 8015E688 0015A4C8 7C C0 26 2C */ lhbrx r6, r0, r4
/* 8015E68C 0015A4CC 7C A7 00 D0 */ neg r5, r7
/* 8015E690 0015A4D0 38 84 00 02 */ addi r4, r4, 0x2
/* 8015E694 0015A4D4 38 07 00 10 */ addi r0, r7, 0x10
/* 8015E698 0015A4D8 7C C5 28 30 */ slw r5, r6, r5
/* 8015E69C 0015A4DC 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 8015E6A0 0015A4E0 7D 04 2B 78 */ or r4, r8, r5
/* 8015E6A4 0015A4E4 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 8015E6A8 0015A4E8 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_8015E6AC
lbl_8015E6AC:
/* 8015E6AC 0015A4EC A8 03 0A 26 */ lha r0, 0xa26(r3)
/* 8015E6B0 0015A4F0 A8 83 0A 20 */ lha r4, 0xa20(r3)
/* 8015E6B4 0015A4F4 7D 20 4A 14 */ add r9, r0, r9
/* 8015E6B8 0015A4F8 81 43 08 B4 */ lwz r10, 0x8b4(r3)
/* 8015E6BC 0015A4FC 80 A3 00 00 */ lwz r5, 0x0(r3)
/* 8015E6C0 0015A500 7D 26 07 34 */ extsh r6, r9
/* 8015E6C4 0015A504 55 40 08 3C */ slwi r0, r10, 1
/* 8015E6C8 0015A508 7C 88 0E 70 */ srawi r8, r4, 1
/* 8015E6CC 0015A50C 7F E4 02 14 */ add r31, r4, r0
/* 8015E6D0 0015A510 7C C6 0E 70 */ srawi r6, r6, 1
/* 8015E6D4 0015A514 80 E3 00 74 */ lwz r7, 0x74(r3)
/* 8015E6D8 0015A518 55 20 1F 38 */ rlwinm r0, r9, 3, 28, 28
/* 8015E6DC 0015A51C 57 E4 07 7E */ clrlwi r4, r31, 29
/* 8015E6E0 0015A520 B1 23 0A 22 */ sth r9, 0xa22(r3)
/* 8015E6E4 0015A524 7C 04 02 14 */ add r0, r4, r0
/* 8015E6E8 0015A528 80 9E 00 68 */ lwz r4, 0x68(r30)
/* 8015E6EC 0015A52C 54 00 10 3A */ slwi r0, r0, 2
/* 8015E6F0 0015A530 7C E7 52 14 */ add r7, r7, r10
/* 8015E6F4 0015A534 7C 7E 02 14 */ add r3, r30, r0
/* 8015E6F8 0015A538 7C 84 52 14 */ add r4, r4, r10
/* 8015E6FC 0015A53C 7C C6 29 D6 */ mullw r6, r6, r5
/* 8015E700 0015A540 81 83 0B A8 */ lwz r12, 0xba8(r3)
/* 8015E704 0015A544 7C 08 3A 14 */ add r0, r8, r7
/* 8015E708 0015A548 7C 66 02 14 */ add r3, r6, r0
/* 8015E70C 0015A54C 7D 89 03 A6 */ mtctr r12
/* 8015E710 0015A550 4E 80 04 21 */ bctrl
/* 8015E714 0015A554 80 7E 00 00 */ lwz r3, 0x0(r30)
/* 8015E718 0015A558 57 E4 FF 7E */ extrwi r4, r31, 3, 28
/* 8015E71C 0015A55C A8 1E 0A 20 */ lha r0, 0xa20(r30)
/* 8015E720 0015A560 7C 65 0E 70 */ srawi r5, r3, 1
/* 8015E724 0015A564 A8 7E 0A 22 */ lha r3, 0xa22(r30)
/* 8015E728 0015A568 7C 07 16 70 */ srawi r7, r0, 2
/* 8015E72C 0015A56C 81 1E 08 B8 */ lwz r8, 0x8b8(r30)
/* 8015E730 0015A570 54 60 17 38 */ rlwinm r0, r3, 2, 28, 28
/* 8015E734 0015A574 7C 63 16 70 */ srawi r3, r3, 2
/* 8015E738 0015A578 7C 04 02 14 */ add r0, r4, r0
/* 8015E73C 0015A57C 80 9E 00 8C */ lwz r4, 0x8c(r30)
/* 8015E740 0015A580 54 06 10 3A */ slwi r6, r0, 2
/* 8015E744 0015A584 80 1E 00 80 */ lwz r0, 0x80(r30)
/* 8015E748 0015A588 7F FE 32 14 */ add r31, r30, r6
/* 8015E74C 0015A58C 7C 84 42 14 */ add r4, r4, r8
/* 8015E750 0015A590 7C C3 29 D6 */ mullw r6, r3, r5
/* 8015E754 0015A594 81 9F 0D 28 */ lwz r12, 0xd28(r31)
/* 8015E758 0015A598 7C 67 22 14 */ add r3, r7, r4
/* 8015E75C 0015A59C 7C 80 42 14 */ add r4, r0, r8
/* 8015E760 0015A5A0 7C 66 1A 14 */ add r3, r6, r3
/* 8015E764 0015A5A4 7D 89 03 A6 */ mtctr r12
/* 8015E768 0015A5A8 4E 80 04 21 */ bctrl
/* 8015E76C 0015A5AC 80 1E 00 00 */ lwz r0, 0x0(r30)
/* 8015E770 0015A5B0 A8 7E 0A 20 */ lha r3, 0xa20(r30)
/* 8015E774 0015A5B4 7C 05 0E 70 */ srawi r5, r0, 1
/* 8015E778 0015A5B8 A8 1E 0A 22 */ lha r0, 0xa22(r30)
/* 8015E77C 0015A5BC 7C 66 16 70 */ srawi r6, r3, 2
/* 8015E780 0015A5C0 80 FE 08 B8 */ lwz r7, 0x8b8(r30)
/* 8015E784 0015A5C4 7C 00 16 70 */ srawi r0, r0, 2
/* 8015E788 0015A5C8 80 7E 00 A4 */ lwz r3, 0xa4(r30)
/* 8015E78C 0015A5CC 7C 80 29 D6 */ mullw r4, r0, r5
/* 8015E790 0015A5D0 80 1E 00 98 */ lwz r0, 0x98(r30)
/* 8015E794 0015A5D4 7C 63 3A 14 */ add r3, r3, r7
/* 8015E798 0015A5D8 81 9F 0D 28 */ lwz r12, 0xd28(r31)
/* 8015E79C 0015A5DC 7C 66 1A 14 */ add r3, r6, r3
/* 8015E7A0 0015A5E0 7C 64 1A 14 */ add r3, r4, r3
/* 8015E7A4 0015A5E4 7C 80 3A 14 */ add r4, r0, r7
/* 8015E7A8 0015A5E8 7D 89 03 A6 */ mtctr r12
/* 8015E7AC 0015A5EC 4E 80 04 21 */ bctrl
/* 8015E7B0 0015A5F0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8015E7B4 0015A5F4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8015E7B8 0015A5F8 83 C1 00 08 */ lwz r30, 0x8(r1)
/* 8015E7BC 0015A5FC 7C 08 03 A6 */ mtlr r0
/* 8015E7C0 0015A600 38 21 00 10 */ addi r1, r1, 0x10
/* 8015E7C4 0015A604 4E 80 00 20 */ blr
/* 8015E7C8 0015A608 00 00 00 00 */ .4byte 0x00000000
/* 8015E7CC 0015A60C 00 00 00 00 */ .4byte 0x00000000
2022-10-16 16:31:36 +00:00
.global VX2CommandBack48x16__FR14VX2DecoderData
VX2CommandBack48x16__FR14VX2DecoderData:
2022-10-16 16:05:58 +00:00
/* 8015E7D0 0015A610 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8015E7D4 0015A614 7C 08 02 A6 */ mflr r0
2022-10-16 16:31:36 +00:00
/* 8015E7D8 0015A618 3C 80 80 45 */ lis r4, VX2GolombCodeSigned@ha
/* 8015E7DC 0015A61C 3C A0 80 45 */ lis r5, VX2GolombCodeSignedSize@ha
2022-10-16 16:05:58 +00:00
/* 8015E7E0 0015A620 90 01 00 14 */ stw r0, 0x14(r1)
2022-10-16 16:31:36 +00:00
/* 8015E7E4 0015A624 38 84 85 D8 */ addi r4, r4, VX2GolombCodeSigned@l
/* 8015E7E8 0015A628 38 A5 05 D8 */ addi r5, r5, VX2GolombCodeSignedSize@l
2022-10-16 16:05:58 +00:00
/* 8015E7EC 0015A62C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8015E7F0 0015A630 93 C1 00 08 */ stw r30, 0x8(r1)
/* 8015E7F4 0015A634 7C 7E 1B 78 */ mr r30, r3
/* 8015E7F8 0015A638 81 03 0A 08 */ lwz r8, 0xa08(r3)
/* 8015E7FC 0015A63C 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 8015E800 0015A640 55 06 7C 7E */ srwi r6, r8, 17
/* 8015E804 0015A644 7D 24 30 AE */ lbzx r9, r4, r6
/* 8015E808 0015A648 7D 29 07 74 */ extsb r9, r9
/* 8015E80C 0015A64C 55 24 10 3A */ slwi r4, r9, 2
/* 8015E810 0015A650 7C 85 22 14 */ add r4, r5, r4
/* 8015E814 0015A654 80 84 01 FC */ lwz r4, 0x1fc(r4)
/* 8015E818 0015A658 7C E4 00 51 */ subf. r7, r4, r0
/* 8015E81C 0015A65C 7D 08 20 30 */ slw r8, r8, r4
/* 8015E820 0015A660 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 8015E824 0015A664 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 8015E828 0015A668 40 80 00 2C */ bge lbl_8015E854
/* 8015E82C 0015A66C 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 8015E830 0015A670 7C C0 26 2C */ lhbrx r6, r0, r4
/* 8015E834 0015A674 7C A7 00 D0 */ neg r5, r7
/* 8015E838 0015A678 38 84 00 02 */ addi r4, r4, 0x2
/* 8015E83C 0015A67C 38 07 00 10 */ addi r0, r7, 0x10
/* 8015E840 0015A680 7C C5 28 30 */ slw r5, r6, r5
/* 8015E844 0015A684 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 8015E848 0015A688 7D 04 2B 78 */ or r4, r8, r5
/* 8015E84C 0015A68C 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 8015E850 0015A690 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_8015E854
lbl_8015E854:
/* 8015E854 0015A694 A8 03 0A 24 */ lha r0, 0xa24(r3)
2022-10-16 16:31:36 +00:00
/* 8015E858 0015A698 3C 80 80 45 */ lis r4, VX2GolombCodeSigned@ha
2022-10-16 16:05:58 +00:00
/* 8015E85C 0015A69C 80 C3 0A 08 */ lwz r6, 0xa08(r3)
2022-10-16 16:31:36 +00:00
/* 8015E860 0015A6A0 3C A0 80 45 */ lis r5, VX2GolombCodeSignedSize@ha
2022-10-16 16:05:58 +00:00
/* 8015E864 0015A6A4 7C 00 4A 14 */ add r0, r0, r9
/* 8015E868 0015A6A8 B0 03 0A 20 */ sth r0, 0xa20(r3)
/* 8015E86C 0015A6AC 54 C0 7C 7E */ srwi r0, r6, 17
2022-10-16 16:31:36 +00:00
/* 8015E870 0015A6B0 38 84 85 D8 */ addi r4, r4, VX2GolombCodeSigned@l
2022-10-16 16:05:58 +00:00
/* 8015E874 0015A6B4 7D 24 00 AE */ lbzx r9, r4, r0
2022-10-16 16:31:36 +00:00
/* 8015E878 0015A6B8 38 A5 05 D8 */ addi r5, r5, VX2GolombCodeSignedSize@l
2022-10-16 16:05:58 +00:00
/* 8015E87C 0015A6BC 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 8015E880 0015A6C0 7D 29 07 74 */ extsb r9, r9
/* 8015E884 0015A6C4 55 24 10 3A */ slwi r4, r9, 2
/* 8015E888 0015A6C8 7C 85 22 14 */ add r4, r5, r4
/* 8015E88C 0015A6CC 80 84 01 FC */ lwz r4, 0x1fc(r4)
/* 8015E890 0015A6D0 7C E4 00 51 */ subf. r7, r4, r0
/* 8015E894 0015A6D4 7C C8 20 30 */ slw r8, r6, r4
/* 8015E898 0015A6D8 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 8015E89C 0015A6DC 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 8015E8A0 0015A6E0 40 80 00 2C */ bge lbl_8015E8CC
/* 8015E8A4 0015A6E4 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 8015E8A8 0015A6E8 7C C0 26 2C */ lhbrx r6, r0, r4
/* 8015E8AC 0015A6EC 7C A7 00 D0 */ neg r5, r7
/* 8015E8B0 0015A6F0 38 84 00 02 */ addi r4, r4, 0x2
/* 8015E8B4 0015A6F4 38 07 00 10 */ addi r0, r7, 0x10
/* 8015E8B8 0015A6F8 7C C5 28 30 */ slw r5, r6, r5
/* 8015E8BC 0015A6FC 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 8015E8C0 0015A700 7D 04 2B 78 */ or r4, r8, r5
/* 8015E8C4 0015A704 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 8015E8C8 0015A708 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_8015E8CC
lbl_8015E8CC:
/* 8015E8CC 0015A70C A8 03 0A 26 */ lha r0, 0xa26(r3)
/* 8015E8D0 0015A710 A8 83 0A 20 */ lha r4, 0xa20(r3)
/* 8015E8D4 0015A714 7D 20 4A 14 */ add r9, r0, r9
/* 8015E8D8 0015A718 81 43 08 B4 */ lwz r10, 0x8b4(r3)
/* 8015E8DC 0015A71C 80 A3 00 00 */ lwz r5, 0x0(r3)
/* 8015E8E0 0015A720 7D 26 07 34 */ extsh r6, r9
/* 8015E8E4 0015A724 55 40 08 3C */ slwi r0, r10, 1
/* 8015E8E8 0015A728 7C 88 0E 70 */ srawi r8, r4, 1
/* 8015E8EC 0015A72C 7F E4 02 14 */ add r31, r4, r0
/* 8015E8F0 0015A730 7C C6 0E 70 */ srawi r6, r6, 1
/* 8015E8F4 0015A734 80 E3 00 78 */ lwz r7, 0x78(r3)
/* 8015E8F8 0015A738 55 20 1F 38 */ rlwinm r0, r9, 3, 28, 28
/* 8015E8FC 0015A73C 57 E4 07 7E */ clrlwi r4, r31, 29
/* 8015E900 0015A740 B1 23 0A 22 */ sth r9, 0xa22(r3)
/* 8015E904 0015A744 7C 04 02 14 */ add r0, r4, r0
/* 8015E908 0015A748 80 9E 00 68 */ lwz r4, 0x68(r30)
/* 8015E90C 0015A74C 54 00 10 3A */ slwi r0, r0, 2
/* 8015E910 0015A750 7C E7 52 14 */ add r7, r7, r10
/* 8015E914 0015A754 7C 7E 02 14 */ add r3, r30, r0
/* 8015E918 0015A758 7C 84 52 14 */ add r4, r4, r10
/* 8015E91C 0015A75C 7C C6 29 D6 */ mullw r6, r6, r5
/* 8015E920 0015A760 81 83 0B A8 */ lwz r12, 0xba8(r3)
/* 8015E924 0015A764 7C 08 3A 14 */ add r0, r8, r7
/* 8015E928 0015A768 7C 66 02 14 */ add r3, r6, r0
/* 8015E92C 0015A76C 7D 89 03 A6 */ mtctr r12
/* 8015E930 0015A770 4E 80 04 21 */ bctrl
/* 8015E934 0015A774 80 7E 00 00 */ lwz r3, 0x0(r30)
/* 8015E938 0015A778 57 E4 FF 7E */ extrwi r4, r31, 3, 28
/* 8015E93C 0015A77C A8 1E 0A 20 */ lha r0, 0xa20(r30)
/* 8015E940 0015A780 7C 65 0E 70 */ srawi r5, r3, 1
/* 8015E944 0015A784 A8 7E 0A 22 */ lha r3, 0xa22(r30)
/* 8015E948 0015A788 7C 07 16 70 */ srawi r7, r0, 2
/* 8015E94C 0015A78C 81 1E 08 B8 */ lwz r8, 0x8b8(r30)
/* 8015E950 0015A790 54 60 17 38 */ rlwinm r0, r3, 2, 28, 28
/* 8015E954 0015A794 7C 63 16 70 */ srawi r3, r3, 2
/* 8015E958 0015A798 7C 04 02 14 */ add r0, r4, r0
/* 8015E95C 0015A79C 80 9E 00 90 */ lwz r4, 0x90(r30)
/* 8015E960 0015A7A0 54 06 10 3A */ slwi r6, r0, 2
/* 8015E964 0015A7A4 80 1E 00 80 */ lwz r0, 0x80(r30)
/* 8015E968 0015A7A8 7F FE 32 14 */ add r31, r30, r6
/* 8015E96C 0015A7AC 7C 84 42 14 */ add r4, r4, r8
/* 8015E970 0015A7B0 7C C3 29 D6 */ mullw r6, r3, r5
/* 8015E974 0015A7B4 81 9F 0D 28 */ lwz r12, 0xd28(r31)
/* 8015E978 0015A7B8 7C 67 22 14 */ add r3, r7, r4
/* 8015E97C 0015A7BC 7C 80 42 14 */ add r4, r0, r8
/* 8015E980 0015A7C0 7C 66 1A 14 */ add r3, r6, r3
/* 8015E984 0015A7C4 7D 89 03 A6 */ mtctr r12
/* 8015E988 0015A7C8 4E 80 04 21 */ bctrl
/* 8015E98C 0015A7CC 80 1E 00 00 */ lwz r0, 0x0(r30)
/* 8015E990 0015A7D0 A8 7E 0A 20 */ lha r3, 0xa20(r30)
/* 8015E994 0015A7D4 7C 05 0E 70 */ srawi r5, r0, 1
/* 8015E998 0015A7D8 A8 1E 0A 22 */ lha r0, 0xa22(r30)
/* 8015E99C 0015A7DC 7C 66 16 70 */ srawi r6, r3, 2
/* 8015E9A0 0015A7E0 80 FE 08 B8 */ lwz r7, 0x8b8(r30)
/* 8015E9A4 0015A7E4 7C 00 16 70 */ srawi r0, r0, 2
/* 8015E9A8 0015A7E8 80 7E 00 A8 */ lwz r3, 0xa8(r30)
/* 8015E9AC 0015A7EC 7C 80 29 D6 */ mullw r4, r0, r5
/* 8015E9B0 0015A7F0 80 1E 00 98 */ lwz r0, 0x98(r30)
/* 8015E9B4 0015A7F4 7C 63 3A 14 */ add r3, r3, r7
/* 8015E9B8 0015A7F8 81 9F 0D 28 */ lwz r12, 0xd28(r31)
/* 8015E9BC 0015A7FC 7C 66 1A 14 */ add r3, r6, r3
/* 8015E9C0 0015A800 7C 64 1A 14 */ add r3, r4, r3
/* 8015E9C4 0015A804 7C 80 3A 14 */ add r4, r0, r7
/* 8015E9C8 0015A808 7D 89 03 A6 */ mtctr r12
/* 8015E9CC 0015A80C 4E 80 04 21 */ bctrl
/* 8015E9D0 0015A810 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8015E9D4 0015A814 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8015E9D8 0015A818 83 C1 00 08 */ lwz r30, 0x8(r1)
/* 8015E9DC 0015A81C 7C 08 03 A6 */ mtlr r0
/* 8015E9E0 0015A820 38 21 00 10 */ addi r1, r1, 0x10
/* 8015E9E4 0015A824 4E 80 00 20 */ blr
/* 8015E9E8 0015A828 00 00 00 00 */ .4byte 0x00000000
/* 8015E9EC 0015A82C 00 00 00 00 */ .4byte 0x00000000
2022-10-16 16:31:36 +00:00
.global VX2CommandBack58x16__FR14VX2DecoderData
VX2CommandBack58x16__FR14VX2DecoderData:
2022-10-16 16:05:58 +00:00
/* 8015E9F0 0015A830 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8015E9F4 0015A834 7C 08 02 A6 */ mflr r0
2022-10-16 16:31:36 +00:00
/* 8015E9F8 0015A838 3C 80 80 45 */ lis r4, VX2GolombCodeSigned@ha
/* 8015E9FC 0015A83C 3C A0 80 45 */ lis r5, VX2GolombCodeSignedSize@ha
2022-10-16 16:05:58 +00:00
/* 8015EA00 0015A840 90 01 00 14 */ stw r0, 0x14(r1)
2022-10-16 16:31:36 +00:00
/* 8015EA04 0015A844 38 84 85 D8 */ addi r4, r4, VX2GolombCodeSigned@l
/* 8015EA08 0015A848 38 A5 05 D8 */ addi r5, r5, VX2GolombCodeSignedSize@l
2022-10-16 16:05:58 +00:00
/* 8015EA0C 0015A84C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8015EA10 0015A850 93 C1 00 08 */ stw r30, 0x8(r1)
/* 8015EA14 0015A854 7C 7E 1B 78 */ mr r30, r3
/* 8015EA18 0015A858 81 03 0A 08 */ lwz r8, 0xa08(r3)
/* 8015EA1C 0015A85C 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 8015EA20 0015A860 55 06 7C 7E */ srwi r6, r8, 17
/* 8015EA24 0015A864 7D 24 30 AE */ lbzx r9, r4, r6
/* 8015EA28 0015A868 7D 29 07 74 */ extsb r9, r9
/* 8015EA2C 0015A86C 55 24 10 3A */ slwi r4, r9, 2
/* 8015EA30 0015A870 7C 85 22 14 */ add r4, r5, r4
/* 8015EA34 0015A874 80 84 01 FC */ lwz r4, 0x1fc(r4)
/* 8015EA38 0015A878 7C E4 00 51 */ subf. r7, r4, r0
/* 8015EA3C 0015A87C 7D 08 20 30 */ slw r8, r8, r4
/* 8015EA40 0015A880 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 8015EA44 0015A884 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 8015EA48 0015A888 40 80 00 2C */ bge lbl_8015EA74
/* 8015EA4C 0015A88C 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 8015EA50 0015A890 7C C0 26 2C */ lhbrx r6, r0, r4
/* 8015EA54 0015A894 7C A7 00 D0 */ neg r5, r7
/* 8015EA58 0015A898 38 84 00 02 */ addi r4, r4, 0x2
/* 8015EA5C 0015A89C 38 07 00 10 */ addi r0, r7, 0x10
/* 8015EA60 0015A8A0 7C C5 28 30 */ slw r5, r6, r5
/* 8015EA64 0015A8A4 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 8015EA68 0015A8A8 7D 04 2B 78 */ or r4, r8, r5
/* 8015EA6C 0015A8AC 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 8015EA70 0015A8B0 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_8015EA74
lbl_8015EA74:
/* 8015EA74 0015A8B4 A8 03 0A 24 */ lha r0, 0xa24(r3)
2022-10-16 16:31:36 +00:00
/* 8015EA78 0015A8B8 3C 80 80 45 */ lis r4, VX2GolombCodeSigned@ha
2022-10-16 16:05:58 +00:00
/* 8015EA7C 0015A8BC 80 C3 0A 08 */ lwz r6, 0xa08(r3)
2022-10-16 16:31:36 +00:00
/* 8015EA80 0015A8C0 3C A0 80 45 */ lis r5, VX2GolombCodeSignedSize@ha
2022-10-16 16:05:58 +00:00
/* 8015EA84 0015A8C4 7C 00 4A 14 */ add r0, r0, r9
/* 8015EA88 0015A8C8 B0 03 0A 20 */ sth r0, 0xa20(r3)
/* 8015EA8C 0015A8CC 54 C0 7C 7E */ srwi r0, r6, 17
2022-10-16 16:31:36 +00:00
/* 8015EA90 0015A8D0 38 84 85 D8 */ addi r4, r4, VX2GolombCodeSigned@l
2022-10-16 16:05:58 +00:00
/* 8015EA94 0015A8D4 7D 24 00 AE */ lbzx r9, r4, r0
2022-10-16 16:31:36 +00:00
/* 8015EA98 0015A8D8 38 A5 05 D8 */ addi r5, r5, VX2GolombCodeSignedSize@l
2022-10-16 16:05:58 +00:00
/* 8015EA9C 0015A8DC 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 8015EAA0 0015A8E0 7D 29 07 74 */ extsb r9, r9
/* 8015EAA4 0015A8E4 55 24 10 3A */ slwi r4, r9, 2
/* 8015EAA8 0015A8E8 7C 85 22 14 */ add r4, r5, r4
/* 8015EAAC 0015A8EC 80 84 01 FC */ lwz r4, 0x1fc(r4)
/* 8015EAB0 0015A8F0 7C E4 00 51 */ subf. r7, r4, r0
/* 8015EAB4 0015A8F4 7C C8 20 30 */ slw r8, r6, r4
/* 8015EAB8 0015A8F8 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 8015EABC 0015A8FC 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 8015EAC0 0015A900 40 80 00 2C */ bge lbl_8015EAEC
/* 8015EAC4 0015A904 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 8015EAC8 0015A908 7C C0 26 2C */ lhbrx r6, r0, r4
/* 8015EACC 0015A90C 7C A7 00 D0 */ neg r5, r7
/* 8015EAD0 0015A910 38 84 00 02 */ addi r4, r4, 0x2
/* 8015EAD4 0015A914 38 07 00 10 */ addi r0, r7, 0x10
/* 8015EAD8 0015A918 7C C5 28 30 */ slw r5, r6, r5
/* 8015EADC 0015A91C 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 8015EAE0 0015A920 7D 04 2B 78 */ or r4, r8, r5
/* 8015EAE4 0015A924 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 8015EAE8 0015A928 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_8015EAEC
lbl_8015EAEC:
/* 8015EAEC 0015A92C A8 03 0A 26 */ lha r0, 0xa26(r3)
/* 8015EAF0 0015A930 A8 83 0A 20 */ lha r4, 0xa20(r3)
/* 8015EAF4 0015A934 7D 20 4A 14 */ add r9, r0, r9
/* 8015EAF8 0015A938 81 43 08 B4 */ lwz r10, 0x8b4(r3)
/* 8015EAFC 0015A93C 80 A3 00 00 */ lwz r5, 0x0(r3)
/* 8015EB00 0015A940 7D 26 07 34 */ extsh r6, r9
/* 8015EB04 0015A944 55 40 08 3C */ slwi r0, r10, 1
/* 8015EB08 0015A948 7C 88 0E 70 */ srawi r8, r4, 1
/* 8015EB0C 0015A94C 7F E4 02 14 */ add r31, r4, r0
/* 8015EB10 0015A950 7C C6 0E 70 */ srawi r6, r6, 1
/* 8015EB14 0015A954 80 E3 00 7C */ lwz r7, 0x7c(r3)
/* 8015EB18 0015A958 55 20 1F 38 */ rlwinm r0, r9, 3, 28, 28
/* 8015EB1C 0015A95C 57 E4 07 7E */ clrlwi r4, r31, 29
/* 8015EB20 0015A960 B1 23 0A 22 */ sth r9, 0xa22(r3)
/* 8015EB24 0015A964 7C 04 02 14 */ add r0, r4, r0
/* 8015EB28 0015A968 80 9E 00 68 */ lwz r4, 0x68(r30)
/* 8015EB2C 0015A96C 54 00 10 3A */ slwi r0, r0, 2
/* 8015EB30 0015A970 7C E7 52 14 */ add r7, r7, r10
/* 8015EB34 0015A974 7C 7E 02 14 */ add r3, r30, r0
/* 8015EB38 0015A978 7C 84 52 14 */ add r4, r4, r10
/* 8015EB3C 0015A97C 7C C6 29 D6 */ mullw r6, r6, r5
/* 8015EB40 0015A980 81 83 0B A8 */ lwz r12, 0xba8(r3)
/* 8015EB44 0015A984 7C 08 3A 14 */ add r0, r8, r7
/* 8015EB48 0015A988 7C 66 02 14 */ add r3, r6, r0
/* 8015EB4C 0015A98C 7D 89 03 A6 */ mtctr r12
/* 8015EB50 0015A990 4E 80 04 21 */ bctrl
/* 8015EB54 0015A994 80 7E 00 00 */ lwz r3, 0x0(r30)
/* 8015EB58 0015A998 57 E4 FF 7E */ extrwi r4, r31, 3, 28
/* 8015EB5C 0015A99C A8 1E 0A 20 */ lha r0, 0xa20(r30)
/* 8015EB60 0015A9A0 7C 65 0E 70 */ srawi r5, r3, 1
/* 8015EB64 0015A9A4 A8 7E 0A 22 */ lha r3, 0xa22(r30)
/* 8015EB68 0015A9A8 7C 07 16 70 */ srawi r7, r0, 2
/* 8015EB6C 0015A9AC 81 1E 08 B8 */ lwz r8, 0x8b8(r30)
/* 8015EB70 0015A9B0 54 60 17 38 */ rlwinm r0, r3, 2, 28, 28
/* 8015EB74 0015A9B4 7C 63 16 70 */ srawi r3, r3, 2
/* 8015EB78 0015A9B8 7C 04 02 14 */ add r0, r4, r0
/* 8015EB7C 0015A9BC 80 9E 00 94 */ lwz r4, 0x94(r30)
/* 8015EB80 0015A9C0 54 06 10 3A */ slwi r6, r0, 2
/* 8015EB84 0015A9C4 80 1E 00 80 */ lwz r0, 0x80(r30)
/* 8015EB88 0015A9C8 7F FE 32 14 */ add r31, r30, r6
/* 8015EB8C 0015A9CC 7C 84 42 14 */ add r4, r4, r8
/* 8015EB90 0015A9D0 7C C3 29 D6 */ mullw r6, r3, r5
/* 8015EB94 0015A9D4 81 9F 0D 28 */ lwz r12, 0xd28(r31)
/* 8015EB98 0015A9D8 7C 67 22 14 */ add r3, r7, r4
/* 8015EB9C 0015A9DC 7C 80 42 14 */ add r4, r0, r8
/* 8015EBA0 0015A9E0 7C 66 1A 14 */ add r3, r6, r3
/* 8015EBA4 0015A9E4 7D 89 03 A6 */ mtctr r12
/* 8015EBA8 0015A9E8 4E 80 04 21 */ bctrl
/* 8015EBAC 0015A9EC 80 1E 00 00 */ lwz r0, 0x0(r30)
/* 8015EBB0 0015A9F0 A8 7E 0A 20 */ lha r3, 0xa20(r30)
/* 8015EBB4 0015A9F4 7C 05 0E 70 */ srawi r5, r0, 1
/* 8015EBB8 0015A9F8 A8 1E 0A 22 */ lha r0, 0xa22(r30)
/* 8015EBBC 0015A9FC 7C 66 16 70 */ srawi r6, r3, 2
/* 8015EBC0 0015AA00 80 FE 08 B8 */ lwz r7, 0x8b8(r30)
/* 8015EBC4 0015AA04 7C 00 16 70 */ srawi r0, r0, 2
/* 8015EBC8 0015AA08 80 7E 00 AC */ lwz r3, 0xac(r30)
/* 8015EBCC 0015AA0C 7C 80 29 D6 */ mullw r4, r0, r5
/* 8015EBD0 0015AA10 80 1E 00 98 */ lwz r0, 0x98(r30)
/* 8015EBD4 0015AA14 7C 63 3A 14 */ add r3, r3, r7
/* 8015EBD8 0015AA18 81 9F 0D 28 */ lwz r12, 0xd28(r31)
/* 8015EBDC 0015AA1C 7C 66 1A 14 */ add r3, r6, r3
/* 8015EBE0 0015AA20 7C 64 1A 14 */ add r3, r4, r3
/* 8015EBE4 0015AA24 7C 80 3A 14 */ add r4, r0, r7
/* 8015EBE8 0015AA28 7D 89 03 A6 */ mtctr r12
/* 8015EBEC 0015AA2C 4E 80 04 21 */ bctrl
/* 8015EBF0 0015AA30 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8015EBF4 0015AA34 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8015EBF8 0015AA38 83 C1 00 08 */ lwz r30, 0x8(r1)
/* 8015EBFC 0015AA3C 7C 08 03 A6 */ mtlr r0
/* 8015EC00 0015AA40 38 21 00 10 */ addi r1, r1, 0x10
/* 8015EC04 0015AA44 4E 80 00 20 */ blr
/* 8015EC08 0015AA48 00 00 00 00 */ .4byte 0x00000000
/* 8015EC0C 0015AA4C 00 00 00 00 */ .4byte 0x00000000
2022-10-16 16:31:36 +00:00
.global VX2CommandCutH8x16__FR14VX2DecoderData
VX2CommandCutH8x16__FR14VX2DecoderData:
2022-10-16 16:05:58 +00:00
/* 8015EC10 0015AA50 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8015EC14 0015AA54 7C 08 02 A6 */ mflr r0
/* 8015EC18 0015AA58 90 01 00 14 */ stw r0, 0x14(r1)
/* 8015EC1C 0015AA5C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8015EC20 0015AA60 7C 7F 1B 78 */ mr r31, r3
2022-10-16 16:31:36 +00:00
/* 8015EC24 0015AA64 48 00 28 1D */ bl VX2DecodeBlockInter8x8__FR14VX2DecoderData
2022-10-16 16:05:58 +00:00
/* 8015EC28 0015AA68 80 1F 00 00 */ lwz r0, 0x0(r31)
/* 8015EC2C 0015AA6C 7F E3 FB 78 */ mr r3, r31
/* 8015EC30 0015AA70 80 DF 08 B4 */ lwz r6, 0x8b4(r31)
/* 8015EC34 0015AA74 54 05 18 38 */ slwi r5, r0, 3
/* 8015EC38 0015AA78 80 9F 08 B8 */ lwz r4, 0x8b8(r31)
/* 8015EC3C 0015AA7C 54 00 08 3A */ extlwi r0, r0, 30, 1
/* 8015EC40 0015AA80 7C A6 2A 14 */ add r5, r6, r5
/* 8015EC44 0015AA84 90 BF 08 B4 */ stw r5, 0x8b4(r31)
/* 8015EC48 0015AA88 7C 04 02 14 */ add r0, r4, r0
/* 8015EC4C 0015AA8C 90 1F 08 B8 */ stw r0, 0x8b8(r31)
2022-10-16 16:31:36 +00:00
/* 8015EC50 0015AA90 48 00 27 F1 */ bl VX2DecodeBlockInter8x8__FR14VX2DecoderData
2022-10-16 16:05:58 +00:00
/* 8015EC54 0015AA94 80 7F 00 00 */ lwz r3, 0x0(r31)
/* 8015EC58 0015AA98 80 9F 08 B4 */ lwz r4, 0x8b4(r31)
/* 8015EC5C 0015AA9C 54 65 18 38 */ slwi r5, r3, 3
/* 8015EC60 0015AAA0 80 1F 08 B8 */ lwz r0, 0x8b8(r31)
/* 8015EC64 0015AAA4 54 63 08 3A */ extlwi r3, r3, 30, 1
/* 8015EC68 0015AAA8 7C 85 20 50 */ subf r4, r5, r4
/* 8015EC6C 0015AAAC 90 9F 08 B4 */ stw r4, 0x8b4(r31)
/* 8015EC70 0015AAB0 7C 03 00 50 */ subf r0, r3, r0
/* 8015EC74 0015AAB4 90 1F 08 B8 */ stw r0, 0x8b8(r31)
/* 8015EC78 0015AAB8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8015EC7C 0015AABC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8015EC80 0015AAC0 7C 08 03 A6 */ mtlr r0
/* 8015EC84 0015AAC4 38 21 00 10 */ addi r1, r1, 0x10
/* 8015EC88 0015AAC8 4E 80 00 20 */ blr
/* 8015EC8C 0015AACC 00 00 00 00 */ .4byte 0x00000000
2022-10-16 16:31:36 +00:00
.global VX2CommandCutV8x16__FR14VX2DecoderData
VX2CommandCutV8x16__FR14VX2DecoderData:
2022-10-16 16:05:58 +00:00
/* 8015EC90 0015AAD0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8015EC94 0015AAD4 7C 08 02 A6 */ mflr r0
/* 8015EC98 0015AAD8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8015EC9C 0015AADC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8015ECA0 0015AAE0 7C 7F 1B 78 */ mr r31, r3
2022-10-16 16:31:36 +00:00
/* 8015ECA4 0015AAE4 4B FF CB DD */ bl VX2DecodeBlockInter4x16__FR14VX2DecoderData
2022-10-16 16:05:58 +00:00
/* 8015ECA8 0015AAE8 80 BF 08 B4 */ lwz r5, 0x8b4(r31)
/* 8015ECAC 0015AAEC 7F E3 FB 78 */ mr r3, r31
/* 8015ECB0 0015AAF0 80 9F 08 B8 */ lwz r4, 0x8b8(r31)
/* 8015ECB4 0015AAF4 38 05 00 04 */ addi r0, r5, 0x4
/* 8015ECB8 0015AAF8 90 1F 08 B4 */ stw r0, 0x8b4(r31)
/* 8015ECBC 0015AAFC 38 04 00 02 */ addi r0, r4, 0x2
/* 8015ECC0 0015AB00 90 1F 08 B8 */ stw r0, 0x8b8(r31)
2022-10-16 16:31:36 +00:00
/* 8015ECC4 0015AB04 4B FF CB BD */ bl VX2DecodeBlockInter4x16__FR14VX2DecoderData
2022-10-16 16:05:58 +00:00
/* 8015ECC8 0015AB08 80 9F 08 B4 */ lwz r4, 0x8b4(r31)
/* 8015ECCC 0015AB0C 80 7F 08 B8 */ lwz r3, 0x8b8(r31)
/* 8015ECD0 0015AB10 38 04 FF FC */ addi r0, r4, -0x4
/* 8015ECD4 0015AB14 90 1F 08 B4 */ stw r0, 0x8b4(r31)
/* 8015ECD8 0015AB18 38 03 FF FE */ addi r0, r3, -0x2
/* 8015ECDC 0015AB1C 90 1F 08 B8 */ stw r0, 0x8b8(r31)
/* 8015ECE0 0015AB20 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8015ECE4 0015AB24 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8015ECE8 0015AB28 7C 08 03 A6 */ mtlr r0
/* 8015ECEC 0015AB2C 38 21 00 10 */ addi r1, r1, 0x10
/* 8015ECF0 0015AB30 4E 80 00 20 */ blr
/* 8015ECF4 0015AB34 00 00 00 00 */ .4byte 0x00000000
/* 8015ECF8 0015AB38 00 00 00 00 */ .4byte 0x00000000
/* 8015ECFC 0015AB3C 00 00 00 00 */ .4byte 0x00000000
2022-10-16 16:31:36 +00:00
.global VX2DecodeBlockInter8x16__FR14VX2DecoderData
VX2DecodeBlockInter8x16__FR14VX2DecoderData:
2022-10-16 16:05:58 +00:00
/* 8015ED00 0015AB40 80 C3 0A 08 */ lwz r6, 0xa08(r3)
2022-10-16 16:31:36 +00:00
/* 8015ED04 0015AB44 3C 80 80 41 */ lis r4, "@LOCAL@VX2DecodeBlockInter8x16__FR14VX2DecoderData@command"@ha
/* 8015ED08 0015AB48 3C A0 80 41 */ lis r5, "@LOCAL@VX2DecodeBlockInter8x16__FR14VX2DecoderData@size@0"@ha
2022-10-16 16:05:58 +00:00
/* 8015ED0C 0015AB4C 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 8015ED10 0015AB50 54 C6 3E 7A */ rlwinm r6, r6, 7, 25, 29
2022-10-16 16:31:36 +00:00
/* 8015ED14 0015AB54 38 84 F1 10 */ addi r4, r4, "@LOCAL@VX2DecodeBlockInter8x16__FR14VX2DecoderData@command"@l
2022-10-16 16:05:58 +00:00
/* 8015ED18 0015AB58 7C C4 30 2E */ lwzx r6, r4, r6
2022-10-16 16:31:36 +00:00
/* 8015ED1C 0015AB5C 38 A5 F1 90 */ addi r5, r5, "@LOCAL@VX2DecodeBlockInter8x16__FR14VX2DecoderData@size@0"@l
2022-10-16 16:05:58 +00:00
/* 8015ED20 0015AB60 80 83 0A 08 */ lwz r4, 0xa08(r3)
/* 8015ED24 0015AB64 54 C9 10 3A */ slwi r9, r6, 2
/* 8015ED28 0015AB68 7C A5 48 2E */ lwzx r5, r5, r9
/* 8015ED2C 0015AB6C 7C E5 00 51 */ subf. r7, r5, r0
/* 8015ED30 0015AB70 7C 88 28 30 */ slw r8, r4, r5
/* 8015ED34 0015AB74 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 8015ED38 0015AB78 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 8015ED3C 0015AB7C 40 80 00 2C */ bge lbl_8015ED68
/* 8015ED40 0015AB80 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 8015ED44 0015AB84 7C C0 26 2C */ lhbrx r6, r0, r4
/* 8015ED48 0015AB88 7C A7 00 D0 */ neg r5, r7
/* 8015ED4C 0015AB8C 38 84 00 02 */ addi r4, r4, 0x2
/* 8015ED50 0015AB90 38 07 00 10 */ addi r0, r7, 0x10
/* 8015ED54 0015AB94 7C C5 28 30 */ slw r5, r6, r5
/* 8015ED58 0015AB98 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 8015ED5C 0015AB9C 7D 04 2B 78 */ or r4, r8, r5
/* 8015ED60 0015ABA0 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 8015ED64 0015ABA4 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_8015ED68
lbl_8015ED68:
2022-10-16 16:31:36 +00:00
/* 8015ED68 0015ABA8 3C 80 80 41 */ lis r4, VX2CommandTable8x16@ha
/* 8015ED6C 0015ABAC 38 84 F0 E8 */ addi r4, r4, VX2CommandTable8x16@l
2022-10-16 16:05:58 +00:00
/* 8015ED70 0015ABB0 7D 84 48 2E */ lwzx r12, r4, r9
/* 8015ED74 0015ABB4 7D 89 03 A6 */ mtctr r12
/* 8015ED78 0015ABB8 4E 80 04 20 */ bctr
/* 8015ED7C 0015ABBC 00 00 00 00 */ .4byte 0x00000000
2022-10-17 09:05:43 +00:00
.include "macros.inc"
.section .rodata, "wa" # 0x80406560 - 0x80421040 ; 0x0001AAE0
.global VX2CommandTable8x16
VX2CommandTable8x16:
.4byte VX2CommandSkip18x16__FR14VX2DecoderData
.4byte VX2CommandBack18x16__FR14VX2DecoderData
.4byte VX2CommandBack28x16__FR14VX2DecoderData
.4byte VX2CommandBack38x16__FR14VX2DecoderData
.4byte VX2CommandBack48x16__FR14VX2DecoderData
.4byte VX2CommandBack58x16__FR14VX2DecoderData
.4byte 0
.4byte 0
.4byte VX2CommandCutH8x16__FR14VX2DecoderData
.4byte VX2CommandCutV8x16__FR14VX2DecoderData
.global "@LOCAL@VX2DecodeBlockInter8x16__FR14VX2DecoderData@command"
"@LOCAL@VX2DecodeBlockInter8x16__FR14VX2DecoderData@command":
.4byte 0x00000009
.4byte 0x00000009
.4byte 0x00000009
.4byte 0x00000009
.4byte 0x00000009
.4byte 0x00000009
.4byte 0x00000009
.4byte 0x00000009
.4byte 0x00000002
.4byte 0x00000002
.4byte 0x00000002
.4byte 0x00000002
.4byte 0x00000003
.4byte 0x00000003
.4byte 0x00000005
.4byte 0x00000004
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000008
.4byte 0x00000008
.4byte 0x00000008
.4byte 0x00000008
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.global "@LOCAL@VX2DecodeBlockInter8x16__FR14VX2DecoderData@size@0"
"@LOCAL@VX2DecodeBlockInter8x16__FR14VX2DecoderData@size@0":
.4byte 0x00000003
.4byte 0x00000002
.4byte 0x00000003
.4byte 0x00000004
.4byte 0x00000005
.4byte 0x00000005
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0x00000003
.4byte 0x00000002