2006年8月29日から2006年8月25日までの日記を表示中

2006年 8月29日 (火)

uim-toolbar-gtk-systray

なんかいつの間にか出なくなった・・・と思ったら超薄くなって出てました(;´Д`).・・・一体いつからなんじゃこりゃ.uim-1.2.1に上げたからか?でもこの辺最近いじられてないよなぁ・・・.あー,そういやmltermもビルドし直しか.

[コメントを書く]

ekato 2006/08/30(水) 12:47:55
systrayって一つの要求に対してアイコン一つしか表示できないように基本的になっているのでそれが原因だと思います。
ただ Gnome の notification area だとサイズに制限がないので大丈夫なんですけどね。確か icewm では一つのトレイの横幅が決め打ちになっているので、それを書換えないとだめだったような気がします。
nosuke さんの使っているパネルって何ですか?
nosuke 2006/08/30(水) 13:12:18
こんにちは.
> nosuke さんの使っているパネルって何ですか?
えーと,パネルを勘違いしてたら申し訳ないんですが,パネル自体はicewmのタスクバーを使ってて,アイコンの捕捉にはicewmについてるicewmtrayを使用しています.
ekato 2006/08/30(水) 13:52:02
なら、yxtray.cc の TICON_W_MAX をとりあえず書換えてみるとか。
本当なら、MAX 決め打ちじゃなくて size_request された値を使うのが正しいと思うんですけどね。

ツールバーみたいなものを systray に使うのは本来の目的ではないので、icewmでは考慮されていないんだと思います。KDE の systray もだめだったような気がします。
nosuke 2006/08/30(水) 13:59:21
ううーん,そうなんすか.となると今まで使えてたのが不思議ですね・・・.うーん
ekato 2006/08/30(水) 14:25:58
今まで使えてたんですか? toolbar-systray-gtk.c って変わって
ないはずですし…

ところで今 icewm 試してみたんですけど、icewm だけじゃなくて
uim のほうにも以下の変更が必要でした…

Index: toolbar-systray-gtk.c
===================================================================
--- toolbar-systray-gtk.c (revision 3859)
+++ toolbar-systray-gtk.c (working copy)
@@ -53,6 +53,8 @@
uim_toolbar_check_helper_connection(user_data);
uim_helper_client_get_prop_list();
uim_toolbar_get_im_list();
+
+ gtk_widget_show_all(user_data);
}


@@ -78,8 +80,6 @@
icon = uim_toolbar_trayicon_new();
g_signal_connect(G_OBJECT(tray), "embedded", G_CALLBACK(embedded_cb), icon);

- gtk_widget_show_all(icon);
-
gtk_container_add(GTK_CONTAINER(tray), icon);
gtk_widget_show(GTK_WIDGET (tray));
nosuke 2006/08/30(水) 14:59:05
うお,パッチどうもです.
インストールしたもの巻き戻してみたらuim-1.2.0beta + icewm-1.2.26の組合せではちゃんと動きました.icewm-1.2.26のソース見たらyxtray.ccの中身がちょっと違いますね・・・.
uim-1.2.1 + icewm-1.2.26だとダメみたいです(昨日のスクリーンショットは多分この組合せ).うーん
http://garakuta.homelinux.org/~nosuke/tsubo/files/linux/uim-toolbar-gtk-systray-20060830.png
nosuke 2006/08/30(水) 15:17:44
あれ,今再度1.2.1に上げたら正常になりました.ううう,一体どういう加減なのか・・・.とりあえずicewm側に問題ありっぽいんで見てみます.お騒がせしました.
ekato 2006/08/30(水) 15:58:58
タイミング依存ぽいですよね。xfce4 とか KDE の systray でもサイズを反映してくれない場合があるみたいです。uim のツールバーみたいな可変長のアイコンを systray に使うのは想定外なんじゃないかな…
nosuke 2006/08/31(木) 02:11:38
うーん,なるほどタイミングの問題ですか.
toolbar-systray-gtk.cいじって個々のアイコンをバラバラにsystrayに登録するといいのかなぁ・・・.
ekato 2006/08/31(木) 15:54:42
さすがに、バラバラに登録は面倒ですね…

どうして gnome で問題がなく xfce4 でだめなのか見てみましたら、gnome ではドックした時点でのアイコンのサイズに制限するコードがコメントアウトしてありました。
以下の変更で xfce4 でも問題なくなるみたいです。

--- libxfcegui4-4.2.3/libxfcegui4/xfce_systemtray.c.orig 2005-11-06 01:58
:45.000000000 +0900
+++ libxfcegui4-4.2.3/libxfcegui4/xfce_systemtray.c 2006-08-31 15:38:07.0000
00000 +0900
@@ -473,6 +473,7 @@
*/
req.width = req.height = 1;
gtk_widget_size_request (GTK_WIDGET(socket), &req);
+ /*
if ((req.width < 16) || (req.height < 16))
{
gint nw = MAX (24, req.width);
@@ -481,6 +482,7 @@
req.width, req.height, nw, nh);
gtk_widget_set_size_request(icon, nw, nh);
}
+ */
gtk_widget_show(icon);
}
else

ファミコン妄想

中身全然わかってないんですが,PPUは毎フレーム,ネームテーブルを見てキャラロムからDMAか何かで対応するマップを読み出してVRAM上に背景構築するんですかね?1.79MHzで毎クロック1byte(4ドット)読み出すなら,15,360サイクルあれば読み終わるから余裕で間に合うよなぁ・・・.メモリが1サイクルで読めればですが.

たとえばカセット側にFPGA置いたりして,ダブルバッファリングみたなことして,元々用意してたデータをものすごい勢いでブリットしまくって,キャラロムを動的に生成してファミコン側に見せると,ファミコンの描画限界を超えてすげーこと(大量の弾幕とかデカキャラ動かすとか)できるんじゃねーの?とか妄想してみましたが,8×8×256 だと,256×240 には全然足りんな.

あ,待てよ,4ドット単位で読み出されんなら,FPGA内のRAMに256×240のメモリ用意しといて,ネームテーブルは全部BGの0番とか指しておきながら,0番を読む度にアドレス増やしながらメモリの中身返すとかやれば何でもできるんじゃ・・・.どーですかね?>ぼすけさん

でもなんつーか誰でも思いつきそうだよなこんなの(´・ω・`).大体最初の前提が嘘くさいし(^^;.そもそも何をどこにブリットするとかもファミコン側じゃ処理が全然追いつかなくて,結局FPGA側のプロセッサ使うとかになって,ファミコンはI/Oだけ・・・とかなりそうで微妙だよなぁ(;´Д`)

[コメントを書く]

nosuke 2006/08/30(水) 12:11:36
あーパレットに制限があるからだめそうだ・・・

ninix-aya-3.8.9

諸般の事情で記念にninix-ayaのバージョンを3.8.4から3.8.9に上げてみたんですが,ゴーストの顔突いたら母ちゃんかんべんでクラッシュするようになっちまいました.ううう,これではパチュリー以外に切り替えられんではないか・・・.

3.8.5から順番に上げてったら,3.8.8からダメな事が判明(´・ω・`)

Traceback (most recent call last):
  File "./ninix/ghost.py", line 961, in do_idle_tasks
    self.__sakura.process_script()
  File "./ninix/sakura.py", line 549, in process_script
    self.interpret_script()
  File "./ninix/sakura.py", line 1079, in interpret_script
    self.__script_tag[name](self, args)
  File "./ninix/sakura.py", line 809, in __yen_q
    newline_required)
  File "./ninix/balloon.py", line 328, in append_link
    self.window[side].append_link(label, value, newline_required)
AttributeError: BalloonWindow instance has no attribute 'append_link'

うーん・・・Pythonは(も)お手上げ・・・.なんか古いのかな?

[コメントを書く]

nosuke 2006/08/30(水) 12:53:36
あーBalloonWindowクラスからappend_linkメソッドが消えている・・・
nosuke 2006/09/01(金) 12:19:33
3.8.9aで直ってたー

2006年 8月28日 (月)

でべろ

手元に昔々に買った「でべろ」って本があります.この本は,PCエンジンで開発してみようみたいなコンセプトの本で,PCエンジンのハードウェアの構成やアセンブラのニーモニック解説,メモリマップ,I/Oマップ,BIOSあたりの話まで出てる,かなりイカした資料だったりします.しかし,この本を手にした当時は,アセンブラでゲーム書けちゃうような人に憧れるただのDQNだったので(今もあんま変わらんが),本の回路図を見てPCとの接続ボードを作り,友人からもらった98につないでちょっとデモを動かしてみたりはしたものの,アセンブラの方が用語がさっぱりわからず挫折した覚えがあります.・・・ああ,ほんと情けない.今もあんまりわかってませんが,当時はそりゃもうひどいもんで.

で,何でいきなりそんな話が出てくんの?お前は今ファミコンをいじってんだろ?って感じですが,PCエンジンってアドレッシングとか命令とかがファミコンと結構似てて(ファミコンに無い命令はいっぱいありますが)意外と役に立つんですわ.あと今なら書いてあることがそれなりにわかるんで(「読める・・・読めるぞ!!」というやつ),見ててはーなるほどって感じで面白いです.・・・レベルの低い話ですまん orz

ただ,非常に残念なことに,この本の付録のCD-ROMが見当たらんのですよね(おそろしい事に帯は残っていた・・・).この前PCエンジンのゲーム整理したときに出てこなかったんで,多分雑誌付録CD大量に捨てたときに一緒に捨てちゃったんだろうなぁ・・・.勿体ねぇ.

[コメントを書く]

KOU_BL 2017/12/17(日) 13:49:44
でべろ、自分の記憶では第2号までは出てて、それぞれ買ったはず。
倉庫部屋のカラーボックス内のどのかに眠っているはずだが、、、

CDとか

iCE MiLK TEi (dBu music)
因幡てゐを中心としたコンピレーションアルバム.なんかほんわかした昔のゲームのBGMのアレンジを聴いているかのようです.よみさんに買ってきてもらったときは高ぇ!と思いましたが,中身は充実しててハズレもなく値段相応かも.だまされてんのかも知れないけど(笑).10曲目とか12曲目あたりが特によかったっす.
BLACK BOX (I-Chu Sound Studio)
やっと夏コミのCDに.いろんなゲームのバトル曲アレンジ.I-Chu氏なので何も考えずに買いました.メドレー多くていいですねー.聴いてて気持ちいいです.サガフロ,FF6,FF7あたりが特に良かったです.よみさんは試聴して買おう.・・・Σ(゜д゜lll)「あこぎれっすん2」なんてあったのか・・・.

2006年 8月27日 (日)

ブックマーク整理

何故かブックマークを整理してみたり.上の方から見ていくと,mck関連やザウルス関連,RockBox関連,SHA-1関連といった具合に興味を持ったり一時的に必要だったものがごちゃっと固まってて「あ〜こんときは・・・」という感じです.というかどうも1年以上ブックマークをフォルダ分けしていなかった模様(;´Д`).

しかしあれですな,ショップのページとかでかいソフトウェアの公式ページとか,昔は律義にブックマークしてたけど,毎日ぼーっと眺めたい場合は別としてこんなん必要なときにだけググればいいんだよなー.・・・Σ(゜д゜ ) もしかしてこんな古典的なブックマークの使い方してるの漏れくらいなもんなのか? とりあえずググってすぐ出てきそうなところ消しまくり.

wine

daiさんの日記見てwine入れてみました.何か不安定だなー,Firefoxのインストーラーとか途中で落ちるし.・・・とか思ってビルドし直したりしてるうちに全然動かなくなっちゃいました(;´Д`).まあきっと設定が悪いんだろうなぁ.

2006年 8月26日 (土)

TNS-HFC2

うおー,勝手にキャラクタROMデータ読み込んでくれるなんて・・・.勝手に読ませた場合,ちょうど昨日の最初のスクリーンショットと同じ状態になりますた.

で,それとは別に,秘蔵(?)のアイスクライマーも動かしてみてるんですが,ファミコンおぼの君(仮)用に書いたローダほぼそのまんまで起動して動くものの,何か背景が変なんすよね.床が描画されてなかったり,色が変だったり,階数表示がおかしかったりです.ROMイメージが壊れてんのかと思ってエミュレータで動かしてみたら普通でした.うーん,よくわからん.あー,あと何か2回リセットしないと起動しないのも謎だ・・・.

2006年 8月25日 (金)

TNS-HFC2でファミコンおぼのくん

TNS-HFC2使ってどうにかおぼの君(キャラの方ね)が実機(ツインファミコン)で落下するようになりました.何かエミュレータで動かしたときと違って背景がバグってたり,フック出すとおぼの君の顔が消えたりしますが(笑),こんな感じです.ちゃんとパッドも反応します.基本的に

  1. NSFファイル8kbyteの後ろにプログラムROM 16kbyteとキャラクタROM 8kbyteをくっつけとく
  2. NSF部分でTNS-HFC2のバンクを切り替えて,キャラクタROMを$8000にマップする
  3. キャラクタROMの内容読み出して,PPUのメモリに$2006・$2007を経由して書き出す
  4. 再度バンクを切り替えて,プログラムROMが$8000から始まるところに見えるようにする
  5. $8000に飛ぶ

という感じでやってまして,このとき,バンクを切り替えるコードを実行する前に,バンクを切り替えるコード自体を$6000にコピーして,$6000に飛ぶという処理を行ってます.

たったこれっぽちの処理なのに,しょうもないバグ出しまくりでSDにデータをコピーすること数十回ですよ・・・.慣れないと辛い・・・.あと背景がバグってんのは何ですかね.垂直ミラー・水平ミラー云々の問題か?

アドレスミラー(水平・垂直方向)制御は$5FEDに配置したレジスタを使用します。

って何書けばいいんだーorz.垂直にする場合は1でいいのか?でも全然改善しないや・・・.2を書くと起動しなくなるな(^^;.もしかして全然別問題かなぁ.うーむこりゃわからん.おぼの君(人の方)何か思い当たる節ありますかね.

しかしまあ,これでとりあえず512kbyteまでのゲームは作って動かせるっつーわけですな.キャラROM足りない場合もバンク切り替えて転送すりゃいいわけだし.夢が広がります.

[コメントを書く]

OBONO 2006/08/26(土) 12:51:10
すげぇ…
それにしても背景やスプライトが化けるのが気になりますなぁ。

垂直ミラー・水平ミラーの制御については、
INESヘッダとして、ソースの先頭に .inesmir 0 とか書いているので、
自分の中では、動的に切り替えられないという認識だったんだけど。
nosuke 2006/08/26(土) 16:36:03
水平・垂直ミラーは関係なかったっす.ネームテーブルを使用前にゼロクリアしてなかったのが問題でした.エミュレーターだと最初から0埋めされてたりするから問題が出なかったりするのかな?

> 動的に切り替えられないという認識だったんだけど。
実カートリッジだとそうっすねー.間に何かはさんで切り替えられるようになってるのもあるらしいけど.
nosuke 2006/08/26(土) 17:00:33
相変わらずスプライトが変だなぁ・・・(´・ω・`)
http://garakuta.homelinux.org/~nosuke/tsubo/files/misc/famicom-obono2.jpg
Socket775 2006/08/26(土) 19:17:55
NESヘッダ16byte+プログラムROM 32kbyte+キャラクタROM 8kbyteをくっつけて
拡張子を.NESから.NSFにするだけで、起動時に水平ミラーでキャラクタRAMに転送する機能があるようです。
mck virtual keyboard用の.NESファイルの実行テスト中に発見しました。
nosuke 2006/08/26(土) 20:47:32
ども,こんにちは
> 起動時に水平ミラーでキャラクタRAMに転送する機能があるようです。
(;゜Д゜) (゜A ゜;(゜д゜;) ナ、ナンダッテー!

うおー,本当だ! 16k + 8k は最初に試したんですが(^^;,32k + 8k とは・・・
情報ありがとうございました.

2006年8月29日から2006年8月25日までの日記を表示中

中の人情報

名前:
nosuke (のすけ)
メール:
sasugaanijaのgmail.com
「の」は「@」みたいな
関連リンク:

カレンダー

2006年8月
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

<<先月分

翌月分>>

最新の10件のエントリ

最近の10件のコメント

過去ログ