FS_SetDefaultDMA

構文

#include <nitro/fs.h>

u32 FS_SetDefaultDMA( u32 dma_no );

引数

dma_no ファイルシステム内部のROMアーカイブが使用するDMAチャンネル
設定内容はFSライブラリ内部で呼び出されるCARD_ReadRomAsync()の引数としてそのまま使用されます。
有効なDMAチャンネルを指定した場合、FS_SetDefaultDMA()で設定を変更するまでこのDMAチャンネルを使用できません。
また、カードアクセスの転送元はIOレジスタなのでDMAチャンネル0を指定することはできません。

返り値

以前に設定されていたDMAチャンネルを返します。

説明

ファイルシステム内部のROM アーカイブがデータアクセスに使用するDMAチャンネルを指定します。
FS_DMA_NOT_USEを指定した場合、DMAは使用せずCPUによる転送を行います。

ROM アーカイブにDMAチャンネルを割り当てる場合の内部動作については、 CARD_ReadRomAsync()の説明も参照ください。

注意

この関数で有効なDMAチャンネルを指定した場合、再び設定を変更するまでこのDMAチャンネルを使用できません。
また、設定変更時にROM アーカイブへアクセス中である場合には、そのファイル操作が完了するまで変更が反映されません。
FSライブラリはこのDMAチャンネルを使用してカード上のROMファイルシステムへアクセスします。
CARD_ReadRom()およびCARD_ReadRomAsync()の説明も参照ください。

参照

FS_DMA_NOT_USE CARD_ReadRom CARD_ReadRomAsync

履歴

2008/01/24 DMAチャンネルに関する説明を若干修正
2005/09/17 DMAチャンネル設定変更の反映に関する注意を追加
2005/08/28 説明文にCARD_ReadRomAsync()へのリンクを追加
2005/04/28 DMAチャンネル0が指定できない旨を追記
2004/07/23 ROMアーカイブとDMAチャンネルに関する注意を追加
2004/05/14 FS_DMA_NOT_USEについての記述を追加
2004/04/08 初版