diff -ru playercode/mplayer.c libmikmod-3.1.12/playercode/mplayer.c
--- playercode/mplayer.c	2009-10-05 00:19:59.000000000 -0700
+++ playercode/mplayer.c	2009-10-05 00:44:35.000000000 -0700
@@ -3019,7 +3019,7 @@
 {
 	MUTEX_LOCK(vars);
 	if (pf)
-		pf->volume=(volume<0)?0:(volume>128)?128:volume;
+		pf->volume=pf->initvolume=(volume<0)?0:(volume>128)?128:volume;
 	MUTEX_UNLOCK(vars);
 }
 
