アフィリエイト広告を利用しています
 

2023年07月11日

Laboratoryテーマ12「「Ctrl」+「STOP」が押されたか調べたい」




今回は、Laboratoryテーマ12「「Ctrl」+「STOP」が押されたか調べたい」です。
Laboratoryの続きは3DダンジョンRPG完成後と言っていたのですが、マウス動かなくてストレスですので、気分転換も兼ねて追加した簡単なテーマを全部一気に。
現実逃避ともいう…。

マシン語を起動させると、プログラムが終了するまで中断させることは出来ません。
そこで、BASICと同じように「Ctrl」+「STOP」が押されたらプログラム中断するように、メインループに組み込んで使います。

今回は特に難しいことはありません。
ただ、そういう機能があることを知らないと、結構面倒臭いことをしないといけないので、機能を紹介します。

MSXには、どのMSXでも必ず動作するプログラムが作れるように「BIOS」(バイオス、Basic Input Output System)というサブルーチン群が用意されています。
そのBIOSに「Ctrl」+「STOP」が押されたか調べるサブルーチンが用意されています。
BIOSの使い方は簡単で、必要なデータを所定のレジスタに設定し、目的に応じたBIOSをコールするだけです。















ラベル名アドレス変化するレジスタ使い方
BREAKX&H00B7AFコールした時、「Ctrl」+「STOP」が押されていればCyフラグがセット、押されていなければCyフラグがリセットされる。


これまでの私自作のサンプルでも、当たり前のように使っています。
410行で、「Ctrl」+「STOP」が押されたか調べ、押されていればBASICに返ってきます。
7_14_1.png

では、次回はLaboratoryテーマ13「「GRAPH」キーが押されたか調べたい」です。
posted by J-JSOFT at 13:00 | Comment(0) | TrackBack(0) | Laboratory
検索
<< 2023年07月 >>
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          
広告
最新記事
ブログランキング
にほんブログ村 ゲームブログ ゲーム制作へ
プロフィール
J-JSOFTさんの画像
J-JSOFT
高校時代、あれほど熱心に取り組んだMSXに触れなくなって30年余…。 MSXエミュレータとの出会いで、MSX愛が再燃中。
プロフィール
カテゴリーアーカイブ
ファン
QRコード