  	if ( CPU_haveCPUID() ) {
 diff --git a/src/main/nacl/pepper_instance.c b/src/main/nacl/pepper_instance.c
 new file mode 100644
-index 0000000..997e13a
+index 0000000..6e1f036
 --- /dev/null
 +++ b/src/main/nacl/pepper_instance.c
-@@ -0,0 +1,310 @@
+@@ -0,0 +1,338 @@
 +/*
 + * Copyright (c) 2011 The Native Client Authors. All rights reserved.
 + * Use of this source code is governed by a BSD-style license that can be

+
+  _this->hidden->mutex = SDL_CreateMutex();
+
+  _this->hidden->opened = false;
+
+  // TODO: Move audio device creation to NACLAUD_OpenAudio.
+  const PPB_Audio_1_1* g_nacl_audio_interface =
+      (const PPB_Audio_1_1*)g_nacl_get_interface(PPB_AUDIO_INTERFACE_1_1);
+  const PPB_AudioConfig_1_1* g_nacl_audio_config_interface =
+      (const PPB_AudioConfig_1_1*)g_nacl_get_interface(
+          PPB_AUDIO_CONFIG_INTERFACE_1_1);
+

+  spec->format = AUDIO_S16LSB;
+  spec->channels = 2;
+  spec->samples = _this->hidden->sample_frame_count;
+  return 1;
+}
+
+}  // extern "C"
diff --git a/src/audio/nacl/SDL_naclaudio.h b/src/audio/nacl/SDL_naclaudio.h
new file mode 100644
index 0000000..ab52848
--- /dev/null
+++ b/src/audio/nacl/SDL_naclaudio.h
@@ -0,0 +1,23 @@
+#include "SDL_config.h"
+
+#ifndef _SDL_naclaudio_h
