added kernel libraries bindings and cleaned up todos

This commit is contained in:
2024-05-12 16:16:15 +02:00
parent e9824cbd95
commit 8a5e2870f6
68 changed files with 3278 additions and 92 deletions
+47
View File
@@ -4,6 +4,7 @@ import "core:c"
import sce "../common"
foreign import fios2 "system:SceFios2Kernel_stub"
foreign import fios2kern "system:SceFios2KernelForDriver_stub"
@(link_prefix = "_sceFiosKernelOverlay")
foreign fios2 {
@@ -35,3 +36,49 @@ foreign fios2 {
@(link_name = "sceFiosKernelOverlayAddForProcess02")
AddForProcess02 :: proc(pid: sce.UID, overlay: ^SceFiosOverlay, outID: ^SceFiosOverlayID) -> c.int ---
}
foreign fios2kern {
/**
* Overlay process file system overlay
*
* @param[in] overlay - Overlay config pointer
* @param[out] outID - outID pointer
*
* @return Error code or zero on success
*/
ksceFiosKernelOverlayAdd :: proc(overlay: ^SceFiosOverlay, outID: ^SceFiosOverlayID) -> c.int ---
/**
* Overlay process file system overlay
*
* @param[in] pid - Process id
* @param[in] overlay - Overlay config pointer
* @param[out] outID - outID pointer
*
* @return Error code or zero on success
*/
ksceFiosKernelOverlayAddForProcess :: proc(pid: sce.UID, overlay: ^SceFiosOverlay, outID: ^SceFiosOverlayID) -> c.int ---
/**
* Remove process file system overlay
*
* @param[in] pid - Process id
* @param[in] id - Overlay id
*
* @return Error code or zero on success
*/
ksceFiosKernelOverlayRemoveForProcess :: proc(pid: sce.UID, id: SceFiosOverlayID) -> c.int ---
/**
* Resolve process file system overlay with sync
*
* @param[in] pid - Process id
* @param[in] resolveFlag - Some flags
* @param[in] inPath - Path input
* @param[out] outPath - Path output
* @param[in] maxPath - Path output max length
*
* @return Error code or zero on success
*/
ksceFiosKernelOverlayResolveSync :: proc(pid: sce.UID, resolveFlag: c.int, inPath: cstring, outPath: [^]c.char, maxPath: sce.Size) -> c.int ---
}