mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
SDK4555にてアプリジャンプ関係を隠蔽したため、それに伴う修正
メモリロード済みアプリへのジャンプが無くなったので、そのために用意していた再配置情報の処理を削除 git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@834 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
db51580a3b
commit
38c6572c6e
@ -44,6 +44,7 @@ SYSMENU_ROOT := $(call eupath,$(TWL_IPL_RED_ROOT))
|
|||||||
SYSMENU_BUILDTOOLSDIR := $(SYSMENU_ROOT)/build/buildtools
|
SYSMENU_BUILDTOOLSDIR := $(SYSMENU_ROOT)/build/buildtools
|
||||||
SYSMENU_INCDIR := $(SYSMENU_ROOT)/include \
|
SYSMENU_INCDIR := $(SYSMENU_ROOT)/include \
|
||||||
$(ROOT)/build/libraries/spi/ARM9/include \
|
$(ROOT)/build/libraries/spi/ARM9/include \
|
||||||
|
$(ROOT)/build/libraries/os/common/include \
|
||||||
$(ROOT)/build/libraries/mb/common/include
|
$(ROOT)/build/libraries/mb/common/include
|
||||||
SYSMENU_TOOLSDIR := $(SYSMENU_ROOT)/tools
|
SYSMENU_TOOLSDIR := $(SYSMENU_ROOT)/tools
|
||||||
SYSMENU_COMPONENTSDIR := $(SYSMENU_ROOT)/components
|
SYSMENU_COMPONENTSDIR := $(SYSMENU_ROOT)/components
|
||||||
|
|||||||
@ -534,23 +534,7 @@ void SYSM_StartLoadTitle( TitleProperty *pBootTitle )
|
|||||||
SYSMi_GetWork()->flags.common.isCardBoot = TRUE;
|
SYSMi_GetWork()->flags.common.isCardBoot = TRUE;
|
||||||
}else if(pBootTitle->flags.isAppLoadCompleted)
|
}else if(pBootTitle->flags.isAppLoadCompleted)
|
||||||
{
|
{
|
||||||
// カードブートでなく、ロード済みの場合、再配置情報をランチャーパラメタから読み込み
|
// カードブートでなく、ロード済みの場合は今のところ何もしない
|
||||||
MI_CpuCopy8( SYSM_GetLauncherParamBody()->v1.relocInfo, SYSMi_GetWork()->romRelocateInfo, sizeof(Relocate_Info)*RELOCATE_INFO_NUM );
|
|
||||||
// 更にヘッダを再配置
|
|
||||||
if( ((ROM_Header_Short *)(OS_TWL_HEADER_PRELOAD_MMEM))->platform_code & PLATFORM_CODE_FLAG_TWL ) {
|
|
||||||
// TWLモード
|
|
||||||
// TWL-ROMヘッダ情報の再配置
|
|
||||||
MI_CpuCopyFast( (void *)(OS_TWL_HEADER_PRELOAD_MMEM), (void *)HW_TWL_ROM_HEADER_BUF, SYSM_CARD_ROM_HEADER_SIZE );
|
|
||||||
MI_CpuCopyFast( (void *)(OS_TWL_HEADER_PRELOAD_MMEM), (void *)HW_ROM_HEADER_BUF, HW_ROM_HEADER_BUF_END - HW_ROM_HEADER_BUF );
|
|
||||||
}else {
|
|
||||||
// NTRモード
|
|
||||||
// TWL-ROMヘッダ情報の再配置
|
|
||||||
// ランチャーのROMヘッダが残っている非コピー領域もクリア
|
|
||||||
MI_CpuClearFast( (void *)HW_TWL_ROM_HEADER_BUF, SYSM_CARD_ROM_HEADER_SIZE );
|
|
||||||
MI_CpuCopyFast( (void *)(OS_TWL_HEADER_PRELOAD_MMEM), (void *)HW_TWL_ROM_HEADER_BUF, HW_ROM_HEADER_BUF_END - HW_ROM_HEADER_BUF );
|
|
||||||
MI_CpuCopyFast( (void *)(OS_TWL_HEADER_PRELOAD_MMEM), (void *)HW_ROM_HEADER_BUF, HW_ROM_HEADER_BUF_END - HW_ROM_HEADER_BUF );
|
|
||||||
// NTR-ROMヘッダ情報の再配置は、rebootライブラリで行う。
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -537,8 +537,6 @@ static TitleProperty *ProcessPads( TitleProperty *pTitleList )
|
|||||||
u16 dummy;
|
u16 dummy;
|
||||||
u16 tp_lr = 3;
|
u16 tp_lr = 3;
|
||||||
TitleProperty *ret = NULL;
|
TitleProperty *ret = NULL;
|
||||||
LauncherBootFlags tempflag = {TRUE, LAUNCHER_BOOTTYPE_NAND, TRUE, FALSE, FALSE, FALSE, 0};
|
|
||||||
|
|
||||||
// バックライト関係のキー処理
|
// バックライト関係のキー処理
|
||||||
ProcessBackLightPads();
|
ProcessBackLightPads();
|
||||||
|
|
||||||
@ -561,7 +559,7 @@ static TitleProperty *ProcessPads( TitleProperty *pTitleList )
|
|||||||
}
|
}
|
||||||
|
|
||||||
if( pad.trg & PAD_BUTTON_B ) {
|
if( pad.trg & PAD_BUTTON_B ) {
|
||||||
OS_SetLauncherParamAndResetHardware( NULL, &tempflag );
|
OS_DoApplicationJump( NULL, OS_APP_JUMP_NORMAL );
|
||||||
}
|
}
|
||||||
|
|
||||||
if(pad.cont & PAD_KEY_RIGHT || tp_lr == 1){ // バナー選択
|
if(pad.cont & PAD_KEY_RIGHT || tp_lr == 1){ // バナー選択
|
||||||
|
|||||||
@ -198,9 +198,6 @@ void MachineSettingInit( void )
|
|||||||
int MachineSettingMain( void )
|
int MachineSettingMain( void )
|
||||||
{
|
{
|
||||||
BOOL tp_select;
|
BOOL tp_select;
|
||||||
|
|
||||||
LauncherBootFlags tempflag = {TRUE, LAUNCHER_BOOTTYPE_NAND, TRUE, FALSE, FALSE, FALSE, 0};
|
|
||||||
|
|
||||||
ReadTP();
|
ReadTP();
|
||||||
|
|
||||||
//--------------------------------------
|
//--------------------------------------
|
||||||
@ -220,7 +217,7 @@ int MachineSettingMain( void )
|
|||||||
DrawMenu( s_csr, &s_settingParam );
|
DrawMenu( s_csr, &s_settingParam );
|
||||||
|
|
||||||
if( pad.trg & PAD_BUTTON_START ) {
|
if( pad.trg & PAD_BUTTON_START ) {
|
||||||
OS_SetLauncherParamAndResetHardware( NULL, &tempflag );
|
OS_DoApplicationJump( NULL, OS_APP_JUMP_NORMAL );
|
||||||
}
|
}
|
||||||
|
|
||||||
if( ( pad.trg & PAD_BUTTON_A ) || ( tp_select ) ) { // メニュー項目への分岐
|
if( ( pad.trg & PAD_BUTTON_A ) || ( tp_select ) ) { // メニュー項目への分岐
|
||||||
@ -250,9 +247,6 @@ int MachineSettingMain( void )
|
|||||||
SetParentalControlInit();
|
SetParentalControlInit();
|
||||||
g_pNowProcess = SetParentalControlMain;
|
g_pNowProcess = SetParentalControlMain;
|
||||||
break;
|
break;
|
||||||
case 6:
|
|
||||||
//pictochat起動テスト
|
|
||||||
OS_SetLauncherParamAndResetHardware( 0x0003000550434854, &tempflag );
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -26,6 +26,20 @@ extern "C" {
|
|||||||
// データ型定義
|
// データ型定義
|
||||||
//----------------------------------------------------------------------
|
//----------------------------------------------------------------------
|
||||||
|
|
||||||
|
#define RELOCATE_INFO_NUM 4 // ROM再配置情報の数(今のところarm9,arm7それぞれltdとflxで最大4つ)
|
||||||
|
#define DEST_LIST_NUM (RELOCATE_INFO_NUM + 1)
|
||||||
|
|
||||||
|
// 再配置情報データ構造体
|
||||||
|
typedef struct Relocate_Info
|
||||||
|
{
|
||||||
|
u32 src;
|
||||||
|
u32 dest;
|
||||||
|
u32 length;
|
||||||
|
u32 post_clear_addr;
|
||||||
|
u32 post_clear_length;
|
||||||
|
BOOL rev;
|
||||||
|
}Relocate_Info;
|
||||||
|
|
||||||
// ROMセグメント名
|
// ROMセグメント名
|
||||||
typedef enum RomSegmentName {
|
typedef enum RomSegmentName {
|
||||||
ARM9_STATIC = 0,
|
ARM9_STATIC = 0,
|
||||||
|
|||||||
@ -23,6 +23,7 @@
|
|||||||
#include <twl/os/common/format_rom.h>
|
#include <twl/os/common/format_rom.h>
|
||||||
#include <twl/os/common/banner.h>
|
#include <twl/os/common/banner.h>
|
||||||
#include <sysmenu/reloc_info/common/reloc_info.h>
|
#include <sysmenu/reloc_info/common/reloc_info.h>
|
||||||
|
#include <launcherParam_private.h>
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user