ローマ字変換をするときの、オートキー入力がうまくいかない。
kya(きゃ)を出したい場合、 g shift-down 7 shift-up という、並びになる。
本来の動きのとき
- g shift-down 7 shift-upを 順番に押したことにしていく。。
- SUB CPUが走査する、キーはgキー、Key割り込みのREQUESTを送る
- CPU が、割り込みに気づいて、キー割り込みを発生。
- キー割り込みルーチン中で、SUB CPUからキーデータを受け取る
- そのデータを、P6の内部バッファに書き込む
- 上から2つめに戻る。
おかしいときの動き、
- g shift-down 7 shift-upを 順番に押したことにしていく。。
- SUB CPUが走査する、キーは、g、Key割り込みのREQUESTを送る
- さらにSUB CPUが走査する、キーはShift-down、Key割り込みのREQUESTを送る
- この時点で、キーデータが、gから、ShiftDownに置き換わってしまう。
- CPU が、割り込みに気づいて、キー割り込みを発生。
- キー割り込みルーチン中で、SUB CPUからキーデータを受け取る
というわけで、気の早いSUB CPUが、CPUよりも先に動いてしまう時があり、
それで、最初の「g」がなかったことになるのが原因らしい。。(汗)
この辺、なるべくわかるように、もう一度書き直しましたが、完全には説明できてないかも。。orz