From de6b36359a7cc89af55a0c8e8e25f860133bb567 Mon Sep 17 00:00:00 2001 From: nakasima Date: Tue, 4 Dec 2007 08:46:51 +0000 Subject: [PATCH] =?UTF-8?q?DS=E3=82=AB=E3=83=BC=E3=83=89=E6=9A=AB=E5=AE=9A?= =?UTF-8?q?=E5=AF=BE=E5=BF=9C=E3=80=82=20=E3=82=A8=E3=83=B3=E3=83=88?= =?UTF-8?q?=E3=83=AA=E3=83=9D=E3=82=A4=E3=83=B3=E3=83=88=E3=81=AFDS?= =?UTF-8?q?=E4=BA=92=E6=8F=9BROM=E3=83=98=E3=83=83=E3=83=80=E9=A0=98?= =?UTF-8?q?=E5=9F=9F=E3=82=92=E5=8F=82=E7=85=A7=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@309 b08762b0-b915-fc4b-9d8c-17b2551a87ff --- build/libraries_sysmenu/boot/ARM7/src/bootAPI.c | 17 +++++++++++++++-- build/libraries_sysmenu/boot/ARM9/src/bootAPI.c | 15 ++++++++++++++- 2 files changed, 29 insertions(+), 3 deletions(-) diff --git a/build/libraries_sysmenu/boot/ARM7/src/bootAPI.c b/build/libraries_sysmenu/boot/ARM7/src/bootAPI.c index 3fd3a2e5..971d9f8a 100644 --- a/build/libraries_sysmenu/boot/ARM7/src/bootAPI.c +++ b/build/libraries_sysmenu/boot/ARM7/src/bootAPI.c @@ -70,6 +70,9 @@ BOOL BOOT_WaitStart( void ) // SDK共通リブート { + REBOOTTarget target = REBOOT_TARGET_TWL_SECURE_SYSTEM; + ROM_Header *th = (ROM_Header *)HW_TWL_ROM_HEADER_BUF; // TWL拡張ROMヘッダ(DSアプリには無い) + ROM_Header *dh = (ROM_Header *)HW_ROM_HEADER_BUF; // DS互換ROMヘッダ int list_count = PRE_CLEAR_NUM_MAX + 1; int l; // メモリリストの設定 @@ -130,9 +133,19 @@ BOOL BOOT_WaitStart( void ) } } mem_list[list_count] = NULL; - + + // アプリケーション選択 + if ( dh->s.platform_code ) + { +// target = REBOOT_TARGET_TWL_APP; + } + else + { + target = REBOOT_TARGET_DS_APP; + } + // リブート - OS_Boot( (void *)*(u32 *)(HW_TWL_ROM_HEADER_BUF + 0x34), mem_list, REBOOT_TARGET_TWL_SECURE_SYSTEM ); + OS_Boot( dh->s.sub_entry_address, mem_list, target ); } } return FALSE; diff --git a/build/libraries_sysmenu/boot/ARM9/src/bootAPI.c b/build/libraries_sysmenu/boot/ARM9/src/bootAPI.c index 42efcc04..37500e85 100644 --- a/build/libraries_sysmenu/boot/ARM9/src/bootAPI.c +++ b/build/libraries_sysmenu/boot/ARM9/src/bootAPI.c @@ -116,8 +116,21 @@ void BOOT_Ready( void ) NULL }; + REBOOTTarget target = REBOOT_TARGET_TWL_SECURE_SYSTEM; + ROM_Header *dh = (ROM_Header *)HW_ROM_HEADER_BUF; // DS互換ROMヘッダ + + // アプリケーション選択 + if ( dh->s.platform_code ) + { +// target = REBOOT_TARGET_TWL_APP; + } + else + { + target = REBOOT_TARGET_DS_APP; + } + // 起動するターゲットの種類を指定する必要あり - OS_Boot( (void *)*(u32 *)(HW_TWL_ROM_HEADER_BUF + 0x24), mem_list, REBOOT_TARGET_TWL_SECURE_SYSTEM ); + OS_Boot( dh->s.main_entry_address, mem_list, target ); } }