mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
Revision1057 でワイヤレス強制Disableフラグの読み書きに対応させましたが、一般開発者には無用な機能であるためデフォルトでは使えないようにしました。
Makefile にて 変数定義を有効にすることにより、ワイヤレス強制Disableフラグの読み書きに対応した NandInitializer を作ることができます。 git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1065 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
b3dc21b388
commit
a434ba6f8d
@ -18,7 +18,6 @@
|
|||||||
|
|
||||||
SUBDIRS =
|
SUBDIRS =
|
||||||
|
|
||||||
|
|
||||||
#----------------------------------------------------------------------------
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
#============================================================================
|
#============================================================================
|
||||||
@ -29,6 +28,10 @@ SUBDIRS =
|
|||||||
# NandInitializerRedから一部の機能を削除するために定義を追加します。
|
# NandInitializerRedから一部の機能を削除するために定義を追加します。
|
||||||
MACRO_FLAGS += -DNAND_INITIALIZER_LIMITED_MODE
|
MACRO_FLAGS += -DNAND_INITIALIZER_LIMITED_MODE
|
||||||
#============================================================================
|
#============================================================================
|
||||||
|
#============================================================================
|
||||||
|
# ワイヤレスの強制Disableフラグを設定可能にする場合定義します。(要:Make Clean)
|
||||||
|
#MACRO_FLAGS += -DUSE_WIRELESS_FORCE_DISABLE_SETTING
|
||||||
|
#============================================================================
|
||||||
|
|
||||||
TARGET_FIRM = SYSTEMMENU
|
TARGET_FIRM = SYSTEMMENU
|
||||||
TARGET_PLATFORM = TWL
|
TARGET_PLATFORM = TWL
|
||||||
@ -56,6 +59,7 @@ SRCS = main.c \
|
|||||||
process_format.c \
|
process_format.c \
|
||||||
process_topmenu.c \
|
process_topmenu.c \
|
||||||
process_hw_info.c \
|
process_hw_info.c \
|
||||||
|
process_wireless_setting.c \
|
||||||
process_fade.c \
|
process_fade.c \
|
||||||
sd_event.c \
|
sd_event.c \
|
||||||
hwi.c
|
hwi.c
|
||||||
|
|||||||
@ -66,16 +66,17 @@ void kamiFontPrintfConsoleEx(u8 color, const char *text, ...);
|
|||||||
#define FONT_COLOR_PURPLE 6
|
#define FONT_COLOR_PURPLE 6
|
||||||
|
|
||||||
// 下画面背景用パレット
|
// 下画面背景用パレット
|
||||||
#define BG_COLOR_TRANS 0
|
#define BG_COLOR_TRANS 0
|
||||||
#define BG_COLOR_WHITE 1
|
#define BG_COLOR_WHITE 1
|
||||||
#define BG_COLOR_BLACK 2
|
#define BG_COLOR_BLACK 2
|
||||||
#define BG_COLOR_GRAY 3
|
#define BG_COLOR_GRAY 3
|
||||||
#define BG_COLOR_PURPLE 4
|
#define BG_COLOR_PURPLE 4
|
||||||
#define BG_COLOR_PINK 5
|
#define BG_COLOR_PINK 5
|
||||||
#define BG_COLOR_BLUE 6
|
#define BG_COLOR_BLUE 6
|
||||||
#define BG_COLOR_GREEN 7
|
#define BG_COLOR_GREEN 7
|
||||||
#define BG_COLOR_VIOLET 8
|
#define BG_COLOR_VIOLET 8
|
||||||
#define BG_COLOR_RED 9
|
#define BG_COLOR_RED 9
|
||||||
|
#define BG_COLOR_YELLOW 10
|
||||||
|
|
||||||
#define BG_COLOR_NONE 0xff
|
#define BG_COLOR_NONE 0xff
|
||||||
|
|
||||||
|
|||||||
@ -0,0 +1,53 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: TwlSDK - NandInitializer
|
||||||
|
File: process_wireless_setting.h
|
||||||
|
|
||||||
|
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$
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#ifndef PROCESS_WIRELESS_SETTING_H_
|
||||||
|
#define PROCESS_WIRELESS_SETTING_H_
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*===========================================================================*/
|
||||||
|
|
||||||
|
#include <nitro.h>
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Œ^’è‹`
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
ŠÖ<EFBFBD>”’è‹`
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
void* WirelessSettingProcess0(void);
|
||||||
|
void* WirelessSettingProcess1(void);
|
||||||
|
void* WirelessSettingProcess2(void);
|
||||||
|
void* WirelessSettingProcess3(void);
|
||||||
|
void* WirelessSettingProcess4(void);
|
||||||
|
|
||||||
|
/*===========================================================================*/
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
} /* extern "C" */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* PROCESS_WIRELESS_SETTING_H_ */
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
End of file
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
@ -118,8 +118,8 @@ const u16 PlttDataSub[16][16] = {
|
|||||||
{RGB555(31, 31, 31), RGB555(31, 31, 31), RGB555(31, 31, 31), RGB555(31, 31, 31),}, // White
|
{RGB555(31, 31, 31), RGB555(31, 31, 31), RGB555(31, 31, 31), RGB555(31, 31, 31),}, // White
|
||||||
|
|
||||||
// 背景カラーはこの16番パレット
|
// 背景カラーはこの16番パレット
|
||||||
// 白 黒 灰 むらさき ピンク みずいろ 緑 青紫 赤
|
// 白 黒 灰 むらさき ピンク みずいろ 緑 青紫 赤 黄
|
||||||
{RGB555(31, 31, 31), RGB555(31, 31, 31), RGB555( 0, 0, 0), RGB555(20, 20, 20), RGB555(31, 15, 31), RGB555(31, 20, 20), RGB555(20, 29, 31), RGB555(20, 31, 20), RGB555(21, 21, 31), RGB555(31, 0, 0), RGB555(31, 31, 31), RGB555(31, 31, 31), RGB555(31, 31, 31), RGB555(31, 31, 31), } // White
|
{RGB555(31, 31, 31), RGB555(31, 31, 31), RGB555( 0, 0, 0), RGB555(20, 20, 20), RGB555(31, 15, 31), RGB555(31, 20, 20), RGB555(20, 29, 31), RGB555(20, 31, 20), RGB555(21, 21, 31), RGB555(31, 0, 0), RGB555(31, 31, 10), RGB555(31, 31, 31), RGB555(31, 31, 31), RGB555(31, 31, 31), } // White
|
||||||
};
|
};
|
||||||
|
|
||||||
/*---------------------- キャラクタデータ -------------------------*/
|
/*---------------------- キャラクタデータ -------------------------*/
|
||||||
|
|||||||
@ -46,8 +46,6 @@ enum {
|
|||||||
MENU_REGION_AUSTRALIA,
|
MENU_REGION_AUSTRALIA,
|
||||||
MENU_REGION_CHINA,
|
MENU_REGION_CHINA,
|
||||||
MENU_REGION_KOREA,
|
MENU_REGION_KOREA,
|
||||||
MENU_WIRELESS_ENABLE,
|
|
||||||
MENU_WIRELESS_FORCE_OFF,
|
|
||||||
MENU_RETURN,
|
MENU_RETURN,
|
||||||
NUM_OF_MENU_SELECT
|
NUM_OF_MENU_SELECT
|
||||||
};
|
};
|
||||||
@ -56,7 +54,6 @@ enum {
|
|||||||
定数定義
|
定数定義
|
||||||
*---------------------------------------------------------------------------*/
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#define NUM_OF_MENU_REGION 6
|
|
||||||
#define DOT_OF_MENU_SPACE 16
|
#define DOT_OF_MENU_SPACE 16
|
||||||
#define CHAR_OF_MENU_SPACE 2
|
#define CHAR_OF_MENU_SPACE 2
|
||||||
#define MENU_TOP_LINE 5
|
#define MENU_TOP_LINE 5
|
||||||
@ -69,10 +66,6 @@ enum {
|
|||||||
|
|
||||||
static s8 sMenuSelectNo;
|
static s8 sMenuSelectNo;
|
||||||
|
|
||||||
static u8 *s_pPrivKeyBuffer = NULL;
|
|
||||||
static LCFGReadResult (*s_pReadSecureInfoFunc)( void );
|
|
||||||
static BOOL s_isReadTSD;
|
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*
|
/*---------------------------------------------------------------------------*
|
||||||
内部関数宣言
|
内部関数宣言
|
||||||
*---------------------------------------------------------------------------*/
|
*---------------------------------------------------------------------------*/
|
||||||
@ -125,21 +118,12 @@ void* HWInfoProcess0(void)
|
|||||||
kamiFontPrintf(3, 14, FONT_COLOR_BLACK, "+--------------------+----+");
|
kamiFontPrintf(3, 14, FONT_COLOR_BLACK, "+--------------------+----+");
|
||||||
kamiFontPrintf(3, 15, FONT_COLOR_BLACK, "l REGION KOREA l l");
|
kamiFontPrintf(3, 15, FONT_COLOR_BLACK, "l REGION KOREA l l");
|
||||||
kamiFontPrintf(3, 16, FONT_COLOR_BLACK, "+--------------------+----+");
|
kamiFontPrintf(3, 16, FONT_COLOR_BLACK, "+--------------------+----+");
|
||||||
kamiFontPrintf(3, 17, FONT_COLOR_BLACK, "l l l");
|
kamiFontPrintf(3, 17, FONT_COLOR_BLACK, "l RETURN l l");
|
||||||
kamiFontPrintf(3, 18, FONT_COLOR_BLACK, "+--------------------+----+");
|
kamiFontPrintf(3, 18, FONT_COLOR_BLACK, "+--------------------+----+");
|
||||||
kamiFontPrintf(3, 19, FONT_COLOR_BLACK, "l l l");
|
|
||||||
kamiFontPrintf(5, 17, FONT_COLOR_CYAN, " Wireless Enable ");
|
|
||||||
kamiFontPrintf(5, 19, FONT_COLOR_CYAN, " Wireless Force Off");
|
|
||||||
kamiFontPrintf(3, 20, FONT_COLOR_BLACK, "+--------------------+----+");
|
|
||||||
kamiFontPrintf(3, 21, FONT_COLOR_BLACK, "l RETURN l l");
|
|
||||||
kamiFontPrintf(3, 22, FONT_COLOR_BLACK, "+--------------------+----+");
|
|
||||||
|
|
||||||
// 現在のリージョンに"now"と表示
|
// 現在のリージョンに"now"と表示
|
||||||
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+LCFG_THW_GetRegion()*CHAR_OF_MENU_SPACE), FONT_COLOR_BLACK, "now");
|
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+LCFG_THW_GetRegion()*CHAR_OF_MENU_SPACE), FONT_COLOR_BLACK, "now");
|
||||||
|
|
||||||
// 現在の無線強制OFF状態に"now"と表示
|
|
||||||
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+(NUM_OF_MENU_REGION + LCFG_THW_IsForceDisableWireless())*CHAR_OF_MENU_SPACE), FONT_COLOR_BLACK, "now");
|
|
||||||
|
|
||||||
// 背景全クリア
|
// 背景全クリア
|
||||||
for (i=0;i<24;i++)
|
for (i=0;i<24;i++)
|
||||||
{
|
{
|
||||||
@ -232,7 +216,7 @@ void* HWInfoProcess2(void)
|
|||||||
result = WriteHWInfoFile( (u8)sMenuSelectNo, LCFG_THW_IsForceDisableWireless() );
|
result = WriteHWInfoFile( (u8)sMenuSelectNo, LCFG_THW_IsForceDisableWireless() );
|
||||||
|
|
||||||
// 全リージョンの結果をクリア
|
// 全リージョンの結果をクリア
|
||||||
for (i=0;i<NUM_OF_MENU_REGION;i++)
|
for (i=0;i<NUM_OF_MENU_SELECT;i++)
|
||||||
{
|
{
|
||||||
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+i*CHAR_OF_MENU_SPACE), FONT_COLOR_BLACK, " ");
|
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+i*CHAR_OF_MENU_SPACE), FONT_COLOR_BLACK, " ");
|
||||||
}
|
}
|
||||||
@ -247,34 +231,6 @@ void* HWInfoProcess2(void)
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case MENU_WIRELESS_ENABLE:
|
|
||||||
result = WriteHWInfoFile( LCFG_THW_GetRegion(), FALSE );
|
|
||||||
if ( result == TRUE )
|
|
||||||
{
|
|
||||||
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+MENU_WIRELESS_ENABLE*CHAR_OF_MENU_SPACE), FONT_COLOR_GREEN, "OK ");
|
|
||||||
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+MENU_WIRELESS_FORCE_OFF*CHAR_OF_MENU_SPACE), FONT_COLOR_GREEN, " ");
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+MENU_WIRELESS_ENABLE*CHAR_OF_MENU_SPACE), FONT_COLOR_GREEN, "NG ");
|
|
||||||
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+MENU_WIRELESS_FORCE_OFF*CHAR_OF_MENU_SPACE), FONT_COLOR_GREEN, " ");
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case MENU_WIRELESS_FORCE_OFF:
|
|
||||||
result = WriteHWInfoFile( LCFG_THW_GetRegion(), TRUE );
|
|
||||||
if ( result == TRUE )
|
|
||||||
{
|
|
||||||
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+MENU_WIRELESS_ENABLE*CHAR_OF_MENU_SPACE), FONT_COLOR_GREEN, " ");
|
|
||||||
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+MENU_WIRELESS_FORCE_OFF*CHAR_OF_MENU_SPACE), FONT_COLOR_GREEN, "OK ");
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+MENU_WIRELESS_ENABLE*CHAR_OF_MENU_SPACE), FONT_COLOR_GREEN, " ");
|
|
||||||
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+MENU_WIRELESS_FORCE_OFF*CHAR_OF_MENU_SPACE), FONT_COLOR_GREEN, "NG ");
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case MENU_RETURN:
|
case MENU_RETURN:
|
||||||
FADE_OUT_RETURN( TopmenuProcess0 );
|
FADE_OUT_RETURN( TopmenuProcess0 );
|
||||||
break;
|
break;
|
||||||
|
|||||||
@ -28,24 +28,59 @@
|
|||||||
#include "process_fade.h"
|
#include "process_fade.h"
|
||||||
#include "cursor.h"
|
#include "cursor.h"
|
||||||
#include "keypad.h"
|
#include "keypad.h"
|
||||||
|
#ifdef USE_WIRELESS_FORCE_DISABLE_SETTING
|
||||||
|
#include "process_wireless_setting.h"
|
||||||
|
#endif // USE_WIRELESS_FORCE_DISABLE_SETTING
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*
|
/*---------------------------------------------------------------------------*
|
||||||
型定義
|
型定義
|
||||||
*---------------------------------------------------------------------------*/
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
enum {
|
||||||
|
MENU_FORMAT = 0,
|
||||||
|
MENU_HARDWARE_INFO,
|
||||||
|
#ifdef USE_WIRELESS_FORCE_DISABLE_SETTING
|
||||||
|
MENU_WIRELESS_SETTING,
|
||||||
|
#endif // USE_WIRELESS_FORCE_DISABLE_SETTING
|
||||||
|
#ifndef NAND_INITIALIZER_LIMITED_MODE
|
||||||
|
MENU_ETICKET,
|
||||||
|
MENU_IMPORT_TAD,
|
||||||
|
MENU_IMPORT_NANDFIRM,
|
||||||
|
MENU_IMPORT_NORFIRM,
|
||||||
|
#endif // NAND_INITIALIZER_LIMITED_MODE
|
||||||
|
NUM_OF_MENU_SELECT
|
||||||
|
};
|
||||||
|
|
||||||
|
typedef struct _MenuAndColor
|
||||||
|
{
|
||||||
|
char* menu_name;
|
||||||
|
u8 color;
|
||||||
|
} MenuAndColor;
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*
|
/*---------------------------------------------------------------------------*
|
||||||
定数定義
|
定数定義
|
||||||
*---------------------------------------------------------------------------*/
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#ifndef NAND_INITIALIZER_LIMITED_MODE
|
|
||||||
#define NUM_OF_MENU_SELECT 6
|
|
||||||
#else
|
|
||||||
#define NUM_OF_MENU_SELECT 2
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define DOT_OF_MENU_SPACE 16
|
#define DOT_OF_MENU_SPACE 16
|
||||||
#define CURSOR_ORIGIN_X 32
|
#define CURSOR_ORIGIN_X 32
|
||||||
#define CURSOR_ORIGIN_Y 56
|
#define CURSOR_ORIGIN_Y 56
|
||||||
|
#define MENU_TOP_LINE 7
|
||||||
|
#define CHAR_OF_MENU_SPACE 2
|
||||||
|
|
||||||
|
static const MenuAndColor sMenuArray[] =
|
||||||
|
{
|
||||||
|
{" FORMAT NAND ", BG_COLOR_BLUE },
|
||||||
|
{" WRITE HARDWARE INFO ", BG_COLOR_PURPLE },
|
||||||
|
#ifdef USE_WIRELESS_FORCE_DISABLE_SETTING
|
||||||
|
{" WIRELESS FORCE SETTING ", BG_COLOR_YELLOW },
|
||||||
|
#endif // USE_WIRELESS_FORCE_DISABLE_SETTING
|
||||||
|
#ifndef NAND_INITIALIZER_LIMITED_MODE
|
||||||
|
{" WRITE ETICKET SIGN ", BG_COLOR_GRAY },
|
||||||
|
{" INPORT TAD FROM SD ", BG_COLOR_PINK },
|
||||||
|
{" INPORT NANDFIRM FROM SD", BG_COLOR_GREEN },
|
||||||
|
{" INPORT NORFIRM FROM SD", BG_COLOR_VIOLET }
|
||||||
|
#endif // NAND_INITIALIZER_LIMITED_MODE
|
||||||
|
};
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*
|
/*---------------------------------------------------------------------------*
|
||||||
内部変数定義
|
内部変数定義
|
||||||
@ -90,47 +125,21 @@ void* TopmenuProcess0(void)
|
|||||||
#endif
|
#endif
|
||||||
kamiFontPrintf(9, 4, 8, "<%s>", __DATE__);
|
kamiFontPrintf(9, 4, 8, "<%s>", __DATE__);
|
||||||
|
|
||||||
// <20><><EFBFBD>j<EFBFBD>…<EFBFBD>[<5B>ę——
|
|
||||||
kamiFontPrintf(3, 7, FONT_COLOR_BLACK, " FORMAT NAND ");
|
|
||||||
kamiFontPrintf(3, 9, FONT_COLOR_BLACK, " WRITE HARDWARE INFO ");
|
|
||||||
#ifndef NAND_INITIALIZER_LIMITED_MODE
|
|
||||||
kamiFontPrintf(3, 11, FONT_COLOR_BLACK, " WRITE ETICKET SIGN ");
|
|
||||||
kamiFontPrintf(3, 13, FONT_COLOR_BLACK, " INPORT TAD FROM SD ");
|
|
||||||
kamiFontPrintf(3, 15, FONT_COLOR_BLACK, " INPORT NANDFIRM FROM SD");
|
|
||||||
kamiFontPrintf(3, 17, FONT_COLOR_BLACK, " INPORT NORFIRM FROM SD");
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// 背景全クリア
|
// 背景全クリア
|
||||||
for (i=0;i<24;i++)
|
for (i=0;i<24;i++)
|
||||||
{
|
{
|
||||||
kamiFontFillChar( i, BG_COLOR_TRANS, BG_COLOR_TRANS );
|
kamiFontFillChar( i, BG_COLOR_TRANS, BG_COLOR_TRANS );
|
||||||
}
|
}
|
||||||
|
|
||||||
// ”wŚi<C59A>Ý’č
|
for (i=0;i<NUM_OF_MENU_SELECT;i++)
|
||||||
kamiFontFillChar( 6, BG_COLOR_TRANS, BG_COLOR_BLUE );
|
{
|
||||||
kamiFontFillChar( 7, BG_COLOR_BLUE, BG_COLOR_BLUE );
|
// メニュー文字列描画
|
||||||
kamiFontFillChar( 8, BG_COLOR_BLUE, BG_COLOR_TRANS );
|
kamiFontPrintf(3, (s16)(MENU_TOP_LINE+CHAR_OF_MENU_SPACE*i), FONT_COLOR_BLACK, sMenuArray[i].menu_name);
|
||||||
|
// 背景設定
|
||||||
kamiFontFillChar( 8, BG_COLOR_NONE, BG_COLOR_PURPLE );
|
kamiFontFillChar( MENU_TOP_LINE+CHAR_OF_MENU_SPACE*i-1, BG_COLOR_NONE, sMenuArray[i].color );
|
||||||
kamiFontFillChar( 9, BG_COLOR_PURPLE, BG_COLOR_PURPLE );
|
kamiFontFillChar( MENU_TOP_LINE+CHAR_OF_MENU_SPACE*i, sMenuArray[i].color, sMenuArray[i].color );
|
||||||
kamiFontFillChar(10, BG_COLOR_PURPLE, BG_COLOR_TRANS );
|
kamiFontFillChar( MENU_TOP_LINE+CHAR_OF_MENU_SPACE*i+1, sMenuArray[i].color, BG_COLOR_NONE );
|
||||||
#ifndef NAND_INITIALIZER_LIMITED_MODE
|
}
|
||||||
kamiFontFillChar(10, BG_COLOR_NONE, BG_COLOR_GRAY );
|
|
||||||
kamiFontFillChar(11, BG_COLOR_GRAY, BG_COLOR_GRAY );
|
|
||||||
kamiFontFillChar(12, BG_COLOR_GRAY, BG_COLOR_TRANS );
|
|
||||||
|
|
||||||
kamiFontFillChar(12, BG_COLOR_NONE, BG_COLOR_PINK );
|
|
||||||
kamiFontFillChar(13, BG_COLOR_PINK, BG_COLOR_PINK );
|
|
||||||
kamiFontFillChar(14, BG_COLOR_PINK, BG_COLOR_TRANS );
|
|
||||||
|
|
||||||
kamiFontFillChar(14, BG_COLOR_NONE, BG_COLOR_GREEN );
|
|
||||||
kamiFontFillChar(15, BG_COLOR_GREEN, BG_COLOR_GREEN );
|
|
||||||
kamiFontFillChar(16, BG_COLOR_GREEN, BG_COLOR_TRANS );
|
|
||||||
|
|
||||||
kamiFontFillChar(16, BG_COLOR_NONE, BG_COLOR_VIOLET );
|
|
||||||
kamiFontFillChar(17, BG_COLOR_VIOLET, BG_COLOR_VIOLET );
|
|
||||||
kamiFontFillChar(18, BG_COLOR_VIOLET, BG_COLOR_TRANS );
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// カーソル消去
|
// カーソル消去
|
||||||
SetCursorPos((u16)200, (u16)200);
|
SetCursorPos((u16)200, (u16)200);
|
||||||
@ -205,20 +214,24 @@ void* TopmenuProcess2(void)
|
|||||||
{
|
{
|
||||||
switch ( sMenuSelectNo )
|
switch ( sMenuSelectNo )
|
||||||
{
|
{
|
||||||
case 0:
|
case MENU_FORMAT:
|
||||||
FADE_OUT_RETURN( FormatProcess0 );
|
FADE_OUT_RETURN( FormatProcess0 );
|
||||||
case 1:
|
case MENU_HARDWARE_INFO:
|
||||||
FADE_OUT_RETURN( HWInfoProcess0 );
|
FADE_OUT_RETURN( HWInfoProcess0 );
|
||||||
#ifndef NAND_INITIALIZER_LIMITED_MODE
|
#ifdef USE_WIRELESS_FORCE_DISABLE_SETTING
|
||||||
case 2:
|
case MENU_WIRELESS_SETTING:
|
||||||
|
FADE_OUT_RETURN( WirelessSettingProcess0 );
|
||||||
|
#endif // USE_WIRELESS_FORCE_DISABLE_SETTING
|
||||||
|
#ifndef NAND_INITIALIZER_LIMITED_MODE
|
||||||
|
case MENU_ETICKET:
|
||||||
FADE_OUT_RETURN( eTicketProcess0 );
|
FADE_OUT_RETURN( eTicketProcess0 );
|
||||||
case 3:
|
case MENU_IMPORT_TAD:
|
||||||
FADE_OUT_RETURN( ImportProcess0 );
|
FADE_OUT_RETURN( ImportProcess0 );
|
||||||
case 4:
|
case MENU_IMPORT_NANDFIRM:
|
||||||
FADE_OUT_RETURN( NandfirmProcess0 );
|
FADE_OUT_RETURN( NandfirmProcess0 );
|
||||||
case 5:
|
case MENU_IMPORT_NORFIRM:
|
||||||
FADE_OUT_RETURN( NorfirmProcess0 );
|
FADE_OUT_RETURN( NorfirmProcess0 );
|
||||||
#endif
|
#endif // NAND_INITIALIZER_LIMITED_MODE
|
||||||
}
|
}
|
||||||
|
|
||||||
return TopmenuProcess1;
|
return TopmenuProcess1;
|
||||||
@ -227,4 +240,3 @@ void* TopmenuProcess2(void)
|
|||||||
/*---------------------------------------------------------------------------*
|
/*---------------------------------------------------------------------------*
|
||||||
処理関数定義
|
処理関数定義
|
||||||
*---------------------------------------------------------------------------*/
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
|||||||
@ -0,0 +1,211 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: TwlSDK - NandInitializer
|
||||||
|
File: process_wireless_setting.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 <twl/lcfg.h>
|
||||||
|
#include "kami_font.h"
|
||||||
|
#include "process_topmenu.h"
|
||||||
|
#include "process_hw_info.h"
|
||||||
|
#include "process_wireless_setting.h"
|
||||||
|
#include "process_fade.h"
|
||||||
|
#include "cursor.h"
|
||||||
|
#include "keypad.h"
|
||||||
|
#include "hwi.h"
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
型定義
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
enum {
|
||||||
|
MENU_WIRELESS_ENABLE,
|
||||||
|
MENU_WIRELESS_FORCE_OFF,
|
||||||
|
MENU_RETURN,
|
||||||
|
NUM_OF_MENU_SELECT
|
||||||
|
};
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
定数定義
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#define DOT_OF_MENU_SPACE 16
|
||||||
|
#define CHAR_OF_MENU_SPACE 2
|
||||||
|
#define MENU_TOP_LINE 5
|
||||||
|
#define CURSOR_ORIGIN_X 32
|
||||||
|
#define CURSOR_ORIGIN_Y 40
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
内部変数定義
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
static s8 sMenuSelectNo;
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
内部関数宣言
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
static BOOL WriteHWNormalInfoFile( void );
|
||||||
|
static BOOL WriteHWSecureInfoFile( u8 region );
|
||||||
|
|
||||||
|
const LCFGTWLHWNormalInfo *LCFG_THW_GetDefaultNormalInfo( void );
|
||||||
|
const LCFGTWLHWSecureInfo *LCFG_THW_GetDefaultSecureInfo( void );
|
||||||
|
const LCFGTWLHWNormalInfo *LCFG_THW_GetNormalInfo( void );
|
||||||
|
const LCFGTWLHWSecureInfo *LCFG_THW_GetSecureInfo( void );
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
プロセス関数定義
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: WirelessSetting プロセス0
|
||||||
|
|
||||||
|
Description:
|
||||||
|
|
||||||
|
Arguments: None.
|
||||||
|
|
||||||
|
Returns: next sequence
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
void* WirelessSettingProcess0(void)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
|
||||||
|
// 文字列全クリア
|
||||||
|
kamiFontClear();
|
||||||
|
|
||||||
|
// バージョン表示
|
||||||
|
kamiFontPrintf(2, 1, FONT_COLOR_BLACK, "Wireless Setting ");
|
||||||
|
kamiFontPrintf(0, 2, FONT_COLOR_BLACK, "--------------------------------");
|
||||||
|
|
||||||
|
// メニュー一覧
|
||||||
|
kamiFontPrintf(3, 4, FONT_COLOR_BLACK, "+--------------------+----+");
|
||||||
|
kamiFontPrintf(3, 5, FONT_COLOR_BLACK, "l Wireless Enable l l");
|
||||||
|
kamiFontPrintf(3, 6, FONT_COLOR_BLACK, "+--------------------+----+");
|
||||||
|
kamiFontPrintf(3, 7, FONT_COLOR_BLACK, "l Wireless Force Offl l");
|
||||||
|
kamiFontPrintf(3, 8, FONT_COLOR_BLACK, "+--------------------+----+");
|
||||||
|
kamiFontPrintf(3, 9, FONT_COLOR_BLACK, "l RETURN l l");
|
||||||
|
kamiFontPrintf(3, 10, FONT_COLOR_BLACK, "+--------------------+----+");
|
||||||
|
|
||||||
|
// 現在の無線強制OFF状態に"now"と表示
|
||||||
|
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+LCFG_THW_IsForceDisableWireless()*CHAR_OF_MENU_SPACE), FONT_COLOR_BLACK, "now");
|
||||||
|
|
||||||
|
// 背景全クリア
|
||||||
|
for (i=0;i<24;i++)
|
||||||
|
{
|
||||||
|
kamiFontFillChar( i, BG_COLOR_TRANS, BG_COLOR_TRANS );
|
||||||
|
}
|
||||||
|
|
||||||
|
// 背景上部
|
||||||
|
kamiFontFillChar( 0, BG_COLOR_YELLOW, BG_COLOR_YELLOW );
|
||||||
|
kamiFontFillChar( 1, BG_COLOR_YELLOW, BG_COLOR_YELLOW );
|
||||||
|
kamiFontFillChar( 2, BG_COLOR_YELLOW, BG_COLOR_TRANS );
|
||||||
|
|
||||||
|
// カーソル除外
|
||||||
|
SetCursorPos((u16)200, (u16)200);
|
||||||
|
|
||||||
|
FADE_IN_RETURN( WirelessSettingProcess1 );
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: WirelessSetting プロセス1
|
||||||
|
|
||||||
|
Description:
|
||||||
|
|
||||||
|
Arguments: None.
|
||||||
|
|
||||||
|
Returns: next sequence
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
void* WirelessSettingProcess1(void)
|
||||||
|
{
|
||||||
|
// 選択メニューの変更
|
||||||
|
if ( kamiPadIsRepeatTrigger(PAD_KEY_UP) )
|
||||||
|
{
|
||||||
|
if (--sMenuSelectNo < 0) sMenuSelectNo = NUM_OF_MENU_SELECT -1;
|
||||||
|
}
|
||||||
|
else if ( kamiPadIsRepeatTrigger(PAD_KEY_DOWN) )
|
||||||
|
{
|
||||||
|
if (++sMenuSelectNo >= NUM_OF_MENU_SELECT) sMenuSelectNo = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// カーソル配置
|
||||||
|
SetCursorPos((u16)CURSOR_ORIGIN_X, (u16)(CURSOR_ORIGIN_Y + sMenuSelectNo * DOT_OF_MENU_SPACE));
|
||||||
|
|
||||||
|
// 決定
|
||||||
|
if (kamiPadIsTrigger(PAD_BUTTON_A))
|
||||||
|
{
|
||||||
|
return WirelessSettingProcess2;
|
||||||
|
}
|
||||||
|
// トップメニューへ戻る
|
||||||
|
else if (kamiPadIsTrigger(PAD_BUTTON_B))
|
||||||
|
{
|
||||||
|
FADE_OUT_RETURN( TopmenuProcess0 );
|
||||||
|
}
|
||||||
|
|
||||||
|
return WirelessSettingProcess1;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: WirelessSetting プロセス2
|
||||||
|
|
||||||
|
Description:
|
||||||
|
|
||||||
|
Arguments: None.
|
||||||
|
|
||||||
|
Returns: next sequence
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
void* WirelessSettingProcess2(void)
|
||||||
|
{
|
||||||
|
BOOL result;
|
||||||
|
|
||||||
|
switch( sMenuSelectNo )
|
||||||
|
{
|
||||||
|
case MENU_WIRELESS_ENABLE:
|
||||||
|
result = WriteHWInfoFile( LCFG_THW_GetRegion(), FALSE );
|
||||||
|
if ( result == TRUE )
|
||||||
|
{
|
||||||
|
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+MENU_WIRELESS_ENABLE*CHAR_OF_MENU_SPACE), FONT_COLOR_GREEN, "OK ");
|
||||||
|
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+MENU_WIRELESS_FORCE_OFF*CHAR_OF_MENU_SPACE), FONT_COLOR_GREEN, " ");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+MENU_WIRELESS_ENABLE*CHAR_OF_MENU_SPACE), FONT_COLOR_GREEN, "NG ");
|
||||||
|
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+MENU_WIRELESS_FORCE_OFF*CHAR_OF_MENU_SPACE), FONT_COLOR_GREEN, " ");
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MENU_WIRELESS_FORCE_OFF:
|
||||||
|
result = WriteHWInfoFile( LCFG_THW_GetRegion(), TRUE );
|
||||||
|
if ( result == TRUE )
|
||||||
|
{
|
||||||
|
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+MENU_WIRELESS_ENABLE*CHAR_OF_MENU_SPACE), FONT_COLOR_GREEN, " ");
|
||||||
|
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+MENU_WIRELESS_FORCE_OFF*CHAR_OF_MENU_SPACE), FONT_COLOR_GREEN, "OK ");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+MENU_WIRELESS_ENABLE*CHAR_OF_MENU_SPACE), FONT_COLOR_GREEN, " ");
|
||||||
|
kamiFontPrintf(26, (s16)(MENU_TOP_LINE+MENU_WIRELESS_FORCE_OFF*CHAR_OF_MENU_SPACE), FONT_COLOR_GREEN, "NG ");
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case MENU_RETURN:
|
||||||
|
FADE_OUT_RETURN( TopmenuProcess0 );
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
return WirelessSettingProcess1;
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue
Block a user