前のページ 次のページ 目次

9. ビデオとサウンド

9.1 32 ビットのゲームを dosemu の中で起動できますか?

Mark Rejhon 氏(marky@ottawa.com)の報告(95/4/8):

バージョン0.60 から入っている新しい DPMI 機能により、いくつかの 32 ビッ トゲームが動作するようになっています。もし、そのゲームが OS/2 の DOS boxで動作するなら、dosemu でも動作する可能性があります。(例としては、 Descent, Dark Forces, Mortal Kombat 2, Rise of the Triad 等です。これ らのゲームは、新しいバージョンの dosemu で動作する事が確認されています。)

ゲームを起動する前に、/etc/dosemu.conf の中でキーボードが raw モードになっていて、VGA グラフィックスが有効になっている事を確認してく ださい。もし、何かのグラフィックスプログラムを起動して問題が無く、かつ、 システムクラッシュに対する覚悟ができているなら(これは、dosemu が root 権限でビデオカードを制御しているため、カードを制御不能になって回復でき なくなってしまうことがあるからです)、貴方のお気に入りのゲームを起動し てみてください。

なお、この方法を使う場合にはゲームのサウンドを切らないといけません。 (サウンドを使えるようにするには、誰かがサウンドボードのエミュレーショ ンをするプログラムを書かなければなりません。Linux はマルチタスク OS で、 高い周波数のタイマをサポートしていませんので、ゲームの動作は少し遅いか もしれません。ゲームの速度は DOS 上で走る時の 5〜100% のスピードで動 く可能性があります。通常は最近の dosemu だとおよそ半分くらいのスピード で、これは将来さらに改善されると思われます。

あるプログラムが動くかどうかは、なかなかわからないものです。もしうまく 動かすことができなかった場合には、EMUfailure ファイルにそのプログラム が挙げられているかどうか、現在の dosemu ではおそらく動かないとされる種 類のプログラムであるかどうかをチェックしてください。その上で、あなたが EMUfailureに載せるべきだと判断した場合は、 linux-msdos@vger.rutgers.edu宛に報告を送ってください。

lermen@elserv.ffm.fgan.deによる補足(97/2/11):

DMPI を有効にしていて、dosemu を root に setuid している場合には、 dosemu がセキュリティホールとなります(特に dos4gw ベースのゲームを実行 する場合)。この場合、クライアントはユーザ空間全体にアクセスできるので、 dosemu 自体のコードを変更することができるのです。この穴を塞ぐためには /etc/dosemu.conf に 'secure on' オプションを有効にすれば良いのですが、 この類のゲームは実行できなくなります。

9.2 dosemu を終了した時に、画面がゴミがいっぱいになります

(95/4/8) この現象が起こるのは、VGA テキスト画面におけるフォント情報が保存され ていないからです。svgalib パッケージを入手しましょう。最新のソースの入 手先は、

sunsite.unc.edu:/pub/Linux/libs/graphics/svgalib125.tar.gz
です。

このライブラリはあなたの使っている Linux のパッケージ(Slackware 等)に バイナリ形式で含まれているかもしれません。savetextmode を使って、 現在のテキストモードとフォントを /tmp の下に保存してから dosemu を起動してください。そして、dosemu を終了した後に textmode を使って設定を復元します。

lermen@elserv.ffm.fgan.de による補足(97/2/11):

src/arch/linux/debugger/README.recover と README.dosdebug も参照してく ださい。dosdebug も復元に使えます。

9.3 どうすれば Trident/Actix/その他 のビデオカードで dosemu を動作させられますか?

[画面が激しくちらつき、ビデオ BIOS の起動画面を表示して、ハン グしてしまいます。]

Andrew Tridgell 氏(tridge@nimbus.anu.edu.au)の報告(94/1/29):

古いバージョンでは次の設定で動作しました。

   ports { 0x42 }
しかし、この設定を使うと dosemu がビデオ BIOS をサイクルしている時にた まにマシンが落ちました。これは、VGA BIOS にクロックの変更を許している からです。これは、Linux では危ない操作なのです。

ですから、私は dosemu がポートへの書き込みを禁止し、さらにマスクをかけ るパッチを作りました。これは最新のバージョンには入っているはずです。現 在は

   ports { readonly 0x42 }
とすれば、dosemu の起動は遅くなりますが、信頼性は向上します。

---------------------

Tim Shnaider 氏(tims@kcbbs.gen.nz)の報告(94/1/18):

もう一つの手段として、GETROM というプログラムを使ってビデオ BIOS をファ イルにダンプし、そのデータを使って /etc/dosemu にあるファイル を編集する方法があります。この場合には、ビデオ関連の行を何行か追加する 必要があるでしょう。以下に私の設定を書きます。

   video { vga console graphics chipset trident memsize 1024 vbios_file
   /etc/dosemu/vbios }
vbios は、以下のコマンドを実行してできるファイルです。
   getrom > vbios

---------------------

Douglas Gleichman 氏(p86884@tcville.edsg.hac.com)の報告: (94/9/1) (ATI Graphics Ultra について)

dosemu0.52 の場合、dosemu.conf に以下の一行を足す必要があります:

 ports  { 0x1ce 0x1cf 0x238 0x23b 0x23c 0x23f 0x9ae8 0x9ae9 0x9aee 0x9aef }
ボードの自己診断では失敗と表示されますが、グラフィックスプログラムは正 常に動作します。

9.4 私のウンドカードは dosemu では使えないのですか?

Hannu Savolainen 氏(hsavolai@cs.Helsinki.FI)の報告 (94/3/21):

dosemu とその中で動作しているプログラムは、プロテクトモードの OS の中で 動作します。従って、メモリは必ずしもプログラムが要求する形で割り当てら れるわけではありません。もしプログラムがサウンドブラスターで DMA 転送 による録音をしようとした場合、録音された音は行き先のアプリケーションを 見つけられません。そしてメモリ内のデータを壊してしまいます。

James B. MacLean 氏(macleajb@ednet.ns.ca)の報告 (94/6/19): 残念ながら、dosemu でのサウンドカードへのアクセスで必要な、割り込み や DMA の横取りは現時点では直接サポートされていません。 :-(

でも、いつかサポートされるでしょう :-)。

Corey Sweeney (orey@d94.nnb.interaccess.com) の報告(97/2/15):

サウンドのコードは次の URL で開発中です。
<http://www.bright.net/ dlphilp/index.html

9.5 Voyetra の素晴らしい DOS MIDI シーケンサ、Sequencer Plus Gold

Dave Phillips 氏<dlphilp@bright.net;の報告(97/04/28): 私は Voyetra の素晴らしい DOS MIDI シーケンサである Sequencer Plus Gold を Linux の DOSemu 0.66.1 の下で実行することができました。最初に サウンドカードの PAS16 のドライバを config.sys で読み込み、Voyetra の VAPIMPUドライバはコマンドラインからフラグ /IRQ=7 を付けて読み込みます。 すると Sequencer Plus は完璧に動作します。これには驚きましたが、やっぱ り Linux はいいですね。


前のページ 次のページ 目次