[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[WitchTech 00500] Re: [Q] IRQ5 の使い方



すきざきです。

ご助言ありがとうございます。

BIOSのアップデートはしました。
一応、一回だけ割り込み後の表示処理(show_watch)は行われているようなのですが、
その後暴走しているのです。

Nakamura Hiroaki さんは書きました:
>ナカムラです。
>
>IRQ5の動作不具合については、自分もサポートへ
>バグ報告していましたが、11/1付けの最新パッチ
> V1.0.3で、やっと修正されたようですね。
>
>BIOSをアップデートしてみて、試されてはいかが
>でしょうか。
>
>> 
>> すきざきと申します。
>> 
>> みなさんのご助力を頂けたらと思います。
>> 
>> 以下のプログラムを走らせると暴走するのですが、
>> 何が悪いのでしょうか?
>> ご助言頂ければ幸いです。
>> 
>> ---
>> intvector_t v;
>> intvector_t lastv;
>> 
>> void set_callback(int type, void (far *callback)()) {
>> v.callback = (void (near *)())FP_OFF(callback);
>> v.cs = _CS;
>> v.ds = _DS;
>> sys_interrupt_set_hook(type, &v, &lastv);
>> }
>> 
>> void show_watch() {
>> /* テキストを表示する処理 */
>> (省略)
>> }
>> 
>> void main(int argc, char *argv[]) {
>> /* text_init_screen等初期化処理 */
>> (省略)
>> 
>> set_callback(SYS_INT_VBLANK_COUNTUP, show_watch);
>> timer_enable(TIMER_VBLANK, TIMER_AUTOPRESET, 75);
>> 
>> while(!(key_press_check() & KEY_START)){
>> }
>> }

sukizaki@ma2.justnet.ne.jp
http://www2.justnet.ne.jp/~sukizaki/
Q#7179846


ML Archives