メニュー全体の再構成。

フォントの各種データ、無線ファームの各種データを追加。
各バイナリに対してゲームコードの設定を行った。
実行ファイルの種類を更に細分化し、Makefileを条件指定ファイルから自動生成するように修正。
ユーザデータの破壊、リセットに確認を追加。
NANDアプリにはそれぞれ新規バナーを割り当てた。
ハッシュデータの照合において、結果がIncorrectだった場合は文字色を赤で表記するようにした。


git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@2083 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
aoki_ryoma 2008-08-04 07:08:00 +00:00
parent d6df5fa650
commit a5a58aab7f
64 changed files with 3021 additions and 662 deletions

View File

@ -18,7 +18,11 @@
SUBDIRS =
SUBMAKES = Makefile.0 Makefile.1 Makefile.2 Makefile.3\
Makefile.4 Makefile.5 Makefile.6 Makefile.7
Makefile.4 Makefile.5 Makefile.6 Makefile.7\
Makefile.8 Makefile.9 Makefile.10 Makefile.11\
Makefile.12 Makefile.13 Makefile.14 Makefile.15\
Makefile.16 Makefile.17
#SUBMAKES = Makefile.0
include $(TWL_IPL_RED_ROOT)/build/tests/RelocateChecker/buildtools/commondefs

View File

@ -19,23 +19,17 @@ TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED
######################################
#
# 分岐条件はここで設定
# セキュアアプリかどうか
IS_SECURE_APP = TRUE
# なんどアプリかどうか
IS_NAND_APP = TRUE
# SCFGをロックして見れなくするかどうか
INVISIBLE_SCFG = TRUE
#
FILE_IDX = 0
IS_SECURE_APP = FALSE
IS_NAND_APP = FALSE
NAND_ACCESS = TRUE
AES_SLOT = DONTCARE
INVISIBLE_SCFG = TRUE
GAMECODE = 0B0A
######################################
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP)\
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP) -DDISPINFO_BIN_IDX=$(FILE_IDX)
TWL_NANDAPP = $(IS_NAND_APP)
DISP_INFO = $(call eupath,$(TWL_IPL_RED_ROOT)/build/tests/DisplaySystemInformation)
@ -47,11 +41,14 @@ SRCS = main.c viewSystemInfo.c drawFunc.c control.c\
strResource.c misc.c util.c\
get_versionData.c get_sysmenu.c get_scfg.c get_owner.c\
get_hw.c get_parental.c get_other.c\
get_secureUser.c get_font.c get_wl.c\
$(MISC_DIR)/src/cmn.c
LINCLUDES += $(MISC_DIR)/include \
$(DISP_INFO)/common/include
TARGET_BIN = DispInfo_$(FILE_IDX).$(FILE_SUFFIX)
SYSMENU_LIBS = \
liblcfg$(TWL_LIBSUFFIX).a \
libsysmenu$(TWL_LIBSUFFIX).a \
@ -78,7 +75,6 @@ SDK_APPEND_LIBS = \
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
TARGET_BIN = DisplaySystemInfo.srl
#=============================================================================
@ -91,6 +87,7 @@ ifeq ($(IS_SECURE_APP),TRUE)
APPTYPE = SYSTEM
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
ROM_SPEC = main_secure.rsf
MAKETAD_OPTION += -s
else
WRAM_MAP = $(MAKEROM_WRAM_MAPPING)
DEFAULT_COMP_ARM7 = racoon
@ -100,27 +97,33 @@ endif
ifeq ($(IS_NAND_APP),TRUE)
MEDIA = NAND
FILE_SUFFIX = tad
BANNARPATH = ../banner/$(GAMECODE).bnr
else
MEDIA = GAMECARD
FILE_SUFFIX = srl
BANNARPATH = $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
endif
ifeq ($(INVISIBLE_SCFG),TRUE)
SCFG_SUFFIX = LockSCFG
else
SCFG_SUFFIX = UnlockSCFG
endif
BINDIR = ./bin/$(TWL_BUILDTYPE)/$(APPTYPE)_$(MEDIA)_$(SCFG_SUFFIX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/$(APPTYPE)_$(MEDIA)_$(SCFG_SUFFIX)
BINDIR = ./bin/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
MAKEROM_FLAGS += -DDISPINFO_WRAM_MAP=$(WRAM_MAP) \
-DDISPINFO_APPTYPE=$(APPTYPE) \
-DDISPINFO_SECURE=$(IS_SECURE_APP) \
-DDISPINFO_MEDIA=$(MEDIA) \
-DDISPINFO_NANDACCESS=$(IS_NAND_APP) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG)
-DDISPINFO_NANDACCESS=$(NAND_ACCESS) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG) \
-DDISPINFO_AES=$(AES_SLOT) \
-DDISPINFO_GAMECODE=$(GAMECODE) \
-DDISPINFO_BANNERPATH=$(BANNARPATH)
DEFAULT_MAKEROM_ARM7_BASE = ../ARM7_$(DEFAULT_COMP_ARM7)/bin/$(TWL_BUILDTYPE_ARM7)/$(DEFAULT_COMP_ARM7)

View File

@ -19,23 +19,17 @@ TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED
######################################
#
# 分岐条件はここで設定
# セキュアアプリかどうか
IS_SECURE_APP = TRUE
# なんどアプリかどうか
IS_NAND_APP = TRUE
# SCFGをロックして見れなくするかどうか
INVISIBLE_SCFG = FALSE
#
FILE_IDX = 1
IS_SECURE_APP = FALSE
IS_NAND_APP = FALSE
NAND_ACCESS = TRUE
AES_SLOT = DONTCARE
INVISIBLE_SCFG = FALSE
GAMECODE = 0B1A
######################################
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP)
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP) -DDISPINFO_BIN_IDX=$(FILE_IDX)
TWL_NANDAPP = $(IS_NAND_APP)
DISP_INFO = $(call eupath,$(TWL_IPL_RED_ROOT)/build/tests/DisplaySystemInformation)
@ -47,11 +41,14 @@ SRCS = main.c viewSystemInfo.c drawFunc.c control.c\
strResource.c misc.c util.c\
get_versionData.c get_sysmenu.c get_scfg.c get_owner.c\
get_hw.c get_parental.c get_other.c\
get_secureUser.c get_font.c get_wl.c\
$(MISC_DIR)/src/cmn.c
LINCLUDES += $(MISC_DIR)/include \
$(DISP_INFO)/common/include
TARGET_BIN = DispInfo_$(FILE_IDX).$(FILE_SUFFIX)
SYSMENU_LIBS = \
liblcfg$(TWL_LIBSUFFIX).a \
libsysmenu$(TWL_LIBSUFFIX).a \
@ -78,7 +75,6 @@ SDK_APPEND_LIBS = \
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
TARGET_BIN = DisplaySystemInfo.srl
#=============================================================================
@ -91,6 +87,7 @@ ifeq ($(IS_SECURE_APP),TRUE)
APPTYPE = SYSTEM
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
ROM_SPEC = main_secure.rsf
MAKETAD_OPTION += -s
else
WRAM_MAP = $(MAKEROM_WRAM_MAPPING)
DEFAULT_COMP_ARM7 = racoon
@ -100,27 +97,33 @@ endif
ifeq ($(IS_NAND_APP),TRUE)
MEDIA = NAND
FILE_SUFFIX = tad
BANNARPATH = ../banner/$(GAMECODE).bnr
else
MEDIA = GAMECARD
FILE_SUFFIX = srl
BANNARPATH = $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
endif
ifeq ($(INVISIBLE_SCFG),TRUE)
SCFG_SUFFIX = LockSCFG
else
SCFG_SUFFIX = UnlockSCFG
endif
BINDIR = ./bin/$(TWL_BUILDTYPE)/$(APPTYPE)_$(MEDIA)_$(SCFG_SUFFIX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/$(APPTYPE)_$(MEDIA)_$(SCFG_SUFFIX)
BINDIR = ./bin/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
MAKEROM_FLAGS += -DDISPINFO_WRAM_MAP=$(WRAM_MAP) \
-DDISPINFO_APPTYPE=$(APPTYPE) \
-DDISPINFO_SECURE=$(IS_SECURE_APP) \
-DDISPINFO_MEDIA=$(MEDIA) \
-DDISPINFO_NANDACCESS=$(IS_NAND_APP) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG)
-DDISPINFO_NANDACCESS=$(NAND_ACCESS) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG) \
-DDISPINFO_AES=$(AES_SLOT) \
-DDISPINFO_GAMECODE=$(GAMECODE) \
-DDISPINFO_BANNERPATH=$(BANNARPATH)
DEFAULT_MAKEROM_ARM7_BASE = ../ARM7_$(DEFAULT_COMP_ARM7)/bin/$(TWL_BUILDTYPE_ARM7)/$(DEFAULT_COMP_ARM7)

View File

@ -0,0 +1,144 @@
#/*---------------------------------------------------------------------------*
# Project: TwlIPL - tests - DisplaySystemInformation
# File: makefile
#
# 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$
# *---------------------------------------------------------------------------*/
TARGET_FIRM = SYSTEMMENU
TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED
######################################
FILE_IDX = 10
IS_SECURE_APP = TRUE
IS_NAND_APP = FALSE
NAND_ACCESS = FALSE
AES_SLOT = TRUE
INVISIBLE_SCFG = TRUE
GAMECODE = 0B8A
######################################
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP) -DDISPINFO_BIN_IDX=$(FILE_IDX)
TWL_NANDAPP = $(IS_NAND_APP)
DISP_INFO = $(call eupath,$(TWL_IPL_RED_ROOT)/build/tests/DisplaySystemInformation)
SUBDIRS =
MISC_DIR = ../../../systemMenu_RED/misc
SRCS = main.c viewSystemInfo.c drawFunc.c control.c\
strResource.c misc.c util.c\
get_versionData.c get_sysmenu.c get_scfg.c get_owner.c\
get_hw.c get_parental.c get_other.c\
get_secureUser.c get_font.c get_wl.c\
$(MISC_DIR)/src/cmn.c
LINCLUDES += $(MISC_DIR)/include \
$(DISP_INFO)/common/include
TARGET_BIN = DispInfo_$(FILE_IDX).$(FILE_SUFFIX)
SYSMENU_LIBS = \
liblcfg$(TWL_LIBSUFFIX).a \
libsysmenu$(TWL_LIBSUFFIX).a \
libsysmmcu$(TWL_LIBSUFFIX).a \
libsysmutil$(TWL_LIBSUFFIX).a \
libboot$(TWL_LIBSUFFIX).a \
libds$(TWL_LIBSUFFIX).a \
libhotsw$(TWL_LIBSUFFIX).a \
libdht$(TWL_LIBSUFFIX).a \
libreloc_info$(TWL_LIBSUFFIX).a \
libnamut$(TWL_LIBSUFFIX).a \
libsharedfont_launcher$(TWL_LIBSUFFIX).a \
WDS$(TWL_LIBSUFFIX).a
SDK_APPEND_LIBS = \
libes$(TWL_LIBSUFFIX).a \
libboc$(TWL_LIBSUFFIX).a \
libsfs$(TWL_LIBSUFFIX).a \
libnam$(TWL_LIBSUFFIX).a \
libsea$(TWL_LIBSUFFIX).a \
libreboot$(TWL_LIBSUFFIX).a \
libna$(TWL_LIBSUFFIX).a
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
#=============================================================================
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
ifeq ($(IS_SECURE_APP),TRUE)
DEFAULT_COMP_ARM7 = armadillo
WRAM_MAP = MAP_TS_SCR
APPTYPE = SYSTEM
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
ROM_SPEC = main_secure.rsf
MAKETAD_OPTION += -s
else
WRAM_MAP = $(MAKEROM_WRAM_MAPPING)
DEFAULT_COMP_ARM7 = racoon
APPTYPE = USER
ROM_SPEC = main_normal.rsf
endif
ifeq ($(IS_NAND_APP),TRUE)
MEDIA = NAND
FILE_SUFFIX = tad
BANNARPATH = ../banner/$(GAMECODE).bnr
else
MEDIA = GAMECARD
FILE_SUFFIX = srl
BANNARPATH = $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
endif
ifeq ($(INVISIBLE_SCFG),TRUE)
SCFG_SUFFIX = LockSCFG
else
SCFG_SUFFIX = UnlockSCFG
endif
BINDIR = ./bin/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
MAKEROM_FLAGS += -DDISPINFO_WRAM_MAP=$(WRAM_MAP) \
-DDISPINFO_APPTYPE=$(APPTYPE) \
-DDISPINFO_SECURE=$(IS_SECURE_APP) \
-DDISPINFO_MEDIA=$(MEDIA) \
-DDISPINFO_NANDACCESS=$(NAND_ACCESS) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG) \
-DDISPINFO_AES=$(AES_SLOT) \
-DDISPINFO_GAMECODE=$(GAMECODE) \
-DDISPINFO_BANNERPATH=$(BANNARPATH)
DEFAULT_MAKEROM_ARM7_BASE = ../ARM7_$(DEFAULT_COMP_ARM7)/bin/$(TWL_BUILDTYPE_ARM7)/$(DEFAULT_COMP_ARM7)
DEFAULT_MAKEROM_ARM7 = $(DEFAULT_MAKEROM_ARM7_BASE).$(TWL_ELF_EXT)
#----------------------------------------------------------------------------
do-build: $(TARGETS)
#----------------------------------------------------------------------------
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
#include $(TWLSDK_ROOT)/build/buildtools/modulerules
#include $(TWL_IPL_RED_ROOT)/build/tests/RelocateChecker/buildtools/modulerules
#===== End of Makefile =====

View File

@ -0,0 +1,144 @@
#/*---------------------------------------------------------------------------*
# Project: TwlIPL - tests - DisplaySystemInformation
# File: makefile
#
# 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$
# *---------------------------------------------------------------------------*/
TARGET_FIRM = SYSTEMMENU
TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED
######################################
FILE_IDX = 11
IS_SECURE_APP = TRUE
IS_NAND_APP = FALSE
NAND_ACCESS = FALSE
AES_SLOT = TRUE
INVISIBLE_SCFG = FALSE
GAMECODE = 0B9A
######################################
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP) -DDISPINFO_BIN_IDX=$(FILE_IDX)
TWL_NANDAPP = $(IS_NAND_APP)
DISP_INFO = $(call eupath,$(TWL_IPL_RED_ROOT)/build/tests/DisplaySystemInformation)
SUBDIRS =
MISC_DIR = ../../../systemMenu_RED/misc
SRCS = main.c viewSystemInfo.c drawFunc.c control.c\
strResource.c misc.c util.c\
get_versionData.c get_sysmenu.c get_scfg.c get_owner.c\
get_hw.c get_parental.c get_other.c\
get_secureUser.c get_font.c get_wl.c\
$(MISC_DIR)/src/cmn.c
LINCLUDES += $(MISC_DIR)/include \
$(DISP_INFO)/common/include
TARGET_BIN = DispInfo_$(FILE_IDX).$(FILE_SUFFIX)
SYSMENU_LIBS = \
liblcfg$(TWL_LIBSUFFIX).a \
libsysmenu$(TWL_LIBSUFFIX).a \
libsysmmcu$(TWL_LIBSUFFIX).a \
libsysmutil$(TWL_LIBSUFFIX).a \
libboot$(TWL_LIBSUFFIX).a \
libds$(TWL_LIBSUFFIX).a \
libhotsw$(TWL_LIBSUFFIX).a \
libdht$(TWL_LIBSUFFIX).a \
libreloc_info$(TWL_LIBSUFFIX).a \
libnamut$(TWL_LIBSUFFIX).a \
libsharedfont_launcher$(TWL_LIBSUFFIX).a \
WDS$(TWL_LIBSUFFIX).a
SDK_APPEND_LIBS = \
libes$(TWL_LIBSUFFIX).a \
libboc$(TWL_LIBSUFFIX).a \
libsfs$(TWL_LIBSUFFIX).a \
libnam$(TWL_LIBSUFFIX).a \
libsea$(TWL_LIBSUFFIX).a \
libreboot$(TWL_LIBSUFFIX).a \
libna$(TWL_LIBSUFFIX).a
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
#=============================================================================
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
ifeq ($(IS_SECURE_APP),TRUE)
DEFAULT_COMP_ARM7 = armadillo
WRAM_MAP = MAP_TS_SCR
APPTYPE = SYSTEM
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
ROM_SPEC = main_secure.rsf
MAKETAD_OPTION += -s
else
WRAM_MAP = $(MAKEROM_WRAM_MAPPING)
DEFAULT_COMP_ARM7 = racoon
APPTYPE = USER
ROM_SPEC = main_normal.rsf
endif
ifeq ($(IS_NAND_APP),TRUE)
MEDIA = NAND
FILE_SUFFIX = tad
BANNARPATH = ../banner/$(GAMECODE).bnr
else
MEDIA = GAMECARD
FILE_SUFFIX = srl
BANNARPATH = $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
endif
ifeq ($(INVISIBLE_SCFG),TRUE)
SCFG_SUFFIX = LockSCFG
else
SCFG_SUFFIX = UnlockSCFG
endif
BINDIR = ./bin/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
MAKEROM_FLAGS += -DDISPINFO_WRAM_MAP=$(WRAM_MAP) \
-DDISPINFO_APPTYPE=$(APPTYPE) \
-DDISPINFO_SECURE=$(IS_SECURE_APP) \
-DDISPINFO_MEDIA=$(MEDIA) \
-DDISPINFO_NANDACCESS=$(NAND_ACCESS) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG) \
-DDISPINFO_AES=$(AES_SLOT) \
-DDISPINFO_GAMECODE=$(GAMECODE) \
-DDISPINFO_BANNERPATH=$(BANNARPATH)
DEFAULT_MAKEROM_ARM7_BASE = ../ARM7_$(DEFAULT_COMP_ARM7)/bin/$(TWL_BUILDTYPE_ARM7)/$(DEFAULT_COMP_ARM7)
DEFAULT_MAKEROM_ARM7 = $(DEFAULT_MAKEROM_ARM7_BASE).$(TWL_ELF_EXT)
#----------------------------------------------------------------------------
do-build: $(TARGETS)
#----------------------------------------------------------------------------
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
#include $(TWLSDK_ROOT)/build/buildtools/modulerules
#include $(TWL_IPL_RED_ROOT)/build/tests/RelocateChecker/buildtools/modulerules
#===== End of Makefile =====

View File

@ -0,0 +1,144 @@
#/*---------------------------------------------------------------------------*
# Project: TwlIPL - tests - DisplaySystemInformation
# File: makefile
#
# 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$
# *---------------------------------------------------------------------------*/
TARGET_FIRM = SYSTEMMENU
TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED
######################################
FILE_IDX = 12
IS_SECURE_APP = TRUE
IS_NAND_APP = FALSE
NAND_ACCESS = FALSE
AES_SLOT = FALSE
INVISIBLE_SCFG = TRUE
GAMECODE = 0BAA
######################################
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP) -DDISPINFO_BIN_IDX=$(FILE_IDX)
TWL_NANDAPP = $(IS_NAND_APP)
DISP_INFO = $(call eupath,$(TWL_IPL_RED_ROOT)/build/tests/DisplaySystemInformation)
SUBDIRS =
MISC_DIR = ../../../systemMenu_RED/misc
SRCS = main.c viewSystemInfo.c drawFunc.c control.c\
strResource.c misc.c util.c\
get_versionData.c get_sysmenu.c get_scfg.c get_owner.c\
get_hw.c get_parental.c get_other.c\
get_secureUser.c get_font.c get_wl.c\
$(MISC_DIR)/src/cmn.c
LINCLUDES += $(MISC_DIR)/include \
$(DISP_INFO)/common/include
TARGET_BIN = DispInfo_$(FILE_IDX).$(FILE_SUFFIX)
SYSMENU_LIBS = \
liblcfg$(TWL_LIBSUFFIX).a \
libsysmenu$(TWL_LIBSUFFIX).a \
libsysmmcu$(TWL_LIBSUFFIX).a \
libsysmutil$(TWL_LIBSUFFIX).a \
libboot$(TWL_LIBSUFFIX).a \
libds$(TWL_LIBSUFFIX).a \
libhotsw$(TWL_LIBSUFFIX).a \
libdht$(TWL_LIBSUFFIX).a \
libreloc_info$(TWL_LIBSUFFIX).a \
libnamut$(TWL_LIBSUFFIX).a \
libsharedfont_launcher$(TWL_LIBSUFFIX).a \
WDS$(TWL_LIBSUFFIX).a
SDK_APPEND_LIBS = \
libes$(TWL_LIBSUFFIX).a \
libboc$(TWL_LIBSUFFIX).a \
libsfs$(TWL_LIBSUFFIX).a \
libnam$(TWL_LIBSUFFIX).a \
libsea$(TWL_LIBSUFFIX).a \
libreboot$(TWL_LIBSUFFIX).a \
libna$(TWL_LIBSUFFIX).a
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
#=============================================================================
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
ifeq ($(IS_SECURE_APP),TRUE)
DEFAULT_COMP_ARM7 = armadillo
WRAM_MAP = MAP_TS_SCR
APPTYPE = SYSTEM
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
ROM_SPEC = main_secure.rsf
MAKETAD_OPTION += -s
else
WRAM_MAP = $(MAKEROM_WRAM_MAPPING)
DEFAULT_COMP_ARM7 = racoon
APPTYPE = USER
ROM_SPEC = main_normal.rsf
endif
ifeq ($(IS_NAND_APP),TRUE)
MEDIA = NAND
FILE_SUFFIX = tad
BANNARPATH = ../banner/$(GAMECODE).bnr
else
MEDIA = GAMECARD
FILE_SUFFIX = srl
BANNARPATH = $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
endif
ifeq ($(INVISIBLE_SCFG),TRUE)
SCFG_SUFFIX = LockSCFG
else
SCFG_SUFFIX = UnlockSCFG
endif
BINDIR = ./bin/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
MAKEROM_FLAGS += -DDISPINFO_WRAM_MAP=$(WRAM_MAP) \
-DDISPINFO_APPTYPE=$(APPTYPE) \
-DDISPINFO_SECURE=$(IS_SECURE_APP) \
-DDISPINFO_MEDIA=$(MEDIA) \
-DDISPINFO_NANDACCESS=$(NAND_ACCESS) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG) \
-DDISPINFO_AES=$(AES_SLOT) \
-DDISPINFO_GAMECODE=$(GAMECODE) \
-DDISPINFO_BANNERPATH=$(BANNARPATH)
DEFAULT_MAKEROM_ARM7_BASE = ../ARM7_$(DEFAULT_COMP_ARM7)/bin/$(TWL_BUILDTYPE_ARM7)/$(DEFAULT_COMP_ARM7)
DEFAULT_MAKEROM_ARM7 = $(DEFAULT_MAKEROM_ARM7_BASE).$(TWL_ELF_EXT)
#----------------------------------------------------------------------------
do-build: $(TARGETS)
#----------------------------------------------------------------------------
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
#include $(TWLSDK_ROOT)/build/buildtools/modulerules
#include $(TWL_IPL_RED_ROOT)/build/tests/RelocateChecker/buildtools/modulerules
#===== End of Makefile =====

View File

@ -0,0 +1,144 @@
#/*---------------------------------------------------------------------------*
# Project: TwlIPL - tests - DisplaySystemInformation
# File: makefile
#
# 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$
# *---------------------------------------------------------------------------*/
TARGET_FIRM = SYSTEMMENU
TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED
######################################
FILE_IDX = 13
IS_SECURE_APP = TRUE
IS_NAND_APP = FALSE
NAND_ACCESS = FALSE
AES_SLOT = FALSE
INVISIBLE_SCFG = FALSE
GAMECODE = 0BBA
######################################
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP) -DDISPINFO_BIN_IDX=$(FILE_IDX)
TWL_NANDAPP = $(IS_NAND_APP)
DISP_INFO = $(call eupath,$(TWL_IPL_RED_ROOT)/build/tests/DisplaySystemInformation)
SUBDIRS =
MISC_DIR = ../../../systemMenu_RED/misc
SRCS = main.c viewSystemInfo.c drawFunc.c control.c\
strResource.c misc.c util.c\
get_versionData.c get_sysmenu.c get_scfg.c get_owner.c\
get_hw.c get_parental.c get_other.c\
get_secureUser.c get_font.c get_wl.c\
$(MISC_DIR)/src/cmn.c
LINCLUDES += $(MISC_DIR)/include \
$(DISP_INFO)/common/include
TARGET_BIN = DispInfo_$(FILE_IDX).$(FILE_SUFFIX)
SYSMENU_LIBS = \
liblcfg$(TWL_LIBSUFFIX).a \
libsysmenu$(TWL_LIBSUFFIX).a \
libsysmmcu$(TWL_LIBSUFFIX).a \
libsysmutil$(TWL_LIBSUFFIX).a \
libboot$(TWL_LIBSUFFIX).a \
libds$(TWL_LIBSUFFIX).a \
libhotsw$(TWL_LIBSUFFIX).a \
libdht$(TWL_LIBSUFFIX).a \
libreloc_info$(TWL_LIBSUFFIX).a \
libnamut$(TWL_LIBSUFFIX).a \
libsharedfont_launcher$(TWL_LIBSUFFIX).a \
WDS$(TWL_LIBSUFFIX).a
SDK_APPEND_LIBS = \
libes$(TWL_LIBSUFFIX).a \
libboc$(TWL_LIBSUFFIX).a \
libsfs$(TWL_LIBSUFFIX).a \
libnam$(TWL_LIBSUFFIX).a \
libsea$(TWL_LIBSUFFIX).a \
libreboot$(TWL_LIBSUFFIX).a \
libna$(TWL_LIBSUFFIX).a
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
#=============================================================================
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
ifeq ($(IS_SECURE_APP),TRUE)
DEFAULT_COMP_ARM7 = armadillo
WRAM_MAP = MAP_TS_SCR
APPTYPE = SYSTEM
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
ROM_SPEC = main_secure.rsf
MAKETAD_OPTION += -s
else
WRAM_MAP = $(MAKEROM_WRAM_MAPPING)
DEFAULT_COMP_ARM7 = racoon
APPTYPE = USER
ROM_SPEC = main_normal.rsf
endif
ifeq ($(IS_NAND_APP),TRUE)
MEDIA = NAND
FILE_SUFFIX = tad
BANNARPATH = ../banner/$(GAMECODE).bnr
else
MEDIA = GAMECARD
FILE_SUFFIX = srl
BANNARPATH = $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
endif
ifeq ($(INVISIBLE_SCFG),TRUE)
SCFG_SUFFIX = LockSCFG
else
SCFG_SUFFIX = UnlockSCFG
endif
BINDIR = ./bin/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
MAKEROM_FLAGS += -DDISPINFO_WRAM_MAP=$(WRAM_MAP) \
-DDISPINFO_APPTYPE=$(APPTYPE) \
-DDISPINFO_SECURE=$(IS_SECURE_APP) \
-DDISPINFO_MEDIA=$(MEDIA) \
-DDISPINFO_NANDACCESS=$(NAND_ACCESS) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG) \
-DDISPINFO_AES=$(AES_SLOT) \
-DDISPINFO_GAMECODE=$(GAMECODE) \
-DDISPINFO_BANNERPATH=$(BANNARPATH)
DEFAULT_MAKEROM_ARM7_BASE = ../ARM7_$(DEFAULT_COMP_ARM7)/bin/$(TWL_BUILDTYPE_ARM7)/$(DEFAULT_COMP_ARM7)
DEFAULT_MAKEROM_ARM7 = $(DEFAULT_MAKEROM_ARM7_BASE).$(TWL_ELF_EXT)
#----------------------------------------------------------------------------
do-build: $(TARGETS)
#----------------------------------------------------------------------------
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
#include $(TWLSDK_ROOT)/build/buildtools/modulerules
#include $(TWL_IPL_RED_ROOT)/build/tests/RelocateChecker/buildtools/modulerules
#===== End of Makefile =====

View File

@ -0,0 +1,144 @@
#/*---------------------------------------------------------------------------*
# Project: TwlIPL - tests - DisplaySystemInformation
# File: makefile
#
# 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$
# *---------------------------------------------------------------------------*/
TARGET_FIRM = SYSTEMMENU
TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED
######################################
FILE_IDX = 14
IS_SECURE_APP = TRUE
IS_NAND_APP = TRUE
NAND_ACCESS = TRUE
AES_SLOT = TRUE
INVISIBLE_SCFG = TRUE
GAMECODE = 022A
######################################
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP) -DDISPINFO_BIN_IDX=$(FILE_IDX)
TWL_NANDAPP = $(IS_NAND_APP)
DISP_INFO = $(call eupath,$(TWL_IPL_RED_ROOT)/build/tests/DisplaySystemInformation)
SUBDIRS =
MISC_DIR = ../../../systemMenu_RED/misc
SRCS = main.c viewSystemInfo.c drawFunc.c control.c\
strResource.c misc.c util.c\
get_versionData.c get_sysmenu.c get_scfg.c get_owner.c\
get_hw.c get_parental.c get_other.c\
get_secureUser.c get_font.c get_wl.c\
$(MISC_DIR)/src/cmn.c
LINCLUDES += $(MISC_DIR)/include \
$(DISP_INFO)/common/include
TARGET_BIN = DispInfo_$(FILE_IDX).$(FILE_SUFFIX)
SYSMENU_LIBS = \
liblcfg$(TWL_LIBSUFFIX).a \
libsysmenu$(TWL_LIBSUFFIX).a \
libsysmmcu$(TWL_LIBSUFFIX).a \
libsysmutil$(TWL_LIBSUFFIX).a \
libboot$(TWL_LIBSUFFIX).a \
libds$(TWL_LIBSUFFIX).a \
libhotsw$(TWL_LIBSUFFIX).a \
libdht$(TWL_LIBSUFFIX).a \
libreloc_info$(TWL_LIBSUFFIX).a \
libnamut$(TWL_LIBSUFFIX).a \
libsharedfont_launcher$(TWL_LIBSUFFIX).a \
WDS$(TWL_LIBSUFFIX).a
SDK_APPEND_LIBS = \
libes$(TWL_LIBSUFFIX).a \
libboc$(TWL_LIBSUFFIX).a \
libsfs$(TWL_LIBSUFFIX).a \
libnam$(TWL_LIBSUFFIX).a \
libsea$(TWL_LIBSUFFIX).a \
libreboot$(TWL_LIBSUFFIX).a \
libna$(TWL_LIBSUFFIX).a
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
#=============================================================================
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
ifeq ($(IS_SECURE_APP),TRUE)
DEFAULT_COMP_ARM7 = armadillo
WRAM_MAP = MAP_TS_SCR
APPTYPE = SYSTEM
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
ROM_SPEC = main_secure.rsf
MAKETAD_OPTION += -s
else
WRAM_MAP = $(MAKEROM_WRAM_MAPPING)
DEFAULT_COMP_ARM7 = racoon
APPTYPE = USER
ROM_SPEC = main_normal.rsf
endif
ifeq ($(IS_NAND_APP),TRUE)
MEDIA = NAND
FILE_SUFFIX = tad
BANNARPATH = ../banner/$(GAMECODE).bnr
else
MEDIA = GAMECARD
FILE_SUFFIX = srl
BANNARPATH = $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
endif
ifeq ($(INVISIBLE_SCFG),TRUE)
SCFG_SUFFIX = LockSCFG
else
SCFG_SUFFIX = UnlockSCFG
endif
BINDIR = ./bin/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
MAKEROM_FLAGS += -DDISPINFO_WRAM_MAP=$(WRAM_MAP) \
-DDISPINFO_APPTYPE=$(APPTYPE) \
-DDISPINFO_SECURE=$(IS_SECURE_APP) \
-DDISPINFO_MEDIA=$(MEDIA) \
-DDISPINFO_NANDACCESS=$(NAND_ACCESS) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG) \
-DDISPINFO_AES=$(AES_SLOT) \
-DDISPINFO_GAMECODE=$(GAMECODE) \
-DDISPINFO_BANNERPATH=$(BANNARPATH)
DEFAULT_MAKEROM_ARM7_BASE = ../ARM7_$(DEFAULT_COMP_ARM7)/bin/$(TWL_BUILDTYPE_ARM7)/$(DEFAULT_COMP_ARM7)
DEFAULT_MAKEROM_ARM7 = $(DEFAULT_MAKEROM_ARM7_BASE).$(TWL_ELF_EXT)
#----------------------------------------------------------------------------
do-build: $(TARGETS)
#----------------------------------------------------------------------------
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
#include $(TWLSDK_ROOT)/build/buildtools/modulerules
#include $(TWL_IPL_RED_ROOT)/build/tests/RelocateChecker/buildtools/modulerules
#===== End of Makefile =====

View File

@ -0,0 +1,144 @@
#/*---------------------------------------------------------------------------*
# Project: TwlIPL - tests - DisplaySystemInformation
# File: makefile
#
# 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$
# *---------------------------------------------------------------------------*/
TARGET_FIRM = SYSTEMMENU
TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED
######################################
FILE_IDX = 15
IS_SECURE_APP = TRUE
IS_NAND_APP = TRUE
NAND_ACCESS = TRUE
AES_SLOT = TRUE
INVISIBLE_SCFG = FALSE
GAMECODE = 023A
######################################
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP) -DDISPINFO_BIN_IDX=$(FILE_IDX)
TWL_NANDAPP = $(IS_NAND_APP)
DISP_INFO = $(call eupath,$(TWL_IPL_RED_ROOT)/build/tests/DisplaySystemInformation)
SUBDIRS =
MISC_DIR = ../../../systemMenu_RED/misc
SRCS = main.c viewSystemInfo.c drawFunc.c control.c\
strResource.c misc.c util.c\
get_versionData.c get_sysmenu.c get_scfg.c get_owner.c\
get_hw.c get_parental.c get_other.c\
get_secureUser.c get_font.c get_wl.c\
$(MISC_DIR)/src/cmn.c
LINCLUDES += $(MISC_DIR)/include \
$(DISP_INFO)/common/include
TARGET_BIN = DispInfo_$(FILE_IDX).$(FILE_SUFFIX)
SYSMENU_LIBS = \
liblcfg$(TWL_LIBSUFFIX).a \
libsysmenu$(TWL_LIBSUFFIX).a \
libsysmmcu$(TWL_LIBSUFFIX).a \
libsysmutil$(TWL_LIBSUFFIX).a \
libboot$(TWL_LIBSUFFIX).a \
libds$(TWL_LIBSUFFIX).a \
libhotsw$(TWL_LIBSUFFIX).a \
libdht$(TWL_LIBSUFFIX).a \
libreloc_info$(TWL_LIBSUFFIX).a \
libnamut$(TWL_LIBSUFFIX).a \
libsharedfont_launcher$(TWL_LIBSUFFIX).a \
WDS$(TWL_LIBSUFFIX).a
SDK_APPEND_LIBS = \
libes$(TWL_LIBSUFFIX).a \
libboc$(TWL_LIBSUFFIX).a \
libsfs$(TWL_LIBSUFFIX).a \
libnam$(TWL_LIBSUFFIX).a \
libsea$(TWL_LIBSUFFIX).a \
libreboot$(TWL_LIBSUFFIX).a \
libna$(TWL_LIBSUFFIX).a
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
#=============================================================================
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
ifeq ($(IS_SECURE_APP),TRUE)
DEFAULT_COMP_ARM7 = armadillo
WRAM_MAP = MAP_TS_SCR
APPTYPE = SYSTEM
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
ROM_SPEC = main_secure.rsf
MAKETAD_OPTION += -s
else
WRAM_MAP = $(MAKEROM_WRAM_MAPPING)
DEFAULT_COMP_ARM7 = racoon
APPTYPE = USER
ROM_SPEC = main_normal.rsf
endif
ifeq ($(IS_NAND_APP),TRUE)
MEDIA = NAND
FILE_SUFFIX = tad
BANNARPATH = ../banner/$(GAMECODE).bnr
else
MEDIA = GAMECARD
FILE_SUFFIX = srl
BANNARPATH = $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
endif
ifeq ($(INVISIBLE_SCFG),TRUE)
SCFG_SUFFIX = LockSCFG
else
SCFG_SUFFIX = UnlockSCFG
endif
BINDIR = ./bin/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
MAKEROM_FLAGS += -DDISPINFO_WRAM_MAP=$(WRAM_MAP) \
-DDISPINFO_APPTYPE=$(APPTYPE) \
-DDISPINFO_SECURE=$(IS_SECURE_APP) \
-DDISPINFO_MEDIA=$(MEDIA) \
-DDISPINFO_NANDACCESS=$(NAND_ACCESS) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG) \
-DDISPINFO_AES=$(AES_SLOT) \
-DDISPINFO_GAMECODE=$(GAMECODE) \
-DDISPINFO_BANNERPATH=$(BANNARPATH)
DEFAULT_MAKEROM_ARM7_BASE = ../ARM7_$(DEFAULT_COMP_ARM7)/bin/$(TWL_BUILDTYPE_ARM7)/$(DEFAULT_COMP_ARM7)
DEFAULT_MAKEROM_ARM7 = $(DEFAULT_MAKEROM_ARM7_BASE).$(TWL_ELF_EXT)
#----------------------------------------------------------------------------
do-build: $(TARGETS)
#----------------------------------------------------------------------------
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
#include $(TWLSDK_ROOT)/build/buildtools/modulerules
#include $(TWL_IPL_RED_ROOT)/build/tests/RelocateChecker/buildtools/modulerules
#===== End of Makefile =====

View File

@ -0,0 +1,144 @@
#/*---------------------------------------------------------------------------*
# Project: TwlIPL - tests - DisplaySystemInformation
# File: makefile
#
# 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$
# *---------------------------------------------------------------------------*/
TARGET_FIRM = SYSTEMMENU
TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED
######################################
FILE_IDX = 16
IS_SECURE_APP = TRUE
IS_NAND_APP = TRUE
NAND_ACCESS = TRUE
AES_SLOT = FALSE
INVISIBLE_SCFG = TRUE
GAMECODE = 024A
######################################
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP) -DDISPINFO_BIN_IDX=$(FILE_IDX)
TWL_NANDAPP = $(IS_NAND_APP)
DISP_INFO = $(call eupath,$(TWL_IPL_RED_ROOT)/build/tests/DisplaySystemInformation)
SUBDIRS =
MISC_DIR = ../../../systemMenu_RED/misc
SRCS = main.c viewSystemInfo.c drawFunc.c control.c\
strResource.c misc.c util.c\
get_versionData.c get_sysmenu.c get_scfg.c get_owner.c\
get_hw.c get_parental.c get_other.c\
get_secureUser.c get_font.c get_wl.c\
$(MISC_DIR)/src/cmn.c
LINCLUDES += $(MISC_DIR)/include \
$(DISP_INFO)/common/include
TARGET_BIN = DispInfo_$(FILE_IDX).$(FILE_SUFFIX)
SYSMENU_LIBS = \
liblcfg$(TWL_LIBSUFFIX).a \
libsysmenu$(TWL_LIBSUFFIX).a \
libsysmmcu$(TWL_LIBSUFFIX).a \
libsysmutil$(TWL_LIBSUFFIX).a \
libboot$(TWL_LIBSUFFIX).a \
libds$(TWL_LIBSUFFIX).a \
libhotsw$(TWL_LIBSUFFIX).a \
libdht$(TWL_LIBSUFFIX).a \
libreloc_info$(TWL_LIBSUFFIX).a \
libnamut$(TWL_LIBSUFFIX).a \
libsharedfont_launcher$(TWL_LIBSUFFIX).a \
WDS$(TWL_LIBSUFFIX).a
SDK_APPEND_LIBS = \
libes$(TWL_LIBSUFFIX).a \
libboc$(TWL_LIBSUFFIX).a \
libsfs$(TWL_LIBSUFFIX).a \
libnam$(TWL_LIBSUFFIX).a \
libsea$(TWL_LIBSUFFIX).a \
libreboot$(TWL_LIBSUFFIX).a \
libna$(TWL_LIBSUFFIX).a
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
#=============================================================================
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
ifeq ($(IS_SECURE_APP),TRUE)
DEFAULT_COMP_ARM7 = armadillo
WRAM_MAP = MAP_TS_SCR
APPTYPE = SYSTEM
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
ROM_SPEC = main_secure.rsf
MAKETAD_OPTION += -s
else
WRAM_MAP = $(MAKEROM_WRAM_MAPPING)
DEFAULT_COMP_ARM7 = racoon
APPTYPE = USER
ROM_SPEC = main_normal.rsf
endif
ifeq ($(IS_NAND_APP),TRUE)
MEDIA = NAND
FILE_SUFFIX = tad
BANNARPATH = ../banner/$(GAMECODE).bnr
else
MEDIA = GAMECARD
FILE_SUFFIX = srl
BANNARPATH = $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
endif
ifeq ($(INVISIBLE_SCFG),TRUE)
SCFG_SUFFIX = LockSCFG
else
SCFG_SUFFIX = UnlockSCFG
endif
BINDIR = ./bin/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
MAKEROM_FLAGS += -DDISPINFO_WRAM_MAP=$(WRAM_MAP) \
-DDISPINFO_APPTYPE=$(APPTYPE) \
-DDISPINFO_SECURE=$(IS_SECURE_APP) \
-DDISPINFO_MEDIA=$(MEDIA) \
-DDISPINFO_NANDACCESS=$(NAND_ACCESS) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG) \
-DDISPINFO_AES=$(AES_SLOT) \
-DDISPINFO_GAMECODE=$(GAMECODE) \
-DDISPINFO_BANNERPATH=$(BANNARPATH)
DEFAULT_MAKEROM_ARM7_BASE = ../ARM7_$(DEFAULT_COMP_ARM7)/bin/$(TWL_BUILDTYPE_ARM7)/$(DEFAULT_COMP_ARM7)
DEFAULT_MAKEROM_ARM7 = $(DEFAULT_MAKEROM_ARM7_BASE).$(TWL_ELF_EXT)
#----------------------------------------------------------------------------
do-build: $(TARGETS)
#----------------------------------------------------------------------------
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
#include $(TWLSDK_ROOT)/build/buildtools/modulerules
#include $(TWL_IPL_RED_ROOT)/build/tests/RelocateChecker/buildtools/modulerules
#===== End of Makefile =====

View File

@ -0,0 +1,144 @@
#/*---------------------------------------------------------------------------*
# Project: TwlIPL - tests - DisplaySystemInformation
# File: makefile
#
# 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$
# *---------------------------------------------------------------------------*/
TARGET_FIRM = SYSTEMMENU
TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED
######################################
FILE_IDX = 17
IS_SECURE_APP = TRUE
IS_NAND_APP = TRUE
NAND_ACCESS = TRUE
AES_SLOT = FALSE
INVISIBLE_SCFG = FALSE
GAMECODE = 025A
######################################
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP) -DDISPINFO_BIN_IDX=$(FILE_IDX)
TWL_NANDAPP = $(IS_NAND_APP)
DISP_INFO = $(call eupath,$(TWL_IPL_RED_ROOT)/build/tests/DisplaySystemInformation)
SUBDIRS =
MISC_DIR = ../../../systemMenu_RED/misc
SRCS = main.c viewSystemInfo.c drawFunc.c control.c\
strResource.c misc.c util.c\
get_versionData.c get_sysmenu.c get_scfg.c get_owner.c\
get_hw.c get_parental.c get_other.c\
get_secureUser.c get_font.c get_wl.c\
$(MISC_DIR)/src/cmn.c
LINCLUDES += $(MISC_DIR)/include \
$(DISP_INFO)/common/include
TARGET_BIN = DispInfo_$(FILE_IDX).$(FILE_SUFFIX)
SYSMENU_LIBS = \
liblcfg$(TWL_LIBSUFFIX).a \
libsysmenu$(TWL_LIBSUFFIX).a \
libsysmmcu$(TWL_LIBSUFFIX).a \
libsysmutil$(TWL_LIBSUFFIX).a \
libboot$(TWL_LIBSUFFIX).a \
libds$(TWL_LIBSUFFIX).a \
libhotsw$(TWL_LIBSUFFIX).a \
libdht$(TWL_LIBSUFFIX).a \
libreloc_info$(TWL_LIBSUFFIX).a \
libnamut$(TWL_LIBSUFFIX).a \
libsharedfont_launcher$(TWL_LIBSUFFIX).a \
WDS$(TWL_LIBSUFFIX).a
SDK_APPEND_LIBS = \
libes$(TWL_LIBSUFFIX).a \
libboc$(TWL_LIBSUFFIX).a \
libsfs$(TWL_LIBSUFFIX).a \
libnam$(TWL_LIBSUFFIX).a \
libsea$(TWL_LIBSUFFIX).a \
libreboot$(TWL_LIBSUFFIX).a \
libna$(TWL_LIBSUFFIX).a
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
#=============================================================================
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
ifeq ($(IS_SECURE_APP),TRUE)
DEFAULT_COMP_ARM7 = armadillo
WRAM_MAP = MAP_TS_SCR
APPTYPE = SYSTEM
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
ROM_SPEC = main_secure.rsf
MAKETAD_OPTION += -s
else
WRAM_MAP = $(MAKEROM_WRAM_MAPPING)
DEFAULT_COMP_ARM7 = racoon
APPTYPE = USER
ROM_SPEC = main_normal.rsf
endif
ifeq ($(IS_NAND_APP),TRUE)
MEDIA = NAND
FILE_SUFFIX = tad
BANNARPATH = ../banner/$(GAMECODE).bnr
else
MEDIA = GAMECARD
FILE_SUFFIX = srl
BANNARPATH = $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
endif
ifeq ($(INVISIBLE_SCFG),TRUE)
SCFG_SUFFIX = LockSCFG
else
SCFG_SUFFIX = UnlockSCFG
endif
BINDIR = ./bin/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
MAKEROM_FLAGS += -DDISPINFO_WRAM_MAP=$(WRAM_MAP) \
-DDISPINFO_APPTYPE=$(APPTYPE) \
-DDISPINFO_SECURE=$(IS_SECURE_APP) \
-DDISPINFO_MEDIA=$(MEDIA) \
-DDISPINFO_NANDACCESS=$(NAND_ACCESS) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG) \
-DDISPINFO_AES=$(AES_SLOT) \
-DDISPINFO_GAMECODE=$(GAMECODE) \
-DDISPINFO_BANNERPATH=$(BANNARPATH)
DEFAULT_MAKEROM_ARM7_BASE = ../ARM7_$(DEFAULT_COMP_ARM7)/bin/$(TWL_BUILDTYPE_ARM7)/$(DEFAULT_COMP_ARM7)
DEFAULT_MAKEROM_ARM7 = $(DEFAULT_MAKEROM_ARM7_BASE).$(TWL_ELF_EXT)
#----------------------------------------------------------------------------
do-build: $(TARGETS)
#----------------------------------------------------------------------------
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
#include $(TWLSDK_ROOT)/build/buildtools/modulerules
#include $(TWL_IPL_RED_ROOT)/build/tests/RelocateChecker/buildtools/modulerules
#===== End of Makefile =====

View File

@ -19,23 +19,17 @@ TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED
######################################
#
# 分岐条件はここで設定
# セキュアアプリかどうか
IS_SECURE_APP = TRUE
# なんどアプリかどうか
IS_NAND_APP = FALSE
# SCFGをロックして見れなくするかどうか
INVISIBLE_SCFG = TRUE
#
FILE_IDX = 2
IS_SECURE_APP = FALSE
IS_NAND_APP = FALSE
NAND_ACCESS = FALSE
AES_SLOT = DONTCARE
INVISIBLE_SCFG = TRUE
GAMECODE = 0B2A
######################################
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP)
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP) -DDISPINFO_BIN_IDX=$(FILE_IDX)
TWL_NANDAPP = $(IS_NAND_APP)
DISP_INFO = $(call eupath,$(TWL_IPL_RED_ROOT)/build/tests/DisplaySystemInformation)
@ -47,11 +41,14 @@ SRCS = main.c viewSystemInfo.c drawFunc.c control.c\
strResource.c misc.c util.c\
get_versionData.c get_sysmenu.c get_scfg.c get_owner.c\
get_hw.c get_parental.c get_other.c\
get_secureUser.c get_font.c get_wl.c\
$(MISC_DIR)/src/cmn.c
LINCLUDES += $(MISC_DIR)/include \
$(DISP_INFO)/common/include
TARGET_BIN = DispInfo_$(FILE_IDX).$(FILE_SUFFIX)
SYSMENU_LIBS = \
liblcfg$(TWL_LIBSUFFIX).a \
libsysmenu$(TWL_LIBSUFFIX).a \
@ -78,7 +75,6 @@ SDK_APPEND_LIBS = \
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
TARGET_BIN = DisplaySystemInfo.srl
#=============================================================================
@ -91,6 +87,7 @@ ifeq ($(IS_SECURE_APP),TRUE)
APPTYPE = SYSTEM
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
ROM_SPEC = main_secure.rsf
MAKETAD_OPTION += -s
else
WRAM_MAP = $(MAKEROM_WRAM_MAPPING)
DEFAULT_COMP_ARM7 = racoon
@ -100,27 +97,33 @@ endif
ifeq ($(IS_NAND_APP),TRUE)
MEDIA = NAND
FILE_SUFFIX = tad
BANNARPATH = ../banner/$(GAMECODE).bnr
else
MEDIA = GAMECARD
FILE_SUFFIX = srl
BANNARPATH = $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
endif
ifeq ($(INVISIBLE_SCFG),TRUE)
SCFG_SUFFIX = LockSCFG
else
SCFG_SUFFIX = UnlockSCFG
endif
BINDIR = ./bin/$(TWL_BUILDTYPE)/$(APPTYPE)_$(MEDIA)_$(SCFG_SUFFIX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/$(APPTYPE)_$(MEDIA)_$(SCFG_SUFFIX)
BINDIR = ./bin/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
MAKEROM_FLAGS += -DDISPINFO_WRAM_MAP=$(WRAM_MAP) \
-DDISPINFO_APPTYPE=$(APPTYPE) \
-DDISPINFO_SECURE=$(IS_SECURE_APP) \
-DDISPINFO_MEDIA=$(MEDIA) \
-DDISPINFO_NANDACCESS=$(IS_NAND_APP) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG)
-DDISPINFO_NANDACCESS=$(NAND_ACCESS) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG) \
-DDISPINFO_AES=$(AES_SLOT) \
-DDISPINFO_GAMECODE=$(GAMECODE) \
-DDISPINFO_BANNERPATH=$(BANNARPATH)
DEFAULT_MAKEROM_ARM7_BASE = ../ARM7_$(DEFAULT_COMP_ARM7)/bin/$(TWL_BUILDTYPE_ARM7)/$(DEFAULT_COMP_ARM7)

View File

@ -19,23 +19,17 @@ TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED
######################################
#
# 分岐条件はここで設定
# セキュアアプリかどうか
IS_SECURE_APP = TRUE
# なんどアプリかどうか
IS_NAND_APP = FALSE
# SCFGをロックして見れなくするかどうか
INVISIBLE_SCFG = FALSE
#
FILE_IDX = 3
IS_SECURE_APP = FALSE
IS_NAND_APP = FALSE
NAND_ACCESS = FALSE
AES_SLOT = DONTCARE
INVISIBLE_SCFG = FALSE
GAMECODE = 0B3A
######################################
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP)
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP) -DDISPINFO_BIN_IDX=$(FILE_IDX)
TWL_NANDAPP = $(IS_NAND_APP)
DISP_INFO = $(call eupath,$(TWL_IPL_RED_ROOT)/build/tests/DisplaySystemInformation)
@ -47,11 +41,14 @@ SRCS = main.c viewSystemInfo.c drawFunc.c control.c\
strResource.c misc.c util.c\
get_versionData.c get_sysmenu.c get_scfg.c get_owner.c\
get_hw.c get_parental.c get_other.c\
get_secureUser.c get_font.c get_wl.c\
$(MISC_DIR)/src/cmn.c
LINCLUDES += $(MISC_DIR)/include \
$(DISP_INFO)/common/include
TARGET_BIN = DispInfo_$(FILE_IDX).$(FILE_SUFFIX)
SYSMENU_LIBS = \
liblcfg$(TWL_LIBSUFFIX).a \
libsysmenu$(TWL_LIBSUFFIX).a \
@ -78,7 +75,6 @@ SDK_APPEND_LIBS = \
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
TARGET_BIN = DisplaySystemInfo.srl
#=============================================================================
@ -91,6 +87,7 @@ ifeq ($(IS_SECURE_APP),TRUE)
APPTYPE = SYSTEM
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
ROM_SPEC = main_secure.rsf
MAKETAD_OPTION += -s
else
WRAM_MAP = $(MAKEROM_WRAM_MAPPING)
DEFAULT_COMP_ARM7 = racoon
@ -100,27 +97,33 @@ endif
ifeq ($(IS_NAND_APP),TRUE)
MEDIA = NAND
FILE_SUFFIX = tad
BANNARPATH = ../banner/$(GAMECODE).bnr
else
MEDIA = GAMECARD
FILE_SUFFIX = srl
BANNARPATH = $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
endif
ifeq ($(INVISIBLE_SCFG),TRUE)
SCFG_SUFFIX = LockSCFG
else
SCFG_SUFFIX = UnlockSCFG
endif
BINDIR = ./bin/$(TWL_BUILDTYPE)/$(APPTYPE)_$(MEDIA)_$(SCFG_SUFFIX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/$(APPTYPE)_$(MEDIA)_$(SCFG_SUFFIX)
BINDIR = ./bin/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
MAKEROM_FLAGS += -DDISPINFO_WRAM_MAP=$(WRAM_MAP) \
-DDISPINFO_APPTYPE=$(APPTYPE) \
-DDISPINFO_SECURE=$(IS_SECURE_APP) \
-DDISPINFO_MEDIA=$(MEDIA) \
-DDISPINFO_NANDACCESS=$(IS_NAND_APP) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG)
-DDISPINFO_NANDACCESS=$(NAND_ACCESS) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG) \
-DDISPINFO_AES=$(AES_SLOT) \
-DDISPINFO_GAMECODE=$(GAMECODE) \
-DDISPINFO_BANNERPATH=$(BANNARPATH)
DEFAULT_MAKEROM_ARM7_BASE = ../ARM7_$(DEFAULT_COMP_ARM7)/bin/$(TWL_BUILDTYPE_ARM7)/$(DEFAULT_COMP_ARM7)

View File

@ -19,23 +19,17 @@ TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED
######################################
#
# 分岐条件はここで設定
# セキュアアプリかどうか
IS_SECURE_APP = FALSE
# なんどアプリかどうか
IS_NAND_APP = TRUE
# SCFGをロックして見れなくするかどうか
INVISIBLE_SCFG = TRUE
#
FILE_IDX = 4
IS_SECURE_APP = FALSE
IS_NAND_APP = TRUE
NAND_ACCESS = TRUE
AES_SLOT = DONTCARE
INVISIBLE_SCFG = TRUE
GAMECODE = 020A
######################################
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP)
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP) -DDISPINFO_BIN_IDX=$(FILE_IDX)
TWL_NANDAPP = $(IS_NAND_APP)
DISP_INFO = $(call eupath,$(TWL_IPL_RED_ROOT)/build/tests/DisplaySystemInformation)
@ -47,11 +41,14 @@ SRCS = main.c viewSystemInfo.c drawFunc.c control.c\
strResource.c misc.c util.c\
get_versionData.c get_sysmenu.c get_scfg.c get_owner.c\
get_hw.c get_parental.c get_other.c\
get_secureUser.c get_font.c get_wl.c\
$(MISC_DIR)/src/cmn.c
LINCLUDES += $(MISC_DIR)/include \
$(DISP_INFO)/common/include
TARGET_BIN = DispInfo_$(FILE_IDX).$(FILE_SUFFIX)
SYSMENU_LIBS = \
liblcfg$(TWL_LIBSUFFIX).a \
libsysmenu$(TWL_LIBSUFFIX).a \
@ -78,7 +75,6 @@ SDK_APPEND_LIBS = \
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
TARGET_BIN = DisplaySystemInfo.srl
#=============================================================================
@ -91,6 +87,7 @@ ifeq ($(IS_SECURE_APP),TRUE)
APPTYPE = SYSTEM
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
ROM_SPEC = main_secure.rsf
MAKETAD_OPTION += -s
else
WRAM_MAP = $(MAKEROM_WRAM_MAPPING)
DEFAULT_COMP_ARM7 = racoon
@ -100,27 +97,33 @@ endif
ifeq ($(IS_NAND_APP),TRUE)
MEDIA = NAND
FILE_SUFFIX = tad
BANNARPATH = ../banner/$(GAMECODE).bnr
else
MEDIA = GAMECARD
FILE_SUFFIX = srl
BANNARPATH = $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
endif
ifeq ($(INVISIBLE_SCFG),TRUE)
SCFG_SUFFIX = LockSCFG
else
SCFG_SUFFIX = UnlockSCFG
endif
BINDIR = ./bin/$(TWL_BUILDTYPE)/$(APPTYPE)_$(MEDIA)_$(SCFG_SUFFIX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/$(APPTYPE)_$(MEDIA)_$(SCFG_SUFFIX)
BINDIR = ./bin/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
MAKEROM_FLAGS += -DDISPINFO_WRAM_MAP=$(WRAM_MAP) \
-DDISPINFO_APPTYPE=$(APPTYPE) \
-DDISPINFO_SECURE=$(IS_SECURE_APP) \
-DDISPINFO_MEDIA=$(MEDIA) \
-DDISPINFO_NANDACCESS=$(IS_NAND_APP) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG)
-DDISPINFO_NANDACCESS=$(NAND_ACCESS) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG) \
-DDISPINFO_AES=$(AES_SLOT) \
-DDISPINFO_GAMECODE=$(GAMECODE) \
-DDISPINFO_BANNERPATH=$(BANNARPATH)
DEFAULT_MAKEROM_ARM7_BASE = ../ARM7_$(DEFAULT_COMP_ARM7)/bin/$(TWL_BUILDTYPE_ARM7)/$(DEFAULT_COMP_ARM7)

View File

@ -19,23 +19,17 @@ TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED
######################################
#
# 分岐条件はここで設定
# セキュアアプリかどうか
IS_SECURE_APP = FALSE
# なんどアプリかどうか
IS_NAND_APP = TRUE
# SCFGをロックして見れなくするかどうか
INVISIBLE_SCFG = FALSE
#
FILE_IDX = 5
IS_SECURE_APP = FALSE
IS_NAND_APP = TRUE
NAND_ACCESS = TRUE
AES_SLOT = DONTCARE
INVISIBLE_SCFG = FALSE
GAMECODE = 021A
######################################
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP)
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP) -DDISPINFO_BIN_IDX=$(FILE_IDX)
TWL_NANDAPP = $(IS_NAND_APP)
DISP_INFO = $(call eupath,$(TWL_IPL_RED_ROOT)/build/tests/DisplaySystemInformation)
@ -47,11 +41,14 @@ SRCS = main.c viewSystemInfo.c drawFunc.c control.c\
strResource.c misc.c util.c\
get_versionData.c get_sysmenu.c get_scfg.c get_owner.c\
get_hw.c get_parental.c get_other.c\
get_secureUser.c get_font.c get_wl.c\
$(MISC_DIR)/src/cmn.c
LINCLUDES += $(MISC_DIR)/include \
$(DISP_INFO)/common/include
TARGET_BIN = DispInfo_$(FILE_IDX).$(FILE_SUFFIX)
SYSMENU_LIBS = \
liblcfg$(TWL_LIBSUFFIX).a \
libsysmenu$(TWL_LIBSUFFIX).a \
@ -78,7 +75,6 @@ SDK_APPEND_LIBS = \
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
TARGET_BIN = DisplaySystemInfo.srl
#=============================================================================
@ -91,6 +87,7 @@ ifeq ($(IS_SECURE_APP),TRUE)
APPTYPE = SYSTEM
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
ROM_SPEC = main_secure.rsf
MAKETAD_OPTION += -s
else
WRAM_MAP = $(MAKEROM_WRAM_MAPPING)
DEFAULT_COMP_ARM7 = racoon
@ -100,27 +97,33 @@ endif
ifeq ($(IS_NAND_APP),TRUE)
MEDIA = NAND
FILE_SUFFIX = tad
BANNARPATH = ../banner/$(GAMECODE).bnr
else
MEDIA = GAMECARD
FILE_SUFFIX = srl
BANNARPATH = $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
endif
ifeq ($(INVISIBLE_SCFG),TRUE)
SCFG_SUFFIX = LockSCFG
else
SCFG_SUFFIX = UnlockSCFG
endif
BINDIR = ./bin/$(TWL_BUILDTYPE)/$(APPTYPE)_$(MEDIA)_$(SCFG_SUFFIX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/$(APPTYPE)_$(MEDIA)_$(SCFG_SUFFIX)
BINDIR = ./bin/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
MAKEROM_FLAGS += -DDISPINFO_WRAM_MAP=$(WRAM_MAP) \
-DDISPINFO_APPTYPE=$(APPTYPE) \
-DDISPINFO_SECURE=$(IS_SECURE_APP) \
-DDISPINFO_MEDIA=$(MEDIA) \
-DDISPINFO_NANDACCESS=$(IS_NAND_APP) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG)
-DDISPINFO_NANDACCESS=$(NAND_ACCESS) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG) \
-DDISPINFO_AES=$(AES_SLOT) \
-DDISPINFO_GAMECODE=$(GAMECODE) \
-DDISPINFO_BANNERPATH=$(BANNARPATH)
DEFAULT_MAKEROM_ARM7_BASE = ../ARM7_$(DEFAULT_COMP_ARM7)/bin/$(TWL_BUILDTYPE_ARM7)/$(DEFAULT_COMP_ARM7)

View File

@ -19,23 +19,17 @@ TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED
######################################
#
# 分岐条件はここで設定
# セキュアアプリかどうか
IS_SECURE_APP = FALSE
# なんどアプリかどうか
IS_NAND_APP = FALSE
# SCFGをロックして見れなくするかどうか
INVISIBLE_SCFG = TRUE
#
FILE_IDX = 6
IS_SECURE_APP = TRUE
IS_NAND_APP = FALSE
NAND_ACCESS = TRUE
AES_SLOT = TRUE
INVISIBLE_SCFG = TRUE
GAMECODE = 0B4A
######################################
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP)
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP) -DDISPINFO_BIN_IDX=$(FILE_IDX)
TWL_NANDAPP = $(IS_NAND_APP)
DISP_INFO = $(call eupath,$(TWL_IPL_RED_ROOT)/build/tests/DisplaySystemInformation)
@ -47,11 +41,14 @@ SRCS = main.c viewSystemInfo.c drawFunc.c control.c\
strResource.c misc.c util.c\
get_versionData.c get_sysmenu.c get_scfg.c get_owner.c\
get_hw.c get_parental.c get_other.c\
get_secureUser.c get_font.c get_wl.c\
$(MISC_DIR)/src/cmn.c
LINCLUDES += $(MISC_DIR)/include \
$(DISP_INFO)/common/include
TARGET_BIN = DispInfo_$(FILE_IDX).$(FILE_SUFFIX)
SYSMENU_LIBS = \
liblcfg$(TWL_LIBSUFFIX).a \
libsysmenu$(TWL_LIBSUFFIX).a \
@ -78,7 +75,6 @@ SDK_APPEND_LIBS = \
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
TARGET_BIN = DisplaySystemInfo.srl
#=============================================================================
@ -91,6 +87,7 @@ ifeq ($(IS_SECURE_APP),TRUE)
APPTYPE = SYSTEM
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
ROM_SPEC = main_secure.rsf
MAKETAD_OPTION += -s
else
WRAM_MAP = $(MAKEROM_WRAM_MAPPING)
DEFAULT_COMP_ARM7 = racoon
@ -100,27 +97,33 @@ endif
ifeq ($(IS_NAND_APP),TRUE)
MEDIA = NAND
FILE_SUFFIX = tad
BANNARPATH = ../banner/$(GAMECODE).bnr
else
MEDIA = GAMECARD
FILE_SUFFIX = srl
BANNARPATH = $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
endif
ifeq ($(INVISIBLE_SCFG),TRUE)
SCFG_SUFFIX = LockSCFG
else
SCFG_SUFFIX = UnlockSCFG
endif
BINDIR = ./bin/$(TWL_BUILDTYPE)/$(APPTYPE)_$(MEDIA)_$(SCFG_SUFFIX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/$(APPTYPE)_$(MEDIA)_$(SCFG_SUFFIX)
BINDIR = ./bin/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
MAKEROM_FLAGS += -DDISPINFO_WRAM_MAP=$(WRAM_MAP) \
-DDISPINFO_APPTYPE=$(APPTYPE) \
-DDISPINFO_SECURE=$(IS_SECURE_APP) \
-DDISPINFO_MEDIA=$(MEDIA) \
-DDISPINFO_NANDACCESS=$(IS_NAND_APP) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG)
-DDISPINFO_NANDACCESS=$(NAND_ACCESS) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG) \
-DDISPINFO_AES=$(AES_SLOT) \
-DDISPINFO_GAMECODE=$(GAMECODE) \
-DDISPINFO_BANNERPATH=$(BANNARPATH)
DEFAULT_MAKEROM_ARM7_BASE = ../ARM7_$(DEFAULT_COMP_ARM7)/bin/$(TWL_BUILDTYPE_ARM7)/$(DEFAULT_COMP_ARM7)

View File

@ -19,23 +19,17 @@ TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED
######################################
#
# 分岐条件はここで設定
# セキュアアプリかどうか
IS_SECURE_APP = FALSE
# なんどアプリかどうか
IS_NAND_APP = FALSE
# SCFGをロックして見れなくするかどうか
INVISIBLE_SCFG = FALSE
#
FILE_IDX = 7
IS_SECURE_APP = TRUE
IS_NAND_APP = FALSE
NAND_ACCESS = TRUE
AES_SLOT = TRUE
INVISIBLE_SCFG = FALSE
GAMECODE = 0B5A
######################################
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP)
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP) -DDISPINFO_BIN_IDX=$(FILE_IDX)
TWL_NANDAPP = $(IS_NAND_APP)
DISP_INFO = $(call eupath,$(TWL_IPL_RED_ROOT)/build/tests/DisplaySystemInformation)
@ -47,11 +41,14 @@ SRCS = main.c viewSystemInfo.c drawFunc.c control.c\
strResource.c misc.c util.c\
get_versionData.c get_sysmenu.c get_scfg.c get_owner.c\
get_hw.c get_parental.c get_other.c\
get_secureUser.c get_font.c get_wl.c\
$(MISC_DIR)/src/cmn.c
LINCLUDES += $(MISC_DIR)/include \
$(DISP_INFO)/common/include
TARGET_BIN = DispInfo_$(FILE_IDX).$(FILE_SUFFIX)
SYSMENU_LIBS = \
liblcfg$(TWL_LIBSUFFIX).a \
libsysmenu$(TWL_LIBSUFFIX).a \
@ -78,7 +75,6 @@ SDK_APPEND_LIBS = \
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
TARGET_BIN = DisplaySystemInfo.srl
#=============================================================================
@ -91,6 +87,7 @@ ifeq ($(IS_SECURE_APP),TRUE)
APPTYPE = SYSTEM
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
ROM_SPEC = main_secure.rsf
MAKETAD_OPTION += -s
else
WRAM_MAP = $(MAKEROM_WRAM_MAPPING)
DEFAULT_COMP_ARM7 = racoon
@ -100,27 +97,33 @@ endif
ifeq ($(IS_NAND_APP),TRUE)
MEDIA = NAND
FILE_SUFFIX = tad
BANNARPATH = ../banner/$(GAMECODE).bnr
else
MEDIA = GAMECARD
FILE_SUFFIX = srl
BANNARPATH = $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
endif
ifeq ($(INVISIBLE_SCFG),TRUE)
SCFG_SUFFIX = LockSCFG
else
SCFG_SUFFIX = UnlockSCFG
endif
BINDIR = ./bin/$(TWL_BUILDTYPE)/$(APPTYPE)_$(MEDIA)_$(SCFG_SUFFIX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/$(APPTYPE)_$(MEDIA)_$(SCFG_SUFFIX)
BINDIR = ./bin/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
MAKEROM_FLAGS += -DDISPINFO_WRAM_MAP=$(WRAM_MAP) \
-DDISPINFO_APPTYPE=$(APPTYPE) \
-DDISPINFO_SECURE=$(IS_SECURE_APP) \
-DDISPINFO_MEDIA=$(MEDIA) \
-DDISPINFO_NANDACCESS=$(IS_NAND_APP) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG)
-DDISPINFO_NANDACCESS=$(NAND_ACCESS) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG) \
-DDISPINFO_AES=$(AES_SLOT) \
-DDISPINFO_GAMECODE=$(GAMECODE) \
-DDISPINFO_BANNERPATH=$(BANNARPATH)
DEFAULT_MAKEROM_ARM7_BASE = ../ARM7_$(DEFAULT_COMP_ARM7)/bin/$(TWL_BUILDTYPE_ARM7)/$(DEFAULT_COMP_ARM7)

View File

@ -0,0 +1,144 @@
#/*---------------------------------------------------------------------------*
# Project: TwlIPL - tests - DisplaySystemInformation
# File: makefile
#
# 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$
# *---------------------------------------------------------------------------*/
TARGET_FIRM = SYSTEMMENU
TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED
######################################
FILE_IDX = 8
IS_SECURE_APP = TRUE
IS_NAND_APP = FALSE
NAND_ACCESS = TRUE
AES_SLOT = FALSE
INVISIBLE_SCFG = TRUE
GAMECODE = 0B6A
######################################
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP) -DDISPINFO_BIN_IDX=$(FILE_IDX)
TWL_NANDAPP = $(IS_NAND_APP)
DISP_INFO = $(call eupath,$(TWL_IPL_RED_ROOT)/build/tests/DisplaySystemInformation)
SUBDIRS =
MISC_DIR = ../../../systemMenu_RED/misc
SRCS = main.c viewSystemInfo.c drawFunc.c control.c\
strResource.c misc.c util.c\
get_versionData.c get_sysmenu.c get_scfg.c get_owner.c\
get_hw.c get_parental.c get_other.c\
get_secureUser.c get_font.c get_wl.c\
$(MISC_DIR)/src/cmn.c
LINCLUDES += $(MISC_DIR)/include \
$(DISP_INFO)/common/include
TARGET_BIN = DispInfo_$(FILE_IDX).$(FILE_SUFFIX)
SYSMENU_LIBS = \
liblcfg$(TWL_LIBSUFFIX).a \
libsysmenu$(TWL_LIBSUFFIX).a \
libsysmmcu$(TWL_LIBSUFFIX).a \
libsysmutil$(TWL_LIBSUFFIX).a \
libboot$(TWL_LIBSUFFIX).a \
libds$(TWL_LIBSUFFIX).a \
libhotsw$(TWL_LIBSUFFIX).a \
libdht$(TWL_LIBSUFFIX).a \
libreloc_info$(TWL_LIBSUFFIX).a \
libnamut$(TWL_LIBSUFFIX).a \
libsharedfont_launcher$(TWL_LIBSUFFIX).a \
WDS$(TWL_LIBSUFFIX).a
SDK_APPEND_LIBS = \
libes$(TWL_LIBSUFFIX).a \
libboc$(TWL_LIBSUFFIX).a \
libsfs$(TWL_LIBSUFFIX).a \
libnam$(TWL_LIBSUFFIX).a \
libsea$(TWL_LIBSUFFIX).a \
libreboot$(TWL_LIBSUFFIX).a \
libna$(TWL_LIBSUFFIX).a
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
#=============================================================================
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
ifeq ($(IS_SECURE_APP),TRUE)
DEFAULT_COMP_ARM7 = armadillo
WRAM_MAP = MAP_TS_SCR
APPTYPE = SYSTEM
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
ROM_SPEC = main_secure.rsf
MAKETAD_OPTION += -s
else
WRAM_MAP = $(MAKEROM_WRAM_MAPPING)
DEFAULT_COMP_ARM7 = racoon
APPTYPE = USER
ROM_SPEC = main_normal.rsf
endif
ifeq ($(IS_NAND_APP),TRUE)
MEDIA = NAND
FILE_SUFFIX = tad
BANNARPATH = ../banner/$(GAMECODE).bnr
else
MEDIA = GAMECARD
FILE_SUFFIX = srl
BANNARPATH = $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
endif
ifeq ($(INVISIBLE_SCFG),TRUE)
SCFG_SUFFIX = LockSCFG
else
SCFG_SUFFIX = UnlockSCFG
endif
BINDIR = ./bin/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
MAKEROM_FLAGS += -DDISPINFO_WRAM_MAP=$(WRAM_MAP) \
-DDISPINFO_APPTYPE=$(APPTYPE) \
-DDISPINFO_SECURE=$(IS_SECURE_APP) \
-DDISPINFO_MEDIA=$(MEDIA) \
-DDISPINFO_NANDACCESS=$(NAND_ACCESS) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG) \
-DDISPINFO_AES=$(AES_SLOT) \
-DDISPINFO_GAMECODE=$(GAMECODE) \
-DDISPINFO_BANNERPATH=$(BANNARPATH)
DEFAULT_MAKEROM_ARM7_BASE = ../ARM7_$(DEFAULT_COMP_ARM7)/bin/$(TWL_BUILDTYPE_ARM7)/$(DEFAULT_COMP_ARM7)
DEFAULT_MAKEROM_ARM7 = $(DEFAULT_MAKEROM_ARM7_BASE).$(TWL_ELF_EXT)
#----------------------------------------------------------------------------
do-build: $(TARGETS)
#----------------------------------------------------------------------------
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
#include $(TWLSDK_ROOT)/build/buildtools/modulerules
#include $(TWL_IPL_RED_ROOT)/build/tests/RelocateChecker/buildtools/modulerules
#===== End of Makefile =====

View File

@ -0,0 +1,144 @@
#/*---------------------------------------------------------------------------*
# Project: TwlIPL - tests - DisplaySystemInformation
# File: makefile
#
# 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$
# *---------------------------------------------------------------------------*/
TARGET_FIRM = SYSTEMMENU
TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED
######################################
FILE_IDX = 9
IS_SECURE_APP = TRUE
IS_NAND_APP = FALSE
NAND_ACCESS = TRUE
AES_SLOT = FALSE
INVISIBLE_SCFG = FALSE
GAMECODE = 0B7A
######################################
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP) -DDISPINFO_BIN_IDX=$(FILE_IDX)
TWL_NANDAPP = $(IS_NAND_APP)
DISP_INFO = $(call eupath,$(TWL_IPL_RED_ROOT)/build/tests/DisplaySystemInformation)
SUBDIRS =
MISC_DIR = ../../../systemMenu_RED/misc
SRCS = main.c viewSystemInfo.c drawFunc.c control.c\
strResource.c misc.c util.c\
get_versionData.c get_sysmenu.c get_scfg.c get_owner.c\
get_hw.c get_parental.c get_other.c\
get_secureUser.c get_font.c get_wl.c\
$(MISC_DIR)/src/cmn.c
LINCLUDES += $(MISC_DIR)/include \
$(DISP_INFO)/common/include
TARGET_BIN = DispInfo_$(FILE_IDX).$(FILE_SUFFIX)
SYSMENU_LIBS = \
liblcfg$(TWL_LIBSUFFIX).a \
libsysmenu$(TWL_LIBSUFFIX).a \
libsysmmcu$(TWL_LIBSUFFIX).a \
libsysmutil$(TWL_LIBSUFFIX).a \
libboot$(TWL_LIBSUFFIX).a \
libds$(TWL_LIBSUFFIX).a \
libhotsw$(TWL_LIBSUFFIX).a \
libdht$(TWL_LIBSUFFIX).a \
libreloc_info$(TWL_LIBSUFFIX).a \
libnamut$(TWL_LIBSUFFIX).a \
libsharedfont_launcher$(TWL_LIBSUFFIX).a \
WDS$(TWL_LIBSUFFIX).a
SDK_APPEND_LIBS = \
libes$(TWL_LIBSUFFIX).a \
libboc$(TWL_LIBSUFFIX).a \
libsfs$(TWL_LIBSUFFIX).a \
libnam$(TWL_LIBSUFFIX).a \
libsea$(TWL_LIBSUFFIX).a \
libreboot$(TWL_LIBSUFFIX).a \
libna$(TWL_LIBSUFFIX).a
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
#=============================================================================
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
ifeq ($(IS_SECURE_APP),TRUE)
DEFAULT_COMP_ARM7 = armadillo
WRAM_MAP = MAP_TS_SCR
APPTYPE = SYSTEM
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
ROM_SPEC = main_secure.rsf
MAKETAD_OPTION += -s
else
WRAM_MAP = $(MAKEROM_WRAM_MAPPING)
DEFAULT_COMP_ARM7 = racoon
APPTYPE = USER
ROM_SPEC = main_normal.rsf
endif
ifeq ($(IS_NAND_APP),TRUE)
MEDIA = NAND
FILE_SUFFIX = tad
BANNARPATH = ../banner/$(GAMECODE).bnr
else
MEDIA = GAMECARD
FILE_SUFFIX = srl
BANNARPATH = $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
endif
ifeq ($(INVISIBLE_SCFG),TRUE)
SCFG_SUFFIX = LockSCFG
else
SCFG_SUFFIX = UnlockSCFG
endif
BINDIR = ./bin/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
MAKEROM_FLAGS += -DDISPINFO_WRAM_MAP=$(WRAM_MAP) \
-DDISPINFO_APPTYPE=$(APPTYPE) \
-DDISPINFO_SECURE=$(IS_SECURE_APP) \
-DDISPINFO_MEDIA=$(MEDIA) \
-DDISPINFO_NANDACCESS=$(NAND_ACCESS) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG) \
-DDISPINFO_AES=$(AES_SLOT) \
-DDISPINFO_GAMECODE=$(GAMECODE) \
-DDISPINFO_BANNERPATH=$(BANNARPATH)
DEFAULT_MAKEROM_ARM7_BASE = ../ARM7_$(DEFAULT_COMP_ARM7)/bin/$(TWL_BUILDTYPE_ARM7)/$(DEFAULT_COMP_ARM7)
DEFAULT_MAKEROM_ARM7 = $(DEFAULT_MAKEROM_ARM7_BASE).$(TWL_ELF_EXT)
#----------------------------------------------------------------------------
do-build: $(TARGETS)
#----------------------------------------------------------------------------
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
#include $(TWLSDK_ROOT)/build/buildtools/modulerules
#include $(TWL_IPL_RED_ROOT)/build/tests/RelocateChecker/buildtools/modulerules
#===== End of Makefile =====

View File

@ -0,0 +1,23 @@
#! ruby -Ks
startDir = "/cygdrive/c/home/TWL_IPL/build/tests/DisplaySystemInformation/ARM9/bin/ARM9-TS.LTD/Rom"
dstDir = "/cygdrive/c/home/TWL_IPL/build/tests/DisplaySystemInformation/ARM9/bin/ARM9-TS.LTD/roms"
Dir::chdir startDir
dirList = Dir::entries "."
`mkdir #{dstDir}`
for dir in dirList
puts dir
Dir::chdir "./#{dir}"
Dir::glob("./*.{tad,srl}").each {|f|
puts #{f}
`cp #{f} #{dstDir}/`
}
Dir::chdir startDir
end

View File

@ -95,7 +95,8 @@ Property
# BANNER FILE: generated from Banner Spec File
#
#BannerFile ./etc/myGameBanner.bnr
BannerFile $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
#BannerFile $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
BannerFile $(DISPINFO_BANNERPATH)
#
# Permit LandingNormalJump: for TWL "ApplicationJump" function [TRUE/FALSE]
@ -219,21 +220,21 @@ AppendProperty
#
# GameCode for TitleID : Your GameCode in 4 ascii words
#
GameCode ABCZ
GameCode $(DISPINFO_GAMECODE)
#
# Public save data size: [0K/16K/32K/64K/128K/256K/512K/1M/2M/4M]
#
#PublicSaveDataSize 32K
#PublicSaveDataSize 0K
#
# Private save data size: [0K/16K/32K/64K/128K/256K/512K/1M/2M/4M]
#
#PrivateSaveDataSize 16K
#PrivateSaveDataSize 0K
#
# Enable SubBannerFile
#SubBannerFile TRUE
#SubBannerFile FALSE
}

View File

@ -95,7 +95,7 @@ Property
# BANNER FILE: generated from Banner Spec File
#
#BannerFile ./etc/myGameBanner.bnr
BannerFile $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
BannerFile $(DISPINFO_BANNERPATH)
#
# Permit LandingNormalJump: for TWL "ApplicationJump" function [TRUE/FALSE]
@ -176,7 +176,7 @@ Property
#DSWirelessIcon FALSE
LockSCFG $(DISPINFO_LOCKSCFG)
HwAESSlotA_SSLClientCert TRUE
HwAESSlotA_SSLClientCert $(DISPINFO_AES)
###
#### END
@ -187,13 +187,13 @@ AppendProperty
#
# Publisher : "Nintendo"
# don't have to edit
Publisher Nintendo
#Publisher Nintendo
#
# Application type : [USER/SYSTEM]
# don't have to edit
AppType $(DISPINFO_APPTYPE)
# AppType SYSTEM
#
# launch title on the launcher : [TRUE/FALSE]
# don't have to edit
@ -203,35 +203,35 @@ AppendProperty
# Boot allowed Media: [GameCard]
#
Media $(DISPINFO_MEDIA)
# Media NAND
#
# Data only title : [TRUE/FALSE]
# don't have to edit
#DataOnly FALSE
##DataOnly FALSE
#
# Secure title : [TRUE/FALSE]
# don't have to edit
Secure $(DISPINFO_SECURE)
# Secure TRUE
#
# GameCode for TitleID : Your GameCode in 4 ascii words
#
GameCode ABCZ
GameCode $(DISPINFO_GAMECODE)
#
# Public save data size: [0K/16K/32K/64K/128K/256K/512K/1M/2M/4M]
#
#PublicSaveDataSize 32K
#PublicSaveDataSize 0K
#
# Private save data size: [0K/16K/32K/64K/128K/256K/512K/1M/2M/4M]
#
#PrivateSaveDataSize 16K
#PrivateSaveDataSize 0K
#
# Enable SubBannerFile
#SubBannerFile TRUE
#SubBannerFile FALSE
}

View File

@ -0,0 +1,19 @@
FILE_IDX IS_SECURE_APP IS_NAND_APP NAND_ACCESS AES_SLOT INVISIBLE_SCFG GAMECODE
0 0 0 1 D 1 0B0A
1 0 0 1 D 0 0B1A
2 0 0 0 D 1 0B2A
3 0 0 0 D 0 0B3A
4 0 1 1 D 1 020A
5 0 1 1 D 0 021A
6 1 0 1 1 1 0B4A
7 1 0 1 1 0 0B5A
8 1 0 1 0 1 0B6A
9 1 0 1 0 0 0B7A
10 1 0 0 1 1 0B8A
11 1 0 0 1 0 0B9A
12 1 0 0 0 1 0BAA
13 1 0 0 0 0 0BBA
14 1 1 1 1 1 022A
15 1 1 1 1 0 023A
16 1 1 1 0 1 024A
17 1 1 1 0 0 025A

View File

@ -0,0 +1,116 @@
######################################
MACRO_FLAGS += -DNAM_ENABLE=$(IS_SECURE_APP) -DDISPINFO_BIN_IDX=$(FILE_IDX)
TWL_NANDAPP = $(IS_NAND_APP)
DISP_INFO = $(call eupath,$(TWL_IPL_RED_ROOT)/build/tests/DisplaySystemInformation)
SUBDIRS =
MISC_DIR = ../../../systemMenu_RED/misc
SRCS = main.c viewSystemInfo.c drawFunc.c control.c\
strResource.c misc.c util.c\
get_versionData.c get_sysmenu.c get_scfg.c get_owner.c\
get_hw.c get_parental.c get_other.c\
get_secureUser.c get_font.c get_wl.c\
$(MISC_DIR)/src/cmn.c
LINCLUDES += $(MISC_DIR)/include \
$(DISP_INFO)/common/include
TARGET_BIN = DispInfo_$(FILE_IDX).$(FILE_SUFFIX)
SYSMENU_LIBS = \
liblcfg$(TWL_LIBSUFFIX).a \
libsysmenu$(TWL_LIBSUFFIX).a \
libsysmmcu$(TWL_LIBSUFFIX).a \
libsysmutil$(TWL_LIBSUFFIX).a \
libboot$(TWL_LIBSUFFIX).a \
libds$(TWL_LIBSUFFIX).a \
libhotsw$(TWL_LIBSUFFIX).a \
libdht$(TWL_LIBSUFFIX).a \
libreloc_info$(TWL_LIBSUFFIX).a \
libnamut$(TWL_LIBSUFFIX).a \
libsharedfont_launcher$(TWL_LIBSUFFIX).a \
WDS$(TWL_LIBSUFFIX).a
SDK_APPEND_LIBS = \
libes$(TWL_LIBSUFFIX).a \
libboc$(TWL_LIBSUFFIX).a \
libsfs$(TWL_LIBSUFFIX).a \
libnam$(TWL_LIBSUFFIX).a \
libsea$(TWL_LIBSUFFIX).a \
libreboot$(TWL_LIBSUFFIX).a \
libna$(TWL_LIBSUFFIX).a
LLIBRARIES += $(SYSMENU_LIBS) $(SDK_APPEND_LIBS)
#=============================================================================
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
ifeq ($(IS_SECURE_APP),TRUE)
DEFAULT_COMP_ARM7 = armadillo
WRAM_MAP = MAP_TS_SCR
APPTYPE = SYSTEM
MAKEROM = $(TWL_TOOLSDIR)/bin/makerom.TWL.secure.exe
ROM_SPEC = main_secure.rsf
MAKETAD_OPTION += -s
else
WRAM_MAP = $(MAKEROM_WRAM_MAPPING)
DEFAULT_COMP_ARM7 = racoon
APPTYPE = USER
ROM_SPEC = main_normal.rsf
endif
ifeq ($(IS_NAND_APP),TRUE)
MEDIA = NAND
FILE_SUFFIX = tad
BANNARPATH = ../banner/$(GAMECODE).bnr
else
MEDIA = GAMECARD
FILE_SUFFIX = srl
BANNARPATH = $(TWLSDK_ROOT)/include/twl/specfiles/default.bnr
endif
ifeq ($(INVISIBLE_SCFG),TRUE)
SCFG_SUFFIX = LockSCFG
else
SCFG_SUFFIX = UnlockSCFG
endif
BINDIR = ./bin/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
OBJDIR = ./obj/$(TWL_BUILDTYPE)/DispInfo_$(FILE_IDX)
MAKEROM_FLAGS += -DDISPINFO_WRAM_MAP=$(WRAM_MAP) \
-DDISPINFO_APPTYPE=$(APPTYPE) \
-DDISPINFO_SECURE=$(IS_SECURE_APP) \
-DDISPINFO_MEDIA=$(MEDIA) \
-DDISPINFO_NANDACCESS=$(NAND_ACCESS) \
-DDISPINFO_LOCKSCFG=$(INVISIBLE_SCFG) \
-DDISPINFO_AES=$(AES_SLOT) \
-DDISPINFO_GAMECODE=$(GAMECODE) \
-DDISPINFO_BANNERPATH=$(BANNARPATH)
DEFAULT_MAKEROM_ARM7_BASE = ../ARM7_$(DEFAULT_COMP_ARM7)/bin/$(TWL_BUILDTYPE_ARM7)/$(DEFAULT_COMP_ARM7)
DEFAULT_MAKEROM_ARM7 = $(DEFAULT_MAKEROM_ARM7_BASE).$(TWL_ELF_EXT)
#----------------------------------------------------------------------------
do-build: $(TARGETS)
#----------------------------------------------------------------------------
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
#include $(TWLSDK_ROOT)/build/buildtools/modulerules
#include $(TWL_IPL_RED_ROOT)/build/tests/RelocateChecker/buildtools/modulerules
#===== End of Makefile =====

View File

@ -0,0 +1,21 @@
#/*---------------------------------------------------------------------------*
# Project: TwlIPL - tests - DisplaySystemInformation
# File: makefile
#
# 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$
# *---------------------------------------------------------------------------*/
TARGET_FIRM = SYSTEMMENU
TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED
######################################

View File

@ -0,0 +1,54 @@
fHead = open("makeHeader.txt")
fFoot = open("makeFooter.txt")
contentHead = fHead.read
contentFoot = fFoot.read
fHead.close
fFoot.close
fCond = open("makeConditions.txt")
numArg = 0
argList = Array.new
fCond.gets.split(/\s+/).each do |arg|
numArg += 1
argList.push arg
end
puts "argList"
puts argList
fileIdx = 0
while l = fCond.gets
next if l[0] == '#'
argIdx = 0
puts "file making: Makefile." + fileIdx.to_s
f = open("Makefile." + fileIdx.to_s, "w")
f.puts contentHead
l.split(/\t+/).each do |value|
strVal = "TRUE" if value == "1"
strVal = "FALSE" if value == "0"
strVal = "DONTCARE" if value == "D"
if argList[argIdx] == "GAMECODE" || argList[argIdx] == "FILE_IDX"
argSet = argList[argIdx] + "\t=\t"
argSet += value
else
argSet = argList[argIdx].to_s + "\t=\t"
argSet += strVal
end
f.puts argSet
argIdx += 1
end
f.puts contentFoot
f.close
fileIdx += 1
end
fCond.close

View File

@ -46,20 +46,67 @@ static const char *s_TSDPath[] = {
static int selectLine[ROOTMENU_SIZE+1];
void resetUserData( int idx );
void breakUserData( int idx );
BOOL resetUserData( void );
BOOL breakUserData( u8 idx );
static void TSDi_ClearSettingsDirect( LCFGTWLSettingsData *pTSD );
static BOOL LCFGi_TSD_WriteSettingsDirectForRecovery( const LCFGTWLSettingsData *pSrcInfo, int index );
BOOL LCFGi_TSF_WriteFile( char *pPath, TSFHeader *pHeader, const void *pSrcBody, u8 *pSaveCount );
static BOOL LCFGi_TSF_WriteFile( char *pPath, TSFHeader *pHeader, const void *pSrcBody, u8 *pSaveCount );
ChangeCotnrolResult changeControl( int *menu, int *line, int *changeLine, int *changeMode )
BOOL executeControl( int *line, int *changeLine, u8 *mode )
{
BOOL controlFlag = FALSE;
// 上下で項目変更
if( ( pad.trg & PAD_KEY_UP ) || ( pad.trg & PAD_KEY_DOWN ) )
{
controlFlag = TRUE;
*changeLine = !*changeLine;
}
if( ( pad.trg & PAD_BUTTON_A ) && *changeLine )
{
BOOL result = TRUE;
controlFlag = TRUE;
*mode |= MODE_RESULT_DISPLAY_MASK;
switch( *line )
{
case MENU_RESET_INFO:
result = resetUserData();
break;
case MENU_BREAK_DATA:
result &= breakUserData(0);
result &= breakUserData(1);
break;
}
*mode = (u8) ((*mode & ~MODE_RESULT_MASK ) | ( result << MODE_RESULT_SHIFT) );
}
// Bでキャンセルして戻る
if( (pad.trg & PAD_BUTTON_B) ||
( ( pad.trg & PAD_BUTTON_A ) && !*changeLine) )
{
controlFlag = TRUE;
*mode = 0;
}
return controlFlag;
}
ChangeCotnrolResult changeControl( int *menu, int *line, int *changeLine, u8 *mode )
{
int linemax = gAllInfo[*menu][*line].numKindName;
BOOL controlFlag = FALSE;
if( !gAllInfo[*menu][*line].changable )
{
*changeMode = FALSE;
// 何かの間違い
*mode = 0;
return CHANGE_CONTROL;
}
@ -142,14 +189,14 @@ ChangeCotnrolResult changeControl( int *menu, int *line, int *changeLine, int *c
if( pad.trg & PAD_BUTTON_B )
{
controlFlag = TRUE;
*changeMode = FALSE;
*mode = 0;
}
return controlFlag ? CHANGE_CONTROL : CHANGE_NOTHING ;
}
BOOL control( int *menu, int *line, int *changeLine, int *changeMode )
BOOL control( int *menu, int *line, int *changeLine, u8 *mode )
{
int linemax = s_numMenu[*menu]; // 選択中ページの項目数
BOOL controlFlag = FALSE; // 何か操作があったらTRUEになる
@ -210,12 +257,15 @@ BOOL control( int *menu, int *line, int *changeLine, int *changeMode )
case MENU_ROOT :
case MENU_OWNER:
case MENU_PARENTAL:
case MENU_SECURE_USER:
case MENU_OTHER:
case MENU_NORMAL_HW:
case MENU_SECURE_HW:
case MENU_SCFG_ARM7:
case MENU_SCFG_ARM9:
case MENU_SYSMENU:
case MENU_FONT:
case MENU_WL:
case MENU_VERSION:
// 今の画面の選択位置を記録
selectLine[ROOTMENU_SIZE] = *line;
@ -226,23 +276,18 @@ BOOL control( int *menu, int *line, int *changeLine, int *changeMode )
break;
case MENU_RESET_INFO:
resetUserData(0);
resetUserData(1);
break;
case MENU_BREAK_DATA:
breakUserData(0);
breakUserData(1);
*mode |= MODE_EXECUTE_MASK;
*changeLine = 0; // デフォルト位置をcancelにしておく
break;
}
}
else if( *menu < MENU_VERSION && gAllInfo[*menu][*line].changable )
else if( *menu != MENU_VERSION && *menu != MENU_FONT && gAllInfo[*menu][*line].changable )
{
controlFlag = TRUE;
// 変更可能な項目は変更画面を開く
*changeMode = TRUE;
*mode |= MODE_CHANGE_MASK;
*changeLine = gAllInfo[*menu][*line].iValue;
}
@ -272,17 +317,38 @@ BOOL control( int *menu, int *line, int *changeLine, int *changeMode )
return controlFlag;
}
void resetUserData( int idx )
BOOL resetUserData( void )
// idx(0 or 1)番目のユーザデータをリセットする
{
u8 *dataBuf = (u8*) Alloc (LCFG_READ_TEMP);
// DisplayInitで一回Readしてるからいらんかった
// u8 *dataBuf = (u8*) Alloc (LCFG_READ_TEMP);
LCFG_ReadTWLSettings( (u8 (*)[ LCFG_READ_TEMP ])dataBuf );
TSDi_ClearSettingsDirect( (LCFGTWLSettingsData *)(&dataBuf[ LCFG_TEMP_BUFFER_SIZE*idx ]) );
LCFGi_TSD_WriteSettingsDirectForRecovery( (LCFGTWLSettingsData *)&dataBuf[ LCFG_TEMP_BUFFER_SIZE*idx ], idx );
// LCFG_ReadTWLSettings( (u8 (*)[ LCFG_READ_TEMP ])dataBuf );
// バックアップをつぶすために二回書き込む
LCFG_ClearTWLSettings( LCFG_TSD_GetInstalledSoftBoxCount() );
if( ! LCFG_WriteTWLSettings( (u8 (*)[ LCFG_WRITE_TEMP ]) gBufLCFG ) )
{
OS_TPrintf( "Write Setting failed.\n" );
return FALSE;
}
if( ! LCFG_WriteTWLSettings( (u8 (*)[ LCFG_WRITE_TEMP ]) gBufLCFG ) )
{
OS_TPrintf( "Write Setting failed.\n" );
return FALSE;
}
OS_TPrintf("Clear Setting Succeeded.\n" );
// TSDi_ClearSettingsDirect( (LCFGTWLSettingsData *)(&dataBuf[ LCFG_TEMP_BUFFER_SIZE*idx ]) );
// LCFGi_TSD_WriteSettingsDirectForRecovery( (LCFGTWLSettingsData *)&dataBuf[ LCFG_TEMP_BUFFER_SIZE*idx ], idx );
return TRUE;
}
void breakUserData( int idx )
BOOL breakUserData( u8 idx )
{
// LCFG APIを使わずに、FSレベルでファイルを読んで、データを破壊してから書き戻す
FSFile file;
@ -293,15 +359,9 @@ void breakUserData( int idx )
if( !FS_OpenFileEx( &file, s_TSDPath[idx], FS_FILEMODE_R | FS_FILEMODE_W ) )
{
OS_TPrintf("OpenFile failed. result: %d path: %s\n", FS_GetArchiveResultCode(&file), s_TSDPath[idx]);
return;
return FALSE;
}
/*
if( FS_ReadFile( &file, fileBuf, LCFG_TEMP_BUFFER_SIZE ) == -1 )
{
OS_TPrintf("readFile failed. path: %s\n", s_TSDPath[idx]);
return;
}
*/
// 適当にデータを壊す
MI_CpuFill8( fileBuf, 0xFF, LCFG_TEMP_BUFFER_SIZE );
@ -311,123 +371,11 @@ void breakUserData( int idx )
if( FS_WriteFile( &file, fileBuf, LCFG_TEMP_BUFFER_SIZE ) == -1 )
{
OS_TPrintf("writeFile failed. path: %s\n", s_TSDPath[idx]);
return;
return FALSE;
}
/*
// 念のため中身を確認
MI_CpuClear8( fileBuf, LCFG_TEMP_BUFFER_SIZE );
FS_SeekFileToBegin( &file );
if( FS_ReadFile( &file, fileBuf, LCFG_TEMP_BUFFER_SIZE ) == -1 )
{
OS_TPrintf("readFile failed. path: %s\n", s_TSDPath[idx]);
return;
}
{
int i;
for( i = 0; i < LCFG_TEMP_BUFFER_SIZE; i++ )
{
if( i % 16 == 0 )
{
OS_TPrintf("\n");
}
OS_TPrintf("%x ",fileBuf[i] );
}
}
*/
FS_CloseFile( &file );
OS_TPrintf("Breaking UserData Succeeded. path: %s\n", s_TSDPath[idx]);
}
// TWL設定データの直接クリア
static void TSDi_ClearSettingsDirect( LCFGTWLSettingsData *pTSD )
{
int i;
MI_CpuClearFast( pTSD, sizeof(LCFGTWLSettingsData) );
// 初期値が"0"以外のもの
pTSD->owner.userColor = OS_FAVORITE_COLOR_MAGENTA; // 2008.06.23 UIG松島さんの要望により
pTSD->owner.birthday.month = 1;
pTSD->owner.birthday.day = 1;
pTSD->flags.isAvailableWireless = 1;
pTSD->launcherStatus.InstalledSoftBoxCount = 0;
pTSD->launcherStatus.freeSoftBoxCount = LCFG_TWL_FREE_SOFT_BOX_COUNT_MAX;
pTSD->agreeEulaVersion[ 0 ] = 1;
// 言語コードはHW情報の言語ビットマップから算出
for( i = 0; i < LCFG_TWL_LANG_CODE_MAX; i++ ) {
if( OS_GetValidLanguageBitmap() & ( 0x0001 << i ) ) { // ValidLanguageBitmap情報は、ランチャーがMMEMにロードしたものを使用
pTSD->language = (LCFGTWLLangCode)i;
break;
}
}
}
// 指定データの値をファイルに直接ライト(リカバリ用にs_indexTSDの変更をライト後に行う
static BOOL LCFGi_TSD_WriteSettingsDirectForRecovery( const LCFGTWLSettingsData *pSrcInfo, int index )
{
u8 saveCount = 0;
// ヘッダの作成
TSFHeader header;
MI_CpuClear8( &header, sizeof(TSFHeader) );
header.version = LCFG_TWL_SETTINGS_DATA_VERSION;
header.bodyLength = sizeof(LCFGTWLSettingsData);
SVC_CalcSHA1( header.digest.sha1, pSrcInfo, sizeof(LCFGTWLSettingsData) );
// ファイルにライト
if( !LCFGi_TSF_WriteFile( (char *)s_TSDPath[ index ],
&header,
(const void *)pSrcInfo,
&saveCount ) ) {
return FALSE;
}
return TRUE;
}
// TWLファイルのライト
BOOL LCFGi_TSF_WriteFile( char *pPath, TSFHeader *pHeader, const void *pSrcBody, u8 *pSaveCount )
{
BOOL retval = FALSE;
FSFile file;
FS_InitFile( &file );
if( pSaveCount ) {
*pSaveCount = (u8)( ( *pSaveCount + 1 ) & SAVE_COUNT_MASK );
pHeader->saveCount = *pSaveCount;
}else {
pHeader->saveCount = 0;
}
OS_TPrintf( "Write > %s : %d\n", pPath, pHeader->saveCount );
// ファイルオープン
if( !FS_OpenFileEx( &file, pPath, FS_FILEMODE_R | FS_FILEMODE_W ) ) { // R|Wモードで開くと、既存ファイルを残したまま更新。
OS_TPrintf( "Write : file open error. %s\n", pPath );
return FALSE;
}
// ライト
if( FS_WriteFile( &file, pHeader, sizeof(TSFHeader) ) < sizeof(TSFHeader) ) {
OS_TPrintf( "Write : file header write error. %s\n", pPath );
goto END;
}
if( FS_WriteFile( &file, pSrcBody, (long)pHeader->bodyLength ) < pHeader->bodyLength ) {
OS_TPrintf( "Write : file body write error. %s\n", pPath );
goto END;
}
retval = TRUE;
END:
// ファイルクローズ
(void)FS_CloseFile( &file );
return retval;
return TRUE;
}

View File

@ -30,8 +30,9 @@ typedef enum ChangeCotnrolResult{
CHANGE_VALUE_CHANGED
} ChangeCotnrolResult;
ChangeCotnrolResult changeControl( int *menu, int *line, int *changeLine, int *changeMode );
BOOL control( int *menu, int *line, int *changeLine, int *changeMode );
BOOL executeControl( int *line, int *changeLine, u8 *mode );
ChangeCotnrolResult changeControl( int *menu, int *line, int *changeLine, u8 *changeMode );
BOOL control( int *menu, int *line, int *changeLine, u8 *changeMode );
#ifdef __cplusplus
}

View File

@ -19,6 +19,7 @@
#include <wchar.h>
#include <string.h>
#include <twl/os/common/ownerInfoEx_private.h>
#include <twl/os/common/sharedFont.h>
#include "drawFunc.h"
#include "getInformation.h"
@ -63,6 +64,8 @@
#define CHANGE_ALLOW_LEFT (CHANGE_VALUE_LEFT - 15)
#define CHANGE_NOW_SETTING_UP 150
#define RESULT_LEFT CHANGE_ITEMNAME_LEFT
#define RESULT_UP CHANGE_NOW_SETTING_UP
#define SCROLL_MARGIN 2 // 画面端何行でスクロールするか
@ -72,8 +75,8 @@
/* global variables -------------------- */
static int gDrawIdx[ROOTMENU_SIZE]; // 今何項目目から下を描画しているのか
static int gMenuLineSize[ROOTMENU_SIZE] = {};// 各メニューの全体行数
static int gDrawIdx[ROOTMENU_SIZE+1] = {0}; // 今何項目目から下を描画しているのか
static int gMenuLineSize[ROOTMENU_SIZE] = {}; // 各メニューの全体行数
static const int gRegisterIdx[2][SCFG_ARM7_MENU_SIZE];
static BOOL gSelectedARM7SCFGReg = TRUE; // ARM7SCFGでレジスタサイドの描画ならtrue,共有領域ならfalse
@ -87,6 +90,8 @@ void printBinary16( int x, int y, u16 value, int selected, int selectSize );
void printBinary32( int x, int y, u32 value, int selected, int selectSize );
void drawRegister( int menu, int selected );
void drawChangeMode( DispInfoEntry *Entry, int changeLine );
void drawExecuteMode( const char *command, int changeLine, u8 mode );
void drawFontInfo( int idx, int drawLine, int selected );
void drawVersion( int idx, int drawLine ,int selected );
void printUniqueID( int drawLineOffset, char *uniqueId );
int getPageNum( int valueIdx, const int* pageOffset );
@ -98,7 +103,8 @@ void drawHeader( int menu, int line)
{
u16 buf[256];
PutStringUTF16Sub( HEADER_LEFT, HEADER_UP, TXT_COLOR_RED, (const u16 *)L"DisplaySystemInfo");
PrintfSJISSub( HEADER_LEFT, HEADER_UP, TXT_COLOR_RED, "%s %d" , "DisplaySystemInfo", DISPINFO_BIN_IDX );
if( menu != MENU_ROOT )
{
@ -133,6 +139,11 @@ void printData( int x, int y, int color, DispInfoEntry *entry )
}
else if( entry->isSjis )
{
if( entry->str.sjis == s_strCorrect[0] )
{
color = TXT_COLOR_RED;
}
// SJIS文字列
PrintfSJIS( x, y, color, "%s", entry->str.sjis );
}
@ -187,7 +198,9 @@ void printValue( int menu,int entryLine, int drawOffset, DispInfoEntry *entry )
txtColor = TXT_COLOR_BLUE;
}
// 特殊描画を行う必要がある場合の処理はここ
//////////////////////////////////////////////
// 特殊描画を行う必要がある場合の処理はここ //
//////////////////////////////////////////////
if( menu == MENU_OWNER && entryLine == OWNER_COLOR )
{
@ -217,13 +230,13 @@ void printValue( int menu,int entryLine, int drawOffset, DispInfoEntry *entry )
}
if( ( menu == MENU_SYSMENU && entryLine == SYSMENU_TIMESTAMP )||
( menu == MENU_VERSION && entryLine == VERSION_FONT ))
( menu == MENU_FONT && entryLine == FONT_TIMESTAMP ))
{
PrintfSJIS( VALUE_LEFT, VALUE_UP + LINE_OFFSET*drawOffset, txtColor, "%08lx", entry->iValue );
return;
}
if( menu == MENU_SECURE_HW && entryLine == SECURE_HW_TITLEID_LO )
if( menu == MENU_SECURE_USER && entryLine == SECURE_USER_LAUNCHER_ID )
{
char buf[5];
@ -284,9 +297,9 @@ void printValue( int menu,int entryLine, int drawOffset, DispInfoEntry *entry )
}
// 通常の描画はここ
//////////////////////////
// 通常の項目描画はここ //
//////////////////////////
if( entry->isAligned )
{
@ -501,12 +514,37 @@ void drawChangeMode( DispInfoEntry *entry, int changeLine )
PrintfSJIS( CHANGE_VALUE_LEFT, CHANGE_VALUE_UP + i*LINE_OFFSET, kindColor, entry->kindNameList[i] );
}
return;
}
}
void drawExecuteMode( const char *command, int changeLine, u8 mode )
{
int i;
// 項目名
PrintfSJIS( CHANGE_ITEMNAME_LEFT, CHANGE_ITEMNAME_UP, TXT_COLOR_RED, command );
for( i = 0; i < 2 ; i++ )
{
int kindColor = TXT_COLOR_BLACK;
if( i == changeLine )
{
kindColor = TXT_COLOR_GREEN;
PutStringUTF16( CHANGE_ALLOW_LEFT, CHANGE_VALUE_UP + i*LINE_OFFSET, TXT_COLOR_BLACK, (const u16 *)L"" );
}
PrintfSJIS( CHANGE_VALUE_LEFT, CHANGE_VALUE_UP + i*LINE_OFFSET, kindColor, s_strOK[i] );
}
if( mode & MODE_RESULT_DISPLAY_MASK )
{
PrintfSJIS( RESULT_LEFT, RESULT_UP, TXT_COLOR_BLACK, s_strResult[ (mode & MODE_RESULT_MASK) >> MODE_RESULT_SHIFT ] );
}
}
void drawVersion( int idx, int drawLine ,int selected )
{
int kindColor = TXT_COLOR_BLACK;
@ -540,9 +578,54 @@ void drawVersion( int idx, int drawLine ,int selected )
PrintfSJIS( VALUE_LEFT, VALUE_UP + LINE_OFFSET*drawLine , TXT_COLOR_BLACK, "%x", gContentsVersion[idx] );
}
void drawFontInfo( int idx, int drawLine, int selected )
{
int color = TXT_COLOR_BLACK;
int fontIdx = idx / NUM_FONT_INFO;
int dataType = idx % NUM_FONT_INFO;
static const char* s_strFontDataType[] = {
"name",
"size",
"hash"
};
// 種類名
if( idx == selected)
{
color = TXT_COLOR_GREEN;
PutStringUTF16( ALLOW_LEFT, KIND_UP + LINE_OFFSET*drawLine, TXT_COLOR_BLACK, (const u16 *)L"");
}
PrintfSJIS( KIND_LEFT, KIND_UP + LINE_OFFSET*drawLine , color, "font%d %s", fontIdx, s_strFontDataType[dataType] );
// 値
switch( dataType )
{
case 0:
PrintfSJIS( VALUE_LEFT, VALUE_UP + LINE_OFFSET*drawLine , TXT_COLOR_BLACK, (char*)gFontInfo[fontIdx].name );
break;
case 1:
PrintfSJIS( VALUE_LEFT, VALUE_UP + LINE_OFFSET*drawLine , TXT_COLOR_BLACK, "%d byte", gFontInfo[fontIdx].size );
break;
case 2:
if( gFontInfo[fontIdx].isHashOK )
{
color = TXT_COLOR_BLACK;
}
else
{
color = TXT_COLOR_RED;
}
PrintfSJIS( VALUE_LEFT, VALUE_UP + LINE_OFFSET*drawLine , color, s_strCorrect[ gFontInfo[fontIdx].isHashOK ] );
break;
}
}
void drawMenu( int menu, int line, int changeLine, BOOL isChangeMode )
void drawMenu( int menu, int line, int changeLine, u8 mode )
// 情報一覧を描画する
{
int lineNum = 0;
@ -551,22 +634,16 @@ void drawMenu( int menu, int line, int changeLine, BOOL isChangeMode )
drawHeader( menu, line );
drawRegister( menu, line );
if( isChangeMode )
if( mode & MODE_CHANGE_MASK )
{
// 変更モード画面の描画
drawChangeMode( &gAllInfo[menu][line], changeLine );
return;
}
if( menu == MENU_ROOT )
if( mode & MODE_EXECUTE_MASK )
{
// ルートメニューは値がないので項目名だけ描画して終わり
for( i=0; i<ROOTMENU_SIZE; i++ )
{
printKindName( menu, i, i,line );
}
drawExecuteMode( s_strMetaMenu[MENU_ROOT][line] , changeLine, mode );
return;
}
@ -575,9 +652,8 @@ void drawMenu( int menu, int line, int changeLine, BOOL isChangeMode )
{
gDrawIdx[menu] = line - SCROLL_MARGIN >= 0 ? line - SCROLL_MARGIN : 0;
}
else if( countLinesDown(menu, line) < SCROLL_MARGIN )
else if( countLinesDown(menu, line) < SCROLL_MARGIN )
{
calibrateDrawIdx( menu, line );
}
@ -589,6 +665,12 @@ void drawMenu( int menu, int line, int changeLine, BOOL isChangeMode )
drawVersion( i - VERSION_OTHER, lineNum++, line - VERSION_OTHER );
continue;
}
if( menu == MENU_FONT && FONT_INFO <= i )
{
drawFontInfo( i - FONT_INFO, lineNum++, line - FONT_INFO );
continue;
}
// 項目名の描画
printKindName( menu, i, lineNum, line );
@ -599,13 +681,13 @@ void drawMenu( int menu, int line, int changeLine, BOOL isChangeMode )
// ARM7のSCFGで共有領域側の値を表示してるときはオフセットを加える
printValue( menu, i, lineNum, &gAllInfo[menu][i + SCFG_ARM7_SHARED_OFFSET] );
}
else
else if( menu != MENU_ROOT )
{
printValue( menu, i, lineNum, &gAllInfo[menu][i] );
}
// 描画オフセットの更新
lineNum += gAllInfo[menu][i].numLines;
lineNum += menu != MENU_ROOT ? gAllInfo[menu][i].numLines : 1;
}
/*
@ -626,7 +708,10 @@ int countLinesDown( int menu, int idx )
for( i = gDrawIdx[menu]; lines < DISP_NUM_LINES && i < s_numMenu[menu] ; i++ )
{
lines += gAllInfo[menu][i].numLines;
lines += ( menu == MENU_VERSION && VERSION_OTHER <= i ) ||
( menu == MENU_FONT && FONT_INFO <= i ) ||
( menu == MENU_ROOT ) ?
1 : gAllInfo[menu][i].numLines;
}
return (i-1) - idx;
@ -642,15 +727,19 @@ void calibrateDrawIdx( int menu, int idx )
// まずは自分と下2項目の行数を探索
for( i = 0; i <= 2 && i + idx < s_numMenu[menu] ; i++ )
{
lines += menu == MENU_VERSION && VERSION_OTHER <= i+idx ?
1 : gAllInfo[menu][i + idx].numLines;
lines += ( menu == MENU_VERSION && VERSION_OTHER <= i+idx ) ||
( menu == MENU_FONT && FONT_INFO <= i+idx ) ||
( menu == MENU_ROOT ) ?
1 : gAllInfo[menu][i + idx].numLines;
}
// 自分より上方向へ探索
for( i = 1; 0 <= idx - i && lines < DISP_NUM_LINES ; i++)
{
lines += menu == MENU_VERSION && VERSION_OTHER <= i+idx ?
1 : gAllInfo[menu][idx - i].numLines;
lines += ( menu == MENU_VERSION && VERSION_OTHER <= i+idx ) ||
( menu == MENU_FONT && FONT_INFO <= i+idx ) ||
( menu == MENU_ROOT ) ?
1 : gAllInfo[menu][idx - i].numLines;
}
// ループが一回余計に回る

View File

@ -43,7 +43,8 @@ extern int gMenuKindOffset[ROOTMENU_SIZE][MAXITEM];
/* function prototypes ----------------- */
void drawHeader( int menu, int line );
void drawMenu( int menu, int line, int changeLine, BOOL isChangeMode );
void drawMenu( int menu, int line, int changeLine, u8 mode );
void printResult( BOOL res );
void switchViewMode( void );
#ifdef __cplusplus

View File

@ -1,16 +1,33 @@
#ifndef __DISPLAY_INFO_GETINFORMATION__
#include <twl/os/common/sharedFont.h>
#define __DISPLAY_INFO_GETINFORMATION__
#define TWL_SYSMENU_VER_STR_LEN 28 // システムメニューバージョン文字列MAX bytes
#define TWL_EULA_URL_LEN 128
#define TWL_NUP_HOSTNAME_LEN 64
#define NUM_FONT_INFO 3 // フォント一つ当たりのメニュー数。名前、サイズ、ハッシュの三項目
typedef struct FontInfo{
u8 *name; // お名前
u32 size; // 大きさ
u8 *data; // データ本体
u8 *hash; // データのハッシュ値
BOOL isHashOK; // ハッシュ値が既知のものと一致するか
} FontInfo;
// NANDアプリ情報
extern s32 gNumContents;
extern OSTitleId *gContentsTitle;
extern u16 *gContentsVersion;
// 共有フォント情報
extern FontInfo gFontInfo[ OS_SHARED_FONT_MAX ];
// LCFGデータを読み込むためのバッファ
extern u8 *bufLCFG;
@ -22,5 +39,9 @@ void getOwnerInfo( void );
void getHWInfo( void );
void getParentalInfo( void );
void getOtherInfo( void );
void getSecureUserInfo( void );
void getFontInfo( void );
void getWLInfo( void );
void getContentsVersion( void );
#endif

View File

@ -0,0 +1,122 @@
#include <twl.h>
#include <twl/os/common/sharedFont.h>
#include "misc.h"
#include "viewSystemInfo.h"
#include "strResource.h"
#include "getInformation.h"
#include "util.h"
#define NUM_FONT_HASHDATA 3
const static char* s_strFontHash[] = {
"07381F6C1FF7421BA309196FA9FC750706B031AD",
"EF271DAD8B67EDB3DDE2655C6C35288D1334132D",
"803410DCAF5647134C9B68DA9ADEB562D212DCFC"
};
FontInfo gFontInfo[ OS_SHARED_FONT_MAX ];
void loadFontName( OSSharedFontIndex idx );
void loadFont( OSSharedFontIndex idx );
BOOL checkFontHash( OSSharedFontIndex idx );
void getFontInfo( void )
{
u32 time;
int tableSize = 0;
u8 *tableBuf;
OSSharedFontIndex fontIdx;
OS_InitSharedFont();
// フォントテーブルバッファの確保
tableSize = OS_GetSharedFontTableSize();
tableBuf = (u8*) Alloc ( (u32)tableSize );
time = OS_GetSharedFontTimestamp();
OS_TPrintf("SharedFont Time Stamp %08lx\n", time );
gAllInfo[MENU_FONT][FONT_TIMESTAMP].iValue = (int) time;
gAllInfo[MENU_FONT][FONT_TIMESTAMP].isNumData = TRUE;
if( ! OS_LoadSharedFontTable( (void*)tableBuf ) )
{
OS_TPrintf("Loading shared font table failed.\n");
return;
}
for( fontIdx = (OSSharedFontIndex) 0; fontIdx < OS_SHARED_FONT_MAX; fontIdx++ )
{
loadFontName( fontIdx );
// サイズ取得
gFontInfo[fontIdx].size = (u32) OS_GetSharedFontSize( (OSSharedFontIndex)fontIdx );
loadFont( fontIdx );
gFontInfo[fontIdx].isHashOK = checkFontHash( fontIdx );
}
Free(tableBuf);
s_numMenu[MENU_FONT] = FONT_INFO + ( NUM_FONT_INFO * OS_SHARED_FONT_MAX );
}
void loadFontName( OSSharedFontIndex idx )
{
// 名前取得
const u8* fontName = OS_GetSharedFontName( (OSSharedFontIndex)idx );
int fontNameLength = STD_StrLen( (char*)fontName );
if( gFontInfo[idx].name == NULL ||
( sizeof( gFontInfo[idx].name ) <= fontNameLength ))
{
// 名前のところにメモリが割り当てられてなかったり、
// 小さかったりした場合は割り当てなおす。
// NsysのFreeはNULLを渡すと落ちる仕様・・・
if( gFontInfo[idx].name != NULL )
{
Free( gFontInfo[idx].name );
}
gFontInfo[idx].name = (u8*) Alloc ( sizeof(u8) * (fontNameLength + 1) );
}
SDK_ASSERT( gFontInfo[idx].name );
STD_StrLCpy( (char*)gFontInfo[idx].name, (char*)fontName, fontNameLength + 1 );
}
void loadFont( OSSharedFontIndex idx )
{
// でも別に普段必要なわけじゃないからメモリ確保のためにも
// ハッシュ値取り終わったら開放するようにするかな?
if( gFontInfo[idx].data == NULL ||
( sizeof( gFontInfo[idx].data ) <= gFontInfo[idx].size ))
{
// データバッファにメモリが割り当てられてなかったり、
// 小さかったりした場合は割り当てなおす。
if( gFontInfo[idx].data != NULL )
{
Free( gFontInfo[idx].data );
}
gFontInfo[idx].data = (u8*) Alloc ( gFontInfo[idx].size );
}
SDK_ASSERT( gFontInfo[idx].data );
OS_LoadSharedFont( idx, (void*)gFontInfo[idx].data );
}
BOOL checkFontHash( OSSharedFontIndex idx )
{
u8 digestBuf[MATH_SHA1_DIGEST_SIZE], cmpBuf[MATH_SHA1_DIGEST_SIZE];
// 実態、検証用それぞれのハッシュを算出
strToHexa( s_strFontHash[idx], cmpBuf, MATH_SHA1_DIGEST_SIZE );
MATH_CalcSHA1( digestBuf, gFontInfo[idx].data , gFontInfo[idx].size );
return MI_CpuComp8( cmpBuf, digestBuf, MATH_SHA1_DIGEST_SIZE ) == 0;
}

View File

@ -75,32 +75,13 @@ void getSecureHWInfo( void )
// fuseRomデータの読み出し
// secureなアプリ以外はハード的に切り離されるのでゼロになる
buf = SCFG_ReadFuseData();
OS_TPrintf("fuse data : %llx\n", buf);
OS_TPrintf("fuse data : %016llx\n", buf);
snprintf( gAllInfo[MENU_SECURE_HW][SECURE_HW_FUSE].str.sjis ,
DISPINFO_BUFSIZE-1, "%016llx", SCFG_ReadFuseData() );
gAllInfo[MENU_SECURE_HW][SECURE_HW_FUSE].numLines = 2;
}
// ランチャのタイトルIDLoの取得
if( LCFG_ReadHWSecureInfo() )
{
const u8 *titleIDLo = LCFG_THW_GetLauncherTitleID_LoPtr();
value = ( int )( titleIDLo[0] << 8*3 |
titleIDLo[1] << 8*2 |
titleIDLo[2] << 8*1 |
titleIDLo[3] << 8*0 );
gAllInfo[MENU_SECURE_HW][SECURE_HW_TITLEID_LO].iValue = value;
gAllInfo[MENU_SECURE_HW][SECURE_HW_TITLEID_LO].isNumData = TRUE;
}
else
{
gAllInfo[MENU_SECURE_HW][SECURE_HW_TITLEID_LO].str.sjis = s_strNA;
}
gAllInfo[MENU_SECURE_HW][SECURE_HW_TITLEID_LO].isAligned = FALSE;
gAllInfo[MENU_SECURE_HW][SECURE_HW_TITLEID_LO].numLines = 2;
gAllInfo[MENU_SECURE_HW][SECURE_HW_TITLEID_LO].fromLCFG = TRUE;
}

View File

@ -1,5 +1,4 @@
#include <twl.h>
#include <twl/lcfg.h>
#include "viewSystemInfo.h"
#include "strResource.h"
@ -24,103 +23,6 @@ void getOtherInfo( void )
gAllInfo[MENU_OTHER][OTHER_INITIAL_SETTINGS].isAligned = FALSE;
gAllInfo[MENU_OTHER][OTHER_INITIAL_SETTINGS].numLines = 2;
gAllInfo[MENU_OTHER][OTHER_INITIAL_SETTINGS].fromLCFG = TRUE;
gAllInfo[MENU_OTHER][OTHER_INITIAL_LAUNCHER].isAligned = FALSE;
gAllInfo[MENU_OTHER][OTHER_INITIAL_LAUNCHER].numLines = 2;
gAllInfo[MENU_OTHER][OTHER_INITIAL_LAUNCHER].fromLCFG = TRUE;
gAllInfo[MENU_OTHER][OTHER_BROKEN_SETTINGS].isAligned = FALSE;
gAllInfo[MENU_OTHER][OTHER_BROKEN_SETTINGS].numLines = 2;
gAllInfo[MENU_OTHER][OTHER_BROKEN_SETTINGS].fromLCFG = TRUE;
gAllInfo[MENU_OTHER][OTHER_LCFG_INSTALLED_SOFTBOX].isAligned = FALSE;
gAllInfo[MENU_OTHER][OTHER_LCFG_INSTALLED_SOFTBOX].numLines = 2;
gAllInfo[MENU_OTHER][OTHER_LCFG_INSTALLED_SOFTBOX].fromLCFG = TRUE;
gAllInfo[MENU_OTHER][OTHER_LCFG_FREE_SOFTBOX].isAligned = FALSE;
gAllInfo[MENU_OTHER][OTHER_LCFG_FREE_SOFTBOX].numLines = 2;
gAllInfo[MENU_OTHER][OTHER_LCFG_FREE_SOFTBOX].fromLCFG = TRUE;
gAllInfo[MENU_OTHER][OTHER_LCFG_LASTBOOT_IDX].isAligned = FALSE;
gAllInfo[MENU_OTHER][OTHER_LCFG_LASTBOOT_IDX].numLines = 2;
gAllInfo[MENU_OTHER][OTHER_LCFG_LASTBOOT_IDX].fromLCFG = TRUE;
gAllInfo[MENU_OTHER][OTHER_LCFG_LASTBOOT_PLATFORM].isAligned = FALSE;
gAllInfo[MENU_OTHER][OTHER_LCFG_LASTBOOT_PLATFORM].numLines = 2;
gAllInfo[MENU_OTHER][OTHER_LCFG_LASTBOOT_PLATFORM].fromLCFG = TRUE;
gAllInfo[MENU_OTHER][OTHER_LCFG_LASTBOOT_ID].isAligned = FALSE;
gAllInfo[MENU_OTHER][OTHER_LCFG_LASTBOOT_ID].numLines = 2;
gAllInfo[MENU_OTHER][OTHER_LCFG_LASTBOOT_ID].fromLCFG = TRUE;
STD_StrCpy( gAllInfo[MENU_OTHER][OTHER_LCFG_LASTBOOT_ID].str.sjis, "0000" );
if( gLCFGAccessible )
{
value = LCFG_TSD_IsFinishedInitialSetting();
gAllInfo[MENU_OTHER][OTHER_INITIAL_SETTINGS].iValue = value;
gAllInfo[MENU_OTHER][OTHER_INITIAL_SETTINGS].str.sjis = s_strBool[ value ];
gAllInfo[MENU_OTHER][OTHER_INITIAL_SETTINGS].changable = TRUE;
gAllInfo[MENU_OTHER][OTHER_INITIAL_SETTINGS].changeFunc.cBool = LCFG_TSD_SetFlagFinishedInitialSetting;
gAllInfo[MENU_OTHER][OTHER_INITIAL_SETTINGS].argType = ARG_BOOL;
gAllInfo[MENU_OTHER][OTHER_INITIAL_SETTINGS].kindNameList = s_strBool;
gAllInfo[MENU_OTHER][OTHER_INITIAL_SETTINGS].numKindName = 2;
value = LCFG_TSD_IsFinishedInitialSetting_Launcher();
gAllInfo[MENU_OTHER][OTHER_INITIAL_LAUNCHER].iValue = value;
gAllInfo[MENU_OTHER][OTHER_INITIAL_LAUNCHER].str.sjis = s_strBool[ value ];
gAllInfo[MENU_OTHER][OTHER_INITIAL_LAUNCHER].changable = TRUE;
gAllInfo[MENU_OTHER][OTHER_INITIAL_LAUNCHER].changeFunc.cBool = LCFG_TSD_SetFlagFinishedInitialSetting_Launcher;
gAllInfo[MENU_OTHER][OTHER_INITIAL_LAUNCHER].argType = ARG_BOOL;
gAllInfo[MENU_OTHER][OTHER_INITIAL_LAUNCHER].kindNameList = s_strBool;
gAllInfo[MENU_OTHER][OTHER_INITIAL_LAUNCHER].numKindName = 2;
value = LCFG_TSD_IsFinishedBrokenTWLSettings();
gAllInfo[MENU_OTHER][OTHER_BROKEN_SETTINGS].iValue = value;
gAllInfo[MENU_OTHER][OTHER_BROKEN_SETTINGS].str.sjis = s_strBool[ value ];
gAllInfo[MENU_OTHER][OTHER_BROKEN_SETTINGS].changable = TRUE;
gAllInfo[MENU_OTHER][OTHER_BROKEN_SETTINGS].changeFunc.cBool = LCFG_TSD_SetFlagFinishedBrokenTWLSettings;
gAllInfo[MENU_OTHER][OTHER_BROKEN_SETTINGS].argType = ARG_BOOL;
gAllInfo[MENU_OTHER][OTHER_BROKEN_SETTINGS].kindNameList = s_strBool;
gAllInfo[MENU_OTHER][OTHER_BROKEN_SETTINGS].numKindName = 2;
value = LCFG_TSD_GetInstalledSoftBoxCount();
gAllInfo[MENU_OTHER][OTHER_LCFG_INSTALLED_SOFTBOX].iValue = value;
gAllInfo[MENU_OTHER][OTHER_LCFG_INSTALLED_SOFTBOX].isNumData = TRUE;
value = LCFG_TSD_GetFreeSoftBoxCount();
gAllInfo[MENU_OTHER][OTHER_LCFG_FREE_SOFTBOX].iValue = value;
gAllInfo[MENU_OTHER][OTHER_LCFG_FREE_SOFTBOX].isNumData = TRUE;
value = LCFG_TSD_GetLastTimeBootSoftIndex();
gAllInfo[MENU_OTHER][OTHER_LCFG_LASTBOOT_IDX].iValue = value;
gAllInfo[MENU_OTHER][OTHER_LCFG_LASTBOOT_IDX].isNumData = TRUE;
value = LCFG_TSD_GetLastTimeBootSoftPlatform();
gAllInfo[MENU_OTHER][OTHER_LCFG_LASTBOOT_PLATFORM].iValue = value;
gAllInfo[MENU_OTHER][OTHER_LCFG_LASTBOOT_PLATFORM].isNumData = TRUE;
{
u64 buf = LCFG_TSD_GetLastTimeBootSoftTitleID();
if( buf )
// bufが0だったら前回起動したアプリが設定されていない
{
u32 titleID = MI_LoadBE32( &buf );
OS_TPrintf("Lastboot ID: %x Title ID: %x\n", buf, titleID );
MI_CpuCopy( &titleID, gAllInfo[MENU_OTHER][OTHER_LCFG_LASTBOOT_ID].str.sjis, 4 );
gAllInfo[MENU_OTHER][OTHER_LCFG_LASTBOOT_ID].str.sjis[8] = '\0';
}
}
}
}

View File

@ -475,7 +475,6 @@ void getSCFGARM7InfoReg( void )
value = (flag & DISP_REG_MI_MC2_CA_MASK ) >> DISP_REG_MI_MC2_CA_SHIFT;
;gAllInfo[MENU_SCFG_ARM7][SCFG_ARM7_MI_CA].iValue = value;
snprintf( gAllInfo[MENU_SCFG_ARM7][SCFG_ARM7_MI_CA].str.sjis , DISPINFO_BUFSIZE-1, "%04x", value );
}
// 旧無線送受信制御レジスタ
@ -485,10 +484,8 @@ void getSCFGARM7InfoReg( void )
value = ( flag & DISP_REG_SCFG_WL_OFFB_MASK ) || 0 ;
gAllInfo[MENU_SCFG_ARM7][SCFG_ARM7_WL_OFFB].iValue = value;
gAllInfo[MENU_SCFG_ARM7][SCFG_ARM7_WL_OFFB].str.sjis = s_strEnable[ value ];
}
// オプション端子読み出しレジスタ
{
@ -501,7 +498,6 @@ void getSCFGARM7InfoReg( void )
gAllInfo[MENU_SCFG_ARM7][SCFG_ARM7_OP_APP].iValue = (value & 0x1) || 0 ;
gAllInfo[MENU_SCFG_ARM7][SCFG_ARM7_OP_APP].str.sjis = s_strRomApp[ value ];
}
}
void getSCFGARM7InfoShared( void )

View File

@ -0,0 +1,131 @@
#include <twl.h>
#include <twl/lcfg.h>
#include "viewSystemInfo.h"
#include "strResource.h"
#include "getInformation.h"
void getSecureUserInfo( void )
{
int value;
gAllInfo[MENU_SECURE_USER][SECURE_USER_INITIAL_SETTINGS].isAligned = FALSE;
gAllInfo[MENU_SECURE_USER][SECURE_USER_INITIAL_SETTINGS].numLines = 2;
gAllInfo[MENU_SECURE_USER][SECURE_USER_INITIAL_SETTINGS].fromLCFG = TRUE;
gAllInfo[MENU_SECURE_USER][SECURE_USER_INITIAL_LAUNCHER].isAligned = FALSE;
gAllInfo[MENU_SECURE_USER][SECURE_USER_INITIAL_LAUNCHER].numLines = 2;
gAllInfo[MENU_SECURE_USER][SECURE_USER_INITIAL_LAUNCHER].fromLCFG = TRUE;
gAllInfo[MENU_SECURE_USER][SECURE_USER_BROKEN_SETTINGS].isAligned = FALSE;
gAllInfo[MENU_SECURE_USER][SECURE_USER_BROKEN_SETTINGS].numLines = 2;
gAllInfo[MENU_SECURE_USER][SECURE_USER_BROKEN_SETTINGS].fromLCFG = TRUE;
gAllInfo[MENU_SECURE_USER][SECURE_USER_INSTALLED_SOFTBOX].isAligned = FALSE;
gAllInfo[MENU_SECURE_USER][SECURE_USER_INSTALLED_SOFTBOX].numLines = 2;
gAllInfo[MENU_SECURE_USER][SECURE_USER_INSTALLED_SOFTBOX].fromLCFG = TRUE;
gAllInfo[MENU_SECURE_USER][SECURE_USER_FREE_SOFTBOX].isAligned = FALSE;
gAllInfo[MENU_SECURE_USER][SECURE_USER_FREE_SOFTBOX].numLines = 2;
gAllInfo[MENU_SECURE_USER][SECURE_USER_FREE_SOFTBOX].fromLCFG = TRUE;
gAllInfo[MENU_SECURE_USER][SECURE_USER_LASTBOOT_IDX].isAligned = FALSE;
gAllInfo[MENU_SECURE_USER][SECURE_USER_LASTBOOT_IDX].numLines = 2;
gAllInfo[MENU_SECURE_USER][SECURE_USER_LASTBOOT_IDX].fromLCFG = TRUE;
gAllInfo[MENU_SECURE_USER][SECURE_USER_LASTBOOT_PLATFORM].isAligned = FALSE;
gAllInfo[MENU_SECURE_USER][SECURE_USER_LASTBOOT_PLATFORM].numLines = 2;
gAllInfo[MENU_SECURE_USER][SECURE_USER_LASTBOOT_PLATFORM].fromLCFG = TRUE;
gAllInfo[MENU_SECURE_USER][SECURE_USER_LASTBOOT_ID].isAligned = FALSE;
gAllInfo[MENU_SECURE_USER][SECURE_USER_LASTBOOT_ID].numLines = 2;
gAllInfo[MENU_SECURE_USER][SECURE_USER_LASTBOOT_ID].fromLCFG = TRUE;
STD_StrCpy( gAllInfo[MENU_SECURE_USER][SECURE_USER_LASTBOOT_ID].str.sjis, "0000" );
if( gLCFGAccessible )
{
value = LCFG_TSD_IsFinishedInitialSetting();
gAllInfo[MENU_SECURE_USER][SECURE_USER_INITIAL_SETTINGS].iValue = value;
gAllInfo[MENU_SECURE_USER][SECURE_USER_INITIAL_SETTINGS].str.sjis = s_strBool[ value ];
gAllInfo[MENU_SECURE_USER][SECURE_USER_INITIAL_SETTINGS].changable = TRUE;
gAllInfo[MENU_SECURE_USER][SECURE_USER_INITIAL_SETTINGS].changeFunc.cBool = LCFG_TSD_SetFlagFinishedInitialSetting;
gAllInfo[MENU_SECURE_USER][SECURE_USER_INITIAL_SETTINGS].argType = ARG_BOOL;
gAllInfo[MENU_SECURE_USER][SECURE_USER_INITIAL_SETTINGS].kindNameList = s_strBool;
gAllInfo[MENU_SECURE_USER][SECURE_USER_INITIAL_SETTINGS].numKindName = 2;
value = LCFG_TSD_IsFinishedInitialSetting_Launcher();
gAllInfo[MENU_SECURE_USER][SECURE_USER_INITIAL_LAUNCHER].iValue = value;
gAllInfo[MENU_SECURE_USER][SECURE_USER_INITIAL_LAUNCHER].str.sjis = s_strBool[ value ];
gAllInfo[MENU_SECURE_USER][SECURE_USER_INITIAL_LAUNCHER].changable = TRUE;
gAllInfo[MENU_SECURE_USER][SECURE_USER_INITIAL_LAUNCHER].changeFunc.cBool = LCFG_TSD_SetFlagFinishedInitialSetting_Launcher;
gAllInfo[MENU_SECURE_USER][SECURE_USER_INITIAL_LAUNCHER].argType = ARG_BOOL;
gAllInfo[MENU_SECURE_USER][SECURE_USER_INITIAL_LAUNCHER].kindNameList = s_strBool;
gAllInfo[MENU_SECURE_USER][SECURE_USER_INITIAL_LAUNCHER].numKindName = 2;
value = LCFG_TSD_IsFinishedBrokenTWLSettings();
gAllInfo[MENU_SECURE_USER][SECURE_USER_BROKEN_SETTINGS].iValue = value;
gAllInfo[MENU_SECURE_USER][SECURE_USER_BROKEN_SETTINGS].str.sjis = s_strBool[ value ];
gAllInfo[MENU_SECURE_USER][SECURE_USER_BROKEN_SETTINGS].changable = TRUE;
gAllInfo[MENU_SECURE_USER][SECURE_USER_BROKEN_SETTINGS].changeFunc.cBool = LCFG_TSD_SetFlagFinishedBrokenTWLSettings;
gAllInfo[MENU_SECURE_USER][SECURE_USER_BROKEN_SETTINGS].argType = ARG_BOOL;
gAllInfo[MENU_SECURE_USER][SECURE_USER_BROKEN_SETTINGS].kindNameList = s_strBool;
gAllInfo[MENU_SECURE_USER][SECURE_USER_BROKEN_SETTINGS].numKindName = 2;
value = LCFG_TSD_GetInstalledSoftBoxCount();
gAllInfo[MENU_SECURE_USER][SECURE_USER_INSTALLED_SOFTBOX].iValue = value;
gAllInfo[MENU_SECURE_USER][SECURE_USER_INSTALLED_SOFTBOX].isNumData = TRUE;
value = LCFG_TSD_GetFreeSoftBoxCount();
gAllInfo[MENU_SECURE_USER][SECURE_USER_FREE_SOFTBOX].iValue = value;
gAllInfo[MENU_SECURE_USER][SECURE_USER_FREE_SOFTBOX].isNumData = TRUE;
value = LCFG_TSD_GetLastTimeBootSoftIndex();
gAllInfo[MENU_SECURE_USER][SECURE_USER_LASTBOOT_IDX].iValue = value;
gAllInfo[MENU_SECURE_USER][SECURE_USER_LASTBOOT_IDX].isNumData = TRUE;
value = LCFG_TSD_GetLastTimeBootSoftPlatform();
gAllInfo[MENU_SECURE_USER][SECURE_USER_LASTBOOT_PLATFORM].iValue = value;
gAllInfo[MENU_SECURE_USER][SECURE_USER_LASTBOOT_PLATFORM].isNumData = TRUE;
{
u64 buf = LCFG_TSD_GetLastTimeBootSoftTitleID();
if( buf )
// bufが0だったら前回起動したアプリが設定されていない
{
u32 titleID = MI_LoadBE32( &buf );
OS_TPrintf("Lastboot ID: %x Title ID: %x\n", buf, titleID );
MI_CpuCopy( &titleID, gAllInfo[MENU_SECURE_USER][SECURE_USER_LASTBOOT_ID].str.sjis, 4 );
gAllInfo[MENU_SECURE_USER][SECURE_USER_LASTBOOT_ID].str.sjis[8] = '\0';
}
}
}
// ランチャのタイトルIDLoの取得
if( LCFG_ReadHWSecureInfo() )
{
const u8 *titleIDLo = LCFG_THW_GetLauncherTitleID_LoPtr();
value = ( int )( titleIDLo[0] << 8*3 |
titleIDLo[1] << 8*2 |
titleIDLo[2] << 8*1 |
titleIDLo[3] << 8*0 );
gAllInfo[MENU_SECURE_USER][SECURE_USER_LAUNCHER_ID].iValue = value;
gAllInfo[MENU_SECURE_USER][SECURE_USER_LAUNCHER_ID].isNumData = TRUE;
}
else
{
gAllInfo[MENU_SECURE_USER][SECURE_USER_LAUNCHER_ID].str.sjis = s_strNA;
}
gAllInfo[MENU_SECURE_USER][SECURE_USER_LAUNCHER_ID].isAligned = FALSE;
gAllInfo[MENU_SECURE_USER][SECURE_USER_LAUNCHER_ID].numLines = 2;
gAllInfo[MENU_SECURE_USER][SECURE_USER_LAUNCHER_ID].fromLCFG = TRUE;
}

View File

@ -42,7 +42,7 @@ static char* s_strSignFilePath[] = {
FILE_SIGN_NINTENDO_CAG2,
};
static char*s_strSignHash[] = {
static char* s_strSignHash[] = {
"01e03e86fe11c5172ba742045c63e65c2f058e99",
"7497940e3a3591d592b46ff99d75ebe102c27550",
"cf130c7674bae733f3b106109bb06cc0d6ac1a18",
@ -148,8 +148,8 @@ void getSysmenuInfo( void )
for( i=0 ; i < NUM_FILE_SIGN; i++ )
{
// 最初にエントリの行数情報を設定しておく
gAllInfo[MENU_SYSMENU][i + SYSMENU_SIGN_IDX].numLines = 2;
gAllInfo[MENU_SYSMENU][i + SYSMENU_SIGN_IDX].isAligned = FALSE;
gAllInfo[MENU_SYSMENU][i + SYSMENU_HASH_IDX].numLines = 2;
gAllInfo[MENU_SYSMENU][i + SYSMENU_HASH_IDX].isAligned = FALSE;
}
for( i=0 ; i < NUM_FILE_SIGN; i++ )
@ -183,7 +183,7 @@ void getSysmenuInfo( void )
// それぞれのファイルに対して署名検証を行う
for( i=0 ; i < NUM_FILE_SIGN; i++ )
{
u8 idx = (u8)(SYSMENU_SIGN_IDX + i) ;
u8 idx = (u8)(SYSMENU_HASH_IDX + i) ;
OS_TPrintf("Checking signature...%s\n", s_strMetaMenu[MENU_SYSMENU][idx] );
@ -191,11 +191,11 @@ void getSysmenuInfo( void )
FS_ReadFile( &file[i], srcBuf, (s32)fileLen[i] );
OS_TPrintf("FileSize: %d byte HeadData: %02x%02x%02x\n", fileLen[i], srcBuf[0], srcBuf[1], srcBuf[2] );
if( SYSMENU_SIGN_NUP_CERT <= idx && idx < SYSMENU_SIGN_NINTENDO_CA )
if( SYSMENU_NUP_CERT <= idx && idx < SYSMENU_NINTENDO_CA )
{
s32 result;
// SYSMENU_SIGN_NUP_CERTからの4ファイルは暗号化されているので複合化する
// SYSMENU_NUP_CERTからの4ファイルは暗号化されているので複合化する
result = NA_DecodeVersionData( srcBuf, fileLen[i] , dstBuf, fileLen[i] );
if( result < 0 )

View File

@ -8,65 +8,11 @@
#include "getInformation.h"
#include "misc.h"
#define WL_TITLEID 0x0003000F484E4341
void getWirelessVersion( void );
void getContentsVersion( void );
void getSharedFontVersion( void );
void getVersions( void )
{
#if NAM_ENABLE
getContentsVersion();
#endif
getWirelessVersion();
getSharedFontVersion();
}
void getWirelessVersion( void )
// 無線ファームウェアのバージョンを取得する
{
FSFile file;
char filePath[NAM_PATH_LEN+1];
char filebuf[2]; // FWバージョンはMajor, Minorそれぞれ1バイトずつ
int res;
FS_InitFile( &file );
NAM_GetTitleBootContentPath( filePath , WL_TITLEID); // 無線ファームのファイルパスを取得
OS_TPrintf("wireless firm path: %s\n", filePath ) ;
if( FS_OpenFileEx( &file, filePath, FS_FILEMODE_R ) )
{
// バージョン情報の読み取り
FS_SeekFile( &file, 0xA0, FS_SEEK_SET ); // ファイルの0xA0から2バイトがバージョン情報
res = FS_ReadFile( &file, filebuf, 2 );
SDK_ASSERT( res == 2 );
snprintf( gAllInfo[MENU_VERSION][VERSION_WIRELESS].str.sjis, DISPINFO_BUFSIZE-1, "%d.%d", filebuf[0], filebuf[1] );
gAllInfo[MENU_VERSION][VERSION_WIRELESS].iValue = filebuf[0] *100 + filebuf[1];
}
else
{
snprintf( gAllInfo[MENU_VERSION][VERSION_WIRELESS].str.sjis, DISPINFO_BUFSIZE-1, s_strNA );
}
}
void getSharedFontVersion( void )
{
u32 time;
OS_InitSharedFont();
time = OS_GetSharedFontTimestamp();
OS_TPrintf("SharedFont Time Stamp %08lx\n", time );
gAllInfo[MENU_VERSION][VERSION_FONT].iValue = (int) time;
gAllInfo[MENU_VERSION][VERSION_FONT].isNumData = TRUE;
}
void getContentsVersion( void )
// コンテンツリストをもとに各コンテンツのタイトルIDとバージョンを取得
{

View File

@ -0,0 +1,68 @@
#include <twl.h>
#include <twl/nam.h>
#include "viewSystemInfo.h"
#include "strResource.h"
#include "getInformation.h"
#define WL_TITLEID 0x0003000F484E4341
#define WL_FW_VERSION_OFFSET 0xa0
#define WL_FW_VERSION_SIZE 2
#define WL_NUM_FW_OFFSET 0xa2
#define WL_NUM_FW_SIZE 1
#define WL_FW_TYPE_OFFSET 0xac
#define WL_FW_TYPE_SIZE 4
void getWLInfo( void )
{
FSFile file;
char filePath[NAM_PATH_LEN+1];
char filebuf[4];
int res;
FS_InitFile( &file );
NAM_GetTitleBootContentPath( filePath , WL_TITLEID); // 無線ファームのファイルパスを取得
OS_TPrintf("wireless firm path: %s\n", filePath ) ;
if( FS_OpenFileEx( &file, filePath, FS_FILEMODE_R ) )
{
// バージョン情報の読み取り
FS_SeekFile( &file, WL_FW_VERSION_OFFSET, FS_SEEK_SET );
res = FS_ReadFile( &file, filebuf, WL_FW_VERSION_SIZE );
if( res == WL_FW_VERSION_SIZE )
{
snprintf( gAllInfo[MENU_WL][WL_VERSION].str.sjis, DISPINFO_BUFSIZE-1, "%d.%d", filebuf[0], filebuf[1] );
gAllInfo[MENU_WL][WL_VERSION].iValue = filebuf[0] *100 + filebuf[1];
}
// ファームウェアの数の取得
FS_SeekFile( &file, WL_NUM_FW, FS_SEEK_SET );
res = FS_ReadFile( &file, filebuf, 2 );
if( res == WL_NUM_FW_SIZE )
{
gAllInfo[MENU_WL][WL_NUM_FW].iValue = filebuf[0];
gAllInfo[MENU_WL][WL_NUM_FW].isNumData = TRUE;
}
// ファームタイプの取得
FS_SeekFile( &file, WL_FW_TYPE_OFFSET, FS_SEEK_SET );
res = FS_ReadFile( &file, filebuf, WL_FW_TYPE_SIZE );
if( res == WL_FW_TYPE_SIZE )
{
int value = (int) MI_LoadLE32( filebuf );
gAllInfo[MENU_WL][WL_FW_TYPE].iValue = value;
gAllInfo[MENU_WL][WL_FW_TYPE].str.sjis = s_strWLFWType[ value ];
}
}
else
{
// 読み込めなかったらとりあえずN/Aって入れておく
snprintf( gAllInfo[MENU_WL][WL_VERSION].str.sjis, DISPINFO_BUFSIZE-1, s_strNA );
}
}

View File

@ -18,6 +18,7 @@
#include <twl.h>
#include <twl/sea.h>
#include <twl/os/common/sharedFont.h>
#include <nitro/crypto.h>
#include "misc.h"
#include "viewSystemInfo.h"
@ -72,6 +73,7 @@ void TwlMain( void )
OS_EnableIrq();
OS_EnableInterrupts();
OS_InitSharedFont();
GX_Init();
OS_SetIrqFunction( OS_IE_V_BLANK, VBlankHandler );

View File

@ -18,16 +18,19 @@
#include "drawFunc.h"
// VERSION_MENU_SIZEだけコンテンツ数に応じて可変なのでconstではない
// VERSION_MENU_SIZE、FONTMENU_SIZEだけコンテンツ数に応じて可変なのでconstではない
int s_numMenu[] = {
OWNERMENU_SIZE,
PARENTALMENU_SIZE,
SECURE_USER_MENU_SIZE,
OTHERMENU_SIZE,
NORMAL_HW_MENU_SIZE,
SECURE_HW_MENU_SIZE,
SCFG_ARM7_MENU_SIZE,
SCFG_ARM9_MENU_SIZE,
SYSMENU_MENU_SIZE,
FONTMENU_SIZE,
WLMENU_SIZE,
VERSIONMENU_SIZE,
0,
0,
@ -60,13 +63,16 @@ const char *s_strSCFGViewMode[] = {
const char *s_strRootMenu[] = {
"<EFBFBD>ƒOwner<EFBFBD>",
"<EFBFBD>ƒParental control<6F>",
"Secure User Info",
"<EFBFBD>ƒOther Info<66>",
"<EFBFBD>ƒNormal Hardware Info<66>",
"<EFBFBD>ƒSecure Hardware Info<66>",
"<EFBFBD>ƒSCFG Info (ARM7 side)<29>",
"<EFBFBD>ƒSCFG Info (ARM9 side)<29>",
"About Sysmenu",
"Content Version",
"SystemMenu Version",
"Shared Font",
"Wireless Firmware",
"Installed Content Version",
"Reset HW Setting to Default",
"break HW Setting"
};
@ -95,18 +101,22 @@ const char *s_strParentalMenu[] = {
"Answer"
};
const char *s_strOtherMenu[] = {
"Agree EULA",
"EULA Version",
"Wireless",
"Finished Initial Setting",
const char *s_strSecureUserMenu[] = {
"Finished Initial Setting(Setting)",
"Finished Initial Setting(Launcher)",
"Broken Setting Flag",
"Installed Softbox Count",
"Free Softbox Count",
"Last Boot Soft Index",
"Last Boot Soft Platform",
"Last Boot Soft ID"
"Last Boot Soft ID",
"Launcher TitleID Lo"
};
const char *s_strOtherMenu[] = {
"Agree EULA",
"EULA Version",
"Wireless"
};
const char *s_strNormalHWMenu[] = {
@ -119,8 +129,7 @@ const char *s_strSecureHWMenu[] = {
"Region",
"Serial No",
"Language Bitmap",
"Fuse Data",
"Launcher TitleID Lo"
"Fuse Data"
};
const char *s_strSCFGArm9Menu[] = {
@ -218,35 +227,44 @@ const char *s_strSCFGArm7Menu[] = {
};
const char *s_strSystemMenu[] = {
"Timestamp",
"Version (numeric)",
"Version (string)",
"EULA URL",
"NUP Hostname",
"Timestamp",
"Sign (nup-cert)" ,
"Sign (nup-prvkey)",
"Sign (shop-cert)",
"Sign (shop-prvkey)",
"Sign (NintendoCA)",
"Sign (NintendoCA-C2)",
"Sign (NintendoCA-G2)"
".twl-nup-cert.der" ,
".twl-nup-prvkey.der",
".twl-shop-cert.der",
".twl-shop-prvkey.der",
"NintendoCA.der",
"NintendoCA-C2.der",
"NintendoCA-G2.der"
};
const char *s_strVersionMenu[] = {
"Wireless Firm",
"Font(Timestamp)"
const char *s_strFontMenu[] = {
"Timestamp",
};
const char *s_strWLMenu[] = {
"Version",
"Num of FW",
"FW1 type"
};
const char **s_strMetaMenu[] = {
s_strOwnerMenu,
s_strParentalMenu,
s_strSecureUserMenu,
s_strOtherMenu,
s_strNormalHWMenu,
s_strSecureHWMenu,
s_strSCFGArm7Menu,
s_strSCFGArm9Menu,
s_strSystemMenu,
s_strVersionMenu,
s_strFontMenu,
s_strWLMenu,
NULL,
NULL,
NULL,
s_strRootMenu
@ -296,8 +314,13 @@ char *s_strRomApp[] = {
"PROM Download"
};
char *s_strWLFWType[] = {
"2in1 module 1.1",
"2in1 module 2.0",
"One Chip (M&M)"
};
char *s_strMCMode[] = {
// !!! あとで項目埋める
"00",
"01",
"10",
@ -309,6 +332,13 @@ char *s_strEnable[] = {
"ENABLED"
};
char *s_strResult[] = {
"Failed.",
"Succeeded.",
""
};
char *s_strCorrect[] = {
"Incorrect",
"Correct"
@ -320,6 +350,11 @@ char *s_strBool[] = {
"TRUE"
};
char *s_strOK[] = {
"CANCEL",
"OK"
};
char *s_strRatingOrg[] = {
"CERO",
"ESRB",

View File

@ -19,18 +19,21 @@
#define __DISPLAY_INFO_RESOURCE__
// メニューID
#define MENU_ROOT 11
#define MENU_OWNER 0
#define MENU_PARENTAL 1
#define MENU_OTHER 2
#define MENU_NORMAL_HW 3
#define MENU_SECURE_HW 4
#define MENU_SCFG_ARM7 5
#define MENU_SCFG_ARM9 6
#define MENU_SYSMENU 7
#define MENU_VERSION 8
#define MENU_RESET_INFO 9
#define MENU_BREAK_DATA 10
#define MENU_ROOT 14
#define MENU_OWNER 0
#define MENU_PARENTAL 1
#define MENU_SECURE_USER 2
#define MENU_OTHER 3
#define MENU_NORMAL_HW 4
#define MENU_SECURE_HW 5
#define MENU_SCFG_ARM7 6
#define MENU_SCFG_ARM9 7
#define MENU_SYSMENU 8
#define MENU_FONT 9
#define MENU_WL 10
#define MENU_VERSION 11
#define MENU_RESET_INFO 12
#define MENU_BREAK_DATA 13
// 行番号
@ -54,17 +57,19 @@
#define PARENTAL_QUESTION_ID 10
#define PARENTAL_ANSWER 11
#define SECURE_USER_INITIAL_SETTINGS 0
#define SECURE_USER_INITIAL_LAUNCHER 1
#define SECURE_USER_BROKEN_SETTINGS 2
#define SECURE_USER_INSTALLED_SOFTBOX 3
#define SECURE_USER_FREE_SOFTBOX 4
#define SECURE_USER_LASTBOOT_IDX 5
#define SECURE_USER_LASTBOOT_PLATFORM 6
#define SECURE_USER_LASTBOOT_ID 7
#define SECURE_USER_LAUNCHER_ID 8
#define OTHER_AGREE_EULA 0
#define OTHER_EULA_VERSION 1
#define OTHER_WIRELESS 2
#define OTHER_INITIAL_SETTINGS 3
#define OTHER_INITIAL_LAUNCHER 4
#define OTHER_BROKEN_SETTINGS 5
#define OTHER_LCFG_INSTALLED_SOFTBOX 6
#define OTHER_LCFG_FREE_SOFTBOX 7
#define OTHER_LCFG_LASTBOOT_IDX 8
#define OTHER_LCFG_LASTBOOT_PLATFORM 9
#define OTHER_LCFG_LASTBOOT_ID 10
#define NORMAL_HW_RTC_OFFSET 0
#define NORMAL_HW_UNIQUE_ID 1
@ -74,7 +79,6 @@
#define SECURE_HW_SERIAL 2
#define SECURE_HW_LANGUAGE 3
#define SECURE_HW_FUSE 4
#define SECURE_HW_TITLEID_LO 5
#define SCFG_ARM9_ROM_SEC 0
#define SCFG_ARM9_ROM_STATE 1
@ -101,7 +105,6 @@
#define SCFG_ARM9_EXT_WRAM 22
#define SCFG_ARM9_EXT_CFG 23
#define SCFG_ARM7_ROM_ARM9_SEC 0
#define SCFG_ARM7_ROM_ARM9_RSEL 1
#define SCFG_ARM7_ROM_ARM7_SEC 2
@ -152,52 +155,66 @@
#define SCFG_ARM7_SHARED_OFFSET 47
#define SYSMENU_VERSION_NUM 0
#define SYSMENU_VERSION_STR 1
#define SYSMENU_EULA_URL 2
#define SYSMENU_NUP_HOST 3
#define SYSMENU_TIMESTAMP 4
#define SYSMENU_SIGN_NUP_CERT 5
#define SYSMENU_SIGN_NUP_PRV 6
#define SYSMENU_SIGN_SHOP_CERT 7
#define SYSMENU_SIGN_SHOP_PRV 8
#define SYSMENU_SIGN_NINTENDO_CA 9
#define SYSMENU_SIGN_NINTENDO_CAC2 10
#define SYSMENU_SIGN_NINTENDO_CAG2 11
#define SYSMENU_TIMESTAMP 0
#define SYSMENU_VERSION_NUM 1
#define SYSMENU_VERSION_STR 2
#define SYSMENU_EULA_URL 3
#define SYSMENU_NUP_HOST 4
#define SYSMENU_SIGN_IDX 5
#define SYSMENU_NUP_CERT 5
#define SYSMENU_NUP_PRV 6
#define SYSMENU_SHOP_CERT 7
#define SYSMENU_SHOP_PRV 8
#define SYSMENU_NINTENDO_CA 9
#define SYSMENU_NINTENDO_CAC2 10
#define SYSMENU_NINTENDO_CAG2 11
#define VERSION_WIRELESS 0
#define VERSION_FONT 1
#define VERSION_OTHER 2
#define SYSMENU_HASH_IDX 5
#define FONT_TIMESTAMP 0
#define FONT_INFO 1
#define WL_VERSION 0
#define WL_NUM_FW 1
#define WL_FW_TYPE 2
#define VERSION_OTHER 0
// 各メニューサイズ
#define ROOTMENU_SIZE 11
#define ROOTMENU_SIZE 14
#define OWNERMENU_SIZE 6
#define PARENTALMENU_SIZE 12
#define OTHERMENU_SIZE 11
#define SECURE_USER_MENU_SIZE 9
#define OTHERMENU_SIZE 3
#define NORMAL_HW_MENU_SIZE 2
#define SECURE_HW_MENU_SIZE 6
#define SECURE_HW_MENU_SIZE 5
#define SCFG_ARM7_MENU_SIZE 47
#define SCFG_ARM9_MENU_SIZE 24
#define SYSMENU_MENU_SIZE 12
#define VERSIONMENU_SIZE 2
#define FONTMENU_SIZE 1
#define WLMENU_SIZE 3
#define VERSIONMENU_SIZE 0
extern int s_numMenu[];
extern const char *s_strRootMenu[];
extern const char *s_strOwnerMenu[];
extern const char *s_strParentalMenu[];
extern const char *s_strSecureUserMenu[];
extern const char *s_strOtherMenu[];
extern const char *s_strNormalHWMenu[];
extern const char *s_strSecureHWMenu[];
extern const char *s_strSCFGARM7Menu[];
extern const char *s_strSCFGARM9Menu[];
extern const char *s_strOtherMenu[];
extern const char *s_strSystemMenu[];
extern const char *s_strVersionMenu[];
extern const char *s_strFontMenu[] ;
extern const char *s_strWLMenu[];
extern const char **s_strMetaMenu[];
extern const char *s_strARM7RegisterName[];
extern const char *s_strARM9RegisterName[];
extern const char *s_strSCFGViewMode[];
extern char *s_strEnable[];
extern char *s_strJoint[];
extern char *s_strCorrect[];
@ -205,6 +222,9 @@ extern char *s_strSupply[];
extern char *s_strRomMode[];
extern char *s_strPSRAM[];
extern char *s_strCpuSpeed[];
extern char *s_strOK[];
extern char *s_strWLFWType[];
extern char *s_strResult[];
extern char *s_strBool[];
extern char *s_strAccess[];
extern char *s_strRomApp[];

View File

@ -1,7 +1,7 @@
#include <twl.h>
#include "util.h"
u8 ctoh( char c );
u8 ctoh( const char c );
void putBinary( u8 *src, u32 size )
{
@ -14,7 +14,7 @@ void putBinary( u8 *src, u32 size )
OS_TPrintf( "\n" );
}
u8 ctoh( char c )
u8 ctoh( const char c )
{
if( '0' <= c && c <= '9' )
{
@ -34,7 +34,7 @@ u8 ctoh( char c )
return 0;
}
void strToHexa( char *src, u8 *dst, u32 length )
void strToHexa( const char *src, u8 *dst, u32 length )
// 受け取った文字列配列を16進配列へ変換
// lengthは文字数ではなくバイト数なので注意
{

View File

@ -5,6 +5,6 @@
#include <twl.h>
void putBinary( u8 *src, u32 size );
void strToHexa( char *src, u8 *dst, u32 length );
void strToHexa( const char *src, u8 *dst, u32 length );
#endif

View File

@ -36,7 +36,6 @@ void getOtherInfo( void );
/* global variables ----------------------------- */
DispInfoEntry* gAllInfo[ROOTMENU_SIZE]; // それぞれのメニューごとに項目の中身を"文字列で"持つ配列
u8 *bufLCFG;
// コンテンツタイトル関係
OSTitleId *gContentsTitle; // コンテンツタイトルの一覧
@ -49,6 +48,7 @@ u8 gArm7SCFGShared[DISPINFO_SHARED_SCFG_WRAM_SIZE];
// LCFGReadの結果
BOOL gLCFGAccessible;
u8 * gBufLCFG;
/* static data ---------------------------------- */
@ -61,10 +61,15 @@ void displayInfoMain( void )
static int line = 0; // 現在選択しているページナンバと行
static int changeLine = 0; // changeMode用
static BOOL firstCall = TRUE; // 最初の呼び出しか否か
// 0: changemode 1: executemode 2: result on/off 3:(require 2=true) success/failed
static u8 modeFlag = 0;
static BOOL isChangeMode = FALSE;
static BOOL executeMode = FALSE;
BOOL repaintFlag = FALSE;
ChangeCotnrolResult ccResult = CHANGE_NOTHING;
ChangeCotnrolResult changeResult = CHANGE_NOTHING;
// 初回の呼び出し時は全ての情報を取得しなおす
if( firstCall )
@ -73,30 +78,34 @@ void displayInfoMain( void )
getAllInfo();
}
if( isChangeMode )
if( modeFlag & MODE_CHANGE_MASK )
{
ccResult = changeControl( &menu, &line, &changeLine, &isChangeMode );
changeResult = changeControl( &menu, &line, &changeLine, &modeFlag );
}
else if( modeFlag & MODE_EXECUTE_MASK )
{
repaintFlag |= executeControl( &line, &changeLine, &modeFlag );
}
else
{
repaintFlag = control( &menu, &line, &changeLine, &isChangeMode );
repaintFlag |= control( &menu, &line, &changeLine, &modeFlag );
}
if( ccResult == CHANGE_VALUE_CHANGED )
if( changeResult == CHANGE_VALUE_CHANGED )
{
// 値が更新されたときは全部取得しなおす
LCFG_WriteTWLSettings( (u8 (*) [LCFG_WRITE_TEMP] ) bufLCFG );
LCFG_WriteTWLSettings( (u8 (*) [LCFG_WRITE_TEMP] ) gBufLCFG );
getAllInfo();
}
// パッド情報で選んでる場所とか情報とか更新
if( ccResult == CHANGE_VALUE_CHANGED || ccResult == CHANGE_CONTROL || repaintFlag || firstCall )
if( changeResult == CHANGE_VALUE_CHANGED || changeResult == CHANGE_CONTROL || repaintFlag || firstCall )
{
// 何か操作があったときはキャンバスクリアして描画しなおし
NNS_G2dCharCanvasClear( &gCanvas, TXT_COLOR_WHITE );
NNS_G2dCharCanvasClear( &gCanvasSub, TXT_COLOR_WHITE );
// 情報一覧を描画する
drawMenu( menu, line, changeLine, isChangeMode);
drawMenu( menu, line, changeLine, modeFlag );
firstCall = FALSE;
}
@ -110,15 +119,15 @@ void initInfo( void )
// sjis (char)
infoAlloc( gAllInfo[MENU_OWNER], OWNER_BIRTHDAY, DISPINFO_BUFSIZE , TRUE );
infoAlloc( gAllInfo[MENU_OTHER], OTHER_LCFG_LASTBOOT_ID, DISPINFO_BUFSIZE , TRUE );
infoAlloc( gAllInfo[MENU_SECURE_USER], SECURE_USER_LASTBOOT_ID, DISPINFO_BUFSIZE , TRUE );
infoAlloc( gAllInfo[MENU_SECURE_USER], SECURE_USER_LAUNCHER_ID, DISPINFO_BUFSIZE, TRUE );
infoAlloc( gAllInfo[MENU_NORMAL_HW], NORMAL_HW_UNIQUE_ID, OS_TWL_HWINFO_MOVABLE_UNIQUE_ID_LEN*3 , TRUE );
infoAlloc( gAllInfo[MENU_SECURE_HW], SECURE_HW_SERIAL , OS_TWL_HWINFO_SERIALNO_LEN_MAX + 1, TRUE );
infoAlloc( gAllInfo[MENU_SECURE_HW], SECURE_HW_LANGUAGE, DISPINFO_BUFSIZE , TRUE );
infoAlloc( gAllInfo[MENU_SECURE_HW], SECURE_HW_FUSE, DISPINFO_BUFSIZE , TRUE );
infoAlloc( gAllInfo[MENU_SECURE_HW], SECURE_HW_TITLEID_LO, DISPINFO_BUFSIZE, TRUE );
infoAlloc( gAllInfo[MENU_SCFG_ARM7], SCFG_ARM7_MI_CC, DISPINFO_BUFSIZE , TRUE );
infoAlloc( gAllInfo[MENU_SCFG_ARM7], SCFG_ARM7_MI_CA, DISPINFO_BUFSIZE , TRUE );
infoAlloc( gAllInfo[MENU_VERSION], VERSION_WIRELESS, DISPINFO_BUFSIZE, TRUE );
infoAlloc( gAllInfo[MENU_WL], WL_VERSION, DISPINFO_BUFSIZE, TRUE );
// utf(u16)
infoAlloc( gAllInfo[MENU_SYSMENU], SYSMENU_EULA_URL, TWL_EULA_URL_LEN + 1, FALSE );
@ -161,11 +170,17 @@ void getAllInfo( void )
getOwnerInfo();
getParentalInfo();
getSecureUserInfo();
getOtherInfo();
getHWInfo();
getSCFGInfo();
getSysmenuInfo();
getVersions();
getFontInfo();
getWLInfo();
#if NAM_ENABLE
getContentsVersion();
#endif
printAllInfo();
OS_TPrintf("reflesh information finished\n");
@ -208,10 +223,9 @@ void displayInfoInit( void )
}
// LCFGデータの読み出し
bufLCFG = (u8*) Alloc ( LCFG_READ_TEMP );
SDK_ASSERT( bufLCFG );
gLCFGAccessible = LCFG_ReadTWLSettings( (u8 (*)[ LCFG_READ_TEMP ]) bufLCFG );
gBufLCFG = (u8*) Alloc ( LCFG_READ_TEMP );
SDK_ASSERT( gBufLCFG );
gLCFGAccessible = LCFG_ReadTWLSettings( (u8 (*)[ LCFG_READ_TEMP ]) gBufLCFG );
GXS_SetVisiblePlane( GX_PLANEMASK_BG0 );
GX_DispOn();
@ -230,13 +244,36 @@ void printAllInfo ( void )
{
DispInfoEntry *entry;
if( loop1 == MENU_VERSION && loop2 >= MENU_OTHER )
if( loop1 == MENU_VERSION && VERSION_OTHER <= loop2 )
{
int idx = loop2 - MENU_OTHER;
int idx = loop2 - VERSION_OTHER;
OS_TPrintf("%d %d : %x %x\n", loop1, loop2, gContentsTitle[idx], gContentsVersion[idx] );
continue;
}
if( loop1 == MENU_FONT && FONT_INFO <= loop2 )
{
int infoType = (loop2 - FONT_INFO) % NUM_FONT_INFO;
int fontidx = (loop2 - FONT_INFO) / NUM_FONT_INFO;
switch( infoType )
{
case 0:
OS_TPrintf("%d %d : %s\n", loop1, loop2, gFontInfo[fontidx].name );
break;
case 1:
OS_TPrintf("%d %d : %d\n", loop1, loop2, gFontInfo[fontidx].size );
break;
case 2:
OS_TPrintf("%d %d : %d\n", loop1, loop2, gFontInfo[fontidx].isHashOK );
break;
}
continue;
}
entry = &gAllInfo[loop1][loop2];
if( entry->isNumData )

View File

@ -24,6 +24,12 @@
#define DISPINFO_BUFSIZE 64
#define MODE_CHANGE_MASK 0x1
#define MODE_EXECUTE_MASK 0x2
#define MODE_RESULT_DISPLAY_MASK 0x4
#define MODE_RESULT_MASK 0x8
#define MODE_RESULT_SHIFT 3
#ifdef __cplusplus
extern "C" {
#endif
@ -79,6 +85,7 @@ extern u8 gArm7SCFGReg[DISPINFO_SHARED_SCFG_REG_SIZE]; // ARM7
extern u8 gArm7SCFGShared[DISPINFO_SHARED_SCFG_WRAM_SIZE]; // ARM7からのデータ取得用バッファ
extern BOOL gLCFGAccessible;
extern u8* gBufLCFG;
////////////////////////////////

View File

@ -0,0 +1,29 @@
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
ICON_DIR = ./icon
BANNER_ICON = $(ICON_DIR)/$(GAMECODE).bmp
BANNER_SPEC = banner_v3.bsf
TARGETS = $(GAMECODE).bnr
INSTALL_DIR = ./
INSTALL_TARGETS = $(TARGETS)
BANNER_ICON_NAME = $(basename $(BANNER_ICON))
LDIRT_CLEAN = $(TARGETS) \
$(BANNER_ICON_NAME).nbfs \
$(BANNER_ICON_NAME).nbfc \
$(BANNER_ICON_NAME).nbfp \
$(TARGETS:.bnr=.srl)
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
#----------------------------------------------------------------------------
# build
#----------------------------------------------------------------------------
do-build: $(TARGETS)
$(TARGETS): $(BANNER_SPEC) $(BANNER_ICON)
$(NTEXCONV) -no -bg -bgb -bgnc $(BANNER_ICON) >/dev/null && \
$(MAKEBANNER) -N $(BANNER_ICON_NAME) $(BANNER_SPEC) $(TARGETS)

View File

@ -0,0 +1,18 @@
#! make -f
#----------------------------------------------------------------------------
# Project: TwlIPL
# File: Makefile
#
# 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:: $
# $Rev$
# $Author$
#----------------------------------------------------------------------------

View File

@ -1,6 +1,6 @@
#! make -f
#----------------------------------------------------------------------------
# Project: TwlIPL
# Project: TwlSDK - demos - simpleShoot-1
# File: Makefile
#
# Copyright 2007 Nintendo. All rights reserved.
@ -11,39 +11,24 @@
# 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:: $
# $Date:: $
# $Rev$
# $Author$
#----------------------------------------------------------------------------
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
SUBDIRS =
SUBMAKES = Makefile.020A Makefile.021A Makefile.022A Makefile.023A\
Makefile.024A Makefile.025A
ICON_DIR = ./icon
BANNER_ICON = $(ICON_DIR)/gameIcon.bmp
BANNER_SPEC = banner_v3.bsf
TARGETS = banner.bnr
INSTALL_DIR = ./
INSTALL_TARGETS = $(TARGETS)
BANNER_ICON_NAME = $(basename $(BANNER_ICON))
LDIRT_CLEAN = $(TARGETS) \
$(BANNER_ICON_NAME).nbfs \
$(BANNER_ICON_NAME).nbfc \
$(BANNER_ICON_NAME).nbfp \
$(TARGETS:.bnr=.srl)
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
include $(TWL_IPL_RED_ROOT)/build/tests/RelocateChecker/buildtools/commondefs
#----------------------------------------------------------------------------
# build
do-build : $(TARGETS)
include $(TWL_IPL_RED_ROOT)/build/tests/RelocateChecker/buildtools/modulerules
#----------------------------------------------------------------------------
do-build: $(TARGETS)
$(TARGETS): $(BANNER_SPEC) $(BANNER_ICON)
$(NTEXCONV) -no -bg -bgb -bgnc $(BANNER_ICON) >/dev/null && \
$(MAKEBANNER) -N $(BANNER_ICON_NAME) $(BANNER_SPEC) $(TARGETS)
#===== End of Makefile =====
#

View File

@ -0,0 +1,49 @@
#! make -f
#----------------------------------------------------------------------------
# Project: TwlIPL
# File: Makefile
#
# 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:: $
# $Rev$
# $Author$
#----------------------------------------------------------------------------
GAMECODE = 020A
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
ICON_DIR = ./icon
BANNER_ICON = $(ICON_DIR)/$(GAMECODE).bmp
BANNER_SPEC = banner_v3.bsf
TARGETS = $(GAMECODE).bnr
INSTALL_DIR = ./
INSTALL_TARGETS = $(TARGETS)
BANNER_ICON_NAME = $(basename $(BANNER_ICON))
LDIRT_CLEAN = $(TARGETS) \
$(BANNER_ICON_NAME).nbfs \
$(BANNER_ICON_NAME).nbfc \
$(BANNER_ICON_NAME).nbfp \
$(TARGETS:.bnr=.srl)
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
#----------------------------------------------------------------------------
# build
#----------------------------------------------------------------------------
do-build: $(TARGETS)
$(TARGETS): $(BANNER_SPEC) $(BANNER_ICON)
$(NTEXCONV) -no -bg -bgb -bgnc $(BANNER_ICON) >/dev/null && \
$(MAKEBANNER) -N $(BANNER_ICON_NAME) $(BANNER_SPEC) $(TARGETS)
#

View File

@ -0,0 +1,49 @@
#! make -f
#----------------------------------------------------------------------------
# Project: TwlIPL
# File: Makefile
#
# 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:: $
# $Rev$
# $Author$
#----------------------------------------------------------------------------
GAMECODE = 021A
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
ICON_DIR = ./icon
BANNER_ICON = $(ICON_DIR)/$(GAMECODE).bmp
BANNER_SPEC = banner_v3.bsf
TARGETS = $(GAMECODE).bnr
INSTALL_DIR = ./
INSTALL_TARGETS = $(TARGETS)
BANNER_ICON_NAME = $(basename $(BANNER_ICON))
LDIRT_CLEAN = $(TARGETS) \
$(BANNER_ICON_NAME).nbfs \
$(BANNER_ICON_NAME).nbfc \
$(BANNER_ICON_NAME).nbfp \
$(TARGETS:.bnr=.srl)
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
#----------------------------------------------------------------------------
# build
#----------------------------------------------------------------------------
do-build: $(TARGETS)
$(TARGETS): $(BANNER_SPEC) $(BANNER_ICON)
$(NTEXCONV) -no -bg -bgb -bgnc $(BANNER_ICON) >/dev/null && \
$(MAKEBANNER) -N $(BANNER_ICON_NAME) $(BANNER_SPEC) $(TARGETS)
#

View File

@ -0,0 +1,49 @@
#! make -f
#----------------------------------------------------------------------------
# Project: TwlIPL
# File: Makefile
#
# 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:: $
# $Rev$
# $Author$
#----------------------------------------------------------------------------
GAMECODE = 022A
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
ICON_DIR = ./icon
BANNER_ICON = $(ICON_DIR)/$(GAMECODE).bmp
BANNER_SPEC = banner_v3.bsf
TARGETS = $(GAMECODE).bnr
INSTALL_DIR = ./
INSTALL_TARGETS = $(TARGETS)
BANNER_ICON_NAME = $(basename $(BANNER_ICON))
LDIRT_CLEAN = $(TARGETS) \
$(BANNER_ICON_NAME).nbfs \
$(BANNER_ICON_NAME).nbfc \
$(BANNER_ICON_NAME).nbfp \
$(TARGETS:.bnr=.srl)
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
#----------------------------------------------------------------------------
# build
#----------------------------------------------------------------------------
do-build: $(TARGETS)
$(TARGETS): $(BANNER_SPEC) $(BANNER_ICON)
$(NTEXCONV) -no -bg -bgb -bgnc $(BANNER_ICON) >/dev/null && \
$(MAKEBANNER) -N $(BANNER_ICON_NAME) $(BANNER_SPEC) $(TARGETS)
#

View File

@ -0,0 +1,49 @@
#! make -f
#----------------------------------------------------------------------------
# Project: TwlIPL
# File: Makefile
#
# 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:: $
# $Rev$
# $Author$
#----------------------------------------------------------------------------
GAMECODE = 023A
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
ICON_DIR = ./icon
BANNER_ICON = $(ICON_DIR)/$(GAMECODE).bmp
BANNER_SPEC = banner_v3.bsf
TARGETS = $(GAMECODE).bnr
INSTALL_DIR = ./
INSTALL_TARGETS = $(TARGETS)
BANNER_ICON_NAME = $(basename $(BANNER_ICON))
LDIRT_CLEAN = $(TARGETS) \
$(BANNER_ICON_NAME).nbfs \
$(BANNER_ICON_NAME).nbfc \
$(BANNER_ICON_NAME).nbfp \
$(TARGETS:.bnr=.srl)
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
#----------------------------------------------------------------------------
# build
#----------------------------------------------------------------------------
do-build: $(TARGETS)
$(TARGETS): $(BANNER_SPEC) $(BANNER_ICON)
$(NTEXCONV) -no -bg -bgb -bgnc $(BANNER_ICON) >/dev/null && \
$(MAKEBANNER) -N $(BANNER_ICON_NAME) $(BANNER_SPEC) $(TARGETS)
#

View File

@ -0,0 +1,49 @@
#! make -f
#----------------------------------------------------------------------------
# Project: TwlIPL
# File: Makefile
#
# 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:: $
# $Rev$
# $Author$
#----------------------------------------------------------------------------
GAMECODE = 024A
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
ICON_DIR = ./icon
BANNER_ICON = $(ICON_DIR)/$(GAMECODE).bmp
BANNER_SPEC = banner_v3.bsf
TARGETS = $(GAMECODE).bnr
INSTALL_DIR = ./
INSTALL_TARGETS = $(TARGETS)
BANNER_ICON_NAME = $(basename $(BANNER_ICON))
LDIRT_CLEAN = $(TARGETS) \
$(BANNER_ICON_NAME).nbfs \
$(BANNER_ICON_NAME).nbfc \
$(BANNER_ICON_NAME).nbfp \
$(TARGETS:.bnr=.srl)
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
#----------------------------------------------------------------------------
# build
#----------------------------------------------------------------------------
do-build: $(TARGETS)
$(TARGETS): $(BANNER_SPEC) $(BANNER_ICON)
$(NTEXCONV) -no -bg -bgb -bgnc $(BANNER_ICON) >/dev/null && \
$(MAKEBANNER) -N $(BANNER_ICON_NAME) $(BANNER_SPEC) $(TARGETS)
#

View File

@ -0,0 +1,49 @@
#! make -f
#----------------------------------------------------------------------------
# Project: TwlIPL
# File: Makefile
#
# 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:: $
# $Rev$
# $Author$
#----------------------------------------------------------------------------
GAMECODE = 025A
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
ICON_DIR = ./icon
BANNER_ICON = $(ICON_DIR)/$(GAMECODE).bmp
BANNER_SPEC = banner_v3.bsf
TARGETS = $(GAMECODE).bnr
INSTALL_DIR = ./
INSTALL_TARGETS = $(TARGETS)
BANNER_ICON_NAME = $(basename $(BANNER_ICON))
LDIRT_CLEAN = $(TARGETS) \
$(BANNER_ICON_NAME).nbfs \
$(BANNER_ICON_NAME).nbfc \
$(BANNER_ICON_NAME).nbfp \
$(TARGETS:.bnr=.srl)
include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules
#----------------------------------------------------------------------------
# build
#----------------------------------------------------------------------------
do-build: $(TARGETS)
$(TARGETS): $(BANNER_SPEC) $(BANNER_ICON)
$(NTEXCONV) -no -bg -bgb -bgnc $(BANNER_ICON) >/dev/null && \
$(MAKEBANNER) -N $(BANNER_ICON_NAME) $(BANNER_SPEC) $(TARGETS)
#

Binary file not shown.

After

Width:  |  Height:  |  Size: 630 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 630 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 630 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 630 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 630 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 630 B

View File

@ -0,0 +1,24 @@
fFoot = open "MakeFooter.txt"
fHead = open "MakeHeader.txt"
contentFoot = fFoot.read
contentHead = fHead.read
fFoot.close
fHead.close
gamecodeList = ["020A","021A","022A","023A","024A","025A"]
fileNameList = []
for gamecode in gamecodeList
fileName = "Makefile.#{gamecode}"
fileNameList << fileName
f = open( fileName, "w")
f.puts contentHead
f.puts "GAMECODE\t=\t#{gamecode}"
f.puts contentFoot
f.close
end
print fileNameList