SceSysStateMgr: Difference between revisions

From Vita Development Wiki
Jump to navigation Jump to search
Line 236: Line 236:
<source>
<source>
cd sd0:kd/
cd sd0:kd/
load ./module.skprx
load module.skprx
# -> load "sd0:kd/./module.skprx"
# -> load "sd0:kd/module.skprx"
</source>
</source>



Revision as of 00:28, 22 October 2020

This module initializes part of the kernel, loads the scripted config and loads the rest of the modules needed for boot.

also see : Boot Sequence(SceSysStateMgr)

boot configs

The lower the priority, the higher.

.rpath is Remote Path

Priority Path Type
0 host0:psp2config.skprx Module
1 sd0:psp2config.skprx Module
2 ux0:psp2config.skprx Module
3 os0:psp2config_dolce.skprx Module
3 os0:psp2config_vita.skprx Module
? host0:psp2config.rpath Plaintext

command prefixs

#

to comment.

-

to ignore error.

&

unknown.

module load path processing

Space cannot be included in path, and the written after the space is ignored by module load.

load sd0:module.skprx this args param1
# -> load sd0:module.skprx and pass "sd0:module.skprx this args param1" to argp.


bootconfig commands

load

load sd0:module.skprx

unload

unload sd0:module.skprx

loadonly

loadonly sd0:module.skprx

start

start sd0:module.skprx

stop

stop sd0:module.skprx

unloadonly

unloadonly sd0:module.skprx

spawn

Create a new process.

if SAFE_MODE
spawn os0:ue/safemode.self
end
endif

spawnwait

Create a new process and wait until it finishes.

if MANUFACTURING_MODE
- spawnwait sd0:psp2diag.self
- spawnwait ux0:psp2diag.self
endif

wait

Probably wait for the process to finish.

kill

unknown

end

defines the end of config.

if SAFE_MODE
spawn os0:ue/safemode.self
end
endif

sleep

unknown

echo

unknown

loadconfig

same to include

- loadconfig sd0:boot_config_second.txt

if

defines if statement.

if USB_ENUM_WAKEUP
load os0:kd/enum_wakeup.skprx
endif

MANUFACTURING_MODE

EXTERNAL_BOOT_MODE

UPDATE_MODE

USB_ENUM_WAKEUP

BSOD_REBOOT

UD0_EXIST

SAFE_MODE

DEVELOPMENT_MODE

AU_CODEC_IC_CONEXANT

ifmodel

maybe same to if

ifnmodel

ifnmodel USB_ENUM_WAKEUP
# if USB_ENUM_WAKEUP is 0, load module.skprx.
load sd0:module.skprx
endif

else

Define when branching with if statement.

if USB_ENUM_WAKEUP
load os0:kd/enum_wakeup.skprx
else
load sd0:module.skprx
endif

endif

Define at the end of if statement.

if USB_ENUM_WAKEUP
load os0:kd/enum_wakeup.skprx
endif

include

include add config.

- include sd0:boot_config_second.txt

cd

Setting working dir

cd sd0:kd/
load module.skprx
# -> load "sd0:kd/module.skprx"

setenv

same to setmodfile.

Looks similar to setenv on Linux.

setmodfile

unknown

repeat

Probably not implemented in 3.60

endrepeat

Probably not implemented in 3.60

appspawn

- appspawn vs0:vsh/shell/shell.self SHELL_BUDGET_ID

or

- appspawn sd0:game.self GAME_BUDGET_ID

tload

Only when dipsw(0xD2) is valid, LoadStart the module to the devkit dedicated memory. it "tool load"

tload sd0:module.skprx

umount_bootfs

unmount bootfs

umount_bootfs

sload

LoadStart only on hardware that matches "HardwareInfo & 0x40 != 0"

sload sd0:module.skprx