donut-decomp/asm/libMobiclip/VX2_DecodeBlock8x4.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 VX2CommandSkip18x4__FR14VX2DecoderData
VX2CommandSkip18x4__FR14VX2DecoderData:
2022-10-16 16:05:58 +00:00
/* 8015FA40 0015B880 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8015FA44 0015B884 7C 08 02 A6 */ mflr r0
/* 8015FA48 0015B888 90 01 00 14 */ stw r0, 0x14(r1)
/* 8015FA4C 0015B88C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8015FA50 0015B890 93 C1 00 08 */ stw r30, 0x8(r1)
/* 8015FA54 0015B894 7C 7E 1B 78 */ mr r30, r3
/* 8015FA58 0015B898 81 43 08 B4 */ lwz r10, 0x8b4(r3)
/* 8015FA5C 0015B89C A8 E3 0A 24 */ lha r7, 0xa24(r3)
/* 8015FA60 0015B8A0 A9 23 0A 26 */ lha r9, 0xa26(r3)
/* 8015FA64 0015B8A4 55 40 08 3C */ slwi r0, r10, 1
/* 8015FA68 0015B8A8 7F E7 02 14 */ add r31, r7, r0
/* 8015FA6C 0015B8AC 7C E8 0E 70 */ srawi r8, r7, 1
/* 8015FA70 0015B8B0 80 A3 00 00 */ lwz r5, 0x0(r3)
/* 8015FA74 0015B8B4 7D 26 0E 70 */ srawi r6, r9, 1
/* 8015FA78 0015B8B8 57 E4 07 7E */ clrlwi r4, r31, 29
/* 8015FA7C 0015B8BC 55 20 1F 38 */ rlwinm r0, r9, 3, 28, 28
/* 8015FA80 0015B8C0 7C 04 02 14 */ add r0, r4, r0
/* 8015FA84 0015B8C4 80 83 00 6C */ lwz r4, 0x6c(r3)
/* 8015FA88 0015B8C8 B0 E3 0A 20 */ sth r7, 0xa20(r3)
/* 8015FA8C 0015B8CC 7C C6 29 D6 */ mullw r6, r6, r5
/* 8015FA90 0015B8D0 7C E4 52 14 */ add r7, r4, r10
/* 8015FA94 0015B8D4 80 83 00 68 */ lwz r4, 0x68(r3)
/* 8015FA98 0015B8D8 54 00 10 3A */ slwi r0, r0, 2
/* 8015FA9C 0015B8DC B1 23 0A 22 */ sth r9, 0xa22(r3)
/* 8015FAA0 0015B8E0 7C 84 52 14 */ add r4, r4, r10
/* 8015FAA4 0015B8E4 7C 7E 02 14 */ add r3, r30, r0
/* 8015FAA8 0015B8E8 7C 08 3A 14 */ add r0, r8, r7
/* 8015FAAC 0015B8EC 81 83 0C 28 */ lwz r12, 0xc28(r3)
/* 8015FAB0 0015B8F0 7C 66 02 14 */ add r3, r6, r0
/* 8015FAB4 0015B8F4 7D 89 03 A6 */ mtctr r12
/* 8015FAB8 0015B8F8 4E 80 04 21 */ bctrl
/* 8015FABC 0015B8FC 80 7E 00 00 */ lwz r3, 0x0(r30)
/* 8015FAC0 0015B900 57 E4 FF 7E */ extrwi r4, r31, 3, 28
/* 8015FAC4 0015B904 A8 1E 0A 20 */ lha r0, 0xa20(r30)
/* 8015FAC8 0015B908 7C 65 0E 70 */ srawi r5, r3, 1
/* 8015FACC 0015B90C A8 7E 0A 22 */ lha r3, 0xa22(r30)
/* 8015FAD0 0015B910 7C 07 16 70 */ srawi r7, r0, 2
/* 8015FAD4 0015B914 81 1E 08 B8 */ lwz r8, 0x8b8(r30)
/* 8015FAD8 0015B918 54 60 17 38 */ rlwinm r0, r3, 2, 28, 28
/* 8015FADC 0015B91C 7C 63 16 70 */ srawi r3, r3, 2
/* 8015FAE0 0015B920 7C 04 02 14 */ add r0, r4, r0
/* 8015FAE4 0015B924 80 9E 00 84 */ lwz r4, 0x84(r30)
/* 8015FAE8 0015B928 54 06 10 3A */ slwi r6, r0, 2
/* 8015FAEC 0015B92C 80 1E 00 80 */ lwz r0, 0x80(r30)
/* 8015FAF0 0015B930 7F FE 32 14 */ add r31, r30, r6
/* 8015FAF4 0015B934 7C 84 42 14 */ add r4, r4, r8
/* 8015FAF8 0015B938 7C C3 29 D6 */ mullw r6, r3, r5
/* 8015FAFC 0015B93C 81 9F 0D A8 */ lwz r12, 0xda8(r31)
/* 8015FB00 0015B940 7C 67 22 14 */ add r3, r7, r4
/* 8015FB04 0015B944 7C 80 42 14 */ add r4, r0, r8
/* 8015FB08 0015B948 7C 66 1A 14 */ add r3, r6, r3
/* 8015FB0C 0015B94C 7D 89 03 A6 */ mtctr r12
/* 8015FB10 0015B950 4E 80 04 21 */ bctrl
/* 8015FB14 0015B954 80 1E 00 00 */ lwz r0, 0x0(r30)
/* 8015FB18 0015B958 A8 7E 0A 20 */ lha r3, 0xa20(r30)
/* 8015FB1C 0015B95C 7C 05 0E 70 */ srawi r5, r0, 1
/* 8015FB20 0015B960 A8 1E 0A 22 */ lha r0, 0xa22(r30)
/* 8015FB24 0015B964 7C 66 16 70 */ srawi r6, r3, 2
/* 8015FB28 0015B968 80 FE 08 B8 */ lwz r7, 0x8b8(r30)
/* 8015FB2C 0015B96C 7C 00 16 70 */ srawi r0, r0, 2
/* 8015FB30 0015B970 80 7E 00 9C */ lwz r3, 0x9c(r30)
/* 8015FB34 0015B974 7C 80 29 D6 */ mullw r4, r0, r5
/* 8015FB38 0015B978 80 1E 00 98 */ lwz r0, 0x98(r30)
/* 8015FB3C 0015B97C 7C 63 3A 14 */ add r3, r3, r7
/* 8015FB40 0015B980 81 9F 0D A8 */ lwz r12, 0xda8(r31)
/* 8015FB44 0015B984 7C 66 1A 14 */ add r3, r6, r3
/* 8015FB48 0015B988 7C 64 1A 14 */ add r3, r4, r3
/* 8015FB4C 0015B98C 7C 80 3A 14 */ add r4, r0, r7
/* 8015FB50 0015B990 7D 89 03 A6 */ mtctr r12
/* 8015FB54 0015B994 4E 80 04 21 */ bctrl
/* 8015FB58 0015B998 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8015FB5C 0015B99C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8015FB60 0015B9A0 83 C1 00 08 */ lwz r30, 0x8(r1)
/* 8015FB64 0015B9A4 7C 08 03 A6 */ mtlr r0
/* 8015FB68 0015B9A8 38 21 00 10 */ addi r1, r1, 0x10
/* 8015FB6C 0015B9AC 4E 80 00 20 */ blr
2022-10-16 16:31:36 +00:00
.global VX2CommandBack18x4__FR14VX2DecoderData
VX2CommandBack18x4__FR14VX2DecoderData:
2022-10-16 16:05:58 +00:00
/* 8015FB70 0015B9B0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8015FB74 0015B9B4 7C 08 02 A6 */ mflr r0
2022-10-16 16:31:36 +00:00
/* 8015FB78 0015B9B8 3C 80 80 45 */ lis r4, VX2GolombCodeSigned@ha
/* 8015FB7C 0015B9BC 3C A0 80 45 */ lis r5, VX2GolombCodeSignedSize@ha
2022-10-16 16:05:58 +00:00
/* 8015FB80 0015B9C0 90 01 00 14 */ stw r0, 0x14(r1)
2022-10-16 16:31:36 +00:00
/* 8015FB84 0015B9C4 38 84 85 D8 */ addi r4, r4, VX2GolombCodeSigned@l
/* 8015FB88 0015B9C8 38 A5 05 D8 */ addi r5, r5, VX2GolombCodeSignedSize@l
2022-10-16 16:05:58 +00:00
/* 8015FB8C 0015B9CC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8015FB90 0015B9D0 93 C1 00 08 */ stw r30, 0x8(r1)
/* 8015FB94 0015B9D4 7C 7E 1B 78 */ mr r30, r3
/* 8015FB98 0015B9D8 81 03 0A 08 */ lwz r8, 0xa08(r3)
/* 8015FB9C 0015B9DC 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 8015FBA0 0015B9E0 55 06 7C 7E */ srwi r6, r8, 17
/* 8015FBA4 0015B9E4 7D 24 30 AE */ lbzx r9, r4, r6
/* 8015FBA8 0015B9E8 7D 29 07 74 */ extsb r9, r9
/* 8015FBAC 0015B9EC 55 24 10 3A */ slwi r4, r9, 2
/* 8015FBB0 0015B9F0 7C 85 22 14 */ add r4, r5, r4
/* 8015FBB4 0015B9F4 80 84 01 FC */ lwz r4, 0x1fc(r4)
/* 8015FBB8 0015B9F8 7C E4 00 51 */ subf. r7, r4, r0
/* 8015FBBC 0015B9FC 7D 08 20 30 */ slw r8, r8, r4
/* 8015FBC0 0015BA00 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 8015FBC4 0015BA04 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 8015FBC8 0015BA08 40 80 00 2C */ bge lbl_8015FBF4
/* 8015FBCC 0015BA0C 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 8015FBD0 0015BA10 7C C0 26 2C */ lhbrx r6, r0, r4
/* 8015FBD4 0015BA14 7C A7 00 D0 */ neg r5, r7
/* 8015FBD8 0015BA18 38 84 00 02 */ addi r4, r4, 0x2
/* 8015FBDC 0015BA1C 38 07 00 10 */ addi r0, r7, 0x10
/* 8015FBE0 0015BA20 7C C5 28 30 */ slw r5, r6, r5
/* 8015FBE4 0015BA24 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 8015FBE8 0015BA28 7D 04 2B 78 */ or r4, r8, r5
/* 8015FBEC 0015BA2C 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 8015FBF0 0015BA30 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_8015FBF4
lbl_8015FBF4:
/* 8015FBF4 0015BA34 A8 03 0A 24 */ lha r0, 0xa24(r3)
2022-10-16 16:31:36 +00:00
/* 8015FBF8 0015BA38 3C 80 80 45 */ lis r4, VX2GolombCodeSigned@ha
2022-10-16 16:05:58 +00:00
/* 8015FBFC 0015BA3C 80 C3 0A 08 */ lwz r6, 0xa08(r3)
2022-10-16 16:31:36 +00:00
/* 8015FC00 0015BA40 3C A0 80 45 */ lis r5, VX2GolombCodeSignedSize@ha
2022-10-16 16:05:58 +00:00
/* 8015FC04 0015BA44 7C 00 4A 14 */ add r0, r0, r9
/* 8015FC08 0015BA48 B0 03 0A 20 */ sth r0, 0xa20(r3)
/* 8015FC0C 0015BA4C 54 C0 7C 7E */ srwi r0, r6, 17
2022-10-16 16:31:36 +00:00
/* 8015FC10 0015BA50 38 84 85 D8 */ addi r4, r4, VX2GolombCodeSigned@l
2022-10-16 16:05:58 +00:00
/* 8015FC14 0015BA54 7D 24 00 AE */ lbzx r9, r4, r0
2022-10-16 16:31:36 +00:00
/* 8015FC18 0015BA58 38 A5 05 D8 */ addi r5, r5, VX2GolombCodeSignedSize@l
2022-10-16 16:05:58 +00:00
/* 8015FC1C 0015BA5C 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 8015FC20 0015BA60 7D 29 07 74 */ extsb r9, r9
/* 8015FC24 0015BA64 55 24 10 3A */ slwi r4, r9, 2
/* 8015FC28 0015BA68 7C 85 22 14 */ add r4, r5, r4
/* 8015FC2C 0015BA6C 80 84 01 FC */ lwz r4, 0x1fc(r4)
/* 8015FC30 0015BA70 7C E4 00 51 */ subf. r7, r4, r0
/* 8015FC34 0015BA74 7C C8 20 30 */ slw r8, r6, r4
/* 8015FC38 0015BA78 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 8015FC3C 0015BA7C 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 8015FC40 0015BA80 40 80 00 2C */ bge lbl_8015FC6C
/* 8015FC44 0015BA84 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 8015FC48 0015BA88 7C C0 26 2C */ lhbrx r6, r0, r4
/* 8015FC4C 0015BA8C 7C A7 00 D0 */ neg r5, r7
/* 8015FC50 0015BA90 38 84 00 02 */ addi r4, r4, 0x2
/* 8015FC54 0015BA94 38 07 00 10 */ addi r0, r7, 0x10
/* 8015FC58 0015BA98 7C C5 28 30 */ slw r5, r6, r5
/* 8015FC5C 0015BA9C 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 8015FC60 0015BAA0 7D 04 2B 78 */ or r4, r8, r5
/* 8015FC64 0015BAA4 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 8015FC68 0015BAA8 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_8015FC6C
lbl_8015FC6C:
/* 8015FC6C 0015BAAC A8 03 0A 26 */ lha r0, 0xa26(r3)
/* 8015FC70 0015BAB0 A8 83 0A 20 */ lha r4, 0xa20(r3)
/* 8015FC74 0015BAB4 7D 20 4A 14 */ add r9, r0, r9
/* 8015FC78 0015BAB8 81 43 08 B4 */ lwz r10, 0x8b4(r3)
/* 8015FC7C 0015BABC 80 A3 00 00 */ lwz r5, 0x0(r3)
/* 8015FC80 0015BAC0 7D 26 07 34 */ extsh r6, r9
/* 8015FC84 0015BAC4 55 40 08 3C */ slwi r0, r10, 1
/* 8015FC88 0015BAC8 7C 88 0E 70 */ srawi r8, r4, 1
/* 8015FC8C 0015BACC 7F E4 02 14 */ add r31, r4, r0
/* 8015FC90 0015BAD0 7C C6 0E 70 */ srawi r6, r6, 1
/* 8015FC94 0015BAD4 80 E3 00 6C */ lwz r7, 0x6c(r3)
/* 8015FC98 0015BAD8 55 20 1F 38 */ rlwinm r0, r9, 3, 28, 28
/* 8015FC9C 0015BADC 57 E4 07 7E */ clrlwi r4, r31, 29
/* 8015FCA0 0015BAE0 B1 23 0A 22 */ sth r9, 0xa22(r3)
/* 8015FCA4 0015BAE4 7C 04 02 14 */ add r0, r4, r0
/* 8015FCA8 0015BAE8 80 9E 00 68 */ lwz r4, 0x68(r30)
/* 8015FCAC 0015BAEC 54 00 10 3A */ slwi r0, r0, 2
/* 8015FCB0 0015BAF0 7C E7 52 14 */ add r7, r7, r10
/* 8015FCB4 0015BAF4 7C 7E 02 14 */ add r3, r30, r0
/* 8015FCB8 0015BAF8 7C 84 52 14 */ add r4, r4, r10
/* 8015FCBC 0015BAFC 7C C6 29 D6 */ mullw r6, r6, r5
/* 8015FCC0 0015BB00 81 83 0C 28 */ lwz r12, 0xc28(r3)
/* 8015FCC4 0015BB04 7C 08 3A 14 */ add r0, r8, r7
/* 8015FCC8 0015BB08 7C 66 02 14 */ add r3, r6, r0
/* 8015FCCC 0015BB0C 7D 89 03 A6 */ mtctr r12
/* 8015FCD0 0015BB10 4E 80 04 21 */ bctrl
/* 8015FCD4 0015BB14 80 7E 00 00 */ lwz r3, 0x0(r30)
/* 8015FCD8 0015BB18 57 E4 FF 7E */ extrwi r4, r31, 3, 28
/* 8015FCDC 0015BB1C A8 1E 0A 20 */ lha r0, 0xa20(r30)
/* 8015FCE0 0015BB20 7C 65 0E 70 */ srawi r5, r3, 1
/* 8015FCE4 0015BB24 A8 7E 0A 22 */ lha r3, 0xa22(r30)
/* 8015FCE8 0015BB28 7C 07 16 70 */ srawi r7, r0, 2
/* 8015FCEC 0015BB2C 81 1E 08 B8 */ lwz r8, 0x8b8(r30)
/* 8015FCF0 0015BB30 54 60 17 38 */ rlwinm r0, r3, 2, 28, 28
/* 8015FCF4 0015BB34 7C 63 16 70 */ srawi r3, r3, 2
/* 8015FCF8 0015BB38 7C 04 02 14 */ add r0, r4, r0
/* 8015FCFC 0015BB3C 80 9E 00 84 */ lwz r4, 0x84(r30)
/* 8015FD00 0015BB40 54 06 10 3A */ slwi r6, r0, 2
/* 8015FD04 0015BB44 80 1E 00 80 */ lwz r0, 0x80(r30)
/* 8015FD08 0015BB48 7F FE 32 14 */ add r31, r30, r6
/* 8015FD0C 0015BB4C 7C 84 42 14 */ add r4, r4, r8
/* 8015FD10 0015BB50 7C C3 29 D6 */ mullw r6, r3, r5
/* 8015FD14 0015BB54 81 9F 0D A8 */ lwz r12, 0xda8(r31)
/* 8015FD18 0015BB58 7C 67 22 14 */ add r3, r7, r4
/* 8015FD1C 0015BB5C 7C 80 42 14 */ add r4, r0, r8
/* 8015FD20 0015BB60 7C 66 1A 14 */ add r3, r6, r3
/* 8015FD24 0015BB64 7D 89 03 A6 */ mtctr r12
/* 8015FD28 0015BB68 4E 80 04 21 */ bctrl
/* 8015FD2C 0015BB6C 80 1E 00 00 */ lwz r0, 0x0(r30)
/* 8015FD30 0015BB70 A8 7E 0A 20 */ lha r3, 0xa20(r30)
/* 8015FD34 0015BB74 7C 05 0E 70 */ srawi r5, r0, 1
/* 8015FD38 0015BB78 A8 1E 0A 22 */ lha r0, 0xa22(r30)
/* 8015FD3C 0015BB7C 7C 66 16 70 */ srawi r6, r3, 2
/* 8015FD40 0015BB80 80 FE 08 B8 */ lwz r7, 0x8b8(r30)
/* 8015FD44 0015BB84 7C 00 16 70 */ srawi r0, r0, 2
/* 8015FD48 0015BB88 80 7E 00 9C */ lwz r3, 0x9c(r30)
/* 8015FD4C 0015BB8C 7C 80 29 D6 */ mullw r4, r0, r5
/* 8015FD50 0015BB90 80 1E 00 98 */ lwz r0, 0x98(r30)
/* 8015FD54 0015BB94 7C 63 3A 14 */ add r3, r3, r7
/* 8015FD58 0015BB98 81 9F 0D A8 */ lwz r12, 0xda8(r31)
/* 8015FD5C 0015BB9C 7C 66 1A 14 */ add r3, r6, r3
/* 8015FD60 0015BBA0 7C 64 1A 14 */ add r3, r4, r3
/* 8015FD64 0015BBA4 7C 80 3A 14 */ add r4, r0, r7
/* 8015FD68 0015BBA8 7D 89 03 A6 */ mtctr r12
/* 8015FD6C 0015BBAC 4E 80 04 21 */ bctrl
/* 8015FD70 0015BBB0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8015FD74 0015BBB4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8015FD78 0015BBB8 83 C1 00 08 */ lwz r30, 0x8(r1)
/* 8015FD7C 0015BBBC 7C 08 03 A6 */ mtlr r0
/* 8015FD80 0015BBC0 38 21 00 10 */ addi r1, r1, 0x10
/* 8015FD84 0015BBC4 4E 80 00 20 */ blr
/* 8015FD88 0015BBC8 00 00 00 00 */ .4byte 0x00000000
/* 8015FD8C 0015BBCC 00 00 00 00 */ .4byte 0x00000000
2022-10-16 16:31:36 +00:00
.global VX2CommandBack28x4__FR14VX2DecoderData
VX2CommandBack28x4__FR14VX2DecoderData:
2022-10-16 16:05:58 +00:00
/* 8015FD90 0015BBD0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8015FD94 0015BBD4 7C 08 02 A6 */ mflr r0
2022-10-16 16:31:36 +00:00
/* 8015FD98 0015BBD8 3C 80 80 45 */ lis r4, VX2GolombCodeSigned@ha
/* 8015FD9C 0015BBDC 3C A0 80 45 */ lis r5, VX2GolombCodeSignedSize@ha
2022-10-16 16:05:58 +00:00
/* 8015FDA0 0015BBE0 90 01 00 14 */ stw r0, 0x14(r1)
2022-10-16 16:31:36 +00:00
/* 8015FDA4 0015BBE4 38 84 85 D8 */ addi r4, r4, VX2GolombCodeSigned@l
/* 8015FDA8 0015BBE8 38 A5 05 D8 */ addi r5, r5, VX2GolombCodeSignedSize@l
2022-10-16 16:05:58 +00:00
/* 8015FDAC 0015BBEC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8015FDB0 0015BBF0 93 C1 00 08 */ stw r30, 0x8(r1)
/* 8015FDB4 0015BBF4 7C 7E 1B 78 */ mr r30, r3
/* 8015FDB8 0015BBF8 81 03 0A 08 */ lwz r8, 0xa08(r3)
/* 8015FDBC 0015BBFC 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 8015FDC0 0015BC00 55 06 7C 7E */ srwi r6, r8, 17
/* 8015FDC4 0015BC04 7D 24 30 AE */ lbzx r9, r4, r6
/* 8015FDC8 0015BC08 7D 29 07 74 */ extsb r9, r9
/* 8015FDCC 0015BC0C 55 24 10 3A */ slwi r4, r9, 2
/* 8015FDD0 0015BC10 7C 85 22 14 */ add r4, r5, r4
/* 8015FDD4 0015BC14 80 84 01 FC */ lwz r4, 0x1fc(r4)
/* 8015FDD8 0015BC18 7C E4 00 51 */ subf. r7, r4, r0
/* 8015FDDC 0015BC1C 7D 08 20 30 */ slw r8, r8, r4
/* 8015FDE0 0015BC20 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 8015FDE4 0015BC24 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 8015FDE8 0015BC28 40 80 00 2C */ bge lbl_8015FE14
/* 8015FDEC 0015BC2C 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 8015FDF0 0015BC30 7C C0 26 2C */ lhbrx r6, r0, r4
/* 8015FDF4 0015BC34 7C A7 00 D0 */ neg r5, r7
/* 8015FDF8 0015BC38 38 84 00 02 */ addi r4, r4, 0x2
/* 8015FDFC 0015BC3C 38 07 00 10 */ addi r0, r7, 0x10
/* 8015FE00 0015BC40 7C C5 28 30 */ slw r5, r6, r5
/* 8015FE04 0015BC44 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 8015FE08 0015BC48 7D 04 2B 78 */ or r4, r8, r5
/* 8015FE0C 0015BC4C 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 8015FE10 0015BC50 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_8015FE14
lbl_8015FE14:
/* 8015FE14 0015BC54 A8 03 0A 24 */ lha r0, 0xa24(r3)
2022-10-16 16:31:36 +00:00
/* 8015FE18 0015BC58 3C 80 80 45 */ lis r4, VX2GolombCodeSigned@ha
2022-10-16 16:05:58 +00:00
/* 8015FE1C 0015BC5C 80 C3 0A 08 */ lwz r6, 0xa08(r3)
2022-10-16 16:31:36 +00:00
/* 8015FE20 0015BC60 3C A0 80 45 */ lis r5, VX2GolombCodeSignedSize@ha
2022-10-16 16:05:58 +00:00
/* 8015FE24 0015BC64 7C 00 4A 14 */ add r0, r0, r9
/* 8015FE28 0015BC68 B0 03 0A 20 */ sth r0, 0xa20(r3)
/* 8015FE2C 0015BC6C 54 C0 7C 7E */ srwi r0, r6, 17
2022-10-16 16:31:36 +00:00
/* 8015FE30 0015BC70 38 84 85 D8 */ addi r4, r4, VX2GolombCodeSigned@l
2022-10-16 16:05:58 +00:00
/* 8015FE34 0015BC74 7D 24 00 AE */ lbzx r9, r4, r0
2022-10-16 16:31:36 +00:00
/* 8015FE38 0015BC78 38 A5 05 D8 */ addi r5, r5, VX2GolombCodeSignedSize@l
2022-10-16 16:05:58 +00:00
/* 8015FE3C 0015BC7C 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 8015FE40 0015BC80 7D 29 07 74 */ extsb r9, r9
/* 8015FE44 0015BC84 55 24 10 3A */ slwi r4, r9, 2
/* 8015FE48 0015BC88 7C 85 22 14 */ add r4, r5, r4
/* 8015FE4C 0015BC8C 80 84 01 FC */ lwz r4, 0x1fc(r4)
/* 8015FE50 0015BC90 7C E4 00 51 */ subf. r7, r4, r0
/* 8015FE54 0015BC94 7C C8 20 30 */ slw r8, r6, r4
/* 8015FE58 0015BC98 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 8015FE5C 0015BC9C 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 8015FE60 0015BCA0 40 80 00 2C */ bge lbl_8015FE8C
/* 8015FE64 0015BCA4 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 8015FE68 0015BCA8 7C C0 26 2C */ lhbrx r6, r0, r4
/* 8015FE6C 0015BCAC 7C A7 00 D0 */ neg r5, r7
/* 8015FE70 0015BCB0 38 84 00 02 */ addi r4, r4, 0x2
/* 8015FE74 0015BCB4 38 07 00 10 */ addi r0, r7, 0x10
/* 8015FE78 0015BCB8 7C C5 28 30 */ slw r5, r6, r5
/* 8015FE7C 0015BCBC 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 8015FE80 0015BCC0 7D 04 2B 78 */ or r4, r8, r5
/* 8015FE84 0015BCC4 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 8015FE88 0015BCC8 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_8015FE8C
lbl_8015FE8C:
/* 8015FE8C 0015BCCC A8 03 0A 26 */ lha r0, 0xa26(r3)
/* 8015FE90 0015BCD0 A8 83 0A 20 */ lha r4, 0xa20(r3)
/* 8015FE94 0015BCD4 7D 20 4A 14 */ add r9, r0, r9
/* 8015FE98 0015BCD8 81 43 08 B4 */ lwz r10, 0x8b4(r3)
/* 8015FE9C 0015BCDC 80 A3 00 00 */ lwz r5, 0x0(r3)
/* 8015FEA0 0015BCE0 7D 26 07 34 */ extsh r6, r9
/* 8015FEA4 0015BCE4 55 40 08 3C */ slwi r0, r10, 1
/* 8015FEA8 0015BCE8 7C 88 0E 70 */ srawi r8, r4, 1
/* 8015FEAC 0015BCEC 7F E4 02 14 */ add r31, r4, r0
/* 8015FEB0 0015BCF0 7C C6 0E 70 */ srawi r6, r6, 1
/* 8015FEB4 0015BCF4 80 E3 00 70 */ lwz r7, 0x70(r3)
/* 8015FEB8 0015BCF8 55 20 1F 38 */ rlwinm r0, r9, 3, 28, 28
/* 8015FEBC 0015BCFC 57 E4 07 7E */ clrlwi r4, r31, 29
/* 8015FEC0 0015BD00 B1 23 0A 22 */ sth r9, 0xa22(r3)
/* 8015FEC4 0015BD04 7C 04 02 14 */ add r0, r4, r0
/* 8015FEC8 0015BD08 80 9E 00 68 */ lwz r4, 0x68(r30)
/* 8015FECC 0015BD0C 54 00 10 3A */ slwi r0, r0, 2
/* 8015FED0 0015BD10 7C E7 52 14 */ add r7, r7, r10
/* 8015FED4 0015BD14 7C 7E 02 14 */ add r3, r30, r0
/* 8015FED8 0015BD18 7C 84 52 14 */ add r4, r4, r10
/* 8015FEDC 0015BD1C 7C C6 29 D6 */ mullw r6, r6, r5
/* 8015FEE0 0015BD20 81 83 0C 28 */ lwz r12, 0xc28(r3)
/* 8015FEE4 0015BD24 7C 08 3A 14 */ add r0, r8, r7
/* 8015FEE8 0015BD28 7C 66 02 14 */ add r3, r6, r0
/* 8015FEEC 0015BD2C 7D 89 03 A6 */ mtctr r12
/* 8015FEF0 0015BD30 4E 80 04 21 */ bctrl
/* 8015FEF4 0015BD34 80 7E 00 00 */ lwz r3, 0x0(r30)
/* 8015FEF8 0015BD38 57 E4 FF 7E */ extrwi r4, r31, 3, 28
/* 8015FEFC 0015BD3C A8 1E 0A 20 */ lha r0, 0xa20(r30)
/* 8015FF00 0015BD40 7C 65 0E 70 */ srawi r5, r3, 1
/* 8015FF04 0015BD44 A8 7E 0A 22 */ lha r3, 0xa22(r30)
/* 8015FF08 0015BD48 7C 07 16 70 */ srawi r7, r0, 2
/* 8015FF0C 0015BD4C 81 1E 08 B8 */ lwz r8, 0x8b8(r30)
/* 8015FF10 0015BD50 54 60 17 38 */ rlwinm r0, r3, 2, 28, 28
/* 8015FF14 0015BD54 7C 63 16 70 */ srawi r3, r3, 2
/* 8015FF18 0015BD58 7C 04 02 14 */ add r0, r4, r0
/* 8015FF1C 0015BD5C 80 9E 00 88 */ lwz r4, 0x88(r30)
/* 8015FF20 0015BD60 54 06 10 3A */ slwi r6, r0, 2
/* 8015FF24 0015BD64 80 1E 00 80 */ lwz r0, 0x80(r30)
/* 8015FF28 0015BD68 7F FE 32 14 */ add r31, r30, r6
/* 8015FF2C 0015BD6C 7C 84 42 14 */ add r4, r4, r8
/* 8015FF30 0015BD70 7C C3 29 D6 */ mullw r6, r3, r5
/* 8015FF34 0015BD74 81 9F 0D A8 */ lwz r12, 0xda8(r31)
/* 8015FF38 0015BD78 7C 67 22 14 */ add r3, r7, r4
/* 8015FF3C 0015BD7C 7C 80 42 14 */ add r4, r0, r8
/* 8015FF40 0015BD80 7C 66 1A 14 */ add r3, r6, r3
/* 8015FF44 0015BD84 7D 89 03 A6 */ mtctr r12
/* 8015FF48 0015BD88 4E 80 04 21 */ bctrl
/* 8015FF4C 0015BD8C 80 1E 00 00 */ lwz r0, 0x0(r30)
/* 8015FF50 0015BD90 A8 7E 0A 20 */ lha r3, 0xa20(r30)
/* 8015FF54 0015BD94 7C 05 0E 70 */ srawi r5, r0, 1
/* 8015FF58 0015BD98 A8 1E 0A 22 */ lha r0, 0xa22(r30)
/* 8015FF5C 0015BD9C 7C 66 16 70 */ srawi r6, r3, 2
/* 8015FF60 0015BDA0 80 FE 08 B8 */ lwz r7, 0x8b8(r30)
/* 8015FF64 0015BDA4 7C 00 16 70 */ srawi r0, r0, 2
/* 8015FF68 0015BDA8 80 7E 00 A0 */ lwz r3, 0xa0(r30)
/* 8015FF6C 0015BDAC 7C 80 29 D6 */ mullw r4, r0, r5
/* 8015FF70 0015BDB0 80 1E 00 98 */ lwz r0, 0x98(r30)
/* 8015FF74 0015BDB4 7C 63 3A 14 */ add r3, r3, r7
/* 8015FF78 0015BDB8 81 9F 0D A8 */ lwz r12, 0xda8(r31)
/* 8015FF7C 0015BDBC 7C 66 1A 14 */ add r3, r6, r3
/* 8015FF80 0015BDC0 7C 64 1A 14 */ add r3, r4, r3
/* 8015FF84 0015BDC4 7C 80 3A 14 */ add r4, r0, r7
/* 8015FF88 0015BDC8 7D 89 03 A6 */ mtctr r12
/* 8015FF8C 0015BDCC 4E 80 04 21 */ bctrl
/* 8015FF90 0015BDD0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8015FF94 0015BDD4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8015FF98 0015BDD8 83 C1 00 08 */ lwz r30, 0x8(r1)
/* 8015FF9C 0015BDDC 7C 08 03 A6 */ mtlr r0
/* 8015FFA0 0015BDE0 38 21 00 10 */ addi r1, r1, 0x10
/* 8015FFA4 0015BDE4 4E 80 00 20 */ blr
/* 8015FFA8 0015BDE8 00 00 00 00 */ .4byte 0x00000000
/* 8015FFAC 0015BDEC 00 00 00 00 */ .4byte 0x00000000
2022-10-16 16:31:36 +00:00
.global VX2CommandBack38x4__FR14VX2DecoderData
VX2CommandBack38x4__FR14VX2DecoderData:
2022-10-16 16:05:58 +00:00
/* 8015FFB0 0015BDF0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8015FFB4 0015BDF4 7C 08 02 A6 */ mflr r0
2022-10-16 16:31:36 +00:00
/* 8015FFB8 0015BDF8 3C 80 80 45 */ lis r4, VX2GolombCodeSigned@ha
/* 8015FFBC 0015BDFC 3C A0 80 45 */ lis r5, VX2GolombCodeSignedSize@ha
2022-10-16 16:05:58 +00:00
/* 8015FFC0 0015BE00 90 01 00 14 */ stw r0, 0x14(r1)
2022-10-16 16:31:36 +00:00
/* 8015FFC4 0015BE04 38 84 85 D8 */ addi r4, r4, VX2GolombCodeSigned@l
/* 8015FFC8 0015BE08 38 A5 05 D8 */ addi r5, r5, VX2GolombCodeSignedSize@l
2022-10-16 16:05:58 +00:00
/* 8015FFCC 0015BE0C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8015FFD0 0015BE10 93 C1 00 08 */ stw r30, 0x8(r1)
/* 8015FFD4 0015BE14 7C 7E 1B 78 */ mr r30, r3
/* 8015FFD8 0015BE18 81 03 0A 08 */ lwz r8, 0xa08(r3)
/* 8015FFDC 0015BE1C 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 8015FFE0 0015BE20 55 06 7C 7E */ srwi r6, r8, 17
/* 8015FFE4 0015BE24 7D 24 30 AE */ lbzx r9, r4, r6
/* 8015FFE8 0015BE28 7D 29 07 74 */ extsb r9, r9
/* 8015FFEC 0015BE2C 55 24 10 3A */ slwi r4, r9, 2
/* 8015FFF0 0015BE30 7C 85 22 14 */ add r4, r5, r4
/* 8015FFF4 0015BE34 80 84 01 FC */ lwz r4, 0x1fc(r4)
/* 8015FFF8 0015BE38 7C E4 00 51 */ subf. r7, r4, r0
/* 8015FFFC 0015BE3C 7D 08 20 30 */ slw r8, r8, r4
/* 80160000 0015BE40 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 80160004 0015BE44 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 80160008 0015BE48 40 80 00 2C */ bge lbl_80160034
/* 8016000C 0015BE4C 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 80160010 0015BE50 7C C0 26 2C */ lhbrx r6, r0, r4
/* 80160014 0015BE54 7C A7 00 D0 */ neg r5, r7
/* 80160018 0015BE58 38 84 00 02 */ addi r4, r4, 0x2
/* 8016001C 0015BE5C 38 07 00 10 */ addi r0, r7, 0x10
/* 80160020 0015BE60 7C C5 28 30 */ slw r5, r6, r5
/* 80160024 0015BE64 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 80160028 0015BE68 7D 04 2B 78 */ or r4, r8, r5
/* 8016002C 0015BE6C 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 80160030 0015BE70 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_80160034
lbl_80160034:
/* 80160034 0015BE74 A8 03 0A 24 */ lha r0, 0xa24(r3)
2022-10-16 16:31:36 +00:00
/* 80160038 0015BE78 3C 80 80 45 */ lis r4, VX2GolombCodeSigned@ha
2022-10-16 16:05:58 +00:00
/* 8016003C 0015BE7C 80 C3 0A 08 */ lwz r6, 0xa08(r3)
2022-10-16 16:31:36 +00:00
/* 80160040 0015BE80 3C A0 80 45 */ lis r5, VX2GolombCodeSignedSize@ha
2022-10-16 16:05:58 +00:00
/* 80160044 0015BE84 7C 00 4A 14 */ add r0, r0, r9
/* 80160048 0015BE88 B0 03 0A 20 */ sth r0, 0xa20(r3)
/* 8016004C 0015BE8C 54 C0 7C 7E */ srwi r0, r6, 17
2022-10-16 16:31:36 +00:00
/* 80160050 0015BE90 38 84 85 D8 */ addi r4, r4, VX2GolombCodeSigned@l
2022-10-16 16:05:58 +00:00
/* 80160054 0015BE94 7D 24 00 AE */ lbzx r9, r4, r0
2022-10-16 16:31:36 +00:00
/* 80160058 0015BE98 38 A5 05 D8 */ addi r5, r5, VX2GolombCodeSignedSize@l
2022-10-16 16:05:58 +00:00
/* 8016005C 0015BE9C 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 80160060 0015BEA0 7D 29 07 74 */ extsb r9, r9
/* 80160064 0015BEA4 55 24 10 3A */ slwi r4, r9, 2
/* 80160068 0015BEA8 7C 85 22 14 */ add r4, r5, r4
/* 8016006C 0015BEAC 80 84 01 FC */ lwz r4, 0x1fc(r4)
/* 80160070 0015BEB0 7C E4 00 51 */ subf. r7, r4, r0
/* 80160074 0015BEB4 7C C8 20 30 */ slw r8, r6, r4
/* 80160078 0015BEB8 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 8016007C 0015BEBC 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 80160080 0015BEC0 40 80 00 2C */ bge lbl_801600AC
/* 80160084 0015BEC4 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 80160088 0015BEC8 7C C0 26 2C */ lhbrx r6, r0, r4
/* 8016008C 0015BECC 7C A7 00 D0 */ neg r5, r7
/* 80160090 0015BED0 38 84 00 02 */ addi r4, r4, 0x2
/* 80160094 0015BED4 38 07 00 10 */ addi r0, r7, 0x10
/* 80160098 0015BED8 7C C5 28 30 */ slw r5, r6, r5
/* 8016009C 0015BEDC 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 801600A0 0015BEE0 7D 04 2B 78 */ or r4, r8, r5
/* 801600A4 0015BEE4 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 801600A8 0015BEE8 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_801600AC
lbl_801600AC:
/* 801600AC 0015BEEC A8 03 0A 26 */ lha r0, 0xa26(r3)
/* 801600B0 0015BEF0 A8 83 0A 20 */ lha r4, 0xa20(r3)
/* 801600B4 0015BEF4 7D 20 4A 14 */ add r9, r0, r9
/* 801600B8 0015BEF8 81 43 08 B4 */ lwz r10, 0x8b4(r3)
/* 801600BC 0015BEFC 80 A3 00 00 */ lwz r5, 0x0(r3)
/* 801600C0 0015BF00 7D 26 07 34 */ extsh r6, r9
/* 801600C4 0015BF04 55 40 08 3C */ slwi r0, r10, 1
/* 801600C8 0015BF08 7C 88 0E 70 */ srawi r8, r4, 1
/* 801600CC 0015BF0C 7F E4 02 14 */ add r31, r4, r0
/* 801600D0 0015BF10 7C C6 0E 70 */ srawi r6, r6, 1
/* 801600D4 0015BF14 80 E3 00 74 */ lwz r7, 0x74(r3)
/* 801600D8 0015BF18 55 20 1F 38 */ rlwinm r0, r9, 3, 28, 28
/* 801600DC 0015BF1C 57 E4 07 7E */ clrlwi r4, r31, 29
/* 801600E0 0015BF20 B1 23 0A 22 */ sth r9, 0xa22(r3)
/* 801600E4 0015BF24 7C 04 02 14 */ add r0, r4, r0
/* 801600E8 0015BF28 80 9E 00 68 */ lwz r4, 0x68(r30)
/* 801600EC 0015BF2C 54 00 10 3A */ slwi r0, r0, 2
/* 801600F0 0015BF30 7C E7 52 14 */ add r7, r7, r10
/* 801600F4 0015BF34 7C 7E 02 14 */ add r3, r30, r0
/* 801600F8 0015BF38 7C 84 52 14 */ add r4, r4, r10
/* 801600FC 0015BF3C 7C C6 29 D6 */ mullw r6, r6, r5
/* 80160100 0015BF40 81 83 0C 28 */ lwz r12, 0xc28(r3)
/* 80160104 0015BF44 7C 08 3A 14 */ add r0, r8, r7
/* 80160108 0015BF48 7C 66 02 14 */ add r3, r6, r0
/* 8016010C 0015BF4C 7D 89 03 A6 */ mtctr r12
/* 80160110 0015BF50 4E 80 04 21 */ bctrl
/* 80160114 0015BF54 80 7E 00 00 */ lwz r3, 0x0(r30)
/* 80160118 0015BF58 57 E4 FF 7E */ extrwi r4, r31, 3, 28
/* 8016011C 0015BF5C A8 1E 0A 20 */ lha r0, 0xa20(r30)
/* 80160120 0015BF60 7C 65 0E 70 */ srawi r5, r3, 1
/* 80160124 0015BF64 A8 7E 0A 22 */ lha r3, 0xa22(r30)
/* 80160128 0015BF68 7C 07 16 70 */ srawi r7, r0, 2
/* 8016012C 0015BF6C 81 1E 08 B8 */ lwz r8, 0x8b8(r30)
/* 80160130 0015BF70 54 60 17 38 */ rlwinm r0, r3, 2, 28, 28
/* 80160134 0015BF74 7C 63 16 70 */ srawi r3, r3, 2
/* 80160138 0015BF78 7C 04 02 14 */ add r0, r4, r0
/* 8016013C 0015BF7C 80 9E 00 8C */ lwz r4, 0x8c(r30)
/* 80160140 0015BF80 54 06 10 3A */ slwi r6, r0, 2
/* 80160144 0015BF84 80 1E 00 80 */ lwz r0, 0x80(r30)
/* 80160148 0015BF88 7F FE 32 14 */ add r31, r30, r6
/* 8016014C 0015BF8C 7C 84 42 14 */ add r4, r4, r8
/* 80160150 0015BF90 7C C3 29 D6 */ mullw r6, r3, r5
/* 80160154 0015BF94 81 9F 0D A8 */ lwz r12, 0xda8(r31)
/* 80160158 0015BF98 7C 67 22 14 */ add r3, r7, r4
/* 8016015C 0015BF9C 7C 80 42 14 */ add r4, r0, r8
/* 80160160 0015BFA0 7C 66 1A 14 */ add r3, r6, r3
/* 80160164 0015BFA4 7D 89 03 A6 */ mtctr r12
/* 80160168 0015BFA8 4E 80 04 21 */ bctrl
/* 8016016C 0015BFAC 80 1E 00 00 */ lwz r0, 0x0(r30)
/* 80160170 0015BFB0 A8 7E 0A 20 */ lha r3, 0xa20(r30)
/* 80160174 0015BFB4 7C 05 0E 70 */ srawi r5, r0, 1
/* 80160178 0015BFB8 A8 1E 0A 22 */ lha r0, 0xa22(r30)
/* 8016017C 0015BFBC 7C 66 16 70 */ srawi r6, r3, 2
/* 80160180 0015BFC0 80 FE 08 B8 */ lwz r7, 0x8b8(r30)
/* 80160184 0015BFC4 7C 00 16 70 */ srawi r0, r0, 2
/* 80160188 0015BFC8 80 7E 00 A4 */ lwz r3, 0xa4(r30)
/* 8016018C 0015BFCC 7C 80 29 D6 */ mullw r4, r0, r5
/* 80160190 0015BFD0 80 1E 00 98 */ lwz r0, 0x98(r30)
/* 80160194 0015BFD4 7C 63 3A 14 */ add r3, r3, r7
/* 80160198 0015BFD8 81 9F 0D A8 */ lwz r12, 0xda8(r31)
/* 8016019C 0015BFDC 7C 66 1A 14 */ add r3, r6, r3
/* 801601A0 0015BFE0 7C 64 1A 14 */ add r3, r4, r3
/* 801601A4 0015BFE4 7C 80 3A 14 */ add r4, r0, r7
/* 801601A8 0015BFE8 7D 89 03 A6 */ mtctr r12
/* 801601AC 0015BFEC 4E 80 04 21 */ bctrl
/* 801601B0 0015BFF0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801601B4 0015BFF4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 801601B8 0015BFF8 83 C1 00 08 */ lwz r30, 0x8(r1)
/* 801601BC 0015BFFC 7C 08 03 A6 */ mtlr r0
/* 801601C0 0015C000 38 21 00 10 */ addi r1, r1, 0x10
/* 801601C4 0015C004 4E 80 00 20 */ blr
/* 801601C8 0015C008 00 00 00 00 */ .4byte 0x00000000
/* 801601CC 0015C00C 00 00 00 00 */ .4byte 0x00000000
2022-10-16 16:31:36 +00:00
.global VX2CommandBack48x4__FR14VX2DecoderData
VX2CommandBack48x4__FR14VX2DecoderData:
2022-10-16 16:05:58 +00:00
/* 801601D0 0015C010 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801601D4 0015C014 7C 08 02 A6 */ mflr r0
2022-10-16 16:31:36 +00:00
/* 801601D8 0015C018 3C 80 80 45 */ lis r4, VX2GolombCodeSigned@ha
/* 801601DC 0015C01C 3C A0 80 45 */ lis r5, VX2GolombCodeSignedSize@ha
2022-10-16 16:05:58 +00:00
/* 801601E0 0015C020 90 01 00 14 */ stw r0, 0x14(r1)
2022-10-16 16:31:36 +00:00
/* 801601E4 0015C024 38 84 85 D8 */ addi r4, r4, VX2GolombCodeSigned@l
/* 801601E8 0015C028 38 A5 05 D8 */ addi r5, r5, VX2GolombCodeSignedSize@l
2022-10-16 16:05:58 +00:00
/* 801601EC 0015C02C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 801601F0 0015C030 93 C1 00 08 */ stw r30, 0x8(r1)
/* 801601F4 0015C034 7C 7E 1B 78 */ mr r30, r3
/* 801601F8 0015C038 81 03 0A 08 */ lwz r8, 0xa08(r3)
/* 801601FC 0015C03C 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 80160200 0015C040 55 06 7C 7E */ srwi r6, r8, 17
/* 80160204 0015C044 7D 24 30 AE */ lbzx r9, r4, r6
/* 80160208 0015C048 7D 29 07 74 */ extsb r9, r9
/* 8016020C 0015C04C 55 24 10 3A */ slwi r4, r9, 2
/* 80160210 0015C050 7C 85 22 14 */ add r4, r5, r4
/* 80160214 0015C054 80 84 01 FC */ lwz r4, 0x1fc(r4)
/* 80160218 0015C058 7C E4 00 51 */ subf. r7, r4, r0
/* 8016021C 0015C05C 7D 08 20 30 */ slw r8, r8, r4
/* 80160220 0015C060 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 80160224 0015C064 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 80160228 0015C068 40 80 00 2C */ bge lbl_80160254
/* 8016022C 0015C06C 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 80160230 0015C070 7C C0 26 2C */ lhbrx r6, r0, r4
/* 80160234 0015C074 7C A7 00 D0 */ neg r5, r7
/* 80160238 0015C078 38 84 00 02 */ addi r4, r4, 0x2
/* 8016023C 0015C07C 38 07 00 10 */ addi r0, r7, 0x10
/* 80160240 0015C080 7C C5 28 30 */ slw r5, r6, r5
/* 80160244 0015C084 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 80160248 0015C088 7D 04 2B 78 */ or r4, r8, r5
/* 8016024C 0015C08C 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 80160250 0015C090 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_80160254
lbl_80160254:
/* 80160254 0015C094 A8 03 0A 24 */ lha r0, 0xa24(r3)
2022-10-16 16:31:36 +00:00
/* 80160258 0015C098 3C 80 80 45 */ lis r4, VX2GolombCodeSigned@ha
2022-10-16 16:05:58 +00:00
/* 8016025C 0015C09C 80 C3 0A 08 */ lwz r6, 0xa08(r3)
2022-10-16 16:31:36 +00:00
/* 80160260 0015C0A0 3C A0 80 45 */ lis r5, VX2GolombCodeSignedSize@ha
2022-10-16 16:05:58 +00:00
/* 80160264 0015C0A4 7C 00 4A 14 */ add r0, r0, r9
/* 80160268 0015C0A8 B0 03 0A 20 */ sth r0, 0xa20(r3)
/* 8016026C 0015C0AC 54 C0 7C 7E */ srwi r0, r6, 17
2022-10-16 16:31:36 +00:00
/* 80160270 0015C0B0 38 84 85 D8 */ addi r4, r4, VX2GolombCodeSigned@l
2022-10-16 16:05:58 +00:00
/* 80160274 0015C0B4 7D 24 00 AE */ lbzx r9, r4, r0
2022-10-16 16:31:36 +00:00
/* 80160278 0015C0B8 38 A5 05 D8 */ addi r5, r5, VX2GolombCodeSignedSize@l
2022-10-16 16:05:58 +00:00
/* 8016027C 0015C0BC 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 80160280 0015C0C0 7D 29 07 74 */ extsb r9, r9
/* 80160284 0015C0C4 55 24 10 3A */ slwi r4, r9, 2
/* 80160288 0015C0C8 7C 85 22 14 */ add r4, r5, r4
/* 8016028C 0015C0CC 80 84 01 FC */ lwz r4, 0x1fc(r4)
/* 80160290 0015C0D0 7C E4 00 51 */ subf. r7, r4, r0
/* 80160294 0015C0D4 7C C8 20 30 */ slw r8, r6, r4
/* 80160298 0015C0D8 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 8016029C 0015C0DC 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 801602A0 0015C0E0 40 80 00 2C */ bge lbl_801602CC
/* 801602A4 0015C0E4 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 801602A8 0015C0E8 7C C0 26 2C */ lhbrx r6, r0, r4
/* 801602AC 0015C0EC 7C A7 00 D0 */ neg r5, r7
/* 801602B0 0015C0F0 38 84 00 02 */ addi r4, r4, 0x2
/* 801602B4 0015C0F4 38 07 00 10 */ addi r0, r7, 0x10
/* 801602B8 0015C0F8 7C C5 28 30 */ slw r5, r6, r5
/* 801602BC 0015C0FC 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 801602C0 0015C100 7D 04 2B 78 */ or r4, r8, r5
/* 801602C4 0015C104 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 801602C8 0015C108 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_801602CC
lbl_801602CC:
/* 801602CC 0015C10C A8 03 0A 26 */ lha r0, 0xa26(r3)
/* 801602D0 0015C110 A8 83 0A 20 */ lha r4, 0xa20(r3)
/* 801602D4 0015C114 7D 20 4A 14 */ add r9, r0, r9
/* 801602D8 0015C118 81 43 08 B4 */ lwz r10, 0x8b4(r3)
/* 801602DC 0015C11C 80 A3 00 00 */ lwz r5, 0x0(r3)
/* 801602E0 0015C120 7D 26 07 34 */ extsh r6, r9
/* 801602E4 0015C124 55 40 08 3C */ slwi r0, r10, 1
/* 801602E8 0015C128 7C 88 0E 70 */ srawi r8, r4, 1
/* 801602EC 0015C12C 7F E4 02 14 */ add r31, r4, r0
/* 801602F0 0015C130 7C C6 0E 70 */ srawi r6, r6, 1
/* 801602F4 0015C134 80 E3 00 78 */ lwz r7, 0x78(r3)
/* 801602F8 0015C138 55 20 1F 38 */ rlwinm r0, r9, 3, 28, 28
/* 801602FC 0015C13C 57 E4 07 7E */ clrlwi r4, r31, 29
/* 80160300 0015C140 B1 23 0A 22 */ sth r9, 0xa22(r3)
/* 80160304 0015C144 7C 04 02 14 */ add r0, r4, r0
/* 80160308 0015C148 80 9E 00 68 */ lwz r4, 0x68(r30)
/* 8016030C 0015C14C 54 00 10 3A */ slwi r0, r0, 2
/* 80160310 0015C150 7C E7 52 14 */ add r7, r7, r10
/* 80160314 0015C154 7C 7E 02 14 */ add r3, r30, r0
/* 80160318 0015C158 7C 84 52 14 */ add r4, r4, r10
/* 8016031C 0015C15C 7C C6 29 D6 */ mullw r6, r6, r5
/* 80160320 0015C160 81 83 0C 28 */ lwz r12, 0xc28(r3)
/* 80160324 0015C164 7C 08 3A 14 */ add r0, r8, r7
/* 80160328 0015C168 7C 66 02 14 */ add r3, r6, r0
/* 8016032C 0015C16C 7D 89 03 A6 */ mtctr r12
/* 80160330 0015C170 4E 80 04 21 */ bctrl
/* 80160334 0015C174 80 7E 00 00 */ lwz r3, 0x0(r30)
/* 80160338 0015C178 57 E4 FF 7E */ extrwi r4, r31, 3, 28
/* 8016033C 0015C17C A8 1E 0A 20 */ lha r0, 0xa20(r30)
/* 80160340 0015C180 7C 65 0E 70 */ srawi r5, r3, 1
/* 80160344 0015C184 A8 7E 0A 22 */ lha r3, 0xa22(r30)
/* 80160348 0015C188 7C 07 16 70 */ srawi r7, r0, 2
/* 8016034C 0015C18C 81 1E 08 B8 */ lwz r8, 0x8b8(r30)
/* 80160350 0015C190 54 60 17 38 */ rlwinm r0, r3, 2, 28, 28
/* 80160354 0015C194 7C 63 16 70 */ srawi r3, r3, 2
/* 80160358 0015C198 7C 04 02 14 */ add r0, r4, r0
/* 8016035C 0015C19C 80 9E 00 90 */ lwz r4, 0x90(r30)
/* 80160360 0015C1A0 54 06 10 3A */ slwi r6, r0, 2
/* 80160364 0015C1A4 80 1E 00 80 */ lwz r0, 0x80(r30)
/* 80160368 0015C1A8 7F FE 32 14 */ add r31, r30, r6
/* 8016036C 0015C1AC 7C 84 42 14 */ add r4, r4, r8
/* 80160370 0015C1B0 7C C3 29 D6 */ mullw r6, r3, r5
/* 80160374 0015C1B4 81 9F 0D A8 */ lwz r12, 0xda8(r31)
/* 80160378 0015C1B8 7C 67 22 14 */ add r3, r7, r4
/* 8016037C 0015C1BC 7C 80 42 14 */ add r4, r0, r8
/* 80160380 0015C1C0 7C 66 1A 14 */ add r3, r6, r3
/* 80160384 0015C1C4 7D 89 03 A6 */ mtctr r12
/* 80160388 0015C1C8 4E 80 04 21 */ bctrl
/* 8016038C 0015C1CC 80 1E 00 00 */ lwz r0, 0x0(r30)
/* 80160390 0015C1D0 A8 7E 0A 20 */ lha r3, 0xa20(r30)
/* 80160394 0015C1D4 7C 05 0E 70 */ srawi r5, r0, 1
/* 80160398 0015C1D8 A8 1E 0A 22 */ lha r0, 0xa22(r30)
/* 8016039C 0015C1DC 7C 66 16 70 */ srawi r6, r3, 2
/* 801603A0 0015C1E0 80 FE 08 B8 */ lwz r7, 0x8b8(r30)
/* 801603A4 0015C1E4 7C 00 16 70 */ srawi r0, r0, 2
/* 801603A8 0015C1E8 80 7E 00 A8 */ lwz r3, 0xa8(r30)
/* 801603AC 0015C1EC 7C 80 29 D6 */ mullw r4, r0, r5
/* 801603B0 0015C1F0 80 1E 00 98 */ lwz r0, 0x98(r30)
/* 801603B4 0015C1F4 7C 63 3A 14 */ add r3, r3, r7
/* 801603B8 0015C1F8 81 9F 0D A8 */ lwz r12, 0xda8(r31)
/* 801603BC 0015C1FC 7C 66 1A 14 */ add r3, r6, r3
/* 801603C0 0015C200 7C 64 1A 14 */ add r3, r4, r3
/* 801603C4 0015C204 7C 80 3A 14 */ add r4, r0, r7
/* 801603C8 0015C208 7D 89 03 A6 */ mtctr r12
/* 801603CC 0015C20C 4E 80 04 21 */ bctrl
/* 801603D0 0015C210 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801603D4 0015C214 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 801603D8 0015C218 83 C1 00 08 */ lwz r30, 0x8(r1)
/* 801603DC 0015C21C 7C 08 03 A6 */ mtlr r0
/* 801603E0 0015C220 38 21 00 10 */ addi r1, r1, 0x10
/* 801603E4 0015C224 4E 80 00 20 */ blr
/* 801603E8 0015C228 00 00 00 00 */ .4byte 0x00000000
/* 801603EC 0015C22C 00 00 00 00 */ .4byte 0x00000000
2022-10-16 16:31:36 +00:00
.global VX2CommandBack58x4__FR14VX2DecoderData
VX2CommandBack58x4__FR14VX2DecoderData:
2022-10-16 16:05:58 +00:00
/* 801603F0 0015C230 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801603F4 0015C234 7C 08 02 A6 */ mflr r0
2022-10-16 16:31:36 +00:00
/* 801603F8 0015C238 3C 80 80 45 */ lis r4, VX2GolombCodeSigned@ha
/* 801603FC 0015C23C 3C A0 80 45 */ lis r5, VX2GolombCodeSignedSize@ha
2022-10-16 16:05:58 +00:00
/* 80160400 0015C240 90 01 00 14 */ stw r0, 0x14(r1)
2022-10-16 16:31:36 +00:00
/* 80160404 0015C244 38 84 85 D8 */ addi r4, r4, VX2GolombCodeSigned@l
/* 80160408 0015C248 38 A5 05 D8 */ addi r5, r5, VX2GolombCodeSignedSize@l
2022-10-16 16:05:58 +00:00
/* 8016040C 0015C24C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80160410 0015C250 93 C1 00 08 */ stw r30, 0x8(r1)
/* 80160414 0015C254 7C 7E 1B 78 */ mr r30, r3
/* 80160418 0015C258 81 03 0A 08 */ lwz r8, 0xa08(r3)
/* 8016041C 0015C25C 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 80160420 0015C260 55 06 7C 7E */ srwi r6, r8, 17
/* 80160424 0015C264 7D 24 30 AE */ lbzx r9, r4, r6
/* 80160428 0015C268 7D 29 07 74 */ extsb r9, r9
/* 8016042C 0015C26C 55 24 10 3A */ slwi r4, r9, 2
/* 80160430 0015C270 7C 85 22 14 */ add r4, r5, r4
/* 80160434 0015C274 80 84 01 FC */ lwz r4, 0x1fc(r4)
/* 80160438 0015C278 7C E4 00 51 */ subf. r7, r4, r0
/* 8016043C 0015C27C 7D 08 20 30 */ slw r8, r8, r4
/* 80160440 0015C280 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 80160444 0015C284 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 80160448 0015C288 40 80 00 2C */ bge lbl_80160474
/* 8016044C 0015C28C 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 80160450 0015C290 7C C0 26 2C */ lhbrx r6, r0, r4
/* 80160454 0015C294 7C A7 00 D0 */ neg r5, r7
/* 80160458 0015C298 38 84 00 02 */ addi r4, r4, 0x2
/* 8016045C 0015C29C 38 07 00 10 */ addi r0, r7, 0x10
/* 80160460 0015C2A0 7C C5 28 30 */ slw r5, r6, r5
/* 80160464 0015C2A4 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 80160468 0015C2A8 7D 04 2B 78 */ or r4, r8, r5
/* 8016046C 0015C2AC 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 80160470 0015C2B0 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_80160474
lbl_80160474:
/* 80160474 0015C2B4 A8 03 0A 24 */ lha r0, 0xa24(r3)
2022-10-16 16:31:36 +00:00
/* 80160478 0015C2B8 3C 80 80 45 */ lis r4, VX2GolombCodeSigned@ha
2022-10-16 16:05:58 +00:00
/* 8016047C 0015C2BC 80 C3 0A 08 */ lwz r6, 0xa08(r3)
2022-10-16 16:31:36 +00:00
/* 80160480 0015C2C0 3C A0 80 45 */ lis r5, VX2GolombCodeSignedSize@ha
2022-10-16 16:05:58 +00:00
/* 80160484 0015C2C4 7C 00 4A 14 */ add r0, r0, r9
/* 80160488 0015C2C8 B0 03 0A 20 */ sth r0, 0xa20(r3)
/* 8016048C 0015C2CC 54 C0 7C 7E */ srwi r0, r6, 17
2022-10-16 16:31:36 +00:00
/* 80160490 0015C2D0 38 84 85 D8 */ addi r4, r4, VX2GolombCodeSigned@l
2022-10-16 16:05:58 +00:00
/* 80160494 0015C2D4 7D 24 00 AE */ lbzx r9, r4, r0
2022-10-16 16:31:36 +00:00
/* 80160498 0015C2D8 38 A5 05 D8 */ addi r5, r5, VX2GolombCodeSignedSize@l
2022-10-16 16:05:58 +00:00
/* 8016049C 0015C2DC 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 801604A0 0015C2E0 7D 29 07 74 */ extsb r9, r9
/* 801604A4 0015C2E4 55 24 10 3A */ slwi r4, r9, 2
/* 801604A8 0015C2E8 7C 85 22 14 */ add r4, r5, r4
/* 801604AC 0015C2EC 80 84 01 FC */ lwz r4, 0x1fc(r4)
/* 801604B0 0015C2F0 7C E4 00 51 */ subf. r7, r4, r0
/* 801604B4 0015C2F4 7C C8 20 30 */ slw r8, r6, r4
/* 801604B8 0015C2F8 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 801604BC 0015C2FC 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 801604C0 0015C300 40 80 00 2C */ bge lbl_801604EC
/* 801604C4 0015C304 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 801604C8 0015C308 7C C0 26 2C */ lhbrx r6, r0, r4
/* 801604CC 0015C30C 7C A7 00 D0 */ neg r5, r7
/* 801604D0 0015C310 38 84 00 02 */ addi r4, r4, 0x2
/* 801604D4 0015C314 38 07 00 10 */ addi r0, r7, 0x10
/* 801604D8 0015C318 7C C5 28 30 */ slw r5, r6, r5
/* 801604DC 0015C31C 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 801604E0 0015C320 7D 04 2B 78 */ or r4, r8, r5
/* 801604E4 0015C324 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 801604E8 0015C328 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_801604EC
lbl_801604EC:
/* 801604EC 0015C32C A8 03 0A 26 */ lha r0, 0xa26(r3)
/* 801604F0 0015C330 A8 83 0A 20 */ lha r4, 0xa20(r3)
/* 801604F4 0015C334 7D 20 4A 14 */ add r9, r0, r9
/* 801604F8 0015C338 81 43 08 B4 */ lwz r10, 0x8b4(r3)
/* 801604FC 0015C33C 80 A3 00 00 */ lwz r5, 0x0(r3)
/* 80160500 0015C340 7D 26 07 34 */ extsh r6, r9
/* 80160504 0015C344 55 40 08 3C */ slwi r0, r10, 1
/* 80160508 0015C348 7C 88 0E 70 */ srawi r8, r4, 1
/* 8016050C 0015C34C 7F E4 02 14 */ add r31, r4, r0
/* 80160510 0015C350 7C C6 0E 70 */ srawi r6, r6, 1
/* 80160514 0015C354 80 E3 00 7C */ lwz r7, 0x7c(r3)
/* 80160518 0015C358 55 20 1F 38 */ rlwinm r0, r9, 3, 28, 28
/* 8016051C 0015C35C 57 E4 07 7E */ clrlwi r4, r31, 29
/* 80160520 0015C360 B1 23 0A 22 */ sth r9, 0xa22(r3)
/* 80160524 0015C364 7C 04 02 14 */ add r0, r4, r0
/* 80160528 0015C368 80 9E 00 68 */ lwz r4, 0x68(r30)
/* 8016052C 0015C36C 54 00 10 3A */ slwi r0, r0, 2
/* 80160530 0015C370 7C E7 52 14 */ add r7, r7, r10
/* 80160534 0015C374 7C 7E 02 14 */ add r3, r30, r0
/* 80160538 0015C378 7C 84 52 14 */ add r4, r4, r10
/* 8016053C 0015C37C 7C C6 29 D6 */ mullw r6, r6, r5
/* 80160540 0015C380 81 83 0C 28 */ lwz r12, 0xc28(r3)
/* 80160544 0015C384 7C 08 3A 14 */ add r0, r8, r7
/* 80160548 0015C388 7C 66 02 14 */ add r3, r6, r0
/* 8016054C 0015C38C 7D 89 03 A6 */ mtctr r12
/* 80160550 0015C390 4E 80 04 21 */ bctrl
/* 80160554 0015C394 80 7E 00 00 */ lwz r3, 0x0(r30)
/* 80160558 0015C398 57 E4 FF 7E */ extrwi r4, r31, 3, 28
/* 8016055C 0015C39C A8 1E 0A 20 */ lha r0, 0xa20(r30)
/* 80160560 0015C3A0 7C 65 0E 70 */ srawi r5, r3, 1
/* 80160564 0015C3A4 A8 7E 0A 22 */ lha r3, 0xa22(r30)
/* 80160568 0015C3A8 7C 07 16 70 */ srawi r7, r0, 2
/* 8016056C 0015C3AC 81 1E 08 B8 */ lwz r8, 0x8b8(r30)
/* 80160570 0015C3B0 54 60 17 38 */ rlwinm r0, r3, 2, 28, 28
/* 80160574 0015C3B4 7C 63 16 70 */ srawi r3, r3, 2
/* 80160578 0015C3B8 7C 04 02 14 */ add r0, r4, r0
/* 8016057C 0015C3BC 80 9E 00 94 */ lwz r4, 0x94(r30)
/* 80160580 0015C3C0 54 06 10 3A */ slwi r6, r0, 2
/* 80160584 0015C3C4 80 1E 00 80 */ lwz r0, 0x80(r30)
/* 80160588 0015C3C8 7F FE 32 14 */ add r31, r30, r6
/* 8016058C 0015C3CC 7C 84 42 14 */ add r4, r4, r8
/* 80160590 0015C3D0 7C C3 29 D6 */ mullw r6, r3, r5
/* 80160594 0015C3D4 81 9F 0D A8 */ lwz r12, 0xda8(r31)
/* 80160598 0015C3D8 7C 67 22 14 */ add r3, r7, r4
/* 8016059C 0015C3DC 7C 80 42 14 */ add r4, r0, r8
/* 801605A0 0015C3E0 7C 66 1A 14 */ add r3, r6, r3
/* 801605A4 0015C3E4 7D 89 03 A6 */ mtctr r12
/* 801605A8 0015C3E8 4E 80 04 21 */ bctrl
/* 801605AC 0015C3EC 80 1E 00 00 */ lwz r0, 0x0(r30)
/* 801605B0 0015C3F0 A8 7E 0A 20 */ lha r3, 0xa20(r30)
/* 801605B4 0015C3F4 7C 05 0E 70 */ srawi r5, r0, 1
/* 801605B8 0015C3F8 A8 1E 0A 22 */ lha r0, 0xa22(r30)
/* 801605BC 0015C3FC 7C 66 16 70 */ srawi r6, r3, 2
/* 801605C0 0015C400 80 FE 08 B8 */ lwz r7, 0x8b8(r30)
/* 801605C4 0015C404 7C 00 16 70 */ srawi r0, r0, 2
/* 801605C8 0015C408 80 7E 00 AC */ lwz r3, 0xac(r30)
/* 801605CC 0015C40C 7C 80 29 D6 */ mullw r4, r0, r5
/* 801605D0 0015C410 80 1E 00 98 */ lwz r0, 0x98(r30)
/* 801605D4 0015C414 7C 63 3A 14 */ add r3, r3, r7
/* 801605D8 0015C418 81 9F 0D A8 */ lwz r12, 0xda8(r31)
/* 801605DC 0015C41C 7C 66 1A 14 */ add r3, r6, r3
/* 801605E0 0015C420 7C 64 1A 14 */ add r3, r4, r3
/* 801605E4 0015C424 7C 80 3A 14 */ add r4, r0, r7
/* 801605E8 0015C428 7D 89 03 A6 */ mtctr r12
/* 801605EC 0015C42C 4E 80 04 21 */ bctrl
/* 801605F0 0015C430 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801605F4 0015C434 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 801605F8 0015C438 83 C1 00 08 */ lwz r30, 0x8(r1)
/* 801605FC 0015C43C 7C 08 03 A6 */ mtlr r0
/* 80160600 0015C440 38 21 00 10 */ addi r1, r1, 0x10
/* 80160604 0015C444 4E 80 00 20 */ blr
/* 80160608 0015C448 00 00 00 00 */ .4byte 0x00000000
/* 8016060C 0015C44C 00 00 00 00 */ .4byte 0x00000000
2022-10-16 16:31:36 +00:00
.global VX2CommandCutH8x4__FR14VX2DecoderData
VX2CommandCutH8x4__FR14VX2DecoderData:
2022-10-16 16:05:58 +00:00
/* 80160610 0015C450 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80160614 0015C454 7C 08 02 A6 */ mflr r0
/* 80160618 0015C458 90 01 00 14 */ stw r0, 0x14(r1)
/* 8016061C 0015C45C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80160620 0015C460 7C 7F 1B 78 */ mr r31, r3
2022-10-16 16:31:36 +00:00
/* 80160624 0015C464 4B FF F3 9D */ bl VX2DecodeBlockInter8x2__FR14VX2DecoderData
2022-10-16 16:05:58 +00:00
/* 80160628 0015C468 80 1F 00 00 */ lwz r0, 0x0(r31)
/* 8016062C 0015C46C 7F E3 FB 78 */ mr r3, r31
/* 80160630 0015C470 80 DF 08 B4 */ lwz r6, 0x8b4(r31)
/* 80160634 0015C474 54 05 08 3C */ slwi r5, r0, 1
/* 80160638 0015C478 80 9F 08 B8 */ lwz r4, 0x8b8(r31)
/* 8016063C 0015C47C 7C 00 0E 70 */ srawi r0, r0, 1
/* 80160640 0015C480 7C A6 2A 14 */ add r5, r6, r5
/* 80160644 0015C484 90 BF 08 B4 */ stw r5, 0x8b4(r31)
/* 80160648 0015C488 7C 04 02 14 */ add r0, r4, r0
/* 8016064C 0015C48C 90 1F 08 B8 */ stw r0, 0x8b8(r31)
2022-10-16 16:31:36 +00:00
/* 80160650 0015C490 4B FF F3 71 */ bl VX2DecodeBlockInter8x2__FR14VX2DecoderData
2022-10-16 16:05:58 +00:00
/* 80160654 0015C494 80 7F 00 00 */ lwz r3, 0x0(r31)
/* 80160658 0015C498 80 9F 08 B4 */ lwz r4, 0x8b4(r31)
/* 8016065C 0015C49C 54 65 08 3C */ slwi r5, r3, 1
/* 80160660 0015C4A0 80 1F 08 B8 */ lwz r0, 0x8b8(r31)
/* 80160664 0015C4A4 7C 63 0E 70 */ srawi r3, r3, 1
/* 80160668 0015C4A8 7C 85 20 50 */ subf r4, r5, r4
/* 8016066C 0015C4AC 90 9F 08 B4 */ stw r4, 0x8b4(r31)
/* 80160670 0015C4B0 7C 03 00 50 */ subf r0, r3, r0
/* 80160674 0015C4B4 90 1F 08 B8 */ stw r0, 0x8b8(r31)
/* 80160678 0015C4B8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8016067C 0015C4BC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80160680 0015C4C0 7C 08 03 A6 */ mtlr r0
/* 80160684 0015C4C4 38 21 00 10 */ addi r1, r1, 0x10
/* 80160688 0015C4C8 4E 80 00 20 */ blr
/* 8016068C 0015C4CC 00 00 00 00 */ .4byte 0x00000000
2022-10-16 16:31:36 +00:00
.global VX2CommandCutV8x4__FR14VX2DecoderData
VX2CommandCutV8x4__FR14VX2DecoderData:
2022-10-16 16:05:58 +00:00
/* 80160690 0015C4D0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80160694 0015C4D4 7C 08 02 A6 */ mflr r0
/* 80160698 0015C4D8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8016069C 0015C4DC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 801606A0 0015C4E0 7C 7F 1B 78 */ mr r31, r3
2022-10-16 16:31:36 +00:00
/* 801606A4 0015C4E4 4B FF CB DD */ bl VX2DecodeBlockInter4x4__FR14VX2DecoderData
2022-10-16 16:05:58 +00:00
/* 801606A8 0015C4E8 80 BF 08 B4 */ lwz r5, 0x8b4(r31)
/* 801606AC 0015C4EC 7F E3 FB 78 */ mr r3, r31
/* 801606B0 0015C4F0 80 9F 08 B8 */ lwz r4, 0x8b8(r31)
/* 801606B4 0015C4F4 38 05 00 04 */ addi r0, r5, 0x4
/* 801606B8 0015C4F8 90 1F 08 B4 */ stw r0, 0x8b4(r31)
/* 801606BC 0015C4FC 38 04 00 02 */ addi r0, r4, 0x2
/* 801606C0 0015C500 90 1F 08 B8 */ stw r0, 0x8b8(r31)
2022-10-16 16:31:36 +00:00
/* 801606C4 0015C504 4B FF CB BD */ bl VX2DecodeBlockInter4x4__FR14VX2DecoderData
2022-10-16 16:05:58 +00:00
/* 801606C8 0015C508 80 9F 08 B4 */ lwz r4, 0x8b4(r31)
/* 801606CC 0015C50C 80 7F 08 B8 */ lwz r3, 0x8b8(r31)
/* 801606D0 0015C510 38 04 FF FC */ addi r0, r4, -0x4
/* 801606D4 0015C514 90 1F 08 B4 */ stw r0, 0x8b4(r31)
/* 801606D8 0015C518 38 03 FF FE */ addi r0, r3, -0x2
/* 801606DC 0015C51C 90 1F 08 B8 */ stw r0, 0x8b8(r31)
/* 801606E0 0015C520 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 801606E4 0015C524 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801606E8 0015C528 7C 08 03 A6 */ mtlr r0
/* 801606EC 0015C52C 38 21 00 10 */ addi r1, r1, 0x10
/* 801606F0 0015C530 4E 80 00 20 */ blr
/* 801606F4 0015C534 00 00 00 00 */ .4byte 0x00000000
/* 801606F8 0015C538 00 00 00 00 */ .4byte 0x00000000
/* 801606FC 0015C53C 00 00 00 00 */ .4byte 0x00000000
2022-10-16 16:31:36 +00:00
.global VX2DecodeBlockInter8x4__FR14VX2DecoderData
VX2DecodeBlockInter8x4__FR14VX2DecoderData:
2022-10-16 16:05:58 +00:00
/* 80160700 0015C540 80 C3 0A 08 */ lwz r6, 0xa08(r3)
2022-10-16 16:31:36 +00:00
/* 80160704 0015C544 3C 80 80 41 */ lis r4, "@LOCAL@VX2DecodeBlockInter8x4__FR14VX2DecoderData@command"@ha
/* 80160708 0015C548 3C A0 80 41 */ lis r5, "@LOCAL@VX2DecodeBlockInter8x4__FR14VX2DecoderData@size@0"@ha
2022-10-16 16:05:58 +00:00
/* 8016070C 0015C54C 80 03 0A 04 */ lwz r0, 0xa04(r3)
/* 80160710 0015C550 54 C6 3E 7A */ rlwinm r6, r6, 7, 25, 29
2022-10-16 16:31:36 +00:00
/* 80160714 0015C554 38 84 F2 70 */ addi r4, r4, "@LOCAL@VX2DecodeBlockInter8x4__FR14VX2DecoderData@command"@l
2022-10-16 16:05:58 +00:00
/* 80160718 0015C558 7C C4 30 2E */ lwzx r6, r4, r6
2022-10-16 16:31:36 +00:00
/* 8016071C 0015C55C 38 A5 F2 F0 */ addi r5, r5, "@LOCAL@VX2DecodeBlockInter8x4__FR14VX2DecoderData@size@0"@l
2022-10-16 16:05:58 +00:00
/* 80160720 0015C560 80 83 0A 08 */ lwz r4, 0xa08(r3)
/* 80160724 0015C564 54 C9 10 3A */ slwi r9, r6, 2
/* 80160728 0015C568 7C A5 48 2E */ lwzx r5, r5, r9
/* 8016072C 0015C56C 7C E5 00 51 */ subf. r7, r5, r0
/* 80160730 0015C570 7C 88 28 30 */ slw r8, r4, r5
/* 80160734 0015C574 91 03 0A 08 */ stw r8, 0xa08(r3)
/* 80160738 0015C578 90 E3 0A 04 */ stw r7, 0xa04(r3)
/* 8016073C 0015C57C 40 80 00 2C */ bge lbl_80160768
/* 80160740 0015C580 80 83 0A 0C */ lwz r4, 0xa0c(r3)
/* 80160744 0015C584 7C C0 26 2C */ lhbrx r6, r0, r4
/* 80160748 0015C588 7C A7 00 D0 */ neg r5, r7
/* 8016074C 0015C58C 38 84 00 02 */ addi r4, r4, 0x2
/* 80160750 0015C590 38 07 00 10 */ addi r0, r7, 0x10
/* 80160754 0015C594 7C C5 28 30 */ slw r5, r6, r5
/* 80160758 0015C598 90 83 0A 0C */ stw r4, 0xa0c(r3)
/* 8016075C 0015C59C 7D 04 2B 78 */ or r4, r8, r5
/* 80160760 0015C5A0 90 83 0A 08 */ stw r4, 0xa08(r3)
/* 80160764 0015C5A4 90 03 0A 04 */ stw r0, 0xa04(r3)
.global lbl_80160768
lbl_80160768:
2022-10-16 16:31:36 +00:00
/* 80160768 0015C5A8 3C 80 80 41 */ lis r4, VX2CommandTable8x4@ha
/* 8016076C 0015C5AC 38 84 F2 48 */ addi r4, r4, VX2CommandTable8x4@l
2022-10-16 16:05:58 +00:00
/* 80160770 0015C5B0 7D 84 48 2E */ lwzx r12, r4, r9
/* 80160774 0015C5B4 7D 89 03 A6 */ mtctr r12
/* 80160778 0015C5B8 4E 80 04 20 */ bctr
/* 8016077C 0015C5BC 00 00 00 00 */ .4byte 0x00000000
2022-10-17 09:05:43 +00:00
.include "macros.inc"
.section .rodata, "wa" # 0x80406560 - 0x80421040 ; 0x0001AAE0
.global VX2CommandTable8x4
VX2CommandTable8x4:
.4byte VX2CommandSkip18x4__FR14VX2DecoderData
.4byte VX2CommandBack18x4__FR14VX2DecoderData
.4byte VX2CommandBack28x4__FR14VX2DecoderData
.4byte VX2CommandBack38x4__FR14VX2DecoderData
.4byte VX2CommandBack48x4__FR14VX2DecoderData
.4byte VX2CommandBack58x4__FR14VX2DecoderData
.4byte 0
.4byte 0
.4byte VX2CommandCutH8x4__FR14VX2DecoderData
.4byte VX2CommandCutV8x4__FR14VX2DecoderData
.global "@LOCAL@VX2DecodeBlockInter8x4__FR14VX2DecoderData@command"
"@LOCAL@VX2DecodeBlockInter8x4__FR14VX2DecoderData@command":
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000001
.4byte 0x00000002
.4byte 0x00000002
.4byte 0x00000002
.4byte 0x00000002
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0x00000009
.4byte 0x00000009
.4byte 0x00000008
.4byte 0x00000008
.4byte 0x00000003
.4byte 0x00000003
.4byte 0x00000005
.4byte 0x00000004
.global "@LOCAL@VX2DecodeBlockInter8x4__FR14VX2DecoderData@size@0"
"@LOCAL@VX2DecodeBlockInter8x4__FR14VX2DecoderData@size@0":
.4byte 0x00000003
.4byte 0x00000001
.4byte 0x00000003
.4byte 0x00000004
.4byte 0x00000005
.4byte 0x00000005
.4byte 0xFFFFFFFF
.4byte 0xFFFFFFFF
.4byte 0x00000004
.4byte 0x00000004