[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: hpcfbio.h
やないといいます。
X を使うにはなにかと苦しいマシンも多いですので、NetBSD/mac68k の
方でも MGL2 を使いたい、などと思っています。
<009301bf761f$3bafbd60$0101a8c0@shin>の記事で
"TAKEMURA, Shin"さんはこう書かれたそうです。
>多くのビットマップディスプレイのフレームバッファを記述できるように
>かなりいろいろな情報を入れました。
>ほとんどのメンバーは使われないとおもいますが、考え付く限り入れました。
>将来的にどうしても困ったときには、多少汚いですが、無理に拡張できる
>余地も残してあります。
>
>一方、以下の項目は omit しました。
> - キャラクタジェネレータを備えるテキストディスプレイ
> - アクセラレーション(含む 3D)
> - 不連続なフレームバッファ領域
> - スプライト:-)
>
>これによって、PDA に使われるようなフレームバッファを一般的に
>扱うことができると期待しています。
>ホントは wsdisplay の ioctl としたいのですが、さすがに大変そう
>なので、とりあえず hpcmips だけで使いたいと思っています。
>ついでに、brightness, contrast, バックライト、外部出力などの
>コントロールを行うインターフェースも考えてみました。
NetBSD/mac68k では wscons 類はまだ完全には実装されてませんので、
現状では /machine/grfioctl.h を使わないといけないのですが、こちら
では fb の baseaddr を 与えて mmap しないといけないみたいです。
また、この baseaddr 、同じ mac68k でも モデル毎に色々違っています
し、offset で吸収しようにも吸収しきれない幅があります。
/machine/grfioctl.h(sys/arch/mac68k/include/grfioctl.h) の内容は、
以下のようになっています。
struct grfmode {
u_int8_t mode_id; /* Identifier for mode */
caddr_t fbbase; /* Base of page of frame buffer */
u_int32_t fbsize; /* Size of frame buffer */
u_int16_t fboff; /* Offset of frame buffer from base */
u_int16_t rowbytes; /* Screen rowbytes */
u_int16_t width; /* Screen width */
u_int16_t height; /* Screen height */
u_int16_t hres; /* Horizontal resolution (dpi) */
u_int16_t vres; /* Vertical resolution (dpi) */
u_int16_t ptype; /* 0 = indexed, 0x10 = direct */
u_int16_t psize; /* Screen depth */
char pad[32]; /* Space for expansion */
};
このようなマシンで、 hpcfbio.h を扱えるようにするにはどうしたらい
いでしょうか。私思うに、fbbase なメンバを加えてもらえば解決できる
..なんて思っているのですが、どうでしょうか。
#将来的には mac68k にも wscons が載るのは確実ですし(1.4.2ALPHA 入
#れてみましたが、あともうちょっと、といった感じでした)、wscons が
#載ったら、なるべくなら mac68k のコードも hpcmips の方に合わせてし
#まいたい、なんて思っています。
#うーん、とすると、wscons が載るまではとりあえず ext の方に置いた
#方がいいのかなぁ。 > fbbase
>実際のサポートは、これから arch/hpcmips/dev/fb.c で実装する予定です。
>
>そもそもこうのようなインターフェースが必要かどうかを含めて、
>なるべく多くの方の意見をお願いします。
mac68k では、 LKM でこのインターフェースに対応できそうな気がしていま
す。grfioctl の間に入って仲介するようにすればいいのでは...なんて思っ
ているのですが...何か問題ありそうでしょうか?
#場違いな質問ばかりで申し訳ないです。が、ちょっとよく分からないもの
#で。 LKM の 中で、さらに grfioctl な ioctl 呼んでも大丈夫なのかな
#ぁ...などと。
#でも、とりあえずダメ元で試してみます。ダメそうなら md_mac.h の方に、
# hpcfbio.h の動作を真似るルーチン群入れます。^^;;
--
柳井 裕之(やないひろゆき) Hiroyuki Yanai
fk200329@fsinet.or.jp
- References:
- hpcfbio.h
- From: "TAKEMURA, Shin" <takemura@netbsd.org>