diff --git a/Mac/Modules/snd/Sndmodule.c b/Mac/Modules/snd/Sndmodule.c
index 65b84df..74951ce 100644
--- a/Mac/Modules/snd/Sndmodule.c
+++ b/Mac/Modules/snd/Sndmodule.c
@@ -315,35 +315,6 @@
 /* ------------------- End object type SndChannel ------------------- */
 
 
-static PyObject *Snd_SetSoundVol(_self, _args)
-	PyObject *_self;
-	PyObject *_args;
-{
-	PyObject *_res = NULL;
-	short level;
-	if (!PyArg_ParseTuple(_args, "h",
-	                      &level))
-		return NULL;
-	SetSoundVol(level);
-	Py_INCREF(Py_None);
-	_res = Py_None;
-	return _res;
-}
-
-static PyObject *Snd_GetSoundVol(_self, _args)
-	PyObject *_self;
-	PyObject *_args;
-{
-	PyObject *_res = NULL;
-	short level;
-	if (!PyArg_ParseTuple(_args, ""))
-		return NULL;
-	GetSoundVol(&level);
-	_res = Py_BuildValue("h",
-	                     level);
-	return _res;
-}
-
 static PyObject *Snd_SndNewChannel(_self, _args)
 	PyObject *_self;
 	PyObject *_args;
@@ -742,10 +713,6 @@
 }
 
 static PyMethodDef Snd_methods[] = {
-	{"SetSoundVol", (PyCFunction)Snd_SetSoundVol, 1,
-	 "(short level) -> None"},
-	{"GetSoundVol", (PyCFunction)Snd_GetSoundVol, 1,
-	 "() -> (short level)"},
 	{"SndNewChannel", (PyCFunction)Snd_SndNewChannel, 1,
 	 "(short synth, long init, PyObject* userRoutine) -> (SndChannelPtr chan)"},
 	{"SndControl", (PyCFunction)Snd_SndControl, 1,
diff --git a/Mac/Modules/snd/sndscan.py b/Mac/Modules/snd/sndscan.py
index 8db540a..249aa57 100644
--- a/Mac/Modules/snd/sndscan.py
+++ b/Mac/Modules/snd/sndscan.py
@@ -44,9 +44,12 @@
 			'GetSoundPreference',
 			'SetSoundPreference',
 			'GetCompressionInfo',
-			# And 3.1 calls, ditto...
+			# Calls with void_ptr arguments (to be done).
 			'SndGetInfo',
 			'SndSetInfo',
+			# And old calls that are no longer supported
+			'SetSoundVol',
+			'GetSoundVol',
 
 			]
 
