8.プログラムの実際2


 テキストの画像化ということで、補助プログラムを作成します。これは、プログラム中で使用する文字を1枚のPCX画像として、pattern命令で使用できるようにするものです。
 ここで使用する文字は、0〜9の数字と、入力回数を示す「回目」の文字、「High」「Low」「Hit!」の文字、それにキー操作を書いたガイド部分です。

-------- 以下 L08.SIT 'High-Low Game 補助プログラム cls '数字 for i=0 to 9 text i,0,i next '「回目」 text 0,1,"回目" '「High」「Low」「Hit!」 text 0,2,"High" text 0,3,"Low" text 0,4,"Hit!" '「over」 text 0,5,"over" 'キー操作 text 0,6,"[0]〜[9] 数字入力" text 0,7,"[ENTER] 決定" text 0,8,"[ESC] 終了" system sacla -s L08.PCX cls end -------- 以上 L08.SIT

 これから作られるL08.PCXを利用するように、L07.SITのtext命令をpattern命令に置き換えていきます。この時、text命令の座標とpattern命令の座標が異なるので注意が必要です。
 L08.PCXを作成した時の画面モードが、80桁×16行(半角8×11フォント)とすると、半角1文字の表示範囲は8×12(1ライン追加されている)となり、「text 1,1,"A"」で表示される座標は(8,12)-(15,23)の範囲となります。テキストのフォントは画面モードにより変化する事に注意して下さい。
 pattern命令の表示座標は、print命令と同じくlocate命令で指定します。locate命令は前述の通り8ビット単位の指定しかできないため、pattern命令もその制限を受けます。
 pattern命令で、gmem$に読み込まれた画像の特定範囲を表示する場合もまた、横8ビット単位で数えます。(8,12)-(15,23)の範囲の表示を行うには、「pattern 1,12,1,23」と、横だけを8で割った値を指定します。