mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
DSブート時にランチャーのROMヘッダが残っている領域をクリア。
git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@532 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
2ade9e70f0
commit
abcf2ee999
@ -452,11 +452,15 @@ void SYSM_StartLoadTitle( TitleProperty *pBootTitle )
|
||||
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ライブラリで行う。
|
||||
@ -482,6 +486,7 @@ static void SYSMi_Relocate( void )
|
||||
MI_CpuCopyFast( (void *)SYSM_CARD_NTR_SECURE_BUF, dest, size );
|
||||
|
||||
if( SYSM_GetCardRomHeader()->platform_code & PLATFORM_CODE_FLAG_TWL ) {
|
||||
// TWLモード
|
||||
// TWLセキュア領域の再配置
|
||||
dest = SYSM_GetCardRomHeader()->main_ltd_ram_address;
|
||||
DC_InvalidateRange( (void *)SYSM_CARD_TWL_SECURE_BUF, SECURE_AREA_SIZE ); // キャッシュケア
|
||||
@ -497,7 +502,10 @@ static void SYSMi_Relocate( void )
|
||||
MI_CpuCopyFast( (void *)SYSM_CARD_ROM_HEADER_BUF, (void *)HW_TWL_ROM_HEADER_BUF, SYSM_CARD_ROM_HEADER_SIZE );
|
||||
MI_CpuCopyFast( (void *)SYSM_CARD_ROM_HEADER_BUF, (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 *)SYSM_CARD_ROM_HEADER_BUF, (void *)HW_TWL_ROM_HEADER_BUF, HW_ROM_HEADER_BUF_END - HW_ROM_HEADER_BUF );
|
||||
MI_CpuCopyFast( (void *)SYSM_CARD_ROM_HEADER_BUF, (void *)HW_ROM_HEADER_BUF, HW_ROM_HEADER_BUF_END - HW_ROM_HEADER_BUF );
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user