unl_cpu

iunl_cpu

概要

CPUロック状態の解除

C言語形式

 ER      unl_cpu ( void );
 
 ER      iunl_cpu ( void );
 

アセンブリ言語形式

 CALL    !!_unl_cpu
 
 CALL    !!_iunl_cpu
 

パラメータ

なし

機能

システム状態種別を非CPUロック状態へと変更します。

これにより,loc_cpu,またはiloc_cpuの発行により禁止されていた“マスカブル割り込みの受け付け処理”が許可されるとともに,および,サービス・コールの発行制限が解除されます。

なお,RI78V4では,loc_cpu,またはiloc_cpuの発行から本サービス・コールが発行されるまでの間にマスカブル割り込みが発生した場合には,該当割り込み処理(割り込みハンドラ)への移行を本サービス・コールが発行されるまで遅延しています。

備考1 本サービス・コールでは,解除要求のキューイングが行われません。このため,システム状態種別が非CPUロック状態であった場合には,何も処理は行わず,エラーとしても扱いません。

備考2 RI78V4では,割り込みマスク・フラグ・レジスタMKxx,および,プログラム・ステータス・ワードPSWのインサービス・プライオリティ・フラグISPxを操作して,“マスカブル割り込みの受け付け許可”を実現しています。このため,loc_cpu,またはiloc_cpuの発行から本サービス・コールが発行されるまでの間,処理プログラムから該当レジスタを操作することは禁止されています。

戻り値

マクロ

数値

意味

E_OK

0

正常終了