English
Graphic Tools Guideフォーマット一覧

セガサターン用
スクロール(VDP2)
データフォーマット

SEGA2D


■ファイルレイアウト

オフセット
サイズ
ファンクション
$000
$100
 ヘッダ        
可変
可変
 マップデータ     
可変
可変
 パターンネームデータ 
可変
可変
 キャラクタデータ   
可変
可変
 パレットデータ    
可変
可変
 アトリビュートデータ 

◆ヘッダ

オフセット
 サイズ 
ファンクション
 $00 
  $10  
 識別子="SEGA_SATURN_SCR"+?("_"はスペース=$20) 
 $10 
 ロング 
 マップデータオフセットアドレス         
 $14 
 ロング 
 マップデータサイズ(バイト)           
 $20 
 ロング 
 パターンネームデータオフセットアドレス     
 $24 
 ロング 
 パターンネームデータサイズ(バイト)       
 $30 
 ロング 
 キャラクタデータオフセットアドレス       
 $34 
 ロング 
 キャラクタデータサイズ(バイト)         
 $40 
 ロング 
 パレットデータオフセットアドレス        
 $44 
 ロング 
 パレットデータサイズ(バイト)          
 $50 
 ロング 
 アトリビュートデータオフセットアドレス     
 $54 
 ロング 
 アトリビュートデータサイズ(バイト)       
 $60 
  $A0  
 空番地 全て$00                 
データが存在しない場合、オフセットアドレス・データサイズ=0
識別子の最終バイトは任意です。

◆マップデータ

オフセット
 サイズ 
ファンクション
 $00 
 ワード 
 横ページサイズ        
 $02 
 ワード 
 縦ページサイズ        
 $04 
  $0C  
 ダミーデータ 全て$FF 
 $10 
  可変  
 ページ(番号)テーブル  
1ページは、512ドット×512ドットの領域です。ページ番号は、パターンネームテーブル を1ページ単位で格納順にインデックス化したものです。

ページテーブルは、マップを構成するページ番号の配列を、横方向優先でメモリ上に連 続して格納されることにより構成されます。

SEGA2Dファイルにおけるマップデータは、セガサターンのマップデータとは若干、解釈 が異なるので注意が必要です。(1プレーン=1ページとすることで同等になります。)

◆パターンネームデータ

オフセット
 サイズ 
ファンクション
 $00 
 ロング 
 キャラクタコントロールデータ
 $04 
 ワード 
 パターンネーム補助データ  
 $06 
   $0A  
 ダミーデータ 全て$FF    
 $10 
  可変  
 パターンネームテーブル    
パターンネームテーブルは、キャラクタを1ページ内に敷き詰める並びが、総ページ数 分、メモリ上に連続して格納されることにより構成されます。

パターンネームテーブルは、「キャラクタコントロールデータ」・「パターンネーム補 助データ」によって設定される「パターンネームデータサイズ」・「キャラクタサイ ズ」よって、サイズや配列が変わります。

パターンネームデータは、セガサターンのパターンネームデータに準じています。

詳細
「HARDWARE MANUAL/VDP2ユーザーズマニュアル/■4.6 パターンネームテーブル」を参照してください。

<キャラクタコントロールデータ>
MSB              キャラクタ      サイズ
│    未使用        │ 色 数 │ 未使用 │ │
┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┐
│−│−│−│−│−│−│−│−│2│1│0│−│−│−│S│
└─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┘
                 │ │ │       └─ SZ :  0=1セル×1セル
                 │ │ │                1=2セル×2セル
                 │ │ │         
                 └─┴─┴───────── CN :000=16色
                                    001=256色
                                    011=32768色
                            LSB
              未 使 用           │
┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┐
│−│−│−│−│−│−│−│−│−│−│−│−│−│−│−│
└─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┘

<パターンネーム補助データ>
MSB                         LSB
│   │  未使用  │  パターンネーム補助データ   │
┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┐
│P│N│−│−│−│−│0│0│0│0│0│0│0│0│0│
└─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┘
 │ │                           
 │ └─ NSM:キャラクタ番号補助モード
 │         0=10bit
 │         1=12bit
 │   
 └─── PNB:パターンネームデータサイズ
           0=1ワード
           1=2ワード
※パターンネーム補助データは全て0で予約されています。

<パターンネームデータ>
パターンネームデータを構成する各ビットは、以下の様に表現します。

パレット番号は、16色を1単位として表現します。

キャラクタ番号は、キャラクタパターンテーブル(キャラクタデータ項参照)のオフセッ トアドレスを$20単位で指定します。従ってキャラクタサイズ・キャラクタ色数によっ て、1キャラクタ当りの占有数が以下の様に変わります。

キャラクタ色数
1セル×1セル
2セル×2セル
   16色
 1 
 4
  256色
 2 
 8
32768色
 4 
16

セガサターンでは通常、パターンネームデータサイズが1ワードの場合、不足分のパター ンネームデータをパターンネーム補助データで補います。

SEGA2Dファイルでは、パターンネーム補助データを構成するビットを全て0に固定してい ます。その為、使用できるキャラクタ数やパレット等に制限が加わるので、注意が必要 です。

◇パターンネームデータサイズ=2ワードの場合
MSB
│反転機能 │特殊機能 │未使用           │パレット番号              │
┌──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┐
│HF│VF│Pr│CC│−−│−−│−−│−−│−−│6 │5 │4 │3 │2 │1 │0 │
└──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┘
                                              LSB
│  │キャラクタ番号                                     │
┌──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┐
│−−│14│13│12│11│10│9 │8 │7 │6 │5 │4 │3 │2 │1 │0 │
└──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┘

◇パターンネームデータサイズ=1ワード
キャラクタサイズ=1セル×1セル
キャラクタ色数=16色
キャラクタ番号補助モード=10bit の場合
MSB                                           LSB
│パレット番号     │反転機能 │キャラクタ番号                      │
┌──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┐
│3 │2 │1 │0 │VF│HF│9 │8 │7 │6 │5 │4 │3 │2 │1 │0 │
└──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┘

◇パターンネームデータサイズ=1ワード キャラクタサイズ=1セル×1セル
キャラクタ色数=16色
キャラクタ番号補助モード=12bit の場合
MSB                                           LSB
│パレット番号     │キャラクタ番号                                        │
┌──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┐
│3 │2 │1 │0 │11│10│9 │8 │7 │6 │5 │4 │3 │2 │1 │0 │
└──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┘

◇パターンネームデータサイズ=1ワード キャラクタサイズ=1セル×1セル
キャラクタ色数=16色以外
キャラクタ番号補助モード=10bit の場合
MSB                                           LSB
│パレット番号     │反転機能 │キャラクタ番号                      │
┌──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┐
│−−│6 │5 │4 │VF│HF│9 │8 │7 │6 │5 │4 │3 │2 │1 │0 │
└──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┘

◇パターンネームデータサイズ=1ワード キャラクタサイズ=1セル×1セル
キャラクタ色数=16色以外
キャラクタ番号補助モード=12bit の場合
MSB                                           LSB
│パレット番号     │キャラクタ番号                            │
┌──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┐
│−−│6 │5 │4 │11│10│9 │8 │7 │6 │5 │4 │3 │2 │1 │0 │
└──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┘

◇パターンネームデータサイズ=1ワード キャラクタサイズ=2セル×2セル
キャラクタ色数=16色
キャラクタ番号補助モード=10bit の場合
MSB                                           LSB
│パレット番号     │反転機能 │キャラクタ番号                      │
┌──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┐
│3 │2 │1 │0 │VF│HF│11│10│9 │8 │7 │6 │5 │4 │3 │2 │
└──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┘

◇パターンネームデータサイズ=1ワード キャラクタサイズ=2セル×2セル
キャラクタ色数=16色
キャラクタ番号補助モード=12bit の場合
MSB                                           LSB
│パレット番号     │キャラクタ番号                            │
┌──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┐
│3 │2 │1 │0 │13│12│11│10│9 │8 │7 │6 │5 │4 │3 │2 │
└──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┘

◇パターンネームデータサイズ=1ワード キャラクタサイズ=2セル×2セル
キャラクタ色数=16色以外
キャラクタ番号補助モード=10bit の場合
MSB                                           LSB
│パレット番号     │反転機能 │キャラクタ番号                      │
┌──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┐
│−−│6 │5 │4 │VF│HF│11│10│9 │8 │7 │6 │5 │4 │3 │2 │
└──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┘

◇パターンネームデータサイズ=1ワード キャラクタサイズ=2セル×2セル
キャラクタ色数=16色以外
キャラクタ番号補助モード=12bit の場合
MSB                                           LSB
│パレット番号     │キャラクタ番号                            │
┌──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┐
│−−│6 │5 │4 │13│12│11│10│9 │8 │7 │6 │5 │4 │3 │2 │
└──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┴──┘

◆キャラクタデータ

オフセット
 サイズ 
ファンクション
 $00 
 $10 
 ダミーデータ 全て$FF     
 $10 
 可変
 キャラクタパターンテーブル
キャラクタパターンテーブルは、キャラクタサイズやキャラクタ色数によって、総数や 配列が変わります。

詳細
「HARDWARE MANUAL/VDP2ユーザーズマニュアル/■4.3 セル■4.4キャラクタパターン

<キャラクタパターンデータ>
キャラクタパターンテーブルは、キャラクタを構成する「セルデータ」が、メモリ上に 連続して格納されることにより構成されます。

セルデータは、キャラクタサイズによって以下のように配置されます。

◇キャラクタサイズ=1セル×1セルの場合
┌───┬───┬───┬───┬───┬
│セル0│セル1│セル2│セル3│セル4│
├───┼───┼───┼───┼───┼
│・・・│・・・│・・・│・・・│・・・│
├───┼───┼───┼───┼───┼
│・・・│・・・│・・・│・・・│・・・│
├───┼───┼───┼───┼───┼

 |セル0=キャラクタ0|
 |セル1=キャラクタ1|
 |セル2=キャラクタ2|
 |セル3=キャラクタ3|
 |セル4=キャラクタ4|
 |セル5=キャラクタ5|
 |セル6=キャラクタ6|
 | ・・・・・・・・・・・・・・・ |

◇キャラクタサイズ=2セル×2セルの場合
┌───┬───┬───┬───┬───┬
│セル0│セル1│セル4│セル5│セル8│
├───┼───┼───┼───┼───┼
│セル2│セル3│セル6│セル7│・・・│
├───┼───┼───┼───┼───┼
│・・・│・・・│・・・│・・・│・・・│
├───┼───┼───┼───┼───┼

 --------------------
 |セル0|       |
 |セル1|キャラクタ0 |
 |セル2|       |
 |セル3|       |
 --------------------
 |セル4|       |
 |セル5|キャラクタ1 |
 |セル6|       |
 |セル7|       |
 --------------------
 | ・・・ |・・・・・  |

◆セルデータ

セルデータは、キャラクタ色数によって以下のように構成されます。
枠内の数字は、各セルデータの先頭からのオフセットアドレスです。

◇キャラクタ色数=16色の場合
  0 1 2 3 4 5 6 7 
 ┌───┬───┬───┬───┐
0│+00│+01│+02│+03│
 ├───┼───┼───┼───┤
1│+04│+05│+06│+07│
 ├───┼───┼───┼───┤
2│+08│+09│+0a│+0b│
 ├───┼───┼───┼───┤
3│+0c│+0d│+0e│+0f│
 ├───┼───┼───┼───┤
4│+10│+11│+12│+13│
 ├───┼───┼───┼───┤
5│+14│+15│+16│+17│
 ├───┼───┼───┼───┤
6│+18│+19│+1a│+1b│
 ├───┼───┼───┼───┤
7│+1c│+1d│+1e│+1f│
 └───┴───┴───┴───┘

◇キャラクタ色数=256色の場合
   0   1   2   3   4   5   6   7  
 ┌───┬───┬───┬───┬───┬───┬───┬───┐
0│+00│+01│+02│+03│+04│+05│+06│+07│
 ├───┼───┼───┼───┼───┼───┼───┼───┤
1│+08│+09│+0a│+0b│+0c│+0d│+0e│+0f│
 ├───┼───┼───┼───┼───┼───┼───┼───┤
2│+10│+11│+12│+13│+14│+15│+16│+17│
 ├───┼───┼───┼───┼───┼───┼───┼───┤
3│+18│+19│+1a│+1b│+1c│+1d│+1e│+1f│
 ├───┼───┼───┼───┼───┼───┼───┼───┤
4│+20│+21│+22│+23│+24│+25│+26│+27│
 ├───┼───┼───┼───┼───┼───┼───┼───┤
5│+28│+29│+2a│+2b│+2c│+2d│+2e│+2f│
 ├───┼───┼───┼───┼───┼───┼───┼───┤
6│+30│+31│+32│+33│+34│+35│+36│+37│
 ├───┼───┼───┼───┼───┼───┼───┼───┤
7│+38│+39│+3a│+3b│+3c│+3d│+3e│+3f│
  └───┴───┴───┴───┴───┴───┴───┴───┘

◇キャラクタ色数=32768色の場合
   0   1   2   3   4   5   6   7  
 ┌───┬───┬───┬───┬───┬───┬───┬───┐
0│+00│+02│+04│+06│+08│+0a│+0c│+0e│
 ├───┼───┼───┼───┼───┼───┼───┼───┤
1│+10│+12│+14│+16│+18│+1a│+1c│+1e│
 ├───┼───┼───┼───┼───┼───┼───┼───┤
2│+20│+22│+24│+26│+28│+2a│+2c│+2e│
 ├───┼───┼───┼───┼───┼───┼───┼───┤
3│+30│+32│+34│+36│+38│+3a│+3c│+3e│
 ├───┼───┼───┼───┼───┼───┼───┼───┤
4│+40│+42│+44│+46│+48│+4a│+4c│+4e│
 ├───┼───┼───┼───┼───┼───┼───┼───┤
5│+50│+52│+54│+56│+58│+5a│+5c│+5e│
 ├───┼───┼───┼───┼───┼───┼───┼───┤
6│+60│+62│+64│+66│+68│+6a│+6c│+6e│
 ├───┼───┼───┼───┼───┼───┼───┼───┤
7│+70│+72│+74│+76│+78│+7a│+7c│+7e│
  └───┴───┴───┴───┴───┴───┴───┴───┘

◆パレットデータ

オフセット
 サイズ 
ファンクション
 $00 
ワード
 開始(オフセット)パレット番号  
 $02 
ワード
 カラーテーブル数              
 $04 
 $0C  
 ダミーデータ 全て$FF         
 $10 
 可変 
 カラーテーブル                
キャラクタ色数が32768色(RGBモード)の場合、パレットデータは存在しません。

カラーテーブルは、パレットを構成する「カラーデータ」が、メモリ上に連続して格納 されることにより構成されます。

開始パレット番号は、1色(1カラーデータ)1単位で指定されます。

◆カラーデータ

MSB                           LSB
│ │    B    │    G    │    R    │
┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬─┐
│−│4│3│2│1│0│4│3│2│1│0│4│3│2│1│0│
└─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┴─┘
カラーデータは、RGB各5bitの場合のカラーRAMのデータ構成に準じています。

詳細
「HARDWARE MANUAL/VDP2ユーザーズマニュアル/■3.4 カラーRAMモード

◆アトリビュートデータ

オフセット
 サイズ 
ファンクション
 $00 
ワード×キャラクタ数
アトリビュートデータ
アトリビュートデータは、1単位がワードサイズでキャラクタ数と同数、メモリ上に連続 して格納されることにより構成されます。

アトリビュートデータに該当するセガサターンのハードウェア機能は、特に存在しませ ん。アプリケーションソフトで、キャラクタテーブルに1対1対応した何らかの情報が必 要な場合、このフィールドを利用します。


フォーマット一覧
Copyright SEGA ENTERPRISES, LTD,. 1997