mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@2997 b08762b0-b915-fc4b-9d8c-17b2551a87ff
111 lines
3.8 KiB
Plaintext
111 lines
3.8 KiB
Plaintext
========================
|
||
ホワイトリストの作成方法
|
||
========================
|
||
|
||
●概要
|
||
|
||
既存の .srl を特定フォルダ以下に格納しておき、それに対してツールを使うことで
|
||
各種 .bin ファイルを生成します。
|
||
|
||
本フォルダでは、準備済みの .bin ファイルと、バージョン識別用の revision.bin を
|
||
すべて連結したのち、 .tad に変換しているだけです。
|
||
|
||
.bin ファイルの更新時に、このフォルダに配置、コミット後に全体を(上書き)
|
||
チェックアウトし直してからビルドしてください。
|
||
|
||
原則、ホワイトリストは trunk のみで管理します。
|
||
|
||
ブランチでビルドしたい場合は、trunkを更新したのち、該当ブランチにマージして
|
||
ご利用ください。
|
||
|
||
|
||
●変換ツール
|
||
|
||
TwlIPL_private以下にソースコードがありますので、ビルドしてお使いください。
|
||
|
||
・MakeDSHashTable.exe [.srlフォルダ]
|
||
|
||
旧マスタリングそのものであり、ヘッダおよびARM9/ARM7スタティック領域、
|
||
およびオーバーレイのある程度を対象としたデータベースを作成します。
|
||
|
||
指定フォルダ以下を再帰的に走査し、DSHashTable.bin を作成します。
|
||
旧マスタリングすらされていない .srl が対象です。
|
||
|
||
|
||
・MakeDSHashTableEx.exe [.srlフォルダ]
|
||
|
||
新マスタリングで追加されたバナー領域を対象としたデータベースを作成します。
|
||
|
||
指定フォルダ以下を再帰的に走査し、DSHashTableEx.bin を作成します。
|
||
新マスタリングされていない .srl が対象です。
|
||
|
||
|
||
・MakeDSHashTableAdHoc.exe [.srlフォルダ]
|
||
|
||
タイトル別に範囲を指定したハッシュ値を格納したデータベースを作成します。
|
||
|
||
同一フォルダに存在している、 MakeDSHashTableAdHoc.ini を元に、
|
||
必要な .srl を指定フォルダから探し出して DSHashTableAdHoc.bin を
|
||
作成します。
|
||
|
||
MakeDSHashTableAdHoc.ini は、現在以下の場所で管理しています。
|
||
(No.1のUSBを参照してください)
|
||
|
||
$TwlIPL_private/build/tools/MakeDSHashTableAdHoc
|
||
|
||
※ 面倒ならTwlIPLに移しても構いません。
|
||
|
||
|
||
●MakeDSHashTableAdHoc.iniの書式
|
||
|
||
Windows INIファイルの書式で、設定できる項目は次の通りです。
|
||
なお、数値は、十進数でも十六進数でも構いません。(0xが付くと十六進数と判断される)
|
||
|
||
(例)
|
||
; セミコロンの後ろはコメントです
|
||
[Tak The Greet Juju Challenge]; 他のものとダブらなければ日本語でも何でもOKです
|
||
game_code = A3TE ; イニシャルコードです
|
||
rom_version = 0 ; リマスターバージョンです
|
||
|
||
; 空行追加もお好きにどうぞ
|
||
|
||
offset0 = 0x0013a400 ; ハッシュ対象オフセット (0x200の倍数) No.0
|
||
length0 = 0x200 ; ハッシュ対象サイズ (0x200の倍数) No.0
|
||
|
||
; 以下は省略可 (offsetとlengthは必ずセットで、通し番号は欠番無いように)
|
||
offset1 = 0x00141a00 ; ハッシュ対象オフセット (0x200の倍数) No.1
|
||
length1 = 0x200 ; ハッシュ対象サイズ (0x200の倍数) No.1
|
||
offset2 = 0x00145800 ; ハッシュ対象オフセット (0x200の倍数) No.2
|
||
length2 = 0x200 ; ハッシュ対象サイズ (0x200の倍数) No.2
|
||
offset3 = 0x01a5ac00 ; ハッシュ対象オフセット (0x200の倍数) No.3
|
||
length3 = 0x200 ; ハッシュ対象サイズ (0x200の倍数) No.3
|
||
offset4 = 0x01a5d400 ; ハッシュ対象オフセット (0x200の倍数) No.4
|
||
length4 = 0x5600 ; ハッシュ対象サイズ (0x200の倍数) No.4
|
||
offset5 = 0x0005c400 ; ハッシュ対象オフセット (0x200の倍数) No.5
|
||
length5 = 0x200 ; ハッシュ対象サイズ (0x200の倍数) No.5
|
||
offset6 = 0x00142000 ; ハッシュ対象オフセット (0x200の倍数) No.6
|
||
length6 = 0x200 ; ハッシュ対象サイズ (0x200の倍数) No.6
|
||
offset7 = 0x00126400 ; ハッシュ対象オフセット (0x200の倍数) No.7
|
||
length7 = 0x5C00 ; ハッシュ対象サイズ (0x200の倍数) No.7
|
||
; ~7が最大です
|
||
|
||
●TWLの更新時の注意
|
||
|
||
commondefs.DSHashTable内の DS_HASH_TABLE_MAJOR_VERSION または
|
||
DS_HASH_TABLE_MINOR_VERSION を更新するのを忘れないでください。
|
||
|
||
|
||
●CTR対応
|
||
|
||
作成された HNHA-XXXX-YYYY.bin を以下のフォルダにコピーしてください。
|
||
|
||
$Horizon/resources/shareddata/twl/DSHashTable/
|
||
|
||
ファイル名が変更された場合は、以下のファイルの内容を修正してください。
|
||
(DSHashTableAdHoc.bin のみの修正では変化しないはず)
|
||
|
||
$Horizon/resources/shareddata/twl/OMakefile
|
||
$Horizon/sources/firmware/CTR-Kernel/updater1st/UpdaterContents/Contents/ProgramPathes.om
|
||
|
||
以上
|