From 2095d3132044887a885525bde89bdc70ed9b9deb Mon Sep 17 00:00:00 2001 From: GrayJack Date: Fri, 16 Oct 2026 20:03:56 -0300 Subject: [PATCH] feat: Update `PspIoDrvFileArg` definition and add more compat type aliases --- src/kernel/pspiofilemgr_kernel.h | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/src/kernel/pspiofilemgr_kernel.h b/src/kernel/pspiofilemgr_kernel.h index d2d8eeb62b..fe5fef504f 100644 --- a/src/kernel/pspiofilemgr_kernel.h +++ b/src/kernel/pspiofilemgr_kernel.h @@ -43,14 +43,14 @@ typedef struct PspIoDrvArg /** Structure passed to the file functions of the io driver system */ typedef struct PspIoDrvFileArg { - /** Unknown */ - u32 unk1; + /** The file flags. Bit or'ed `PSP_O_*` flags */ + u32 flags; /** The file system number, e.g. if a file is opened as host5:/myfile.txt this field will be 5 */ u32 fs_num; - /** Pointer to the driver structure */ + /** A pointer to the driver entry data */ PspIoDrvArg *drv; - /** Unknown, again */ - u32 unk2; + /** The device attributes */ + u32 dev_attr; /** Pointer to a user defined argument, this is preserved on a per file basis */ void *arg; } PspIoDrvFileArg; @@ -98,6 +98,12 @@ typedef struct PspIoDrv /** Compat: Name used on UOFW and March33 for `PspIoDrv` */ typedef PspIoDrv SceIoDeviceTable; +/** Compat: Name used on UOFW and March33 for `PspIoDrvFileArg` */ +typedef PspIoDrvFileArg SceIoIob; +/** Compat: Name used on UOFW and March33 for `PspIoDrvArg` */ +typedef PspIoDrvArg SceIoDeviceEntry; +/** Compat: Name used on UOFW and March33 for `PspIoDrvArg` */ +typedef PspIoDrvFuncs SceIoDeviceFunction; /** * Adds a new IO driver to the system.