Files
2024-05-11 23:24:13 +02:00

64 lines
1.5 KiB
Odin

package paf
import sce "../common"
import "core:c"
scePafGraphicsCurrentWave :: sce.UInt32
ScePafDateTime :: struct {
data: sce.DateTime,
data_0x10: c.int,
data_0x14: c.int,
}
#assert(size_of(ScePafDateTime) == 0x18)
ScePafSha1Context :: struct {
// size is 0x68
h: [5]c.uint32_t,
unk: [0x54]c.char,
}
#assert(size_of(ScePafSha1Context) == 0x68)
// TODO: copy-pasted from Kernel/types.odin. should be in common or something
SceKernelLwMutexWork :: struct {
data: [4]sce.Int64,
}
#assert(size_of(SceKernelLwMutexWork) == 0x20)
ScePafHeapContext :: struct {
// size is 0x60-bytes
vtable: rawptr,
heap: rawptr,
membase: rawptr,
size: sce.Size,
name: [0x20]c.char,
is_import_membase: sce.Char8,
is_skip_debug_msg: sce.Char8,
data_0x32: c.char,
data_0x33: c.char, // maybe unused. just for align.
data_0x34: c.int, // maybe unused. just for align.
lw_mtx: SceKernelLwMutexWork,
memblk_id: sce.UID,
/*
* !1 : Game
* 1 : CDialog
*/
mode: sce.Int32,
}
when size_of(rawptr) == 4 {
#assert(size_of(ScePafHeapContext) == 0x60)
}
ScePafHeapOpt :: struct {
// size is 0x14-bytes
a1: c.int,
a2: c.int,
is_skip_debug_msg: sce.Char8,
a3: [3]c.char,
mode: sce.Int32,
a5: c.int,
}
#assert(size_of(ScePafHeapOpt) == 0x14)