2011年2月9日水曜日

NetWalker PC-T1スタイラスペンで右クリック

NetWalkerのフォーラムで、スタイラスペンでの右クリックできるかという質問があがってました。読んでみると、設定ファイルをいじることで可能になるということです。ただし、タッチパネルのドライバevtouchには、その設定をするとドラッグができなくなるバグがあり修正パッチをあてないといけないということです。

PC-T1用のドライバのバージョンは、
$ dpkg  -s  xserver-xorg-input-evtouch
として確認したところ、0.8.8-29-tsm5ということらしいです。
http://gr.archive.canonical.com/dists/jaunty-sendai/public/binary-armel/Packages
にも記載があります。ドラッグができなくなるバグの修正パッチより新しいので、もしかして設定ファイルの変更のみで大丈夫かもしれないと、試して見たところ、残念ながらドラッグができなくなりました。

設定ファイル50-Sharp.fdiは、/usr/share/hal/fdi/policy/20thirdparty/
にありましたが、こちらのページを参考にして、/etc/hal/fdi/policyにコピーして修正を加えました。
50-Sharp.fdiの中は、フォーラムにあるとおりにしています。

ドラッグができなくなってしまったので、とりあえず
/etc/hal/fdi/policy/50-Sharp.fdi
をホームフォルダに移動してもとにもどしました。

コンパイルしなおさないといけないようですので、ソースファイルを手に入れます。
ここにevtouchのソースファイルやdebパッケージがあるようす。

wgetで、以下3つのファイルを取得しました。
xf86-input-evtouch_0.8.8.orig.tar.gz
xf86-input-evtouch_0.8.8-29-tsm5.tar.gz
xf86-input-evtouch_0.8.8-29-tsm5.dsc

例のごとく、ソースファイルを展開します。
$ dpkg-source -x  xf86-input-evtouch_0.8.8-29-tsm5.dsc

まずは、環境が整っているか確認のために、ビルドしてみました。
$ cd  xf86-input-evtouch_0.8.8-29
で、展開されてできたフォルダに移動したのち、
$ dpkg-buildpackage -rfakeroot
とします。やはり足りないパッケージがあったりして、止まります。

私の現在の環境では、
xserver-xorg-dev
libgconf2-dev
quilt
uudecode
がなく、そのつど止まりました。
uudecodeは、sharutilsというパッケージにあるようです。
足りないパッケージをapt-getでインストールしていき、無事完了しました。

これをインストールしても、現状と変わらないので、例の修正パッチをあてようと思ったのですが、パッチのあてかたがわかりません。フォーラムで紹介されているパッチファイルを眺めるとちょっとした修正なので、ソースファイルを直接エディタで修正してしまいました。

修正ののち、ビルドを試みると、その途中で過去のパッチを削除したり当てたりと複雑な手続きをしているらしく、ソースファイルを修正したことが影響して手続きが止まってしまうようです。パッケージに含まれるパッチにない修正が加わったということで、問題なのだろうことは想像できます。

パッケージのビルドが無理なら、ドライバファイルだけでもできればいいということで、
$ ./configure
として、
$ make
とやったところ、evtouch_drv.soが.lib/に出来上がりました。
 
ソースファイル修正のあとに、dpkg-buildpackageを行いビルドを試みて失敗しているので、一部のパッチが削除されているのではないかと不安になり、やりなおしました。

新しいevtouch_drv.soが手に入りました。このあとどうすればよいのかわかりません。ここをみて、単純にコピーすればよいのかと考え、
/usr/lib/xorg/modules/input
の中にevtouch_drv.soがあることを確認して、それをコピーしてバックアップしたのちに、新しいevtouch_drv.soを上書きしました。makeしたフォルダの中で、
$ sudo cp .lib/evtouch_drv.so /usr/lib/xorg/modules/input
を行っただけです。

さらに長押しで右クリックの動作ができるようにした設定ファイル50-Sharp.fdiを/etc/hal/fdi/policyにコピーしました。再起動したところ、(再起動させずに反映させる方法をしらないので)無事に、長押しで右クリックもでき、ドラッグも行えました。

ソースに手を加えたうえで、パッケージにできる方がいらっしゃると皆さんが簡単に利用できるようになりますね。

2011/02/11 追記
その後、NetWalkerユーザーフォーラムで、ztoさんがタッチの開始が遅くなる不具合などを改善したものをパッケージ化してくれたので、そちらを利用させてもらっています。

2011年1月6日木曜日

NetWalkerでウルティマ4

今度は、NetWalker上でdebianのxu4をビルドしてみました。
xu4、ultima4-data、ultima4-graphics-upgradeのlenny用のソースをwgetでダウンロードしたのちに、
拡張子が.dscのファイルをdpkg-source -xで展開します。
それぞれのディレクトリに移動して、

$ dpkg-buildpackage -r fakeroot
をします。途中、必要なライブラリがないということで、止まりましたが、
すべてapt-getでインストールできましたので、あっさりdebパッケージが作成されました。
 3つのdebのパッケージが作られるので、xu4からインストールしました。
xu4は強制的にインストールしました。
$ dpkg -i --force-depends xu4_1.0beta3+cvs20100811-2_armel.deb
次にultima4-dataをインストールします。xu4がインストールされていれば、依存関係は満たすようです。
$ dpkg -i ultima4-data_1.01-10_all.deb
最後に、グラフィックス改善パッケージをインストールしました。
$ dpkg -i ultima4-graphics-upgrade_1.3-8_all.deb
$ /usr/games/ultima4
で実行できます。
BGMは、midiをtimidityで演奏するらしく、音が鳴りませんでしたが、timidityをインストールすると
綺麗にBGMが流れました。

キーボードがないと、遊びにくそうですが、このようなゲームもNetWalkerでちゃんと動くのですね。

2010年12月29日水曜日

NetWalkerでダンジョンマスター

ダンジョンマスターという疑似3Dのリアルタイムのダンジョン探索ゲームがありました。
だいぶ昔にPC-9801で遊んで、とても面白かった記憶があります。
根強い人気があるらしく、クローンも作成されており現在でも遊べるようです。
こちらに詳しい情報がありました。
これをNetWalkerで遊べないかとJava版のクローンであるDungeon Master Javaを試してみたところ二階層へ降りたところでメモリが足りなくなり強制終了してしまいました。でも、ちゃんと動いたので感心しました。

Javaを使わないものを試そうと、Linux用にポーティングされたChaos strikes backをコンパイルしてみました。Debianパッケージになっているので、Ubuntuでもコンパイルしやすいだろうと想像し、Linuxがよく分からない自分には、よい練習かと思いました。

ガリガリ活用研究のEBviewをビルドする箇所を参考に、開発に必要なツールをインストールしました。

$sudo apt-get install build-essential automake autoconf dh-make fakeroot debhelper dpkg-dev


こちらから、以下の三つのファイルをダウンロードしてきました。
chaos-strikes-back_11.014.orig.tar.gz
chaos-strikes-back_11.014-3.dsc
chaos-strikes-back_11.014-3.diff.gz

まず、ソースを展開してパッチを当てるそうです。
$ dpkg-source -x chaos-strikes-back_11.014-3.dsc

chaos-strikes-back_11.014というフォルダができました。
中を覗くとsourceとbinaryがあります。
binaryには、実行ファイル.Chaos_strikes_back_for_linuxがありますが、
ARMであるNetWalkerでは動作しないでしょう。恐ろしいので試していません。
コンパイルしたいので、sourceのほうへカレントを移します。
$ cd chaos-strikes-back_11.014/source

説明には、autogen.shを実行するように書かれています。
Makefileを生成するスクリプトのようです。
autogen.shに実行可能属性をつけます。
$ chmod +x autogen.sh

実行します。
$ ./autogen.sh

すぐにlibtoolが必要と言うメッセージが出て止まるので、
libtoolをインストールします。
$ sudo apt-get install libtool

再び、
$ ./autogen.sh

今度は、glib >=1.2.0が見つからないというエラーがでます。
そこで、libgtk2.0-devをインストールします。
sudo apt-get install libgtk2.0-dev
これは大きく、比較的、時間がかかりました。

再び、
$ ./autogen.sh
なんかうまくglibを見つけてくれません。
しかたがないので、configure.inの中の
PKG_CHECK_MODULES(GLIB, gllb >= 1.2.0)
を
PKG_CHECK_MODULES(GLIB, glib-2.0)
に書き換えました。

再び、
$ ./autogen.sh

sdl-configというコマンドが見つからないというエラーがでるとともに、
パッケージesoundが見つからないというエラーもでます。
そこで、libsdl1.2-devをインストールします。
sudo apt-get install libsdl1.2-dev
このときlibesd0-devも同時にインストールされました。

今度こそと、
$ ./autogen.sh

ウィンドウサイズを動的に変更するためには、Hermesが必要というメッセージがでます。必要ないので、オプションをつけてautogen.shを実行しなおします。

$ ./autogen.sh --disable-dynwinsize

Now type 'make' to compile Chaos Strikes Back for Linux
と表示がでて終了。どうやらMakefileができたようです。

$ make

たくさんの警告を表示しながらコンパイルが続きました。
無事に終了したようで、srcの中に実行ファイルChaos_strikes_back_for_linuxができています。

そこでbinaryにある実行ファイルを入れかえます。
$ cp src/Chaos_strikes_back_for_linux ../binary/.Chaos_strikes_back_for_linux

~/chaos-strikes-back-11.014/binaryの中のDMlinux.shを実行するとオリジナルのダンジョンマスターを遊ぶことができました。
ちゃんと扉がガラガラ開く音も再生できています。
二回に降りてすぐの、マミーさんのところでスクリーンショットを取りました。
この先に進むと不具合がでてくるのかは分かりませんが、動作しています。

調べながらコンパイルするのも、ちょっとゲーム的で面白いですね。

2010年12月11日土曜日

NetWalker PC-T1アップデートがあった

ひさしぶりにアップデートをかけてみたら、Linux-image-sendai のアップデートがきていたので、さっそく適用した。なにが変わったのだろう?

PC-T1に外付けキーボードでも用意しようと思い、IO-DATAのCPKB/BTを注文した。TABキーとALTキーがないのが残念だけど、キーマップの変更などで対処できるのだろうか。

近頃話題のガラパゴス端末を店頭で触ってきたけど、いい感触でした。思ったよりサクサク動いていました。5.5インチのポータブル版がよいけど、PC-T1と解像度が同じなので購入は我慢できそうです。
自分で作ったPythonスクリプトが携帯端末で動くというのもとても楽しいので、まだNetWalkerを使っていけそう。そのうちNetWalkerもガラパゴスに対応するのかな。ガラパゴス対応の新機種でもよいのでUbuntu搭載のNetWalkerは続けていってほしいと思います。

追記
CPKB/BTが届いたので、試したところTABもALTもFNキーとのコンビネーションで入力できるようになっていました。

2010年10月24日日曜日

NetWalkerにJabRefをインストールしてみた

NetWalker PC-T1は、データビューアとして便利に使えます。
論文のPDFを見ることがひとつの用途ですが、それを整理しておくための文献管理ソフトが必要だと思い、Pybliographerをインストールして使ってみていました。しかし、使用中に終了してしまったりと動作がいまいち不安定な様子でした。 ほかに、JabRefというものがあり、それも便利そうなので試してみています。アプリケーションの追加と削除からバージョン2.3.1がインストールできました。javaで動作するもので、起動などに時間がかかりますが、いまのところ順調に動いています。WindowsでもMacでも利用できるようなので、Windowsでも利用してみようと思います。

2010年9月18日土曜日

NetWlaker PC-T1で使うJpegViewer

しばらく自分で利用しつつ、いくつか機能を追加してみました。pngも読みたくなったり、ファイル名が知りたくなったり、画像の振り分けに使いたくなったり、リサイズもしたくなりました。Windows環境でも利用しています。
こちらからダウンロードできるようにしました。
NetWalkerからダウンロードすると簡単でしょう。
簡単に手順を書いておきます。
とにもかくにも、wxPythonがインストールされていないと動きません。
Synapticパッケージマネージャからpython-wxtoolsをインストールしてください。
ダウンロードしたzipファイルを展開したら、中に次のファイルがあることを確認します。
jpegview.py (本体)
help.jpg (操作が書かれたjpgファイル)
jpegviewrc (設定ファイル)
readme.txt (説明ファイル)

1.ホームフォルダに、jpegviewというフォルダを作ってください。
2.前の4つのファイルをそのフォルダにコピーまたは移動します。
3.設定ファイルjpegviewrcをエディタで開いてください。
4.設定ファイルの中に、
ExportPath= '/home/netwalker'
DefaultScreen='/home/netwalker/jpegview/help.jpg'
と書かれています。

/home/netwalkerがホームフォルダのパスですので、そこを自分の環境にあわせて書き換えてください。netwalkerがユーザー名ですので、そこを自分のユーザー名に変えるとよいでしょう。
5.jpegview.pyをダブルクリックで実行します。
実行しますかと聞かれますので、実行を選んでください。
うまく動作したらスクリプトをメニューに登録するとよいでしょう。

jpegview.pyのパーミッションに実行可能がついていないと実行できないと思いますので、
その場合は、chmod 755して変更してください。

いろいろ実験しながら書いたものですので読みにくかったり、無駄なコードが入っていたり、
エラーが出たりするかと思います。手持ちの環境でしか動作は確認していないので、動かなかったら、ぜひ教えてください。

動かないときは、端末を開いてjpegviewのフォルダに移動したのち、
$ ./jpegview.py
で実行すると、エラーメッセージが表示されていると思います。

スクリプトは自由にいじって、それぞれ好みにあわせていただけると幸いです。

2010年9月8日水曜日

NetWalker PC-T1でJpeg Viewer

zip圧縮されたjpegファイルを見るのにComixを使っていましたが、キーボードのないPC-T1には、ページの送り、戻りがやりにくかったのです。タッチペンで操作できて、小さな画面をめいっぱい使えるようなソフトウェアが欲しくなり、wxPythonで書いてみました。ZipFileを用いて、zip圧縮ファイルを開きました。Windows環境で開発しましたが、NextTrainのデータを読むものと同様に、ほぼ同じスクリプトで動作します。このようなところは、Ubuntuが搭載されているNetWalkerならではかと思います。

 電子書籍リーダーと同じように、ウィンドウの真ん中をタップして全画面表示と切り替えるようにしました。 回転、ファイルの送り、戻り、ズーム、移動をスタイラスによるストローク操作で行えるようにしました。jpegファイルを表示するだけですが、とりあえずは十分な感じです。