OS_SetIrqCheckFlag

構文

#include <iris/os.h>

void OS_SetIrqCheckFlag( OSIrqMask intr );

引数

intr チェックフラグをセットしたい IRQ割込み要因を論理和で示したもの。(通常、1要因しか扱わない)

返り値

なし。

説明

IRQ割込みのチェックフラグをセットします。
これは、通常は各割込みの割込みハンドラで呼ばれます。個別の割込み処理が終わったときに、その割込みで呼ばれたことを示すためにチェックフラグをセットするものです。例えば、Vブランク割込みで呼び出される関数では OS_SetIrqCheckFlag( OS_IE_V_BLANK ); が呼ばれることになります。

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_GetRequtestIrqMask

内部動作

DTCM内のあらかじめ決められた位置(DTCM_END - 8)がチェックフラグ用の領域と決められており、そこを操作します。

履歴

2003/01/09 初版