カテゴリー: Comp

  • Let'sNote CF-R4HでLinux(4)

    Panasonic Hotkey driverをインスコ。
    カーネルモジュールとしてビルドするため Driver package の pcc-acpi の方を使用する。最初はとくに準備もせずに make しようとしたら /lib/modules/…/build がないって怒られたので、


    # aptitude install linux-kbuild
    # aptitude install linux-headers-2.6.18-4-686

    で必要なビルド環境を用意して make , make install 。
    modprobe pcc_acpi すると同サイトの hotkey handlers を入れるまでもなく Fn+F1 とかで液晶の明るさ(バックライトの明るさか)を操作できたり。pcc-acpi を入れる前からすでに Panasonic用らしき /etc/acpi/panabright.sh とかあったし acpi-supportあたりのパッケージが適当に対応していたのだろうか。
    あとはとくに問題はないので /etc/default/acpid に pcc_acpi を追加。

  • Let'sNote CF-R4HでLinux(3)

    無線LAN編。前回はDebian Baseをインストールしたところまで。
    今回はデバイスドライバやらツールやらでいろいろ面倒なんだろうなと考えていたら、Debianセットアップ時の「ラップトップ」指定で必要なものとか全部入ってた…。んで、足りない分だけをチョロチョロと設定。

    1. ipw2200のファームウェアをダウンロードして、/usr/lib/hotplug/firmware/ に *.fw をコピーして、rmmod ipw2200 → modprobe ipw2200 してカーネルモジュールをリロード。再起動してもOK。
    2. あとはインストール時にセットアップされた「デスクトップ環境」から設定できる。デフォルトのNautilusの右上にある NetworkManagerアプレットから無線LAN接続のセットアップができるので、そこで自環境に合わせて必要な情報を設定するだけ。
      自宅環境だとNintendoDSの絡みもあるので暗号方式はWEPしか選択しようがないのだけど。

    手軽すぎて拍子抜け。GUI使わなかったらiwconfigあたりで設定すればよいのかな。

  • Let'sNote CF-R4HでLinux(2)

    Debian GNU/Linux 4.0 etch の netinst CD でブート。
    Windowsとのデュアルブートのためパーティション設定だけは手動で進めてあとはデフォルト値におまかせ。ソフトウェア選択では、なにかサーバを動かすわけでないし「デスクトップ環境」、「ラップトップ」、「標準」の 3つを選んであとはひたすらインストール…これは楽ちん。
    ノートラブルでインストールから Xの起動まで出来ちゃうし、最近のLinux環境もずいぶんとよくなったものだ…。

    TODO:

    1. 無線LAN
    2. 蓋閉じでのサスペンドやハイバネーション
    3. Panasonicホットキードライバ

    デスクトップ→設定→電源管理でハイバネーションの設定したら、何の問題もなく動作。サスペンドは失敗したから調べないと。

  • Let'sNote CF-R4HでLinux(1)

    持ち運び可能なLinuxPCがあるといいよねってことで、ここはひとつノートPCへインストールしようと手順についていろいろと記録。メーカーのノンサポートOSなのでいろいろトラブルがあってもおかしくないし、備忘録として残さないと。

    1. CF-R4起動画面でF2を押してBIOS設定に入り、USBデバイスから起動できるよう、ブートデバイスの優先度を変更する。
    2. GParted Live CDから起動し、Linux+swapに11GB割り当てるためにWindowsパーティションを縮小。HDD後ろの約3GBはリカバリ領域なので、First Sectorを覚えておいて潰さないようにする。

    というわけで、今日はここまで。
    次回はDebian GNU/Linux 4.0(etch)のnetinst CDを使ってBaseを入れるところまで。

  • Bluetoothオーディオレシーバ使ってみた

    先日購入キャンペーンで当選したBluetoothのオーディオレシーバのブツがようやく到着したので早速使ってみる。
    無線なのでケーブルが絡まなくてイイし、こいつは便利だ。
    せっかくだからPCでも使ってみるぜ!とUSBのBluetoothアダプタを買ってきて、試しにゲームで使ってみたら画面の変化から音の再生まで0.1秒くらい遅れるので、違和感が_| ̄|○
    音楽再生くらいにしか使いようがないかもしれず。

  • TextBoxコントロールのスクロールを操作する

    C#(.NET (Compact) Framework)のTextBoxコントロールは複数行のテキストを扱えるがスクロールを操作するメソッドが見当たらない。IRCのチャット表示領域で、末尾に新着テキストを追加していってもスクロールバーはずっと最上段にいて新着を表示できない、Selectメソッドでカーソル動かしてもスクロールバーは動かない、さて困った…ってところでググっていたのだけど、C#からWin32 APIを呼べるのくわーと知ったので(←C#は初めて使用)、直接エディットコントロールを操作することに。
    まずは、エディットコントロールを操作するにはウィンドウメッセージを送りつけなくてはならないので SendMessage APIを呼べるようにクラス内で宣言する。

    [DllImport("coredll.dll")]
    extern static int SendMessage(IntPtr handle,
    uint msg, uint wparam,uint lparam);

    Windows Mobile 5.0がターゲットなのでcoredll.dllだけど、通常のWindowsなら kernel32.dll で。
    すると、SendMessageが使えるようになるので、エディットコントロールにまつわるウィンドウメッセージ(EM系)を使ってスクロールさせてしまえばよい。
    IRCの新着テキストを末尾に追加してそこまでスクロールできればよいので、

    ChatTextBox.Select(ChatTextBox.Text.Length, 0);

    末尾にカーソルを移動させて、

    SendMessage(ChatTextBox.Handle, 0x00B7, 0, 0);

    EM_SCROLLCARET(0x00b7)メッセージでキャレット位置までスクロールさせる。( ゜Д゜)ウマー

  • リンクエラー __GSHandlerCheck

    VS2005SP1にてWindows Mobile(WindowsCE)サンプルをビルドすると __GSHandlerCheck がないとリンクエラーになるので、/GS- オプションを付けて(C/C++のコード生成欄)バッファセキュリティチェックをオフにしないといけない。
    という覚え書き。

  • 新年早々W-ZERO3の開発環境を整備してみる

    MS系開発環境による組み込みソフトウェア開発経験はゼロのため(大抵gccかCodeWarriorだったし)まずは何をすればいいのかをチェキ。「W-ZERO3 開発環境」でぐぐるとeMbedded VC++4.0を使うようなページも見つかるのだけど、ウィルコムファンの連載記事第一回には、VS2005とWM5.0SDKとLocalizedエミュレータの3つがあればいいとあるので、こっちを頼りにする。
    MSDNサブスクライバダウンロードからWindows Mobile 5.0 Developer Resource KitというVS2005以外のWM5.0開発ツール一式が詰まっているファイルをダウンロードしてインスコ。新規プロジェクトで用意されるテンプレコードが実行できたのでよし。
    WindowsVistaなのでActiveSyncはインスコしてなす。

  • Vistaでストラテジックコマンダーを使う

    ストラテジックコマンダーを Vista で使おうとセットアップすると、Virtual Keyboardは認識するけど Virtual Mouse の認識が確実に行われないので、デバイスドライバの削除、再インストールを何度も繰り返しして、「運」を使って Virtual Mouse が出てくるまで頑張るしかない_| ̄|○
    って、海外のサイトで書かれてた。デバイス認識のタイミングの問題だろう。
    再起動したら認識するまで繰り返さなきゃいけないのがものすごく面倒だ…。