From 9e27adccc343bb9aed07bf22f86f69df860d866d Mon Sep 17 00:00:00 2001 From: yosiokat Date: Wed, 23 Apr 2008 05:58:42 +0000 Subject: [PATCH] =?UTF-8?q?=E3=83=93=E3=83=AB=E3=83=89=E3=82=B9=E3=82=A4?= =?UTF-8?q?=E3=83=83=E3=83=81=E3=81=AE=E8=BF=BD=E5=8A=A0=E3=81=8A=E3=82=88?= =?UTF-8?q?=E3=81=B3=E6=95=B4=E7=90=86=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1240 b08762b0-b915-fc4b-9d8c-17b2551a87ff --- build/components/hyena.TWL/Makefile | 5 +++++ build/components/hyena.TWL/src/main.c | 8 ++++++-- .../sysmenu/ARM9/src/title.c | 2 ++ build/systemMenu_RED/Launcher/ARM9/Makefile | 12 +++++++++--- .../MachineSettings/ARM9/Makefile | 8 ++++---- build/systemMenu_RED/SystemUpdater/Makefile | 4 ++++ ...SDK_5_0_FC_plus2_ランチャーリリースタスク.mmap | Bin 33907 -> 34530 bytes 7 files changed, 30 insertions(+), 9 deletions(-) diff --git a/build/components/hyena.TWL/Makefile b/build/components/hyena.TWL/Makefile index 8590df38..34a378a7 100644 --- a/build/components/hyena.TWL/Makefile +++ b/build/components/hyena.TWL/Makefile @@ -72,6 +72,11 @@ MAKELCF_FLAGS += -DISDBG_LIBS_TWL='$(if $(ISDBG_LIBS_TWL),$(ISDBG_LIBS_TWL),libs -DISDBG_LIBS_NITRO='libstubsisd_sp$(TWL_LIBSUFFIX).a' +ifeq ($(LAUNCHER_DEBUG_MODE),TRUE) +MACRO_FLAGS += -DLAUNCHER_DEBUG_MODE +endif + + #-------------------------------- # install target #-------------------------------- diff --git a/build/components/hyena.TWL/src/main.c b/build/components/hyena.TWL/src/main.c index de5578cb..10dbd773 100644 --- a/build/components/hyena.TWL/src/main.c +++ b/build/components/hyena.TWL/src/main.c @@ -181,9 +181,13 @@ TwlSpMain(void) InitializeNwm(mainHeapHandle, mainHeapHandle); // NWM #ifndef SDK_NOCRYPTO AES_Init(); // AES + +#if ( defined(LAUNCHER_DEBUG_MODE) && defined(SDK_RELEASE) ) + MI_CpuCopyFast( (void *)HW_LAUNCHER_DELIVER_PARAM_BUF, (void *)SDK_SEA_KEY_STORE, HW_LAUNCHER_DELIVER_PARAM_BUF_SIZE ); +#else + SYSMi_SetAESKeysForAccessControlCore( (ROM_Header *)HW_TWL_ROM_HEADER_BUF, (u8 *)SDK_SEA_KEY_STORE, NULL, NULL ); +#endif - //SYSMi_SetAESKeysForAccessControlCore( (ROM_Header *)HW_TWL_ROM_HEADER_BUF, (u8 *)SDK_SEA_KEY_STORE, NULL, NULL ); - MI_CpuCopyFast( (void *)0x0380f000, (u8 *)SDK_SEA_KEY_STORE, 0x40 ); #ifdef SDK_SEA SEA_Init(); #endif // ifdef SDK_SEA diff --git a/build/libraries_sysmenu/sysmenu/ARM9/src/title.c b/build/libraries_sysmenu/sysmenu/ARM9/src/title.c index 1816f70c..58754ed9 100644 --- a/build/libraries_sysmenu/sysmenu/ARM9/src/title.c +++ b/build/libraries_sysmenu/sysmenu/ARM9/src/title.c @@ -553,7 +553,9 @@ OS_TPrintf("RebootSystem failed: cant read file(%p, %d, %d, %d)\n", &s_authcode, for (i = region_header; i < region_max; ++i) { +#ifdef LOAD_APP_VIA_WRAM BOOL result; +#endif u32 len = MATH_ROUNDUP( length[i], SYSM_ALIGNMENT_LOAD_MODULE );// AESÍ̈̊֌WŁA[hTCY32oCgACgɕ␳ if ( !isTwlApp && i >= region_arm9_twl ) continue;// nitroł͓ǂݍ܂Ȃ̈ diff --git a/build/systemMenu_RED/Launcher/ARM9/Makefile b/build/systemMenu_RED/Launcher/ARM9/Makefile index e605d2b1..e3db3acf 100644 --- a/build/systemMenu_RED/Launcher/ARM9/Makefile +++ b/build/systemMenu_RED/Launcher/ARM9/Makefile @@ -19,8 +19,8 @@ # RpCXCb`̓sA../../../libraries_sysmenu/sysmenu@͗LɂĂ SUBDIRS = \ ../../../libraries_sysmenu/sysmenu \ -# ../../../libraries_sysmenu/boot \ -# ../../../components/hyena.TWL + ../../../libraries_sysmenu/boot \ + ../../../components/hyena.TWL # ../../../libraries_sysmenu/hotsw \ # ../../../libraries_sysmenu/reloc_info \ # ../../../libraries_sysmenu/mcu \ @@ -32,9 +32,10 @@ SUBDIRS = \ ifneq ($(UPDATER_RELEASE),TRUE) # COMPILE SWITCH@ŏIROM쐬́ASFALSEɃZbgBSUBDIR̃rhɂe悤exportŊ‹ϐݒ肷B +export LAUNCHER_DEBUG_MODE = TRUE export DO_NOT_SHOW_LAUNCHER = FALSE export DISABLE_WDS_SCAN = TRUE -export DISABLE_WLFIRM_LOAD = TRUE +export DISABLE_WLFIRM_LOAD = FALSE export IGNORE_WLFIRM_SIGNCHECK = FALSE export DISABLE_SLEEP = TRUE @@ -97,6 +98,9 @@ ADDRESS_DTCM = 0x0e000000 DEFAULT_COMP_ARM7 = hyena +#---------------------------------------------------------------------------- +# Append Flags + MAKEROM_FLAGS += -F \ -DTITLEID_LO='$(TITLEID_LO)' \ -DCARD_REGION='$(CARD_REGION)' \ @@ -135,6 +139,8 @@ else MAKEROM_FLAGS += -DDS_HASH_TABLE_DIR=data endif +#---------------------------------------------------------------------------- + include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs include $(TWLSDK_ROOT)/build/libraries/reboot/commondefs.reboot diff --git a/build/systemMenu_RED/MachineSettings/ARM9/Makefile b/build/systemMenu_RED/MachineSettings/ARM9/Makefile index 803682b9..06b777ca 100644 --- a/build/systemMenu_RED/MachineSettings/ARM9/Makefile +++ b/build/systemMenu_RED/MachineSettings/ARM9/Makefile @@ -24,8 +24,8 @@ SUBDIRS = \ # COMPILE SWITCH@ŏIROM쐬́ASFALSEɃZbgB -OUTSIDE_UI ?= FALSE -BROADON_UI ?= FALSE +SYSM_OUTSIDE_UI ?= FALSE +SYSM_BROADON_UI ?= FALSE # MAKEROM SWITCH ŏIROM쐬́ATRUEɂ @@ -77,11 +77,11 @@ LLIBRARIES = libes$(TWL_LIBSUFFIX).a \ include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs -ifeq ($(OUTSIDE_UI),TRUE) +ifeq ($(SYSM_OUTSIDE_UI),TRUE) MACRO_FLAGS += -DOUTSIDE_UI endif -ifeq ($(BROADON_UI),TRUE) +ifeq ($(SYSM_BROADON_UI),TRUE) MACRO_FLAGS += -DBROADON_UI endif diff --git a/build/systemMenu_RED/SystemUpdater/Makefile b/build/systemMenu_RED/SystemUpdater/Makefile index 01737168..d079b6b9 100644 --- a/build/systemMenu_RED/SystemUpdater/Makefile +++ b/build/systemMenu_RED/SystemUpdater/Makefile @@ -38,11 +38,15 @@ SUBDIRS = $(LAUNCHER_DIR) \ export UPDATER_RELEASE = TRUE +export LAUNCHER_DEBUG_MODE = FALSE export DO_NOT_SHOW_LAUNCHER = TRUE export DISABLE_WDS_SCAN = TRUE +export IGNORE_WLFIRM_SIGNCHECK = FALSE export DISABLE_WLFIRM_LOAD = FALSE export DISABLE_SLEEP = TRUE export LOAD_APP_VIA_WRAM = FALSE +export SYSM_OUTSIDE_UI = TRUE +export SYSM_BROADON_UI = FALSE # MAKEROM SWITCH for build SystemMenu export DISABLE_DEBUG = TRUE diff --git a/docs/リリース_SDK_5_0_FC_plus2/SDK_5_0_FC_plus2_ランチャーリリースタスク.mmap b/docs/リリース_SDK_5_0_FC_plus2/SDK_5_0_FC_plus2_ランチャーリリースタスク.mmap index d30f999d1053ab23a285d1fba06aef069ddf89b8..ec453cb4c907c3fcfe876e43cf09c60b7035dd92 100644 GIT binary patch delta 17346 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 n3yde?t!ELoV@8vZ0EXaI2G#d= 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 Oft|rz&p^+_+yDTOvS#A|