カードのセキュリティをoffにする

git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/branches/20120402_card_rtc_off_security_off@3055 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
(no author) 2012-04-03 09:09:37 +00:00
parent edcc872773
commit cd9e98ebf0
3 changed files with 19 additions and 13 deletions

View File

@ -139,6 +139,11 @@ BOOL BOOT_WaitStart( void )
return FALSE;
}
#define CS_MASK 0x00400000
#define DS_MASK 0x00002000
#define SE_MASK 0x00004000
// SDKのFinalize処理後に呼び出される
static void BOOTi_RebootCallback( void** entryp, void* mem_list_v, REBOOTTarget* target )
{
@ -175,8 +180,9 @@ static void BOOTi_RebootCallback( void** entryp, void* mem_list_v, REBOOTTarget*
// NitroSDKバグ対策でブートメディア種別に関わらずROMヘッダを常時書き換え
dh->s.game_cmd_param &= ~SCRAMBLE_MASK;
}
// カードROMヘッダ非キャッシュ領域は常時設定
ch->s.game_cmd_param = SYSMi_GetWork()->gameCommondParam;
// カードROMヘッダ非キャッシュ領域は常時設定(知財用に改造 2012/04/03)
ch->s.game_cmd_param = SYSMi_GetWork()->gameCommondParam & ~(CS_MASK | DS_MASK | SE_MASK);
dh->s.game_cmd_param = SYSMi_GetWork()->gameCommondParam & ~(CS_MASK | DS_MASK | SE_MASK);
// この処理は、DSダウンロードプレイ側で行う。
// MI_CpuCopyFast ( ch, (void *)MB_CARD_ROM_HEADER_ADDRESS, 0x160);

View File

@ -515,8 +515,8 @@ HotSwState ReadIDSecure(CardBootData *cbd)
return HOTSW_PULLED_OUT_ERROR;
}
// スクランブルの設定
scrambleMask = HOTSWi_IsRomEmulation() ? 0 : (u32)(SCRAMBLE_MASK & ~CS_MASK);
// スクランブルの設定(知財用に改造 2012/04/03)
scrambleMask = HOTSWi_IsRomEmulation() ? 0 : (u32)(SCRAMBLE_MASK & ~(CS_MASK | DS_MASK | SE_MASK));
// コマンド作成・設定
SetSecureCommand(S_RD_ID, cbd);
@ -558,7 +558,7 @@ HotSwState ReadIDSecure(CardBootData *cbd)
*---------------------------------------------------------------------------*/
HotSwState ReadSegSecure(CardBootData *cbd)
{
u32 scrambleMask = HOTSWi_IsRomEmulation() ? 0 : (u32)(SCRAMBLE_MASK & ~CS_MASK);
u32 scrambleMask = HOTSWi_IsRomEmulation() ? 0 : (u32)(SCRAMBLE_MASK & ~(CS_MASK | DS_MASK | SE_MASK));
u32 *buf = (cbd->modeType == HOTSW_MODE1) ? cbd->pSecureSegBuf : cbd->pSecure2SegBuf;
u32 loop, pc, size, interval, i, j=0, k;
u64 segNum = 4;
@ -724,8 +724,8 @@ HotSwState ChangeModeSecure(CardBootData *cbd)
return HOTSW_PULLED_OUT_ERROR;
}
// スクランブルの設定
scrambleMask = HOTSWi_IsRomEmulation() ? 0 : (u32)(SCRAMBLE_MASK & ~CS_MASK);
// スクランブルの設定(知財用に改造 2012/04/03)
scrambleMask = HOTSWi_IsRomEmulation() ? 0 : (u32)(SCRAMBLE_MASK & ~(CS_MASK | DS_MASK | SE_MASK));
// コマンド作成・設定
SetSecureCommand(S_CHG_MODE, cbd);
@ -785,8 +785,8 @@ HotSwState ReadIDGame(CardBootData *cbd)
reg_HOTSW_MCCNT0 = (u16)((reg_HOTSW_MCCNT0 & HOTSW_E2PROM_CTRL_MASK) | REG_MI_MCCNT0_E_MASK | REG_MI_MCCNT0_I_MASK);
#endif
// MCCNT1 レジスタ設定
reg_HOTSW_MCCNT1 = cbd->gameCommondParam | START_MASK | HOTSW_PAGE_STAT;
// MCCNT1 レジスタ設定(知財用に改造 2012/04/03)
reg_HOTSW_MCCNT1 = (cbd->gameCommondParam & ~(CS_MASK | DS_MASK | SE_MASK)) | START_MASK | HOTSW_PAGE_STAT;
// メッセージ受信
OS_ReceiveMessage(&HotSwThreadData.hotswDmaQueue, (OSMessage *)&s_Msg, OS_MESSAGE_BLOCK);
@ -841,8 +841,8 @@ HotSwState ReadPageGame(CardBootData *cbd, u32 start_addr, void* buf, u32 size)
reg_HOTSW_MCCNT0 = (u16)((reg_HOTSW_MCCNT0 & HOTSW_E2PROM_CTRL_MASK) | REG_MI_MCCNT0_E_MASK | REG_MI_MCCNT0_I_MASK);
#endif
// MCCNT1 レジスタ設定
reg_HOTSW_MCCNT1 = cbd->gameCommondParam | START_MASK | HOTSW_PAGE_1;
// MCCNT1 レジスタ設定(知財用に改造 2012/04/03)
reg_HOTSW_MCCNT1 = (cbd->gameCommondParam & ~(CS_MASK | DS_MASK | SE_MASK)) | START_MASK | HOTSW_PAGE_1;
// メッセージ受信
OS_ReceiveMessage(&HotSwThreadData.hotswDmaQueue, (OSMessage *)&s_Msg, OS_MESSAGE_BLOCK);

View File

@ -681,8 +681,8 @@ static HotSwState ReadSecureModeCardData(void)
u32 secure_ID;
// PNG<EFBFBD>Ýè
state = s_funcTable[s_isRomEmu].SetPNG_S(&s_cbData);
// PNG OFF設定(知財用に改造 2012/04/03)
state = SwitchOFFPNGSecure(&s_cbData);
retval = (retval == HOTSW_SUCCESS) ? state : retval;
// DS側符号生成回路初期値設定 (レジスタ設定)