### 2-3　アニメーションアイコンの作成

ファイル管理画面で表示されるアニメーションアイコンやGUIコメントは、これらの情報をファイル自身に埋め込む必要があります。3つのファイル構造がありますので、ファイルの種類とファイル構造についてを説明します。

#### 2-3-1　3つのファイル構造

メモリに保存されるファイルには3種類あり、それぞれのファイル構造を持ちます。 ICONDATA_VMS形式

先に説明したとおりの構造です。このファイルは、インフォメーションフォークを持ちません。

詳しくは「2.2　ボリュームアイコンの作成」を参照してください。

ビジュアルメモリ用アプリケーション形式

ビジュアルメモリのゲームモードで実行できるファイルは、次のようなファイル構造を満たす必要があります。

アドレス | 内　容
0000 | ビジュアルメモリのヘッダ（GHEAD.ASMに相当する部分）
0200 | インフォメーションフォーク
xxxx | アプリケーションのコード

データファイル形式

Dreamcast用アプリケーションのゲームデータを保存するファイルは、次のようなファイル構造を満たす必要があります。

アドレス | 内　容
0000 | インフォメーションフォーク
0200 | ゲームデータ

#### 2-3-2　インフォメーションフォーク

“ICONDATA_VMS”以外のファイルは、インフォメーションフォークと呼ばれるセクションがあります。この情報は、Memory Card Utilityでファイルダンプを見たときに、色付きで表示されている部分です。ファイルの詳細な情報は、すべてこのインフォメーションフォークに埋め込みます。

アニメーションアイコンのデータ領域は、色付きで表示されません。

ビジュアルメモリSDKのサンプルのtotalでは、アニメーションアイコンとビジュアルコメントを利用したインフォメーションフォークを使っていますので、参考にしてください。

インフォメーションフォークは、次のような構造を持ちます。なお、表のアドレスは、インフォメーションフォークの先頭からのオフセットアドレスを示します。

#### VMコメントデータ

16バイト分のコメントを埋め込みます。ビジュアルメモリのファイル管理や、Dreamcastのファイル管理画面にて、そのファイルを選んだ場合に表示されます。

ビジュアルメモリのファイルモードで表示するコメントです。VMコメントとして利用できる文字は、次の表のアミがかかっていない部分です。なお、あまった部分はスペース（20H）で埋めてください。

VMコメントに利用できる文字

#### GUIコメントデータ

ファイル管理画面で表示される32バイト分のコメントを埋め込みます。Dreamcastのファイル管理画面にて、そのファイルを選んだ場合に表示されます。

利用できる半角文字は、次の表でアミがかかっていない部分です。全角文字はシフトJISコードで、第2水準をサポートしています。また、JIS X 0208-1983対応なので音符などの記号類も表示できます。

あまった部分は、スペースで（20H）埋めてください。

GUIコメントに利用できる半角文字

#### ゲーム名（ソートキー）

Dreamcastのファイル管理画面では、ファイルがソートされて表示されます。そのソートキーとして、この領域が使われます。16バイトのデータで指定し、独自の文字コード表示にしたがったデータを埋め込みます。

ゲーム名の付け方や独自のコード表は「2.3.4　ゲーム名のソート基準」を参照してください。

#### アイコン数

アニメーションアイコンにする場合は、2か3を指定します。1と指定すると静止画のアイコンになります。

指定できる値は1〜3までで、アニメーションパターンは最大3パターンまで作れます。

1〜3以外の値を指定しないでください。0または4以上を指定した場合の動作は保証できません。 データはリトルエンディアンで指定してください。リトルエンディアンについては、「付録　リトルエンディアン形式」を参照してください。

#### アニメーションスピード

アニメーションアイコンを利用する場合に、アイコンを切り換える速度を指定します。指定できる値は1〜65,535までです。指定値をnとすると、n／30秒でアニメーションパターンが切り替わります。

たとえば、1を指定すると1／30（約0.03）秒、30を指定すると1秒、65,535を指定すると約36分ごとにパターンが切り替わります。

アニメーションパターンが3枚ある場合は、1→2→3→1→…の順に表示されます。2枚の場合は、1と2が交互に表示されます。アイコン数に1を指定した場合、この値は意味を持ちません。

0は指定しないでください。0を指定した場合の動作は保証できません。 データはリトルエンディアンで指定してください。リトルエンディアンについては、「付録　リトルエンディアン形式」を参照してください。

#### ビジュアルタイプ

Dreamcastのファイル管理画面の右下に表示されるビジュアルコメントの種類を指定します。ビジュアルコメントに表示できるグラフィックは、72×56ドットです。

ビジュアルコメントはアニメーションできません。また、カラーを多く使うグラフィックは、その分だけメモリを消費しますので注意してください。 データはリトルエンディアンで指定してください。リトルエンディアンについては、「付録　リトルエンディアン形式」を参照してください。

指定値とビジュアルコメントの種類、必要なバイト数、使用するブロック数は次のとおりです。

ビジュアルコメントの詳細については「2.3.3　ビジュアルコメントのデータ構造」を参照してください。

#### CRC

CRC（エラーチェック／訂正用の符号）を書き込みます。

SEGAライブラリのバックアップユーティリティ関数のbuMakeBackupFileImage（）を利用して、ファイルを保存した場合は自動的にCRCが計算され、その値が書き込まれます。なお、CRCはインフォメーションフォークを除いたデータ部分のみが対象です。

ビジュアルメモリ用のアプリケーションをMemory Card Utilityを使って転送する場合、CRCを特に書き込む必要はありません。またCRCチェックを行う必要もありません。この場合は、00 00で埋めてください。 データはリトルエンディアンで指定してください。リトルエンディアンについては、「付録　リトルエンディアン形式」を参照してください。

#### セーブデータサイズ

インフォメーションフォークを除いたデータ領域のサイズを、バイト単位で指定します。

ビジュアルメモリ用のアプリケーションをMemory Card Utilityを使って転送する場合、セーブデータサイズを特に書き込む必要はありません。この場合は、00 00で埋めてください。 データはリトルエンディアンで指定してください。リトルエンディアンについては、「付録　リトルエンディアン形式」を参照してください。

#### 予約領域

将来の拡張用の予約領域です。20バイト分00で埋めてください。

#### アイコンのパレットデータ

これ以降のアイコンパターンで利用するパレットを16色分指定します。

パレットデータは、ARGB4444で指定します。2バイトで1パレットデータです。

A，R，G，Bそれぞれに指定できる値は、0〜0FHまでです。なお、Aは0で透明、0FHで不透明です。

このパレットは、アイコン#2，#3にも適応されます。アイコンごとにパレットは変えられませんので注意してください。

#### アイコン#nのパターンデータ

32×32ドット16色アイコンのパターンデータです。

データは、左上から左下に向ってパレット番号で指定します。1ドットで4ビットのデータとなります。上位4ビットが左側のドット、下位4ビットが左側のドットのパレット番号です。

横32ドットの1ラインは、16バイトのデータです。32ドット×32ラインで、512バイトのパターンデータを用意します。

アニメーションさせない場合は、アイコンのパターンデータを1つ作ります。アニメーションさせる場合は、最大3つのパターンを用意します。

#### ビジュアルコメントデータ

ビジュアルコメントを利用する（ビジュアルタイプに0以外を指定した）場合、そのデータを埋め込みます。ビジュアルコメントのグラフィックは、72×56ドットのデータです。

#### 2-3-3　ビジュアルコメントデータの構造

ビジュアルタイプとビジュアルコメントのデータ構造は、次のとおりです。

#### ダイレクトカラー（タイプA）

パレットデータは持ちません。パターンデータそのものにARGB4444の値を指定します。1ドットあたり2バイトのデータとなります。

#### 256色グラフィック（タイプB）

256色分のパレットデータを持ちます。パレットの指定は、ARGB4444にて指定します。

パターンデータは、1ドットあたり1バイトでパレット番号で指定します。

#### 16色グラフィック（タイプC）

16色分のパレットデータを持ちます。パレットの指定は、ARGB4444にて指定します。

パターンデータは、1ドットあたり4ビットです。1バイトに2ドット分のデータを埋め込み、上位4ビットは左のドット、下位4ビットは右のドットに対応します。

#### 2-3-4　ゲーム名のソート基準

インフォメーションフォーク内のゲーム名（ソートキー）を使い、Dreamcastのファイル管理画面でアイコンを表示する順番が決まります。このため、ゲーム名を決め続編タイトルなどがある場合は、その順番に表示されるような仕掛けを作る必要があります。

ゲーム名のキャラクタコード表を用いて、16バイトのゲーム名を設定します。ここでは、さまざまな例を見ながらゲーム名の付け方やソート基準を説明します。

●アプリケーションの名称を16文字の読みにします。
  「あつめてゴジラ　怪獣大図鑑」
  ↓
  「アツメテゴジラカイジュウダイズカ」

●音引き記号は小さい母音に置き換えます。
  「ネーム」
  ↓
  「ネェム」

●「は」を「わ」と読む場合でも「ハ」を使います。
  「王様の耳はロバの耳」
  ↓
  「オオサマノミミハロバノミミ」

●「1ヶ月」「1ヶ年」などは「カ」を使います。
  「無人島10ヶ月」
  ↓
  「ムジントウジュッカゲツ」

●英語のタイトルは読みを使います。
  「Star」
  ↓
  「スタァ」

●「・」「−」スペースなどの記号類は無視します。
  「ソニック・ザ・ヘッジホッグ」
  ↓
  「ソニックザヘッジホッグ」

●日本国外向けのアプリケーションは16バイト00で埋めます。

●正式名称が16文字を越えGUIコメントが略称の場合は、略称を用います。
  正式名称が「弥次さん喜多さん道中記〜東海道その1〜」の場合で、GUIコメントに「弥次喜多道中記 その1」と表示しているとき。
  ↓
  「ヤジキタドウチュウキソノ1」

●略称にアルファベットを用いている場合は、一般的な読み方を使用します。
  「電脳戦機V.R.」
  ↓
  「デンノウセンキバァチャロン」

●数字は最後に用いてください。
  「バーチャファイター3」
  ↓
  「バァチャファイタァ3」

●次のような使い方は禁止です。
  「3びきの子ブタ」
  ↓
  ×「3ビキノコブタ」
  ○「サンビキノコブタ」

●シリーズ番号が頭にある場合は、番号を最後にします。
  「第1部　電脳戦機V.R.」
  「第2部　電脳戦機V.R. オラトリオダングラム」
  ↓
  「デンノウセンキバァチャロン1」
  「デンノウセンキバァチャロン2」

●前編タイトルが略称の場合、後編もこれに合わせてください。
  前編が「Jリーグサカつく」（正式名称はJリーグプロサッカー倶楽部を作ろう！）としていた場合、後編も「Jリーグサカつく」を用います。
  「ジェイリィグサカツク」と「ジェイリィグサカツク2」とします。

●名称の最後に年号がある場合は2000年を念頭においてください。
  誤った例：2000、98、99の順にソートされます。
  「グレイテストナイン98」
  「グレイテストナイン99」
  「グレイテストナイン2000」
  正しい例：正しくソートされます。
  「グレイテストナイン1」
  「グレイテストナイン2」
  「グレイテストナイン3」

●シリーズが10を越えることが予測される場合は0サプレスしてください。
  「日本文学全集3」
  「日本文学全集12」
  ↓
  「ニホンブンガクゼンシュウ03」
  「ニホンブンガクゼンシュウ12」

●続編でも「○○」編という分け方をする場合は、ゲーム名の最後を数字にしてきれいにソートされるようにすることを“推奨”します。
  「武田武勇伝　風の巻」
  「武田武勇伝　林の巻」
  ↓
  「タケダブユウデン1」
  「タケダブユウデン2」
  このような規則に基づいてゲーム名を決めたら、次のゲーム名キャラクタコード表を用いて、16バイトのデータを作ります。

ゲーム名キャラクタコード表

[←] | [INDEX] | [→]