mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
HWInfoの強制ロゴデモスキップ起動フラグを見て強制ロゴデモスキップ発動するよう変更。 これにともない、強制ロゴデモスキップフラグフラグをSDKの branch-5_0rcplus_UIG_plus rev.10247 に追加。これ以降のものでないとビルド通りません。 また、強制ロゴデモスキップ起動フラグの設定をnandinitializer.iniで指定できるように変更。 これにともない、関連する関数を使っているツール類のソース変更。 git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@2769 b08762b0-b915-fc4b-9d8c-17b2551a87ff
148 lines
4.8 KiB
C
148 lines
4.8 KiB
C
/*---------------------------------------------------------------------------*
|
||
Project: TwlSDK - SystemUpdater
|
||
File: hw_info.c
|
||
|
||
Copyright 2008 Nintendo. All rights reserved.
|
||
|
||
These coded instructions, statements, and computer programs contain
|
||
proprietary information of Nintendo of America Inc. and/or Nintendo
|
||
Company Ltd., and are protected by Federal copyright law. They may
|
||
not be disclosed to third parties or copied or duplicated in any form,
|
||
in whole or in part, without the prior written consent of Nintendo.
|
||
|
||
$Date:: $
|
||
$Rev$
|
||
$Author$
|
||
*---------------------------------------------------------------------------*/
|
||
|
||
#include <twl.h>
|
||
#include <nitro/snd.h>
|
||
#include <twl/fatfs.h>
|
||
#include <twl/lcfg.h>
|
||
#include <nitro/card.h>
|
||
#include <sysmenu/namut.h>
|
||
#include "kami_font.h"
|
||
#include "kami_pxi.h"
|
||
#include "hwi.h"
|
||
#include "hw_info.h"
|
||
//
|
||
#include "TWLHWInfo_api.h"
|
||
#include "TWLSettings_api.h"
|
||
//
|
||
/*---------------------------------------------------------------------------*
|
||
型定義
|
||
*---------------------------------------------------------------------------*/
|
||
|
||
/*---------------------------------------------------------------------------*
|
||
定数定義
|
||
*---------------------------------------------------------------------------*/
|
||
|
||
/*---------------------------------------------------------------------------*
|
||
内部変数定義
|
||
*---------------------------------------------------------------------------*/
|
||
|
||
/*---------------------------------------------------------------------------*
|
||
内部関数宣言
|
||
*---------------------------------------------------------------------------*/
|
||
|
||
BOOL WriteHWNormalInfoFile( void );
|
||
BOOL WriteHWSecureInfoFile( u8 region );
|
||
BOOL DeleteHWInfoFile( void );
|
||
|
||
/*---------------------------------------------------------------------------*
|
||
Name: HW情報全体のライト
|
||
|
||
Description:
|
||
|
||
Arguments: region :
|
||
|
||
Returns: None.
|
||
*---------------------------------------------------------------------------*/
|
||
|
||
BOOL WriteHWInfoFile( u8 region, BOOL wirelessForceOff )
|
||
{
|
||
static const char *pMsgSecureWriting = "Writing Secure File...\n";
|
||
static const char *pMsgNormalWriting = "Writing Normal File...\n";
|
||
static const char *pMsgSignWriting = "Writing Sign File...\n";
|
||
static const char *pMsgSucceeded = "Success!\n";
|
||
static const char *pMsgFailed = "Failed!\n";
|
||
u32 installedSoftBoxCount = 0;
|
||
BOOL result = TRUE;
|
||
|
||
// セキュアファイルのライト
|
||
if( HWI_WriteHWSecureInfoFile( region, NULL, wirelessForceOff, FALSE ) ) { // とりあえず無線は有効で。
|
||
// kamiFontPrintfConsoleEx(CONSOLE_ORANGE, pMsgSucceeded );
|
||
}else {
|
||
kamiFontPrintfConsoleEx(CONSOLE_RED, pMsgFailed );
|
||
result = FALSE;
|
||
}
|
||
|
||
// ノーマルファイルのライト(移行可能なユニークIDのためにセキュアファイルの後で書き込む)
|
||
if( HWI_WriteHWNormalInfoFile() ) {
|
||
// kamiFontPrintfConsoleEx(CONSOLE_ORANGE, pMsgSucceeded );
|
||
}else {
|
||
kamiFontPrintfConsoleEx(CONSOLE_RED, pMsgFailed );
|
||
result = FALSE;
|
||
}
|
||
|
||
// HWID署名ファイルのライト
|
||
if( HWI_WriteHWIDSignFile() ) {
|
||
// kamiFontPrintfConsoleEx(CONSOLE_ORANGE, pMsgSucceeded );
|
||
}else {
|
||
kamiFontPrintfConsoleEx(CONSOLE_RED, pMsgFailed );
|
||
result = FALSE;
|
||
}
|
||
|
||
// CFGデータの修正
|
||
if (!HWI_ModifyLanguage( region ))
|
||
{
|
||
kamiFontPrintfConsoleEx(CONSOLE_RED, "Fail! Write TWLSettings\n" );
|
||
result = FALSE;
|
||
}
|
||
|
||
return result;
|
||
}
|
||
|
||
/*---------------------------------------------------------------------------*
|
||
Name: HWInfoファイルの削除
|
||
|
||
Description:
|
||
|
||
Arguments: None.
|
||
|
||
Returns: None.
|
||
*---------------------------------------------------------------------------*/
|
||
|
||
BOOL DeleteHWInfoFile( void )
|
||
{
|
||
static const char *pMsgNormalDeleting = "Deleting Normal File...\n";
|
||
static const char *pMsgSecureDeleting = "Deteting Secure File...\n";
|
||
static const char *pMsgSucceeded = "Success!\n";
|
||
static const char *pMsgFailed = "Failed!\n";
|
||
BOOL result = TRUE;
|
||
|
||
// ノーマルファイル
|
||
kamiFontPrintfConsoleEx(CONSOLE_ORANGE, pMsgNormalDeleting );
|
||
if( HWI_DeleteHWNormalInfoFile() ) {
|
||
OS_TPrintf( "%s delete succeeded.\n", (char *)LCFG_TWL_HWINFO_NORMAL_PATH );
|
||
kamiFontPrintfConsoleEx(CONSOLE_ORANGE, pMsgSucceeded );
|
||
}else {
|
||
OS_TPrintf( "%s delete failed.\n", (char *)LCFG_TWL_HWINFO_NORMAL_PATH );
|
||
kamiFontPrintfConsoleEx(CONSOLE_RED, pMsgFailed );
|
||
result = FALSE;
|
||
}
|
||
|
||
// セキュアファイル
|
||
kamiFontPrintfConsoleEx(CONSOLE_ORANGE, pMsgSecureDeleting );
|
||
if( HWI_DeleteHWSecureInfoFile() ) {
|
||
OS_TPrintf( "%s delete succeeded.\n", (char *)LCFG_TWL_HWINFO_SECURE_PATH );
|
||
kamiFontPrintfConsoleEx(CONSOLE_ORANGE, pMsgSucceeded );
|
||
}else {
|
||
OS_TPrintf( "%s delete failed.\n", (char *)LCFG_TWL_HWINFO_SECURE_PATH );
|
||
kamiFontPrintfConsoleEx(CONSOLE_RED, pMsgFailed );
|
||
result = FALSE;
|
||
}
|
||
|
||
return result;
|
||
}
|