「PlayniteやLaunchBoxからMesen2を全画面で直接起動したい」
「ネットで見た /noSplash を入れたら、画面に “Invalid argument” と出た」
この記事は、Mesen2のコマンドライン引数を公式ソースコード(コマンドライン処理部 CommandLineHelper.cs)で1つずつ照合したうえで、実際に使えるものだけをコピペ用にまとめたものです。
この記事の旧版では
/noSplash・/test・/break・/oneInstance・/config・/log・/trace・/mute・/loadState を紹介していましたが、これら9個はMesen2に存在しない引数でした。入れると起動時に「Invalid argument」と表示されます。お詫びして訂正し、本文を実在する引数だけで書き直しました。結論早見表:やりたいこと別の書き方
| やりたいこと | 書く引数(コピペ用) |
|---|---|
| 全画面で起動したい | --fullscreen |
| 前回の続きから再開したい | --loadLastSession |
| 音を消して起動したい | --audio.enableAudio=false --doNotSaveSettings |
| 音量だけ下げて起動したい | --audio.masterVolume=40 --doNotSaveSettings |
| 引数で変えた設定を保存させたくない | --doNotSaveSettings |
| ゲーム開始と同時にムービー記録 | --recordMovie=run1.mmo |
| ロゴ(スプラッシュ)を消したい | 引数は無い。ROMのパスを渡して起動すれば、ゲーム選択画面を通らずそのままゲームが始まる |
| 多重起動を防ぎたい | 引数は不要。既定で「単一インスタンス」が有効(preferences.singleInstance=true) |
正式な一覧は、Mesen2本体のメニュー「Help(ヘルプ)」→「Command-line options」でいつでも確認できます。迷ったらそこが正本です。
コマンドラインで起動を自動化したあとは、プレイ中の操作も詰めておきたい。巻き戻しとキー割り当ては【Mesen2】巻き戻し設定とキー割り当て7選で解説している。チートコードの入れ方を探している人はMesen2のチートの使い方へ。
この記事を読むと、以下のことができるようになります。
- ショートカットやランチャーから、Mesen2を全画面で直接ゲーム起動できる
- Playnite・LaunchBoxに、実在する引数だけでエミュレーター設定を作れる
- 機種ごとに画面比率や音量などの設定を、引数で起動時だけ切り替えられる
🎮 Mesen2 攻略・設定ガイド
起動まわりを引数で自動化したあとに残るのは入力の設定だけです。ファミコン配列のパッドを決めておくと、ランチャー経由で立ち上げてもボタンの迷いが出ません。
1. そもそも「コマンドライン引数」とは?どうやって使うの?
結論:起動設定の「.exeのパス」の後ろに、半角スペースを空けて短い指示(引数)を足すだけです。
黒い画面に打ち込む必要はありません。たとえば普通に起動するとMesen2はウィンドウで立ち上がりますが、起動時に --fullscreen を渡すと「全画面で起動して」という指示として受け取ります。
書き方のルール(ソースで確認済み)
- 先頭は
--・-・/のどれでも同じ意味になります(--fullscreen=/fullscreen)。公式ヘルプの表記は--なので、この記事も--で統一します。 - 大文字・小文字は区別されません(
--doNotSaveSettingsと--donotsavesettingsは同じ)。 - 存在しない引数を書くと、起動後に「Invalid argument: (書いた文字)」と表示されます。表示が出たら、その引数は効いていません。
- ROMファイルのパスも引数として渡せます。パスが存在しないと「ファイルが見つからない」旨のメッセージが出ます。
使い方①:ショートカット派(デスクトップから起動する人)
デスクトップのショートカットからMesen2を起動している場合は、次の手順で設定します。
- Mesen2のショートカットアイコンを右クリックし、「プロパティ」を開きます。
- 「リンク先」欄を確認します。(例:
"C:\Games\Mesen\Mesen.exe"のように、最後が.exe"で終わっているはずです) - 閉じカッコの
"の外側に、半角スペースを1つ入れて、使いたい引数を追記します。
"C:\Games\Mesen\Mesen.exe" --fullscreen"C:\Games\Mesen\Mesen.exe" "D:\ROM\nes\game.nes" --fullscreenポイント:
- exe名・配置は環境ごとに違って構いません。「.exeへのパス」+「半角スペース」+「引数」の形だけ守ってください。
- よくある失敗は、引用符の内側に引数を書いてしまうことです(例:
"...\Mesen.exe --fullscreen")。これは起動不能になりがちです。
保存は「OK」。次回から、そのショートカットをダブルクリックするだけで指定した動作で起動します。元に戻すときは追記した文字を削除すればOKです。
使い方②:ランチャー派(Playnite・LaunchBoxを使う人)
結論:ランチャーのエミュレーター設定にある「Arguments」「Default Command-Line Parameters」欄へ引数を書きます。
この方法の強みは、「ランチャー起動時だけ」特別な設定を適用できること。検証するときは通常起動(ウィンドウ)、遊ぶときはランチャー(全画面)という使い分けが、設定の手動切替なしで成立します。具体的な画面は3章で解説します。
2. 【定番】普段使いで効くコマンドライン引数ベスト5
結論:普段使いで覚えるのは --fullscreen と --doNotSaveSettings の2つ。残り3つは用途が合う人だけで十分です。
ここで紹介するのは、Mesen2のヘルプ(Help → Command-line options)の「General」欄に載っている全6個のうち、普段使いに関係する5個です(残る --testRunner は5章で触れます)。
① –fullscreen(フルスクリーン起動)
【おすすめ度:★★★★★】
起動と同時にフルスクリーンにします。ROMを渡した場合は、ゲームを読み込んだあとに全画面へ切り替わります。ランチャー運用で「家庭用ゲーム機っぽい体験」を作るなら、まずこれです。
② –doNotSaveSettings(設定を保存しない)
【おすすめ度:★★★★☆】
設定をディスクに保存しないようにします。公式ヘルプにも「コマンドラインのオプションが既定の設定になってしまうのを防ぐのに便利」と書かれています。
ここが大事:4章で紹介する「設定値の上書き(--audio.masterVolume=40 など)」は、そのままだと終了時に既定値として保存されてしまいます。上書き系の引数を使うときは、必ずこれをセットで付けてください。
③ –loadLastSession(前回の続きから再開)
【おすすめ度:★★★☆☆】
前回そのゲームを遊んでいた状態から再開します(ヘルプの説明は「最後に遊んだときの状態でゲームを再開する」)。RPGを毎日続きから遊ぶ人向けです。
注意:「最後に開いていたROMを自動で読み込む」機能ではありません。ROMのパスと一緒に渡し、そのゲームの続きから始めるための引数です。
④ –recordMovie(ムービー記録を開始)
【おすすめ度:★★☆☆☆】
ゲームを読み込んだ直後から、入力の記録(Mesenのムービー形式 .mmo)を始めます。
--recordMovie=run1.mmo のようにファイル名だけを書くと、Mesen2のムービー用フォルダに保存されます。拡張子 .mmo を省いても自動で付きます。TAS風の検証や、プレイの再現に使います。
⑤ –enableStdout(ログを標準出力へ)
【おすすめ度:★☆☆☆☆】
Mesen2のログウィンドウの内容を標準出力に書き出します。スクリプトから起動して結果を拾いたい人向けで、普通に遊ぶだけなら不要です。
【コピペ用】迷ったらこれ:定番セット
--fullscreenROMのパスと --fullscreen だけで、ゲーム選択画面を通らずに全画面でゲームが始まります。続きから遊ぶ派は --fullscreen --loadLastSession にします。
3. 【ランチャー連携】Playnite・LaunchBoxで「起動まで美しく」する設定例
結論:Playniteは「ROMパスの変数+引数」を自分で書く、LaunchBoxは「引数だけ」を書く(ROMパスは自動で末尾に付く)。ここが一番の違いです。
① Playniteでの設定例
- Playniteのメインメニューから「Library」→「Configure emulators…」を開き、Mesenを選びます。
- 起動プロファイルのArguments(引数)欄を探します。
- ROMパスを渡す変数
{ImagePath}の後ろに、半角スペースで引数を追記します。
"{ImagePath}" --fullscreen注意:
{ImagePath}はROMファイルの場所を指す変数です。これを消すと「Mesenは起動するがゲームが始まらない」状態になります。- 既に
{ImagePath}が別の形(引用符付き等)で入っている場合は、二重引用符にならないよう調整してください。
② LaunchBoxでの設定例
- メニューの「Tools」→「Manage」→「Emulators…」を開きます。
- Mesenを選び「Edit(編集)」を開きます。
- 「Default Command-Line Parameters」欄に引数を入力します。
--fullscreen補足:LaunchBoxは、この欄の内容の後ろにROMのパスを自動で付けてMesen2を起動します。ROMパスの位置を自分で指定したい場合は、LaunchBoxの変数 %romfile% を使います。ゲームが始まらないときは、ROMパスが二重に渡っていないかを見直してください。
【トラブルシューティング】画面が点滅する・挙動がおかしい時
原因として多いのは「二重設定」です。ランチャー側のチェックボックス(例:フルスクリーン起動)と、引数の --fullscreen が同時に効くと、全画面の切り替えが2回起きて元に戻ることがあります。この場合は、ランチャー側のチェックを切り、引数側で統一すると安定しやすいです。
起動直後に「Invalid argument」と出る場合は、旧情報の引数(/noSplash など)が残っていないか確認してください。
4. 【上級者向け】システムごとに設定を使い分ける
結論:設定ファイルを切り替える引数は存在しません。代わりに「–分類.設定名=値」で、起動時だけ個別の設定値を上書きします。
Mesen2は、NES・SNES・ゲームボーイ・GBA・PCエンジン・SMS/ゲームギア・ワンダースワンなどに対応したマルチシステムのエミュレーターです。「携帯機は画面比率を変えたい」「この機種だけ音量を下げたい」といった使い分けは、設定値の上書きで実現できます。
書き方:–分類.設定名=値
--audio.masterVolume=40 --doNotSaveSettings- 使える分類は
audio.・emulation.・input.・video.・preferences.・nes.・snes.・gameBoy.・gba.・pcEngine.・sms.・ws.・cv.です。 - 値に空白は使えません(英数字・アンダースコア・ピリオド・ハイフンのみ)。
- 設定名と使える値の全リストは、Help → Command-line options の各タブ(Audio・Video など)に出ます。
- 範囲外の数値や存在しない設定名は「Invalid argument」になり、反映されません。
よく使う上書きの例(ソースで実在を確認したもの)
| 書き方 | 効果 |
|---|---|
--audio.enableAudio=false |
音を出さずに起動(ミュート起動) |
--audio.masterVolume=40 |
全体の音量(0〜100) |
--video.aspectRatio=NTSC |
画面比率(NoStretching/Auto/NTSC/PAL/Standard/Widescreen/Custom) |
--video.fullscreenForceIntegerScale=true |
全画面時に整数倍で拡大(ドットの太さが揃う) |
--video.useExclusiveFullscreen=true |
排他的フルスクリーンを使う |
--gameBoy.hideSgbBorders=true |
スーパーゲームボーイの枠を隠す |
--preferences.singleInstance=false |
複数のMesen2を同時に起動できるようにする(既定は true=多重起動しない) |
具体例(Playniteで機種ごとに設定を変える)
Playniteでは、エミュレーターの起動プロファイルを機種ごとに分けて作れます。プロファイルごとに引数を変えれば、ゲームボーイだけ枠を隠す、といった運用ができます。
"{ImagePath}" --fullscreen --gameBoy.hideSgbBorders=true --doNotSaveSettings設定一式を丸ごと分けたいなら「ポータブルモード」
Mesen2は、Mesen.exe と同じフォルダに settings.json がある場合、そのフォルダを設定の保存先として使います(無い場合はドキュメントフォルダ側)。設定一式を完全に分けたいときは、Mesen2を別フォルダにもう1つ置き、それぞれで設定を作り込む方法が確実です。
5. 実在する引数の全リファレンス【保存版】
結論:単独で働く引数はヘルプの「General」欄の6個だけ。それ以外の調整はすべて4章の「–分類.設定名=値」で行います。
以下は、Mesen2(2.1.1前後の保管庫版)と、後継のMesen Community Edition(MesenCE)のソースコードで照合した一覧です。両者のコマンドライン処理部は同一でした。
| 引数 | 機能と活用シーン |
|---|---|
--fullscreen |
フルスクリーン起動 起動と同時に全画面表示にします。 |
--doNotSaveSettings |
設定保存の無効化 上書き系の引数が既定値として保存されるのを防ぎます。 |
--loadLastSession |
前回の続きから再開 渡したゲームを、最後に遊んだ状態から再開します。 |
--recordMovie="ファイル名.mmo" |
ムービー記録 ゲーム読み込み後に入力の記録を始めます。 |
--enableStdout |
ログを標準出力へ ログウィンドウの内容を標準出力へ書き出します。 |
--testRunner [Luaスクリプト] [ROM] |
ヘッドレス実行(開発者向け) 画面を出さずにLuaスクリプトを実行します。自動テスト用で、遊ぶ用途ではありません。 |
--分類.設定名=値 |
設定値の上書き 4章を参照。 --doNotSaveSettings と併用が基本。 |
旧版で紹介していた「存在しない引数」と代わりの書き方
| 存在しない引数 | やりたいことの代わりの書き方 |
|---|---|
/noSplash |
引数は無い。ROMのパスを渡して起動する |
/test |
前回の続きなら --loadLastSession |
/break |
該当する引数は無い |
/oneInstance |
不要(既定で多重起動しない) |
/config "ファイル名" |
--分類.設定名=値 で個別に上書き、またはポータブルモードで設定一式を分ける |
/log |
近いのは --enableStdout |
/trace |
該当する引数は無い(トレースはデバッガーの画面から使う) |
/mute |
--audio.enableAudio=false --doNotSaveSettings |
/loadState X |
スロット指定の引数は無い。続きからなら --loadLastSession |
6. コマンドが効かない!?よくあるミスと対処法
結論:「Invalid argument」が出たら綴り、何も起きないならスペースと引用符を疑ってください。
ミス①:コマンドの間に「半角スペース」がない
複数の引数は、間に必ず半角スペースが必要です。
--fullscreen--loadLastSession× 悪い例(全角スペースになっている)--fullscreen --loadLastSession--fullscreen --loadLastSessionミス②:Windowsショートカットで「引用符」の外に書けていない
スペースを含むパスは " " で囲う必要があります。そして引数は、その外側に置きます。
"C:\Program Files\Mesen\Mesen.exe" --fullscreenミス③:存在しない引数・値を書いている
起動後に「Invalid argument: 〜」と出たら、その引数は無視されています。古い記事やAIの回答には、Mesen2に無い引数(/noSplash など)がよく混ざっています。Help → Command-line options に載っていない引数は効きません。
設定値の上書きでは、値に空白を入れていないか、数値が範囲内か(例:音量は0〜100)も確認してください。
ミス④:上書きした設定が戻らない
--doNotSaveSettings を付けずに --audio.masterVolume=40 などで起動すると、その値が保存され、次から普通に起動しても音量40のままになります。設定画面で元の値に戻したうえで、以後は --doNotSaveSettings を併用してください。
補足:最新版はMesen Community Editionへ
Mesen2の元の配布元(SourMesen/Mesen2)は2026年6月に保管庫(アーカイブ)化され、以降の開発は後継のMesen Community Edition(nesdev-org/MesenCE)で続いています。コマンドライン引数の処理は両者で同じなので、この記事の引数はどちらでも使えます。導入はMesenCEの公式リリースページにある最新安定版を使ってください。
🎮 Mesen2 攻略・設定ガイド
次に読む(関連記事)
- Mesen導入ガイド :導入〜日本語化・初期設定まで図解で迷わず完了できる
- Mesen コントローラー設定 :認識しない・遅延する時の解決手順を網羅解説
- Mesen2のチートの使い方 :コードの入れ方・チートデータベース・効かないときの原因
- セーブ同期(Google Drive) :PC間でセーブ共有、Google Drive同期
まとめ:Mesen2の引数は「6個+設定値の上書き」だけ覚えればいい
Mesen2で単独で働く引数は --fullscreen・--doNotSaveSettings・--loadLastSession・--recordMovie・--enableStdout・--testRunner の6個です。それ以外の調整は --分類.設定名=値 で行い、その場合は --doNotSaveSettings を併用します。
--fullscreenそれでは、良きレトロゲームライフを!




コメント