mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
SystemUpdater: Aボタン押しを要求するように変更
nand:/sys/log/updater.log を生成し、再更新を抑制するように変更(デバッグに不便なので現在コメントアウト) git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1245 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
056fe65209
commit
bbd5ae3603
@ -97,6 +97,7 @@ const u16 PlttDataMain[16][16] = {
|
|||||||
{RGB555(31, 31, 31), RGB555(0, 31, 31), RGB555(0, 31, 31), RGB555(0, 31, 31),}, // Cyan
|
{RGB555(31, 31, 31), RGB555(0, 31, 31), RGB555(0, 31, 31), RGB555(0, 31, 31),}, // Cyan
|
||||||
{RGB555(31, 31, 31), RGB555(31, 0, 31), RGB555(31, 0, 31), RGB555(31, 0, 31),}, // Purple
|
{RGB555(31, 31, 31), RGB555(31, 0, 31), RGB555(31, 0, 31), RGB555(31, 0, 31),}, // Purple
|
||||||
{RGB555(31, 31, 31), RGB555(31, 31, 31), RGB555(31, 31, 31), RGB555(31, 31, 31),}, // White
|
{RGB555(31, 31, 31), RGB555(31, 31, 31), RGB555(31, 31, 31), RGB555(31, 31, 31),}, // White
|
||||||
|
{RGB555( 0, 0, 0), RGB555(0, 0, 0), RGB555(0, 0, 0), RGB555(0, 0, 0),}, // Black
|
||||||
};
|
};
|
||||||
|
|
||||||
// 下画面コンソール文字列パレット
|
// 下画面コンソール文字列パレット
|
||||||
|
|||||||
@ -47,7 +47,8 @@ SRCS = main.c \
|
|||||||
hwi.c \
|
hwi.c \
|
||||||
kami_pxi.c \
|
kami_pxi.c \
|
||||||
kami_write_nandfirm.c \
|
kami_write_nandfirm.c \
|
||||||
hw_info.c
|
hw_info.c \
|
||||||
|
keypad.c
|
||||||
|
|
||||||
|
|
||||||
SRCS += $(ROOT)/build/tests/debugger/fio/src/fs_archive_hostio.c
|
SRCS += $(ROOT)/build/tests/debugger/fio/src/fs_archive_hostio.c
|
||||||
|
|||||||
@ -27,6 +27,7 @@
|
|||||||
#include "hw_info.h"
|
#include "hw_info.h"
|
||||||
#include "graphics.h"
|
#include "graphics.h"
|
||||||
#include "hwi.h"
|
#include "hwi.h"
|
||||||
|
#include "keypad.h"
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*
|
/*---------------------------------------------------------------------------*
|
||||||
内部定数定義
|
内部定数定義
|
||||||
@ -53,7 +54,8 @@ static NAMTitleId titleId;
|
|||||||
static void VBlankIntr(void);
|
static void VBlankIntr(void);
|
||||||
static void InitAllocation(void);
|
static void InitAllocation(void);
|
||||||
static BOOL IgnoreRemoval(void);
|
static BOOL IgnoreRemoval(void);
|
||||||
extern void FS_MountHostIO(const char *basepath);
|
static void DrawWaitButtonA(void);
|
||||||
|
static void DrawAlready(void);
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*
|
/*---------------------------------------------------------------------------*
|
||||||
Name: TwlMain
|
Name: TwlMain
|
||||||
@ -118,6 +120,20 @@ TwlMain()
|
|||||||
(void)FS_LoadTable(p_table, need_size);
|
(void)FS_LoadTable(p_table, need_size);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ログが存在するならシステム更新済みと判定
|
||||||
|
{
|
||||||
|
FSFile file;
|
||||||
|
FS_InitFile( &file );
|
||||||
|
if (FS_OpenFileEx(&file, "nand:/sys/log/updater.log", FS_FILEMODE_R) == TRUE)
|
||||||
|
{
|
||||||
|
FS_CloseFile(&file);
|
||||||
|
DrawAlready();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Aボタン待ち
|
||||||
|
DrawWaitButtonA();
|
||||||
|
|
||||||
// HWInfo関連の前準備
|
// HWInfo関連の前準備
|
||||||
switch (HWI_Init( OS_AllocFromMain, OS_FreeToMain ))
|
switch (HWI_Init( OS_AllocFromMain, OS_FreeToMain ))
|
||||||
{
|
{
|
||||||
@ -171,6 +187,14 @@ TwlMain()
|
|||||||
}
|
}
|
||||||
kamiFontLoadScreenData();
|
kamiFontLoadScreenData();
|
||||||
|
|
||||||
|
// 調査に不便なので一時的に削除
|
||||||
|
/*
|
||||||
|
// 更新ログを残して再実行を防ぐ
|
||||||
|
if (result)
|
||||||
|
{
|
||||||
|
(void)FS_CreateFileAuto("nand:/sys/log/updater.log", FS_PERMIT_R | FS_PERMIT_W);
|
||||||
|
}
|
||||||
|
*/
|
||||||
// 結果表示
|
// 結果表示
|
||||||
while(1)
|
while(1)
|
||||||
{
|
{
|
||||||
@ -216,3 +240,76 @@ static void InitAllocation(void)
|
|||||||
OS_Panic("ARM9: Fail to create heap...\n");
|
OS_Panic("ARM9: Fail to create heap...\n");
|
||||||
hh = OS_SetCurrentHeap(OS_ARENA_MAIN, hh);
|
hh = OS_SetCurrentHeap(OS_ARENA_MAIN, hh);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: DrawWaitButtonA
|
||||||
|
|
||||||
|
Description: Aボタン待ちを表示します
|
||||||
|
|
||||||
|
Arguments:
|
||||||
|
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static void DrawWaitButtonA(void)
|
||||||
|
{
|
||||||
|
kamiFontPrintfMain( 5, 3, 8, "--- System Updater ---");
|
||||||
|
|
||||||
|
kamiFontPrintfMain( 5, 8, 3, "<Push A: Start Update>");
|
||||||
|
kamiFontPrintfMain( 3, 10, 1, "--------------------------");
|
||||||
|
kamiFontPrintfMain( 3, 11, 1, "Do not turn off power");
|
||||||
|
kamiFontPrintfMain( 3, 12, 1, "while update is processing");
|
||||||
|
kamiFontPrintfMain( 3, 13, 1, "--------------------------");
|
||||||
|
kamiFontLoadScreenData();
|
||||||
|
|
||||||
|
while(1)
|
||||||
|
{
|
||||||
|
G3X_Reset();
|
||||||
|
G3_Identity();
|
||||||
|
G3_PolygonAttr(GX_LIGHTMASK_NONE, GX_POLYGONMODE_DECAL, GX_CULL_NONE, 0, 31, 0);
|
||||||
|
|
||||||
|
DrawQuad( 10, 50, 246, 120, GX_RGB(28, 28, 28));
|
||||||
|
|
||||||
|
G3_SwapBuffers(GX_SORTMODE_AUTO, GX_BUFFERMODE_W);
|
||||||
|
|
||||||
|
kamiPadRead();
|
||||||
|
if (kamiPadIsTrigger(PAD_BUTTON_A))
|
||||||
|
{
|
||||||
|
kamiFontClearMain();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
OS_WaitVBlankIntr();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Name: DrawAlready
|
||||||
|
|
||||||
|
Description: Alreadyを表示します
|
||||||
|
|
||||||
|
Arguments:
|
||||||
|
|
||||||
|
Returns: None.
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
static void DrawAlready(void)
|
||||||
|
{
|
||||||
|
kamiFontPrintfMain( 8, 8, 3, "<Infomation>");
|
||||||
|
kamiFontPrintfMain( 3, 10, 1, "--------------------------");
|
||||||
|
kamiFontPrintfMain( 3, 11, 1, "This machine has already");
|
||||||
|
kamiFontPrintfMain( 3, 12, 1, "been updated.");
|
||||||
|
kamiFontPrintfMain( 3, 13, 1, "--------------------------");
|
||||||
|
kamiFontLoadScreenData();
|
||||||
|
|
||||||
|
while(1)
|
||||||
|
{
|
||||||
|
G3X_Reset();
|
||||||
|
G3_Identity();
|
||||||
|
G3_PolygonAttr(GX_LIGHTMASK_NONE, GX_POLYGONMODE_DECAL, GX_CULL_NONE, 0, 31, 0);
|
||||||
|
|
||||||
|
DrawQuad( 10, 50, 246, 120, GX_RGB(28, 28, 28));
|
||||||
|
|
||||||
|
G3_SwapBuffers(GX_SORTMODE_AUTO, GX_BUFFERMODE_W);
|
||||||
|
|
||||||
|
OS_WaitVBlankIntr();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user