Copy JKernel (#126)

* start JSystem

* JKRAram and JUTGamePad

* started heap and thread

* more JKernel

* mostly finished JKernel

* delete unused asm

* JKRFileFinder

* delete unused asm and match findNextFile

* format

* fix mtx_vec
This commit is contained in:
lepelog
2021-05-03 02:03:24 +02:00
committed by GitHub
parent 913bb08f51
commit 0b8db42226
360 changed files with 6646 additions and 12699 deletions
+9 -29
View File
@@ -6,39 +6,19 @@
#include "JSystem/JKernel/JKRFile.h"
#include "dol2asm.h"
#include "dolphin/types.h"
//
// Types:
//
struct JKRFile {
/* 802D9518 */ void read(void*, s32, s32);
};
//
// Forward References:
//
extern "C" void read__7JKRFileFPvll();
//
// External References:
//
extern "C" void VIWaitForRetrace();
extern "C" void _savegpr_28();
extern "C" void _restgpr_28();
#include "dolphin/vi/vi.h"
//
// Declarations:
//
/* 802D9518-802D9584 2D3E58 006C+00 0/0 2/2 0/0 .text read__7JKRFileFPvll */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void JKRFile::read(void* param_0, s32 param_1, s32 param_2) {
nofralloc
#include "asm/JSystem/JKernel/JKRFile/read__7JKRFileFPvll.s"
s32 JKRFile::read(void* data, s32 size, long offset) {
while (true) {
s32 result = readData(data, size, offset);
if (size != result)
VIWaitForRetrace();
else
return result;
}
}
#pragma pop