【ゲーム情報表示のスキップ】

ゲーム情報はゲーム開始時に表示されます。

キーやゲームコントローラーのボタンを押すとゲームが開始されます。

 

 

この表示を自動スキップさせたい場合は mame.ini にて skip_gameinfo の値を 1 にします。

 

例:

skip_gameinfo 1

 

 

【おまけ】

動作不完全のゲーム起動時に表示される黄色や赤色の警告表示をスキップするには?

 

 

残念ながら設定ではどうにもなりません。

作り手側からすれば警告ですから飛ばされちゃ意味がない。

それでもすっ飛ばしたいと思うのであればソースコード(src/frontend/mame/ui/ui.cpp)を編集してコンパイルする必要があります。

 

 

検証環境:MAME 0.203

【恒久的にウインドウモードで起動させる】

mame.ini にて window の値を 1 にします。

 

例:

window 1

 

 

 

【一時的にフルスクリーンモードとウィンドウモードを切り替えたい場合】

ALT+Enter」でフルスクリーンモードとウィンドウモードを交互に切り替えできます。

 

 

【おまけ】

ウィンドウモードのメリット

・ゲームの起動が速い。

・ゲーム画面以外の情報も表示できる。

 

ウィンドウモードのデメリット

・フルスクリーンモードよりGPUの性能が必要です。

・Windows10だとフルスクリーンモードに比べて3フレームほど遅延が起きるとか起きないとか?私は詳しく調査したことがないのでわかりません。

 

 

検証環境:MAME 0.203

 

【ゲームコントローラー選び】

とりあえずはWindowsにUSBやBluetoothで接続してWindowsの標準ドライバで動作するものがよいでしょう。そうでないものを使う場合は試行錯誤してください。

 

おすすめは以下の2つ。

 

DUALSHOCK 4

Xbox用コントローラー(360、One用どっちでも)

 

 

 

 

価格高めではあるけど耐久性や操作性を考えれば悪くない。

アナログ操作もできるという点もおすすめの理由。

そしてボタン数は多ければ多いほどよい。MAMEを使い込むほどそう感じるようになると思います。

 

※大半のゲームコンソール向けUSBコントローラーはWindows標準ドライバで動くと思いますが、DUALSHOCK 3はWindows標準ドライバでは正常動作しないので注意。

 

 

【ゲームコントローラーを使う】

ゲームコントローラーがOS上で認識されている状態でMAMEを起動します。

※MAME起動後に接続しても認識しません。

MAMEで認識しているか確実に確認したい場合は -verbose オプションを使うとよいんじゃないでしょうか。

-[no]verbose / -[no]v

 

Displays internal diagnostic information. This information is very useful for debugging problems with your configuration. IMPORTANT: when reporting bugs, please run with mame -verbose and include the resulting information. The default is OFF (-noverbose).

具体的には以下のように入力し、接続したコントローラーらしき文字列が表示されることを確認します。

 

【Windows】

> mame64.exe -v | find "Input"

 

【*nix系】

$ .\mame64 -v | grep "^Input"

 

 

【MAME共通のコントローラー設定】

ゲーム起動後に「Tab」キーを押してメニューを表示します。

入力(共通)(Input (general))」を選択。

Player  1 Controls」を選択。

設定したい項目で「Enter」し、値が空白になったら設定したいボタンを押します。

複数のボタンやキーを設定したい場合は更に「Enter」キーを押して追加設定したいボタンやキーを押します。

項目の設定内容を元に戻したい場合や無効にする場合は「Delete」キーを使います。

 

 

とりあえず以下の項目くらいは設定しておきましょう。

P1 UP

P1 Down

P1 Left

P1 Right

P1 Button 1

P1 Button 2

P1 Button 3

P1 Button 4

 

ついでに、1つ前のメニューに戻って(Escキー)、「その他のコントロール(Other Controls)」から「1P Playar Start」と「Coin 1」もゲームコントローラーに割り当てておきましょう。

その他にもメニュー、決定、キャンセル、メニュー移動、リセット、早送り、ポーズ等のよく使う操作もゲームコントローラーに割り当てるとよいでしょう。複数ボタンの同時押しでメニューを出すなんてことも可能です。

 

また、ゲーム毎に設定を変えたい場合は「入力(現在のマシン)」から同様に設定します。

 

これらの設定ファイルは mame.ini の cfg_directory で指定しているパス(標準では cfg ディレクトリ)に[ゲーム名.cfg]の名前で保存されます。共通設定は default.cfg です。

 

ちょっと話がずれますが、*.cfg、*.iniファイルは特定のルールで複数読み込めるのでうまく活用すると設定ファイルの数を抑えて柔軟な管理ができるようになります。

 

 

【さらなる高み】

複数のゲームコントローラーを接続する場合はもう少し工夫するとさらに幸せになれます。

起動の度にコントローラー番号が入れ替わったり(1P用、2P用が入れ替わってイライラ)することがあるんですね。

Windows版は-ctrlrオプションとctrlrファイルを定義することで同モデル(デバイス名が同じ)であっても確実に識別してコントローラー番号を固定できます。ctrlrファイルの定義を理解するとMAMEは更に使いやすくなります。これについてはそのうち解説するかもしれません。

SDL版(*nix、Mac)は別モデルであれば(デバイス名が異なれば)-joy_idx?オプションで識別&固定可能。OSに通知されるデバイス名が同じ場合は解決策がないかもしれません。これは私がMacユーザーでありながらWindows版のMAMEを使うようになった理由のひとつでもあります。

 

 

検証環境:MAME 0.203

2021年10月にMAMEのゲームタイトルが多言語対応されたので追記しました。

 

 

mame.ini にて language の値を japanese にします。

 

例:

language japanese

 

 

これだけでMAMEの表示メッセージやメニューが日本語になります。

ただしゲームタイトルやソフトウェアタイトルは日本語化されません

 

【おまけ】

ゲームタイトルはハードコーディングされているためソースコードの編集とコンパイルが必要です。編集対象はsrc/mame/drivers/*.cpp。

ソフトウェアタイトルはhash/*/*.xmlを編集することで変更可能です。

 

検証環境:MAME 0.203

 

 

なんと MAME 0.237 からゲームタイトルの多言語対応が実装されました!

mame32j.lst を入手してMAMEのホームディレクトリーに保存するだけです。

2021年12月現在の mame32j.lst の手軽な入手方法は以下のサイトで配布されている Retrofire (Windows用多機能MAMEランチャー)からの抽出になりそうです。

 

 

mame32j.lst はTSVファイルなので自己カスタマイズも簡単です。

【mame.iniの作成】

コマンドプロンプトを起動しMAMEのインストールディレクトリに移動します。

> cd c:\games\mame

 

-createconfigオプションでMAMEを実行します。

> mame64.exe -cc

-createconfig / -cc

 

Creates the default mame.ini file. All the configuration options (not verbs) described below can be permanently changed by editing this configuration file.

するとカレントディレクトリに標準設定の mame.iniplugin.iniui.ini が作成されます。

 

エクスプローラーでMAMEのインストールフォルダを開きます。

mame.ini ファイルをメモ帳等のテキストエディタで開きます。マウスの右クリックメニューから「編集」でもよいでしょう。

 

 

 

【rompathの指定】

rompath の内容をROMファイルの保存場所に書き換えます。

もしくはMAMEのインストールフォルダの中にromsという名前でフォルダを作りROMファイル(ZIP圧縮済みを推奨)を配置します。

 


【おまけ】

rompathを含め、それぞれのパス設定(CORE SEARCH PATH OPTIONS)には複数のディレクトリを指定することができます。

複数指定する場合は「;」(セミコロン)で区切って記述します。

ROM、CHD、SLを別ディレクトリに分けて管理したい場合等に役立つでしょう。

パスにスペースが含まれる場合は値の部分全てを「"」(ダブルクオーテーション)で囲みます。

 

例1:

rompath c:\games\mame\roms;c:\games\mame\chds;c:\games\mame\sl

 

例2:

rompath "c:\games\mame\roms;c:\games\mame\chds;c:\games\mame\sl"

 

 

検証環境:MAME 0.203