・STARTボタンでのランチャーへのリターン処理を無効にする。

・TWL本体設定データのリード処理を修正。

git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/branches/20080626_SDK500fc_plus5_branch@1741 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
yosiokat 2008-06-27 08:55:59 +00:00
parent 4dbc1c00d3
commit 4cc2b8dbf7
2 changed files with 38 additions and 6 deletions

View File

@ -257,9 +257,23 @@ int MachineSettingMain( void )
tp_select = SelectMenuByTP( &s_csr, &s_settingParam );
DrawMenu( s_csr, &s_settingParam );
#if 0
if( pad.trg & PAD_BUTTON_START ) {
OS_DoApplicationJump( NULL, OS_APP_JUMP_NORMAL );
u8 *pBuffer = Alloc( LCFG_READ_TEMP );
g_isValidTSD = FALSE;
if( pBuffer) {
g_isValidTSD = LCFG_ReadTWLSettings( (u8 (*)[ LCFG_READ_TEMP ] )pBuffer );
Free( pBuffer );
if( g_isValidTSD ) {
OS_TPrintf( "TSD Read succeeded.\n" );
}else {
OS_TPrintf( "TSD Read failed.\n" );
PrintfSJIS( 0, 22*8, TXT_COLOR_RED, "TSD Read failed.\n" );
}
}
}
#endif
if( ( pad.trg & PAD_BUTTON_A ) || ( tp_select ) ) { // メニュー項目への分岐
if( s_settingPos[ s_csr ].enable ) {

View File

@ -89,12 +89,30 @@ void TwlMain(void)
// ::::::::::::::::::::::::::::::::::::::::::::::
// TWL設定データファイルの読み込み
// ::::::::::::::::::::::::::::::::::::::::::::::
{
u8 *pBuffer = Alloc( LCFG_READ_TEMP );
g_isValidTSD = FALSE;
if( pBuffer) {
g_isValidTSD = LCFG_ReadTWLSettings( (u8 (*)[ LCFG_READ_TEMP ] )pBuffer );
Free( pBuffer );
g_isValidTSD = TRUE;
{
u8 *pBuffer = Alloc( LCFG_READ_TEMP );
if( pBuffer ) {
// NANDからTWL本体設定データをリード
BOOL isRead = LCFG_ReadTWLSettings( (u8 (*)[LCFG_READ_TEMP])pBuffer );
// リード失敗ファイルが存在する場合は、ファイルをリカバリ
if( LCFG_RecoveryTWLSettings() ) {
if( isRead ) {
// ミラーデータのうち、一方でもリードできていたなら何もしない。
}else {
// リードに完全に失敗していた場合は、フラッシュ壊れシーケンスへ。
LCFG_TSD_SetFlagFinishedBrokenTWLSettings( FALSE );
(void)LCFG_WriteTWLSettings( (u8 (*)[ LCFG_WRITE_TEMP ] )pBuffer ); // LCFG_READ_TEMP > LCFG_WRITE_TEMP なので、pBufferをそのまま流用
}
}else {
// リカバリ失敗時は、FALTALエラー
g_isValidTSD = FALSE;
}
Free( pBuffer );
}else {
// メモリ確保ができなかった時は、FATALエラー
g_isValidTSD = FALSE;
}
}