星空を一気に表示するのだ

ついに出てきたバッファー。ウォーズマンも立ったままKOされるわけだ。ちが〜う(T-T)/


	CLS 4
	WIDTH 600,400,100,50
	RANDOMIZE

;バッファーに星空の絵を描きこみ
	BUFFER 2,600,400,1
	COLOR 0,0,0 : BOXF 0,0,600,400
		REPEAT 1000
		RND X,600 : RND Y,400
		RND R,7 : RR=(R+1)*32-1
		RND G,7 : GG=(G+1)*32-1
		RND B,7 : BB=(B+1)*32-1
		COLOR RR,GG,BB
		PSET X,Y
		LOOP

;バッファーからの読み出し
	GSEL 0
	GCOPY 2,0,0,600,400
	STOP

今回新しく出てきた命令は3つ。ちなみに「 ; (セミコロン)」から後ろは「コメント」ってことで、命令とは判断されないそうだ。要はプログラムをわかりやすくするための注釈だな。忘れっぽいおいらは、こういうのを書いておかないと後で(゚◇゚)~になりそうだから、きっちり書いておくことにしよう。

BUFFER(ウィンドウID),
(ウィンドウの横幅),(ウィンドウの縦幅),
(画面モード)
仮想画面を使いますよ〜っていう宣言をする。

仮想画面ってのは「メモリ上に仮想画面が作られるだけで、実際の画面には表示されません」ということらしい。要は画面には何も表示されないってことだな。

親戚に「SCREEN」という命令があるらしいが、こっちは「仮想」じゃなくて実際の画面。HSPだと合計8枚までこういうウィンドウを制御できるらしい。特に何も指定しなければ、0番のウィンドウを使うらしい。じゃ、今までやってきたことは、全部0番のウィンドウの上で行ってきたっつーことね。重ねあわせの処理なんかで使うのかな?あ、ちなみに1番のウィンドウはシステム側で使うウィンドウなんで、自由に使うことはできないとのこと。だからここでは2番を使ってる。

あと、画面モードってのは、0だとフルカラー1670万色、1だと1670万色中256色のパレットモードになるらしい。1のが速いのかな?

GSEL(ウィンドウID),(スイッチ)
操作するウィンドウと、そのモードを指定する。

2番のウィンドウに書きこみが終わったら、0番の実際の画面に切り替える。要は「いまから0番にいろいろ操作します〜」っていう宣言だな。スイッチっつーのは、表示したりしなかったりする場合に使うらしい。よくわからん^^;

GCOPY(コピー元ウィンドウID),
(始点x軸),(y軸),
(終点x軸),(y軸)
指定したウィンドウから、指定した大きさの画像をコピーし、GSELで指定されたウィンドウのカレントポジションにその画像を読みこむ。

あ、カレントポジションの指定するの忘れてた(゚◇゚)~

まぁそれでも問題なく出てくるんで良しとしましょう。でもこれを動かしたり〜ってことになった場合は絶対忘れちゃ駄目ね^^;

ちなみに表示された星空はこんな感じ。


よし、次はこの星空をスクロールさせてやる〜って無謀?^^;

前のページへ戻る 奮闘記のメニューへ戻る 次のページへ進む