Skip to main content.
Google custom search

NetBSD/dreamcast よくある質問

1. はじめに
1.1. Dreamcast ポートの由来は?
1.2. なぜ Dreamcast で NetBSD を動かすのか?
2. ハードウェア
2.1. すべての Dreamcast 機が CD-R からブートできますか?
2.2. CD-RW からブートできる Dreamcast 機はありますか?
2.3. Broadband Adapter って何ですか?
2.4. Broadband Adapter はどこで入手できますか?
2.5. LAN Adapter って何ですか?
2.6. LAN Adapter はどこで入手できますか?
2.7. 日立 SuperH SH-4 はリトルエンディアンとビッグエンディアンのどっち?
2.8. Dreamcast 用のシリアルケーブルはどこで買えますか?
2.9. Dreamcast 本体にハードドライブを付けられますか?
3. ブート可能な CD
3.1. ブート可能な NetBSD/dreamcast CD イメージはどこにありますか?
3.2. DiscJuggler はどこにありますか?
3.3. それはすごい……で、 CD の作り方は?
3.4. カーネルを作り直すたびに CD を焼くのがいやな場合は?
4. Dreamcast 側の構成
4.1. Dreamcast の IP アドレスの設定方法は?
4.2. IP アドレスの設定用に Dreamcast Browser の GD-ROM を入手できますか?
5. Swap, その他もろもろの設定
5.1. NFS 上のスワップを使った場合の安定性はどのぐらいか?
5.2. スワップファイルはどれぐらいの大きさを用意すればよいか?
5.3. コンソールをシリアルポートに切り替える方法は?
5.4. マウスドライバーはありますか?
6. その他いろいろ
6.1. NFS マウントしていない Dreamcast にファイルを送る方法は?
6.2. IP upload slave って何ですか?
6.3. その他、 Dreamcast に関するリソースは?
6.4. 構築ジョブが、 CPU を少ししか使わないまま何時間もかかるのはなぜですか?

1. はじめに

1.1. Dreamcast ポートの由来は?
1.2. なぜ Dreamcast で NetBSD を動かすのか?

1.1.

Dreamcast ポートの由来は?

これは、齊藤正伸が Dreamcast 機で evbsh3 のコードがブートできるように手を加えたものを、 Marcus Comstedt が NetBSD/evbsh3 ポートから派生させたものです。

1.2.

なぜ Dreamcast で NetBSD を動かすのか?

これに対する答えは数多くされてきましたが、まとめとしてメーリングリストへの投稿を いくつか掲げておくのが一番よいでしょう: Drew Vogel Andy R Miles Nordin

2. ハードウェア

2.1. すべての Dreamcast 機が CD-R からブートできますか?
2.2. CD-RW からブートできる Dreamcast 機はありますか?
2.3. Broadband Adapter って何ですか?
2.4. Broadband Adapter はどこで入手できますか?
2.5. LAN Adapter って何ですか?
2.6. LAN Adapter はどこで入手できますか?
2.7. 日立 SuperH SH-4 はリトルエンディアンとビッグエンディアンのどっち?
2.8. Dreamcast 用のシリアルケーブルはどこで買えますか?
2.9. Dreamcast 本体にハードドライブを付けられますか?

2.1.

すべての Dreamcast 機が CD-R からブートできますか?

限定版のサクラ大戦 Dreamcast for Internetは CD-R からブートできないことがわかっています。 これ以外のものでもブートできない可能性はあります。 2000 年 10 月より前に製造されたものは動作しないと何度も言われてきましたが、 そのことが明確に検証された例はほとんどありません。

2.2.

CD-RW からブートできる Dreamcast 機はありますか?

ごく一部の Dreamcast 機は何もせずとも CD-RW からブートできるという 未確認の噂があります。このほか多くのものは内部を改造することで ブート可能になります。

2.3.

Broadband Adapter って何ですか?

しばしば BBA と略される Broadband Adapter は、本体のモデムと交換できる 10/100Mbit Ethernet モジュールです。これは Realtek 8139 チップにより、 Broadband Adapter 内蔵 PCI バス経由で動作します。 PCI バスは本体ネイティブの G2 バスに変換されます。

2.4.

Broadband Adapter はどこで入手できますか?

どれだけ早く必要でしょうか。待ってもよいのであれば、製造元の CSI の サイト で予約を行っています; 予約が 1,000 台に達すれば製造・出荷されます。 他の入手方法では $100 以上かかるところが、 $49 で済むのは大きいでしょう; 問題は、待つ必要があることと、手に入らない可能性もあることだけです。

待てないという方は、 eBay が一番いいでしょう。 また、 Broadband Adapter 組み込み済で出荷されたという Dreamcast R7 機が入手できるかどうか 調べるという手もあります。Broadband Adapter を見付けることは、 Sega が Dreamcast の製造をやめた今となっては、一般的に非常に困難です。 このため、相当の価格高騰が見られ、 多くの Broadband Adapter は本体を上回る価格が付いています。

2.5.

LAN Adapter って何ですか?

LAN Adapter (HIT-0300) は、つまりは 10/100 Mbit Ethernet ではなく 10 Mbit に対応した Broadband Adapter です。 Broadband Adapter の Realtek 8139 に対して、こちらは MB86967 チップを使っています。

2.6.

LAN Adapter はどこで入手できますか?

LAN Adapter を現行の Broadband Adapter より容易に入手できた人たちがいますが、 信頼のおける購入元はありません。これは、日本市場向けだけに製造されたものが、 サードパーティーによって非公式に日本国外に持ち出されたものであることが わかっています。

2.7.

日立 SuperH SH-4 はリトルエンディアンとビッグエンディアンのどっち?

日立 SuperH SH-4 CPU はリトルエンディアンとビッグエンディアンのどちらにもなり得ますが、 Dreamcast ポートではリトルエンディアンとして使っています。

2.8.

Dreamcast 用のシリアルケーブルはどこで買えますか?

売ってくれるベンダーの一覧が Dreamcast Emulation Developer サイトにあります。

2.9.

Dreamcast 本体にハードドライブを付けられますか?

はい。 DC IDE-HD Interface および DREAMCAST DEVELOPMENT の各ページを見てください。なお、これはハンダ付けその他もろもろの工作が必要で、 Dreamcast を完全に壊すおそれもあるものですので、 注意して行ってください。

3. ブート可能な CD

3.1. ブート可能な NetBSD/dreamcast CD イメージはどこにありますか?
3.2. DiscJuggler はどこにありますか?
3.3. それはすごい……で、 CD の作り方は?
3.4. カーネルを作り直すたびに CD を焼くのがいやな場合は?

3.1.

ブート可能な NetBSD/dreamcast CD イメージはどこにありますか?

読みとり専用のファイルシステムを作る場合は、この (非常に古い) DiscJuggler イメージを使ってください。 読み書き可能なファイルシステムを作る場合は、 Josh Tolbert の カーネル (ミラー) を使ってください。 これを使うと、システムがネットブートでき、読み書き可能なファイルシステムが使えます。

3.2.

DiscJuggler はどこにありますか?

DiscJuggler は、 http://www.padus.com/downloads/demo.php から無料で入手できます (機能に制限がありますが、上記のイメージを焼くのにはこれで十分です) 。

3.3.

それはすごい……で、 CD の作り方は?

HOWTO の説明にしたがってください。

3.4.

カーネルを作り直すたびに CD を焼くのがいやな場合は?

Josh Tolbert's Kernel Autoloader Guide に従ってセットアップするとよいでしょう。

このほか、 kloader(4) を試みることもできます。これはカーネルコンフィグで "options KLOADER" によって使えるようになるカーネル内ブートローダーです。

4. Dreamcast 側の構成

4.1. Dreamcast の IP アドレスの設定方法は?
4.2. IP アドレスの設定用に Dreamcast Browser の GD-ROM を入手できますか?

4.1.

Dreamcast の IP アドレスの設定方法は?

いくつかの Dreamcast のゲームは IP アドレスを設定することができ、 このアドレスは変更しない限り本体に記憶されます。同様に、 Broadband Passport ブラウザーソフトウェアも IP アドレスを設定できます。 しかし、すでに NetBSD がブートしており、これに先立って情報が必要でなければ、 Dreamcast はその IP アドレスを受け取ることができます。 最も単純な方法は以下のように NetBSD システムで arp テーブルを編集することです:

    # arp -s dreamcast ethernet
  

ここで dreamcast は設定しようとする IP アドレスであり、 192.168.0.128 とします。また、 ethernet は Broadband Adapter のハードウェアアドレスであり、 00:00:de:ad:be:ef とすると、コマンドは以下のようになります。

    # arp -s 192.168.0.128 00:00:de:ad:be:ef
  

4.2.

IP アドレスの設定用に Dreamcast Browser の GD-ROM を入手できますか?

http://newbrowser.sega.com/ を試してください。 このシステムで米国外へ配送できる可能性はわずかのようです。

5. Swap, その他もろもろの設定

5.1. NFS 上のスワップを使った場合の安定性はどのぐらいか?
5.2. スワップファイルはどれぐらいの大きさを用意すればよいか?
5.3. コンソールをシリアルポートに切り替える方法は?
5.4. マウスドライバーはありますか?

5.1.

NFS 上のスワップを使った場合の安定性はどのぐらいか?

これについては公平に討議するための材料があります。現状の総意的なものとしては、 基本的には安定しているが、 BBA の品質が悪いせいで問題が起きることがある、 というものです。多くの人たちが、問題を回避するために BBA を 10 Mbs のみに設定するようすすめています; そうするには、 /etc/rc.conf にある ifconfig の行に 10baseT ディレクティブを追加すればよいです。

5.2.

スワップファイルはどれぐらいの大きさを用意すればよいか?

もちろん、これはあなたが自分で決めるべきことであって、 このシステムで何をするかによります。ほとんどの通常の作業─ pkgsrc のそこそこの大きさのパッケージの構築を含む─であれば、少なくともスワップ領域を 32 MB はとるべきでしょう。 64 MB が最適なサイズであるとの報告が多くあります。 スワップファイルを大きめにとると、 その管理のために物理メモリーも多く必要になることに注意してください。

5.3.

コンソールをシリアルポートに切り替える方法は?

カーネルコンフィギュレーションから pvr ドライバーを削除してカーネルを再構築すれば、 自動的にシリアルコンソールを使うようになります。

5.4.

マウスドライバーはありますか?

はい。 mms がそうです。 これを使うにはカーネルコンフィギュレーションに以下の記述が必要です:

    mms*    at maple? port ? subunit ?
    wsmouse*    at mms? mux0
  

6. その他いろいろ

6.1. NFS マウントしていない Dreamcast にファイルを送る方法は?
6.2. IP upload slave って何ですか?
6.3. その他、 Dreamcast に関するリソースは?
6.4. 構築ジョブが、 CPU を少ししか使わないまま何時間もかかるのはなぜですか?

6.1.

NFS マウントしていない Dreamcast にファイルを送る方法は?

NetBSD や似たものが動作しているところで行う最も簡単な方法は、 portal ファイルシステムを使って以下のようにすることです:

    # mkdir /p
    # mount_portal /usr/share/examples/mount_portal/tcp.1.conf /p
  

これで portal ファイルシステムがマウントされ、 cat を Dreamcast へのファイルの送出に使うことができます:

    # cat filename > /p/tcp/dreamcast/port
  

ここで、 filename は送ろうとしているファイル名、 dreamcast は Dreamcast の IP アドレス、 port はファイルの送り先のポート番号です。 bsd という名前のカーネルを、 IP アドレス 192.168.0.128 を持ち IP upload slave (4711 番ポートを listen している) が動作している Dreamcast に送るには、以下のようにします:

    # cat bsd > /p/tcp/192.168.0.128/4711
  

6.2.

IP upload slave って何ですか?

IP upload slave とは Marcus Comstedt が書いた Dreamcast 用プログラムで、 Dreamcast 機の Broadband Adapter 経由でファイルを受渡しすることができ、 その後、ファイルは Dreamcast に実行されます。 http://mc.pp.se/dc/ipslave.html にあります。 使い方の説明は、 Josh Tolbert's Kernel Autoloader Guide にあります。

6.3.

その他、 Dreamcast に関するリソースは?

以下のサイトをあたってください:

これらのページは必ずしも NetBSD に特化したものではないことに注意してください。

6.4.

構築ジョブが、 CPU を少ししか使わないまま何時間もかかるのはなぜですか?

大きなもの、特に pkgsrc 以外での構築をするときに、構築ジョブが非常に長い時間かかり、 かつ CPU は少ししか使わないがメモリーはたくさん使っている場合、 このプラットフォームの大きな罠の一つにはまっています: NFS 越しのスワップは本当に、本当に遅いのです。

何事かというと、構築ジョブが、システムの持つ 32MB のメモリーを大幅に超過し、 大量のスワップをネットワーク越しに行なっているのです。 この過程は、たとえネットワークが速いものであっても、 とてつもなく遅いものになります; 最善の策は、メモリーを解放するため、 Dreamcast で動いている不要なプロセスを kill してみることです。 それで構築ジョブが止まる気配もないまま 5 時間以上動いていたとしても、 気にしないでください。また、構築ジョブを kill したりしないでください。 それでも大丈夫ですし、 kill してもその構築時間がすべて無駄になるだけだからです。

tech-kern メーリングリストの Simon Burge の投稿によれば、仮想メモリーの設定をいじって、 なんとかすることができます。この投稿を全部読んだ上で、設定をどうすべきか 自分で決めるのが一番いいのですが、ようするに、

    sysctl -w vm.anonmax=95
  

を実行するのがよさげだということです。 sysctl(3) マニュアルページによれば、 これは物理メモリーの何パーセントを、匿名アプリケーションデータの保持用として、 それ以外の用途の分から奪うことができるかを変更するものです。