原因不明の謎な現象や、次回のパッチで直したい物とか、実験とか書いてあります。
キーボード割り込みルーチン内で割り込みを許可しているので、キー入力データを取りこぼしてしまい Break データを受信できない為じゃないかなぁ(分からん)。
画面更新のタイミングと、パレット変更のタイミングがあってないからです。パレットはリアルタイムに書き換えてますから。
HSYNC 毎にパレットのインデックスを変えてみたら、それらしく動いてますけど、ソフトに依ってはパレットが狂っちゃう場合もある(原因不明)。
パレット毎にインデックス変えるってのは、こんな感じです。
HSYNC発生(今後のパレット書き換えは PC98(PCAT)のパレットの 16〜31 番に対して操作する) ↓ HSYNC発生(今後のパレット書き換えは PC98(PCAT)のパレットの 32〜47 番に対して操作する) ↓ HSYNC発生(今後のパレット書き換えは PC98(PCAT)のパレットの 48〜63 番に対して操作する) ↓ VSYNC発生(今後のパレット書き換えは PC98(PCAT)のパレットの 0〜15 番に対して操作する) ↓ HSYNC発生(今後のパレット書き換えは PC98(PCAT)のパレットの 16〜31 番に対して操作する) ↓ HSYNC発生(今後のパレット書き換えは PC98(PCAT)のパレットの 32〜47 番に対して操作する) ↓ HSYNC発生(今後のパレット書き換えは PC98(PCAT)のパレットの 48〜63 番に対して操作する) ↓ VSYNC発生(今後のパレット書き換えは PC98(PCAT)のパレットの 0〜15 番に対して操作する)
この例の場合は、15回までの HSYNC 割り込みでパレットを書き換えられても対処できるはず。
実際にテストしたプログラムはもうちょっと複雑で、変更されたパレットのインデックスだけを移動させてました。