Archives

December 2006 の記事

会社で PS3 Linux を LAN につないでどこまで使えるか試してみます。
ただ自分はもともと UNIX あがりで、Windows でも普段から UNIX 系エディタ(Vim)
やコマンドシェルを使っているのであまり一般的ではないかもしれません。

●一般

・ネット系
 Xbox360 だと社内の LAN につないでも Live にアクセスできませんでしたが、
 PS3 では普通に使えています。環境依存だとは思いますが、本体のブラウザも
 Linux からのアクセスも一般の PC と全く同じように使うことができました。

・ブラウザ、共有ツール
 Fedora Core 5 を install すると Firefox が入るので、ブラウザベースの
 グループウエアやツールはあたりまえだけど問題無しです。
 社内の Wiki とか mantis とか、普段と変わらず PS3 から書き込みです。

・excel
 社内のさまざまな書類等は excel でやり取りされることがあります。
 Fedora Core5 に入っていた Spreadsheet で開けました。
 でも最初に起動するまで結構またされます。
 全体的にアプリケーションのロードが遅いようです。

・エディタ
 とりあえず vim/gvim は普段 Windows でも使っているのでそのまんまです。
 svn でチェックアウトしてコード編集してなどなど、テキスト系の作業は
 それほど重くもなく扱えます。漢字コードの扱いさえ注意すれば日本語も大丈夫。

・ファイル共有
 Windows の共有サーバー(Samba)にアクセスできました。explorer のように
 デスクトップから区別無く使えています。


多数ウィンドウを開くと、他のアプリ呼び出しや切り替えで結構重いですが
さまざまなデスクトップアプリケーションが最初からそろっていて
意外に十分な感じです。


●市販アプリ

・Maya8
 市販アプリの Linux 版が動くかどうか、だめもとで探してみました。
 Maya8 は Linux 用も rpm で用意されているのですが、やっぱり intel 系のみで
 PPC 版はありませんでした。


●その他カスタマイズとか

・メッセンジャー
 仕事と関係ないけど個人環境のセットアップということで。最初から入ってる
 gaim 使って、PS3 から MSN Messenger につないでます。


さすがに無茶してるのでアプリケーションを複数開くと切り替えが重いのだけど、
メール書いたりドキュメント作ったり資料を見たりコードを書いたりと、
普段仕事でやってることが PS3 でも割と何とかなってしまうのが不思議な感じです。
デスクトップ系アプリを複数起動すると重いですが。


現在 PC 用のモニタに VGA でつないで 720p で使用しています。
(つなぐまでのあれこれ http://ch09144.kitaguni.tv/e326105.html)
(画面写真 http://ch09144.kitaguni.tv/e326652.html)
でも、なんか解像度の割りに画面が狭いなあと思っていました。
ウィンドウを立ち上げて

 デスクトップ → 設定 → 画面の解像度

をみるとなんと「1124x644」になっています。

もしかしたら TV に合わせてオーバースキャンを考慮して
有効画素数を減らしているのかもしれません。

ps3videomode コマンドのヘルプを良く見ると full screen mode なるものがあります。

X を落としてから試してみました。

 $ ps3videomode -f -v 3

この状態で startx すると、以前よりずっと広い画面になりました。
解像度を調べると 1280x720 で、今度はきちんと 720p です。
面積で 1.27倍、体感ではかなり広さの差を感じます。

起動時から fullscreen 指定するには /etc/kboot.conf を書き換える必要が
あります。

前回の記事(PS3 Linux で最初に行う設定 http://ch09144.kitaguni.tv/e327238.html)
では次のように数値指定しました。

linux="/boot/vmlinux-2.6.16 initrd=/boot/initrd.img video=ps3fb:mode:3"

1=480i
2=480p
3=720p
4=1080i
5=1080p

ps3videomode のヘルプによると、-f 指定だけでなくモードの数値に +128
しても fullscreen 指定になるようです。
mode 3 + 128 = 131 ということで、モード番号を 131 に書き換えます。

linux="/boot/vmlinux-2.6.16 initrd=/boot/initrd.img video=ps3fb:mode:131"

これで起動時から 720p の fullscreen 画面になりました。


PS3 をクライアントとしても使えて、
サーバーとしてもアクセスできるようになりました。
次は PS3 ならではの使い方として Cell の開発環境を install してみます。

インストール手順同様、こちらのページを参考にさせていただきました
http://cell.fixstars.com/ps3linux/index.php


従来のゲーム機は単なるターゲットとみなしてクロス開発するのが普通でしたが、
PS3 は HDD 搭載で Linux の動く PC として使えるため、自分自身でアプリ
開発を行うことができます。


(1) SPU 用コンパイラ

せっかくなので出たばかりの新しいバージョン CellSDK 2.0 を入れてみました。

http://www.bsc.es/plantillaH.php?cat_id=252

ここから PowerPC で動く SPU 向けの各種ツールをダウンロードします。
表のうち PowerPC の方の SPU と書かれている一式です。

●3.3-72
GNU Binutils
GNU GCC Compiler
GNU GCC C++ Compiler
GNU GDB
GNU newlib C library
GNU Toolchain debuginfo

ダウンロードした *.rpm を PS3 Linux に転送してインストールします。
パッケージのインストールなので、ファイルはどこにおいても構いません。

# rpm -i spu-binutils-3.3-72.ppc.rpm
# rpm -i spu-gcc-3.3-72.ppc.rpm
# rpm -i spu-gcc-c++-3.3-72.ppc.rpm
# rpm -i spu-gdb-3.3-72.ppc.rpm
# rpm -i spu-newlib-3.3-72.ppc.rpm
# rpm -i spu-toolchain-debuginfo-3.3-72.ppc.rpm

インストールは上記の順番で行います。



(2) SPU を使うためのライブラリ

PS3 に Linux を入れるまでの手順
http://ch09144.kitaguni.tv/e327222.html
で作った ADDON CD の Q:\spu の中にある次のファイルを PS3 Linux に
転送します。

libspe2-2.0.1-be0647.3.20061130.1.ps3pf.ppc.rpm
libspe2-2.0.1-be0647.3.20061130.1.ps3pf.ppc64.rpm
libspe2-devel-2.0.1-be0647.3.20061130.1.ps3pf.ppc.rpm
libspe2-devel-2.0.1-be0647.3.20061130.1.ps3pf.ppc64.rpm
elfspe2-2.0.1-be0647.3.20061130.1.ps3pf.ppc.rpm

これらも順番に rpm -i で install します。



(3) Hello World

http://cell.fixstars.com/ps3linux/index.php/PS3%E3%81%A7Hello%2C_World%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0
こちらから Hw-samples-all.tar.gz をダウンロードします。

PS3 Linux に転送してアーカイブを展開します。下記の操作は home に転送したと
仮定しています。

 $ cd
 $ mkdir src
 $ cd src
 $ tar -zxvf ../Hw-samples-all.tar.gz
 $ cd hw-samples-all
 $ make

libspe1 を install していないのでエラーが出ますが無視します。

 $ cd spe
 $ ./spe-main
[SPE] Hello, World!

SPEでコンパイルしたプログラムが動きました。



(4) SPE 用の C/C++ 言語拡張について

SPU_language_extensions_v21_j.pdf

こちらからダウンロードできます。
http://cell.scei.co.jp/

これをみると vector 型が拡張されているのがわかります。
例えば float 4 要素の 128bit 変数は

vector float v1;

のように宣言できます。
残念ながら、HLSL のように自由自在に各ベクトル要素にアクセスできるわけでは
無いようです。(例えば v1.x 等は使えない)

vector 系の演算には組み込みの intrinsics 命令を使うようです。
あとでもう少し詳しくしらべてみます。


Playstation3 に Linux が入ったので、お手軽なLAN用サーバーとして使えます。
常時運用するにはちょっと発熱が心配なのが難点だけど。
ちなみにファンの音は意外にも静かです。

なお、ここでの設定はインターネットのアクセスには間に必ずルータが存在しており、
外部向けにはサーバーリソースは公開しないものと考えています。

● PS3にLinuxを入れるまでの手順
● PS3 Linux で最初に行う設定
● PS3 Linux を使える環境にしてみる
の続きです。20061208 版 ADDON CD で Fedora core5 をフルインストールした状態を
想定しています。


(1) ホスト名

PC名(hostname) がきちんと設定されていなかったので再設定しました。
確認は、コマンドライン上で hostname を実行します。

 $ hostname

以後の設定は X (Gnome) 上です。

 デスクトップ → 管理 → ネットワーク → DNS → ホスト名

再起動(reboot)で有効になります。



(2) サービスを起動してみる

 デスクトップ → 管理 → サーバ設定 → サービス

最初に root のパスワードを聞かれます。
現在のランレベルが3になっているので、メニューの「ランレベルの編集」
から「ランレベル3」を選択。

左下の一覧から起動するサービスにチェックを入れます。

 httpd
 mysqld
 smb

の3つにチェックを入れて [保存] しました。
その場で個別に起動するには、選択してから [開始] を押します。

それぞれ選択して [開始] を押して、サービスを起動しておきます。



(3) ブラウザで開いてみる

LAN 上の他の PC からブラウザで

 http://<設定したPS3のホスト名>/

を開いてみます。
例えばホスト名を handleps3 に設定した場合は URL は

 http://handleps3/

になります。
httpd が起動していれば「Fedora Core Test Page」が見えます。
これで php や MySQL を使った Wiki 等のツールを動かすことができるように
なりました。



(4) Samba の設定

この Samba の設定でファイルサーバーとして使えるようになります。

 デスクトップ → 管理 → サーバ設定 → Samba

を開きます。メニューから

 プレファレンス → Sambaのユーザー → ユーザーの追加

・UNIXユーザー名で自分のアカウントを選択
・Windowsユーザー名に任意のユーザー名を登録
・Sambaのパスワードを登録

これで LAN 上の他の Windows PC から、PS3 Linux にアクセスして自分の
ホームディレクトリを開くことができます。

例えば Windows PC の explorer 上から

 \\<PS3ホスト名>

と入力します。(例えば \\handleps3 など)
\\IPアドレス でも構いません。
自分のユーザーのホームディレクトリが見えていれば成功です。
これでファイルのやりとりは Explorer で簡単にできるようになりました。



(5) PuTTY でリモートでコマンドライン作業を行う

今までは直接 PS3 Linux のコンソールから作業していましたが、
環境によってはリモートでコマンド操作したほうが楽な場合があります。
上記のサーバーなど各種設定も、実際には X の Window 上でやらずに
コマンドラインから設定することも可能です。

TV の解像度が小さかったり、マウスやキーボードの数が足りずに他の PC と共有
していたりする場合はこちらの方が使いやすいかもしれません。

Windows PC 側に PuTTY をインストールします。
http://yebisuya.dip.jp/Software/PuTTY/
こちらの日本語版を使わせてもらいました。


PuTTY を起動し、ホスト名に PS3 Linux に設定したホスト名前か IP アドレスを
入力します。プロトコルは SSH を選択します。

Security Alert ダイアログが表示されるので Y (はい) を選択します。

login as: プロンプトが表示されるので、PS3 Linux のユーザーでログインできます。

日本語をきちんと表示させるためには、接続する前に PuTTY の左側にある設定から

 ウィンドウ→変換

を選択し、受信データの文字セットを「UTF-8(CJK)」にしておきます。



(6) 自分のユーザーの HOME に html を置けるようにする

httpd.conf を書き換えます。

 # vi /etc/httpd/conf/httpd.conf

httod.conf の中の「UserDir disable」の先頭に # をつけます。(コメントアウト)
その下にある「#UserDir public_html」の先頭の # を取ります。

編集後
   #UserDir disable
   UserDir public_html

書き換えたら httpd に設定を読み込ませます。

 # /etc/init.d/httpd reload

これで自分のユーザーのディレクトリに public_html フォルダを作って、
その中に html ファイルを置けるようになります。

例えばユーザー名が wheel なら /home/wheel/public_html です。
ここに index.html を作っておくと

 http://handleps3/~wheel

のように指定して開くことができるようになります。
(ホスト名が handleps3 の場合です)



(7) Wiki を設置してみる

DokuWiki を install してみます。
http://wiki.splitbrain.org/wiki%3ADokuWiki

今回は WindowsPC 上で作業しています。
まず
http://www.splitbrain.org/projects/dokuwiki
ここから
dokuwiki-2006-11-06.tgz
をダウンロードします。

Explorer で PS3 Linux のフォルダを開いて、ダウンロードしたファイルを
自分のホームディレクトリにコピーします。

PuTTY で PS3 Linux にログインします。

自分のホームディレクトリに public_html フォルダを作って、
dokuwiki を展開します。

 $ cd
 $ mkdir public_html
 $ cd public_html
 $ tar -zxvf ../dokuwiki-2006-11-06.tgz

cd [Enter] で自分の Home ディレクトリに移動、[Tab] キーでファイル名補完
ができることを覚えておくと便利です。

展開してできたディレクトリ名をわかりやすいものに変えます。

 $ mv dokuwiki-2006-11-06 wiki

Windows PC のブラウザで、次のように指定してインストーラを起動します。

 http://handleps3/~wheel/wiki/install.php

インストーラは日本語に対応しているので、右上のプルダウンメニューで ja を
選択してください。

最初はパーミッションのエラーでいっぱい怒られるので、メッセージに従って
記のようにパーミッションを1つ1つ設定していきます。
chmod 777 は誰でも読み書きできるように設定することを意味しています。

 $ cd
 $ cd public_html/wiki
 $ chmod 777 conf data
 $ chmod 777 data/pages
 $ chmod 777 data/attic
 $ chmod 777 data/media
 $ chmod 777 data/meta
 $ chmod 777 data/cache
 $ chmod 777 data/locks

インストーラの [再読込] で確認してエラーが無くなれば次に進みます。
必要な項目を入力したら install.php を削除するよう促されるので、

 /home/wheel/public_html/install.php を削除しておきます。

 $ rm install.php

これで完了です。

 http://handleps3/~wheel/wiki

にアクセスすると Wiki としてページを自由に編集できます。

もはや単なる Linux マシンです。


● PS3にLinuxを入れるまでの手順
● PS3 Linux で最初に行う設定
の続きです。
なお ADDON CD の 20061208 版で Fedora core5 をインストールした状態を
想定しています。


(1) 一般ユーザーの追加

root ユーザーによる作業は必要最小限にして、普段は一般ユーザーのアカウント
を使います。root ログインしたらユーザーの追加を行います。

 # adduser <ユーザー名>

追加しただけだとパスワードが無いのでログインできません。
次にパスワードを登録します。

 # passwd <ユーザー名>

たとえばユーザー名が「wheel」なら

 # adduser wheel
 # passwd wheel

となります。
これで最初の login: 画面で登録したユーザー名でログインできるようになります。
以後 root でログインする必要はありません。
一旦 exit して、新しいユーザーでログインしてみます。

# exit


前にも書きましたが「#」は root ユーザーのプロンプトを意味します。
たとえば説明で「# exit 」と書いてある場合は

 exit [Enter]

の部分をキータイプしてください、という意味です。
root 権限での作業と区別するために、一般ユーザーでログインした場合の
コマンド入力用プロンプトを「$」で表記します。

 $ startx

例えばこのように書いてある場合、一般ユーザーのプロンプトで startx コマンド
を実行することを意味します。



(2) 一般ユーザーで作業する場合の注意

一般ユーザーでログインした場合に各種設定を行おうとすると root のパスワード
を聞かれることがあります。

またコマンドライン上で root 権限が必要な作業を行うには su コマンドを使います。

$ su

root パスワードを入力すると一時的に root ユーザーとして作業できます。
exit コマンドや Ctrl+D で元のユーザーに戻ります。

一般ユーザー経由で root になった場合は /sbin にパスが通っていないので、
コマンドの実行ができない場合はフルパスで指定してみてください。
例えば ifconfig や boot-game-os が /sbin にあります。

boot-game-os を実行するには su で root になったあとに

 # /sbin/boot-game-os

とフルパスで呼び出す必要があります。



(3) X (Gnome) を日本語に設定してみます

一般ユーザーでログインしたら、startx で X を起動してから次の設定をします。
設定時に root パスワードが必要です。

 Administration → Language → Japanese(日本語)

一度 Log Out して再び X を起動すると、メニューや設定やら
ほとんどのものが日本語になっています。

また、[Ctrl] + [SPACE] や [半/全]キー で日本語入力もできるようになります。


フルインストールなので、最初からかなりの量のアプリケーションが入っている
ようです。ただ各アプリの起動は少々またされますね。



(4) X 上でコマンドライン作業をするには

メニューから GNOME端末 を呼び出します。

 アプリケーション → アクセサリ → GNOME端末



(5) キーボードの再設定

X (Gnome) を日本語にして起動しなおしたら、キーボードの配列がまた英語に
戻っていました。GNOME端末 を起動して、コマンドラインからまた配列変更を
行います。

$ system-config-keyboard

root パスワードが必要です。日本語を選びなおすとキーボードの配列が正常に
なります。



(6) Windows とファイルやり取り

Windows でも使用している NAS (玄箱) の samba につないでみます。

 場所 → サーバへ接続

サービスの種類を「Windows共有」にして、サーバー名を入力して [接続]
explorer のように簡単にアクセスできました。

なお、PS3 Linux 自身をファイルサーバーとして使うことができます。
サーバー設定は次の「PS3 Linux をサーバーにしてみる」で説明します。


Fedora core 5 を PS3 にインストールして、
login できるようになったらまず最初にやっておきたい設定です。
普段 debian 系ばかり使っていたので実はかなり不慣れです。
間違ってるかもしれないけど調べながら行った設定をまとめてみます。


(1) キーボードの種類設定

インストール時にも一度設定画面が出ますが、そのまま進めると英語キーボードの
配列になっています。日本語キーボードを繋いでいる場合はキー配列が異なっている
ので設定変更します。
コマンドラインから

 # system-config-keyboard

と入力して、一覧から「Japanese」を選びます。
[Tab]キーを押すと「OK」の位置にカーソルが移動するので [Enter] で確定します。

なお「#」は一般的に root ユーザーのコマンド入力プロンプトをあらわします。
「# system-config-keyboard」と表記されている場合実際にキータイプするのは
system-config-keyboard [Enter] です。



(2) コマンドラインで画面の解像度変更テスト

参考ページ
http://cell.fixstars.com/ps3linux/index.php/PS3_Linux%E3%82%92%E4%B8%80%E9%80%9A%E3%82%8A%E4%BD%BF%E3%81%A3%E3%81%A6%E3%81%BF%E3%82%8B

TV が画面モードに対応しているか確認する意味も含めて、コマンドラインで
画面モードを切り替えることができます。
たとえば 720p ならモード番号が 3 なので次のように実行します。

 # ps3videomode -v 3

もし失敗して何も表示されなくなったら、画面が見えなくても

 # ps3videomode -v 0

または

 # reboot

をがんばってタイプします。
他にも

1=480i
2=480p
3=720p
4=1080i
5=1080p

等があります。モード番号は D端子番号と微妙に違うので注意です。
常に指定したモードで起動したい場合は、次に説明するように
kboot.conf を書き換える必要があります。



(3) 最初からハイレゾで起動する場合の設定

参考ページ
http://cell.fixstars.com/ps3linux/index.php/PS3_Linux%E3%82%92%E9%AB%98%E8%A7%A3%E5%83%8F%E5%BA%A6%E3%81%A7%E8%B5%B7%E5%8B%95%E3%81%99%E3%82%8B

上記ページの設定どおりに /etc/kboot.conf を書き換えて、起動時から
ハイレゾになるよう設定できます。
HD 対応テレビに D端子やコンポーネント、HDMI 接続している場合はお勧め。
そうでない場合(ビデオ入力で繋いでる場合等)は設定しないでください。

たとえば 720p で起動したいなら video=ps3fb:mode:3 を追加して下記のように
なります。

linux="/boot/vmlinux-2.6.16 initrd=/boot/initrd.img video=ps3fb:mode:3"

この設定は再起動してから有効になります。
失敗すると表示されなくなるかもしれないので慎重に。
使用できる画面モードはあらかじめコマンドラインで確かめておいてください。

この設定を行っても、起動中 kboot の最初までは 480i で表示され、
その後画面モードが切り替わります。
知らないと最初設定ミスかな、と思いますがしばらく待ってみてください。

上記参考ページでは書き換えのために vi を使っていますが、操作方法が一般の
Windows のテキストエディタと違います。最初に簡単に使い方を覚えておく
必要があります。

・一例(大文字小文字の区別あり)
強制終了 [:][q][!][ENTER]
セーブ終了 [Z][Z]
カーソル移動 [h][j][k][l]
文字挿入モードに切り替え [i]
文字挿入モード終了 [ESC]
※挿入モードではコマンド入力できないのでモードの終了が必要



(4) X (Window)の起動

USB マウスが必要です。あらかじめ繋いでおいてください。
また X を使う場合は 720p 以上の画面モードで使うことをお勧めします。
もちろん 480i/480p でも使えますが、ダイアログが画面内に完全に収まらない
ことがあります。

 # startx

コマンドラインで上記のように実行すると X (Gnome)が立ち上がります。
起動時必ず「no '/dev/pmu' device found」と表示されますがとりあえず無視します。

X を終了するには、画面上部のメニューから

 System → Log Out root...

を選びます。終了するとまた黒バックのテキストのコマンドラインに戻ります。



(5) ネットワーク設定

デフォルトではまだネットワークにつながっていません。
ネットワーク設定を行います。

◎その1 720p以上

X を起動した後下記のように設定します。ただしこの方法だと画面解像度が 720p
以上でないとダイアログのボタンが押せません。
TV のビデオ接続など 480i/480p の場合は「◎その2」の方法をお試しください。

Gnome の画面上部のメニューから
 System → Administration → Network

Devices のタブに何も表示されていないので、ここで [New] ボタンを押す。

 Ethernet Connection → Forward → Gelic Network Driver(eth0) → Forward

・DHCP の場合(通常はこれ)
 デフォルトのまま特に変更は不要です。
 「Automatically obtaion IP address ~ [dhcp]」と
 「Automatically obtaion DNS ~」が選択されているはずです。
 ホスト名は必要に応じて設定してください。

・手動設定の場合
 「Statically~」を選択して自分で IP アドレスなどを登録します。

最後に Forward して [Apply] します。
最初の「Devices」のタブに eth0 が表示され、profile のチェックが入っていれば
大丈夫です。Network のウィンドウをセーブ終了してください。


◎その2 480i/480p の場合

まず X を起動しないでコマンドラインから

 # system-config-network

を実行します。Ethernet が選択されている状態で [Tab] を押し、カーソルが
Configure にきたら [Enter] します。

Name、Device 共に「eth0」と書き込んで、Use DHCP の上でスペースを押して
チェック「*」を入れます。または直接 IP Address を書き込んでください。

 [Tab] → OK → [Tab] → Exit

で終了します。

次に startx コマンドで X を起動します。

 # startx

起動したら Gnome の画面上部のメニューから
 System → Administration → Network

を選択します。Device のタブに表示されている一覧に eth0 がありますが、
左端の Profile にチェックが入っていないので On にしてください。

必要ならホスト名もここで設定できます。
Device のタブで選択してから Edit ボタンを押します。

ダイアログが画面外にはみ出ていますがウィンドウ上部のメニューは
呼び出せるので、セーブして終了してください。


「◎その1」または「◎その2」の設定ができたら、X を終了して一度 reboot します。



(6) ネットワーク設定の確認

ネットワーク設定を行った後、再起動したらネットにつながっているかどうか
確認します。

root でログインしたら ifconfig を実行します。

 # ifconfig

eth0 が表示され、inet addr に IP address が表示されていることを確認します。
lo しか表示されていない場合はもう一度設定を確認してみてください。

きちんとネットワークにつながれば、X を立ち上げて普通にブラウザ (Firefox)
が使えるようになっているはずです。


一度インストールしたのですが、ファーム v1.31 でまた Fedora core 5 を
インストールし直してみました。その手順を書きます。
(フルインストールはこれで3度目)

参考ページ
http://cell.fixstars.com/ps3linux/index.php


●PC 上の作業

(1) Fedora core 5 PPC の用意
http://fedora.jp/modules/download/
を参考に
http://ftp.iij.ad.jp/pub/linux/fedora/core/5/ppc/iso/
この辺から
 FC-5-ppc-DVD.iso
を落として DVD に iso イメージで焼いておく。


(2) ADDON CD
ftp://ftp.uk.linux.org/pub/linux/Sony-PS3/
あたりから
 CELL-Linux-CL_20061208-ADDON.iso
を落として CD に iso イメージで焼いておく。


(3) マニュアルを見てみる

作成した ADDON CD の中身を見ると各種ドキュメントが入っているので
参考になります。CDドライブを Q: とすると

 Q:\README-j.txt
 Q:\doc\index.html

など。たとえば Linux インストール方法も
Q:\doc\HowToEnableYourDistro.html
を読むと書いてあります。


(4) ブートローダ
http://www.playstation.com/ps3-openplatform/jp/manual.html
ここから
 otheros.self
をダウンロードして、何らかの USB メモリやフラッシュカードなど、
PS3 で読めるメディアに書き込んでおきます。
私は iPod Shuffle (初代) を USB メモリ代わりに使用しました。
USBメモリのドライブを D: とすると、D:\PS3\otheros に入れておきます。

 D:\PS3\otheros\otheros.self

こんな感じ。

同じように (2) で作成した ADDON CD 内の Q:\kboot\otheros.bld も
USB メモリの同じフォルダに入れておきます。

 D:\PS3\otheros\otheros.bld


●PS3の作業

バックアップなど時間がかかるものもあるので、PC 作業と平行してやって
おくと良いです。

(5) HDDバックアップ
 設定→本体設定→バックアップユーティリティ→バックアップ

USB メモリや SDカードなど、PS3 で認識できるメディアにバックアップできます。
ゲームのインストールデータなど巨大なものがあると大変なので、必要なもの
以外は消しておいた方がよいです。
自分は未使用で使っていないマイクロドライブ(1GB)があったので
これにバックアップを取りました。
60GBモデルなので 直接 CF カードスロットで読み書きできました。


(6) フォーマット
 設定→本体設定→フォーマットユーティリティ→ハードディスクのフォーマット

 必ず「カスタム」を選択
 ・他のシステムに 10GBを割り当てる
 ・PS3に10GBを割り当てる
のどちらかを選ぶ。
クイックフォーマットで大丈夫でしょう。

自分は 60GB モデルを使っていて Linux メインにするつもりなので
PS3に10GBを割り当てました。これで GAME 10G、Linux 50G になるはずです。


(7) リストア
 設定→本体設定→バックアップユーティリティ→リストア(復元)

これでパーティションを切りなおしてフォーマットしても一応元の状態に
戻るはずです。


(8) 他のシステムのインストール
USBメモリ(自分の場合 iPod Shuffle)をさしてから

 設定→本体設定→他のシステムのインストール

見つからないときは USB の認識待ちか、(4) で作ったフォルダが間違っているか、
PS3で認識できない USBメモリか、等が考えられます。

このときコントローラを USB の有線で繋ぐように言われます。


(9) kboot 起動

まずPS3側にUSBキーボードを接続しておきます。

 設定→本体設定→優先起動システム→他のシステム

他のシステムに設定したら一度電源を切って入れなおします。
これで PS3 のゲーム画面にならずに kboot が起動します。
しばらく待つとペンギンが2匹で kboot のプロンプトの入力待ちになります。
このとき画面モードが必ず 480i になるので注意です。


(10) FC5 install

kboot: の画面で 「install-fc sda」と入力します。
(1) で作った DVD を入れて「y」
その後メッセージに従いフルインストール「2」を選択して
最後の確認にさらに「y」
しばらく待ちます。
最初固まったかのような画面になりますが徐々に進行してますので我慢です。
2時間以上。


(11) ADDON CD

しばらくして FC5 の DVD がイジェクトされたら合図です。
(2) で作った ADDON CD の挿入を求められるので、入れたら「y」を押します。
ADDON CD のインストールが終わると、root のパスワード設定です。


(12) 完了、再起動

すべてインストールが終わるとまた kboot: のプロンプトに戻ってくるので
「reboot」と入力して再起動します。
完全に起動するまで放置してください。
今回は途中で一旦ペンギンの数が増えます。
初回だけ途中でテキストの設定画面が出ます。
そのまま無視しても進みます。
うまく起動しない場合は一旦電源を切って入れなおしても大丈夫です。
Linux の起動が終了すると login: というプロンプトが出ます。


(13) ログイン確認

login: にはユーザー名「root」、インストール時に設定したパスワードで
ログインします。成功すると root のプロンプト
 [root@localhost ~]#
が表示され、コマンド入力できるようになります。


(14) 最低限のコマンド

reboot 再起動
halt  電源切断(少々時間がかかる)
boot-game-os PS3の元のゲーム画面に戻る

PS3の画面に戻った後にまた Linux に切り替えるには、(9) で設定したように
「優先起動システム」を「他のシステム」に変更して電源を入れなおす
必要があります。


まずは Playstation3 をそのまま使ってみました。

ゲームソフトはまだ買いませんでしたが(ありがち)、Xbox360 と同じようにネット
経由でいろいろコンテンツをダウンロードすることができます。

PLAYSTATION Store への登録は最初手間ですが、無料のものや体験版もあるので
結構楽しめました。Xbox Live に比べるとまだまだコンテンツ量が少ないものの
できることは非常に似ています。
ダウンロード中何もできないのは退屈だけど、Xbox360 も最初はそうでした。

LAN ケーブルを繋いだだけで PC 同様にそのままインターネット接続可能です。
インターネットブラウザもついてるので本体でできることがかなり多いです。
ブラウザはちょっと反応が遅いものの、PSP で慣れていたのですんなり使えました。

USB キーボードと USB マウスは繋いでおいたほうが何かと便利です。

「リモートプレイ」を使うと、PSP を無線 LAN で繋いで PS3 を遠隔操作できます。
ロケーションフリーのようなもの。
いまのところできるのは標準のメニューから呼び出せる機能だけで、
フォト、ミュージック、ビデオ、インターネットブラウザなど。
ゲームはできませんが、家の中だけなら無線の音楽プレイヤーや
ムービープレイヤーとして使えそうです。

PLAYSTATION Store の「ゲームアーカイブス」では、PSP で動く PS1 のゲーム
をダウンロード購入できます。
画面も解像度も内容も当時のまんまで、よく携帯電話用にリメイクされてる
昔のゲームを思い出しました。値段も 500円程度と従量制の携帯ゲームとほぼ
同じです。
結構容量が大きいので、1G 以上のメモリースティックduoが欲しいところです。

こんな感じでゲーム以外でも本体だけでできることが非常に多いです。

さらに「他のシステムのインストール」を使えば真の目的である Linux の
install ができてしまいます。

現在 PS3 は Linux を入れて、ファイルや httpd 等のサーバーとしても、
PPE/SPE 等のプログラムを試すための実験用としてもフルに稼動しています。
こいつは最高に面白いです。
Linux についてはまた後ほど。


こちら
http://ch09144.kitaguni.tv/e326105.html
で書いた方法で、PCモニタに繋いだときの画面や比率はこんな感じです。
EIZO FlexScan L887 + YPbPr to RGBHV VGA Box

ps3 linux
ps3linux

ps3 game
ps3game


偶然通りかかった電気屋で PS3 を緊急入荷していたので購入しました。
普通の TV を持ってなくて、どうしても PC モニタで使いたかったので
接続まで少々手間取りました。
(以前の関連記事 http://ch09144.kitaguni.tv/c21762.html )

現在使用している PC モニタは EIZO FlexScan L887 で HDCP には未対応です。
そのため HDMI から DVI-D への変換はできません。

接続するには
・スキャンコンバータ
・トランスコーダ
のどちらかが必要になります。

安価なアップスキャンコンバータの場合は Video入力 や D1 接続がほとんど
なので、この場合 HD はあきらめることになります。
D3,D4 対応のものもありますが少々高くなります。
http://www.micomsoft.co.jp/xrgb-3.htm

今回は比較的低価格(?)で実現できるトランスコーダによる接続を選択しました。
この場合コンポーネント出力から RGB (VGA) へ変換します。



(1) 色差(コンポーネント) から RGB へ変換するトランスコーダ
 「YPbPr to RGBHV VGA Box」を購入 約6000円
このへん
http://www.play-asia.com/paOS-13-71-2q-49-jp-70-1d2s.html
http://gamebank-web.com/ec/store.asp?code_syosai=432762


(2) PS3用のコンポーネントAVケーブル を購入 (3000円)
http://www.watch.impress.co.jp/av/docs/20061120/sce2.htm
D端子ケーブルばかりでコンポーネントケーブルはあんまり店頭に置いてません
でした。ケーブルが 3m もあってもてあまします。


(3) 購入直後の PS3 は必ず D1 相当 (ビデオ出力,コンポジット) になっている

 緊急用の起動操作 (電源ボタンを5秒長押しで電源ON) でもこの状態になります。
 PCモニタは D1 (480i) に対応していないので、この時点で必ず TV 等の他の
 モニタが必要になってしまいます。


(4) モード切替
 TV を借りてきて設定画面から、ディスプレイモードを D端子・コンポーネント
 に切り替えます。30秒以内に確定しないと元に戻ってしまうのでこんな感じ。
  設定切り替え→解像度選択→決定→暗転→ケーブル繋ぎ変え→確定

 とりあえず無難な 720p にしておくのがお勧め。


(5) 使えた解像度

 「コンポーネントAVケーブル」+「YPbPr to RGBHV VGA Box」+「FlexScan L887」
 の組み合わせで使えた画面モードは次のとおり。

  1080i 映るがなぜか 640x480 で認識されてしまう。かなり荒くてだめ
  720p 使用可能
  1080p 一応映る。解像度も高くて非常にきれいだけど、同期信号にノイズが
     入るのか映像が不安定。

 結局 720p にしました。ただし L887 の 4:3 画面いっぱいに引き伸ばされてしま
 うので、そのままではかなり縦長。アスペクト非が狂ってしまいます。
 また色も若干白が飛び気味。


(6) FlexScan L887 の設定変更

 ・<その他><拡大モード> から「ノーマル」を選択 (拡大しない)
 ・<ピクチャー調整><解像度> で「1600x768」に設定

 これで UXGA (1600x1200) のモニタの画面中央に 1280x768 で小さく表示されます。
 かなり表示面積が小さくなりますが、その代わりドットが 1:1 でアスペクト
 比も保たれます。かなり寂しいけどここは我慢。PC 画面内にキャプチャウィンドウ
 を開いてるようなイメージ。


で、Linux も install したのですが、この install 画面がまた D1 相当の
モードになってしまうので要注意。
一度インストールしてしまえばモード切替できるので大丈夫です。


ちなみに Xbox360 の場合は最初から「VGA HD AV ケーブル」があるので簡単です。
http://www.xbox.com/ja-JP/hardware/x/xbox360vgahdcable/