MiSTer-devel / Template_MiSTer

Template with latest framework for MiSTer
GNU General Public License v2.0
76 stars 54 forks source link

MiSTer volume settings not respected during core boot sequence #33

Closed kfyten closed 4 months ago

kfyten commented 3 years ago

Many arcade cores will emit an obnoxious beep tone, siren, or other noise when they are starting up. This sound will play at apparent full volume regardless of the MiSTer sound volume or mute settings. Note that once the core has booted and the display has started to output/resolution banner is displayed the volume settings are correctly restored to the correct levels.

The expected behaviour is that the current MiSTer volume settings should be respected at all times.

This is an annoying and possibly dangerous issue, particularly when playing through headphones or with amplified speakers.

I have compiled a list of the arcade cores that I have found so far that exhibit this issue:

I would recommend trying dominos and pleiads to get a good sense of how "alarming" these startup sounds, played at full volume, can be. :)

sorgelig commented 3 years ago

I've just verified the HPS side of framework. The volume is set before first time reset get de-asserted. So basically core should by default mute all possible sounds till first reset (status[0]) get de-asserted. Because FPGA cannot be controlled till some stage, it's important that core itself will respect the initial procedure. So those arcade cores must be tweaked to mute the audio till status[0] signal changed from 1 to 0.

sorgelig commented 3 years ago

btw, if you use analog audio output then you won't be able to eliminate "boom" sound when you reload the cores as there is nothing can control the audio while core is loading. HDMI/Optical audio have no such issue (unless core produce its own initial audio before volume get loaded).

sorgelig commented 3 years ago

I think i can tweak the framework's FPGA part to mute the audio till volume get sent to the core.

sorgelig commented 3 years ago

I've updated the template and Pleiads arcade as an example. Other arcades will be updated sometime later by me or other devs.

kfyten commented 3 years ago

I should have mentioned that I am using the optical audio output on the analog IO board.

Thanks for looking into this.

birdybro commented 4 months ago

This should all be resolved now.