SUZZ Blog

主にアーケード、レトロゲームに関するブログ

TortoiseHg を PPC Mac で動作させる@2012/05/04

2012年05月04日 16時27分12秒 | PC

thg2.3.2

1年経って、MacPortsでインストールできるようになりました。。。が、Mercurial 2.2 , TortoiseHg 2.1.2 という組み合わせでインストールされるため、バージョンミスマッチ(?)で起動しません。 orz

{{{
#!python
** Mercurial version (2.2).  TortoiseHg version (2.1.2)
** Command:
** CWD: /Users/satoshi/thg
** Encoding: UTF-8
** Extensions loaded:
** Python version: 2.7.3 (default, May  3 2012, 08:03:53) [GCC 4.0.1 (Apple Inc. build 5493)]
** Qt-4.7.4 PyQt-4.9.1

This version of TortoiseHg requires Mercurial version 1.9.n to 1.10.n, but found 2.2

}}}

MacPorts でインストールした Mercurial 2.2 とソースリポジトリから clone した TortoiseHg を組み合わせて起動したのが、上のスクリーンショット。
最近は Intel Mac 向けの TortoiseHg バイナリもリリースされているようですので、MacPorts でインストールして利用している人は少ないのでしょうね。


Xperia の Android を Ver.2.1 から Ver.2.3 にアップデート

2012年01月08日 19時37分06秒 | そのた

正月に高校時代の友人と新年会をやって、数年ぶりに顔を合わせた。その時に自分の携帯である Xperia を見せたところ、「お前のことだから、怪しいアプリとか満載なんだろう」と。いや、普通に使っているだけだというと、「らしくないな」と。まあ、確かに俺らしくないかもな・・・と。

Docomo 版の初代 Xperia (SO-01B) は Android 2.3 へのアップデートが見送られ 2.1 止まりという状況であるが、海外版である Xperia X10 は去年の夏に 2.3 へのアップデートが行われていた。当時、海外版ベースのファームを国内版の Xperia で強引に動かす話題を見た記憶がある。 ブームから半年遅れの現時点では、blogなどの情報も古いものが多かったが、斜め読みしたレベルでは ThGo2 というカスタムファームがあり、インストールの敷居も余り高くはないようだ。 ちょうど、2012/1/3 に v13 がリリースされたようなので、これをインストールしてみた。

CIMG0379

 

以下、自分用の備忘録として。 ■ Root 化と xRecovery のインストール

Xperia側で 「設定」→「アプリケーション」→「開発」 から 「USBデバック」 を選択しておく。

PCにFlashToolをインストール。 xda developers: Flashtool version 0.6.5.0: http://forum.xda-developers.com/showthread.php?t=920746 

FlashToolを起動し、Xpreia を USB 接続。「鍵マーク」のボタン押下で root 化 + busybox インストール。 「救急マーク」のボタン押下で xRecovery のインストール。(以前とは違い、双方、ボタン一発でインストール完了。)

image

xRecovery は Xperia 電源投入時に ← キーを押下することで起動する。起動後の操作は、ボリュームキーの上下でカーソル移動、ホームキーが実行、 ← キーでメニューを一階層戻る。この段階で、xRecovery を使用して、データをSDカードにバックアップしておく。

 

■ ファームアップデート

2.1 からのアップデートでは fill wipe が必要であるため xRecovery で wipe しておく。

ThGo2 v13.0: http://forum.xda-developers.com/showthread.php?t=1193001 ThGo2_v13.0.zip を SDカードに格納。xRecovery を起動し、「Install custom zip」→「Choose custom zip from sdcard」→ ThGo2_v13.0.zip を選択。 書き込み終了後は電源断&電池を抜いて数分放置。 ■ ベースバンド更新

Flashtool\firmwares に X10i_3.0.1.G.0.75_only kernel_baseband.ftf を格納し、FlashToolを起動。 「雷マーク」のボタン押下して上記ファームを選択。あとは FlashTool の指示に従う。(ベースバンド ファームの書き込みは初回のみ)

■APN設定

「通話設定」→「携帯電話事業者」→「NTT DOCOMO」を選択 「無線とネットワーク」→「モバイルネットワーク」→「アクセスポイント名」→「mopera U (スマートフォン定額)」を選択 (この設定は契約によって異なる)

 

インストールして数日経つが、通話も含めて今のところ問題なく使用できている。以前の 2.1 より機敏に動作しており、快適になった印象。 まあ、そのぶん電池の持ちは悪くなったかも知れないが・・・。常用している携帯ではお勧めできないが、中古で安く Xperia を入手できた時に遊ぶには良いかもしれない。


基板入手

2011年10月16日 23時29分02秒 | Game

先日、街の方へ行った際に、つい購入してしまったのがコレ。

DSC_0396

エグゼド エグゼス。ずいぶん後になってから、前橋のニチイの階段のところで遊んだ記憶がありますね。
旧カプコン <-> JAMMA変換ハーネスの製作途中なので、まだプレイはできません。(電源、GND、ビデオ周りしかつないでいないため)

 

DSC_0398

ついでに動作確認したのはこちら・・・エスプレイド。
RANK EASY になってますね。 (^^;


基板の生存確認

2011年09月04日 22時51分14秒 | Game

先日友人にコミケ土産を頂いたのですが・・・「おまえ、こういうの好きだろう」的に渡されたのが「転清・アート・ドット・ワークス【アートワーク編】」

よくわかってらっしゃる(笑

 

久しぶりにレトロゲームを動かしてみようと思いたち、基板を何枚か起動して見ました。

最後にプレイしたのは 19XX だったようなので、コレを起動。
CPシステム2のFAN、うるさいなぁ。

その後、

DSC_0319

究極タイガー。
うはっ、2面でゲームオーバー。

 

DSC_0320

ネメシス。
これは、互換基板のKONAMI-GT(ロードファイター2の海外版)をオークションで落札して入手後、ROMを書き換えた為、かなり安くすんだ。

 

DSC_0322 DSC_0321

グラディウス(ROM版)。
オークションなどでは20万円以上の高額で取引されているレア基板です。


夏休みの自由研究は PT2 と Linux で地デジ録画サーバー

2011年08月07日 20時04分42秒 | PC

DSC_0284

俗に言う「鼻毛鯖」・・・今回は「髭剃鯖」だったのですが・・・と PT2 で地デジ録画サーバを作ってみました。

構成は、Express5800/S70 タイプPJ + Ubuntu 10.04 Desktop + キャラクターデバイス版PT1ドライバ + epgrec。以下のページにインストール用のスクリプトがそろっていたので、簡単に導入できてしまいました。

http://zeonic.ath.cx/pt2/index.html

 

試しに BS と地デジ2番組同時録画しながら、録画中の ts ファイルを VLC で再生してみたところ、CPU負荷は2コアとも40~50%前後だったので、全然大丈夫ですね。・・・こんなに安いのにCore i ベースのCPUでマルチコア、メモリも1GB搭載ですから、普通に使う分には十分ですね。

ただ、サーバーとして使用する前提の人が多いからか、「電源入れっぱなし」で運用する例が多いようです。私の場合は、ほぼ、録画専用マシンなので、録画時にレジュームして、録画が終わったらサスペンドする動作が理想です。

試しに Ubuntu のメニューからサスペンドさせて見ると、うまくサスペンドできずにログイン画面に戻ってしまいました。

どうやら、pt1_drv がサスペンド移行を邪魔しているようでしたので、http://kimamahitori.blog.shinobi.jp/Entry/232/ この辺を参考に /etc/pm/config.d/00sleep_module に pt1_drv を指定したところ、サスペンド・レジュームできるようになりました。

おそらく、パワーマネジメントにきちんと対応できていない PT1 ドライバのモジュールを、サスペンド・レジュームのタイミングで自動的にアンロード&ロードしてくれるのでしょう。

 

Express5800-S70:~$ cat /etc/pm/config.d/00sleep_module
SUSPEND_MODULES="pt1_drv"

 

また、2ch の「【視聴・録画】Linuxでテレビ総合5【デジタル/アナログ】」にて、


153 :login:Penguin:2011/07/25(月) 07:36:20.98 ID:Ev0FdHMH
ようやく地デジ化したので参戦。よろしく
>>61 で出てる rmmod で oops 吐く問題は、pt1_pci_cleanup の中の
class_destroy と pci_unregister_driver の順番が逆なせいじゃないかな。
unregister が先だよね?

 

162 :login:Penguin:2011/07/26(火) 09:25:59.79 ID:VDsn8s4Y
>>153
BINGO!!
順番入れ替えたらrmmodしてもoops吐かなくなった
サスペンドの時に悪さするから困ってたんだけど、これで一歩前進しそう
chardev版なんだかんだで生き延びそうだな

という話があったので、以下の変更を加えてドライバをビルド。

 

Express5800-S70:~/pt1/LATEST$ hg diff
diff -r 7662d0ecd74b driver/pt1_pci.c
--- a/driver/pt1_pci.c    Fri Nov 19 11:19:25 2010 +0900
+++ b/driver/pt1_pci.c    Sat Aug 06 03:32:46 2011 +0900
@@ -1004,8 +1004,8 @@
 
static void __exit pt1_pci_cleanup(void)
{
+    pci_unregister_driver(&pt1_driver);
     class_destroy(pt1video_class);
-    pci_unregister_driver(&pt1_driver);
}
 
module_init(pt1_pci_init);

 

最新情報が2chで拾えるあたりが、いかにもアングラっぽい感じですが・・・

あとは、自動起動と自動終了をなんとかしないといけないですね。方針としては「atq で時刻指定ジョブを参照して判断」、もしくは、「epgrecの録画予約データベースを参照して判断」でしょうかね。

 

 


親父のPC

2011年05月22日 22時31分09秒 | PC

電源入れても起動の途中で止まってしまうのだが・・・また動くようになった、と、言っていた。

寿命だろうから、余っているHDDと交換しようとPCを見たところ・・・

 

DSC_0155 DSC_0156

HDDが針金で宙ぶらりんになっていた。。。

本人曰く、「HDDを縦にしたら中のモーターが動いたので、縦にするべく針金でつるした」とのこと。

 

DSC_0157

1999年か・・・10年も前のHDDがよく動いていたものだ。

なかなか面白かったのですが、そのうち壊れるのは目に見えているので、部屋に転がっていた別の HDD に交換しました。

交換した HDD も私が酷使していたものなので、すぐに壊れると思いますが・・・。


Windows 上で TortoiseHg 2.0.4 の差分表示&マージに Meld を使用する場合の設定例

2011年05月08日 15時07分20秒 | PC

うちの環境では Python があちこちにインストールされている都合から、環境変数を設定してから起動するようになっています。

また、マージ対象のファイルを中央に表示して編集できるように、順番を入れ替えてみました。

premerge = keep は、外部マージツールの起動前に Mercurial によるマージを行い、その結果を編集するための設定です。変更が衝突していない部分は自動的にマージされ、変更が衝突した部分はマーキングされた状態になります。

 diff 用の設定も記載しましたので、Mac の方も参考にしてください。


meld.bat

set PYTHONHOME=C:\Python26
set PYTHONPATH=
C:\Python26\python C:\PathToMeld\bin\meld %*

 

mercurial.ini

[tortoisehg]
vdiff = meld

[ui]
merge = meld

[merge-tools]
meld.executable = C:\PathToBatchFile\meld.bat
meld.gui = True
meld.premerge = Keep
meld.args = -L Local
$local -L Output $output -L Other $other
meld.diffargs = -a -L '$plabel1' $parent -L '$clabel' $child
meld.diff3args = -a -L '$plabel1' $parent1 -L '$clabel' $child -L '$plabel2' $parent2
meld.dirdiff = True


蒼穹紅蓮隊のサントラ

2011年05月08日 00時42分23秒 | Game

蒼穹紅蓮隊

1996 蒼穹紅蓮隊

 

頼んだつもりでいたのですが、アマゾンのカートに突っ込んだだけの状態になっていて、今頃入手しました。今年の2月末に出ていたんですね。

レイディアント シルバーガンは何年か前に(・・・といっても2004年なので、もう7年前か)再販されたときに入手していたのですが、紅蓮隊はオークションでも高値でまったく手が出ない一品になっていたので、再販はありがたいですね。

あとは長年切望している斑鳩のサントラも出ないかなぁ。

崎元さんといえば、メガドライブ版のガントレットもいいんですよね。

 

CDの整理がてら、友人から譲り受けた懐かしい CD を 320K の MP3 でエンコードしなおしました。

以下、オッサン向けラインナップです。

 

バトルバクレイド

1999 バトルバクレイド … これは最近・・・といっても10年以上経ったのか・・・

 

MetalBlack

1991 メタルブラック

 

サイバリオン

1988 サイバリオン

 

Sorcerian

1987 ソーサリアン … このころは、まだ、レコードとカセットテープが出ていた記憶が・・・。

 

OutRun

1986 アウトラン … これは 1992 年にベスト板として出た CD ですね。

 

そして、部屋がちっとも片付かない。。。


MacPorts で meld をインストール

2011年05月06日 20時57分08秒 | PC

meld_mac

 

$ sudo port install meld

で、インストールできると思いきや、一筋縄では行かず。。。

 

  • policykit でビルドエラー
    不具合報告を参考に Portfile を修正することで回避。
    https://trac.macports.org/ticket/29279

    /opt/local/var/macports/sources/rsync.macports.org/release/ports/security/policykit/Portfile
    (先頭の数字は行番号)

    27 post-patch      {
    28                     if {${os.major}
    29                         reinplace "s|security/pam|pam/pam|" ${worksrcpath}/configure \
    30                             ${worksrcpath}/src/polkitagent/polkitagenthelper-pam.c \
    31                             ${worksrcpath}/src/programs/pkexec.c
    32
    33                         reinplace "s|fdatasync|fsync|" ${worksrcpath}/src/polkitagent/polkitagenthelperprivate.c
    34                     }
    35                 }

  • atlas で configure エラー
    INSTALL.TXT によると、

    ATLAS config tries to detect if CPU throttling is enabled, but it may not
    always detect it, and sometimes may detect it after you have disabled it.
    In the latter case, to force the configure to continue regardless of the
    results of the CPU throttling probe, pass this flag to configure:
       -Si cputhrchk 0

    とのことなので、Portfile を編集して configure に引数を追加。

    /opt/local/var/macports/sources/rsync.macports.org/release/ports/math/atlas/Portfile
    (先頭の数字は行番号)

    108 if {${build_arch} == "ppc" || ${build_arch} == "ppc64"} {
    109         configure.args-append   -t 0
    -Si cputhrchk 0
    110 }

  • meld 起動時にエラー
    $ meld &
    [1] 44648
    $ Xlib:  extension "RANDR" missing on display "/tmp/launch-Gl7Jle/:0".
    Dynamic session lookup supported but failed: launchd did not provide a socket path, verify that org.freedesktop.dbus-session.plist is loaded!
    Traceback (most recent call last):
      File "/opt/local/bin/meld", line 123, in
        main()
      File "/opt/local/bin/meld", line 115, in main
        app = meld.meldapp.MeldApp()
      File "/opt/local/lib/meld/meld/meldapp.py", line 136, in __init__
        self.prefs = preferences.MeldPreferences()
      File "/opt/local/lib/meld/meld/preferences.py", line 289, in __init__
        super(MeldPreferences, self).__init__("/apps/meld", self.defaults)
      File "/opt/local/lib/meld/meld/util/prefs.py", line 92, in __init__
        self._gconf.add_dir(rootkey, gconf.CLIENT_PRELOAD_NONE)
    glib.GError: 設定サーバ (gconfd) に接続できませんでした: いくつか考えられる原因として、ORBit の TCP/IP ネットワークを有効にしていない、あるいはお使いのシステムで古い NFS のロックがクラッシュを引き起こしたことが考えられます。これに関連する情報については
    http://projects.gnome.org/gconf/ を参照して下さい: (詳細 -  1: セッションへの接続に失敗しました: Not enough memory)
    [1]+  Exit 1                  meld

    dbus 関連のエラーのようで、以下のURL を参考に呪文を唱えたところ、スーパーユーザーでは動作。
    http://kzar.co.uk/blog/view/meld-darwinport-problem

      $ sudo launchctl load -w /Library/LaunchDaemons/org.freedesktop.dbus-system.plist
      $ sudo launchctl load -w /Library/LaunchAgents/org.freedesktop.dbus-session.plist
      $ sudo meld &

    以下のスレッドにあった呪文を唱えたところ、一般ユーザーでも動作。
    http://lists.macosforge.org/pipermail/macports-users/2011-January/023218.html
    http://lists.macosforge.org/pipermail/macports-users/2011-January/023223.html

    $ launchctl load -w /Library/LaunchAgents/org.freedesktop.dbus-session.plist
    $ meld &

正直、理由はよくわからない・・・

dbus のインストール時に本件に関する情報が出力されていたようなのだが、 port に -d スイッチをつけて、デバッグメッセージを出力していたため、気がつかなかったようだ。

とりあえず、動くようになったので満足。


マージツール

2011年05月05日 03時12分19秒 | PC

TortoiseHg が動作したので、Mac のマージツールを探してみました。http://mercurial.selenic.com/wiki/MergeProgram に代表的なマージツールが挙がっていましたので、いくつか試してみましたが・・・いずれも日本語の取り扱いが微妙です。

今のところ、meld が有力候補となり、MacPortsでインストールすべくビルド中。

 

meld は Windows 上でも動作します。http://live.gnome.org/Meld/Windows にあるように、Python と PyGTK 関連をインストールすれば OK。

meld_windows

いろいろ調べているうちに、 「CTRL キーを押すと、貼り付け位置を選択できる」ことが判明。

これ便利だなぁ。