mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
・アプリに引き渡すNANDアプリタイトルIDリストの作成ルールを、最新のdocに合わせた仕様に変更
・DataOnlyなNANDアプリもリストに入れるよう変更 ・タイトルが3行になるアプリの表示がおかしい件の修正およびレイアウト変更 git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1623 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
56f20ac193
commit
b678f49c03
@ -409,13 +409,32 @@ static BOOL MakeTitleListMakerInfoFromTitleID( TitleListMakerInfo *info, OSTitle
|
|||||||
OSTick prev;
|
OSTick prev;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// 無効なTitleID または、DataOnlyアプリはスキップ
|
// 無効なTitleIDはスキップ
|
||||||
if( (titleID == NULL) || ( titleID & TITLE_ID_DATA_ONLY_FLAG_MASK ) )
|
if( titleID == NULL)
|
||||||
{
|
{
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
// romヘッダ読み込み
|
|
||||||
|
|
||||||
|
// DataOnlyはTADからメーカーコードを読み出し、他の情報はOFFでリスト登録
|
||||||
|
if( titleID & TITLE_ID_DATA_ONLY_FLAG_MASK )
|
||||||
|
{
|
||||||
|
int l;
|
||||||
|
NAMTitleInfo naminfo;
|
||||||
|
// [TODO:]この関数で得られる情報は無検証なので改ざんの可能性があるが、これで良いか
|
||||||
|
// (でもFastつけないと一回300msぐらいかかる)
|
||||||
|
NAM_ReadTitleInfoFast( &naminfo, titleID );
|
||||||
|
for(l=0;l<MAKER_CODE_MAX;l++)
|
||||||
|
{
|
||||||
|
info->makerCode[l] = ((char *)&naminfo.companyCode)[l];
|
||||||
|
//OS_TPrintf("companyCode[%d]::::%c\n",l,((char *)&naminfo.companyCode)[l]);
|
||||||
|
}
|
||||||
|
info->public_save_data_size = 0;
|
||||||
|
info->private_save_data_size = 0;
|
||||||
|
info->permit_landing_normal_jump = FALSE;
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
// romヘッダ読み込み
|
||||||
#if (MEASURE_MAKELIST_TIME == 1)
|
#if (MEASURE_MAKELIST_TIME == 1)
|
||||||
// 時間計測1
|
// 時間計測1
|
||||||
prev = OS_GetTick();
|
prev = OS_GetTick();
|
||||||
@ -1703,8 +1722,6 @@ AuthResult SYSM_TryToBootTitle( TitleProperty *pBootTitle )
|
|||||||
// タイトルIDリストの作成
|
// タイトルIDリストの作成
|
||||||
static void SYSMi_makeTitleIdList( void )
|
static void SYSMi_makeTitleIdList( void )
|
||||||
{
|
{
|
||||||
// [TODO:]現在ブート不可タイトルについても入れるようにしているが
|
|
||||||
// これで良いのか?
|
|
||||||
OSTitleIDList *list = ( OSTitleIDList * )HW_OS_TITLE_ID_LIST;
|
OSTitleIDList *list = ( OSTitleIDList * )HW_OS_TITLE_ID_LIST;
|
||||||
ROM_Header_Short *hs = ( ROM_Header_Short *)SYSM_APP_ROM_HEADER_BUF;
|
ROM_Header_Short *hs = ( ROM_Header_Short *)SYSM_APP_ROM_HEADER_BUF;
|
||||||
int l;
|
int l;
|
||||||
@ -1766,8 +1783,8 @@ static void SYSMi_makeTitleIdList( void )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 無効なTitleID または、DataOnlyアプリはスキップ
|
// 無効なTitleIDはスキップ
|
||||||
if( (id == NULL) || ( id & TITLE_ID_DATA_ONLY_FLAG_MASK ) )
|
if( id == NULL )
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@ -1783,27 +1800,12 @@ static void SYSMi_makeTitleIdList( void )
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
// セキュアアプリの場合か、メーカーコードが同じ場合は
|
if( same_maker_code )
|
||||||
if( (hs->titleID & TITLE_ID_SECURE_FLAG_MASK) ||
|
|
||||||
( same_maker_code ) )
|
|
||||||
{
|
{
|
||||||
// セキュアアプリのデータはマウントさせない
|
// リストに追加
|
||||||
if( !(id & TITLE_ID_SECURE_FLAG_MASK) )
|
list->TitleID[count] = id;
|
||||||
{
|
// sameMakerFlagをON
|
||||||
// リストに追加
|
list->sameMakerFlag[count/8] |= (u8)(0x1 << (count%8));
|
||||||
list->TitleID[count] = id;
|
|
||||||
// sameMakerFlagをON
|
|
||||||
list->sameMakerFlag[count/8] |= (u8)(0x1 << (count%8));
|
|
||||||
// Prv,Pubそれぞれセーブデータがあるか見て、存在すればフラグON
|
|
||||||
if(p_info->public_save_data_size != 0)
|
|
||||||
{
|
|
||||||
list->publicFlag[count/8] |= (u8)(0x1 << (count%8));
|
|
||||||
}
|
|
||||||
if(p_info->private_save_data_size != 0)
|
|
||||||
{
|
|
||||||
list->privateFlag[count/8] |= (u8)(0x1 << (count%8));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// ジャンプ可能ならば
|
// ジャンプ可能ならば
|
||||||
@ -1814,6 +1816,41 @@ static void SYSMi_makeTitleIdList( void )
|
|||||||
list->appJumpFlag[count/8] |= (u8)(0x1 << (count%8));
|
list->appJumpFlag[count/8] |= (u8)(0x1 << (count%8));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ブートアプリがセキュアアプリの場合
|
||||||
|
if( hs->titleID & TITLE_ID_SECURE_FLAG_MASK )
|
||||||
|
{
|
||||||
|
// Prv,Pubそれぞれセーブデータがあるか見て、存在すればフラグON
|
||||||
|
if(p_info->public_save_data_size != 0)
|
||||||
|
{
|
||||||
|
list->publicFlag[count/8] |= (u8)(0x1 << (count%8));
|
||||||
|
}
|
||||||
|
if(p_info->private_save_data_size != 0)
|
||||||
|
{
|
||||||
|
list->privateFlag[count/8] |= (u8)(0x1 << (count%8));
|
||||||
|
}
|
||||||
|
// リストに強制追加
|
||||||
|
list->TitleID[count] = id;
|
||||||
|
}else
|
||||||
|
{
|
||||||
|
// セキュアアプリでない && メーカーコードが同じ
|
||||||
|
if( !(id & TITLE_ID_SECURE_FLAG_MASK) && same_maker_code )
|
||||||
|
{
|
||||||
|
// Prv,Pubそれぞれセーブデータがあるか見て、存在すればフラグON
|
||||||
|
if(p_info->public_save_data_size != 0)
|
||||||
|
{
|
||||||
|
list->publicFlag[count/8] |= (u8)(0x1 << (count%8));
|
||||||
|
// リストに追加
|
||||||
|
list->TitleID[count] = id;
|
||||||
|
}
|
||||||
|
if(p_info->private_save_data_size != 0)
|
||||||
|
{
|
||||||
|
list->privateFlag[count/8] |= (u8)(0x1 << (count%8));
|
||||||
|
// リストに追加
|
||||||
|
list->TitleID[count] = id;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// ここまでのうちに、list->TitleID[count]が編集されていたらcountインクリメント
|
// ここまでのうちに、list->TitleID[count]が編集されていたらcountインクリメント
|
||||||
if( list->TitleID[count] != NULL )
|
if( list->TitleID[count] != NULL )
|
||||||
{
|
{
|
||||||
|
|||||||
@ -37,10 +37,10 @@
|
|||||||
#define B_LIGHT_UP_BUTTON_BOTTOM_Y ( B_LIGHT_UP_BUTTON_TOP_Y + 13 )
|
#define B_LIGHT_UP_BUTTON_BOTTOM_Y ( B_LIGHT_UP_BUTTON_TOP_Y + 13 )
|
||||||
|
|
||||||
// スクロールバー関係
|
// スクロールバー関係
|
||||||
#define BAR_ZERO_X ( (WINDOW_WIDTH - ((ITEM_SIZE + ITEM_INTERVAL) * (LAUNCHER_TITLE_LIST_NUM - 1) + ITEM_SIZE)) / 2)
|
#define BAR_ZERO_X ( (WINDOW_WIDTH - ((ITEM_SIZE + ITEM_INTERVAL) * (LAUNCHER_TITLE_LIST_NUM - 1) + ITEM_SIZE)) / 2 - 3)
|
||||||
#define BAR_ZERO_Y WINDOW_HEIGHT - 32
|
#define BAR_ZERO_Y (WINDOW_HEIGHT - 32 + 1)
|
||||||
#define BAR_HEIGHT 14
|
#define BAR_HEIGHT 14
|
||||||
#define BAR_WIDTH 32 //((ITEM_SIZE + ITEM_INTERVAL) * 4 + ITEM_SIZE + 2)
|
#define BAR_WIDTH 14 //((ITEM_SIZE + ITEM_INTERVAL) * 4 + ITEM_SIZE + 2)
|
||||||
#define BAR_LOOSENESS 2
|
#define BAR_LOOSENESS 2
|
||||||
#define ITEMDOT_PER_FRAME ((double)(ITEM_SIZE + ITEM_INTERVAL) / (double)FRAME_PER_SELECT)
|
#define ITEMDOT_PER_FRAME ((double)(ITEM_SIZE + ITEM_INTERVAL) / (double)FRAME_PER_SELECT)
|
||||||
#define FRAME_PER_ITEMDOT ((double)FRAME_PER_SELECT / (double)(ITEM_SIZE + ITEM_INTERVAL))
|
#define FRAME_PER_ITEMDOT ((double)FRAME_PER_SELECT / (double)(ITEM_SIZE + ITEM_INTERVAL))
|
||||||
@ -52,13 +52,13 @@
|
|||||||
#define DOT_PER_FRAME ((BANNER_WIDTH + BANNER_INTERVAL) / FRAME_PER_SELECT) // 割り切れないと動きがカクカクするはず
|
#define DOT_PER_FRAME ((BANNER_WIDTH + BANNER_INTERVAL) / FRAME_PER_SELECT) // 割り切れないと動きがカクカクするはず
|
||||||
#define FRAME_PER_SELECT 14 // バナーからバナーへの移動にかかるフレーム数
|
#define FRAME_PER_SELECT 14 // バナーからバナーへの移動にかかるフレーム数
|
||||||
#define BANNER_FAR_LEFT_POS (WINDOW_WIDTH/2 - BANNER_WIDTH*5/2 - BANNER_INTERVAL * 2)
|
#define BANNER_FAR_LEFT_POS (WINDOW_WIDTH/2 - BANNER_WIDTH*5/2 - BANNER_INTERVAL * 2)
|
||||||
#define BANNER_TOP (WINDOW_HEIGHT/2 - 16)
|
#define BANNER_TOP (WINDOW_HEIGHT/2 + 4)
|
||||||
#define WINDOW_WIDTH 256
|
#define WINDOW_WIDTH 256
|
||||||
#define WINDOW_HEIGHT 192
|
#define WINDOW_HEIGHT 192
|
||||||
#define BANNER_WIDTH 32
|
#define BANNER_WIDTH 32
|
||||||
#define BANNER_HEIGHT 32
|
#define BANNER_HEIGHT 32
|
||||||
#define BANNER_INTERVAL 24
|
#define BANNER_INTERVAL 24
|
||||||
#define TITLE_V_CENTER 39
|
#define TITLE_V_CENTER 47
|
||||||
|
|
||||||
#define MAX_SHOW_BANNER 6
|
#define MAX_SHOW_BANNER 6
|
||||||
|
|
||||||
@ -372,7 +372,7 @@ static void BannerDraw(int selected, TitleProperty *titleprop)
|
|||||||
{
|
{
|
||||||
NNSG2dChar *str = ((TWLBannerFile *)titleprop[selected].pBanner)->v1.gameName[ LCFG_TSD_GetLanguage() ];
|
NNSG2dChar *str = ((TWLBannerFile *)titleprop[selected].pBanner)->v1.gameName[ LCFG_TSD_GetLanguage() ];
|
||||||
NNSG2dTextRect rect = NNS_G2dTextCanvasGetTextRect( &gTextCanvas, str );
|
NNSG2dTextRect rect = NNS_G2dTextCanvasGetTextRect( &gTextCanvas, str );
|
||||||
NNS_G2dCharCanvasClearArea( &gCanvas, TXT_COLOR_NULL, 0, 24, WINDOW_WIDTH, 32 );
|
NNS_G2dCharCanvasClearArea( &gCanvas, TXT_COLOR_NULL, 0, 24, WINDOW_WIDTH, 48 );
|
||||||
PutStringUTF16( (WINDOW_WIDTH-rect.width)>>1, TITLE_V_CENTER - (rect.height>>1), TXT_COLOR_BLACK, str );
|
PutStringUTF16( (WINDOW_WIDTH-rect.width)>>1, TITLE_V_CENTER - (rect.height>>1), TXT_COLOR_BLACK, str );
|
||||||
MI_CpuCopy8( str, old_gameName, BANNER_LANG_LENGTH * 2 );
|
MI_CpuCopy8( str, old_gameName, BANNER_LANG_LENGTH * 2 );
|
||||||
}
|
}
|
||||||
@ -506,9 +506,9 @@ static BOOL SelectFunc( u16 *csr, TPData *tgt )
|
|||||||
|
|
||||||
for(l=0; l<2; l++)
|
for(l=0; l<2; l++)
|
||||||
{
|
{
|
||||||
int x = 11*8 + l*6*8;
|
int x = 1*8 + l*28*8;
|
||||||
int y = 17*8;
|
int y = 20*8;
|
||||||
if(WithinRangeTP( x, y, x+32, y+16, tgt ))
|
if(WithinRangeTP( x, y, x+16, y+16, tgt ))
|
||||||
{
|
{
|
||||||
*csr = (u16)l;
|
*csr = (u16)l;
|
||||||
return TRUE;
|
return TRUE;
|
||||||
@ -647,16 +647,19 @@ static TitleProperty *ProcessPads( TitleProperty *pTitleList )
|
|||||||
static void MoveByScrollBar( void )
|
static void MoveByScrollBar( void )
|
||||||
{
|
{
|
||||||
static double vx = 0;
|
static double vx = 0;
|
||||||
|
static int last_move_dir = 0;
|
||||||
|
static int last_bar_left;
|
||||||
|
|
||||||
// スクロールバーによるスクロール
|
// スクロールバーによるスクロール
|
||||||
{
|
{
|
||||||
static BOOL holding = FALSE;
|
static BOOL holding = FALSE;
|
||||||
|
static BOOL ground_holding = FALSE;
|
||||||
static int dx;
|
static int dx;
|
||||||
static const int list_len = 4;
|
static const int list_len = 4;
|
||||||
static int list_x[list_len];
|
static int list_x[list_len];
|
||||||
int l;
|
int l;
|
||||||
|
|
||||||
if(!holding && vx == 0)
|
if( !ground_holding && !holding && vx == 0)
|
||||||
{
|
{
|
||||||
bar_left = (int)(BAR_ZERO_X + (ITEMDOT_PER_FRAME * s_csr));
|
bar_left = (int)(BAR_ZERO_X + (ITEMDOT_PER_FRAME * s_csr));
|
||||||
}
|
}
|
||||||
@ -669,8 +672,6 @@ static void MoveByScrollBar( void )
|
|||||||
vx = vx * 0.9;
|
vx = vx * 0.9;
|
||||||
if(vx*vx < 1)
|
if(vx*vx < 1)
|
||||||
{
|
{
|
||||||
int det = s_csr % FRAME_PER_SELECT;
|
|
||||||
csr_v = (det == 0 ? 0 : (vx>0 ? 1 : -1) );
|
|
||||||
vx = 0;
|
vx = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -696,7 +697,9 @@ static void MoveByScrollBar( void )
|
|||||||
}
|
}
|
||||||
list_x[list_len-1] = tpd.disp.x;
|
list_x[list_len-1] = tpd.disp.x;
|
||||||
}
|
}
|
||||||
else if(WithinRangeTP(bar_left+5-BAR_WIDTH/2, BAR_ZERO_Y+BAR_OFFSET,bar_left+5+BAR_WIDTH/2,BAR_ZERO_Y+BAR_OFFSET+BAR_HEIGHT,&tpd.disp))
|
else if(WithinRangeTP(bar_left+5-BAR_WIDTH/2, BAR_ZERO_Y+BAR_OFFSET,bar_left+5+BAR_WIDTH/2,BAR_ZERO_Y+BAR_OFFSET+BAR_HEIGHT,&tpd.disp) ||
|
||||||
|
( ground_holding && WithinRangeTP(bar_left+5-BAR_WIDTH/2, 0,bar_left+5+BAR_WIDTH/2,WINDOW_HEIGHT,&tpd.disp) )
|
||||||
|
)
|
||||||
{
|
{
|
||||||
holding = TRUE;
|
holding = TRUE;
|
||||||
dx = tpd.disp.x - bar_left;
|
dx = tpd.disp.x - bar_left;
|
||||||
@ -706,12 +709,21 @@ static void MoveByScrollBar( void )
|
|||||||
list_x[l] = tpd.disp.x;
|
list_x[l] = tpd.disp.x;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else if(ground_holding)
|
||||||
|
{
|
||||||
|
bar_left += ( tpd.disp.x > bar_left ? 1 : -1 );
|
||||||
|
s_csr = (u16)((bar_left - BAR_ZERO_X) * FRAME_PER_ITEMDOT);
|
||||||
|
}
|
||||||
|
else if( WithinRangeTP(BAR_ZERO_X+BAR_OFFSET, BAR_ZERO_Y+BAR_OFFSET,BAR_ZERO_X + (ITEM_SIZE + ITEM_INTERVAL) * (LAUNCHER_TITLE_LIST_NUM),BAR_ZERO_Y+BAR_OFFSET+BAR_HEIGHT,&tpd.disp) )
|
||||||
|
{
|
||||||
|
ground_holding = TRUE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
int det = s_csr % FRAME_PER_SELECT;
|
||||||
if(holding)
|
if(holding)
|
||||||
{
|
{
|
||||||
int det = s_csr % FRAME_PER_SELECT;
|
|
||||||
holding = FALSE;
|
holding = FALSE;
|
||||||
|
|
||||||
// 移動履歴から速度算出
|
// 移動履歴から速度算出
|
||||||
@ -725,10 +737,16 @@ static void MoveByScrollBar( void )
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
vx /= (list_len-1);
|
vx /= (list_len-1);
|
||||||
if(vx == 0)
|
}
|
||||||
{
|
if(ground_holding)
|
||||||
csr_v = (det < FRAME_PER_SELECT/2) ? (det == 0 ? 0 : -1) : 1;
|
{
|
||||||
}
|
ground_holding = FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
// タッチパネル放置状態でカーソルがアイコンの中間にある場合は最後に動いてた方に移動
|
||||||
|
if(vx == 0 && det != 0 && csr_v == 0)
|
||||||
|
{
|
||||||
|
csr_v = last_move_dir;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -746,6 +764,11 @@ static void MoveByScrollBar( void )
|
|||||||
}
|
}
|
||||||
if((LAUNCHER_TITLE_LIST_NUM-1)*FRAME_PER_SELECT < s_csr) s_csr = (LAUNCHER_TITLE_LIST_NUM-1)*FRAME_PER_SELECT;
|
if((LAUNCHER_TITLE_LIST_NUM-1)*FRAME_PER_SELECT < s_csr) s_csr = (LAUNCHER_TITLE_LIST_NUM-1)*FRAME_PER_SELECT;
|
||||||
if( s_csr < 0 ) s_csr = 0;
|
if( s_csr < 0 ) s_csr = 0;
|
||||||
|
|
||||||
|
// 最後に動いた方向の記録
|
||||||
|
if(bar_left != last_bar_left)
|
||||||
|
last_move_dir = ( bar_left > last_bar_left ? 1 : -1);
|
||||||
|
last_bar_left = bar_left;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void DrawScrollBar( TitleProperty *pTitleList )
|
static void DrawScrollBar( TitleProperty *pTitleList )
|
||||||
|
|||||||
@ -28,14 +28,14 @@ u16 bg_scr_data[32 * 32]=
|
|||||||
0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,0x1001,
|
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,//4
|
0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,//4
|
||||||
0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,
|
0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,0x1002,
|
||||||
0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,//5
|
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,
|
||||||
|
0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,//7
|
||||||
0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,
|
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,//6
|
0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,//8
|
||||||
0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,
|
0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,0x1801,
|
||||||
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,//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,
|
||||||
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,//10
|
||||||
@ -52,16 +52,16 @@ u16 bg_scr_data[32 * 32]=
|
|||||||
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,
|
||||||
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,//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,
|
||||||
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1405,0x1405,0x1405,0x1405,0x1003,//17
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//17
|
||||||
0x1003,0x1005,0x1005,0x1005,0x1005,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,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1c05,0x1c05,0x1c05,0x1c05,0x1003,//18
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//18
|
||||||
0x1003,0x1805,0x1805,0x1805,0x1805,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,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,//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,
|
||||||
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//20
|
0x1003,0x1405,0x1405,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,0x1005,0x1005,0x1003,
|
||||||
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,//21
|
0x1003,0x1c05,0x1c05,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,
|
0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1003,0x1805,0x1805,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,//22
|
||||||
0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,0x1802,
|
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,//23
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user