jak-project/game/overlord/overlord.cpp

71 lines
1.6 KiB
C++
Raw Normal View History

2020-08-22 22:30:12 -04:00
#include <cstring>
#include "overlord.h"
#include "game/sce/iop.h"
#include "ramdisk.h"
#include "iso.h"
#include "ssound.h"
#include "sbank.h"
using namespace iop;
int start_overlord(int argc, const char* const* argv) {
(void)argc;
FlushDcache();
CpuEnableIntr();
2020-08-26 01:21:33 -04:00
if (!sceSifCheckInit()) {
2020-08-22 22:30:12 -04:00
sceSifInit();
}
sceSifInitRpc(0);
InitBanks();
InitSound_Overlord();
InitRamdisk();
2020-08-26 01:21:33 -04:00
// RegisterVblankHandler(0, 0x20, VBlank_Handler, nullptr);
2020-08-22 22:30:12 -04:00
ThreadParam thread_param;
thread_param.attr = TH_C;
thread_param.initPriority = 98;
thread_param.stackSize = 0x800;
thread_param.option = 0;
thread_param.entry = (void*)Thread_Server;
2020-08-26 01:21:33 -04:00
strcpy(thread_param.name, "Server"); // added
2020-08-22 22:30:12 -04:00
auto thread_server = CreateThread(&thread_param);
2020-08-26 01:21:33 -04:00
if (thread_server <= 0) {
2020-08-22 22:30:12 -04:00
return 1;
}
2020-08-26 01:21:33 -04:00
// thread_param.attr = TH_C;
// thread_param.initPriority = 96;
// thread_param.stackSize = 0x800;
// thread_param.option = 0;
// thread_param.entry = Thread_Player;
// auto thread_player = CreateThread(&thread_param);
// if(thread_player <= 0) {
// return 1;
// }
//
// thread_param.attr = TH_C;
// thread_param.initPriority = 99;
// thread_param.stackSize = 0x1000;
// thread_param.option = 0;
// thread_param.entry = Thread_Loader;
// auto thread_loader = CreateThread(&thread_param);
// if(thread_loader <= 0) {
// return 1;
// }
2020-08-22 22:30:12 -04:00
InitISOFS(argv[1], argv[2]);
StartThread(thread_server, 0);
2020-08-26 01:21:33 -04:00
// StartThread(thread_player, 0);
// StartThread(thread_loader, 0);
2020-08-22 22:30:12 -04:00
return 0;
}
/*!
* Loop endlessly and never return.
*/
void ExitIOP() {
2020-08-26 01:21:33 -04:00
while (true) {
2020-08-22 22:30:12 -04:00
}
}