mirror of
https://github.com/encounter/tp.git
synced 2026-07-11 06:18:46 -07:00
* Added JSUListIterator and decompiled JKRHeap::dispose_subroutine * JKRDisposer! * only 4 functions not OK in JKRHeap * JKRThread asm functions * more JKRThread * JKRThreadSwitch * JKRThread::JKRThread * More JKRTHread functions and vtable * fixed bad merge * update JKRThread and JKRThreadSwitch to use new virtual inheritance * save before asmsplit.py script * JKRFile * JKRDvdFile * JKRFileCache * JKRFileFinder * JKRFileLoader * JKRAssertHeap * JKRExpHeap * JKRSolidHeap * fixed type and functions definitions * JKRArchive (Pub) * missed file * JKRArchive * forgot obj_files.mk * fixed merge error and class members * class members * removed unused asm files * added names to global variables * class members for JKRHeap, JKRExpHeap, JKRSolidHeap, and JKRFileCache.
127 lines
5.7 KiB
ArmAsm
127 lines
5.7 KiB
ArmAsm
.include "macros.inc"
|
|
|
|
.section .text, "ax" # 802d12c4
|
|
|
|
|
|
.global __ct__13JKRAssertHeapFPvUlP7JKRHeapb
|
|
__ct__13JKRAssertHeapFPvUlP7JKRHeapb:
|
|
/* 802D12C4 002CE204 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 802D12C8 002CE208 7C 08 02 A6 */ mflr r0
|
|
/* 802D12CC 002CE20C 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 802D12D0 002CE210 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 802D12D4 002CE214 7C 7F 1B 78 */ mr r31, r3
|
|
/* 802D12D8 002CE218 4B FF CE 61 */ bl __ct__7JKRHeapFPvUlP7JKRHeapb
|
|
/* 802D12DC 002CE21C 3C 60 80 3D */ lis r3, lbl_803CC090@ha
|
|
/* 802D12E0 002CE220 38 03 C0 90 */ addi r0, r3, lbl_803CC090@l
|
|
/* 802D12E4 002CE224 90 1F 00 00 */ stw r0, 0(r31)
|
|
/* 802D12E8 002CE228 7F E3 FB 78 */ mr r3, r31
|
|
/* 802D12EC 002CE22C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 802D12F0 002CE230 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 802D12F4 002CE234 7C 08 03 A6 */ mtlr r0
|
|
/* 802D12F8 002CE238 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 802D12FC 002CE23C 4E 80 00 20 */ blr
|
|
/* 802D1300 002CE240 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 802D1304 002CE244 7C 08 02 A6 */ mflr r0
|
|
/* 802D1308 002CE248 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 802D130C 002CE24C 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 802D1310 002CE250 93 C1 00 08 */ stw r30, 8(r1)
|
|
/* 802D1314 002CE254 7C 7E 1B 79 */ or. r30, r3, r3
|
|
/* 802D1318 002CE258 7C 9F 23 78 */ mr r31, r4
|
|
/* 802D131C 002CE25C 41 82 00 30 */ beq lbl_802D134C
|
|
/* 802D1320 002CE260 3C 80 80 3D */ lis r4, lbl_803CC090@ha
|
|
/* 802D1324 002CE264 38 04 C0 90 */ addi r0, r4, lbl_803CC090@l
|
|
/* 802D1328 002CE268 90 1E 00 00 */ stw r0, 0(r30)
|
|
/* 802D132C 002CE26C 4B FF D7 95 */ bl dispose__7JKRHeapFv
|
|
/* 802D1330 002CE270 7F C3 F3 78 */ mr r3, r30
|
|
/* 802D1334 002CE274 38 80 00 00 */ li r4, 0
|
|
/* 802D1338 002CE278 4B FF CF 2D */ bl __dt__7JKRHeapFv
|
|
/* 802D133C 002CE27C 7F E0 07 35 */ extsh. r0, r31
|
|
/* 802D1340 002CE280 40 81 00 0C */ ble lbl_802D134C
|
|
/* 802D1344 002CE284 7F C3 F3 78 */ mr r3, r30
|
|
/* 802D1348 002CE288 4B FF D9 F5 */ bl __dl__FPv
|
|
lbl_802D134C:
|
|
/* 802D134C 002CE28C 7F C3 F3 78 */ mr r3, r30
|
|
/* 802D1350 002CE290 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 802D1354 002CE294 83 C1 00 08 */ lwz r30, 8(r1)
|
|
/* 802D1358 002CE298 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 802D135C 002CE29C 7C 08 03 A6 */ mtlr r0
|
|
/* 802D1360 002CE2A0 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 802D1364 002CE2A4 4E 80 00 20 */ blr
|
|
|
|
.global create__13JKRAssertHeapFP7JKRHeap
|
|
create__13JKRAssertHeapFP7JKRHeap:
|
|
/* 802D1368 002CE2A8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 802D136C 002CE2AC 7C 08 02 A6 */ mflr r0
|
|
/* 802D1370 002CE2B0 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 802D1374 002CE2B4 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 802D1378 002CE2B8 7C 7F 1B 79 */ or. r31, r3, r3
|
|
/* 802D137C 002CE2BC 40 82 00 08 */ bne lbl_802D1384
|
|
/* 802D1380 002CE2C0 83 ED 8D F8 */ lwz r31, lbl_80451378-_SDA_BASE_(r13)
|
|
lbl_802D1384:
|
|
/* 802D1384 002CE2C4 38 60 00 70 */ li r3, 0x70
|
|
/* 802D1388 002CE2C8 38 80 00 10 */ li r4, 0x10
|
|
/* 802D138C 002CE2CC 7F E5 FB 78 */ mr r5, r31
|
|
/* 802D1390 002CE2D0 4B FF D0 E5 */ bl alloc__7JKRHeapFUliP7JKRHeap
|
|
/* 802D1394 002CE2D4 7C 60 1B 79 */ or. r0, r3, r3
|
|
/* 802D1398 002CE2D8 40 82 00 0C */ bne lbl_802D13A4
|
|
/* 802D139C 002CE2DC 38 60 00 00 */ li r3, 0
|
|
/* 802D13A0 002CE2E0 48 00 00 24 */ b lbl_802D13C4
|
|
lbl_802D13A4:
|
|
/* 802D13A4 002CE2E4 41 82 00 1C */ beq lbl_802D13C0
|
|
/* 802D13A8 002CE2E8 38 80 00 00 */ li r4, 0
|
|
/* 802D13AC 002CE2EC 38 A0 00 00 */ li r5, 0
|
|
/* 802D13B0 002CE2F0 7F E6 FB 78 */ mr r6, r31
|
|
/* 802D13B4 002CE2F4 38 E0 00 00 */ li r7, 0
|
|
/* 802D13B8 002CE2F8 4B FF FF 0D */ bl __ct__13JKRAssertHeapFPvUlP7JKRHeapb
|
|
/* 802D13BC 002CE2FC 7C 60 1B 78 */ mr r0, r3
|
|
lbl_802D13C0:
|
|
/* 802D13C0 002CE300 7C 03 03 78 */ mr r3, r0
|
|
lbl_802D13C4:
|
|
/* 802D13C4 002CE304 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 802D13C8 002CE308 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 802D13CC 002CE30C 7C 08 03 A6 */ mtlr r0
|
|
/* 802D13D0 002CE310 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 802D13D4 002CE314 4E 80 00 20 */ blr
|
|
/* 802D13D8 002CE318 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 802D13DC 002CE31C 7C 08 02 A6 */ mflr r0
|
|
/* 802D13E0 002CE320 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 802D13E4 002CE324 38 80 FF FF */ li r4, -1
|
|
/* 802D13E8 002CE328 81 83 00 00 */ lwz r12, 0(r3)
|
|
/* 802D13EC 002CE32C 81 8C 00 08 */ lwz r12, 8(r12)
|
|
/* 802D13F0 002CE330 7D 89 03 A6 */ mtctr r12
|
|
/* 802D13F4 002CE334 4E 80 04 21 */ bctrl
|
|
/* 802D13F8 002CE338 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 802D13FC 002CE33C 7C 08 03 A6 */ mtlr r0
|
|
/* 802D1400 002CE340 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 802D1404 002CE344 4E 80 00 20 */ blr
|
|
/* 802D1408 002CE348 3C 60 41 53 */ lis r3, 0x41535448@ha
|
|
/* 802D140C 002CE34C 38 63 54 48 */ addi r3, r3, 0x41535448@l
|
|
/* 802D1410 002CE350 4E 80 00 20 */ blr
|
|
/* 802D1414 002CE354 38 60 00 01 */ li r3, 1
|
|
/* 802D1418 002CE358 4E 80 00 20 */ blr
|
|
/* 802D141C 002CE35C 38 60 00 01 */ li r3, 1
|
|
/* 802D1420 002CE360 4E 80 00 20 */ blr
|
|
/* 802D1424 002CE364 38 60 00 01 */ li r3, 1
|
|
/* 802D1428 002CE368 4E 80 00 20 */ blr
|
|
/* 802D142C 002CE36C 38 60 00 00 */ li r3, 0
|
|
/* 802D1430 002CE370 4E 80 00 20 */ blr
|
|
/* 802D1434 002CE374 38 60 00 00 */ li r3, 0
|
|
/* 802D1438 002CE378 4E 80 00 20 */ blr
|
|
/* 802D143C 002CE37C 38 60 00 00 */ li r3, 0
|
|
/* 802D1440 002CE380 4E 80 00 20 */ blr
|
|
/* 802D1444 002CE384 4E 80 00 20 */ blr
|
|
/* 802D1448 002CE388 4E 80 00 20 */ blr
|
|
/* 802D144C 002CE38C 4E 80 00 20 */ blr
|
|
/* 802D1450 002CE390 4E 80 00 20 */ blr
|
|
/* 802D1454 002CE394 38 60 00 00 */ li r3, 0
|
|
/* 802D1458 002CE398 4E 80 00 20 */ blr
|
|
/* 802D145C 002CE39C 38 60 00 00 */ li r3, 0
|
|
/* 802D1460 002CE3A0 4E 80 00 20 */ blr
|
|
/* 802D1464 002CE3A4 38 60 00 00 */ li r3, 0
|
|
/* 802D1468 002CE3A8 4E 80 00 20 */ blr
|
|
/* 802D146C 002CE3AC 38 60 00 00 */ li r3, 0
|
|
/* 802D1470 002CE3B0 4E 80 00 20 */ blr
|
|
/* 802D1474 002CE3B4 38 60 00 00 */ li r3, 0
|
|
/* 802D1478 002CE3B8 4E 80 00 20 */ blr
|
|
|