・SDKリビジョン3263に対応。

・TWLSettingsDataにlastTimeBootSoftIndex要素とそのアクセス関数を追加。
・TWL設定ライト時にNTR側設定に反映する値に変更があった場合のみNTR側設定にライトするよう変更。
・makerom.TWLの仕様変更に対応。
・TADファイル名にTWL_CODEGENの値を追加するように変更。
・ドキュメント更新。

git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@409 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
yosiokat 2007-12-26 12:54:53 +00:00
parent be49da0688
commit 38dd0e931d
26 changed files with 347 additions and 63 deletions

View File

@ -58,14 +58,16 @@ BOOL SYSM_WriteTWLSettingsFile( void )
BOOL retval; BOOL retval;
// TWL設定データのライト // TWL設定データのライト
retval = TSD_WriteSettings(); retval = TSD_WriteSettings();
// ライト成功なら、NVRAMのNTR設定データに値を反映
if( retval ) { if( retval ) {
// ライトに成功したら、TWL設定データを有効にする。
SYSM_SetValidTSD( TRUE ); SYSM_SetValidTSD( TRUE );
SYSMi_ConvertTWL2NTRSettings();
(void)NSD_WriteSettings(); // NTR設定データに反映する値が変化していたら、NTR設定データを書き込み。
#ifndef SDK_FINALROM if( !SYSMi_VerifyNTRSettings() ) {
(void)SYSMi_VerifyNTRSettings(); // デバッグ用ベリファイ SYSMi_ConvertTWL2NTRSettings();
#endif (void)NSD_WriteSettings();
}
} }
return retval; return retval;
} }

View File

@ -27,7 +27,7 @@ TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED TWL_ARCHGEN = LIMITED
TITLEID_LO = HIWR TITLEID_LO = HIWR
TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR).tad TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR)$(CODEGEN_ARCH).tad
TARGET_BIN = main.srl TARGET_BIN = main.srl

View File

@ -132,15 +132,49 @@ Property
# #
CodecMode $(MAKEROM_CODEC_MODE) CodecMode $(MAKEROM_CODEC_MODE)
TitleID_Lo $(TITLEID_LO)
TitleID_Hi 0x00010001
# PrivateSaveDataSize 16K
# PublicSaveDataSize 16K
### ###
#### END #### END
} }
AppendProperty
{
#
# Publisher : "Nintendo"
# don't have to edit
Publisher Nintendo
#
# Application type : [USER/SYSTEM]
# don't have to edit
AppType User
#
# launch title on the launcher : [TRUE/FALSE]
# don't have to edit
Launch TRUE
#
# GameCode for TitleID : Your GameCode in 4 ascii words
#
GameCode $(TITLEID_LO)
#
# Public save data size: [16K/32K/64K/128K/256K/512K/1M/2M/4M/8M]
#
#PublicSaveDataSize 32K
#
# Private save data size: [16K/32K/64K/128K/256K/512K/1M/2M/4M/8M]
#
#PrivateSaveDataSize 16K
#
# Enable SaveBannerFile
#SaveBannerFile TRUE
}
RomSpec RomSpec
{ {
Offset 0x00000000 Offset 0x00000000

View File

@ -31,7 +31,7 @@ TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED TWL_ARCHGEN = LIMITED
TITLEID_LO = LNCR TITLEID_LO = LNCR
TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR).tad TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR)$(CODEGEN_ARCH).tad
TARGET_BIN = main.srl TARGET_BIN = main.srl

View File

@ -134,18 +134,48 @@ Property
# #
CodecMode $(MAKEROM_CODEC_MODE) CodecMode $(MAKEROM_CODEC_MODE)
TitleID_Lo $(TITLEID_LO)
TitleID_Hi 0x00010001
PrivateSaveDataSize 16K
# PublicSaveDataSize 16K
### ###
#### END #### END
} }
AppendProperty
{
#
# Publisher : "Nintendo"
# don't have to edit
Publisher Nintendo
#
# Application type : [USER/SYSTEM]
# don't have to edit
AppType System
#
# launch title on the launcher : [TRUE/FALSE]
# don't have to edit
Launch FALSE
#
# GameCode for TitleID : Your GameCode in 4 ascii words
#
GameCode $(TITLEID_LO)
#
# Public save data size: [16K/32K/64K/128K/256K/512K/1M/2M/4M/8M]
#
#PublicSaveDataSize 32K
#
# Private save data size: [16K/32K/64K/128K/256K/512K/1M/2M/4M/8M]
#
PrivateSaveDataSize 16K
#
# Enable SaveBannerFile
SaveBannerFile FALSE
}
RomSpec RomSpec
{ {
Offset 0x00000000 Offset 0x00000000

View File

@ -27,7 +27,7 @@ TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED TWL_ARCHGEN = LIMITED
TITLEID_LO = MSET TITLEID_LO = MSET
TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR).tad TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR)$(CODEGEN_ARCH).tad
TARGET_BIN = main.srl TARGET_BIN = main.srl

View File

@ -132,15 +132,49 @@ Property
# #
CodecMode $(MAKEROM_CODEC_MODE) CodecMode $(MAKEROM_CODEC_MODE)
TitleID_Lo $(TITLEID_LO)
TitleID_Hi 0x00010001
# PrivateSaveDataSize 16K
# PublicSaveDataSize 16K
### ###
#### END #### END
} }
AppendProperty
{
#
# Publisher : "Nintendo"
# don't have to edit
Publisher Nintendo
#
# Application type : [USER/SYSTEM]
# don't have to edit
AppType System
#
# launch title on the launcher : [TRUE/FALSE]
# don't have to edit
Launch TRUE
#
# GameCode for TitleID : Your GameCode in 4 ascii words
#
GameCode $(TITLEID_LO)
#
# Public save data size: [16K/32K/64K/128K/256K/512K/1M/2M/4M/8M]
#
#PublicSaveDataSize 32K
#
# Private save data size: [16K/32K/64K/128K/256K/512K/1M/2M/4M/8M]
#
#PrivateSaveDataSize 16K
#
# Enable SaveBannerFile
SaveBannerFile FALSE
}
RomSpec RomSpec
{ {
Offset 0x00000000 Offset 0x00000000

View File

@ -25,7 +25,7 @@ TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED TWL_ARCHGEN = LIMITED
TITLEID_LO = PCHT TITLEID_LO = PCHT
TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR).tad TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR)$(CODEGEN_ARCH).tad
TARGET_BIN = main.srl TARGET_BIN = main.srl

View File

@ -132,15 +132,49 @@ Property
# #
CodecMode $(MAKEROM_CODEC_MODE) CodecMode $(MAKEROM_CODEC_MODE)
TitleID_Lo $(TITLEID_LO)
TitleID_Hi 0x00010001
# PrivateSaveDataSize 16K
# PublicSaveDataSize 16K
### ###
#### END #### END
} }
AppendProperty
{
#
# Publisher : "Nintendo"
# don't have to edit
Publisher Nintendo
#
# Application type : [USER/SYSTEM]
# don't have to edit
AppType System
#
# launch title on the launcher : [TRUE/FALSE]
# don't have to edit
Launch TRUE
#
# GameCode for TitleID : Your GameCode in 4 ascii words
#
GameCode $(TITLEID_LO)
#
# Public save data size: [16K/32K/64K/128K/256K/512K/1M/2M/4M/8M]
#
#PublicSaveDataSize 32K
#
# Private save data size: [16K/32K/64K/128K/256K/512K/1M/2M/4M/8M]
#
#PrivateSaveDataSize 16K
#
# Enable SaveBannerFile
SaveBannerFile FALSE
}
RomSpec RomSpec
{ {
Offset 0x00000000 Offset 0x00000000

View File

@ -25,7 +25,7 @@ TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED TWL_ARCHGEN = LIMITED
TITLEID_LO = COPA TITLEID_LO = COPA
TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR).tad TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR)$(CODEGEN_ARCH).tad
TARGET_BIN = main.srl TARGET_BIN = main.srl

View File

@ -135,15 +135,49 @@ Property
# #
CodecMode $(MAKEROM_CODEC_MODE) CodecMode $(MAKEROM_CODEC_MODE)
TitleID_Lo $(TITLEID_LO)
TitleID_Hi 0x00010001
PrivateSaveDataSize 16K
# PublicSaveDataSize 16K
### ###
#### END #### END
} }
AppendProperty
{
#
# Publisher : "Nintendo"
# don't have to edit
Publisher Nintendo
#
# Application type : [USER/SYSTEM]
# don't have to edit
AppType User
#
# launch title on the launcher : [TRUE/FALSE]
# don't have to edit
Launch TRUE
#
# GameCode for TitleID : Your GameCode in 4 ascii words
#
GameCode $(TITLEID_LO)
#
# Public save data size: [16K/32K/64K/128K/256K/512K/1M/2M/4M/8M]
#
#PublicSaveDataSize 32K
#
# Private save data size: [16K/32K/64K/128K/256K/512K/1M/2M/4M/8M]
#
PrivateSaveDataSize 16K
#
# Enable SaveBannerFile
SaveBannerFile FALSE
}
RomSpec RomSpec
{ {
Offset 0x00000000 Offset 0x00000000

View File

@ -25,7 +25,7 @@ TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED TWL_ARCHGEN = LIMITED
TITLEID_LO = COPB TITLEID_LO = COPB
TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR).tad TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR)$(CODEGEN_ARCH).tad
TARGET_BIN = main.srl TARGET_BIN = main.srl

View File

@ -135,15 +135,49 @@ Property
# #
CodecMode $(MAKEROM_CODEC_MODE) CodecMode $(MAKEROM_CODEC_MODE)
TitleID_Lo $(TITLEID_LO)
TitleID_Hi 0x00010001
# PrivateSaveDataSize 16K
# PublicSaveDataSize 16K
### ###
#### END #### END
} }
AppendProperty
{
#
# Publisher : "Nintendo"
# don't have to edit
Publisher Nintendo
#
# Application type : [USER/SYSTEM]
# don't have to edit
AppType User
#
# launch title on the launcher : [TRUE/FALSE]
# don't have to edit
Launch TRUE
#
# GameCode for TitleID : Your GameCode in 4 ascii words
#
GameCode $(TITLEID_LO)
#
# Public save data size: [16K/32K/64K/128K/256K/512K/1M/2M/4M/8M]
#
#PublicSaveDataSize 32K
#
# Private save data size: [16K/32K/64K/128K/256K/512K/1M/2M/4M/8M]
#
#PrivateSaveDataSize 16K
#
# Enable SaveBannerFile
SaveBannerFile FALSE
}
RomSpec RomSpec
{ {
Offset 0x00000000 Offset 0x00000000

View File

@ -25,7 +25,7 @@ TARGET_PLATFORM = TWL
TWL_ARCHGEN = LIMITED TWL_ARCHGEN = LIMITED
TITLEID_LO = COPC TITLEID_LO = COPC
TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR).tad TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR)$(CODEGEN_ARCH).tad
TARGET_BIN = main.srl TARGET_BIN = main.srl

View File

@ -135,15 +135,49 @@ Property
# #
CodecMode $(MAKEROM_CODEC_MODE) CodecMode $(MAKEROM_CODEC_MODE)
TitleID_Lo $(TITLEID_LO)
TitleID_Hi 0x00010001
PrivateSaveDataSize 16K
# PublicSaveDataSize 16K
### ###
#### END #### END
} }
AppendProperty
{
#
# Publisher : "Nintendo"
# don't have to edit
Publisher Nintendo
#
# Application type : [USER/SYSTEM]
# don't have to edit
AppType User
#
# launch title on the launcher : [TRUE/FALSE]
# don't have to edit
Launch TRUE
#
# GameCode for TitleID : Your GameCode in 4 ascii words
#
GameCode $(TITLEID_LO)
#
# Public save data size: [16K/32K/64K/128K/256K/512K/1M/2M/4M/8M]
#
#PublicSaveDataSize 32K
#
# Private save data size: [16K/32K/64K/128K/256K/512K/1M/2M/4M/8M]
#
PrivateSaveDataSize 16K
#
# Enable SaveBannerFile
SaveBannerFile FALSE
}
RomSpec RomSpec
{ {
Offset 0x00000000 Offset 0x00000000

View File

@ -40,7 +40,7 @@ BINDIR = ./bin/$(TWL_BUILDTYPE)/$(TARGET_NAME)
TARGET_BIN = $(TARGET_NAME).srl TARGET_BIN = $(TARGET_NAME).srl
TITLEID_LO = RCK$(TARGET_NUMBER) TITLEID_LO = RCK$(TARGET_NUMBER)
TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR).tad TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR)$(CODEGEN_ARCH).tad
LCFILE_SPEC = ARM9-TS.lsf LCFILE_SPEC = ARM9-TS.lsf
ROM_SPEC = main.rsf ROM_SPEC = main.rsf

View File

@ -40,7 +40,7 @@ BINDIR = ./bin/$(TWL_BUILDTYPE)/$(TARGET_NAME)
TARGET_BIN = $(TARGET_NAME).srl TARGET_BIN = $(TARGET_NAME).srl
TITLEID_LO = RCK$(TARGET_NUMBER) TITLEID_LO = RCK$(TARGET_NUMBER)
TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR).tad TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR)$(CODEGEN_ARCH).tad
LCFILE_SPEC = ARM9-TS.lsf LCFILE_SPEC = ARM9-TS.lsf
ROM_SPEC = main.rsf ROM_SPEC = main.rsf

View File

@ -40,7 +40,7 @@ BINDIR = ./bin/$(TWL_BUILDTYPE)/$(TARGET_NAME)
TARGET_BIN = $(TARGET_NAME).srl TARGET_BIN = $(TARGET_NAME).srl
TITLEID_LO = RCK$(TARGET_NUMBER) TITLEID_LO = RCK$(TARGET_NUMBER)
TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR).tad TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR)$(CODEGEN_ARCH).tad
LCFILE_SPEC = ARM9-TS.lsf LCFILE_SPEC = ARM9-TS.lsf
ROM_SPEC = main.rsf ROM_SPEC = main.rsf

View File

@ -40,7 +40,7 @@ BINDIR = ./bin/$(TWL_BUILDTYPE)/$(TARGET_NAME)
TARGET_BIN = $(TARGET_NAME).srl TARGET_BIN = $(TARGET_NAME).srl
TITLEID_LO = RCK$(TARGET_NUMBER) TITLEID_LO = RCK$(TARGET_NUMBER)
TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR).tad TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR)$(CODEGEN_ARCH).tad
LCFILE_SPEC = ARM9-TS.lsf LCFILE_SPEC = ARM9-TS.lsf
ROM_SPEC = main.rsf ROM_SPEC = main.rsf

View File

@ -40,7 +40,7 @@ BINDIR = ./bin/$(TWL_BUILDTYPE)/$(TARGET_NAME)
TARGET_BIN = $(TARGET_NAME).srl TARGET_BIN = $(TARGET_NAME).srl
TITLEID_LO = RCK$(TARGET_NUMBER) TITLEID_LO = RCK$(TARGET_NUMBER)
TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR).tad TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR)$(CODEGEN_ARCH).tad
LCFILE_SPEC = ARM9-TS.lsf LCFILE_SPEC = ARM9-TS.lsf
ROM_SPEC = main.rsf ROM_SPEC = main.rsf

View File

@ -40,7 +40,7 @@ BINDIR = ./bin/$(TWL_BUILDTYPE)/$(TARGET_NAME)
TARGET_BIN = $(TARGET_NAME).srl TARGET_BIN = $(TARGET_NAME).srl
TITLEID_LO = RCK$(TARGET_NUMBER) TITLEID_LO = RCK$(TARGET_NUMBER)
TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR).tad TARGET_TAD = $(BINDIR)/$(TITLEID_LO).$(TWL_BUILD_DIR)$(CODEGEN_ARCH).tad
LCFILE_SPEC = ARM9-TS.lsf LCFILE_SPEC = ARM9-TS.lsf
ROM_SPEC = main.rsf ROM_SPEC = main.rsf

View File

@ -132,15 +132,49 @@ Property
# #
CodecMode $(MAKEROM_CODEC_MODE) CodecMode $(MAKEROM_CODEC_MODE)
TitleID_Lo $(TITLEID_LO)
TitleID_Hi 0x00010001
# PrivateSaveDataSize 16K
# PublicSaveDataSize 16K
### ###
#### END #### END
} }
AppendProperty
{
#
# Publisher : "Nintendo"
# don't have to edit
Publisher Nintendo
#
# Application type : [USER/SYSTEM]
# don't have to edit
AppType User
#
# launch title on the launcher : [TRUE/FALSE]
# don't have to edit
Launch TRUE
#
# GameCode for TitleID : Your GameCode in 4 ascii words
#
GameCode $(TITLEID_LO)
#
# Public save data size: [16K/32K/64K/128K/256K/512K/1M/2M/4M/8M]
#
#PublicSaveDataSize 32K
#
# Private save data size: [16K/32K/64K/128K/256K/512K/1M/2M/4M/8M]
#
#PrivateSaveDataSize 16K
#
# Enable SaveBannerFile
#SaveBannerFile TRUE
}
RomSpec RomSpec
{ {
Offset 0x00000000 Offset 0x00000000

View File

@ -16,6 +16,7 @@ SystemMenu_RED
・署名・暗号処理 × ・署名・暗号処理 ×
・鍵管理 × ・鍵管理 ×
・メモリマップFIX ○ ・メモリマップFIX ○
  ・起動時の無線ファーム流し込み ×
・NTRコンポーネントパッチ × ・NTRコンポーネントパッチ ×
・本体設定 ・本体設定
・設定データフォーマットFIX ○ ・設定データフォーマットFIX ○

Binary file not shown.

View File

@ -142,10 +142,11 @@ typedef struct TWLSettingsData{
u32 isAvailableBatteryExtension : 1; // バッテリエクステンションモードの有効化/無効化 u32 isAvailableBatteryExtension : 1; // バッテリエクステンションモードの有効化/無効化
u32 rsv : 19; u32 rsv : 19;
}flags; }flags;
u8 rsv2[ 3 ]; // 予約 u8 rsv2[ 2 ]; // 予約
u8 country; // 国コード u8 country; // 国コード
u8 language; // 言語(NTRとの違いは、データサイズ8bit) u8 language; // 言語(NTRとの違いは、データサイズ8bit)
u8 backLightBrightness; // バックライト輝度(NTRとの違いは、データサイズ8bit) u8 backLightBrightness; // バックライト輝度(NTRとの違いは、データサイズ8bit)
u8 lastTimeBootSoftIndex; // 前回起動したソフトのインデックス番号
u8 freeSoftBoxCount; // インストール可能なNANDアプリ個数 u8 freeSoftBoxCount; // インストール可能なNANDアプリ個数
u8 rtcLastSetYear; // RTCの前回設定年 u8 rtcLastSetYear; // RTCの前回設定年
s64 rtcOffset; // RTC設定時のオフセット値ユーザーがRTC設定を変更する度にその値に応じて増減します。 s64 rtcOffset; // RTC設定時のオフセット値ユーザーがRTC設定を変更する度にその値に応じて増減します。
@ -199,6 +200,12 @@ static inline int TSD_GetBacklightBrightness( void )
return (int)GetTSD()->backLightBrightness; return (int)GetTSD()->backLightBrightness;
} }
// 前回起動したソフトのインデックスの取得
static inline u8 TSD_GetLastTimeBootSoftIndex( void )
{
return GetTSD()->lastTimeBootSoftIndex;
}
// フリーソフトBOX数の取得 // フリーソフトBOX数の取得
static inline u8 TSD_GetFreeSoftBoxCount( void ) static inline u8 TSD_GetFreeSoftBoxCount( void )
{ {
@ -396,6 +403,12 @@ static inline void TSD_SetBacklightBrightness( u8 backLightBrightness )
GetTSD()->backLightBrightness = backLightBrightness; GetTSD()->backLightBrightness = backLightBrightness;
} }
// 前回起動したソフトのインデックスをセット
static inline void TSD_SetLastTimeBootSoftIndex( u8 index )
{
GetTSD()->lastTimeBootSoftIndex = index;
}
// フリーソフトBOX数のセット // フリーソフトBOX数のセット
static inline void TSD_SetFreeSoftBoxCount( u8 count ) static inline void TSD_SetFreeSoftBoxCount( u8 count )
{ {