# packnlf, packtlf

## 説明

`packnlf` および `packtlf` は、nlf / tlf ファイルが参照している全てのファイル指定を相対パス化し、それら全てをまとめ ZIP ファイルとして出力するツールです。

`packtlf` は内部で `packnlf` を呼び出しているだけですので基本的に両者は同一のものです。

## 使用方法

### 起動コマンド

    % packnlf sample.nlf

`sample.nlf` で指定された nlf ファイルの内容を読み込み、参照している全てのファイル指定を相対パス化した sample.nlf ファイルと、参照されているファイル全てを`package` ディレクトリ以下に出力します。
また、この`package` ディレクトリの内容を ZIP 形式に圧縮したものが`package-yymmdd-hhmm.zip` として生成されます
参照されていたファイルは絶対パス、相対パスに関わらず全て`package` ディレクトリ以下にコピーされることに注意してください。

nlf ファイルの変換例

変換前の nlf ファイルデータ

> `#NLF --- NitroROM List File
> T,"d:/home/TwlSDK/build/demos/os/heap-1"
> V,1.1
> H,"bin/ARM9-TS/Debug/main_header.sbin","bin/ARM9-TS/Debug/main_files.sbin",0
> 9,"bin/ARM9-TS/Debug/main.nef","bin/ARM9-TS/Debug/main.sbin","*","bin/ARM9-TS/Debug/main_defs.sbin","*"
> 7,"D:/home/TwlSDK/components/mongoose/ARM7-TS/Debug/mongoose_sub.nef","D:/home/TwlSDK/components/mongoose/ARM7-TS/Debug/mongoose_sub.sbin","*","D:/home/TwlSDK/components/mongoose/ARM7-TS/Debug/mongoose_sub_defs.sbin","*"
> # File Images
> F,00000000,00004000,00,ffff,ffff,"bin/ARM9-TS/Debug/main_header.sbin","*",43ccc89b,512,1
> F,00004000,00013324,00,ffff,0008,"bin/ARM9-TS/Debug/main.sbin","*",43ccc89b,512,1
> F,00013400,0003d748,00,ffff,000c,"D:/home/TwlSDK/components/mongoose/ARM7-TS/Debug/mongoose_sub.sbin","*",43c36b6a,512,1
> F,0003d800,0003d809,00,ffff,0010,"bin/ARM9-TS/Debug/main_files.sbin","*",43ccc89b,512,1
> F,0003da00,0003da00,00,ffff,0012,"*FILEALLOC","*",00000000,512,1
> F,0003da00,0003e240,00,ffff,001a,"D:/home/TwlSDK/include/Twl/specfiles/default.bnr","*",43c5bca2,512,1
> #`

変換後の nlf ファイルデータ

> `#NLF --- NitroROM List File
> T,"."
> V,1.1
> H,"./bin/ARM9-TS/Debug/main_header.sbin","./bin/ARM9-TS/Debug/main_files.sbin",0
> 9,"./bin/ARM9-TS/Debug/main.nef","./bin/ARM9-TS/Debug/main.sbin","*","./bin/ARM9-TS/Debug/main_defs.sbin","*"
> 7,"./D_/home/TwlSDK/components/mongoose/ARM7-TS/Debug/mongoose_sub.nef","./D_/home/TwlSDK/components/mongoose/ARM7-TS/Debug/mongoose_sub.sbin","*","./D_/home/TwlSDK/components/mongoose/ARM7-TS/Debug/mongoose_sub_defs.sbin","*"
> # File Images
> F,00000000,00004000,00,ffff,ffff,"./bin/ARM9-TS/Debug/main_header.sbin","*",43ccc89b,512,1
> F,00004000,00013324,00,ffff,0008,"./bin/ARM9-TS/Debug/main.sbin","*",43ccc89b,512,1
> F,00013400,0003d748,00,ffff,000c,"./D_/home/TwlSDK/components/mongoose/ARM7-TS/Debug/mongoose_sub.sbin","*",43c36b6a,512,1
> F,0003d800,0003d809,00,ffff,0010,"./bin/ARM9-TS/Debug/main_files.sbin","*",43ccc89b,512,1
> F,0003da00,0003da00,00,ffff,0012,"*FILEALLOC","*",00000000,512,1
> F,0003da00,0003e240,00,ffff,001a,"./D_/home/TwlSDK/include/Twl/specfiles/default.bnr","*",43c5bca2,512,1
> #`

## 場所

`$TwlSDK/tools/bin/packnlf`
`$TwlSDK/tools/bin/packtlf`

## 参照

## 履歴

2008/09/16 packtlf についての記述を追加。
2006/01/17 初版