mirror of
https://github.com/Atmosphere-NX/Atmosphere.git
synced 2025-06-02 15:49:48 -04:00
boot: prepare for rewrite of boot sysmodule
This commit is contained in:
parent
6034beb084
commit
7c5dc61795
12 changed files with 2902 additions and 2498 deletions
|
@ -96,7 +96,7 @@ export DEPSDIR := $(CURDIR)/$(BUILD)
|
|||
CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
|
||||
CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
|
||||
SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
|
||||
KIPFILES := loader.kip pm.kip sm.kip ams_mitm.kip spl.kip boot_100.kip boot_200.kip
|
||||
KIPFILES := loader.kip pm.kip sm.kip ams_mitm.kip spl.kip boot.kip
|
||||
BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*))) fusee-primary.bin \
|
||||
exosphere.bin lp0fw.bin rebootstub.bin thermosphere.bin splash_screen.bmp \
|
||||
sept-primary.bin sept-secondary.enc \
|
||||
|
|
|
@ -220,10 +220,8 @@ SECTIONS
|
|||
======================= */
|
||||
PROVIDE(__ams_mitm_kip_start__ = ams_mitm_kip - __start__);
|
||||
PROVIDE(__ams_mitm_kip_size__ = ams_mitm_kip_end - ams_mitm_kip);
|
||||
PROVIDE(__boot_100_kip_start__ = boot_100_kip - __start__);
|
||||
PROVIDE(__boot_100_kip_size__ = boot_100_kip_end - boot_100_kip);
|
||||
PROVIDE(__boot_200_kip_start__ = boot_200_kip - __start__);
|
||||
PROVIDE(__boot_200_kip_size__ = boot_200_kip_end - boot_200_kip);
|
||||
PROVIDE(__boot_kip_start__ = boot_kip - __start__);
|
||||
PROVIDE(__boot_kip_size__ = boot_kip_end - boot_kip);
|
||||
PROVIDE(__exosphere_bin_start__ = exosphere_bin - __start__);
|
||||
PROVIDE(__exosphere_bin_size__ = exosphere_bin_end - exosphere_bin);
|
||||
PROVIDE(__fusee_primary_bin_start__ = fusee_primary_bin - __start__);
|
||||
|
|
|
@ -103,20 +103,12 @@ _content_headers:
|
|||
.asciz "ams_mitm"
|
||||
.align 5
|
||||
|
||||
/* boot_100 content header */
|
||||
.word __boot_100_kip_start__
|
||||
.word __boot_100_kip_size__
|
||||
/* boot content header */
|
||||
.word __boot_kip_start__
|
||||
.word __boot_kip_size__
|
||||
.word CONTENT_TYPE_KIP
|
||||
.word 0xCCCCCCCC
|
||||
.asciz "boot_100"
|
||||
.align 5
|
||||
|
||||
/* boot_200 content header */
|
||||
.word __boot_200_kip_start__
|
||||
.word __boot_200_kip_size__
|
||||
.word CONTENT_TYPE_KIP
|
||||
.word 0xCCCCCCCC
|
||||
.asciz "boot_200"
|
||||
.asciz "boot"
|
||||
.align 5
|
||||
|
||||
/* exosphere content header */
|
||||
|
|
|
@ -33,8 +33,7 @@
|
|||
#include "pm_kip.h"
|
||||
#include "sm_kip.h"
|
||||
#include "ams_mitm_kip.h"
|
||||
#include "boot_100_kip.h"
|
||||
#include "boot_200_kip.h"
|
||||
#include "boot_kip.h"
|
||||
#include "spl_kip.h"
|
||||
#undef u8
|
||||
#undef u32
|
||||
|
@ -49,16 +48,12 @@ static bool g_stratosphere_ams_mitm_enabled = true;
|
|||
static bool g_stratosphere_spl_enabled = true;
|
||||
static bool g_stratosphere_boot_enabled = false;
|
||||
|
||||
extern const uint8_t boot_100_kip[], boot_200_kip[];
|
||||
extern const uint8_t loader_kip[], pm_kip[], sm_kip[], spl_kip[], ams_mitm_kip[];
|
||||
extern const uint32_t boot_100_kip_size, boot_200_kip_size;
|
||||
extern const uint32_t loader_kip_size, pm_kip_size, sm_kip_size, spl_kip_size, ams_mitm_kip_size;
|
||||
extern const uint8_t loader_kip[], pm_kip[], sm_kip[], spl_kip[], boot_kip[], ams_mitm_kip[];
|
||||
extern const uint32_t loader_kip_size, pm_kip_size, sm_kip_size, spl_kip_size, boot_kip_size, ams_mitm_kip_size;
|
||||
|
||||
/* GCC doesn't consider the size as const... we have to write it ourselves. */
|
||||
|
||||
ini1_header_t *stratosphere_get_ini1(uint32_t target_firmware) {
|
||||
const uint8_t *boot_kip = NULL;
|
||||
uint32_t boot_kip_size = 0;
|
||||
uint32_t num_processes = 0;
|
||||
uint8_t *data;
|
||||
|
||||
|
@ -66,14 +61,6 @@ ini1_header_t *stratosphere_get_ini1(uint32_t target_firmware) {
|
|||
return g_stratosphere_ini1;
|
||||
}
|
||||
|
||||
if (target_firmware <= ATMOSPHERE_TARGET_FIRMWARE_100) {
|
||||
boot_kip = boot_100_kip;
|
||||
boot_kip_size = boot_100_kip_size;
|
||||
} else {
|
||||
boot_kip = boot_200_kip;
|
||||
boot_kip_size = boot_200_kip_size;
|
||||
}
|
||||
|
||||
size_t size = sizeof(ini1_header_t);
|
||||
|
||||
/* Calculate our processes' sizes. */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue