4-9 ビジュアルメモリ用作業RAM |
Dreamcastとの通信時使用される通信バッファとして、256バイト×2バンクのRAMが実装されています。Dreamcastに接続していない場合は、このRAMをアプリケーションで利用できます。
Dreamcastとデータ転送が行われているかどうかは、VSELレジスタ中のASELフラグを参照します。ASELフラグが‘1’の場合は、データ転送中です。
データ転送中にこのRAMを読み書きした場合は、データの保証はされませんので注意してください。
シンボル | アドレス | R/W | ビット7 | ビット6 | ビット5 | ビット4 | ビット3 | ビット2 | ビット1 | ビット0 |
VSEL | 163H | R/W | − | − | − | INCE | − | − | SIOSEL | ASEL |
リセット時 | H | H | H | 0 | H | H | 0 | 0 |
アプリケーションは、ビット4のみ変更可能です。必ずビット操作命令を使用してください。
VTRBFへの書き込み/読み込みを行う場合、アドレスカウンタの自動インクリメントを行なうかどうかを指定します。
‘1’をセットすると、VTRBFを読み書きした直後にアドレスカウンタが自動的に+1されます。
‘0’にリセットすると、アドレスカウンタは現在の値を保持します。
P1ポート(P10〜P15)を通常の入出力ポート、同期式シリアルインターフェイス用入出力端子として使用するか、Dreamcast専用インターフェイスとして使用するかの選択をします。
ビジュアルメモリとDreamcast専用インターフェイスのバッファとして使用されるVTRBFへのアクセスの選択を制御します。
シンボル | アドレス | R/W | ビット7 | ビット6 | ビット5 | ビット4 | ビット3 | ビット2 | ビット1 | ビット0 |
VRMAD1 | 164H | R/W | VRMAD7 | VRMAD6 | VRMAD5 | VRMAD4 | VRMAD3 | VRMAD2 | VRMAD1 | VRMAD0 |
リセット時 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
シンボル | アドレス | R/W | ビット7 | ビット6 | ビット5 | ビット4 | ビット3 | ビット2 | ビット1 | ビット0 |
VRMAD2 | 165H | R/W | − | − | − | − | − | − | − | VRMAD8 |
リセット時 | H | H | H | H | H | H | H | 0 |
読み書きしたい作業用RAM(VTRBF)のアドレスを設定します。
VRMAD1には、アドレスの下位8ビットを指定します。VRMAD2にはバンクを指定します。
VSELのビット4を‘1’にセットしている場合、VTRBFを読み書きするたびにVRMADはインクリメントされます。
シンボル | アドレス | R/W | ビット7 | ビット6 | ビット5 | ビット4 | ビット3 | ビット2 | ビット1 | ビット0 |
VTRBF | 166H | R/W | VTRBF7 | VTRBF6 | VTRBF5 | VTRBF4 | VTRBF3 | VTRBF2 | VTRBF1 | VTRBF0 |
リセット時 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
VRMADで指定されたアドレスのデータを読み書きするためのレジスタです。
このレジスタへ書き込みを行った場合、VRMADで指定された作業用RAMのアドレスにデータが書き込まれます。
このレジスタの読込みを行った場合は、VRMADで指定された作業用RAMのアドレスのデータが読み込めます。
VSELのビット4が‘1’にセットされていると、このレジスタを読み書きした直後に、VRMADが自動的にインクリメントします。
作業用RAMへアクセスするには、VRMAD1,2レジスタにアクセスしたい作業用RAMのアドレスを格納し、VTRBFを読み書きすることで作業用RAMのデータにアクセスできます。
![]() VRMAD1,2レジスタには、オートインクリメント機能が実装されているので注意してください。 オートインクリメントする場合は、VSELのINCEビットを1にセットします。オートインクリメントしない場合は、INCEビットを0にリセットします。 |
作業用RAMへのアクセスの様子を図79に示します。
アプリケーションから作業用RAMに対してアクセスする場合、VRMAD1,2レジスタに作業用RAMのアドレスを指定します。
VSELレジスタのINCEフラグが‘1’にセットされている場合、VTRBFを読み書きするたびに、その直後にVRMADの値が自動的にインクリメントされます。VSELレジスタのINCEフラグに注意してプログラムしてください。
[←] | [INDEX] | [→] |
(C)SEGA ENTERPRISES, LTD., 1999