libconはPowerX-VM上のVRAMにテキストメッセージを表示する為のグラフィック
コンソールライブラリです。デバッグなどに活用してみてください。
※OSエミュレーションが実装されると恐らく不要になるでしょう(^^;
アーカイブをダウンロードし、適当なディレクトリに展開します。
後はリンク時にlibcon.aをリンクします。
本ライブラリを使用するのに、malloc()が必要となります。PowerX-VM上で
使用する場合、libom.aも同時に使用する必要があります。
大まかな流れは以下の様になります。
#include "gconsole.h" GCON *gp ; gcon_init() ; gp=gcon_open(0,400,24,5) ; gcon_set_fgcol(gp,255,0,0) ; gcon_print(gp,"Graphic Console1\n") ;
以下に関数のリファレンスを示します。
(1) void gcon_init()
機 能: グラフィックコンソールシステムの初期化
引 数: なし
戻り値: なし
注 意: 最初に必ず実行して下さい。
(2) GCON *gcon_open( int px, int py, int w, int h )
機能 : グラフィックコンソールをオープンします。
引 数: px VRAMのX座標表示開始位置を指定します。
py VRAMのY座標表示開始位置を指定します。
w 表示文字カラム数を指定します。
h 表示文字行数を指定します。
戻り値: コンソールハンドルを返します。オープンに失敗した場合はNULLを
返します。
(3) int gcon_print( GCON *gp, char *str )
機能 : gpで指定されたコンソールに文字列を出力します。
引 数: gp gcon_open()で得たコンソールハンドルを指定します。
str 文字列へのポインタを指定します。
戻り値: 表示した文字数が返ります。
注 意: 0x20〜0x7EまでのASCIIコードのみ表示されます。"\n"で改行が
行われます。
(4) void gcon_set_fgcol( GCON *gp, int r, int g, int b )
void gcon_set_bgcol( GCON *gp, int r, int g, int b )
機能 : gcon_print()で表示される文字色を変更します。
..._fgcolは文字の色を変更し、..._bgcolは背景色を指定します。
引 数: gp gcon_open()で得たコンソールハンドルを指定します。
r 赤の値を0〜255までの値で指定します。
g 緑の値を0〜255までの値で指定します。
b 青の値を0〜255までの値で指定します。
戻り値: なし
注 意: 実体はマクロなので、不当な変数を指定した場合でも動作してしまう
事があります。
(5) void gcon_close( GCON *gp )
機能 : gcon_open()でオープンしたコンソールをクローズします。
引 数: gp gcon_open()で得たコンソールハンドルを指定します。
戻り値: なし
注 意: libomのmalloc()を使用する限り意味の無い関数となっています(^^;
(6) int gcon_draw( GCON* gp )
機能 : コンソールハンドル内で保持しているピクセルマップをVRAMに描画します。
gcon_print()内で使用している為、直接使用する事は殆ど無いと思われ
ますが、再描画を行いたい場合などに使用して下さい。
引 数: gp gcon_open()で得たコンソールハンドルを指定します。
戻り値: 常に0
取りあえずPowerX-VM上で動作するプログラムのデバッグで困る場合が
ありそうだったので作成してみました。機能アップや高速化などは
自由に行っていただいて構いません。ついでにそれを公開していただけ
るとありがたいです。
2000/05/21 : 初版