#23 [Tech][Lib]
Q. GsSortFixBg16()のための作業領域の確保の仕方がわかりません

A. <一部修正記事>( T-KAKI さん )

例えば、
#define BGWSIZE (((320/16+1)*(240/16+1+1)*6+4)*2+2)

の320や240は画面のピクセル数なのは分かりますが なぜ/16したり+1したりするのかがいくら考えても理解不可能です。

BGWSIZE はその下のGsInitFixBg16();で使われており、 16はセルの高さと書いてあります(158Page)。 要するにマップの大きさを調べたいんではないかと。 この場合、320x240の画面を16x16のセルで貼り付けたいんだろう。 +1や*2は そのまま載っているので深く考えない方がいいかと 思われます。



#24 [Tech][Lib]
Q.プリミティブ関連変数の配列確保の仕方が疑問です

A. <一部修正記事>( T-KAKI さん )

例えば、
PACKET GpuPacketArea[2][MAXOBJ*(20+4)];
は,なぜ*24するのですか?

	まず、パケットについてはユーザーガイドの54Pageを見て下さい。
	その上で、このリストの上を見ると
	/* オーダリングテーブル関連変数 */
	GsOT		WorldOT[2];				
	GsOT_TAG	OTTags[2][1<<OT_LENGTH];
	というのがあります。
	こいつらはパケットの実体で、ヘッダをみると
	typedef struct {
		unsigned p:24;
		unsigned char num:8;
	} GsOT_TAG;
	
	typedef struct {
		unsigned long length;
		GsOT_TAG *org;
		unsigned long offset;
		unsigned long point;
		GsOT_TAG *tag;
	} GsOT;
	GsOT_TAGは4byte  GsOTは20byteだから
	これの事じゃないかなー?  と、思います。	


#25 [Tech]
Q. コントローラ状態の読み込み方法がいまいち・・

A. <一部修正記事>( KBO さん )

static u_long PadRead(long id)
{
	return(~(*(bb0+3) | *(bb0+2) << 8 | *(bb1+3) << 16 | *(bb1+2) << 24));
}
この意味が分かりません。

これは、わかるので、書きます。間違ってたら誰かフォローしてください。(^^;

GetPadBufで指定した、バッファから、パッドのデータを拾ってきてます。
bb0が1P、bb1が2Pのパッドです。
この例では、u_longの返り値の、下位16ビットが1p、上位が2p
のデータが返ります。

また、マニュアル353PのGetPadBufにパッドのデータ構成がのってます。
+2、+3と言うのは、直接パッドのデータ値を拾っています。
+0のパッドありなしをチェックしてなく、また、
+1の端末種別もおこなっていません。
これは、自分でチェックしたほうがいいと思います。
~で、ビットひっくり返しているのかな。あれれ、ビット逆だっけかな?
ちょっと忘れました。でも、例がそうだから、そうなんでしょう。(いい加減)
(^^;
当たってるかな?


#26 [Tech][Lib][DK Soft]
Q. サンプルプログラムの背景の色を変えたいのですが?

A. <一部修正記事>( 加澤 さん )

今日プログラムを組んでいて分かったんですが、OT の先頭に画面クリア命 令をセットする関数「GsSortClear」の第1、第2、第3引数で指定できる ようですよ。黒くしたければ「GsSortClear(0x0, 0x0, 0x0, ...)」てな感 じでしょうか?


#27 [DK Soft]
Q. 新しいCIPを使いたいのですが?

A. <一部修正記事>( Development Tool FL さん )

CIP Version 1.1 のリリースについて

CIP Version 1.0 のCDコマンドにおける不具合を修正した、CIP Version 1.1 を
リリースします。

[CIP Version 1.1 を起動する方法]

CIP Version 1.1 の起動コマンド cip11.exe を、/Forum/tool/archive/bin/cip11.lzh
よりダウンロードし、以下の手順で実行してください。cip11.lzh は、cip11.exe を
圧縮したファイルですので、解凍してお使いください。

1. 本体の RESET ボタンを押すなどの操作により、モニタプログラムを
 起動した直後の状態にします。
2. PCで siocons を起動します。
3. F4 Key を押し、cip11.exe をダウンロードします。
4. go コマンドで、ダウンロードした cip11.exe を実行します。
5. モニタプログラムが再起動しますので、TVモニタ画面に以下の行が
 表示されていることを確認してください。

	CIP VERSION 1.1 STARTUP

6. この状態になりましたら、CIP Version 1.0 と同じ操作が行えます。


[CIP Version 1.1 の使用上の注意]

cip11.exe プログラムを起動した後で、本体の RESET ボタンを押すなどの操作により
モニタプログラムを「ネットやろうぜ」起動ディスクで再起動した場合には、
CIP Version 1.0 が起動しますので、前述の手順に従って再度 cip11.exe プログラムを
起動して下さい。


#28 [Lib][Tech]
Q. 漢字ストリームの扱い方が不便です・・

A. <一部修正記事>( Mr.K さん )

複数のストリームをオープンするためには、それぞれ別々のストリームIDを保存し
ておき、最後に個々にKanjiFntFlush()でクローズするとうまくいくようです。

void test( void )
{
    int    id1, id2;

    id1 = KanjiFntOpen( .... );
    id2 = KanjiFntOpen( .... );

       :
       :  この間にKanjiFntPrint()で表示する部分を入れる
       :

    KanjiFntFlush( id1 );
    KanjiFntFlush( id2 );
}

> デバッグのときに、漢字の表示開始位置などを変更するときに、非常に不便です。
>(黒ステをリセットしなおせば解決することですが...)

どうやら今のところ、ストリームをクローズするするようなものは無いみたいです。
したがって、表示開始位置を変更するのは、リセットまで出来ないってことになるみ
たいですね。


#29 [PC]
Q. LZHファイルを展開するソフトは、どこにあるのか教えてください。

A. <一部修正記事>( 加澤 さん )

雑誌の付録などに大抵ついています。DOS版のプログラムは“LHA113.EXE”
とか何とかいう名前の自己解凍形式のファイルになっていますので、適当な
ディレクトリで実行すれば取り出せます。Win版は…ごめんなさい、よく知
りません。

インターネット上では主要なftpサイトにはどこにでもあるでしょう。
ftp://ftp.iij.ad.jp
ftp://ftp.tohoku.ac.jp
ftp://ftp.kuis.kyoto-u.ac.jp
ftp://ftp.iis.u-tokyo.ac.jp
などなど。


#30 [Other]
Q. 音楽ツールを手に入れようと思うのですが、何か良いのはありませんか?

A. <一部修正記事>( Mr.K さん )

私もちょうど音楽ツールを探していたところだったんですが、つい一昨日、音楽ツー ルを買いました。レコンポーザ95というものです。98ではシェアを閉めているシ ーケンサソフトのWindows95版です。著名なGM音源は完全にサポートしてますし、 SB16などでもMIDIデータを作る機能があるようです。


#31 [Tech]
Q. プログラム実行中に[GPU timeout]というエラーが出ます。これは?

A. <一部修正記事>( 加澤 さん )

ああっ!なんどこのメッセージを見たことでしょう!これ(GPU timeout)は 、私の場合はGPU Packet Areaが足りないときによく出力されました。した がってパケットエリア用に用いている配列のサイズを大きくしてみてくださ い。


#32 [Tech]
Q. TMDデータの倍率変更を座標系を変えずに行いたいのですが?

A. <一部修正記事>( Kazunari Ishida さん )

たしか、 ScaleMatrixでマトリクスの成分に倍率をかければ 拡大したと思います。 RotMatrixするとマトリクスが またもとに戻ってしまったと思いました。


#33 [DK Soft][comm]
Q. sioconsで[BINARY WRITE:time out]と表示されてしまいます。

A. <一部修正記事>( Mr.K さん )

ボーレートの設定を少し下げて試してみて下さい。
ボーレートの設定変更の仕方は、ここを御覧下さい。

関連する質問への回答も参考にしてください。



#34 [DK Soft][comm]
Q. sioconsでのデータ転送中にエラーが頻発します。

A. <編集記事>( Mr.K さん他 )

MS-DOS prompt の優先度を上げる
sioconsからclsコマンドを実行してみる
通信ソフトを立ち上げて、つながっているか確認する

などをお試し下さい。

関連する質問への回答も参考にしてください。




Tatsumi SAKAGUCHI NY Home Page

[Beginner] [HotNews] [Forum] [Gallery] [Member's Home] [Help]



このページはNetscape Navigator 2.0以降のブラウザに最適化されています。
SAKAGUCHI Tatsumi - tatsu@ee.seikei.ac.jp -