obkrnl/config/param1.rs
1use super::Config;
2use alloc::sync::Arc;
3
4/// Boot time overrides that are not scaled against main memory.
5pub struct Param1 {
6 msgbuf_size: usize, // msgbufsize
7}
8
9impl Param1 {
10 /// See `init_param1` on the Orbis for a reference.
11 ///
12 /// # Reference offsets
13 /// | Version | Offset |
14 /// |---------|--------|
15 /// |PS4 11.00|0x1A5340|
16 pub fn new(config: &Config) -> Arc<Self> {
17 let msgbuf_size = config
18 .env("kern.msgbufsize")
19 .map(|v| v.parse().unwrap())
20 .unwrap_or(0x10000);
21
22 Arc::new(Self { msgbuf_size })
23 }
24
25 pub fn msgbuf_size(&self) -> usize {
26 self.msgbuf_size
27 }
28}