summaryrefslogtreecommitdiff
path: root/libs/JSystem/JKernel/JKRFileLoader.cpp
diff options
context:
space:
mode:
authorJonathan Wase <jonathan@familjenwase.se>2020-12-05 18:45:10 +0100
committerGitHub <noreply@github.com>2020-12-05 12:45:10 -0500
commitfb1217e3f95c64dc5dcc096c246704f26803c2ac (patch)
tree1ee8b5a0d18849137b27a9f9c21b9ebf26d2cc7a /libs/JSystem/JKernel/JKRFileLoader.cpp
parent3dc3739ebdfb524bf80591a1c612ccccff9ef5a0 (diff)
Types and functions for JKRThread, JKRFile, JKRDvdFile, JKRFileCache... (#17)
* 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.
Diffstat (limited to 'libs/JSystem/JKernel/JKRFileLoader.cpp')
-rw-r--r--libs/JSystem/JKernel/JKRFileLoader.cpp54
1 files changed, 53 insertions, 1 deletions
diff --git a/libs/JSystem/JKernel/JKRFileLoader.cpp b/libs/JSystem/JKernel/JKRFileLoader.cpp
index 4bf93c8658..de5ed49098 100644
--- a/libs/JSystem/JKernel/JKRFileLoader.cpp
+++ b/libs/JSystem/JKernel/JKRFileLoader.cpp
@@ -1 +1,53 @@
-// ok
+#include "JSystem/JKernel/JKRFileLoader/JKRFileLoader.h"
+#include "global.h"
+
+asm JKRFileLoader::JKRFileLoader(void) {
+ nofralloc
+ #include "JSystem/JKernel/JKRFileLoader/asm/func_802D40F0.s"
+}
+
+asm JKRFileLoader::~JKRFileLoader() {
+ nofralloc
+ #include "JSystem/JKernel/JKRFileLoader/asm/func_802D4148.s"
+}
+
+asm void JKRFileLoader::unmount(void) {
+ nofralloc
+ #include "JSystem/JKernel/JKRFileLoader/asm/func_802D41D4.s"
+}
+
+asm void* JKRFileLoader::getGlbResource(char const *) {
+ nofralloc
+ #include "JSystem/JKernel/JKRFileLoader/asm/func_802D4224.s"
+}
+
+asm void* JKRFileLoader::getGlbResource(char const *, JKRFileLoader *) {
+ nofralloc
+ #include "JSystem/JKernel/JKRFileLoader/asm/func_802D4270.s"
+}
+
+asm bool JKRFileLoader::removeResource(void *, JKRFileLoader *) {
+ nofralloc
+ #include "JSystem/JKernel/JKRFileLoader/asm/func_802D4308.s"
+}
+
+asm bool JKRFileLoader::detachResource(void *, JKRFileLoader *) {
+ nofralloc
+ #include "JSystem/JKernel/JKRFileLoader/asm/func_802D43A0.s"
+}
+
+asm JKRFileLoader* JKRFileLoader::findVolume(char const **) {
+ nofralloc
+ #include "JSystem/JKernel/JKRFileLoader/asm/func_802D4438.s"
+}
+
+#if 0
+// JSystem\JKernel\JKRFileLoader\asm\func_802D44C4.s:18: illegal object reference in constant expression (lbl_804508C0)
+// JSystem\JKernel\JKRFileLoader\asm\func_802D44C4.s:20: illegal object reference in constant expression (lbl_804508C0)
+// JSystem\JKernel\JKRFileLoader\asm\func_802D44C4.s:57: illegal object reference in constant expression (lbl_804508C0)
+asm void JKRFileLoader::fetchVolumeName(char *, long, char const *) {
+ nofralloc
+ #include "JSystem/JKernel/JKRFileLoader/asm/func_802D44C4.s"
+}
+
+#endif \ No newline at end of file