tp/asm/SComponent/c/c_list.s

159 lines
6.7 KiB
ArmAsm

.include "macros.inc"
.section .text, "ax" # 80265e64
.global cLs_Init
cLs_Init:
/* 80265E64 00262DA4 38 00 00 00 */ li r0, 0
/* 80265E68 00262DA8 90 03 00 00 */ stw r0, 0(r3)
/* 80265E6C 00262DAC 90 03 00 04 */ stw r0, 4(r3)
/* 80265E70 00262DB0 90 03 00 08 */ stw r0, 8(r3)
/* 80265E74 00262DB4 4E 80 00 20 */ blr
.global cLs_SingleCut
cLs_SingleCut:
/* 80265E78 00262DB8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80265E7C 00262DBC 7C 08 02 A6 */ mflr r0
/* 80265E80 00262DC0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80265E84 00262DC4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80265E88 00262DC8 93 C1 00 08 */ stw r30, 8(r1)
/* 80265E8C 00262DCC 7C 7E 1B 78 */ mr r30, r3
/* 80265E90 00262DD0 83 E3 00 04 */ lwz r31, 4(r3)
/* 80265E94 00262DD4 80 1F 00 00 */ lwz r0, 0(r31)
/* 80265E98 00262DD8 7C 1E 00 40 */ cmplw r30, r0
/* 80265E9C 00262DDC 40 82 00 0C */ bne lbl_80265EA8
/* 80265EA0 00262DE0 80 1E 00 08 */ lwz r0, 8(r30)
/* 80265EA4 00262DE4 90 1F 00 00 */ stw r0, 0(r31)
lbl_80265EA8:
/* 80265EA8 00262DE8 80 1F 00 04 */ lwz r0, 4(r31)
/* 80265EAC 00262DEC 7C 1E 00 40 */ cmplw r30, r0
/* 80265EB0 00262DF0 40 82 00 0C */ bne lbl_80265EBC
/* 80265EB4 00262DF4 80 1E 00 00 */ lwz r0, 0(r30)
/* 80265EB8 00262DF8 90 1F 00 04 */ stw r0, 4(r31)
lbl_80265EBC:
/* 80265EBC 00262DFC 7F C3 F3 78 */ mr r3, r30
/* 80265EC0 00262E00 48 00 02 FD */ bl cNd_SingleCut
/* 80265EC4 00262E04 7F C3 F3 78 */ mr r3, r30
/* 80265EC8 00262E08 48 00 04 11 */ bl cNd_ClearObject
/* 80265ECC 00262E0C 80 7F 00 08 */ lwz r3, 8(r31)
/* 80265ED0 00262E10 38 63 FF FF */ addi r3, r3, -1
/* 80265ED4 00262E14 90 7F 00 08 */ stw r3, 8(r31)
/* 80265ED8 00262E18 7C 03 00 D0 */ neg r0, r3
/* 80265EDC 00262E1C 7C 00 18 78 */ andc r0, r0, r3
/* 80265EE0 00262E20 54 03 0F FE */ srwi r3, r0, 0x1f
/* 80265EE4 00262E24 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80265EE8 00262E28 83 C1 00 08 */ lwz r30, 8(r1)
/* 80265EEC 00262E2C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80265EF0 00262E30 7C 08 03 A6 */ mtlr r0
/* 80265EF4 00262E34 38 21 00 10 */ addi r1, r1, 0x10
/* 80265EF8 00262E38 4E 80 00 20 */ blr
.global cLs_Addition
cLs_Addition:
/* 80265EFC 00262E3C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80265F00 00262E40 7C 08 02 A6 */ mflr r0
/* 80265F04 00262E44 90 01 00 14 */ stw r0, 0x14(r1)
/* 80265F08 00262E48 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80265F0C 00262E4C 93 C1 00 08 */ stw r30, 8(r1)
/* 80265F10 00262E50 7C 7E 1B 78 */ mr r30, r3
/* 80265F14 00262E54 7C 9F 23 78 */ mr r31, r4
/* 80265F18 00262E58 80 63 00 04 */ lwz r3, 4(r3)
/* 80265F1C 00262E5C 28 03 00 00 */ cmplwi r3, 0
/* 80265F20 00262E60 40 82 00 0C */ bne lbl_80265F2C
/* 80265F24 00262E64 93 FE 00 00 */ stw r31, 0(r30)
/* 80265F28 00262E68 48 00 00 08 */ b lbl_80265F30
lbl_80265F2C:
/* 80265F2C 00262E6C 48 00 02 E5 */ bl cNd_Addition
lbl_80265F30:
/* 80265F30 00262E70 7F E3 FB 78 */ mr r3, r31
/* 80265F34 00262E74 48 00 02 09 */ bl cNd_Last
/* 80265F38 00262E78 90 7E 00 04 */ stw r3, 4(r30)
/* 80265F3C 00262E7C 7F E3 FB 78 */ mr r3, r31
/* 80265F40 00262E80 7F C4 F3 78 */ mr r4, r30
/* 80265F44 00262E84 48 00 03 6D */ bl cNd_SetObject
/* 80265F48 00262E88 80 7E 00 00 */ lwz r3, 0(r30)
/* 80265F4C 00262E8C 48 00 01 91 */ bl cNd_LengthOf
/* 80265F50 00262E90 90 7E 00 08 */ stw r3, 8(r30)
/* 80265F54 00262E94 80 7E 00 08 */ lwz r3, 8(r30)
/* 80265F58 00262E98 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80265F5C 00262E9C 83 C1 00 08 */ lwz r30, 8(r1)
/* 80265F60 00262EA0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80265F64 00262EA4 7C 08 03 A6 */ mtlr r0
/* 80265F68 00262EA8 38 21 00 10 */ addi r1, r1, 0x10
/* 80265F6C 00262EAC 4E 80 00 20 */ blr
.global cLs_Insert
cLs_Insert:
/* 80265F70 00262EB0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80265F74 00262EB4 7C 08 02 A6 */ mflr r0
/* 80265F78 00262EB8 90 01 00 24 */ stw r0, 0x24(r1)
/* 80265F7C 00262EBC 39 61 00 20 */ addi r11, r1, 0x20
/* 80265F80 00262EC0 48 0F C2 5D */ bl _savegpr_29
/* 80265F84 00262EC4 7C 7D 1B 78 */ mr r29, r3
/* 80265F88 00262EC8 7C BE 2B 78 */ mr r30, r5
/* 80265F8C 00262ECC 80 63 00 00 */ lwz r3, 0(r3)
/* 80265F90 00262ED0 48 00 01 DD */ bl cNd_Order
/* 80265F94 00262ED4 7C 7F 1B 79 */ or. r31, r3, r3
/* 80265F98 00262ED8 40 82 00 14 */ bne lbl_80265FAC
/* 80265F9C 00262EDC 7F A3 EB 78 */ mr r3, r29
/* 80265FA0 00262EE0 7F C4 F3 78 */ mr r4, r30
/* 80265FA4 00262EE4 4B FF FF 59 */ bl cLs_Addition
/* 80265FA8 00262EE8 48 00 00 38 */ b lbl_80265FE0
lbl_80265FAC:
/* 80265FAC 00262EEC 7F C3 F3 78 */ mr r3, r30
/* 80265FB0 00262EF0 7F A4 EB 78 */ mr r4, r29
/* 80265FB4 00262EF4 48 00 02 FD */ bl cNd_SetObject
/* 80265FB8 00262EF8 7F E3 FB 78 */ mr r3, r31
/* 80265FBC 00262EFC 7F C4 F3 78 */ mr r4, r30
/* 80265FC0 00262F00 48 00 02 85 */ bl cNd_Insert
/* 80265FC4 00262F04 7F C3 F3 78 */ mr r3, r30
/* 80265FC8 00262F08 48 00 01 45 */ bl cNd_First
/* 80265FCC 00262F0C 90 7D 00 00 */ stw r3, 0(r29)
/* 80265FD0 00262F10 80 7D 00 00 */ lwz r3, 0(r29)
/* 80265FD4 00262F14 48 00 01 09 */ bl cNd_LengthOf
/* 80265FD8 00262F18 90 7D 00 08 */ stw r3, 8(r29)
/* 80265FDC 00262F1C 80 7D 00 08 */ lwz r3, 8(r29)
lbl_80265FE0:
/* 80265FE0 00262F20 39 61 00 20 */ addi r11, r1, 0x20
/* 80265FE4 00262F24 48 0F C2 45 */ bl _restgpr_29
/* 80265FE8 00262F28 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80265FEC 00262F2C 7C 08 03 A6 */ mtlr r0
/* 80265FF0 00262F30 38 21 00 20 */ addi r1, r1, 0x20
/* 80265FF4 00262F34 4E 80 00 20 */ blr
.global cLs_GetFirst
cLs_GetFirst:
/* 80265FF8 00262F38 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80265FFC 00262F3C 7C 08 02 A6 */ mflr r0
/* 80266000 00262F40 90 01 00 14 */ stw r0, 0x14(r1)
/* 80266004 00262F44 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80266008 00262F48 80 03 00 08 */ lwz r0, 8(r3)
/* 8026600C 00262F4C 2C 00 00 00 */ cmpwi r0, 0
/* 80266010 00262F50 41 82 00 18 */ beq lbl_80266028
/* 80266014 00262F54 83 E3 00 00 */ lwz r31, 0(r3)
/* 80266018 00262F58 7F E3 FB 78 */ mr r3, r31
/* 8026601C 00262F5C 4B FF FE 5D */ bl cLs_SingleCut
/* 80266020 00262F60 7F E3 FB 78 */ mr r3, r31
/* 80266024 00262F64 48 00 00 08 */ b lbl_8026602C
lbl_80266028:
/* 80266028 00262F68 38 60 00 00 */ li r3, 0
lbl_8026602C:
/* 8026602C 00262F6C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80266030 00262F70 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80266034 00262F74 7C 08 03 A6 */ mtlr r0
/* 80266038 00262F78 38 21 00 10 */ addi r1, r1, 0x10
/* 8026603C 00262F7C 4E 80 00 20 */ blr
.global cLs_Create
cLs_Create:
/* 80266040 00262F80 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80266044 00262F84 7C 08 02 A6 */ mflr r0
/* 80266048 00262F88 90 01 00 14 */ stw r0, 0x14(r1)
/* 8026604C 00262F8C 4B FF FE 19 */ bl cLs_Init
/* 80266050 00262F90 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80266054 00262F94 7C 08 03 A6 */ mtlr r0
/* 80266058 00262F98 38 21 00 10 */ addi r1, r1, 0x10
/* 8026605C 00262F9C 4E 80 00 20 */ blr