mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
国選択追加
現状のIPLへのマージが完了したのでコミット git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@244 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
7b449b3834
commit
d801b7d15e
@ -36,7 +36,7 @@ MISC_DIR = ../../misc
|
|||||||
BG_DIR = ../../data
|
BG_DIR = ../../data
|
||||||
|
|
||||||
SRCS = main.c MachineSetting.c \
|
SRCS = main.c MachineSetting.c \
|
||||||
setRTC.c selectLanguage.c calibrationTP.c setOwnerInfo.c selectRegion.c \
|
setRTC.c selectLanguage.c calibrationTP.c setOwnerInfo.c selectRegion.c selectCountry.c \
|
||||||
$(MISC_DIR)/src/misc.c $(MISC_DIR)/src/cmn.c \
|
$(MISC_DIR)/src/misc.c $(MISC_DIR)/src/cmn.c \
|
||||||
$(BG_DIR)/BGData_MachineSettings.c
|
$(BG_DIR)/BGData_MachineSettings.c
|
||||||
|
|
||||||
|
|||||||
@ -33,7 +33,7 @@
|
|||||||
#define OK_BUTTON_BOTTOM_Y ( OK_BUTTON_TOP_Y + 2 * 8 )
|
#define OK_BUTTON_BOTTOM_Y ( OK_BUTTON_TOP_Y + 2 * 8 )
|
||||||
|
|
||||||
|
|
||||||
#define SETTING_MENU_ELEMENT_NUM 5 // メインメニューの項目数
|
#define SETTING_MENU_ELEMENT_NUM 6 // メインメニューの項目数
|
||||||
|
|
||||||
// extern data------------------------------------------
|
// extern data------------------------------------------
|
||||||
|
|
||||||
@ -109,6 +109,16 @@ static const u16 *const s_pStrSettingElemTbl[ SETTING_MENU_ELEMENT_NUM ][ TWL_LA
|
|||||||
(const u16 *)L"REGION(C)",
|
(const u16 *)L"REGION(C)",
|
||||||
(const u16 *)L"REGION(K)",
|
(const u16 *)L"REGION(K)",
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
(const u16 *)L"国設定",
|
||||||
|
(const u16 *)L"COUNTRY",
|
||||||
|
(const u16 *)L"COUNTRY(F)",
|
||||||
|
(const u16 *)L"COUNTRY(G)",
|
||||||
|
(const u16 *)L"COUNTRY(I)",
|
||||||
|
(const u16 *)L"COUNTRY(S)",
|
||||||
|
(const u16 *)L"COUNTRY(C)",
|
||||||
|
(const u16 *)L"COUNTRY(K)",
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
static MenuPos s_settingPos[] = {
|
static MenuPos s_settingPos[] = {
|
||||||
@ -117,6 +127,7 @@ static MenuPos s_settingPos[] = {
|
|||||||
{ TRUE, 4 * 8, 10 * 8 },
|
{ TRUE, 4 * 8, 10 * 8 },
|
||||||
{ TRUE, 4 * 8, 12 * 8 },
|
{ TRUE, 4 * 8, 12 * 8 },
|
||||||
{ TRUE, 4 * 8, 14 * 8 },
|
{ TRUE, 4 * 8, 14 * 8 },
|
||||||
|
{ TRUE, 4 * 8, 16 * 8 },
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -223,6 +234,11 @@ int MachineSettingMain( void )
|
|||||||
case 4:
|
case 4:
|
||||||
SelectRegionInit();
|
SelectRegionInit();
|
||||||
g_pNowProcess = SelectRegionMain;
|
g_pNowProcess = SelectRegionMain;
|
||||||
|
break;
|
||||||
|
case 5:
|
||||||
|
SelectCountryInit();
|
||||||
|
g_pNowProcess = SelectCountryMain;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -65,6 +65,8 @@ extern void TP_CalibrationInit( void );
|
|||||||
extern int TP_CalibrationMain( void );
|
extern int TP_CalibrationMain( void );
|
||||||
extern void SelectRegionInit( void );
|
extern void SelectRegionInit( void );
|
||||||
extern int SelectRegionMain( void );
|
extern int SelectRegionMain( void );
|
||||||
|
extern void SelectCountryInit( void );
|
||||||
|
extern int SelectCountryMain( void );
|
||||||
|
|
||||||
extern void DrawOKCancelButton( void );
|
extern void DrawOKCancelButton( void );
|
||||||
extern void CheckOKCancelButton(BOOL *tp_ok, BOOL *tp_cancel);
|
extern void CheckOKCancelButton(BOOL *tp_ok, BOOL *tp_cancel);
|
||||||
|
|||||||
536
build/systemMenu_RED/MachineSettings/ARM9/src/selectCountry.c
Normal file
536
build/systemMenu_RED/MachineSettings/ARM9/src/selectCountry.c
Normal file
@ -0,0 +1,536 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: TwlIPL
|
||||||
|
File: SelectCountry.c
|
||||||
|
|
||||||
|
Copyright 2007 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:: 2007-11-19#$
|
||||||
|
$Rev: 215 $
|
||||||
|
$Author: yosiokat $
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#include <twl.h>
|
||||||
|
#include "misc.h"
|
||||||
|
#include "MachineSetting.h"
|
||||||
|
|
||||||
|
// define data------------------------------------------
|
||||||
|
#define CANCEL_BUTTON_TOP_X ( 2 * 8 )
|
||||||
|
#define CANCEL_BUTTON_TOP_Y ( 21 * 8 )
|
||||||
|
#define CANCEL_BUTTON_BOTTOM_X ( (CANCEL_BUTTON_TOP_X + 8 ) * 8 )
|
||||||
|
#define CANCEL_BUTTON_BOTTOM_Y ( (CANCEL_BUTTON_TOP_Y + 2 ) * 8 )
|
||||||
|
|
||||||
|
#define MENU_DISPLAY_SIZE 7
|
||||||
|
|
||||||
|
// extern data------------------------------------------
|
||||||
|
|
||||||
|
// function's prototype declaration---------------------
|
||||||
|
|
||||||
|
// global variable -------------------------------------
|
||||||
|
|
||||||
|
// static variable -------------------------------------
|
||||||
|
static TWLCountryCode s_countryCode; // 国コード
|
||||||
|
static TWLRegion s_regionCode; // リージョン
|
||||||
|
|
||||||
|
static u16 list_start, list_end;
|
||||||
|
static u16 s_menu_display_start;
|
||||||
|
|
||||||
|
static const u16 *s_pStrCountry[MENU_DISPLAY_SIZE];
|
||||||
|
|
||||||
|
// const data -----------------------------------------
|
||||||
|
static const u16 *const s_pStrCountryName[] = {
|
||||||
|
(const u16 *)L"UNDEFINED",
|
||||||
|
(const u16 *)L"JAPAN", // 日本
|
||||||
|
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
|
||||||
|
// USAリージョン
|
||||||
|
(const u16 *)L"Anguilla", // アンギラ
|
||||||
|
(const u16 *)L"ANTIGUA_AND_BARBUDA", // アンティグア・バーブーダ
|
||||||
|
(const u16 *)L"ARGENTINA", // アルゼンチン
|
||||||
|
(const u16 *)L"ARUBA", // アルバ
|
||||||
|
(const u16 *)L"BAHAMAS", // バハマ
|
||||||
|
(const u16 *)L"BARBADOS", // バルバドス
|
||||||
|
(const u16 *)L"BELIZE", // ベリーズ
|
||||||
|
(const u16 *)L"BOLIVIA", // ボリビア
|
||||||
|
(const u16 *)L"BRAZIL", // ブラジル
|
||||||
|
(const u16 *)L"BRITISH_VIRGIN_ISLANDS", // 英領ヴァージン諸島
|
||||||
|
(const u16 *)L"CANADA", // カナダ
|
||||||
|
(const u16 *)L"CAYMAN_ISLANDS", // ケイマン諸島
|
||||||
|
(const u16 *)L"CHILE", // チリ
|
||||||
|
(const u16 *)L"COLOMBIA", // コロンビア
|
||||||
|
(const u16 *)L"COSTA_RICA", // コスタリカ
|
||||||
|
(const u16 *)L"DOMINICA", // ドミニカ国
|
||||||
|
(const u16 *)L"DOMINICAN_REPUBLIC", // ドミニカ共和国
|
||||||
|
(const u16 *)L"ECUADOR", // エクアドル
|
||||||
|
(const u16 *)L"EL_SALVADOR", // エルサルバドル
|
||||||
|
(const u16 *)L"FRENCH_GUIANA", // フランス領ギアナ
|
||||||
|
(const u16 *)L"GRENADA", // グレナダ
|
||||||
|
(const u16 *)L"GUADELOUPE", // グアドループ
|
||||||
|
(const u16 *)L"GUATEMALA", // グアテマラ
|
||||||
|
(const u16 *)L"GUYANA", // ガイアナ
|
||||||
|
(const u16 *)L"HAITI", // ハイチ
|
||||||
|
(const u16 *)L"HONDURAS", // ホンジュラス
|
||||||
|
(const u16 *)L"JAMAICA", // ジャマイカ
|
||||||
|
(const u16 *)L"MARTINIQUE", // マルティニーク
|
||||||
|
(const u16 *)L"MEXICO", // メキシコ
|
||||||
|
(const u16 *)L"MONTSERRAT", // モントセラト
|
||||||
|
(const u16 *)L"NETHERLANDS_ANTILLES", // オランダ領アンティル
|
||||||
|
(const u16 *)L"NICARAGUA", // ニカラグア
|
||||||
|
(const u16 *)L"PANAMA", // パナマ
|
||||||
|
(const u16 *)L"PARAGUAY", // パラグアイ
|
||||||
|
(const u16 *)L"PERU", // ペルー
|
||||||
|
(const u16 *)L"ST_KITTS_AND_NEVIS", // セントキッツ・ネイビス
|
||||||
|
(const u16 *)L"ST_LUCIA", // セントルシア
|
||||||
|
(const u16 *)L"ST_VINCENT_AND_THE_GRENADINES", // セントビンセント・グレナディーン
|
||||||
|
(const u16 *)L"SURINAME", // スリナム
|
||||||
|
(const u16 *)L"TRINIDAD_AND_TOBAGO", // トリニダード・トバゴ
|
||||||
|
(const u16 *)L"TURKS_AND_CAICOS_ISLANDS", // タークス・カイコス諸島
|
||||||
|
(const u16 *)L"UNITED_STATES", // アメリカ
|
||||||
|
(const u16 *)L"URUGUAY", // ウルグアイ
|
||||||
|
(const u16 *)L"US_VIRGIN_ISLANDS", // 米領バージン諸島
|
||||||
|
(const u16 *)L"VENEZUELA", // ベネズエラ
|
||||||
|
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
|
||||||
|
// EUR", NAL リージョン
|
||||||
|
(const u16 *)L"ALBANIA", // アルバニア
|
||||||
|
(const u16 *)L"AUSTRALIA", // オーストラリア
|
||||||
|
(const u16 *)L"AUSTRIA", // オーストリア
|
||||||
|
(const u16 *)L"BELGIUM", // ベルギー
|
||||||
|
(const u16 *)L"BOSNIA_AND_HERZEGOVINA", // ボスニア・ヘルツェゴビナ
|
||||||
|
(const u16 *)L"BOTSWANA", // ボツワナ
|
||||||
|
(const u16 *)L"BULGARIA", // ブルガリア
|
||||||
|
(const u16 *)L"CROATIA", // クロアチア
|
||||||
|
(const u16 *)L"CYPRUS", // キプロス
|
||||||
|
(const u16 *)L"CZECH_REPUBLIC", // チェコ
|
||||||
|
(const u16 *)L"DENMARK", // デンマーク
|
||||||
|
(const u16 *)L"ESTONIA", // エストニア
|
||||||
|
(const u16 *)L"FINLAND", // フィンランド
|
||||||
|
(const u16 *)L"FRANCE", // フランス
|
||||||
|
(const u16 *)L"GERMANY", // ドイツ
|
||||||
|
(const u16 *)L"GREECE", // ギリシャ
|
||||||
|
(const u16 *)L"HUNGARY", // ハンガリー
|
||||||
|
(const u16 *)L"ICELAND", // アイスランド
|
||||||
|
(const u16 *)L"IRELAND", // アイルランド
|
||||||
|
(const u16 *)L"ITALY", // イタリア
|
||||||
|
(const u16 *)L"LATVIA", // ラトビア
|
||||||
|
(const u16 *)L"LESOTHO", // レソト
|
||||||
|
(const u16 *)L"LIECHTENSTEIN", // リヒテンシュタイン
|
||||||
|
(const u16 *)L"LITHUANIA", // リトアニア
|
||||||
|
(const u16 *)L"LUXEMBOURG", // ルクセンブルク
|
||||||
|
(const u16 *)L"MACEDONIA", // マケドニア
|
||||||
|
(const u16 *)L"MALTA", // マルタ
|
||||||
|
(const u16 *)L"MONTENEGRO", // モンテネグロ
|
||||||
|
(const u16 *)L"MOZAMBIQUE", // モザンビーク
|
||||||
|
(const u16 *)L"NAMIBIA", // ナミビア
|
||||||
|
(const u16 *)L"NETHERLANDS", // オランダ
|
||||||
|
(const u16 *)L"NEW_ZEALAND", // ニュージーランド
|
||||||
|
(const u16 *)L"NORWAY", // ノルウェー
|
||||||
|
(const u16 *)L"POLAND", // ポーランド
|
||||||
|
(const u16 *)L"PORTUGAL", // ポルトガル
|
||||||
|
(const u16 *)L"ROMANIA", // ルーマニア
|
||||||
|
(const u16 *)L"RUSSIA", // ロシア
|
||||||
|
(const u16 *)L"SERBIA", // セルビア
|
||||||
|
(const u16 *)L"SLOVAKIA", // スロバキア
|
||||||
|
(const u16 *)L"SLOVENIA", // スロベニア
|
||||||
|
(const u16 *)L"SOUTH_AFRICA", // 南アフリカ
|
||||||
|
(const u16 *)L"SPAIN", // スペイン
|
||||||
|
(const u16 *)L"SWAZILAND", // スワジランド
|
||||||
|
(const u16 *)L"SWEDEN", // スウェーデン
|
||||||
|
(const u16 *)L"SWITZERLAND", // スイス
|
||||||
|
(const u16 *)L"TURKEY", // トルコ
|
||||||
|
(const u16 *)L"UNITED_KINGDOM", // イギリス
|
||||||
|
(const u16 *)L"ZAMBIA", // ザンビア
|
||||||
|
(const u16 *)L"ZIMBABWE", // ジンバブエ
|
||||||
|
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
|
||||||
|
// TWNリージョン
|
||||||
|
(const u16 *)L"TAIWAN", // 台湾
|
||||||
|
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
|
||||||
|
// KORリージョン
|
||||||
|
(const u16 *)L"SOUTH_KOREA", // 韓国
|
||||||
|
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
|
||||||
|
// HKGリージョン(Wiiの国リストに存在)
|
||||||
|
(const u16 *)L"HONG_KONG", // ホンコン
|
||||||
|
(const u16 *)L"MACAU", // マカオ
|
||||||
|
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
|
||||||
|
// ASIリージョン(Wiiの国リストに存在)
|
||||||
|
(const u16 *)L"INDONESIA", // インドネシア
|
||||||
|
|
||||||
|
// USAリージョン
|
||||||
|
(const u16 *)L"SINGAPORE", // シンガポール
|
||||||
|
|
||||||
|
// ASIリージョン(再び)
|
||||||
|
(const u16 *)L"THAILAND", // タイ
|
||||||
|
(const u16 *)L"PHILIPPINES", // フィリピン
|
||||||
|
(const u16 *)L"MALAYSIA", // マレーシア
|
||||||
|
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
|
||||||
|
// 未定義リージョン(IQueリージョン?)
|
||||||
|
(const u16 *)L"CHINA", // 中国
|
||||||
|
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
|
||||||
|
// USAリージョン
|
||||||
|
(const u16 *)L"UAE", // アラブ首長国連邦
|
||||||
|
|
||||||
|
// 未定義リージョン
|
||||||
|
(const u16 *)L"INDIA", // インド
|
||||||
|
(const u16 *)L"EGYPT", // エジプト
|
||||||
|
(const u16 *)L"OMAN", // オマーン
|
||||||
|
(const u16 *)L"QATAR", // カタール
|
||||||
|
(const u16 *)L"KUWAIT", // クウェート
|
||||||
|
(const u16 *)L"SAUDI_ARABIA", // サウジアラビア
|
||||||
|
(const u16 *)L"SYRIA", // シリア
|
||||||
|
(const u16 *)L"BAHRAIN", // バーレーン
|
||||||
|
(const u16 *)L"JORDAN", // ヨルダン
|
||||||
|
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",//180
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",//190
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",//200
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",//210
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",//220
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",//230
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",//240
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",//250
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
(const u16 *)L"DUMMY",
|
||||||
|
|
||||||
|
(const u16 *)L"OTHERS",
|
||||||
|
(const u16 *)L"UNKNOWN"
|
||||||
|
};
|
||||||
|
|
||||||
|
static MenuPos s_countryPos[MENU_DISPLAY_SIZE] = {
|
||||||
|
{ TRUE, 4 * 8, 6 * 8 },
|
||||||
|
{ TRUE, 4 * 8, 8 * 8 },
|
||||||
|
{ TRUE, 4 * 8, 10 * 8 },
|
||||||
|
{ TRUE, 4 * 8, 12 * 8 },
|
||||||
|
{ TRUE, 4 * 8, 14 * 8 },
|
||||||
|
{ TRUE, 4 * 8, 16 * 8 },
|
||||||
|
{ TRUE, 4 * 8, 18 * 8 },
|
||||||
|
};
|
||||||
|
|
||||||
|
static MenuParam countrySel = {
|
||||||
|
MENU_DISPLAY_SIZE,
|
||||||
|
TXT_COLOR_BLACK,
|
||||||
|
TXT_COLOR_GREEN,
|
||||||
|
TXT_COLOR_RED,
|
||||||
|
&s_countryPos[ 0 ],
|
||||||
|
(const u16 **)&s_pStrCountry,
|
||||||
|
};
|
||||||
|
|
||||||
|
static u32 region_country_mapping[TWL_REGION_MAX] =
|
||||||
|
{
|
||||||
|
TWL_COUNTRY_MAPPING_JAPAN,
|
||||||
|
TWL_COUNTRY_MAPPING_AMERICA,
|
||||||
|
TWL_COUNTRY_MAPPING_EUROPE,
|
||||||
|
TWL_COUNTRY_MAPPING_AUSTRALIA,
|
||||||
|
TWL_COUNTRY_MAPPING_CHINA,
|
||||||
|
TWL_COUNTRY_MAPPING_KOREA
|
||||||
|
};
|
||||||
|
|
||||||
|
//======================================================
|
||||||
|
// function's description
|
||||||
|
//======================================================
|
||||||
|
|
||||||
|
// 国名設定の初期化
|
||||||
|
void SelectCountryInit( void )
|
||||||
|
{
|
||||||
|
int l;
|
||||||
|
BOOL in_list_flag = FALSE;
|
||||||
|
|
||||||
|
GX_DispOff();
|
||||||
|
GXS_DispOff();
|
||||||
|
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_NULL );
|
||||||
|
|
||||||
|
PutStringUTF16( 0, 0, TXT_COLOR_BLUE, (const u16 *)L"COUNTRY SELECT" );
|
||||||
|
PutStringUTF16( CANCEL_BUTTON_TOP_X, CANCEL_BUTTON_TOP_Y, TXT_COLOR_CYAN, (const u16 *)L"CANCEL" );
|
||||||
|
if( g_initialSet ) {
|
||||||
|
PutStringUTF16( 8 * 8, 18 * 8, TXT_COLOR_RED, (const u16 *)L"Select country." );
|
||||||
|
}
|
||||||
|
|
||||||
|
// 設定済みリージョンと国名コードの取得
|
||||||
|
if( !SYSM_IsValidTSD() ||
|
||||||
|
( TSD_GetRegion() >= TWL_REGION_MAX ) ) {
|
||||||
|
s_regionCode = (TWLRegion)TWL_DEFAULT_REGION;
|
||||||
|
}else {
|
||||||
|
s_regionCode = (TWLRegion)TSD_GetRegion();
|
||||||
|
}
|
||||||
|
|
||||||
|
if( !SYSM_IsValidTSD() ||
|
||||||
|
( TSD_GetCountry() >= TWL_COUNTRY_MAX ) ) {
|
||||||
|
s_countryCode = (TWLCountryCode)0;
|
||||||
|
}else {
|
||||||
|
s_countryCode = TSD_GetCountry();
|
||||||
|
}
|
||||||
|
|
||||||
|
// メニューに表示する国名リスト全体の最初と最後をマッピングデータから取得
|
||||||
|
list_start = (u16)(region_country_mapping[s_regionCode] >> 16);
|
||||||
|
list_end = (u16)(region_country_mapping[s_regionCode]);
|
||||||
|
if(list_start > list_end) OS_Panic("selectCountry.c:list_start>list_end!");
|
||||||
|
|
||||||
|
// 画面に表示する最大項目数よりも、国名リストが小さいか?
|
||||||
|
countrySel.num = (MENU_DISPLAY_SIZE < list_end - list_start + 1) ? MENU_DISPLAY_SIZE : list_end - list_start + 1 ;
|
||||||
|
|
||||||
|
// 設定されていた国名コードがリスト範囲に入っていなければデフォルト値にする
|
||||||
|
if(s_countryCode < list_start || list_end < s_countryCode)
|
||||||
|
{
|
||||||
|
s_countryCode = (TWLCountryCode)list_start;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 実際に表示する範囲の調整
|
||||||
|
s_menu_display_start = s_countryCode;
|
||||||
|
if(s_countryCode + countrySel.num - 1 > list_end)
|
||||||
|
{
|
||||||
|
s_menu_display_start = (u16)(list_end + 1 - countrySel.num);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 実際に表示する国名のみリスト化
|
||||||
|
for(l=0; l<countrySel.num;l++)
|
||||||
|
{
|
||||||
|
s_pStrCountry[l] = s_pStrCountryName[s_menu_display_start + l];
|
||||||
|
}
|
||||||
|
|
||||||
|
DrawMenu( (u16)(s_countryCode - s_menu_display_start), &countrySel );
|
||||||
|
|
||||||
|
SVC_CpuClear( 0x0000, &tpd, sizeof(TpWork), 16 );
|
||||||
|
|
||||||
|
GX_SetVisiblePlane ( GX_PLANEMASK_BG0 | GX_PLANEMASK_BG1);
|
||||||
|
GXS_SetVisiblePlane( GX_PLANEMASK_BG0 );
|
||||||
|
GX_DispOn();
|
||||||
|
GXS_DispOn();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// 国名選択
|
||||||
|
int SelectCountryMain( void )
|
||||||
|
{
|
||||||
|
BOOL tp_select,tp_cancel = FALSE;
|
||||||
|
static u16 selecteditem;
|
||||||
|
int l;
|
||||||
|
static int padcount = 0;
|
||||||
|
BOOL padcont = FALSE;
|
||||||
|
|
||||||
|
ReadTP(); // TP入力の取得
|
||||||
|
|
||||||
|
//--------------------------------------
|
||||||
|
// キー入力処理
|
||||||
|
//--------------------------------------
|
||||||
|
if( pad.cont & PAD_KEY_DOWN ) { // カーソルの移動
|
||||||
|
if(padcount == 0 || (padcount>29 && padcount%5==0))
|
||||||
|
if( s_countryCode < list_end ) s_countryCode++;
|
||||||
|
padcont = TRUE;
|
||||||
|
}
|
||||||
|
if( pad.cont & PAD_KEY_UP ) {
|
||||||
|
if(padcount == 0 || (padcount>29 && padcount%5==0))
|
||||||
|
if( s_countryCode > list_start ) s_countryCode--;
|
||||||
|
padcont = TRUE;
|
||||||
|
}
|
||||||
|
if( padcont ) padcount++;
|
||||||
|
else padcount = 0;
|
||||||
|
padcont = FALSE;
|
||||||
|
|
||||||
|
// キー入力後、表示される項目の調整
|
||||||
|
if( s_countryCode < s_menu_display_start ) s_menu_display_start = s_countryCode;
|
||||||
|
else if( s_menu_display_start + countrySel.num - 1 < s_countryCode ) s_menu_display_start = (u16)(s_countryCode - countrySel.num + 1);
|
||||||
|
|
||||||
|
// 簡易スクロールバーによるスクロール
|
||||||
|
|
||||||
|
|
||||||
|
// タッチパッドによるスクロール後、表示される項目の調整
|
||||||
|
if( s_countryCode < s_menu_display_start ) s_countryCode = (TWLCountryCode)s_menu_display_start;
|
||||||
|
else if( s_menu_display_start + countrySel.num - 1 < s_countryCode ) s_countryCode = (TWLCountryCode)(s_menu_display_start + countrySel.num - 1);
|
||||||
|
|
||||||
|
// 実際に表示する国名のみリスト化
|
||||||
|
for(l=0; l<countrySel.num;l++)
|
||||||
|
{
|
||||||
|
s_pStrCountry[l] = s_pStrCountryName[s_menu_display_start + l];
|
||||||
|
}
|
||||||
|
|
||||||
|
// タッチパッドによるメニュー項目の選択
|
||||||
|
selecteditem = (u16)(s_countryCode - s_menu_display_start);
|
||||||
|
tp_select = SelectMenuByTP( (u16 *)&selecteditem, &countrySel );
|
||||||
|
s_countryCode = (TWLCountryCode)(s_menu_display_start + selecteditem);
|
||||||
|
|
||||||
|
// 描画
|
||||||
|
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_NULL );
|
||||||
|
// 簡易スクロールバー表示
|
||||||
|
{
|
||||||
|
int list_size = list_end - list_start + 1;
|
||||||
|
int bar_height = 107 - (list_size - countrySel.num);
|
||||||
|
double dots_per_item = 1;
|
||||||
|
if(bar_height<11){
|
||||||
|
bar_height = 11;
|
||||||
|
dots_per_item = (double)(107-11)/(list_size - countrySel.num);
|
||||||
|
}
|
||||||
|
PutStringUTF16( 10, 48-11, TXT_UCOLOR_G0, (const u16 *)L"□" );
|
||||||
|
for(l=0; l<bar_height-11;l+=11)
|
||||||
|
{
|
||||||
|
PutStringUTF16( 10, (int)(l+48+dots_per_item * (s_menu_display_start - list_start)), TXT_UCOLOR_G2, (const u16 *)L"■" );
|
||||||
|
}
|
||||||
|
PutStringUTF16( 10, (int)(bar_height-11+48+dots_per_item * (s_menu_display_start - list_start)), TXT_UCOLOR_G2, (const u16 *)L"■" );
|
||||||
|
PutStringUTF16( 10, 48+107, TXT_UCOLOR_G0, (const u16 *)L"□" );
|
||||||
|
}
|
||||||
|
PutStringUTF16( 0, 0, TXT_COLOR_BLUE, (const u16 *)L"COUNTRY SELECT" );
|
||||||
|
PutStringUTF16( CANCEL_BUTTON_TOP_X, CANCEL_BUTTON_TOP_Y, TXT_COLOR_CYAN, (const u16 *)L"CANCEL" );
|
||||||
|
DrawMenu( (u16)(s_countryCode - s_menu_display_start), &countrySel );
|
||||||
|
|
||||||
|
// [CANCEL]ボタン押下チェック
|
||||||
|
if( tpd.disp.touch ) {
|
||||||
|
tp_cancel = WithinRangeTP( CANCEL_BUTTON_TOP_X, CANCEL_BUTTON_TOP_Y,
|
||||||
|
CANCEL_BUTTON_BOTTOM_X, CANCEL_BUTTON_BOTTOM_Y, &tpd.disp );
|
||||||
|
}
|
||||||
|
|
||||||
|
if( ( pad.trg & PAD_BUTTON_A ) || tp_select ) { // メニュー項目への分岐
|
||||||
|
TSD_SetCountry( s_countryCode );
|
||||||
|
//TSD_SetFlagCountry( TRUE ); // 国名入力フラグを立てる
|
||||||
|
// ::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
|
// TWL設定データファイルへの書き込み
|
||||||
|
// ::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
|
(void)SYSM_WriteTWLSettingsFile();
|
||||||
|
|
||||||
|
MachineSettingInit();
|
||||||
|
return 0;
|
||||||
|
}else if( ( pad.trg & PAD_BUTTON_B ) || tp_cancel ) {
|
||||||
|
MachineSettingInit();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -72,6 +72,16 @@ TWLLangCode default_lang_list[TWL_REGION_MAX] =
|
|||||||
TWL_LANG_KOREAN
|
TWL_LANG_KOREAN
|
||||||
};
|
};
|
||||||
|
|
||||||
|
TWLCountryCode default_country_list[TWL_REGION_MAX] =
|
||||||
|
{
|
||||||
|
TWL_COUNTRY_JAPAN,
|
||||||
|
TWL_COUNTRY_Anguilla,
|
||||||
|
TWL_COUNTRY_ALBANIA,
|
||||||
|
TWL_COUNTRY_ALBANIA,
|
||||||
|
TWL_COUNTRY_CHINA,
|
||||||
|
TWL_COUNTRY_SOUTH_KOREA
|
||||||
|
};
|
||||||
|
|
||||||
//======================================================
|
//======================================================
|
||||||
// function's description
|
// function's description
|
||||||
//======================================================
|
//======================================================
|
||||||
@ -107,7 +117,7 @@ void SelectRegionInit( void )
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// Œ¾Œê‘I‘ð
|
// リージョン選択
|
||||||
int SelectRegionMain( void )
|
int SelectRegionMain( void )
|
||||||
{
|
{
|
||||||
BOOL tp_select,tp_cancel = FALSE;
|
BOOL tp_select,tp_cancel = FALSE;
|
||||||
@ -140,7 +150,9 @@ int SelectRegionMain( void )
|
|||||||
TSD_SetRegion( s_regionCode );
|
TSD_SetRegion( s_regionCode );
|
||||||
// TSD_SetFlagRegion( TRUE ); // Region入力フラグを立てる
|
// TSD_SetFlagRegion( TRUE ); // Region入力フラグを立てる
|
||||||
TSD_SetLanguage( default_lang_list[s_regionCode] ); // デフォルト言語に強制設定
|
TSD_SetLanguage( default_lang_list[s_regionCode] ); // デフォルト言語に強制設定
|
||||||
|
TSD_SetCountry( default_country_list[s_regionCode] ); // デフォルト国に強制設定
|
||||||
TSD_SetFlagLanguage( TRUE ); // Language入力フラグを立てる
|
TSD_SetFlagLanguage( TRUE ); // Language入力フラグを立てる
|
||||||
|
//TSD_SetFlagCountry( TRUE ); // Country入力フラグを立てる
|
||||||
// ::::::::::::::::::::::::::::::::::::::::::::::
|
// ::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
// TWL設定データファイルへの書き込み
|
// TWL設定データファイルへの書き込み
|
||||||
// ::::::::::::::::::::::::::::::::::::::::::::::
|
// ::::::::::::::::::::::::::::::::::::::::::::::
|
||||||
|
|||||||
@ -247,6 +247,12 @@ extern BOOL TSD_WriteSettings( void ); //
|
|||||||
// データ取得(TSD_ReadSettingsで内部ワークに読み出した情報の取得)
|
// データ取得(TSD_ReadSettingsで内部ワークに読み出した情報の取得)
|
||||||
//=========================================================
|
//=========================================================
|
||||||
|
|
||||||
|
// 国コードの取得。
|
||||||
|
static inline TWLCountryCode TSD_GetCountry( void )
|
||||||
|
{
|
||||||
|
return GetTSD()->country;
|
||||||
|
}
|
||||||
|
|
||||||
// リージョンの取得。
|
// リージョンの取得。
|
||||||
static inline u8 TSD_GetRegion( void )
|
static inline u8 TSD_GetRegion( void )
|
||||||
{
|
{
|
||||||
@ -390,6 +396,12 @@ static inline BOOL TSD_IsGBUseTopLCD( void )
|
|||||||
// データセット(TSD_ReadSettingsで内部ワークに読み出した情報への値セット)
|
// データセット(TSD_ReadSettingsで内部ワークに読み出した情報への値セット)
|
||||||
//=========================================================
|
//=========================================================
|
||||||
|
|
||||||
|
// 国コードのセット。
|
||||||
|
static inline void TSD_SetCountry( TWLCountryCode country )
|
||||||
|
{
|
||||||
|
GetTSD()->country = country;
|
||||||
|
}
|
||||||
|
|
||||||
// リージョンのセット。
|
// リージョンのセット。
|
||||||
static inline void TSD_SetRegion( u8 region )
|
static inline void TSD_SetRegion( u8 region )
|
||||||
{
|
{
|
||||||
|
|||||||
@ -175,10 +175,19 @@ typedef enum TWLCountryCode{
|
|||||||
TWL_COUNTRY_JORDAN, // ヨルダン
|
TWL_COUNTRY_JORDAN, // ヨルダン
|
||||||
|
|
||||||
TWL_COUNTRY_OTHERS = 254,
|
TWL_COUNTRY_OTHERS = 254,
|
||||||
TWL_COUNTRY_UNKNOWN = 255
|
TWL_COUNTRY_UNKNOWN = 255,
|
||||||
|
|
||||||
|
TWL_COUNTRY_MAX
|
||||||
|
|
||||||
}TWLCountryCode;
|
}TWLCountryCode;
|
||||||
|
|
||||||
|
// 対応カントリーコード。開始位置を16ビット左シフトしたものと終了位置をorでまとめたもの
|
||||||
|
#define TWL_COUNTRY_MAPPING_JAPAN (u32)( TWL_COUNTRY_JAPAN << 16| TWL_COUNTRY_JAPAN ) // JPN版での対応カントリーコード
|
||||||
|
#define TWL_COUNTRY_MAPPING_AMERICA (u32)( TWL_COUNTRY_Anguilla << 16| TWL_COUNTRY_VENEZUELA ) // AME版での対応カントリーコード
|
||||||
|
#define TWL_COUNTRY_MAPPING_EUROPE (u32)( TWL_COUNTRY_ALBANIA << 16| TWL_COUNTRY_ZIMBABWE ) // EUR版での対応カントリーコード
|
||||||
|
#define TWL_COUNTRY_MAPPING_AUSTRALIA (u32)( TWL_COUNTRY_ALBANIA << 16| TWL_COUNTRY_ZIMBABWE ) // AUS版での対応カントリーコード
|
||||||
|
#define TWL_COUNTRY_MAPPING_CHINA (u32)( TWL_COUNTRY_CHINA << 16| TWL_COUNTRY_CHINA ) // CHI版での対応カントリーコード
|
||||||
|
#define TWL_COUNTRY_MAPPING_KOREA (u32)( TWL_COUNTRY_SOUTH_KOREA << 16| TWL_COUNTRY_SOUTH_KOREA ) // KOR版での対応カントリーコード
|
||||||
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user