Skip to content

Commit 6403db0

Browse files
committed
fix the mute/unmute button for MAME
Fixes MAMERunner's mute/unmute functions, and starts MAME with the volume turned down instead of with no sound emulation at all when the mute cookie is set.
1 parent 8ad749e commit 6403db0

File tree

1 file changed

+20
-20
lines changed

1 file changed

+20
-20
lines changed

loader.js

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -903,9 +903,7 @@ var Module = null;
903903
args.push('-resolution', [native_resolution.width * scale, native_resolution.height * scale].join('x'));
904904
}
905905

906-
if (muted) {
907-
args.push('-sound', 'none');
908-
} else if (sample_rate) {
906+
if (sample_rate) {
909907
args.push('-samplerate', sample_rate);
910908
}
911909

@@ -1095,19 +1093,18 @@ var Module = null;
10951093
return EmscriptenRunner.apply(this, arguments);
10961094
}
10971095
MAMERunner.prototype = Object.create(EmscriptenRunner.prototype,
1098-
{
1099-
mute: function () {
1100-
var soundmgr = Module.__ZN15running_machine20emscripten_get_soundEv(Module.__ZN15running_machine30emscripten_get_running_machineEv());
1101-
Module.__ZN13sound_manager4muteEbh(soundmgr,
1102-
true,
1103-
0x02); // MUTE_REASON_UI
1096+
{ mute: { value: function () {
1097+
var machine = Module.__ZN15running_machine30emscripten_get_running_machineEv();
1098+
var soundmgr = Module.__ZN15running_machine20emscripten_get_soundEv(machine);
1099+
Module.__ZN13sound_manager4muteEbh(soundmgr, true, 0x02); // MUTE_REASON_UI
1100+
},
11041101
},
1105-
unmute: function () {
1106-
var soundmgr = Module.__ZN15running_machine20emscripten_get_soundEv(Module.__ZN15running_machine30emscripten_get_running_machineEv());
1107-
Module.__ZN13sound_manager4muteEbh(soundmgr,
1108-
false,
1109-
0x02); // MUTE_REASON_UI
1110-
}
1102+
unmute: { value: function () {
1103+
var machine = Module.__ZN15running_machine30emscripten_get_running_machineEv();
1104+
var soundmgr = Module.__ZN15running_machine20emscripten_get_soundEv(machine);
1105+
Module.__ZN13sound_manager4muteEbh(soundmgr, false, 0x02); // MUTE_REASON_UI
1106+
},
1107+
},
11111108
});
11121109

11131110
/*
@@ -1571,12 +1568,15 @@ var Module = null;
15711568
runner.onStarted(function () {
15721569
splash.finished_loading = true;
15731570
splash.hide();
1574-
if (callbacks && callbacks.before_run) {
1575-
setTimeout(function() {
1571+
setTimeout(function() {
1572+
if (muted) {
1573+
runner.mute();
1574+
}
1575+
if (callbacks && callbacks.before_run) {
15761576
callbacks.before_run();
1577-
},
1578-
0);
1579-
}
1577+
}
1578+
},
1579+
0);
15801580
});
15811581
runner.onReset(function () {
15821582
if (muted) {

0 commit comments

Comments
 (0)