2009/12/30

[Nokia N810] wiiリモコンをつないでみる (wiicontrol で)

まえふり
某ショップでは「N810はWiiが遊べる」などと例によった表記をして先立つものをふんだくっていますが、
(それがWiiリモコンをBluetooth HIDデバイスとして使うって意味なら)実際のところ、とても簡単です。
maemo向けには
  1. cwiid (C)
  2. wiicontrol (python)
という二つのソフトウェアがあります。

cwiidは C製で高機能。
  • Wiimoteをマウスとして使えたり
  • IR、加速度センサのデータをみたり
いろいろできますが、パッケージとGUIがないので導入がちょっと面倒です。追記:extras-develにあるようです

wiicontrolは python製でシンプルながら、
  • 柔軟なキーコンフィグ
  • わかりやすいGUI
  • maemo向けのキーコンフィグ
を備えます。
cwiidにはPC/linux向けの記事が既にありますから、
今回はwiicontrolに絞って紹介したいと思います。

早速インストール
1. 'apt-get install wiicontrol'なりAppManagerなりでwiicontrolをインストール
2. [アプリケーションメニュー] - [Extras] - [Wiicontrol] で起動。(Bluetoothは自動でOnになります)
wayv
これは変造版wiicontrolです

3 .すわ鎌倉と、wiiremoteの1と2を同時に押すか、電池近くの赤ボタンを押します。
4. 問題なく接続されれば、各モード選択にしたがってキーに機能が割り当てられます。

自分でキーコンフィグ
デフォルトの独特のキー配置(Bボタンは修飾キーです。気付いた?)を確認するためにも、
変更するためにも、pythonらしく、漢らしく、スクリプトをそのまま編集します。
とりあえず、バックアップをとっときましょう。(いざとなればapt-get --reinstall install wiicontrol)
$cp /usr/bin/wiicontrol /usr/bin/wiicontrol.backup
後は好きなエディタで/usr/bin/wiicontrolを編集するわけですが、
読んでみると#Home button is broken . Do not use it なんてコメントがあります。
これは/usr/bin/Wiimote.pyの213~215行目部分を
#        if newmask & buttonmap['H'] and not self.buttonmask & buttonmap['H']:
#            print "Re-enabling IR"
#            self.enable_IR()
こんなかんじにコメントアウトすることで回避できたりしますので、まずやっつけておきましょう。
さて、viだのemacsだのnanoだのありますが、leafpadもなかなかいいので
$sudo leafpad /usr/bin/wiicontrol
wayv

mapping_p, mapping_lはそれぞれPortrait/Landscape Mode時のキーマップです。
mapping_bはBボタンを押している間のキーマップですね。
モード別に各ボタンごとの機能を記述します。
機能には
  • a (+ Up/Down/Left/Right : D-padの各キー)
  • k(+キーの名前 : アルファベットやF1などのキー)
  • m (+ x座標 + y座標 : カーソルの移動)
  • b (+ 1/2/3 : 右/左/中ボタンクリック)
  • t (+ x座標 + y座標 : 指定座標をタップ)
  • s (+ 秒 : 指定秒スリープ)
  • False (機能割り当て無し)
があり、たとえば Landscape(横持ち)時のU (Up)キーで言えば"a Left"つまりD-padの左キーが割り当てられています。
300行目あたりの分岐を弄れば新たな機能を追加することも可能です。
そこらへんは次回。

蛇足
加速度センサの情報をリアルタイムにプロットするpyaxelwiiなんてのもあります。
それから全然関係ない話。そろそろPowerVRドライバ公開されるらしいです。年内とか。訂正。年内には出ないそうです。

2009/12/24

[Nokia N810] CUI的RSSリーダー Snownews ( + 無理サ*タシューティングゲー sunta hunta !)

デフォルトのRSSリーダーはホームスクリーンのウィジェットと連携できたり、裏で自動更新してくれたりと高機能ですが、
サクッと最新記事をみるには向いてません。
dilloで見れば画像いっぱいのengadgetやgigazineもサクサクですが、こちらもヘッドラインを追うのが面倒。
そこで、cuiむけncursesなRSSリーダーsnownewsをmakeしてみました。最近ターミナル生活が豊かです。

wayv

ファイル: snownews_1.5.12-maemo1_armel.deb

make: 普通に./configure --prefix=/usr;make, ただしMakefileを修正してlibncurseswをリンクしてあります。

インストール: ルート権限でdpkg -i , libncursesw5が必要です。

使いかた:
  • hキーでヘルプが出ます。
  • aキーで新規フィード追加。
  • '~/.snownews/browser'で外部ブラウザを指定できます。(dillo.ja %u > /dev/null & としてみました)
  • 'LC_ALL=ja_JP.UTF-8 snownews'で日本語UIになります。
  • 'snownews -u' で起動すると起動直後に更新してくれます。
  • 'LC_ALL=ja_JP.euc-jp snownews'でeuc-jpな日も安心。

  • おまけ:
    'touch ~/.snownews/santa_hunta' すると、ルドルフごとサンタを撃ち落とすサンタさんに探査子(プローブ)をつける *1 愉快無理ゲー sunta hunta ! が遊べるようになります。
    wayv
    レベル10くらいからニュータイプ育成ゲームに

    *1 準偏光位相転移装置をつかって世界中に移動するサンタさん達をサポートする、簡単なお仕事です。(背景設定 : 花形職業であるサンタになれず、今ではしがないシューターの父デイヴィッド。 崩壊寸前の家族におこった小さな、クリスマスの奇跡。)

    2009/12/23

    [Nokia N810] Made in MADDE

    なにやら面白げなツールがでてきました。http://wiki.maemo.org/MADDE)(TMO:http://talk.maemo.org/showthread.php?t=38075)
    いちいち他に仮想マシンいれたりしなくてもLinux/Windows/OSXで動くってのは便利ですね。
    内部的にはqemuだったりするのだろうか。
    いまのところセルフコンパイラー道まっしぐらですが、ちゃんとリリースされたらMADDEに乗り換えたいなあ。

    さて、TMOにはこんなスレもありますが、N8x0向けMBXドライバもクリスマスにやってくると信じて待ってます。
    雨は夜更け過ぎに、雪へと変わるだろう♪ ドライバがこないどころかきっとJA$RACが来るぜ。

    2009/12/05

    [Nokia N810] キーストロークランチャーdmenu(ついでにmaemodmenuhelper)

    キーボードとして使えれば、
    Dvorakだろうがレーザー投影式キーボードだろうが防水ペラペラキーボードだろうが
    NetWalkerのキーボードだろうが有機ELキートップのいろいろな意味でとてもヘビーなキーボードだろうが
    はたまた
    コレ
    だろうがなんでもいいというよく訓練されたフリークスは、N810においてすらキーストロークランチャーを使いたいと思うはずだ。
    というわけで、
    WindowsはLaunchy(最近でたlinuxポートはQt4...)、OSXはQuicksilverなんかと肩を並べる
    linuxむけキーストロークランチャーdmenuをmakeして、
    お手製デーモンといっしょにパッケージングしてみました。(まあデーモンといっても食玩のお菓子みたいなものです。)

    あ、実のところ、普通のdmenuではなくてdmenu-vxhd(vertical+xft+history+dockapp)という機能強化版です。

    ファイル :
    インストール : ルート権限で"dpkg -i"
    アンインストール : ルート権限で"dpkg -r maemodmenuhelper"
    使い方 :
    ホーム画面でキーボードが開いている時にスワップキー(Esc)を押すとメニューが出ます。
    • メニューの見た目(色、フォント、並びの縦横,位置など)を変更するには
      /usr/bin/dmenu_maemo_main.sh内 $DMENU_OPTSを編集。
      dmenuのmanはコチラ
    • Dilloを使っている人は
    • /usr/bin/dmenu_maemo_main.sh内
      #if test `echo $APPName | grep -c g:` -gt 0
      #then
      #dillo.maemo "http://www.google.com/search?q=`echo $APPName | cut -d: -f 2- | tr ' ' \+`&sa=2" &
      #exit
      #fi
      をコメントアウトすると、メニューで"g:キーワード"としたとき、googleの検索結果がDilloで開きます。
    • メニューに独自コマンドを追加
    • /usr/share/dmenu-helper/list以下に、名前と実行コマンドを書き込んだテキストファイルを置きます。 サンプルとして入っているtop.desktopならこんな感じ。
      Name=top
      Exec=osso-xterm -e top

    スクリーンショット :

    小文字でもちゃんとヒットします

    echoテーマで

    2009/11/16

    [Nokia N900] [Nokia N810] TV-outのビデオが4本と、偽Maemo5ネタが4本ね。ふたつでじゅうぶんですよ。


    解像度が変更出来るかは定かでないですが、Bluetoothでキーボードなど繋げばちょっと快適にウェブブラウズできるかも。



    相変わらずDivXには強いみたいですね。
    h.264も再生支援が効くとか。


    プリインストールのゲーム(OpenGL ES1.1)だそうです。
    OpenGL ES2.0なゲームはOviStoreで売るのかな。なかなか商人になってきたNokia。


    あまりに画面が大きくてCGっぽい。


    そろそろ国内にもn900が届きそうな今日この頃ですが、

    こういうのをN810で再生すると手軽に偽Maemo5が楽しめます。
    今度はMaemo5SDK同梱の仮想Maemo5環境にリモートデスクトップを繋いで見ようかな。
    成し遂げた後、ものすごい脱力感に包まれそうだ。
    Merに期待。あ、偽Maemo5themeなんてのもあります

    2009/11/14

    [Nokia N810] Dillo2開発版のパッケージをアップデート (2)

    ファイル:
    Dillo2開発版のパッケージをアップデート。より新しいソースコードがベース。
    N900でもDillo2使えたらいいなあ。通信費の節約は大事です。まあ今のところ購入できそうにないですが。(ぢっと手を見る)

    ぜんぜん音沙汰ないTIのOMAP2/PowerVRドライバ待ち。そもそもがアメリカンジョークだったりして。

    [Nokia N810] Dillo2とdillohelperのアップデート1

    ファイル:
    開発版Dillo2のパッケージをアップデート。依存関係が追加されました。
    dillohelper パッケージのアップデート。アプリケーションメニューの"Dillo_maemo"から起動できるようになりました。


    2009/11/02

    [Nokia N810] Dillo2 開発版とdillohelperのアップデート

    ファイル:
    Dillo2をリポジトリからmakeしてみました。
    dillohelper をパッケージ化してみました。

    2009/10/29

    [Nokia N810] [Nokia N900] 俺とカメラとFMラジオと (V4L2の巻)

    N810のカメラとN900/N800のカメラ・FMラヂヲはV4L2(Video4Linux2)デバイスとして見えるので、
    例えばv4l2ucpてなソフトを使うと、いろいろ弄ってニヨニヨできる訳です。

    別名(1/f)ノイズジェネレータなN810のカメラだってなんとかなる!

    (もとい、できるハズです。
    というのもN900、N800は持ってないので検証できないのです。
    どなたかやってみていただけないかなぁ。)

    ちょちょいと触っていると、トイカメぐらいの画質にはなって来たので、fswebcamと組み合わせて写真を撮るスクリプトなど書いてみました。

    おまけで
    "gst-launch-0.10 -v v4l2src ! video/x-raw-yuv,width=320,height=240,framerate=(fraction)20/1 ! xvimagesink force-aspect-ratio=true"
    でカメラ映像を再生しつつ、画質設定を変更するスクリプトも入ってます。



    ファイル: tas_nameraka.tar.gz
    インストール:
    1. <libqt3-mt>をダウンロードしてdpkg -i 、写真を撮りたい人はもapt-get install
    2. 上記ファイルをダウンロードして展開 "tar xvzf tas_nameraka.tar.gz"
    3. "cd tas_nameraka"
    4. "./tas_nameraka.sh"で写真が取れます。"`date +%Y-%m-%d-%H-%M-%S`".jpg に保存
    5. "./v4l2ucp /dev/video0"で上のようなGUIが出ます。(N900ではリアが/dev/video0でフロントが/dev/video1?)。N900/N800のラジオにアクセスする時は/dev/radioでしょうか
    6. "./video_nameraka.sh"で/dev/video0からの映像を写し、3秒ごとにサンプルの設定ファイルを読み込みます。鏡を見るのが怖い人は心臓と要相談(正直危なかった)。
    7. "./v4l2ctrl"で設定ファイルの書き出し、読み込みが出来ます。詳しくは"./v4l2ctrl -h"で。

    [Nokia N810] Quasarパッケージのアップデート2



    ダウンロード : quasar_0.96r172r31-maemo1_armel.deb

    変更点 :
    • Quasarからシステム音量を変更できるようになりました。
    • 新しいバージョンのソースからビルドしました。

    Todo :
    • 音量調節周りがsystem()的適当改造なのでもうちょっとなんとかする。

    2009/10/14

    [Nokia N810] 手書き入力考


    縦持ちでも使えるN810ですから、Dillo2でのよりよいブラウジングの為にも、手書き入力が必要な気がして来ました。
    (そうです、気の迷いです。)
    まずscim-tomoeなど試してみましたが、流石にOMAP2ではツライ。

    みかか製tomoe-linux(おしい)

    英語手書き入力なOSSはザクザク出てくるんだけどなあ。
    などと思いつつググっていると、懐かしのshikigamiプロジェクトに辿り着きました。
    布目のソースはコチラ様から頂いて、とりあえずmake、恐る恐る”nnmime”。
    コイツ、動くぞ!(maemo言ったな)

    落としたflvをmplayer -dumpaudioすると聞きやすいです


    正確には、「23時越えるよ」でした。謎はとべてすけた!

    結局、日本語xcorefont無しなN810では文字化けするのでした。うーん残念。

    ところで、N810はスライドするとキーボードが出てきます(豆知識)、便利です。


    2009/10/13

    [Nokia N810] そのなは XJP2  (青空文庫を読む4)


    勝手にポートしてるXJP-TEXTが先日、GIGAZINEさんで取り上げられていました
    やっぱりパッケージ名はXJP2の方が正しいのか、というわけで修正してやる!(類:修造してやる!)
    このバージョン管理はWindows2000がNT5.0だったりWindows7がNT6.1だったりするのと同じなんだろうか。(ちなみにWindowsVistaはがっかりする)
    うんにゃ、Firefoxとおなじですね。


    ファイル : xjp2_2.8.0-maemo2_armel.deb

    その他 :
    • 以前のパッケージを削除してから(”dpkg -r xjp-text”)入れないとダメです
    • 名前以外はなんにも改善されてません
    • NWはなんだかんだヨさゲ。でもn900も良いなあ

    2009/10/05

    [Nokia N810] mYTube+mplayerRC2でYoutubeをストリーミング再生

    N810でYoutubeを見るとき、
    • ブラウザから見れば保存の手間を省けるが、重い。
    • mYTube経由mplayerから見ればサクサク、しかし一旦保存することになり、ちょっと面倒。
    某デンマーク王子並にアンビバレンツな状況だ。死ぬべきか。
    しかし、Officeのイルカを削除する方法をググっている最中、ひらめいた。
    そう。たった一つの冴えたやり方は、mYTube経由mplayerでyoutubeをストリーミング再生する事。
    (それからイルカ野郎をOfficeごと削除する事)
    と、言うわけでしょぼいシェルスクリプトを書きつつ、mYTubeを間改造(マは間抜けのマ)してみました。
    あのイルカ野郎は地球上で二番目に賢い生き物に対する侮辱だよ!(さすが一番賢いネズミはうまく情報操作しているようですが)


    インストール : dpkg -i でインストール。mYTubeの0.1.5-1が必要です。入れてないなんてありえない。

    使い方 : インストール後、mYTubeを起動。playの代わりにPlaySTをクリッククリック。
          数秒後に再生されます。シークもできるよ。
          ところで、クリックなんて書くといつかのイルカを懐かしく思い出す。あいつ、元気してるかな。

    学校食罪?

    mYTubeの作者さん、コードを汚して御免なさい。
    mplayer-rc2はココから勝手にもって来ました。
    ライセンス違反は「RMS様が見てる!」(Big RMS IS Watching YOU!) 許して!

    2009/10/04

    [Nokia N810] コネタ 富樫先生と金ピカバッテリー

    最近TMOで見つけたコネタを二連発。
    富樫先生スペインでなにやってはるんですか!


    こちらはN900で使えたら良いよね。という怪しいバッテリー。(リンク先はebay)

    多分、色のセンスが(バブル期の)日本製

    togashiさんこんな所で晒してごめん。(大体自分だってidが有名人と被っている。)
    それにしても、まったく日本のモバイルバッテリー事情を知らぬと見える。。。

    2009/09/26

    [Nokia N810] Dillo2でフルスクリーン&右クリック&コピペ&タップスクロール



    ついに日本語が打てるようになったDillo2*1
    これが多分Maemo最速、どころか世界最速*2のブラウザなんですが、N810では
    • フルスクリーン化
    • 右クリック
    • URLバー以外でのコピーアンドペースト
    が出来なかったり、スクロールバーも小さすぎてちょっと不便だったりします。
    そこで、Dillo2をサポートする超適当Cプログラムを書いてみました。

    *1: ただし検索ウィンドウでは無理っぽいです>検索して来た方
    *2: 少なくとも、javascript無しだけど画像とテープルが表示できるブラウザ部門およびjavascript無しだけど画像とテープルとCSSとが表示できるブラウザ部門において
    *3: ゴールドプランでは21時から24時台の音声通話が月内に200分を超過した場合、超過分30秒ごとに20円かかります。



    ファイル : dillohelper-ja.tar.gz


    使い方 :
    1. xmodmapが入ってなかったらインストール
    2. 上記アーカイブをダウンロードして展開
      "tar xvzf dillohelper-ja.tar.gz"
    3. 中身のdillohelper-plusとdillo.jaを/usr/local/binに移動
      "mv dillohelper-ja/dillohelper-plus dillohelper-ja/dillo.maemo /usr/local/bin/"
    4. dillo.maemoからdilloを起動
      "dillo.maemo google.co.jp"

    機能 :
    • フルスクリーンキー(F6)をクリック(500ms以下)すると前面のDilloウィンドウを最大化
    • フルスクリーンキー(F6)を長押し(500ms以上)している間、タップを右クリック化
    • プラスキー(F8)でタップの左クリック/中クリックをトグル
    • 中クリックで
      • リンクを新しいタブで開く
      • 左クリック中に選択した文字列のコピー(primary)&ペースト
      • タップスクロール

    その他 :
    • ソースコード同梱ですが、多分読むに耐えません。
    • dillohelperは空ファイル/tmp/dillohp.pidを作成して、多重起動を防ぎます。なんて汚いやり口だっ!
    • Dillo2をリポジトリからmakeしてみたら、さらに早くなってました。

    スクリーンショット :


    Z君を捕獲中



    デイリーポータルZ 林さんリスペクト(サインとか欲しい)




    2009/09/25

    [Nokia N810] 青空文庫を読む3 (xjp-textのアップデート編:壱)


    ファイル :
    xjp-text_2.8.0-maemo2_armel.deb

    改善点 :
    • タスクスイッチャにアイコンが出るようになりました

    その他 :
    • アイコンがさらに駄作なりました(最近IMEがつらくあたってきます)
    • アプリ名はXJP2にしたほうがいいのかな
    • 設定方法などは過去のエントリ後半をご覧ください

    スクショ :


    ナウでヤングなアイコンが出ます


    紙は死んだ。(2451年くらいには)

    2009/09/14

    [Nokia N810] 俺のN810が火を噴くぜ!


    ----警告----
    Nokiaと私は
    この記事を読んだ結果引き起こされた事件、事故、損害等に関して一切の法的責任を負いません。
    もし肺活量に自信のあるあなたが(空気摩擦で)N810の発火を引き起こしても、それは貴方の責任です。
    用法用量を守って正しくお使いください。

    某アニキ「お前のN810で火を噴け」(語呂がわるい)

    と、言うわけで東西東西、N810で火遁の術でござるの巻。
    などと書くとすわN810でも発火問題か。という方向に行きそうですがそうではありません。

    arecord + Synaesthesia(AudioVisualizer) + esddsp = iPhone風なジョークアプリ
    という話。

    ファイル :  blowthefire-v2.tar.gz

    用法用量 :
    1. blowthefire-v2.tar.gzをダウンロード
    2. N810のext2/ext3/jffs2なパーティションで解凍 
       "#tar xvzf /home/user/MyDocs/blowthefire-v2.tar.gz"
    3. 出てきたblowthefireフォルダに移動
       "#cd /home/usr/MyDocs/blowthefire"
    4. "./blowthefire.sh" もしくは "./blowthefire-lite.sh"
    5. N810に思いっきり息を吹きかける(マイクのあたりを吹くと効果的です)
    6. N810が大炎上、記事を削除するも収まらず、結局ブログごと閉鎖。
    7. 疲れて来たらqキーを押して終了


    その他 :
    Synaesthesiaはもちろん本来の用途にも使えます。
    とりあえず
    "mplayer -ao esd /home/user/MyDocs/.sounds/*.mp3"
    "./synaesthesia esd"
    で動作確認済み。
    もっと多機能で遅延が少ないのをお求めの方にはeXtaceをeasydebianで使うのがお勧めです。



    スクリーンショット :





    おまけ:eXtaceのスクリーンショット :




    2009/09/13

    [Nokia N810] Dillo2で日本語入力(手順のメモ)

    ファイル :
    手順 :
    1.
    何はともあれDillo2をインストール。
    ITT(今はTMOか)はコチラ(http://talk.maemo.org/showthread.php?t=30558)のスレッドで公開されているモノか、上記にある拙作のパッケージを使う。ITTのがお勧め。
    2.
    上にあるja_JP.UTF8.tar.gzをダウンロードして解凍、
    出てきたja_JP.UTF-8フォルダを/usr/lib/locale/に移動。
    "locale -a"のリスト中にja_JP.UTF-8が有るか確認。
    #tar xvzf ja_JP.UTF8.tar.gz
    #sudo mv ja_JP.UTF-8 /usr/lib/locale/
    #locale -a
    =道の上から=
    C
    da_DK
    =中略=
    it_IT
    ja_JP.UTF-8
    nl_NL
    =後略=
    3.
    一般ユーザで"scim -d"とやっておいて(重要)

    #LC_CTYPE=ja_JP.UTF-8 XMODIFIERS=@im=SCIM dillo google.co.jp
    でdilloを起動。
    上手く行けばdilloで日本語入力できるはず。


    dilloに関しては
    #! /bin/sh
    LC_CTYPE=ja_JP.UTF-8 XMODIFIERS=@im=SCIM dillo "$@"
    てなシェルスクリプトをおいておけば良いけど、"scim -d"まで自動化するにはもうちょっと研究が必要そうです。


    2009/09/10

    [Nokia N810] 青空文庫を読む2 (xjp-textのpackaging編)



    紹介は以前のエントリに。


    ファイル: xjp-text_2.8.0-maemo1_armel.deb  アップデートしました。

    インストール: 例によって野良パッケージなので"dpkg -i *.deb"でインストール。

    注意点:
    念為ながら、保証はいっさいありません。
    また書き換えたとは言いようの、xcorefont依存な所をコメントアウトしただけの適当改造なので、
    設定は~/.xtext/xtext.confを書き換える事でしか出来ません。(オリジナルはGUIで設定できます)
    ~/.xtextフォルダは初回起動時に作成されますが、設定ファイル(xtext.confとxtext.offset)は/usr/share/xjp-text/以下にインストールされたモノをコピー、編集する必要があります。
    #cp /usr/share/xjp-text/* ~/.xtext/

    xtext.confに関して:
    • デフォルトディレクトリ設定
    fキー(デフォルト)で開くファイル選択画面で表示されるディレクトリの設定です。青空文庫のダウンロード先にも使われるので、専用のディレクトリを作成されることをお薦めします。
    例:BOOK_DIR: /home/user/MyDocs

    • フォント設定
    オリジナルのxjp-textはxlfd形式でフォント指定しますが、このパッケージではfc-listコマンドで表示されるフォント名を使ってフォント指定をします。日本語もつかえるはずですが、英語で指定するのをお薦めします。
    フォーマットは<フォント名>:(コロン)<サイズ>です。
    例:
    MAIN_FONT_J: VL Gothic:16.0
    MAIN_FONT_S: VL Gothic:15.0
    MAIN_FONT_E: VL Gothic:15.0
    RUBI_FONT: VL Gothic:10.0


    既知の不具合:
    • タスクバーにアイコンが出ない
    • GUIから設定しようとすると落ちる
    • フォント設定がしょぼい(xlfdの利点がコレか)
    • 終了がキーボードからしか出来ない(qキーからのメニューで選択)
    • キーボードなしのN800では(多分)使えない
    その他:
    • 同梱のしょぼいアイコンは勝手製作です
    • スゴイ汚したソースコードはもうちょっと待って

    [Nokia N810] dillo2で日本語入力(やっとできた)


    ようやっとdillo2で日本語入力できました。

    scimはわるくありません。わるいのはja_JPのないN810、および家の冷蔵庫で賞味期限切れ後3週間の完全にK点ぶっちぎりな納豆2パック。
    詳細は後日。

    2009/09/08

    [Nokia N810] dillo2で日本語入力(もうちょっとで出来そう?)

    XOpenIM()が失敗する件に付いてfltk2を疑ってみたり、LC_CTYPEを疑って見たり、はたまたバールのようなものの実在を疑って見たりした結果、バールのようなものはどうやらマクガフィンらしい事が判った。(ところでマクガフィンってなんだ?)
    まあバールの事は放っておいて(ほんとに投げるとあぶないよ)、
    謎のままのXOpenIM()については、こちらのサイト様にあったテストプログラムをmaemo、debian(chroot)およびdebian(Xephyr)
    の各環境にて走らせてみたことで、XMODIFIERSを空にしておくとXOpenIMが成功することまでは判明しました。
    ってそれってつまり、、、scimが悪いってことなのか?

    2009/09/05

    [Nokia N810] 青空文庫を読む (xjp-textをmake編)



    昨今のガジェット界隈では電子ペーパー(ピンクの仮面夫婦じゃないほう)なブックリーダーが流行っているようですね。
    青空文庫http://www.aozora.gr.jp/)も随分と充実して来ている中
    (市場が無いのは悲しいところではあるが)、
    大き目画面が日光下でも読みやすく、バッテリーも良く持つN810なればこそ、そんな用途にも便利なはず。

    なのですが、肝心のビューワが微妙です。


    最後らへん風博士ってちょっとDIOっぽい

    なるほど、FBReader+VLGothic (上図)は大変見目よろしく、いろいろ機能も付いているのですが、
    いかんせん外国製ビューワ。
    • 縦書き表示
    • 青空文庫フォーマットへの対応
    が欠けています。
    その上html形式のファイルで、特定の漢字が表示されるとフリーズするというバグもあります。
    まあここは漢字に弱くてつっかえちゃうんだと考えて(病気なので略)

    そんなわけでlinux向けかつX対応な国産ビューワが無いかGoogle先生に尋ねてみると、
    Xft2対応、しかも青空文庫ブラウズ機能搭載!のxjp-text(http://xjp-text.sourceforge.jp/)てなソフトを教えてくれました。
    すぐさま喜び勇んでmakeしてみたのですが。

    動きません。何も言わずに逝ってしまわれる。

    悩むこと小一時間、なにげなく立ち上げたeasy-debianで動いたのが糸口になり、xjp-textの動作には日本語のXコアフォントが必要な事が判明。
    ここで現れた
    1. Maemo環境にXコアフォントを入れる
    2. xjp-textをXft2オンリーに書き換える
    てな選択肢で何故か2番目を選んでしまったばっかりに、作業が3日がかりになりつつも、ようやく動作したのでした。
    いいんだ!作業過程でXft2なのにフォント指定にXLFD形式を使うとかいう深遠な謎仕様を回避できたからいいんだ!ボールドとか指定できて便利です。ラテンハナモゲラ語で言えば、honeorizon


    起動画面でランダムに詩が一篇表示されるのが粋です。枠?


    青空文庫をブラウズできます。(configureでオプション指定が必要)


    よむとあたまがおかしくなる本(しかし長すぎて理解できないので安全)

    2009/08/27

    [Nokia N810] w3m、async, 256colorにて。

    普段使いはw3m。そこから
    • 画像が沢山のとき → Dillo2
    • javascriptとか必要な時 → tear
    てな感じで外部ブラウザをforkさせているわけなんですが、メインのw3m、
    裏でリンクが開けないのはタブブラウザとしてはかなりのガッカリポイントですよね。
    そこで、
    w3m-0.5.1にこちら(http://homepage3.nifty.com/slokar/w3m/w3m-256.html)様のpatch
    • w3m-0.5.2-cvs-1.1001_256-008.patch
    • w3m-cvs-1.1001-async-4_256-008.patch
    を当ててみました。
    設定はこんな感じ。
    ./configure --enabled-ssl --enable-color256
    (最初--enable-color256を指定せねばならない事に気づかず嵌ったりしました。)

    Dillo2には劣るものの、かなり体感速度が上昇します。
    だが色は切る!(いみないじゃん)
    まあ色を知る年齢(とし)か!みたいな勇次郎さんノリでオプションつけて見たものの、もうこのまま魔法使いになってやる標準の方が可読性高いよな気がしました。慣れの問題でしょうけど。


    w3mはいろんな方がパッケージ作られてるのでバイナリだけ置いて見たり。w3m.gz

    2009/08/25

    [Nokia N810] Quasarパッケージのアップデート

    変更点 :
    Quasarの作者さんから直々にアドバイスを頂いて、音量調節が効くようになりました。
    (ただしmplayerの音量調節を行うものであって、Maemo自体の音量を調節するものではありません。)

    Todo :
    • AdvacedBacklightのソースを見たりしつつ、Gconf経由で音量変えられると良いなと模索中。 (でも現行のままの方がいい人もいるのか)
    • 安定性の向上。ってどうすればいいんじゃ。libqt3まわりなのかなあ。

    その他 :
    QuasarはあのAGAWA大先生作、ZPlayerをベースにしているらしい。
    何気に日本と縁があるわけですね。

    2009/08/22

    [Nokia N810] Dillo2で日本語入力(出来てない)

    追記Ⅱ: 出来ました。

    爆速で有名なDilloの最新版、2.1.1を適当にmakeしてみたのだけれど、日本語が豆腐になる。
    別に失読症になったわけではない。たぶん。
    いろいろググってみればロケール設定の問題らしく
    LANG=ja_JP.UTF-8 dillo "$@"
    などとやって回避。
    すーげーはえー(c)織田裕二 等と喜んでいたのも束の間、日本語が入力出来ないことに気づく。
    別に失語症になったわけではな、、いや、どうかな。。。。

    気をとり直してまたもやググってみたものの、少ない検索結果は成功報告ばかり。
    なんかXOpenIMが失敗しやがっているのですが。
    scimがいかんのかとuimに移行、するのは無理なので(へたれ)scim-bridgeを作ってみた。
    ほら。Quasarで日本語入力したかったし(いいわけ)。
    makeは簡単に出来たものの、インストールに際して、肝心のMaemoCJKの起動機序がさっぱりわからない。
    なにしろ.xinitrcだのが無いMaemoではあるし、init.dあたりにも何も無い。xinit.d?im-switchはいってないよ?
    ということで、苦し紛れに環境変数
    • XIM=scim
    • GTK_IM_MODULE=scim-bridge
    • XMODIFIERS=@im=SCIM
    • QT_IM_MODULE=scim-bridge
    を/etc/osso-af-init/af-defines.shにてexportしてリブート。
    Dilloを起動し、shift+spaceでscim-panel-gtkが、、出た!



    と思ったらEnglish/Europeanが一人ぽつねん、と佇んでいるのみであった。。
    出てこんかいAnthy!!というか誰かボスケテ!

    つづくのかも。

    ・追記Ⅰ
    だれがanthy殺したか。
    ximはロケールを見るらしい。
    strace的には@server=SCIMなんだかんだとやってるのが見える。
    /usr/lib/locale/ja_JP.UTF-8を作ってやる必要があるのか?

    2009/08/21

    Nokia N810をBluetoothヘッドセットとして使う。

    -------ぜんかいまでのあらすじ----
    幼いころから、N810をA2DPのSinkにしてみたかった俺。
    Google先生に尋ねてみれば、しかし、国内では推定お二人程しか挑戦していない、実にニッチなテーマであった。
    足がかりとなったこちらhttp://osdevj.g.hatena.ne.jp/osdevj/comment?date=20080612)のブログ様を発見したのが、去年の冬頃。
    なんでも古いbluetooth-alsa中にa2recvとかいうA2DP再生プログラムがあるらしい。
    というところまでは判ったものの、/dev/dspを使うからそのままでは動かないとか、armだからリトルエンディアンだとか、紆余曲折があって、最近ようやく動作したのだった。
    -----------------------------------

    ....orz
    そこで問題だ!このえぐられた心でどうするか?3択―ひとつだけ選びなさい

    答え①ハンサムのポルナレフは豆腐の角に頭をぶつけて自害する。
    答え②ハンサムのポルナレフは醤油を飲んで自害する。
    答え③①の豆腐と②の醤油で冷奴をつくって食べる。

    冷奴おいしいよね。 と脳内会議で決定されましたので、以下手順。なんてながい前振りだ。
    1. a2recv-esd.tar.gzをダウンロード。
    2. # tar xvzf a2recv-esd.tar.gz
    3. # cd a2recv-esd
    4. #./sdptool add A2SNK  //A2DP再生可能だとクエリに対して答える。
    5. #./a2recv-esd //a2recvを立ち上げる。
    同梱のhciconfigで"./hciconfig hci0 class 0x200404"とかやれば、接続元デバイスから、N810がBluetoothヘッドセットに見えるようになります。
    また、適当にesdを組み込んだだけなので、大概のスタックにおいて、ブツ切れ状態になります。
    対処法としては、a2recvで繋ぎつつ、同梱のl2pingとかを"./l2ping <接続元BTアドレス>"とバックグラウンド実行してやるとまともになったりならなかったり。

    ちなみに2recv-esd.tar.gzの中身はこんな感じになっております。
    a2recv-esd/
    a2recv-esd/a2recv-esd
    a2recv-esd/avrecv (おまけ:AVRCP 受信)
    a2recv-esd/avsnd (おまけ:AVRCP 送信)
    a2recv-esd/hcitool
    a2recv-esd/l2ping
    a2recv-esd/sdptool

    それからダメージソースコードはコチラ。diffとかとれよ自分。



    [Nokia N810] Quasarをつくってみた。



    Zaurus向けのiTunesっぽいMplayerフロントエンド、Quasarをビルドしてみた。
    Zaurus向けとは言ったものの、実際は
    • Linux
    • OSX
    • Windows
    • Pdaxrom(ほとんどzaurusだけど)
    向けにもビルド可能で、今回はLinux用コンフィグを使ってビルドした。
    ザウルス用ソフトは大半QTEで書かれているわけで、N810用にビルドし直すにはQT3を使うように書き直さなければいけないのだけれど、Quasarはそのへん最初からやってあるようなモノなので何事も初心者な自分にも楽勝なのであった。
    ちなみにこのあいだはaBookReaderに挑んで惨敗しました。(sed -e s/QPEApplication/QApplication/gごときでは太刀打ちできません)

    感想:
    • Zaurusで使ってたころにはなかった機能が目白押し。
    • CoverFlowはZaurusだとサクサクしてるが、N810だとちょっとつらいかも。
    • nightlyですが一通り安定している様子。
    • Quasarからの音量調節は効きません(/dev/dspを見ている様子)。 *追記 効くようになりました
    • (全画面で終了した後?)起動しなくなるが、~/.quasar/quasar.conf最下部のhadFrame を0から1に指定し直すことで回復可能。
    • 民主党どうなっちゃうの。
    インストール:
    1.Mplayerが入ってなかったら入れる。
    2.MythTVのgarageから libxinerama1_1.0.1-4.1_armel.deb およびlibqt3-mt_3.3.7-4chinook1_armel.deb をダウンロードしてインストール。
    3. quasar_0.96r169r31-maemo1_armel.debをダウンロードしてインストール。(アップローダーをなんとかせねば) *追記 アップデートしました。
    スクリーンショット:


    2009/04/08

    GarnetVMで外部メモリマウント



    GarnetVMからも外部メモリを利用できるようです。

    しかも実に簡単な手順です。びっくり。
    1. ターミナルを開く。(osso-xtermとか)
    2. #mkdir ~/.gvm/cards
    3. #echo -e "好きなディレクトリ\nRW" > ~/.gvm/cards/0
    なんとこれだけです。
    好きなディレクトリは絶対パスで指定(ex:/media/mmc2)










    とりあえず/home/user/MyDocs/Palmを作り、指定して見ました。

    #mkdir ~/MyDocs/Palm
    #mkdir ~/.gvm/cards
    #echo -e "/home/user/MyDocs/Palm\nRW" > ~/.gvm/cards/0









    Launcherも
    つかえます。

    ネタ元はコチラ
    ITTとACCESSにありがとう。

    2009/04/03

    GarnetVMでRamDisk

    PalmPreではPalmOSが動くようですが、
    OS2008にも皆さん御存じ、ACCESS最後の良心(そんなこたーない)、GarnetVMが存在します。

    特にミニー大先生のHackによって日本語ROMが使えるようになった時などは、

    などと思わず口走ったモノでした。(わかいおさむっぽく)

    そんなGarnetVMですが(今のところ)、PalmPreに実装されるらしい外部メモリからのPalmwareの起動(PalmOSから外部メモリを参照可能?)はおろか、仮想外部メモリ機能も有りません。

    そこでPalmにも幾多存在するRamDiskソフトが試されましたが、有名なアプリケーションは悉くエラーを吐き出し、、GarnetVMを巻き込んで落ちました。

    今回紹介するのは、存在が余りにもニッチ過ぎたとあるPalmware、"WifiGinie"です。







    一時期は、西のInfiniFile東のWifiGenieと呼ばれていたものです。(よばれてません)

    さて、本来、WifiGinieは、
    WindowsやSambaの共有フォルダをPalmの外部メモリとしてマウントするソフトウェア
    なんですが、おまけ(?)機能としてRamDiskをマウントする機能が有ります。これがGarnetVM上でも動くんですね。

    ClieUX50にLinuxをインストールするために(わかさっていいですよね)
    さんざ海外製アプリをダウンロードした経験がモノを言い、ようやく見出したWifiGenieですが、
    イントールはスゲく(スタパ先生リスペクト)面倒だと言えよう(同)。
    まあキリル文字とかに親しみを感じる方なら楽勝です。スタパ先生がロシア人だとかは言ってない。
    1. いずこからか、WiFiGenieEvalV10r21Pkg.rarだとかWiFiGenieEvalV10r21Pkg.zip、もしくはWiFiGenieV10R21EvalPkg.prcを入手。お好きなルートで。
    2. 入手したWiFiGenieV10R21EvalPkg.prcを実機かGarnetVMに直インストール、POSEでもOKなようです。
    3. Filesなどで
    NCSMBS.pdb
    NetDskVFS.prc
    PathMapDB.pdb
    RamDskVFS.prc
    ResourceLib.prc
    SMB CIFS Lib.prc
    SMBBROWSELib.prc
    SMBCOMMLib.prc
    WiFiGenie.prc
    netDskSlot.prc
    ramDskSlot.prc
    --ここまでCreatorID=isfs--
    LicenseMgr4.prc
    LicenseManagerDB.pdb
    を抽出。creatorIDなどでフィルタするとお手軽です。








    これらを、windowsの共有フォルダ等にまとめておき、
    smbMate(おすすめ)やWiFilePROでいっきにGarnetVM本体メモリへダウンロード。


















    ひとまずGarnetVMを終了し、改めて起動。
    標準ランチャー画面にWifiGinieが追加されているはずです。


















    あとは心のおもむくままにRamDiskをマウント。












    「お美事」
    「お美事にござりまする」


    N8xx側にSambaをインストールすれば、外部メモリにも直接アクセスできるようになる、ハズですね。

    小技なんですが、GarnetVMを"/usr/bin/gvm/gvm -T"とTオプション付きで実行すると、実行した間の変更が保存されません。
    度々メモリファイル(~/.gvm/gvm.store)ごとデータのふっ飛ぶGarnetVMを、すこしだけ安定運用できます。