こんにちは、川合です。 I.Tak. さんは 2002/10/22 13:58:48 の「[OSASK 5203] API初期化特別 モード」で書きました: > API初期化コマンドの特別モード (要するにl2d3とtek0の展開コマンド >ですが) にバグをみつけました。 > > 初期化後は特別終了をつけずに他のコマンドをつなげるということ >でしたが、たとえば > 初期化コマンド特別モード(tek0) > ウィンドウオープン > うんぬんかんぬん > 終わり >というようなコマンド列が正しく実行できません。 うーん、確かにそれはうまくいかないでしょうねえ。言われてみれば まことにそのとおりです。悩ませてしまってすみません。 > 回避するには、他のコマンドでコマンド列を始めることです。現在は >ノーオペレーション(0x1c)を先頭に付けることで問題を回避しています。 なるほど!・・・それで回避できますね。僕は思い付きもしませんで した。しかし、ご指摘の通り、これは汚いやり方です。とりあえず今は その方法を使わないことにして、特別終了でいったん抜けて、再呼びだ ししてください。すみません。 > で、解決の方法ですが、ライブラリを初期化する前に実行するためとは >言え、初期化コマンドの特別モードという形を初期化後も使うのはやはり >まずかろうと思います。それで、tek0やl2d3のコマンドを初期化コマンド >とは独立に設けてはどうでしょう。点描コマンドと線描コマンドが実は >同じルーチンだった、みたいな感じで。 うんうん、これは良さそうな方法です。この方向でdecompファンクシ ョンを作ります。decompファンクションでは、解凍先のアドレスもちゃ んとパラメータに格納することにします(今はES:EDIですからね)。も ちろんtek0オンリーではなく、l2d3もサポートします。Chuck4以降に入 れますので、とりあえず来月送りにさせてください。今は頭の中がgcc でいっぱいになっていまして、突っかかるまでgccを一気にやってしま いたいのです。 それでは。 -- 川合 秀実(KAWAI Hidemi) OSASK計画代表 / システム設計開発担当 E-mail:kawai !Atmark! imasy.org Homepage http://www.imasy.org/~kawai/