Emulator Problem: MAME Plus! XT - Popeye popping/clicking sound

flcl64

New member
So I made a machine that runs on MAME Plus! XT x86 v0.159r5223 and when I play Popeye, there is a constant popping sound about every 5-10 seconds. I don't have problems in any other games, and Popeye works fine in other versions of MAME.

I had a similar problem with Donkey Kong 3 and I fixed it by changing the sound sample rate. I've tried several rates with Popeye but there's still popping.

I have Mala as a front-end and if I could get Popeye alone to automatically run on a different emulator without affecting other games I would do that, but I'm wondering if anyone knows what causes it and how to fix it.
 

malloc4096

New member
depending on the system ur running, typically i notice the farther from v0.106 u get (higher versions that is) the more glitches may appear in the Old roms that ran fine on 106 and prior.

here are some sound related mame settings i came across at one point, there could be more, and some may only apply to versions above 106. note aswell, if ur not already aware, any setting that screws with game speed such as frame skipping, i would also image will screw with audio.

u can use any of the settings, frontend or not, by going to ur mame directory\ini
if theres not a file already there named something like 'popeye.ini'
just create it(use the proper name of the rom ofcourse), open it in notepad and type...
Code:
refreshspeed 1
syncrefresh 0
audio_latency 2
samplerate 44100
ini '1' and '0' is same as cmd line '-refreshspeed' '-norefreshspeed' just for example
default audio latency i believe is 1... but 2/3 may work well depending on ur system
default samplerate is probably 48000 or 44100 so choose a desired frequency under that tier
Code:
-[no]refreshspeed / -[no]rs
	Allows MAME to dynamically adjust the gameplay speed such that it does
	not exceed the slowest refresh rate for any targeted monitors in your
	system. Thus, if you have a 60Hz monitor and run a game that is
	actually designed to run at 60.6Hz, MAME will dynamically change the
	speed down to 99% in order to prevent sound hiccups or other
	undesirable side effects of running at a slower refresh rate. The
	default is OFF (-norefreshspeed).

-[no]syncrefresh
	Enables speed throttling only to the refresh of your monitor. This
	means that the game's actual refresh rate is ignored; however, the
	sound code still attempts to keep up with the game's original refresh
	rate, so you may encounter sound problems. This option is intended
	mainly for those who have tweaked their video card's settings to
	provide carefully matched refresh rate options. Note that this option
	does not work with -video gdi mode.The default is OFF (-nosyncrefresh).

-audio_latency
		1 - 4

-samplerate  / -sr
		11025	Hz
		22050	Hz
		44100	Hz

		8000	Hz
		16000	Hz
		32000	Hz
		48000	Hz
 

flcl64

New member
depending on the system ur running, typically i notice the farther from v0.106 u get (higher versions that is) the more glitches may appear in the Old roms that ran fine on 106 and prior.

here are some sound related mame settings i came across at one point, there could be more, and some may only apply to versions above 106. note aswell, if ur not already aware, any setting that screws with game speed such as frame skipping, i would also image will screw with audio.

u can use any of the settings, frontend or not, by going to ur mame directory\ini
if theres not a file already there named something like 'popeye.ini'
just create it(use the proper name of the rom ofcourse), open it in notepad and type...

refreshspeed 1
syncrefresh 0
audio_latency 2
samplerate 44100

I've tried changing those before in all sorts of combinations. :/
Those settings are default I think. I have a full .ini file with a lot of settings shown, I'm not sure if it's all of them but it is a lot. I tried this simplified version to see if maybe it was something else in the .ini that was tweaked but it still pops.
The popping is less obvious when there's music playing if that helps.
 

malloc4096

New member
i don't know. i dont have that rom and i dont use frontends. I basically just use the old mame version for the old roms and the new version for the new roms.

i can clearify ur ini confusion and offer another guess tho..
the 'mame.ini' in mame's home path, not the \INI path, affects all games
the popeye.ini in the \INI path will only affect that game.

im not familiar with most front ends so i dont know if what Im going to say applies, but u may want to check and make sure its own settings don't override mame's ini settings, or use the -noreadconfig option bellow.. u can do that by making an obvious change in 'popeye.ini' such as forcing Fullscreen mode or not [window 1] or[window 0]. then launch popeye from the frontend and see if it applies both times u change the setting.

the bellow is directly from the config readme in mame's docs folder. it shows the exacution hierarchy for any ini u can optionally use to override the default without modifying the original.
Code:
-[no]readconfig / -[no]rc

	Enables or disables the reading of the config files. When enabled
	(which is the default), MAME reads the following config files in order:

		- mame.ini
		- <mymame>.ini   (i.e. if MAME was renamed mame060.exe, MAME
				  parses mame060.ini here)
		- debug.ini      (if the debugger is enabled)
		- <parent>.ini   (for clones only, may be called recursively)
		- <gamename>.ini
                - vertical.ini   (for games with vertical monitor orientation)
                - horizont.ini   (for games with horizontal monitor orientation)
		- vector.ini     (for vector games only)
		- <driver>.ini   (based on the source filename of the driver)


	The settings in the later ini's override those in the earlier ini's.
I don't know what ur interface is like, but incase u don't already know, if u just want a single click launch option for that particualr game from desktop just one way to do it for example, that will allow u to use a different mame version...
is open notepad and type the following and save as mame.bat ,name is just for example
Code:
@echo OFF
cd /D "C:\path\to\mame"
mame.exe %1
replace path with the proper path of course.
and if u do, make sure u use the 'cd' command and don't just write it like this "C:\path\mame.exe %1"... cause the prompt needs to be in mame's home path othwise it doesn't find mame.ini etc, and wouldn't use the desired settings.

then u can just create a shortcut to mame.bat and place the shortcut on ur desktop, rightclick the shortcut goto properties and in the 'Target' field just add the name of the rom, example [Target=C:\path\to\mame.bat "popeye"]
and perhaps take a snapshot of the game from mame [F12], crop the image to the proper windows thumbnail size(i dont know the size) right click the shortcut again and change the icon to the BMP thumbnail of the game.

EDIT: incase u do try that to a diff mame ver, incase u forget the rompath needs to be defined in the mame.ini beforehand, otherwise u would also need to use the -rompath command
 
Last edited:
Top