Merge pull request #151 from Wellinator/feature/posix-drivers

Feature posix drivers loading
This commit is contained in:
Sandro Sobczyński
2023-11-11 17:37:41 +01:00
committed by GitHub
4 changed files with 26 additions and 0 deletions
+1
View File
@@ -27,6 +27,7 @@ class IrxLoader {
void loadSio2man(const bool& verbose); void loadSio2man(const bool& verbose);
void loadPadman(const bool& verbose); void loadPadman(const bool& verbose);
void loadLibsd(const bool& verbose); void loadLibsd(const bool& verbose);
void loadIO(const bool& verbose);
void loadUsbModules(const bool& verbose); void loadUsbModules(const bool& verbose);
void loadAudsrv(const bool& verbose); void loadAudsrv(const bool& verbose);
+2
View File
@@ -0,0 +1,2 @@
$PS2SDK/iop/irx/fileXio.irx
fileXio_irx
+2
View File
@@ -0,0 +1,2 @@
$PS2SDK/iop/irx/iomanX.irx
iomanX_irx
+21
View File
@@ -28,6 +28,8 @@ EXTERN_IRX(sio2man_irx);
EXTERN_IRX(padman_irx); EXTERN_IRX(padman_irx);
EXTERN_IRX(audsrv_irx); EXTERN_IRX(audsrv_irx);
EXTERN_IRX(libsd_irx); EXTERN_IRX(libsd_irx);
EXTERN_IRX(fileXio_irx);
EXTERN_IRX(iomanX_irx);
EXTERN_IRX(bdm_irx); EXTERN_IRX(bdm_irx);
EXTERN_IRX(bdmfs_fatfs_irx); EXTERN_IRX(bdmfs_fatfs_irx);
EXTERN_IRX(usbd_irx); EXTERN_IRX(usbd_irx);
@@ -58,6 +60,7 @@ void IrxLoader::loadAll(const bool& withUsb, const bool& isLoggingToFile) {
return; return;
} }
loadIO(!isLoggingToFile);
loadSio2man(!isLoggingToFile); loadSio2man(!isLoggingToFile);
loadPadman(!isLoggingToFile); loadPadman(!isLoggingToFile);
loadLibsd(!isLoggingToFile); loadLibsd(!isLoggingToFile);
@@ -104,6 +107,24 @@ void IrxLoader::loadLibsd(const bool& verbose) {
if (verbose) TYRA_LOG("IRX: Libsd loaded!"); if (verbose) TYRA_LOG("IRX: Libsd loaded!");
} }
void IrxLoader::loadIO(const bool& verbose) {
int ret;
if (verbose) TYRA_LOG("IRX: Loading iomanX...");
SifExecModuleBuffer(&iomanX_irx, size_iomanX_irx, 0, nullptr, &ret);
TYRA_ASSERT(ret >= 0, "Failed to load module: iomanX_irx");
if (verbose) TYRA_LOG("IRX: iomanX loaded!");
if (verbose) TYRA_LOG("IRX: Loading fileXio...");
SifExecModuleBuffer(&fileXio_irx, size_fileXio_irx, 0, nullptr, &ret);
TYRA_ASSERT(ret >= 0, "Failed to load module: fileXio_irx");
if (verbose) TYRA_LOG("IRX: fileXio_irx loaded!");
}
void IrxLoader::loadUsbModules(const bool& verbose) { void IrxLoader::loadUsbModules(const bool& verbose) {
if (verbose) TYRA_LOG("IRX: Loading usb modules..."); if (verbose) TYRA_LOG("IRX: Loading usb modules...");