Index: sound.cpp
===================================================================
--- sound.cpp	(revision 34637)
+++ sound.cpp	(working copy)
@@ -454,7 +454,7 @@
 		_waveform = waveformMac;
 		break;
 	case SOUND_EMU_APPLE2GS:
-		loadInstruments();
+		_disabledMidi = !loadInstruments();
 		break;
 	}
 
@@ -514,6 +514,9 @@
 }
 
 void SoundMgr::playMidiSound() {
+	if (_disabledMidi)
+		return;
+
 	const uint8 *p;
 	uint8 parm1, parm2;
 	static uint8 cmd, ch;
@@ -1218,6 +1221,7 @@
 	_playing = false;
 	_sndBuffer = (int16 *)calloc(2, BUFFER_SIZE);
 	_waveform = 0;
+	_disabledMidi = false;
 }
 
 void SoundMgr::premixerCall(int16 *data, uint len) {
Index: sound.h
===================================================================
--- sound.h	(revision 34637)
+++ sound.h	(working copy)
@@ -467,6 +467,7 @@
 	int _endflag;
 	int _playingSound;
 	uint8 _env;
+	bool _disabledMidi;
 
 	int16 *_sndBuffer;
 	const int16 *_waveform;
