home *** CD-ROM | disk | FTP | other *** search
- プログラム名:LINE.EXP (デモプログラム)
- LINE.ASM (ソースリスト)
- LINE_SMP.C (High C組み込み参考例)
- 対応機種 :FM TOWNS
- 作者 :EAST
-
-
- ● 高速ラインルーチン
-
- 386ネイティブモードといえば,やはり期待されるのは「速さ」でしょう。
- 秒間2000本という,なまじのハードウェア描画顔負けのスピードを誇る「高速
- ラインルーチン」を作ってみました。ぜひ実行してみてください。
-
-
- ● デモプログラム「LINE.EXP」について
-
- LINE.EXPは,実行するとクイックスのような表示が出てくるサンプ
- ルプログラムです。はっきりいって速すぎてよく見えないかもしれませんね
- (をを,偉そうだ)。このサンプルでは毎秒2000本くらいは描画できているよ
- うです。
-
- <MS-DOS上で実行する場合>
- このサンプルプログラムをMS-DOS上で実行する場合には,必ずTBI
- OSを組み込んで起動して,コマンドラインから次のように実行してください。
- RUN386 LINE
-
- <TownsMENU上で実行する場合>
- LINE.EXPをマウスでクリックするだけで実行できます。
-
-
- ●High Cから使うには
-
- このラインルーチンは,画面モード5番の,256×512ドットで32K色の画面
- 専用です。これはスプライトの表示画面のサイズなどと同じで,両端の座標も
- (0,0)-(255,255)までとなっています。
- High Cからこのルーチンを使うには,まず「LINE.ASM」のソース
- リストから8~201行目までを削除し,lineのプロシジャだけをアセンブルして
- おかなければなりません。リンク時にCで書かれたメインプログラムとリンク
- させるわけです。メインプロクラムの中ではまずプロトタイプ宣言をしないと
- いけません。
- void line(int,int,int,int,int,int);
- としておいてください。実際に関数を呼ぶには,
- line(x1,y1,x2,y2,col,page);
- のように行います。
- x1, y1, x2, y2といった座標はすべて0から255の値をとらねばなりません。
- colは16ビットで与えます。つまり,32K色での色識別番号を指定するわけで
- す。pageというのは書き込むページです。これは,実際の画面表示のページと
- は意味が違います。画面表示が2画面とも256×512×32K色のときに,
- page=0 ページ0の上半分
- 1 ぺージ0の下半分
- 2 ページ1の上半分
- 3 ページ1の下半分
- を意味します。High Cからの使い方の例として,簡単なサンプル(LINE
- _SAMP.C)も付けておきます。
- なお,詳しい解説等は◎h!FM '90年4月号をご覧ください。
-
-
- ● 著作権・再配布について
-
- このプログラムの著作権は作者が保持しておりますが,著作権法の定める
- 「個人的な利用」の範囲であれば自由に利用してくださってけっこうです。ま
- た,転載・配布についても事前の許諾なしに自由に行ってくださってかまいま
- せん。ただし配布時に,
- 1.「EAST」がプログラミングしたものであること
- 2.◎h!FM '90年4月号に掲載されたものであること
- 3.作者の自由転載許可に基づいて転載・配布したものであること
- を,説明用のテキストに明記してください。