続・僕のカーコンピュータ
車載コンピュータ計画を開始してから、ずいぶん日が経ってしまった。現状では車載と言っても、単なる Windows PC なのでエンジンを切るたびにシャットダウン処理が必要だ。Windows である限りシャットダウン処理からは逃れられない。結局、車に乗せて使ったのは3回ぐらいしかなかった。
そこで、かねてから思案していた Linux 化プロジェクトを発動させた。
Linux であれば、リードオンリーでマウントしてやることで、いつでも電源を切れる仕様にできる。また、ジャーナリングファイルシステムを用いて、「切ってもあまり問題が無い」といった仕様にもできる。
ところでログインはどうするの?
心配ご無用。起動するといきなりプレイヤが起動するようにもできる。
こんなページを見つけた。
Linux CD-ROM ゲームシステム
ここでは CD-ROM ブートからゲームを起動させようということが書いてある。
今回はこのページを参考にしていきなりプレイヤが立ち上がる設定をしてみた。
ところで車載に適したプレイヤは?
プレイヤを探すのに苦労した。英語版でもいいからなんかないかと探してみたが、見つからなかった。http://sourceforge.net/ をみると同じ事を考えている人はいるようだが成果物がない。面倒なので普通のプレイヤを使ってみることにした。Linux 上のプレイヤで有名なものは xmms だ。Vine を入れると入っている。しかしこれは GUI が WinAmp 互換で skin に自由度が無い。できれば曲名を大きく表示したい。そこで freeamp を試してみた。これの skin は WinAmp や xmms のような、ウィンドウサイズやボタンの位置などが固定のタイプではなく、自由に定義できる。ウィンドウの形が矩形でなくてもよいのだ。
FreeAmp は Windows 版もある。skin の編集は Windows 上で行った。Linux は使い慣れてないので作業がしづらい(^^; とりあえず、タイトルだけでかくしたものを作成して、動作させてみた。日本語パッチを当てなくても、フォントの指定を「MS Pゴシック」にすると日本語が表示された。ただ、2バイト目に'\'がくる文字(表とか)があるとそこで切れてしまう。まあ、ありがちなバグだ。これは Linux 上では EUC なので問題ないかもしれない。
で、rpm 形式のをゲットしてインストールしてみた。そして FreeAmp を起動し、作ったスキンを指定してみる。しかし、文字が化ける。日本語が化けるだけでなく、アルファベットのところも化けている。いろいろなフォントを指定してみたが、どうにもならなかった。
しょうがないので xmms に戻る。一応、WinAmp と同様、プレイヤ部分はダブルサイズにできる。また、プレイリストに関してもフォントの指定が可能なので、大きなサイズで表示できる。
ボクの車のモニタは解像度が悪く、この縮小したイメージ程度でしか見えない。
さて、OS 部分の設定について。基本的には
Linux CD-ROM ゲームシステム
に書いてある通りに設定していけばよい。もちろん、起動するものは xmms なので、ゲームじゃなくてそれを起動させるようにしなければならない 。SDLはいらない。
リードオンリーでマウントできるようにするためにはかなり面倒だ。今回はシングルユーザモードで起動する設定だけにとどめた。しかしひとつ注意点がある。単に xmms を起動するだけではなぜか表示が変になって、さらに入力を受け付けなくなる。これは起動スクリプト (/etc/rc.d/rc1.d/S99xmms) に
LANGUAGE=ja; export LANGUAGE
LC_ALL=ja_JP.eucJP; export LC_ALL
LANG=ja_JP.eucJP; export LANG
を追加したら起動するようになった。
今後
今はまだ、シャットダウンの操作が必要なので、Windows に比べて起動が早いことぐらいしかメリットがない。
いきなり切っても大丈夫なようにするにはリードオンリーでマウントすることが一番なのだが、いろいろ面倒そうだ。今後、ジャーナリングファイルシステム(Reiser FS)を利用してみようと思う。カーネルのビルドも面倒なので Kondara を入れることになるかな?
できればプレイヤソフトも作ってみたいが、非常に面倒そうなのでたぶんやりません。
webmaster@rukihena.com