TwlIPL/build/tests/DisplaySystemInformation/ARM9/src/viewSystemInfo.h
aoki_ryoma 7a6d8600a7 Makefileによるビルドスイッチで、システム/ユーザ、NAND/Gamecard、SCFGLock/Unlockの条件分岐によって8種類の実行ファイルを生成するようにした。
最初にLCFGReadTWLSettingでデータ取得に失敗した場合、LCFG経由で取得するデータは全て明示的にN/Aと表示するようにした。

git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@2011 b08762b0-b915-fc4b-9d8c-17b2551a87ff
2008-07-28 05:52:11 +00:00

95 lines
2.4 KiB
C

/*---------------------------------------------------------------------------*
Project: TwlIPL - tests - DisplaySystemInformation
File: viewSystemInfo.h
Copyright **** Nintendo. All rights reserved.
These coded instructions, statements, and computer programs contain
proprietary information of Nintendo of America Inc. and/or Nintendo
Company Ltd., and are protected by Federal copyright law. They may
not be disclosed to third parties or copied or duplicated in any form,
in whole or in part, without the prior written consent of Nintendo.
$Date:: $
$Rev$
$Author$
*---------------------------------------------------------------------------*/
#ifndef __LOAD_VIEW_INFO__
#define __LOAD_VIEW_INFO__
#include <twl.h>
#include "drawFunc.h"
#include "address.h"
#define DISPINFO_BUFSIZE 64
#ifdef __cplusplus
extern "C" {
#endif
////////////////////////////////
typedef enum ChangeFuncArg{
ARG_BOOL,
ARG_INT,
ARG_OTHER
} ChangeFuncArg;
typedef struct DispInfoEntry
{
BOOL isNumData; // 表示するときは数値データか文字列データか
BOOL isSjis; // UTF16で描画するデータだけFALSE isNumData=TRUEなら未定義
BOOL isAligned; // 一列に表示できるならTRUE、字下げが必要ならFALSE
BOOL fromLCFG; // LCFGから取得したデータは色つけて表示
int numLines; // 項目名、項目内容を表示するのに必要な行数
const char *kind; // 項目名
union {
char* sjis;
u16* utf;
} str;
int iValue; // データの数値型表現(インデクスとか)
BOOL changable; // その値が変更可能か否か
// ここから先はchangableがtrueのエントリのみ設定される
ChangeFuncArg argType; // 値を変更するための関数の引数型
// 値を変更するための関数
union {
void (*cBool)(bool);
void (*cInt)(int);
} changeFunc;
char **kindNameList; // 項目名一覧の先頭へのポインタ
int numKindName; // 項目名一覧の長さ
} DispInfoEntry;
////////////////////////////////
// 各種本体、ユーザ情報
extern DispInfoEntry* gAllInfo[ROOTMENU_SIZE];
extern u8 gArm7SCFGReg[DISPINFO_SHARED_SCFG_REG_SIZE]; // ARM7からのデータ取得用バッファ
extern u8 gArm7SCFGShared[DISPINFO_SHARED_SCFG_WRAM_SIZE]; // ARM7からのデータ取得用バッファ
extern BOOL gLCFGAccessible;
////////////////////////////////
void displayInfoMain( void );
void displayInfoInit( void );
////////////////////////////////
#ifdef __cplusplus
}
#endif
#endif // __LOAD_VIEW_INFO__