English
PROGRAMMER'S GUIDEVDP1ライブラリ
戻る進む
VDP1ライブラリ

4.3 関数仕様


4.2 関数一覧

機    能
関 数 名
 番  号 
VDP1基本処理ライブラリの初期化処理
SPR_Initial
1
TVモードセット
SPR_SetTvMode
2
現スプライト制御情報の取得
SPR_GetStatus
3
フレームバッファのイレースエリア、イレースデータセット
SPR_SetEraseData
4
フレームバッファ描画終了チェック
SPR_WaitDrawEnd
5
スプライト描画元絵座標選択モードのセット
SPR_SetEosMode
6
システムレジスタライトマクロ
SPR_WRITE_REG
7
システムレジスタリードマクロ
SPR_READ_REG
8


4.3 関数仕様




Title

関数仕様

Function

VDP1基本処理ライブラリの初期化処理

Function Name

SSPR_Initial

No

1

 書 式
void SPR_Initial(Uint8 **vram)
 入 力
vram:VRAMアドレスリターンエリアのポインタ
 出 力
なし
 関数値
なし
 機 能
デフォルト値として次の値をセットします。
  • イレースデータ = 0x8000(黒)
  • イレ-スエリア = (0, 0) - (319, 223)
  • TVモードはノーマルで、解像度は 320 × 224



Title

関数仕様

Function

TVモードセット

Function Name

SPR_SetTvMode

No

2

 書 式
void  Spr_SetTvMode(Uint16 mode, Uint16 screenSize, Unit16 doubleInterlace)
 入 力

mode:
次のTVモード定義値が設定できます。
SPR_TV_NORMAL = ノーマルモード
SPR_TV_HIREZO = ハイレゾモード
SPR_TV_ROT16  = 回転16モード
SPR_TV_ROT8   = 回転8モード
SPR_TV_HDTV   = HDTVモード

screenSize:
TVモードに対応した画面の解像度を次の定義値から選んで設定します。
詳しい組み合わせについてはVDP1ハードウェアマニュアルを参照してください。
SPR_TV_320X224 = 320 × 224
SPR_TV_320X240 = 320 × 240
SPR_TV_352X224 = 352 × 224
SPR_TV_352X240 = 352 × 240
SPR_TV_640X224 = 640 × 224
SPR_TV_640X240 = 640 × 240
SPR_TV_704X224 = 704 × 224
SPR_TV_704X240 = 704 × 240

doubleInterlace:
倍密インタレース使用モードを設定します。
ON  = 倍密インタレースモードを使用する
OFF = 倍密インタレースモードを使用しない

 出 力
なし
 関数値
なし
 機 能
TVモードを設定します。



Title

関数仕様

Function

現スプライト制御情報の取得

Function Name

SPR_GetStatus

No

3

 書 式
void SPR_GetStatus(SprSpStatus *spStatus)
 入 力
なし
 出 力
SprSpStatus:ステータスリターンエリアのポインタ
 関数値
なし
 機 能
スプライトの制御情報を取得します



Title

関数仕様

Function

フレームバッファのイレースエリア、
イレースデータセット

Function Name

SPR_SetEraseData

No

4

 書 式
void SPR_SetEraseData(Uint16 eraseData, Uint16 leftX, Uint16 topY,Uint16 rightX, Uint16 botY)
 入 力
eraseData:RGBイレースデータ
leftX    :イレースエリア左端X座標
topY     :イレースエリア上端Y座標
rightX   :イレースエリア右端X座標
botY     :イレースエリア下端Y座標
 出 力
なし
 関数値
なし
 機 能
イレース処理が実行される際にどんな色でどんな範囲を塗り潰すかを指定します。



Title

関数仕様

Function

フレームバッファ描画終了チェック

Function Name

SPR_WaitDrawEnd

No

5

 書 式
void SPR_WaitDrawEnd(void)
 入 力
なし
 出 力
なし
 関数値
なし
 機 能
VDP1がフレームバッファへの描画を終了するのを待ちます。本ルーチンはV-BLANKVDP割り込み処理ルーチンから呼び出されます。



Title

関数仕様

Function

スプライト描画元絵座標選択
モードのセット

Function Name

SPR_SetEosMode

No

6

 書 式
void SPR_SetEosMode(Sint32 eosFlag)
 入 力
eosFlag:
0=偶数座標をサンプリング(デフォルト)
1=奇数座標をサンプリング
 出 力
なし
 関数値
なし
 機 能
スプライトコマンドの描画モードワードで高速優先描画を指定した場合の元絵テ
    クスチャのサンプリング座標モードを設定します。



Title

関数仕様

Function

システムレジスタライトマクロ

Function Name

SPR_WRITE_REG

No

7

 書 式
SPR_WRITE_REG(Uint16 reg, Uint16 val)
 入 力
reg:システムレジスタの種別を次の定義値から選んで設定します。
SPR_W_TVMR = TVモード選択
SPR_W_FBCR = フレームバッファ切り替えモード
SPR_W_PTMR = プロットトリガ
SPR_W_EWDR = イレースライトデータ
SPR_W_EWLR = イレースライト左上座標
SPR_W_EWRR = イレースライト右下座標
SPR_W_ENDR = 描画強制終了
val :ライト値
 出 力
なし
 関数値
なし
 機 能
VDP1の書き込み専用システムレジスタにライトします。



Title

関数仕様

Function

システムレジスタリードマクロ

Function Name

SPR_READ_REG

No

8

 書 式
Uint16 val = SPR_READ_REG(Uint16 reg)
 入 力
reg:システムレジスタの種別を次の定義値から設定します。
SPR_R_EDSR = 転送終了状態
SPR_R_LOPR = 処理中断テーブルアドレス
SPR_R_COPR = 現処理テーブルアドレス
SPR_R_MODR = モード状態
 出 力
なし
 関数値
val:リード値
 機 能
VDP1の読み込み専用システムレジスタからレジスタ値をリードします。

戻る進む
PROGRAMMER'S GUIDEVDP1ライブラリ
Copyright SEGA ENTERPRISES, LTD., 1997