NSAアーカイブ

今日は、かの有名なADVエンジン「NScripter」のアーカイブフォーマットであるNSAの解析をしてました。
で、忘備録としてここに記録。

フォーマット:NS3
オフセット     データタイプ  値
0000        DWRD      ファイル数
0004        DWRD      ベースオフセット - 2
0008        CSTR      ファイル名
          BBIT      圧縮形式
          DWRD      アーカイブ内オフセット - 2
          DWRD      圧縮後サイズ
          DWRD      オリジナルサイズ

備考:
DWRD: unsigned long int
CSTR: CString
BBIT: Binary bit
圧縮形式:
0: 非圧縮
1: SBP
2: LZSS
4: NBZ
※すべてビッグエンディアンディレクトリ構造は無視。今後の課題(それとも必要ない?)
※有名なnsaarc(http://www.it.sakura.ne.jp/~s_iwa/Html/Linux/)はns3をサポートしていないので(ns2まで)、上手く展開できず。
※その場合、onscripterhttp://ogapee.at.infoseek.co.jp/onscripter.html)のnsadecで-ns3オプションを付けないと展開できない。