English
PROGRAMMER'S GUIDEDMAライブラリ
戻る進む
DMAライブラリ/2.リファレンス

2.2 データ仕様

[低水準 SCU]




Title

データ仕様

Data

DMAチャネル

Data name

なし

No

1

 SCUのDMAチャネルを指定するときは、以下の定数を使用してください。

定数
説明
DMA_SCU_CH0
チャネル0
DMA_SCU_CH1
チャネル1
DMA_SCU_CH2
チャネル2




Title

データ仕様

Data

転送パラメータ

Data name

DmaScuPrm

No

2

転送パラメータは以下のような構造体です。

struct      {
     Uint32     dxr;               /* 読み込みアドレス      */
     Uint32     dxw;               /* 書き出しアドレス      */
     Uint32     dxc;               /* 転送バイト数        */
     Uint32     dxad_r;            /* 読み込みアドレス加算値   */
     Uint32     dxad_w;            /* 書き込みアドレス加算値   */
     Uint32     dxmod;             /* モードビット        */
     Uint32     dxrup;             /* 読み込みアドレス更新ビット */
     Uint32     dxwup;             /* 書き込みアドレス更新ビット */
     Uint32     dxft;              /* 起動要因選択ビット     */
     Uint32     msk;               /* マスクビット        */
}DmaScuPrm;

 以下に、この各メンバで使用できる定数を示します。

dxad_r     /* 読み込みアドレス加算値         */

定数
説明
DMA_SCU_R0
加算しない
DMA_SCU_R4
4バイト加算する

dxad_w  /* 書き込みアドレス加算値   */

定数
説明
DMA_SCU_W0
加算しない
DMA_SCU_W2
2バイト加算する
DMA_SCU_W4
4バイト加算する
DMA_SCU_W8
8バイト加算する
DMA_SCU_W16
16バイト加算する
DMA_SCU_W32
32バイト加算する
DMA_SCU_W64
64バイト加算する
DMA_SCU_W128
128バイト加算する

dxmod   /* モードビット         */

定数
説明
DMA_SCU_DIR
直接モード
DMA_SCU_IN_DIR
間接モード

dxrup  /* 読み込みアドレス更新ビット  */
dxwup  /* 書き込みアドレス更新ビット  */

定数
説明
DMA_SCU_KEEP
保持する
DMA_SCU_REN
更新する

dxft    /* 起動要因選択ビット       */

定数
説明
DMA_SCU_F_VBLK_IN
V-ブランク-IN信号受信
DMA_SCU_F_VBLK_OUT
V-ブランク-OUT信号受信
DMA_SCU_F_HBLK_IN
H-ブランク-IN信号受信
DMA_SCU_F_TIM0
タイマ0信号受信
DMA_SCU_F_TIM1
タイマ1信号受信
DMA_SCU_F_SND
サウンド-Req信号受信
DMA_SCU_F_SPR
スプライト描画終了信号受信
DMA_SCU_F_DMA
DMA起動要因ビットのセット

mask       /* マスクビット                   */

メンバの書き込みマスクビットです。以下の定数で指定したビット以外は書き込み(設定)しません。論理和による複数の指定が可能です。

定数
説明
DMA_SCU_M_DXR
読み込みアドレス
DMA_SCU_M_DXW
書き出しアドレス
DMA_SCU_M_DXC
転送バイト数
DMA_SCU_M_DXAD_R
読み込みアドレス加算値
DMA_SCU_M_DXAD_W
書き込みアドレス加算値
DMA_SCU_M_DXMOD
モードビット
DMA_SCU_M_DXRUP
読み込みアドレス更新ビット
DMA_SCU_M_DXWUP
書き込みアドレス更新ビット
DMA_SCU_M_DXFT
起動要因選択ビット




Title

データ仕様

Data

ステータス

Data name

DmaScuStatus

No

3

ステータスは以下のような構造体です。

struct {
    	Uint32 dxmv;
        }

以下に、この各メンバで使用できる定数を示します。

dxmv /* DMA動作フラグ */

定数
説明
DMA_SCU_MV 動作中
DMA_SCU_NO_MV 動作中でない

[低水準 CPU]




Title

データ仕様

Data

DMAチャネル

Data name

なし

No

4

CPUのDMAチャネルを指定するときは、以下の定数を使用してください。

定数
説明
DMA_CPU_CH0
チャネル0
DMA_CPU_CH1
チャネル1




Title

データ仕様

Data

共通転送パラメータ

Data name

DmaCpuComPrm

No

5

共通転送パラメータは以下のような構造体です。

struct     {
     Uint32 pr;      /* プライオリティモード     */
     Uint32 dme;     /* DMAマスタイネーブル      */
     Uint32 msk;     /* マスクビット             */
}DmaCpuComPrm;

以下に、この各メンバで使用できる定数を示します。

pr           /* プライオリティモード    */
定数
説明
DMA_CPU_FIX
優先順位は固定
DMA_CPU_ROR
優先順位はラウンドロビンによる

dme          /* DMAマスタイネーブル     */
定数
説明
DMA_CPU_DIS
全チャネルのDMA転送を禁止
DMA_CPU_ENA
全チャネルのDMA転送を許可

msk          /* マスクビット            */
 メンバの書き込みマスクビットです。以下の定数で指定したビット以外は書き込み(設定)しません。論理和による複数の指定が可能です。

定数
説明
DMA_CPU_M_PR
プライオリティモード
DMA_CPU_M_AE
アドレスエラーフラグ
DMA_CPU_M_NMIF
NMIフラグ
DMA_CPU_M_DME
DMAマスタイネーブル




Title

データ仕様

Data

転送パラメータ

Data name

DmaCpuPrm

No

6

転送パラメータは以下のような構造体です。

struct {
     Uint32 sar;     /* DMAソースアドレス           */
     Uint32 dar;     /* DMAディスティネーションアドレス    */
     Uint32 tcr;     /* DMAトランスファカウント        */
     Uint32 dm;      /* ディスティネーションアドレスモード    */
     Uint32 sm;      /* ソースアドレスモードビット       */
     Uint32 ts;      /* トランスファサイズ           */
     Uint32 ar;      /* オートリクエストモード         */
     Uint32 ie;      /* インタラプトイネーブル         */
     Uint32 drcr;    /* DMA要求/応答選択制御         */
     Uint32 msk;     /* マスクビット              */
}DmaCpuPrm;

 以下に、この各メンバで使用できる定数を示します。

dm     /* ディスティネーションアドレスモード   */
sm     /* ソースアドレスモードビット       */

定数
説明
DMA_CPU_AM_NOM
固定
DMA_CPU_AM_ADD
増加
DMA_CPU_AM_SUB
減少

ts     /* トランスファサイズ                     */

定数
説明
DMA_CPU_1
バイト単位
DMA_CPU_2
ワード(2バイト)単位
DMA_CPU_4
ロングワード(4バイト)単位
DMA_CPU_16
16バイト単位

ar     /* オートリクエストモード                 */

定数
説明
DMA_CPU_MOD
モジュールリクエスト
DMA_CPU_AUTO
アートリクエスト

ie     /* インタラプトイネーブル                 */

定数
説明
DMA_CPU_INT_ENA
割り込み要求を許可
DMA_CPU_INT_DIS
割り込み要求を禁止

drcr     /* DMA要求/応答選択制御    */

定数
説明
DMA_CPU_DREQ
DREQ(外部リクエスト)
DMA_CPU_RXI
RXI(内蔵SCIの受信データフル割り込み転送
要求)
DMA_CPU_TXI
TXI(内蔵SCIの送信データエンプティ割り込み
転送要求)

msk     /* マスクビット              */

メンバの書き込みマスクビットです。以下の定数で指定したビット以外は書き込み(設定)しません。論理和による複数の指定が可能です。

定数
説明
DMA_CPU_M_SAR
DMAソースアドレス
DMA_CPU_M_DAR
DMAディスティネーションアドレス
DMA_CPU_M_TCR
DMAトランスファカウント
DMA_CPU_M_DM
ディスティネーションアドレスモード
DMA_CPU_M_SM
ソースアドレスモードビット
DMA_CPU_M_TS
トランスファサイズ
DMA_CPU_M_AR
オートリクエストモード
DMA_CPU_M_IE
インタラプトイネーブル
DMA_CPU_M_DRCR
DMA要求/応答選択制御
DMA_CPU_M_TE
トランスファエンドフラグ


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