mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
ユーザーカラーの設定追加
MachineSettingsのみ背景追加(miscをコピーしてBG表示設定を変更すれば他のメニューにも適用可能……なはず) git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@172 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
c1203dc8f2
commit
da83d9ecfc
@ -123,7 +123,7 @@ void MachineSettingInit( void )
|
|||||||
|
|
||||||
GX_DispOff();
|
GX_DispOff();
|
||||||
GXS_DispOff();
|
GXS_DispOff();
|
||||||
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_WHITE );
|
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_NULL );
|
||||||
|
|
||||||
PutStringUTF16( 0, 0, TXT_COLOR_BLUE, (const u16 *)L"MACHINE SETTINGS" );
|
PutStringUTF16( 0, 0, TXT_COLOR_BLUE, (const u16 *)L"MACHINE SETTINGS" );
|
||||||
|
|
||||||
@ -132,11 +132,12 @@ void MachineSettingInit( void )
|
|||||||
s_pStrSetting[ i ] = s_pStrSettingElemTbl[ i ][ TSD_GetLanguage() ];
|
s_pStrSetting[ i ] = s_pStrSettingElemTbl[ i ][ TSD_GetLanguage() ];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ChangeUserColor( TSD_GetUserColor() );
|
||||||
DrawMenu( s_csr, &s_settingParam );
|
DrawMenu( s_csr, &s_settingParam );
|
||||||
|
|
||||||
SVC_CpuClear( 0x0000, &tpd, sizeof(TpWork), 16 );
|
SVC_CpuClear( 0x0000, &tpd, sizeof(TpWork), 16 );
|
||||||
|
|
||||||
GX_SetVisiblePlane ( GX_PLANEMASK_BG0 );
|
GX_SetVisiblePlane ( GX_PLANEMASK_BG0 | GX_PLANEMASK_BG1);
|
||||||
GXS_SetVisiblePlane( GX_PLANEMASK_BG0 );
|
GXS_SetVisiblePlane( GX_PLANEMASK_BG0 );
|
||||||
GX_DispOn();
|
GX_DispOn();
|
||||||
GXS_DispOn();
|
GXS_DispOn();
|
||||||
|
|||||||
@ -299,7 +299,7 @@ int TP_CalibrationMain( void )
|
|||||||
|
|
||||||
switch (s_pTPC->seq) {
|
switch (s_pTPC->seq) {
|
||||||
case INIT:
|
case INIT:
|
||||||
NNS_G2dCharCanvasClearArea( &gCanvas, TXT_COLOR_WHITE,
|
NNS_G2dCharCanvasClearArea( &gCanvas, TXT_COLOR_NULL,
|
||||||
0 * 8 , 20 * 8, 32 * 8, 4 * 8 );
|
0 * 8 , 20 * 8, 32 * 8, 4 * 8 );
|
||||||
s_pTPC->seq = INTERVAL_0;
|
s_pTPC->seq = INTERVAL_0;
|
||||||
PutStringUTF16( 2 * 8, 21 * 8, TXT_COLOR_CYAN, (const u16 *)L"[B]:CANCEL" );
|
PutStringUTF16( 2 * 8, 21 * 8, TXT_COLOR_CYAN, (const u16 *)L"[B]:CANCEL" );
|
||||||
@ -365,7 +365,7 @@ int TP_CalibrationMain( void )
|
|||||||
TP_GetUnCalibratedPoint( &tpd.disp.x, &tpd.disp.y, DISP_X_SIZE / 2, DISP_Y_SIZE / 2 );
|
TP_GetUnCalibratedPoint( &tpd.disp.x, &tpd.disp.y, DISP_X_SIZE / 2, DISP_Y_SIZE / 2 );
|
||||||
s_pTPC->seq = GET_POINT;
|
s_pTPC->seq = GET_POINT;
|
||||||
|
|
||||||
NNS_G2dCharCanvasClearArea( &gCanvas, TXT_COLOR_WHITE,
|
NNS_G2dCharCanvasClearArea( &gCanvas, TXT_COLOR_NULL,
|
||||||
2 * 8 , 21 * 8, 10 * 8, 2 * 8 );
|
2 * 8 , 21 * 8, 10 * 8, 2 * 8 );
|
||||||
PutStringUTF16( OK_BUTTON_TOP_X, OK_BUTTON_TOP_Y, TXT_COLOR_CYAN, (const u16 *)L" OK ");
|
PutStringUTF16( OK_BUTTON_TOP_X, OK_BUTTON_TOP_Y, TXT_COLOR_CYAN, (const u16 *)L" OK ");
|
||||||
PutStringUTF16( CANCEL_BUTTON_TOP_X, CANCEL_BUTTON_TOP_Y, TXT_COLOR_CYAN, (const u16 *)L" CANCEL ");
|
PutStringUTF16( CANCEL_BUTTON_TOP_X, CANCEL_BUTTON_TOP_Y, TXT_COLOR_CYAN, (const u16 *)L" CANCEL ");
|
||||||
@ -475,7 +475,7 @@ void TP_CalibrationInit( void )
|
|||||||
{
|
{
|
||||||
GX_DispOff();
|
GX_DispOff();
|
||||||
GXS_DispOff();
|
GXS_DispOff();
|
||||||
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_WHITE );
|
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_NULL );
|
||||||
|
|
||||||
PutStringUTF16( 0, 0, TXT_COLOR_BLUE, (const u16 *)L"TOUCH PANEL CALIBRATION" );
|
PutStringUTF16( 0, 0, TXT_COLOR_BLUE, (const u16 *)L"TOUCH PANEL CALIBRATION" );
|
||||||
|
|
||||||
@ -492,7 +492,7 @@ void TP_CalibrationInit( void )
|
|||||||
SVC_CpuClear( 0x0000, s_pTPC, sizeof(CalibWork), 16 );
|
SVC_CpuClear( 0x0000, s_pTPC, sizeof(CalibWork), 16 );
|
||||||
SVC_CpuClear( 0x0000, &tpd, sizeof(TpWork), 16 );
|
SVC_CpuClear( 0x0000, &tpd, sizeof(TpWork), 16 );
|
||||||
|
|
||||||
GX_SetVisiblePlane ( GX_PLANEMASK_BG0 | GX_PLANEMASK_OBJ );
|
GX_SetVisiblePlane ( GX_PLANEMASK_BG0 | GX_PLANEMASK_BG1 | GX_PLANEMASK_OBJ );
|
||||||
GXS_SetVisiblePlane( GX_PLANEMASK_BG0 );
|
GXS_SetVisiblePlane( GX_PLANEMASK_BG0 );
|
||||||
GX_DispOn();
|
GX_DispOn();
|
||||||
GXS_DispOn();
|
GXS_DispOn();
|
||||||
|
|||||||
@ -29,6 +29,8 @@ enum
|
|||||||
{
|
{
|
||||||
TXT_CPALETTE_MAIN,
|
TXT_CPALETTE_MAIN,
|
||||||
TXT_CPALETTE_USERCOLOR,
|
TXT_CPALETTE_USERCOLOR,
|
||||||
|
TXT_CPALETTE_USERCOLORSAMPLE1,
|
||||||
|
TXT_CPALETTE_USERCOLORSAMPLE2,
|
||||||
TXT_CPALETTE_4BPP,
|
TXT_CPALETTE_4BPP,
|
||||||
TXT_NUM_CPALEETE
|
TXT_NUM_CPALEETE
|
||||||
};
|
};
|
||||||
@ -36,12 +38,22 @@ enum
|
|||||||
// デモ共通のカラーパレット
|
// デモ共通のカラーパレット
|
||||||
GXRgb TXTColorPalette[TXT_NUM_CPALEETE * 16] =
|
GXRgb TXTColorPalette[TXT_NUM_CPALEETE * 16] =
|
||||||
{
|
{
|
||||||
GX_RGB(31, 31, 31), GX_RGB(31, 31, 31), GX_RGB( 0, 0, 0), GX_RGB(31, 0, 0),
|
GX_RGB(31, 31, 31), GX_RGB(31, 31, 31), GX_RGB( 0, 0, 0), GX_RGB(31, 0, 0),// 基本文字色
|
||||||
GX_RGB( 0, 31, 0), GX_RGB( 0, 0, 31), GX_RGB( 0, 31, 31), GX_RGB(31, 0, 31),
|
GX_RGB( 0, 31, 0), GX_RGB( 0, 0, 31), GX_RGB( 0, 31, 31), GX_RGB(31, 0, 31),
|
||||||
GX_RGB(31, 31, 0), GX_RGB( 0, 0, 0), GX_RGB( 0, 0, 0), GX_RGB( 0, 0, 0),
|
GX_RGB(31, 31, 0), GX_RGB( 0, 0, 0), GX_RGB( 0, 0, 0), GX_RGB( 0, 0, 0),
|
||||||
GX_RGB( 0, 0, 0), GX_RGB( 0, 0, 0), GX_RGB( 0, 0, 0), GX_RGB( 0, 0, 0),
|
GX_RGB( 0, 0, 0), GX_RGB( 0, 0, 0), GX_RGB( 0, 0, 0), GX_RGB( 0, 0, 0),
|
||||||
|
|
||||||
GX_RGB( 0, 0, 0), GX_RGB(12, 16, 19), GX_RGB(23, 9, 0), GX_RGB(31, 0, 3),
|
GX_RGB( 0, 0, 0), GX_RGB(12, 16, 19), GX_RGB(23, 9, 0), GX_RGB(31, 0, 3),// ユーザーカラー領域
|
||||||
|
GX_RGB(31, 17, 31), GX_RGB(31, 18, 0), GX_RGB(30, 28, 0), GX_RGB(21, 31, 0),
|
||||||
|
GX_RGB( 0, 20, 7), GX_RGB( 9, 27, 17), GX_RGB( 6, 23, 30), GX_RGB( 0, 11, 30),
|
||||||
|
GX_RGB( 0, 0, 18), GX_RGB(17, 0, 26), GX_RGB(26, 0, 29), GX_RGB(31, 0, 18),
|
||||||
|
|
||||||
|
GX_RGB( 0, 0, 0), GX_RGB(12, 16, 19), GX_RGB(23, 9, 0), GX_RGB(31, 0, 3),// ユーザーカラーのサンプル領域2
|
||||||
|
GX_RGB(31, 17, 31), GX_RGB(31, 18, 0), GX_RGB(30, 28, 0), GX_RGB(21, 31, 0),
|
||||||
|
GX_RGB(12, 16, 19), GX_RGB(23, 9, 0), GX_RGB(31, 0, 3), GX_RGB(31, 17, 31),
|
||||||
|
GX_RGB(31, 18, 0), GX_RGB(30, 28, 0), GX_RGB(21, 31, 0), GX_RGB( 0, 31, 0),
|
||||||
|
|
||||||
|
GX_RGB( 0, 0, 0), GX_RGB(12, 16, 19), GX_RGB(23, 9, 0), GX_RGB(31, 0, 3),// ユーザーカラーのサンプル領域1
|
||||||
GX_RGB(31, 17, 31), GX_RGB(31, 18, 0), GX_RGB(30, 28, 0), GX_RGB(21, 31, 0),
|
GX_RGB(31, 17, 31), GX_RGB(31, 18, 0), GX_RGB(30, 28, 0), GX_RGB(21, 31, 0),
|
||||||
GX_RGB( 0, 20, 7), GX_RGB( 9, 27, 17), GX_RGB( 6, 23, 30), GX_RGB( 0, 11, 30),
|
GX_RGB( 0, 20, 7), GX_RGB( 9, 27, 17), GX_RGB( 6, 23, 30), GX_RGB( 0, 11, 30),
|
||||||
GX_RGB( 0, 0, 18), GX_RGB(17, 0, 26), GX_RGB(26, 0, 29), GX_RGB(31, 0, 18),
|
GX_RGB( 0, 0, 18), GX_RGB(17, 0, 26), GX_RGB(26, 0, 29), GX_RGB(31, 0, 18),
|
||||||
@ -52,6 +64,46 @@ GXRgb TXTColorPalette[TXT_NUM_CPALEETE * 16] =
|
|||||||
GRAY( 8), GRAY( 6), GRAY( 3), GRAY( 0),
|
GRAY( 8), GRAY( 6), GRAY( 3), GRAY( 0),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// グラデパレットを作るためのマクロ
|
||||||
|
#define MAKECOLOR(r,g,b) GX_RGB( 0, 0, 0), GX_RGB(r, g, b), MC(r,g,b,1), MC(r,g,b,2),\
|
||||||
|
MC(r,g,b,3), MC(r,g,b,4), MC(r,g,b,5), MC(r,g,b,6),\
|
||||||
|
MC(r,g,b,7), MC(r,g,b,8), MC(r,g,b,9), MC(r,g,b,10),\
|
||||||
|
MC(r,g,b,11), MC(r,g,b,12), MC(r,g,b,13), GX_RGB(31, 31, 31)
|
||||||
|
|
||||||
|
#define MC(r,g,b,i) GX_RGB(r+((31-r)*i)/14, g+((31-g)*i)/14, b+((31-b)*i)/14)
|
||||||
|
|
||||||
|
// ユーザーカラーパレット切り替え用
|
||||||
|
GXRgb TempPalette[16 * 16] =
|
||||||
|
{
|
||||||
|
MAKECOLOR(12, 16, 19),
|
||||||
|
MAKECOLOR(23, 9, 0),
|
||||||
|
MAKECOLOR(31, 0, 3),
|
||||||
|
MAKECOLOR(31, 17, 31),
|
||||||
|
MAKECOLOR(31, 18, 0),
|
||||||
|
MAKECOLOR(30, 28, 0),
|
||||||
|
MAKECOLOR(21, 31, 0),
|
||||||
|
MAKECOLOR( 0, 31, 0),
|
||||||
|
MAKECOLOR( 0, 20, 7),
|
||||||
|
MAKECOLOR( 9, 27, 17),
|
||||||
|
MAKECOLOR( 6, 23, 30),
|
||||||
|
MAKECOLOR( 0, 11, 30),
|
||||||
|
MAKECOLOR( 0, 0, 18),
|
||||||
|
MAKECOLOR(17, 0, 26),
|
||||||
|
MAKECOLOR(26, 0, 29),
|
||||||
|
MAKECOLOR(31, 0, 18),
|
||||||
|
};
|
||||||
|
|
||||||
|
const unsigned int bg_char_data[16 * 3] = {
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,// 0000h
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x11111111, 0x44444444, 0x77777777, 0x99999999,// 0001h
|
||||||
|
0xaaaaaaaa, 0xbbbbbbbb, 0xcccccccc, 0xcccccccc,
|
||||||
|
0xdddddddd, 0xdddddddd, 0xdddddddd, 0xeeeeeeee,// 0002h
|
||||||
|
0xeeeeeeee, 0xeeeeeeee, 0xeeeeeeee, 0xeeeeeeee,
|
||||||
|
0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,// 0003h
|
||||||
|
0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
|
||||||
|
};
|
||||||
|
|
||||||
// extern data-----------------------------------------------------------------
|
// extern data-----------------------------------------------------------------
|
||||||
|
|
||||||
// define data-----------------------------------------------------------------
|
// define data-----------------------------------------------------------------
|
||||||
@ -96,6 +148,59 @@ static RTCDate s_rtcDate;
|
|||||||
static RTCTime s_rtcTime;
|
static RTCTime s_rtcTime;
|
||||||
static u16 s_vcount;
|
static u16 s_vcount;
|
||||||
|
|
||||||
|
|
||||||
|
static const u16 sScrnBuf[32 * 32]=
|
||||||
|
{
|
||||||
|
0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,//0
|
||||||
|
0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,
|
||||||
|
0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,//1
|
||||||
|
0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//2
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//3
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//4
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//5
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//6
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//7
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//8
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//9
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//10
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//11
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//12
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//13
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//14
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//15
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//16
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//17
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//18
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//19
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//20
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//21
|
||||||
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,
|
||||||
|
0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,//22
|
||||||
|
0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,
|
||||||
|
0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,//23
|
||||||
|
0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,
|
||||||
|
};// Buffer for screen data(背景の枠)
|
||||||
|
|
||||||
static char s_strBuffer[ STRING_LENGTH_MAX * 2 ] ATTRIBUTE_ALIGN(2);
|
static char s_strBuffer[ STRING_LENGTH_MAX * 2 ] ATTRIBUTE_ALIGN(2);
|
||||||
static u16 s_strBufferUTF16[ STRING_LENGTH_MAX ];
|
static u16 s_strBufferUTF16[ STRING_LENGTH_MAX ];
|
||||||
|
|
||||||
@ -213,17 +318,29 @@ static void InitScreen( void )
|
|||||||
// メイン画面 BG 0 を設定
|
// メイン画面 BG 0 を設定
|
||||||
G2_SetBG0Control(
|
G2_SetBG0Control(
|
||||||
GX_BG_SCRSIZE_TEXT_256x256, // スクリーンサイズ 256x256
|
GX_BG_SCRSIZE_TEXT_256x256, // スクリーンサイズ 256x256
|
||||||
GX_BG_COLORMODE_16, // カラーモード 16色
|
GX_BG_COLORMODE_256, // カラーモード 256色
|
||||||
GX_BG_SCRBASE_0xf800, // スクリーンベース
|
GX_BG_SCRBASE_0xf800, // スクリーンベース
|
||||||
GX_BG_CHARBASE_0x00000, // キャラクタベース
|
GX_BG_CHARBASE_0x00000, // キャラクタベース
|
||||||
GX_BG_EXTPLTT_01 // 拡張パレットスロット
|
GX_BG_EXTPLTT_01 // 拡張パレットスロット
|
||||||
);
|
);
|
||||||
GX_SetVisiblePlane( GX_PLANEMASK_BG0 );
|
G2_SetBG1Control(
|
||||||
|
GX_BG_SCRSIZE_TEXT_256x256, // 256pix x 256pix text
|
||||||
|
GX_BG_COLORMODE_16, // use 16 colors mode
|
||||||
|
GX_BG_SCRBASE_0xf000, // screen base offset + 0x0000 is the address for BG #1 screen
|
||||||
|
GX_BG_CHARBASE_0x10000, // character base offset + 0x04000 is the address for BG #0 characters
|
||||||
|
GX_BG_EXTPLTT_01 // use BGExtPltt slot #0 if BGExtPltt is enabled
|
||||||
|
);
|
||||||
|
GX_SetVisiblePlane( GX_PLANEMASK_BG0 | GX_PLANEMASK_BG1);
|
||||||
|
G2_SetBG0Priority(0);
|
||||||
|
G2_SetBG1Priority(1);
|
||||||
|
|
||||||
|
GX_LoadBG1Char(bg_char_data, 0, sizeof(bg_char_data));
|
||||||
|
GX_LoadBG1Scr(sScrnBuf, 0, sizeof(sScrnBuf));
|
||||||
|
|
||||||
// サブ画面 BG 0 を設定
|
// サブ画面 BG 0 を設定
|
||||||
G2S_SetBG0Control(
|
G2S_SetBG0Control(
|
||||||
GX_BG_SCRSIZE_TEXT_256x256, // 256pix x 256pix text
|
GX_BG_SCRSIZE_TEXT_256x256, // 256pix x 256pix text
|
||||||
GX_BG_COLORMODE_16, // use 256 colors mode
|
GX_BG_COLORMODE_16, // use 16 colors mode
|
||||||
GX_BG_SCRBASE_0xf800, // screen base offset + 0x0000 is the address for BG #0 screen
|
GX_BG_SCRBASE_0xf800, // screen base offset + 0x0000 is the address for BG #0 screen
|
||||||
GX_BG_CHARBASE_0x00000, // character base offset + 0x04000 is the address for BG #0 characters
|
GX_BG_CHARBASE_0x00000, // character base offset + 0x04000 is the address for BG #0 characters
|
||||||
GX_BG_EXTPLTT_01 // use BGExtPltt slot #0 if BGExtPltt is enabled
|
GX_BG_EXTPLTT_01 // use BGExtPltt slot #0 if BGExtPltt is enabled
|
||||||
@ -250,10 +367,10 @@ static void InitCanvas( void )
|
|||||||
// CharCanvas の初期化
|
// CharCanvas の初期化
|
||||||
NNS_G2dCharCanvasInitForBG(
|
NNS_G2dCharCanvasInitForBG(
|
||||||
&gCanvas,
|
&gCanvas,
|
||||||
(GXCharFmt16*)G2_GetBG0CharPtr() + CHARACTER_OFFSET,
|
(GXCharFmt256*)G2_GetBG0CharPtr() + CHARACTER_OFFSET,
|
||||||
CANVAS_WIDTH,
|
CANVAS_WIDTH,
|
||||||
CANVAS_HEIGHT,
|
CANVAS_HEIGHT,
|
||||||
NNS_G2D_CHARA_COLORMODE_16
|
NNS_G2D_CHARA_COLORMODE_256
|
||||||
);
|
);
|
||||||
|
|
||||||
// TextCanvasの初期化
|
// TextCanvasの初期化
|
||||||
@ -638,3 +755,15 @@ void GetAndDrawRTCData( RTCDrawProperty *pRTCDraw, BOOL forceGetFlag )
|
|||||||
DrawRTCData( pRTCDraw );
|
DrawRTCData( pRTCDraw );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ユーザーカラーの切り替え
|
||||||
|
void ChangeUserColor( u8 col )
|
||||||
|
{
|
||||||
|
int l;
|
||||||
|
if(col > 15) return;
|
||||||
|
for(l=0;l<16;l++)
|
||||||
|
{
|
||||||
|
TXTColorPalette[16+l] = TempPalette[16 * col + l];
|
||||||
|
}
|
||||||
|
GX_LoadBGPltt( TXTColorPalette, 0, sizeof(TXTColorPalette) );
|
||||||
|
}
|
||||||
@ -76,6 +76,7 @@ enum
|
|||||||
TXT_COLOR_4BPP_TEXT=1
|
TXT_COLOR_4BPP_TEXT=1
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#define TXT_COLOR_USER 17
|
||||||
|
|
||||||
// ŽžŒv•\ަ<C5BD>ê<EFBFBD>Š
|
// ŽžŒv•\ަ<C5BD>ê<EFBFBD>Š
|
||||||
#define RTC_DATE_TOP_X ( 9 * 8 )
|
#define RTC_DATE_TOP_X ( 9 * 8 )
|
||||||
@ -163,6 +164,7 @@ void SetBannerIconOBJ( GXOamAttr *pDstOAM, BannerFileV1 *bannerp );
|
|||||||
BOOL GetRTCData( RTCDrawProperty *pRTCDraw, BOOL forceGetFlag );
|
BOOL GetRTCData( RTCDrawProperty *pRTCDraw, BOOL forceGetFlag );
|
||||||
void DrawRTCData( RTCDrawProperty *pRTCDraw );
|
void DrawRTCData( RTCDrawProperty *pRTCDraw );
|
||||||
void GetAndDrawRTCData( RTCDrawProperty *pRTCDraw, BOOL forceGetFlag );
|
void GetAndDrawRTCData( RTCDrawProperty *pRTCDraw, BOOL forceGetFlag );
|
||||||
|
void ChangeUserColor( u8 col );
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
|||||||
@ -72,7 +72,7 @@ void SelectLanguageInit( void )
|
|||||||
{
|
{
|
||||||
GX_DispOff();
|
GX_DispOff();
|
||||||
GXS_DispOff();
|
GXS_DispOff();
|
||||||
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_WHITE );
|
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_NULL );
|
||||||
|
|
||||||
PutStringUTF16( 0, 0, TXT_COLOR_BLUE, (const u16 *)L"LANGUAGE SELECT" );
|
PutStringUTF16( 0, 0, TXT_COLOR_BLUE, (const u16 *)L"LANGUAGE SELECT" );
|
||||||
PutStringUTF16( CANCEL_BUTTON_TOP_X, CANCEL_BUTTON_TOP_Y, TXT_COLOR_CYAN, (const u16 *)L"CANCEL" );
|
PutStringUTF16( CANCEL_BUTTON_TOP_X, CANCEL_BUTTON_TOP_Y, TXT_COLOR_CYAN, (const u16 *)L"CANCEL" );
|
||||||
@ -91,7 +91,7 @@ void SelectLanguageInit( void )
|
|||||||
|
|
||||||
SVC_CpuClear( 0x0000, &tpd, sizeof(TpWork), 16 );
|
SVC_CpuClear( 0x0000, &tpd, sizeof(TpWork), 16 );
|
||||||
|
|
||||||
GX_SetVisiblePlane ( GX_PLANEMASK_BG0 );
|
GX_SetVisiblePlane ( GX_PLANEMASK_BG0 | GX_PLANEMASK_BG1);
|
||||||
GXS_SetVisiblePlane( GX_PLANEMASK_BG0 );
|
GXS_SetVisiblePlane( GX_PLANEMASK_BG0 );
|
||||||
GX_DispOn();
|
GX_DispOn();
|
||||||
GXS_DispOn();
|
GXS_DispOn();
|
||||||
|
|||||||
@ -22,8 +22,10 @@
|
|||||||
// define data----------------------------------
|
// define data----------------------------------
|
||||||
|
|
||||||
// ソフトウェアキーボードLCD領域
|
// ソフトウェアキーボードLCD領域
|
||||||
#define CLIST_LT_X 18
|
#define CLIST_LT_X 23
|
||||||
#define CLIST_LT_Y 40
|
#define CLIST_LT_Y 50
|
||||||
|
|
||||||
|
#define CLIST_MARGIN 14
|
||||||
|
|
||||||
#define CANCEL_BUTTON_TOP_X ( 2 * 8 )
|
#define CANCEL_BUTTON_TOP_X ( 2 * 8 )
|
||||||
#define CANCEL_BUTTON_TOP_Y ( 21 * 8 )
|
#define CANCEL_BUTTON_TOP_Y ( 21 * 8 )
|
||||||
@ -55,6 +57,12 @@ typedef struct CsrPos {
|
|||||||
u16 y; // y
|
u16 y; // y
|
||||||
}CsrPos;
|
}CsrPos;
|
||||||
|
|
||||||
|
typedef enum NameOrComment
|
||||||
|
{
|
||||||
|
NOC_NAME,
|
||||||
|
NOC_COMMENT
|
||||||
|
}NameOrComment;
|
||||||
|
|
||||||
// extern data----------------------------------
|
// extern data----------------------------------
|
||||||
|
|
||||||
|
|
||||||
@ -74,7 +82,9 @@ static u16 s_csr = 0;
|
|||||||
static const u16 *s_pStrSetting[ USER_INFO_MENU_ELEMENT_NUM ]; // メインメニュー用文字テーブルへのポインタリスト
|
static const u16 *s_pStrSetting[ USER_INFO_MENU_ELEMENT_NUM ]; // メインメニュー用文字テーブルへのポインタリスト
|
||||||
static int char_mode = 0;
|
static int char_mode = 0;
|
||||||
static u16 s_key_csr = 0;
|
static u16 s_key_csr = 0;
|
||||||
|
static u8 s_color_csr = 0;
|
||||||
static TWLNickname s_temp_name;
|
static TWLNickname s_temp_name;
|
||||||
|
static TWLComment s_temp_comment;
|
||||||
|
|
||||||
// const data-----------------------------------
|
// const data-----------------------------------
|
||||||
static const u16 char_tbl[CHAR_LIST_MODE_NUM][CHAR_LIST_CHAR_NUM];
|
static const u16 char_tbl[CHAR_LIST_MODE_NUM][CHAR_LIST_CHAR_NUM];
|
||||||
@ -172,6 +182,28 @@ static void SetSoftKeyboardButton(int mode)
|
|||||||
char_mode = mode;
|
char_mode = mode;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void DrawOwnerInfoMenuScene( void )
|
||||||
|
{
|
||||||
|
u16 tempbuf[TWL_COMMENT_LENGTH+2];
|
||||||
|
u8 color;
|
||||||
|
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_NULL );
|
||||||
|
PutStringUTF16( 0, 0, TXT_COLOR_BLUE, (const u16 *)L"USER INFORMATION" );
|
||||||
|
PutStringUTF16( CANCEL_BUTTON_TOP_X, CANCEL_BUTTON_TOP_Y, TXT_COLOR_USER, (const u16 *)L"CANCEL" );
|
||||||
|
// メニュー項目
|
||||||
|
DrawMenu( s_csr, &s_settingParam );
|
||||||
|
// ニックネーム
|
||||||
|
PutStringUTF16( 128 , 8*8, TXT_COLOR_USER, TSD_GetNickname()->buffer );
|
||||||
|
// カラー
|
||||||
|
color = TSD_GetUserColor();
|
||||||
|
PutStringUTF16( 128 , 12*8, TXT_COLOR_USER, L"■" );
|
||||||
|
// コメント
|
||||||
|
SVC_CpuCopy( TSD_GetComment()->buffer, tempbuf, 13 * 2, 16 );
|
||||||
|
*(tempbuf+13)='\n';
|
||||||
|
SVC_CpuCopy( TSD_GetComment()->buffer+13, tempbuf+14, 13 * 2, 16 );
|
||||||
|
*(tempbuf+TWL_COMMENT_LENGTH+1)=0;
|
||||||
|
PutStringUTF16( 128-78 , 16*8 , TXT_COLOR_USER, tempbuf );
|
||||||
|
}
|
||||||
|
|
||||||
// オーナー情報編集の初期化
|
// オーナー情報編集の初期化
|
||||||
void SetOwnerInfoInit( void )
|
void SetOwnerInfoInit( void )
|
||||||
{
|
{
|
||||||
@ -180,21 +212,16 @@ void SetOwnerInfoInit( void )
|
|||||||
GX_DispOff();
|
GX_DispOff();
|
||||||
GXS_DispOff();
|
GXS_DispOff();
|
||||||
|
|
||||||
PutStringUTF16( 0, 0, TXT_COLOR_BLUE, (const u16 *)L"USER INFORMATION" );
|
|
||||||
PutStringUTF16( CANCEL_BUTTON_TOP_X, CANCEL_BUTTON_TOP_Y, TXT_COLOR_CYAN, (const u16 *)L"CANCEL" );
|
|
||||||
|
|
||||||
// NITRO設定データのlanguageに応じたメインメニュー構成言語の切り替え
|
// NITRO設定データのlanguageに応じたメインメニュー構成言語の切り替え
|
||||||
for( i = 0; i < USER_INFO_MENU_ELEMENT_NUM; i++ ) {
|
for( i = 0; i < USER_INFO_MENU_ELEMENT_NUM; i++ ) {
|
||||||
s_pStrSetting[ i ] = s_pStrSettingElemTbl[ i ][ TSD_GetLanguage() ];
|
s_pStrSetting[ i ] = s_pStrSettingElemTbl[ i ][ TSD_GetLanguage() ];
|
||||||
}
|
}
|
||||||
|
|
||||||
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_WHITE );
|
DrawOwnerInfoMenuScene();
|
||||||
DrawMenu( s_csr, &s_settingParam );
|
|
||||||
PutStringUTF16( 128 , 8*8, TXT_COLOR_CYAN, TSD_GetNickname()->buffer );
|
|
||||||
|
|
||||||
SVC_CpuClear( 0x0000, &tpd, sizeof(TpWork), 16 );
|
SVC_CpuClear( 0x0000, &tpd, sizeof(TpWork), 16 );
|
||||||
|
|
||||||
GX_SetVisiblePlane ( GX_PLANEMASK_BG0 );
|
GX_SetVisiblePlane ( GX_PLANEMASK_BG0 | GX_PLANEMASK_BG1);
|
||||||
GXS_SetVisiblePlane( GX_PLANEMASK_BG0 );
|
GXS_SetVisiblePlane( GX_PLANEMASK_BG0 );
|
||||||
GX_DispOn();
|
GX_DispOn();
|
||||||
GXS_DispOn();
|
GXS_DispOn();
|
||||||
@ -222,9 +249,7 @@ int SetOwnerInfoMain( void )
|
|||||||
}
|
}
|
||||||
tp_select = SelectMenuByTP( &s_csr, &s_settingParam );
|
tp_select = SelectMenuByTP( &s_csr, &s_settingParam );
|
||||||
|
|
||||||
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_WHITE );
|
DrawOwnerInfoMenuScene();
|
||||||
DrawMenu( s_csr, &s_settingParam );
|
|
||||||
PutStringUTF16( 128 , 8*8, TXT_COLOR_CYAN, TSD_GetNickname()->buffer );
|
|
||||||
|
|
||||||
// [CANCEL]ボタン押下チェック
|
// [CANCEL]ボタン押下チェック
|
||||||
if( tpd.disp.touch ) {
|
if( tpd.disp.touch ) {
|
||||||
@ -260,6 +285,7 @@ int SetOwnerInfoMain( void )
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// バーチャルキー関係
|
||||||
// キーの表示
|
// キーの表示
|
||||||
static void DrawCharKeys( void )
|
static void DrawCharKeys( void )
|
||||||
{
|
{
|
||||||
@ -276,28 +302,75 @@ static void DrawCharKeys( void )
|
|||||||
if( (code >= CODE_BUTTON_TOP_) && (code < CODE_BUTTON_BOTTOM_) )
|
if( (code >= CODE_BUTTON_TOP_) && (code < CODE_BUTTON_BOTTOM_) )
|
||||||
{
|
{
|
||||||
int x = code - CODE_BUTTON_TOP_;
|
int x = code - CODE_BUTTON_TOP_;
|
||||||
PutStringUTF16( CLIST_LT_X + 15*(l%KEY_PER_LINE) + 7*((l%KEY_PER_LINE)/5) , CLIST_LT_Y + 15*(l/KEY_PER_LINE) , color, str_button[x] );
|
PutStringUTF16( CLIST_LT_X + CLIST_MARGIN*(l%KEY_PER_LINE) + 7*((l%KEY_PER_LINE)/5) ,
|
||||||
|
CLIST_LT_Y + CLIST_MARGIN*(l/KEY_PER_LINE) , color, str_button[x] );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
u16 s[2];
|
u16 s[2];
|
||||||
s[0] = code;
|
s[0] = code;
|
||||||
s[1] = 0;
|
s[1] = 0;
|
||||||
PutStringUTF16( CLIST_LT_X + 15*(l%KEY_PER_LINE) + 7*((l%KEY_PER_LINE)/5) , CLIST_LT_Y + 15*(l/KEY_PER_LINE) , color, s );
|
PutStringUTF16( CLIST_LT_X + CLIST_MARGIN*(l%KEY_PER_LINE) + 7*((l%KEY_PER_LINE)/5) ,
|
||||||
|
CLIST_LT_Y + CLIST_MARGIN*(l/KEY_PER_LINE) , color, s );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 一文字削除
|
// 一文字削除
|
||||||
static void DeleteACharacter( void )
|
static void DeleteACharacter( NameOrComment noc )
|
||||||
{
|
{
|
||||||
if(s_temp_name.length > 0) s_temp_name.buffer[--s_temp_name.length] = CHAR_USCORE;
|
u16 *buf;
|
||||||
|
u8 *length;
|
||||||
|
if(noc == NOC_NAME)
|
||||||
|
{
|
||||||
|
buf = s_temp_name.buffer;
|
||||||
|
length = &s_temp_name.length;
|
||||||
|
}else if(noc == NOC_COMMENT)
|
||||||
|
{
|
||||||
|
buf = s_temp_comment.buffer;
|
||||||
|
length = &s_temp_comment.length;
|
||||||
|
}else
|
||||||
|
{
|
||||||
|
//unknown
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(*length > 0) buf[--(*length)] = CHAR_USCORE;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 選択中文字キー・特殊キーで決定した時の挙動
|
// 選択中文字キー・特殊キーで決定した時の挙動
|
||||||
static void PushKeys( u16 code )
|
static void PushKeys( u16 code, NameOrComment noc )
|
||||||
{
|
{
|
||||||
|
u16 *buf;
|
||||||
|
u8 *length;
|
||||||
|
u16 *dest;
|
||||||
|
u8 *destlength;
|
||||||
|
u16 max_length;
|
||||||
|
void (*setflag)(BOOL);
|
||||||
|
if(noc == NOC_NAME)
|
||||||
|
{
|
||||||
|
buf = s_temp_name.buffer;
|
||||||
|
length = &s_temp_name.length;
|
||||||
|
dest = TSD_GetNickname()->buffer;
|
||||||
|
destlength = &TSD_GetNickname()->length;
|
||||||
|
max_length = TWL_NICKNAME_LENGTH;
|
||||||
|
setflag = TSD_SetFlagNickname;
|
||||||
|
}else if(noc == NOC_COMMENT)
|
||||||
|
{
|
||||||
|
buf = s_temp_comment.buffer;
|
||||||
|
length = &s_temp_comment.length;
|
||||||
|
dest = TSD_GetComment()->buffer;
|
||||||
|
destlength = &TSD_GetComment()->length;
|
||||||
|
max_length = TWL_COMMENT_LENGTH;
|
||||||
|
// setflag = TSD_SetFlagComment;
|
||||||
|
setflag = NULL;
|
||||||
|
}else
|
||||||
|
{
|
||||||
|
//unknown
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if( (code >= CODE_BUTTON_TOP_) && (code < CODE_BUTTON_BOTTOM_) )
|
if( (code >= CODE_BUTTON_TOP_) && (code < CODE_BUTTON_BOTTOM_) )
|
||||||
{
|
{
|
||||||
// 特殊キー
|
// 特殊キー
|
||||||
@ -308,16 +381,16 @@ static void PushKeys( u16 code )
|
|||||||
SetSoftKeyboardButton(next_char_mode[code - VAR_BUTTON1_]);
|
SetSoftKeyboardButton(next_char_mode[code - VAR_BUTTON1_]);
|
||||||
break;
|
break;
|
||||||
case DEL_BUTTON_:
|
case DEL_BUTTON_:
|
||||||
DeleteACharacter();
|
DeleteACharacter(noc);
|
||||||
break;
|
break;
|
||||||
case SPACE_BUTTON_:
|
case SPACE_BUTTON_:
|
||||||
if(s_temp_name.length < TWL_NICKNAME_LENGTH) s_temp_name.buffer[s_temp_name.length++] = L' ';
|
if(*length < max_length) buf[(*length)++] = L' ';
|
||||||
break;
|
break;
|
||||||
case OK_BUTTON_:
|
case OK_BUTTON_:
|
||||||
TSD_SetFlagNickname( TRUE );// ニックネーム設定完了フラグを立てておく
|
if(setflag) setflag(TRUE);// 設定完了フラグを立てておく
|
||||||
SVC_CpuClear(0, TSD_GetNickname()->buffer, (TWL_NICKNAME_LENGTH + 1) * 2, 16);// ゼロクリア
|
SVC_CpuClear(0, dest, (max_length + 1) * 2, 16);// ゼロクリア
|
||||||
TSD_GetNickname()->length = s_temp_name.length;// 長さコピー
|
*destlength = *length;// 長さコピー
|
||||||
SVC_CpuCopy( s_temp_name.buffer, TSD_GetNickname()->buffer, s_temp_name.length * 2, 16 );// 内容コピー
|
SVC_CpuCopy( buf, dest, (*length) * 2, 16 );// 内容コピー
|
||||||
(void)SYSM_WriteTWLSettingsFile();// ファイルへ書き込み
|
(void)SYSM_WriteTWLSettingsFile();// ファイルへ書き込み
|
||||||
// セーブ後にキャンセル処理と合流
|
// セーブ後にキャンセル処理と合流
|
||||||
case CANCEL_BUTTON_:
|
case CANCEL_BUTTON_:
|
||||||
@ -331,50 +404,15 @@ static void PushKeys( u16 code )
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
// 普通キー
|
// 普通キー
|
||||||
if(s_temp_name.length < TWL_NICKNAME_LENGTH) s_temp_name.buffer[s_temp_name.length++] = code;
|
if(*length < max_length) buf[(*length)++] = code;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void DrawSetNicknameScene( void )
|
// バーチャルキー上でのキーパッド及びタッチパッド処理
|
||||||
|
// 先にReadTPしておくこと。
|
||||||
|
static void PadDetectOnKey( NameOrComment noc )
|
||||||
{
|
{
|
||||||
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_WHITE );
|
BOOL tp_select = FALSE;
|
||||||
PutStringUTF16( 0, 0, TXT_COLOR_BLUE, (const u16 *)L"NICKNAME" );
|
|
||||||
DrawCharKeys();
|
|
||||||
PutStringUTF16( 128-60 , 15 , TXT_COLOR_CYAN, s_temp_name.buffer );
|
|
||||||
}
|
|
||||||
|
|
||||||
// ニックネーム編集の初期化
|
|
||||||
static void SetNicknameInit( void )
|
|
||||||
{
|
|
||||||
GX_DispOff();
|
|
||||||
GXS_DispOff();
|
|
||||||
|
|
||||||
SetSoftKeyboardButton(0);
|
|
||||||
s_key_csr = 0;
|
|
||||||
|
|
||||||
// ニックネーム用テンポラリバッファの初期化
|
|
||||||
s_temp_name.length = TSD_GetNickname()->length;
|
|
||||||
SVC_CpuClear(CHAR_USCORE, s_temp_name.buffer, TWL_NICKNAME_LENGTH * 2, 16);
|
|
||||||
SVC_CpuCopy( TSD_GetNickname()->buffer, s_temp_name.buffer, s_temp_name.length * 2, 16 );
|
|
||||||
s_temp_name.buffer[TWL_NICKNAME_LENGTH] = 0;
|
|
||||||
|
|
||||||
DrawSetNicknameScene();
|
|
||||||
|
|
||||||
SVC_CpuClear( 0x0000, &tpd, sizeof(TpWork), 16 );
|
|
||||||
|
|
||||||
GX_SetVisiblePlane ( GX_PLANEMASK_BG0 );
|
|
||||||
GXS_SetVisiblePlane( GX_PLANEMASK_BG0 );
|
|
||||||
GX_DispOn();
|
|
||||||
GXS_DispOn();
|
|
||||||
}
|
|
||||||
|
|
||||||
// ニックネーム編集メイン
|
|
||||||
static int SetNicknameMain( void )
|
|
||||||
{
|
|
||||||
BOOL tp_select,tp_cancel = FALSE;
|
|
||||||
|
|
||||||
ReadTP();
|
|
||||||
|
|
||||||
//--------------------------------------
|
//--------------------------------------
|
||||||
// キー入力処理
|
// キー入力処理
|
||||||
//--------------------------------------
|
//--------------------------------------
|
||||||
@ -413,20 +451,56 @@ static int SetNicknameMain( void )
|
|||||||
}
|
}
|
||||||
while(char_tbl[char_mode][s_key_csr]==EOM_);
|
while(char_tbl[char_mode][s_key_csr]==EOM_);
|
||||||
}
|
}
|
||||||
tp_select = SelectMenuByTP( &s_csr, &s_settingParam );
|
|
||||||
|
|
||||||
// [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 ) ) { // Aキーが押された
|
if( ( pad.trg & PAD_BUTTON_A ) || ( tp_select ) ) { // Aキーが押された
|
||||||
PushKeys( char_tbl[char_mode][s_key_csr] );
|
PushKeys( char_tbl[char_mode][s_key_csr], noc );
|
||||||
}else if( pad.trg & PAD_BUTTON_B ) {
|
}else if( pad.trg & PAD_BUTTON_B ) {
|
||||||
DeleteACharacter();
|
DeleteACharacter(noc);
|
||||||
}
|
}
|
||||||
if(pad.trg || tpd.disp.touch)
|
}
|
||||||
|
|
||||||
|
// ニックネーム編集画面の描画処理
|
||||||
|
static void DrawSetNicknameScene( void )
|
||||||
|
{
|
||||||
|
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_NULL );
|
||||||
|
PutStringUTF16( 0, 0, TXT_COLOR_BLUE, (const u16 *)L"NICKNAME" );
|
||||||
|
DrawCharKeys();
|
||||||
|
PutStringUTF16( 128-60 , 21 , TXT_COLOR_USER, s_temp_name.buffer );
|
||||||
|
}
|
||||||
|
|
||||||
|
// ニックネーム編集の初期化
|
||||||
|
static void SetNicknameInit( void )
|
||||||
|
{
|
||||||
|
GX_DispOff();
|
||||||
|
GXS_DispOff();
|
||||||
|
|
||||||
|
SetSoftKeyboardButton(0);
|
||||||
|
s_key_csr = 0;
|
||||||
|
|
||||||
|
// ニックネーム用テンポラリバッファの初期化
|
||||||
|
s_temp_name.length = TSD_GetNickname()->length;
|
||||||
|
SVC_CpuClear(CHAR_USCORE, s_temp_name.buffer, TWL_NICKNAME_LENGTH * 2, 16);
|
||||||
|
SVC_CpuCopy( TSD_GetNickname()->buffer, s_temp_name.buffer, s_temp_name.length * 2, 16 );
|
||||||
|
s_temp_name.buffer[TWL_NICKNAME_LENGTH] = 0;
|
||||||
|
|
||||||
|
DrawSetNicknameScene();
|
||||||
|
|
||||||
|
SVC_CpuClear( 0x0000, &tpd, sizeof(TpWork), 16 );
|
||||||
|
|
||||||
|
GX_SetVisiblePlane ( GX_PLANEMASK_BG0 | GX_PLANEMASK_BG1);
|
||||||
|
GXS_SetVisiblePlane( GX_PLANEMASK_BG0 );
|
||||||
|
GX_DispOn();
|
||||||
|
GXS_DispOn();
|
||||||
|
}
|
||||||
|
|
||||||
|
// ニックネーム編集メイン
|
||||||
|
static int SetNicknameMain( void )
|
||||||
|
{
|
||||||
|
ReadTP();
|
||||||
|
|
||||||
|
PadDetectOnKey(NOC_NAME);
|
||||||
|
|
||||||
|
if(pad.trg || tpd.disp.touch)
|
||||||
{// 描画処理……ボタン押したorタッチ時ぐらいで十分
|
{// 描画処理……ボタン押したorタッチ時ぐらいで十分
|
||||||
DrawSetNicknameScene();
|
DrawSetNicknameScene();
|
||||||
}
|
}
|
||||||
@ -441,10 +515,10 @@ static void SetBirthdayInit( void )
|
|||||||
|
|
||||||
GX_DispOff();
|
GX_DispOff();
|
||||||
GXS_DispOff();
|
GXS_DispOff();
|
||||||
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_WHITE );
|
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_NULL );
|
||||||
|
|
||||||
PutStringUTF16( 0, 0, TXT_COLOR_BLUE, (const u16 *)L"BIRTHDAY" );
|
PutStringUTF16( 0, 0, TXT_COLOR_BLUE, (const u16 *)L"BIRTHDAY" );
|
||||||
PutStringUTF16( CANCEL_BUTTON_TOP_X, CANCEL_BUTTON_TOP_Y, TXT_COLOR_CYAN, (const u16 *)L"CANCEL" );
|
PutStringUTF16( CANCEL_BUTTON_TOP_X, CANCEL_BUTTON_TOP_Y, TXT_COLOR_USER, (const u16 *)L"CANCEL" );
|
||||||
|
|
||||||
// NITRO設定データのlanguageに応じたメインメニュー構成言語の切り替え
|
// NITRO設定データのlanguageに応じたメインメニュー構成言語の切り替え
|
||||||
for( i = 0; i < USER_INFO_MENU_ELEMENT_NUM; i++ ) {
|
for( i = 0; i < USER_INFO_MENU_ELEMENT_NUM; i++ ) {
|
||||||
@ -455,7 +529,7 @@ static void SetBirthdayInit( void )
|
|||||||
|
|
||||||
SVC_CpuClear( 0x0000, &tpd, sizeof(TpWork), 16 );
|
SVC_CpuClear( 0x0000, &tpd, sizeof(TpWork), 16 );
|
||||||
|
|
||||||
GX_SetVisiblePlane ( GX_PLANEMASK_BG0 );
|
GX_SetVisiblePlane ( GX_PLANEMASK_BG0 | GX_PLANEMASK_BG1);
|
||||||
GXS_SetVisiblePlane( GX_PLANEMASK_BG0 );
|
GXS_SetVisiblePlane( GX_PLANEMASK_BG0 );
|
||||||
GX_DispOn();
|
GX_DispOn();
|
||||||
GXS_DispOn();
|
GXS_DispOn();
|
||||||
@ -519,28 +593,33 @@ static int SetBirthdayMain( void )
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void DrawColorSample( void )
|
||||||
|
{
|
||||||
|
int l;
|
||||||
|
|
||||||
|
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_NULL );
|
||||||
|
PutStringUTF16( 0, 0, TXT_COLOR_BLUE, (const u16 *)L"USER COLOR" );
|
||||||
|
PutStringUTF16( CANCEL_BUTTON_TOP_X, CANCEL_BUTTON_TOP_Y, TXT_COLOR_USER, (const u16 *)L"CANCEL" );
|
||||||
|
for(l=0;l<16;l++) //16色
|
||||||
|
{
|
||||||
|
PutStringUTF16( 88 + 24 * (l%4), 54 + 24 * (l/4), 40 + l + 8 * (l/8), (const u16 *)L"■" );
|
||||||
|
}
|
||||||
|
PutStringUTF16( 88 + 24 * (s_color_csr%4), 54 + 24 * (s_color_csr/4), TXT_COLOR_WHITE, (const u16 *)L"☆" );
|
||||||
|
}
|
||||||
|
|
||||||
// ユーザーカラー編集の初期化
|
// ユーザーカラー編集の初期化
|
||||||
static void SetUserColorInit( void )
|
static void SetUserColorInit( void )
|
||||||
{
|
{
|
||||||
int i;
|
|
||||||
|
|
||||||
GX_DispOff();
|
GX_DispOff();
|
||||||
GXS_DispOff();
|
GXS_DispOff();
|
||||||
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_WHITE );
|
|
||||||
|
|
||||||
PutStringUTF16( 0, 0, TXT_COLOR_BLUE, (const u16 *)L"USER COLOR" );
|
DrawColorSample();
|
||||||
PutStringUTF16( CANCEL_BUTTON_TOP_X, CANCEL_BUTTON_TOP_Y, TXT_COLOR_CYAN, (const u16 *)L"CANCEL" );
|
|
||||||
|
|
||||||
// NITRO設定データのlanguageに応じたメインメニュー構成言語の切り替え
|
|
||||||
for( i = 0; i < USER_INFO_MENU_ELEMENT_NUM; i++ ) {
|
|
||||||
s_pStrSetting[ i ] = s_pStrSettingElemTbl[ i ][ TSD_GetLanguage() ];
|
|
||||||
}
|
|
||||||
|
|
||||||
DrawMenu( s_csr, &s_settingParam );
|
|
||||||
|
|
||||||
SVC_CpuClear( 0x0000, &tpd, sizeof(TpWork), 16 );
|
SVC_CpuClear( 0x0000, &tpd, sizeof(TpWork), 16 );
|
||||||
|
|
||||||
GX_SetVisiblePlane ( GX_PLANEMASK_BG0 );
|
s_color_csr = TSD_GetUserColor();
|
||||||
|
|
||||||
|
GX_SetVisiblePlane ( GX_PLANEMASK_BG0 | GX_PLANEMASK_BG1);
|
||||||
GXS_SetVisiblePlane( GX_PLANEMASK_BG0 );
|
GXS_SetVisiblePlane( GX_PLANEMASK_BG0 );
|
||||||
GX_DispOn();
|
GX_DispOn();
|
||||||
GXS_DispOn();
|
GXS_DispOn();
|
||||||
@ -549,7 +628,7 @@ static void SetUserColorInit( void )
|
|||||||
// ユーザーカラー編集メイン
|
// ユーザーカラー編集メイン
|
||||||
static int SetUserColorMain( void )
|
static int SetUserColorMain( void )
|
||||||
{
|
{
|
||||||
BOOL tp_select,tp_cancel = FALSE;
|
BOOL tp_cancel = FALSE;
|
||||||
|
|
||||||
ReadTP();
|
ReadTP();
|
||||||
|
|
||||||
@ -557,17 +636,21 @@ static int SetUserColorMain( void )
|
|||||||
// キー入力処理
|
// キー入力処理
|
||||||
//--------------------------------------
|
//--------------------------------------
|
||||||
if( pad.trg & PAD_KEY_DOWN ){ // カーソルの移動
|
if( pad.trg & PAD_KEY_DOWN ){ // カーソルの移動
|
||||||
if( ++s_csr == USER_INFO_MENU_ELEMENT_NUM ) {
|
s_color_csr += 4;
|
||||||
s_csr=0;
|
if(s_color_csr >= 16) s_color_csr -= 16;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if( pad.trg & PAD_KEY_UP ){
|
if( pad.trg & PAD_KEY_UP ){
|
||||||
if( --s_csr & 0x80 ) {
|
if(s_color_csr < 4) s_color_csr += 16;
|
||||||
s_csr=USER_INFO_MENU_ELEMENT_NUM - 1;
|
s_color_csr -= 4;
|
||||||
}
|
}
|
||||||
|
if( pad.trg & PAD_KEY_RIGHT ){
|
||||||
|
s_color_csr += 1;
|
||||||
|
if(s_color_csr%4 == 0) s_color_csr -= 4;
|
||||||
|
}
|
||||||
|
if( pad.trg & PAD_KEY_LEFT ){
|
||||||
|
if(s_color_csr%4 == 0) s_color_csr += 4;
|
||||||
|
s_color_csr -= 1;
|
||||||
}
|
}
|
||||||
tp_select = SelectMenuByTP( &s_csr, &s_settingParam );
|
|
||||||
DrawMenu( s_csr, &s_settingParam );
|
|
||||||
|
|
||||||
// [CANCEL]ボタン押下チェック
|
// [CANCEL]ボタン押下チェック
|
||||||
if( tpd.disp.touch ) {
|
if( tpd.disp.touch ) {
|
||||||
@ -575,57 +658,65 @@ static int SetUserColorMain( void )
|
|||||||
CANCEL_BUTTON_BOTTOM_X, CANCEL_BUTTON_BOTTOM_Y, &tpd.disp );
|
CANCEL_BUTTON_BOTTOM_X, CANCEL_BUTTON_BOTTOM_Y, &tpd.disp );
|
||||||
}
|
}
|
||||||
|
|
||||||
if( ( pad.trg & PAD_BUTTON_A ) || ( tp_select ) ) { // メニュー項目への分岐
|
DrawColorSample();
|
||||||
if( s_settingPos[ s_csr ].enable ) {
|
|
||||||
switch( s_csr ) {
|
if( ( pad.trg & PAD_BUTTON_A ) ) { // 色決定
|
||||||
case 0:
|
TSD_SetUserColor( (u8 )s_color_csr );
|
||||||
SetNicknameInit();
|
TSD_SetFlagUserColor( TRUE );
|
||||||
g_pNowProcess = SetNicknameMain;
|
(void)SYSM_WriteTWLSettingsFile();// ファイルへ書き込み
|
||||||
break;
|
SetOwnerInfoInit();
|
||||||
case 1:
|
g_pNowProcess = SetOwnerInfoMain;
|
||||||
SetBirthdayInit();
|
return 0;
|
||||||
g_pNowProcess = SetBirthdayMain;
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
SetUserColorInit();
|
|
||||||
g_pNowProcess = SetUserColorMain;
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
SetCommentInit();
|
|
||||||
g_pNowProcess = SetCommentMain;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}else if( ( pad.trg & PAD_BUTTON_B ) || tp_cancel ) {
|
}else if( ( pad.trg & PAD_BUTTON_B ) || tp_cancel ) {
|
||||||
|
ChangeUserColor( TSD_GetUserColor() ); // パレット色を元にもどす
|
||||||
SetOwnerInfoInit();
|
SetOwnerInfoInit();
|
||||||
g_pNowProcess = SetOwnerInfoMain;
|
g_pNowProcess = SetOwnerInfoMain;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(pad.trg || tpd.disp.touch)
|
||||||
|
{// 描画処理……ボタン押したorタッチ時ぐらいで十分
|
||||||
|
ChangeUserColor( s_color_csr );
|
||||||
|
DrawColorSample();
|
||||||
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// コメント編集画面の描画処理
|
||||||
|
static void DrawSetCommentScene( void )
|
||||||
|
{
|
||||||
|
u16 tempbuf[TWL_COMMENT_LENGTH+2];
|
||||||
|
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_NULL );
|
||||||
|
PutStringUTF16( 0, 0, TXT_COLOR_BLUE, (const u16 *)L"COMMENT" );
|
||||||
|
DrawCharKeys();
|
||||||
|
SVC_CpuCopy( s_temp_comment.buffer, tempbuf, 13 * 2, 16 );
|
||||||
|
*(tempbuf+13)='\n';
|
||||||
|
SVC_CpuCopy( s_temp_comment.buffer+13, tempbuf+14, 13 * 2, 16 );
|
||||||
|
*(tempbuf+TWL_COMMENT_LENGTH+1)=0;
|
||||||
|
PutStringUTF16( 128-78 , 15 , TXT_COLOR_USER, tempbuf );
|
||||||
|
}
|
||||||
|
|
||||||
// コメント編集の初期化
|
// コメント編集の初期化
|
||||||
static void SetCommentInit( void )
|
static void SetCommentInit( void )
|
||||||
{
|
{
|
||||||
int i;
|
|
||||||
|
|
||||||
GX_DispOff();
|
GX_DispOff();
|
||||||
GXS_DispOff();
|
GXS_DispOff();
|
||||||
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_WHITE );
|
|
||||||
|
|
||||||
PutStringUTF16( 0, 0, TXT_COLOR_BLUE, (const u16 *)L"COMMENT" );
|
SetSoftKeyboardButton(0);
|
||||||
PutStringUTF16( CANCEL_BUTTON_TOP_X, CANCEL_BUTTON_TOP_Y, TXT_COLOR_CYAN, (const u16 *)L"CANCEL" );
|
s_key_csr = 0;
|
||||||
|
|
||||||
// NITRO設定データのlanguageに応じたメインメニュー構成言語の切り替え
|
// コメント用テンポラリバッファの初期化
|
||||||
for( i = 0; i < USER_INFO_MENU_ELEMENT_NUM; i++ ) {
|
s_temp_comment.length = TSD_GetComment()->length;
|
||||||
s_pStrSetting[ i ] = s_pStrSettingElemTbl[ i ][ TSD_GetLanguage() ];
|
SVC_CpuClear(CHAR_USCORE, s_temp_comment.buffer, TWL_COMMENT_LENGTH * 2, 16);
|
||||||
}
|
SVC_CpuCopy( TSD_GetComment()->buffer, s_temp_comment.buffer, s_temp_comment.length * 2, 16 );
|
||||||
|
s_temp_comment.buffer[TWL_COMMENT_LENGTH] = 0;
|
||||||
|
|
||||||
DrawMenu( s_csr, &s_settingParam );
|
DrawSetCommentScene();
|
||||||
|
|
||||||
SVC_CpuClear( 0x0000, &tpd, sizeof(TpWork), 16 );
|
SVC_CpuClear( 0x0000, &tpd, sizeof(TpWork), 16 );
|
||||||
|
|
||||||
GX_SetVisiblePlane ( GX_PLANEMASK_BG0 );
|
GX_SetVisiblePlane ( GX_PLANEMASK_BG0 | GX_PLANEMASK_BG1);
|
||||||
GXS_SetVisiblePlane( GX_PLANEMASK_BG0 );
|
GXS_SetVisiblePlane( GX_PLANEMASK_BG0 );
|
||||||
GX_DispOn();
|
GX_DispOn();
|
||||||
GXS_DispOn();
|
GXS_DispOn();
|
||||||
@ -634,58 +725,15 @@ static void SetCommentInit( void )
|
|||||||
// コメント編集メイン
|
// コメント編集メイン
|
||||||
static int SetCommentMain( void )
|
static int SetCommentMain( void )
|
||||||
{
|
{
|
||||||
BOOL tp_select,tp_cancel = FALSE;
|
|
||||||
|
|
||||||
ReadTP();
|
ReadTP();
|
||||||
|
|
||||||
//--------------------------------------
|
PadDetectOnKey(NOC_COMMENT);
|
||||||
// キー入力処理
|
|
||||||
//--------------------------------------
|
if(pad.trg || tpd.disp.touch)
|
||||||
if( pad.trg & PAD_KEY_DOWN ){ // カーソルの移動
|
{// 描画処理……ボタン押したorタッチ時ぐらいで十分
|
||||||
if( ++s_csr == USER_INFO_MENU_ELEMENT_NUM ) {
|
DrawSetCommentScene();
|
||||||
s_csr=0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if( pad.trg & PAD_KEY_UP ){
|
|
||||||
if( --s_csr & 0x80 ) {
|
|
||||||
s_csr=USER_INFO_MENU_ELEMENT_NUM - 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
tp_select = SelectMenuByTP( &s_csr, &s_settingParam );
|
|
||||||
DrawMenu( s_csr, &s_settingParam );
|
|
||||||
|
|
||||||
// [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 ) ) { // メニュー項目への分岐
|
|
||||||
if( s_settingPos[ s_csr ].enable ) {
|
|
||||||
switch( s_csr ) {
|
|
||||||
case 0:
|
|
||||||
SetNicknameInit();
|
|
||||||
g_pNowProcess = SetNicknameMain;
|
|
||||||
break;
|
|
||||||
case 1:
|
|
||||||
SetBirthdayInit();
|
|
||||||
g_pNowProcess = SetBirthdayMain;
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
SetUserColorInit();
|
|
||||||
g_pNowProcess = SetUserColorMain;
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
SetCommentInit();
|
|
||||||
g_pNowProcess = SetCommentMain;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}else if( ( pad.trg & PAD_BUTTON_B ) || tp_cancel ) {
|
|
||||||
SetOwnerInfoInit();
|
|
||||||
g_pNowProcess = SetOwnerInfoMain;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -107,7 +107,7 @@ void SetRTCInit( void )
|
|||||||
{
|
{
|
||||||
GX_DispOff();
|
GX_DispOff();
|
||||||
GXS_DispOff();
|
GXS_DispOff();
|
||||||
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_WHITE );
|
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_NULL );
|
||||||
|
|
||||||
PutStringUTF16( 0, 0, TXT_COLOR_BLUE, (const u16 *)L"DATE & TIME SET" );
|
PutStringUTF16( 0, 0, TXT_COLOR_BLUE, (const u16 *)L"DATE & TIME SET" );
|
||||||
PutStringUTF16( RETURN_BUTTON_TOP_X, RETURN_BUTTON_TOP_Y, TXT_COLOR_CYAN, (const u16 *)L" RETURN " );
|
PutStringUTF16( RETURN_BUTTON_TOP_X, RETURN_BUTTON_TOP_Y, TXT_COLOR_CYAN, (const u16 *)L" RETURN " );
|
||||||
@ -139,7 +139,7 @@ void SetRTCInit( void )
|
|||||||
|
|
||||||
DrawDateTime( &s_pWork->dtp.Date, &s_pWork->dtp.Time, TXT_COLOR_BLACK );
|
DrawDateTime( &s_pWork->dtp.Date, &s_pWork->dtp.Time, TXT_COLOR_BLACK );
|
||||||
|
|
||||||
GX_SetVisiblePlane ( GX_PLANEMASK_BG0 );
|
GX_SetVisiblePlane ( GX_PLANEMASK_BG0 | GX_PLANEMASK_BG1);
|
||||||
GXS_SetVisiblePlane( GX_PLANEMASK_BG0 );
|
GXS_SetVisiblePlane( GX_PLANEMASK_BG0 );
|
||||||
GX_DispOn();
|
GX_DispOn();
|
||||||
GXS_DispOn();
|
GXS_DispOn();
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user