mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
システムメニューVer.ファイルからバージョン情報とユーザー領域MAXサイズを取得するよう変更。
FATALエラーにシステムメニューVer.リード失敗を追加。 git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1884 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
4c5ec38e77
commit
f4b85d7308
@ -446,7 +446,7 @@ BOOL ErrorLogi_SetString( char *buf, ErrorLogEntry *entry )
|
||||
STD_TSNPrintf(buf, ERRORLOG_BUFSIZE, ERRORLOG_WRITE_FORMAT,
|
||||
entry->year, entry->month, entry->day, entry->week,
|
||||
entry->hour, entry->minute, entry->second,
|
||||
entry->errorCode, s_strError[entry->errorCode] );
|
||||
entry->errorCode, s_strError[entry->errorCode] ? s_strError[entry->errorCode] : "" );
|
||||
|
||||
// 余りをスペースで埋めて、改行で終端する
|
||||
ErrorLogi_fillSpace( buf, ERRORLOG_BUFSIZE );
|
||||
@ -548,7 +548,7 @@ static char *s_strWeek[] = {
|
||||
"SAT"
|
||||
};
|
||||
|
||||
static char *s_strError[] = {
|
||||
static char *s_strError[ FATAL_ERROR_MAX ] = {
|
||||
"FATAL_ERROR_UNDEFINED",
|
||||
"FATAL_ERROR_NAND",
|
||||
"FATAL_ERROR_HWINFO_NORMAL",
|
||||
@ -591,6 +591,7 @@ static char *s_strError[] = {
|
||||
"FATAL_ERROR_LOAD_LOGOCRC_ERROR = 39",
|
||||
"FATAL_ERROR_LOAD_READDLSIGN_FAILED",
|
||||
"FATAL_ERROR_LOAD_RELOCATEINFO_FAILED",
|
||||
"FATAL_ERROR_LOAD_READMODULE_FAILED"
|
||||
|
||||
"FATAL_ERROR_LOAD_READMODULE_FAILED",
|
||||
"FATAL_ERROR_NINTENDO_LOGO_CHECK_FAILED",
|
||||
"FATAL_ERROR_SYSMENU_VERSION",
|
||||
};
|
||||
@ -52,7 +52,7 @@ BG_DIR = ../../data
|
||||
SRCS = main.c MachineSetting.c \
|
||||
setRTC.c selectLanguage.c calibrationTP.c setOwnerInfo.c selectCountry.c \
|
||||
setParentalControl.c setFreeSoftBox.c setWireless.c cleanupMachine.c \
|
||||
setEULA.c \
|
||||
setEULA.c getSysMenuVersion.c \
|
||||
CountryNameMappingData.c \
|
||||
$(MISC_DIR)/src/misc.c $(MISC_DIR)/src/cmn.c \
|
||||
$(BG_DIR)/BGData_MachineSettings.c
|
||||
@ -79,7 +79,8 @@ SDK_APPEND_LIBS = \
|
||||
libsfs$(TWL_LIBSUFFIX).a \
|
||||
libnam$(TWL_LIBSUFFIX).a \
|
||||
libsea$(TWL_LIBSUFFIX).a \
|
||||
libsharedfont$(TWL_LIBSUFFIX).a
|
||||
libsharedfont$(TWL_LIBSUFFIX).a \
|
||||
libna$(TWL_LIBSUFFIX).a
|
||||
|
||||
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
|
||||
|
||||
|
||||
@ -18,10 +18,13 @@
|
||||
#include <twl.h>
|
||||
#include <twl/sea.h>
|
||||
#include <twl/lcfg.h>
|
||||
#include <twl/na.h>
|
||||
#include <nitro/fs/sysarea.h>
|
||||
#include <sysmenu/namut.h>
|
||||
#include <sysmenu/util.h>
|
||||
#include "misc.h"
|
||||
#include "MachineSetting.h"
|
||||
#include "getSysMenuVersion.h"
|
||||
|
||||
// extern data-----------------------------------------------------------------
|
||||
|
||||
@ -110,6 +113,7 @@ void TwlMain(void)
|
||||
}
|
||||
}else {
|
||||
// リカバリ失敗時は、FALTALエラー
|
||||
UTL_SetFatalError( FATAL_ERROR_TWLSETTINGS );
|
||||
g_isValidTSD = FALSE;
|
||||
}
|
||||
Free( pBuffer );
|
||||
@ -121,6 +125,42 @@ void TwlMain(void)
|
||||
|
||||
UTL_CaribrateTP( LCFG_TSD_GetTPCalibrationPtr() );
|
||||
|
||||
// ::::::::::::::::::::::::::::::::::::::::::::::
|
||||
// SystemMenuバージョンおよびユーザー領域MAXサイズの読み込み
|
||||
// ::::::::::::::::::::::::::::::::::::::::::::::
|
||||
{
|
||||
u8 *pBuffer = Alloc( NA_VERSION_INFO_WORK_SIZE );
|
||||
|
||||
if( pBuffer &&
|
||||
ReadSystemMenuVersion( pBuffer, NA_VERSION_INFO_WORK_SIZE ) ) {
|
||||
// リード成功
|
||||
}else {
|
||||
// FATALエラー
|
||||
UTL_SetFatalError( FATAL_ERROR_TWLSETTINGS );
|
||||
}
|
||||
Free( pBuffer );
|
||||
}
|
||||
|
||||
// バージョン情報の表示
|
||||
{
|
||||
u16 major = 65535;
|
||||
u16 minor = 65535;
|
||||
char str_ver[ TWL_SYSMENU_VER_STR_LEN / sizeof(u16) ];
|
||||
int len = sizeof(str_ver);
|
||||
OS_TPrintf( "SystemMenuVersion\n" );
|
||||
// 文字列
|
||||
if( STD_ConvertStringUnicodeToSjis( str_ver, &len, GetSystemMenuVersionString(), NULL, NULL ) == STD_RESULT_SUCCESS ) {
|
||||
OS_TPrintf( "\tstr: %s\n", str_ver );
|
||||
}
|
||||
// 数値
|
||||
(void)GetSystemMenuMajorVersion( &major );
|
||||
(void)GetSystemMenuMinorVersion( &minor );
|
||||
OS_TPrintf( "\tnum: %d.%d\n", major, minor );
|
||||
}
|
||||
|
||||
// ユーザー領域MAXサイズの表示
|
||||
OS_TPrintf( "TotalUserAreadSize : 0x%08x\n", FSi_GetTotalUserAreaSize() );
|
||||
|
||||
InitBG();
|
||||
GetAndDrawRTCData( &g_rtcDraw, TRUE );
|
||||
MachineSettingInit();
|
||||
|
||||
@ -73,8 +73,9 @@ typedef enum FatalErrorCode {
|
||||
FATAL_ERROR_LOAD_RELOCATEINFO_FAILED = 41,
|
||||
FATAL_ERROR_LOAD_READMODULE_FAILED = 42,
|
||||
FATAL_ERROR_NINTENDO_LOGO_CHECK_FAILED = 43,
|
||||
FATAL_ERROR_SYSMENU_VERSION = 44,
|
||||
|
||||
FATAL_ERROR_MAX = 44
|
||||
FATAL_ERROR_MAX = 45
|
||||
}FatalErrorCode;
|
||||
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user