summaryrefslogtreecommitdiff
path: root/include/JSystem
diff options
context:
space:
mode:
authorDylan Ascencio <empressglatia@gmail.com>2023-09-16 18:13:11 -0400
committerDylan Ascencio <empressglatia@gmail.com>2023-09-16 18:13:11 -0400
commite940e4f4e0961aaa01c687dbfd96fdb6dec02cfe (patch)
treed22f3e7228cf89ac7152517c98149b4778c6db04 /include/JSystem
parent331847e88ff809875cb2b643e8434a3a10b7446e (diff)
parentf0cc6a9bef1422bb5d63cfe452772a76499ea0fd (diff)
Merge remote-tracking branch 'upstream/main'
Diffstat (limited to 'include/JSystem')
-rw-r--r--include/JSystem/JKernel/JKRAramArchive.h2
-rw-r--r--include/JSystem/JKernel/JKRArchive.h9
-rw-r--r--include/JSystem/JKernel/JKRCompArchive.h2
-rw-r--r--include/JSystem/JKernel/JKRDvdArchive.h2
-rw-r--r--include/JSystem/JKernel/JKRExpHeap.h7
-rw-r--r--include/JSystem/JKernel/JKRHeap.h2
-rw-r--r--include/JSystem/JKernel/JKRMemArchive.h2
-rw-r--r--include/JSystem/JKernel/JKRSolidHeap.h2
-rw-r--r--include/JSystem/JKernel/JKRThread.h57
9 files changed, 17 insertions, 68 deletions
diff --git a/include/JSystem/JKernel/JKRAramArchive.h b/include/JSystem/JKernel/JKRAramArchive.h
index 4c638dbd..5f8d2841 100644
--- a/include/JSystem/JKernel/JKRAramArchive.h
+++ b/include/JSystem/JKernel/JKRAramArchive.h
@@ -27,8 +27,6 @@ public:
private:
/* 0x00 */ // vtable
/* 0x04 */ // JKRArchive
- /* 0x5C */ JKRCompression mCompression;
- /* 0x60 */ EMountDirection mMountDirection;
/* 0x64 */ JKRAramBlock* mBlock;
/* 0x68 */ JKRDvdFile* mDvdFile;
}; // Size = 0x6C
diff --git a/include/JSystem/JKernel/JKRArchive.h b/include/JSystem/JKernel/JKRArchive.h
index 4211d3ed..8ef03c41 100644
--- a/include/JSystem/JKernel/JKRArchive.h
+++ b/include/JSystem/JKernel/JKRArchive.h
@@ -5,6 +5,7 @@
#include "JSystem/JKernel/JKRFileLoader.h"
#include "global.h"
+class JKRArcFinder;
class JKRHeap;
struct SArcHeader {
@@ -129,7 +130,8 @@ public:
void* getResource(u16);
u32 readIdxResource(void*, u32, u32);
u32 readResource(void*, u32, u16);
- u32 countResource(void) const;
+ u32 countResource(u32) const;
+ JKRArcFinder* getFirstResource(u32) const;
u32 getFileAttribute(u32) const;
SDIFileEntry* findNameResource(const char*) const;
@@ -182,13 +184,16 @@ public:
protected:
/* 0x58 */ u32 field_0x58;
+ /* 0x5C */ JKRCompression mCompression;
+ /* 0x60 */ EMountDirection mMountDirection;
public:
- static JKRArchive* check_mount_already(s32, JKRHeap*);
+ static JKRArchive* check_mount_already(s32);
static JKRArchive* mount(const char*, EMountMode, JKRHeap*, EMountDirection);
static JKRArchive* mount(void*, JKRHeap*, EMountDirection);
static JKRArchive* mount(s32, EMountMode, JKRHeap*, EMountDirection);
static void* getGlbResource(u32, const char*, JKRArchive*);
+ static void readTypeResource(void*, u32, u32, const char*, JKRArchive*);
static JKRCompression convertAttrToCompressionType(u32 attr) {
#define JKRARCHIVE_ATTR_COMPRESSION 0x04
diff --git a/include/JSystem/JKernel/JKRCompArchive.h b/include/JSystem/JKernel/JKRCompArchive.h
index 98da6327..338332fb 100644
--- a/include/JSystem/JKernel/JKRCompArchive.h
+++ b/include/JSystem/JKernel/JKRCompArchive.h
@@ -24,8 +24,6 @@ public:
private:
/* 0x00 */ // vtable
/* 0x04 */ // JKRArchive
- /* 0x5C */ int mCompression;
- /* 0x60 */ EMountDirection mMountDirection;
/* 0x64 */ int field_0x64;
/* 0x68 */ JKRAramBlock* mAramPart;
/* 0x6C */ int field_0x6c;
diff --git a/include/JSystem/JKernel/JKRDvdArchive.h b/include/JSystem/JKernel/JKRDvdArchive.h
index e2e6b408..fe72cd8f 100644
--- a/include/JSystem/JKernel/JKRDvdArchive.h
+++ b/include/JSystem/JKernel/JKRDvdArchive.h
@@ -23,8 +23,6 @@ public:
private:
/* 0x00 */ // vtable
/* 0x04 */ // JKRArchive
- /* 0x5C */ JKRCompression mCompression;
- /* 0x60 */ EMountDirection mMountDirection;
/* 0x64 */ s32 field_0x64;
/* 0x68 */ JKRDvdFile* mDvdFile;
};
diff --git a/include/JSystem/JKernel/JKRExpHeap.h b/include/JSystem/JKernel/JKRExpHeap.h
index 3d566c03..6a89271e 100644
--- a/include/JSystem/JKernel/JKRExpHeap.h
+++ b/include/JSystem/JKernel/JKRExpHeap.h
@@ -56,11 +56,12 @@ protected:
void removeUsedBlock(CMemBlock* block);
void recycleFreeBlock(CMemBlock* block);
void joinTwoBlocks(CMemBlock* block);
+ bool dump_sort_by_address();
public:
s32 getUsedSize(u8 groupId) const;
s32 getTotalUsedSize(void) const;
-
+
CMemBlock* getHeadUsedList() const { return mHeadUsedList; }
void setAllocationMode(EAllocMode mode) {
mAllocMode = mode;
@@ -76,7 +77,7 @@ public:
/* vt[10] */ virtual void do_free(void* ptr); /* override */
/* vt[11] */ virtual void do_freeAll(); /* override */
/* vt[12] */ virtual void do_freeTail(); /* override */
- /* vt[13] */ virtual void do_fillFreeArea(); /* override */
+ /* vt[13] */ virtual void do_freeFill(); /* override */
/* vt[14] */ virtual s32 do_resize(void* ptr, u32 size); /* override */
/* vt[15] */ virtual s32 do_getSize(void* ptr); /* override */
/* vt[16] */ virtual s32 do_getFreeSize(); /* override */
@@ -84,7 +85,7 @@ public:
/* vt[18] */ virtual s32 do_getTotalFreeSize(); /* override */
/* vt[19] */ virtual s32 do_changeGroupID(u8 newGroupID); /* override */
/* vt[20] */ virtual u8 do_getCurrentGroupId(); /* override */
- /* vt[21] */ virtual u32 state_register(JKRHeap::TState* p, u32 id) const; /* override */
+ /* vt[21] */ virtual void state_register(JKRHeap::TState* p, u32 id) const; /* override */
/* vt[22] */ virtual bool state_compare(JKRHeap::TState const& r1,
JKRHeap::TState const& r2) const; /* override */
diff --git a/include/JSystem/JKernel/JKRHeap.h b/include/JSystem/JKernel/JKRHeap.h
index f8703af8..be6ea956 100644
--- a/include/JSystem/JKernel/JKRHeap.h
+++ b/include/JSystem/JKernel/JKRHeap.h
@@ -67,7 +67,7 @@ public:
/* vt[10] */ virtual void do_free(void* ptr) = 0;
/* vt[11] */ virtual void do_freeAll() = 0;
/* vt[12] */ virtual void do_freeTail() = 0;
- /* vt[13] */ virtual void do_fillFreeArea() = 0;
+ /* vt[13] */ virtual void do_freeFill() = 0;
/* vt[14] */ virtual s32 do_resize(void* ptr, u32 size) = 0;
/* vt[15] */ virtual s32 do_getSize(void* ptr) = 0;
/* vt[16] */ virtual s32 do_getFreeSize() = 0;
diff --git a/include/JSystem/JKernel/JKRMemArchive.h b/include/JSystem/JKernel/JKRMemArchive.h
index ba76ab1e..eb09c0b2 100644
--- a/include/JSystem/JKernel/JKRMemArchive.h
+++ b/include/JSystem/JKernel/JKRMemArchive.h
@@ -31,8 +31,6 @@ public:
private:
/* 0x00 */ // vtable
/* 0x04 */ // JKRArchive
- /* 0x5C */ JKRCompression mCompression;
- /* 0x60 */ EMountDirection mMountDirection;
/* 0x64 */ SArcHeader* mArcHeader;
/* 0x68 */ u8* mArchiveData;
/* 0x6C */ bool mIsOpen;
diff --git a/include/JSystem/JKernel/JKRSolidHeap.h b/include/JSystem/JKernel/JKRSolidHeap.h
index 069b87ea..83a6e918 100644
--- a/include/JSystem/JKernel/JKRSolidHeap.h
+++ b/include/JSystem/JKernel/JKRSolidHeap.h
@@ -32,7 +32,7 @@ public:
/* vt[10] */ virtual void do_free(void*); /* override */
/* vt[11] */ virtual void do_freeAll(void); /* override */
/* vt[12] */ virtual void do_freeTail(void); /* override */
- /* vt[13] */ virtual void do_fillFreeArea(void); /* override */
+ /* vt[13] */ virtual void do_freeFill(void); /* override */
/* vt[14] */ virtual s32 do_resize(void*, u32); /* override */
/* vt[15] */ virtual s32 do_getSize(void*); /* override */
/* vt[16] */ virtual s32 do_getFreeSize(void); /* override */
diff --git a/include/JSystem/JKernel/JKRThread.h b/include/JSystem/JKernel/JKRThread.h
index f56a9231..ca4e8567 100644
--- a/include/JSystem/JKernel/JKRThread.h
+++ b/include/JSystem/JKernel/JKRThread.h
@@ -14,53 +14,11 @@ struct JKRThreadName_ {
class JUTConsole;
class JKRThread : JKRDisposer {
public:
- class TLoad {
- public:
- TLoad() {
- clear();
- mValid = false;
- mThreadId = 0;
- }
-
- bool isValid() const { return mValid; }
- u32 getCost() const { return mCost; }
- u32 getCount() const { return mSwitchCount; }
- s32 getId() const { return mThreadId; }
-
- void setValid(bool valid) { mValid = valid; }
- void setId(s32 id) { mThreadId = id; }
- void setCurrentTime() { mLastTick = OSGetTick(); }
-
- void resetCost() { mCost = 0; }
- void resetCount() { mSwitchCount = 0; }
-
- void incCount() { mSwitchCount++; }
- void addCurrentCost() { mCost = mCost + (OSGetTick() - mLastTick); }
-
- void clear() {
- resetCount();
- resetCost();
- mLastTick = 0;
- }
-
- private:
- /* 0x00 */ bool mValid;
- /* 0x01 */ u8 padding_0x61[3];
- /* 0x04 */ u32 mCost;
- /* 0x08 */ u32 mSwitchCount;
- /* 0x0C */ OSTick mLastTick;
- /* 0x10 */ s32 mThreadId;
- };
-
JKRThread(u32 stack_size, int message_count, int param_3);
- JKRThread(JKRHeap* heap, u32 stack_size, int message_count, int param_4);
JKRThread(OSThread* thread, int message_count);
virtual ~JKRThread();
- /* vt[03] */ virtual void* run();
-
- void setCommon_mesgQueue(JKRHeap* heap, int message_count);
- void setCommon_heapSpecified(JKRHeap* heap, u32 stack_size, int param_3);
+ /* vt[03] */ virtual void* run() { return NULL; }
OSThread* getThreadRecord() const { return mThreadRecord; }
void* getStack() const { return mStackMemory; }
@@ -122,9 +80,6 @@ typedef void (*JKRThreadSwitch_PostCallback)(OSThread* current, OSThread* next);
class JKRThreadSwitch {
public:
JKRThreadSwitch(JKRHeap*);
- virtual void draw(JKRThreadName_* param_1, JUTConsole* param_2);
- virtual void draw(JKRThreadName_* param_1);
- virtual ~JKRThreadSwitch();
static JKRThreadSwitch* createManager(JKRHeap* heap);
@@ -145,13 +100,9 @@ private:
/* 0x00 */ // vtable
/* 0x04 */ JKRHeap* mHeap;
/* 0x08 */ bool mSetNextHeap;
- /* 0x09 */ u8 field_0x9[3];
- /* 0x0C */ u32 field_0xC;
- /* 0x10 */ u32 field_0x10;
- /* 0x14 */ u8 field_0x14[4];
- /* 0x18 */ s64 field_0x18;
- /* 0x20 */ u32 field_0x20;
- /* 0x24 */ u32 field_0x24;
+
+public:
+ virtual ~JKRThreadSwitch() {}
};
struct JKRTask {