Difference between revisions of "SceKernelBootimage"

From Vita Development Wiki
Jump to navigation Jump to search
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
== Module ==
 
== Module ==
  
=== Known NIDs ===
 
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
! Version !! Name !! World !! Privilege !! NID
+
! Version !! World !! Privilege
 
|-
 
|-
| 3.65 || SceKernelBootimage || Non-secure || Kernel || 0x6A9516D0
+
| 3.60-3.65 || Non-secure || Kernel
 
|}
 
|}
  
Line 17: Line 16:
 
! Version !! Name !! World !! Visibility !! NID
 
! Version !! Name !! World !! Visibility !! NID
 
|-
 
|-
| 3.65 || [[SceKernelBootimage#SceKernelBootimage|SceKernelBootimage]] || Non-secure || Kernel || 0x17E65BD7
+
| 3.60-3.65 || [[SceKernelBootimage#SceKernelBootimage|SceKernelBootimage]] || Non-secure || Kernel || 0x17E65BD7
 
|}
 
|}
  
Line 26: Line 25:
 
           entries_btm: 0xC08FC9B5 (1.00: used, 3.60: unused)
 
           entries_btm: 0xC08FC9B5 (1.00: used, 3.60: unused)
 
           entries_top: 0xDF5E79B8 (1.00: used, 3.60: unused)
 
           entries_top: 0xDF5E79B8 (1.00: used, 3.60: unused)
 +
 +
=== sceKernelBootimageInfo ===
 +
{| class="wikitable"
 +
|-
 +
! Version !! NID
 +
|-
 +
| 3.60 || 0x9C08E88A
 +
|}
 +
 +
<source lang="C">
 +
// on 3.60
 +
typedef struct SceKernelBootimageModules {
 +
const char *path;
 +
const void *data;
 +
SceSize size;
 +
} SceKernelBootimageModules;
 +
 +
typedef struct SceKernelBootimageInfo {
 +
SceSize number;
 +
const SceKernelBootimageModules *list;
 +
} SceKernelBootimageInfo;
 +
 +
const SceKernelBootimageInfo *sceKernelBootimageInfo;
 +
</source>
  
 
== Description ==
 
== Description ==

Revision as of 10:47, 30 October 2020

Module

Version World Privilege
3.60-3.65 Non-secure Kernel

Libraries

Known NIDs

Version Name World Visibility NID
3.60-3.65 SceKernelBootimage Non-secure Kernel 0x17E65BD7

SceKernelBootimage

variables:

         entries_number: 0x9C08E88A (1.00: unused, 3.60: used)
         entries_btm: 0xC08FC9B5 (1.00: used, 3.60: unused)
         entries_top: 0xDF5E79B8 (1.00: used, 3.60: unused)

sceKernelBootimageInfo

Version NID
3.60 0x9C08E88A
// on 3.60
typedef struct SceKernelBootimageModules {
	const char *path;
	const void *data;
	SceSize size;
} SceKernelBootimageModules;

typedef struct SceKernelBootimageInfo {
	SceSize number;
	const SceKernelBootimageModules *list;
} SceKernelBootimageInfo;

const SceKernelBootimageInfo *sceKernelBootimageInfo;

Description

os0:kd/bootimage.skprx when decrypted contains a list of ELFs that are decrypted ELFs of the following SELFs. Their path returned in library information function calls are prefixed with bootfs:. The actual structure of the decrypted boot image is just a list of the decrypted ELFs for each of the images in the order below.

os0:kd/clockgen.skprx
os0:kd/idstorage.skprx
os0:kd/ctrl.skprx
os0:kd/touch.skprx
os0:kd/motion.skprx
os0:kd/codec.skprx
os0:kd/audio.skprx
os0:kd/hpremote.skprx
os0:kd/power.skprx
os0:kd/usbd.skprx
os0:kd/udcd.skprx
os0:kd/usbserv.skprx
os0:kd/usbserial.skprx
os0:kd/usbmtp.skprx
os0:kd/mtpif.skprx
os0:kd/post_ss_mgr.skprx
os0:kd/update_mgr.skprx
os0:kd/regmgr.skprx
os0:kd/fwloader.skprx
os0:kd/vnz_wrapper.skprx
os0:kd/error.skprx
os0:kd/npdrm.skprx
os0:kd/ulobjmgr.skprx
os0:kd/net_ps.skprx
os0:kd/gps.skprx
os0:kd/bbmc.skprx
os0:kd/wlanbt.skprx
os0:kd/usb_ether_smsc.skprx
os0:kd/bt.skprx
os0:kd/usbstor.skprx
os0:kd/usbstorvstor.skprx
os0:kd/avcodec.skprx
os0:kd/audioin.skprx
os0:kd/ngs.skprx
os0:kd/gpu_es4.skprx
os0:kd/gpuinit_es4.skprx
os0:kd/compat.skprx
os0:kd/camera.skprx
os0:kd/coredump.skprx
os0:kd/av_config.skprx
os0:kd/fios2.skprx
os0:kd/pfsmgr.skprx
os0:kd/appmgr.skprx
os0:kd/sysmodule.skprx
os0:kd/vshbridge.skprx
os0:kd/tty2uart.skprx