(更新:Akabane Jumpei)

・関数名の変更
・いらない構造体メンバの削除

git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1107 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
(no author) 2008-04-11 02:18:59 +00:00
parent 8b7a32631c
commit ce1e0cbda0
4 changed files with 13 additions and 27 deletions

View File

@ -39,7 +39,7 @@ void EncryptByBlowfish(const BLOWFISH_CTX *ctx, u32 *xl, u32 *xr);
void DecryptByBlowfish(const BLOWFISH_CTX *ctx, u32 *xl, u32 *xr);
// Key Table の生成
void GCDm_MakeBlowfishTableDS(CardBootData *cbd, s32 keyLen);
void MakeBlowfishTableDS(CardBootData *cbd, s32 keyLen);
#ifdef __cplusplus

View File

@ -327,18 +327,12 @@ typedef struct CardThreadData{
} CardThreadData;
// カード起動用関数
typedef struct CardBootFunction {
HotSwState (*ReadBootSegment_N)(CardBootData *cbd);
HotSwState (*ChangeMode_N)(CardBootData *cbd);
typedef struct CardSecureModeFunction {
HotSwState (*ReadID_S)(CardBootData *cbd);
HotSwState (*ReadSegment_S)(CardBootData *cbd);
HotSwState (*SetPNG_S)(CardBootData *cbd);
HotSwState (*ChangeMode_S)(CardBootData *cbd);
HotSwState (*ReadID_G)(CardBootData *cbd);
HotSwState (*ReadPage_G)(CardBootData *cbd, u32 addr, void* buf, u32 size);
} CardBootFunction;
} CardSecureModeFunction;
#ifdef __cplusplus
} /* extern "C" */

View File

@ -23,11 +23,11 @@ static u32 F(const BLOWFISH_CTX *ctx, u32 x);
/*---------------------------------------------------------------------------*
Name: GCDm_MakeBlowfishTableDS
Name: MakeBlowfishTableDS
Description: KeyTableÌ<EFBFBD><EFBFBD>¬
*---------------------------------------------------------------------------*/
void GCDm_MakeBlowfishTableDS(CardBootData *cbd, s32 keyLen)
void MakeBlowfishTableDS(CardBootData *cbd, s32 keyLen)
{
const BLOWFISH_CTX *initTable = &HotSwBlowfishInitTableBufDS;

View File

@ -150,23 +150,15 @@ static u8 s_digestDefaultKey[ DIGEST_HASH_BLOCK_SIZE_SHA1 ] = {
0x87, 0x46, 0x58, 0x24
};
static CardBootFunction s_funcTable[] = {
static CardSecureModeFunction s_funcTable[] = {
// DS Card Type 1
{ ReadBootSegNormal, ChangeModeNormal, // Normalモード関数
ReadIDSecure, ReadSegSecure, SwitchONPNGSecure, ChangeModeSecure, // Secureモード関数
ReadIDGame, ReadPageGame}, // Game モード関数
{ ReadIDSecure, ReadSegSecure, SwitchONPNGSecure, ChangeModeSecure},
// DS Card Type 2
{ ReadBootSegNormal, ChangeModeNormal, // Normalモード関数
ReadIDSecure, ReadSegSecure, SwitchONPNGSecure, ChangeModeSecure, // Secureモード関数
ReadIDGame, ReadPageGame}, // Game モード関数
{ ReadIDSecure, ReadSegSecure, SwitchONPNGSecure, ChangeModeSecure},
// TWL Card Type 1
{ ReadBootSegNormal, ChangeModeNormal, // Normalモード関数
ReadIDSecure, ReadSegSecure, SwitchONPNGSecure, ChangeModeSecure, // Secureモード関数
ReadIDGame, ReadPageGame}, // Game モード関数
{ ReadIDSecure, ReadSegSecure, SwitchONPNGSecure, ChangeModeSecure},
// RomEmulation
{ ReadBootSegNormal, ChangeModeNormal, // Normalモード関数
ReadIDSecure_ROMEMU, ReadSegSecure_ROMEMU, SwitchONPNGSecure_ROMEMU, ChangeModeSecure_ROMEMU, // Secureモード関数
ReadIDGame, ReadPageGame}, // Game モード関数
{ReadIDSecure_ROMEMU, ReadSegSecure_ROMEMU, SwitchONPNGSecure_ROMEMU, ChangeModeSecure_ROMEMU}
};
// Global Values ------------------------------------------------------------
@ -352,7 +344,7 @@ static HotSwState LoadCardData(void)
LockHotSwRsc(&SYSMi_GetWork()->lockCardRsc);
// Boot Segment読み込み
state = s_funcTable[s_cbData.cardType].ReadBootSegment_N(&s_cbData);
state = ReadBootSegNormal(&s_cbData);
retval = (retval == HOTSW_SUCCESS) ? state : retval;
// ワンセグ差込み時はカードバス電源をディープスリープPFMに入れない
@ -420,7 +412,7 @@ static HotSwState LoadCardData(void)
s_cbData.secureLatency = AddLatency2ToLatency1(s_cbData.pBootSegBuf->rh.s.secure_cmd_param);
// Key Table初期化
GCDm_MakeBlowfishTableDS(&s_cbData, 8);
MakeBlowfishTableDS(&s_cbData, 8);
// コマンド認証値・コマンドカウンタ初期値・PNジェネレータ初期値の生成
GenVA_VB_VD();
@ -475,7 +467,7 @@ static HotSwState LoadCardData(void)
retval = (retval == HOTSW_SUCCESS) ? state : retval;
// Key Table初期化
GCDm_MakeBlowfishTableDS(&s_cbData, 8);
MakeBlowfishTableDS(&s_cbData, 8);
// コマンド認証値・コマンドカウンタ初期値・PNジェネレータ初期値の生成
GenVA_VB_VD();