SVC_WaitIntr

構文

#include <iris/os/systemCall.h>
void SVC_WaitIntr( u32 clearEnable, u32 intrFlags ); 

引数

clearEnable 既に該当フラグがセットされている場合、クリアするかどうか
intrFlags ウェイトする割り込み指定

返り値

なし。

説明

IntrFlags で指定した割り込みが発生するまで Halt 状態で待ちつづけます。
割り込み処理にて OS_SetIrqCheckFlag() で該当フラグをセットしてください。
複数の割り込みを併用した時、OS_Halt() が繰り返し呼び出される場合と比べてシステムコール呼び出しのオーバーヘッドを軽減することが出来ます。

以下は割り込み指定値です。

OS_IE_V_BLANK Vブランク割込み
OS_IE_H_BLANK Hブランク割込み
OS_IE_V_COUNT Vカウンター割込み
OS_IE_TIMER0 タイマー0割込み
OS_IE_TIMER1 タイマー1割込み
OS_IE_TIMER2 タイマー2割込み
OS_IE_TIMER3 タイマー3割込み
OS_IE_SIO シリアル通信割込み(使用できません)
OS_IE_DMA0 DMA0割込み
OS_IE_DMA1 DMA1割込み
OS_IE_DMA2 DMA2割込み
OS_IE_DMA3 DMA3割込み
OS_IE_KEY キー割込み
OS_IE_CARTRIDGE カートリッジIREQ/DREQ割込み
OS_IE_SUBP サブプロセッサ割込み
OS_IE_SPFIFO_SEND サブプロセッサ間送信FIFOエンプティ割込み
OS_IE_SPFIFO_RECV サブプロセッサ間受信FIFOノットエンプティ割込み
OS_IE_CARD_DATA カードデータ転送終了割込み
OS_IE_CARD_IREQ カードIREQ割込み
OS_IE_GXFIFO ジオメトリコマンドFIFO割込み

参照

OS_SetIrqCheckFlag

履歴

2004/01/18 初版