mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
GameCardNitroMode指定+Twlカードがささっていた場合はTwlモードまで遷移させるように修正
git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/branches/20110608_CardToSD@3016 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
670d718e3e
commit
2943905f10
@ -1957,6 +1957,26 @@ static BOOL ChangeGameMode(void)
|
|||||||
SetMCSCR();
|
SetMCSCR();
|
||||||
state = s_funcTable[s_isRomEmu].ChangeMode_S(&s_cbData);
|
state = s_funcTable[s_isRomEmu].ChangeMode_S(&s_cbData);
|
||||||
|
|
||||||
|
if(s_cbData.pBootSegBuf->rh.s.platform_code & PLATFORM_CODE_FLAG_TWL)
|
||||||
|
{
|
||||||
|
s_cbData.modeType = HOTSW_MODE2;
|
||||||
|
|
||||||
|
McPowerOff();
|
||||||
|
McPowerOn();
|
||||||
|
|
||||||
|
state = ReadBootSegNormal(&s_cbData);
|
||||||
|
|
||||||
|
MakeBlowfishTableTWL(&s_cbData, 8, s_bondingOp);
|
||||||
|
GenVA_VB_VD();
|
||||||
|
|
||||||
|
state = ChangeModeNormal2(&s_cbData);
|
||||||
|
|
||||||
|
// ---------------------- Secure2 Mode ----------------------
|
||||||
|
state = s_funcTable[s_isRomEmu].SetPNG_S(&s_cbData);
|
||||||
|
SetMCSCR();
|
||||||
|
state = s_funcTable[s_isRomEmu].ChangeMode_S(&s_cbData);
|
||||||
|
}
|
||||||
|
|
||||||
// ---------------------- Game Mode ----------------------
|
// ---------------------- Game Mode ----------------------
|
||||||
state = ReadIDGame(&s_cbData);
|
state = ReadIDGame(&s_cbData);
|
||||||
|
|
||||||
|
|||||||
@ -17,6 +17,7 @@
|
|||||||
|
|
||||||
// Function Prototype -------------------------------------------------------
|
// Function Prototype -------------------------------------------------------
|
||||||
|
|
||||||
|
static BLOWFISH_CTX keytable2;
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*
|
/*---------------------------------------------------------------------------*
|
||||||
Name: MakeBlowfishTableDSForNAND
|
Name: MakeBlowfishTableDSForNAND
|
||||||
@ -66,10 +67,21 @@ void MakeBlowfishTableTWL(CardBootData *cbd, s32 keyLen, u16 bondingOp)
|
|||||||
BLOWFISH_CTX *ctx = &cbd->keyTable2;
|
BLOWFISH_CTX *ctx = &cbd->keyTable2;
|
||||||
void *tempCTX;
|
void *tempCTX;
|
||||||
|
|
||||||
|
static BOOL isFirst = TRUE;
|
||||||
|
|
||||||
// 製品機の場合
|
// 製品機の場合
|
||||||
if(bondingOp == SCFG_OP_PRODUCT){
|
if(bondingOp == SCFG_OP_PRODUCT){
|
||||||
MI_CpuCopyFast((void *)((OSFromFirm7Buf *)HW_FIRM_FROM_FIRM_BUF)->twl_blowfish, (void *)ctx, sizeof(BLOWFISH_CTX));
|
if( isFirst )
|
||||||
|
{
|
||||||
|
MI_CpuCopyFast((void *)((OSFromFirm7Buf *)HW_FIRM_FROM_FIRM_BUF)->twl_blowfish, (void *)ctx, sizeof(BLOWFISH_CTX));
|
||||||
|
|
||||||
|
MI_CpuCopy8((void *)ctx, (void *)&keytable2, sizeof(BLOWFISH_CTX));
|
||||||
|
isFirst = FALSE;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
MI_CpuCopyFast((void *)&keytable2, (void *)ctx, sizeof(BLOWFISH_CTX));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// 開発機の場合
|
// 開発機の場合
|
||||||
else{
|
else{
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user