# サブバナー (overview)

## 説明

TWL のランチャーでは、アプリのバナーが表示されますが、 `ROM スペックファイル` で指定したバナーとは別に、サブバナーと呼ばれる別のバナーを表示することが可能です。
サブバナーはNAND アプリから書き換えることができるため、たとえばゲームの進行に応じてバナー画像が変化する といったことを実現できます。
但し、バナーのゲームタイトルは変更できません。

ランチャーではサブバナーが存在すれば、優先的にサブバナーを表示し、サブバナーが存在しなければ、
通常のバナーが表示されます。これは本体設定のソフト管理画面においても、同じ動作になります。

サブバナーは、NAND ファイルとして存在しますので、 一旦サブバナーを設定しますとその状態が電源を切っても保存され、
未設定にしない限り常にサブバナーが表示されます。

サブバナーファイルを作成するためには、通常のバナーと同じようにbannercvtr で出力されたグラフィックデータや
ntexconv で出力されたグラフィックデータとバナーコメントを設定した`bsf` ファイルを用意します。
`makebanner.TWL`に、`-s` オプションを指定することでサブバナーを作成することができます。
通常のバナーの作成方法はバナー (overview)を参照してください。

サブバナーは、NAND アプリでのみ使用でき、カードアプリでは使用できません。

## アプリへの実装

サブバナーは`ROM スペックファイル` *.rsf の`SubBannerFile` にTRUE を指定することで 利用が可能となります。

>        #  ROM SPEC FILE

>     AppendProperty
>     {
>         ....
>         #
>         # Enable SubBannerFile
>         SubBannerFile    TRUE
>     }

サブバナーを表示するには、`NA_SaveSubBanner` を使用します。 `NA_SaveSubBanner` が成功すれば、それ以降サブバナーが表示されます。 一方、サブバナーを非表示にするには`NA_DeleteSubBanner` を使用します。

サブバナーをプログラムで動的に作成することも可能です。 `NASubBanner` 構造体の`anime` メンバーを編集します。 `header` メンバーは、`NA_MakeSubBannerHeader` を使用して設定します。 サブバナー構造体については`NASubBanner` を参照してください。

現在設定されているサブバナーを取得するためには、`NA_LoadSubBanner` を使用します。

## 参照

`NA関数一覧(サブバナー), NAND アプリサンプルデモ, バナー (overview)`

## 履歴

2009/03/10 サブバナーの作成方法を修正
2008/10/30 NANDアプリから書き換え可能であることを追記
2008/09/26 ソフト管理画面について追記
2008/09/25 RSF, バナー (overview)へのリンク追加
2008/09/16 初版