mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
UTL_GetInstalledSoftBoxCountを削除。(SDKにNAM_GetInstalledSoftBoxCountが追加されたため)
NAMUT_UpdateSoftBoxCountを削除。 NAMUT_ClearTWLSettingsの追加。TWL本体設定データのクリアを行います。(TP補正データは残す) git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1611 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
462dd812d8
commit
2ed2ce527c
@ -164,8 +164,8 @@ BOOL NAMUT_Format(void)
|
||||
// WiFi設定データをクリアします
|
||||
NAMUTi_ClearWiFiSettings();
|
||||
|
||||
// SoftBoxCountの更新を行います
|
||||
NAMUT_UpdateSoftBoxCount();
|
||||
// 本体設定データのクリア
|
||||
ret &= NAMUT_ClearTWLSettings( TRUE );
|
||||
|
||||
return ret;
|
||||
}
|
||||
@ -610,39 +610,42 @@ BOOL NAMUT_GetSoftBoxCount( u8* installed, u8* free )
|
||||
}
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
Name: NAMUT_UpdateSoftBoxCount
|
||||
Name: NAMUT_ClearTWLSettings
|
||||
|
||||
Description: InstalledSoftBoxCount, FreeSoftBoxCount の値を
|
||||
現在のNANDの状態に合わせて更新します。
|
||||
Description: TWL本体設定データのクリアを行います。
|
||||
|
||||
Arguments: None.
|
||||
|
||||
Returns: 成功ならTRUE
|
||||
*---------------------------------------------------------------------------*/
|
||||
BOOL NAMUT_UpdateSoftBoxCount( void )
|
||||
BOOL NAMUT_ClearTWLSettings( BOOL doWriteback )
|
||||
{
|
||||
u8 installedSoftBoxCount;
|
||||
u8 freeSoftBoxCount;
|
||||
u8 *pBuffer;
|
||||
|
||||
// InstalledSoftBoxCount, FreeSoftBoxCount を数えなおす
|
||||
if (!NAMUT_GetSoftBoxCount(&installedSoftBoxCount, &freeSoftBoxCount))
|
||||
BOOL retval = TRUE;
|
||||
|
||||
// 本体設定データのクリア。TPキャリブレーションデータは残す。
|
||||
{
|
||||
return FALSE;
|
||||
LCFGTWLTPCalibData calib;
|
||||
u32 installedSoftBoxCount;
|
||||
|
||||
// installedSoftBoxCountの取得
|
||||
if ( NAM_OK != NAM_GetInstalledSoftBoxCount( &installedSoftBoxCount ) ) {
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
LCFG_TSD_GetTPCalibration( &calib );
|
||||
LCFG_ClearTWLSettings( (u8)installedSoftBoxCount );
|
||||
LCFG_TSD_SetTPCalibration( &calib );
|
||||
}
|
||||
|
||||
// OS_Printf("installedSoftBoxCount = %d\n", installedSoftBoxCount);
|
||||
// OS_Printf("freeSoftBoxCount = %d\n", freeSoftBoxCount);
|
||||
|
||||
// LCFGライブラリの静的変数に対する更新
|
||||
LCFG_TSD_SetInstalledSoftBoxCount( installedSoftBoxCount );
|
||||
LCFG_TSD_SetFreeSoftBoxCount( freeSoftBoxCount );
|
||||
|
||||
// LCFGライブラリの静的変数の値をNANDに反映
|
||||
pBuffer = spAllocFunc( LCFG_WRITE_TEMP );
|
||||
if (!pBuffer) { return FALSE; }
|
||||
(void)LCFG_WriteTWLSettings( (u8 (*)[ LCFG_WRITE_TEMP ] )pBuffer );
|
||||
spFreeFunc( pBuffer );
|
||||
if( doWriteback ) {
|
||||
u8 *pBuffer = spAllocFunc( LCFG_WRITE_TEMP );
|
||||
if (!pBuffer) { return FALSE; }
|
||||
// ミラーリングデータの両方に書き込みを行う。
|
||||
retval &= LCFG_WriteTWLSettings( (u8 (*)[ LCFG_WRITE_TEMP ] )pBuffer );
|
||||
retval &= LCFG_WriteTWLSettings( (u8 (*)[ LCFG_WRITE_TEMP ] )pBuffer );
|
||||
spFreeFunc( pBuffer );
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
@ -752,8 +755,7 @@ static void NAMUTi_ClearWiFiSettings( void )
|
||||
#define NCFG_ADDR 0x20
|
||||
#define NTR_WIFI_DATA_SIZE 0x400
|
||||
#define TWL_WIFI_DATA_SIZE 0x600
|
||||
#define NTR_MACHINE_SETTINGS_DATA_SIZE 0x200
|
||||
int total_size = ( NTR_WIFI_DATA_SIZE + TWL_WIFI_DATA_SIZE + NTR_MACHINE_SETTINGS_DATA_SIZE);
|
||||
int total_size = ( NTR_WIFI_DATA_SIZE + TWL_WIFI_DATA_SIZE );
|
||||
|
||||
if (!NVRAMi_IsInitialized()) {
|
||||
NVRAMi_Init();
|
||||
|
||||
@ -259,31 +259,3 @@ BOOL UTL_CheckRTCTime( RTCTime *timep )
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
//======================================================================
|
||||
// タイトル数取得
|
||||
//======================================================================
|
||||
|
||||
// ローンチ対象のアプリ数カウント
|
||||
int UTL_GetInstalledSoftBoxCount( void )
|
||||
{
|
||||
int l;
|
||||
int listNum;
|
||||
int validNum = 0;
|
||||
OSTitleId titleIDArray[ LCFG_TWL_FREE_SOFT_BOX_COUNT_MAX ];
|
||||
|
||||
MI_CpuClear32( titleIDArray, sizeof(titleIDArray) );
|
||||
|
||||
// インストールされているNANDアプリ全タイトルのTitleID取得
|
||||
listNum = NAM_GetNumTitles();
|
||||
(void)NAM_GetTitleList( titleIDArray, (u32)listNum );
|
||||
|
||||
// 取得したタイトルがローンチ対象かどうかをチェック
|
||||
for( l = 0; l < listNum; l++ ) {
|
||||
// "Not Launch"でない かつ "Data Only"でない なら有効なタイトルとしてリストに追加
|
||||
if( ( titleIDArray[ l ] & ( TITLE_ID_NOT_LAUNCH_FLAG_MASK | TITLE_ID_DATA_ONLY_FLAG_MASK ) ) == 0 ) {
|
||||
validNum++;
|
||||
}
|
||||
}
|
||||
return validNum;
|
||||
}
|
||||
|
||||
|
||||
@ -137,6 +137,19 @@ BOOL NAMUTi_DestroySubBanner(const char* path);
|
||||
BOOL NAMUT_DeleteNandDirectory(const char *path);
|
||||
|
||||
|
||||
/*---------------------------------------------------------------------------*
|
||||
Name: NAMUT_ClearTWLSettings
|
||||
|
||||
Description: TWL本体設定データのクリアを行います。
|
||||
|
||||
Arguments: TRUE : クリアした値をNANDにライトバックします。
|
||||
FALSE: NANDへのライトバックは行いません。
|
||||
|
||||
Returns: 成功ならTRUE
|
||||
*---------------------------------------------------------------------------*/
|
||||
BOOL NAMUT_ClearTWLSettings( BOOL doWriteback );
|
||||
|
||||
|
||||
#endif // SDK_ARM9
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
@ -55,9 +55,6 @@ extern BOOL UTL_IsLeapYear100( u32 year ); //
|
||||
extern u32 UTL_CalcPCTLInquiryCode( void ); // 問い合わせコード(10進8桁)算出
|
||||
extern u32 UTL_CalcPCTLMasterKey( void ); // マスターキー (10進5桁)算出(※内部でRTC_GetDateを使用します。)
|
||||
|
||||
// タイトル数取得(内部でNAMを使用するので、NAM_Initが事前に呼ばれている必要あり)
|
||||
extern int UTL_GetInstalledSoftBoxCount( void );
|
||||
|
||||
// アプリROMヘッダの要EULAフラグ取得
|
||||
static inline BOOL UTL_IsROMHeaderEULARequired( void )
|
||||
{
|
||||
|
||||
Loading…
Reference in New Issue
Block a user