diff --git a/Makefile.in b/Makefile.in
index 8ca5a73baa646289af2859d9b15639b003bb3ab8..9ca6f595c31c0b30cc4a6b9e59394791703ccf04 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -62,6 +62,8 @@ LIBSUBDIRS = \
 	dlls/win87em \
 	dlls/winaspi \
 	dlls/windebug \
+	dlls/winmm \
+	dlls/winmm/wineoss \
 	dlls/wing \
 	dlls/winspool \
 	dlls/wnaspi32 \
@@ -159,6 +161,7 @@ LIBOBJS = \
 	dlls/win87em/win87em.o \
 	dlls/winaspi/winaspi.o \
 	dlls/windebug/windebug.o \
+	dlls/winmm/wineoss/wineoss.o \
 	dlls/wing/wing.o \
 	dlls/winspool/winspool.o \
 	dlls/wnaspi32/wnaspi32.o \
diff --git a/configure b/configure
index 71cf99996fd2671692509c3f599120022df4a060..7d009d6d787a1c9445e90da0b7e1dcd2f2b5ed2e 100755
--- a/configure
+++ b/configure
@@ -5650,6 +5650,8 @@ dlls/win32s/Makefile
 dlls/win87em/Makefile
 dlls/winaspi/Makefile
 dlls/windebug/Makefile
+dlls/winmm/Makefile
+dlls/winmm/wineoss/Makefile
 dlls/wing/Makefile
 dlls/winspool/Makefile
 dlls/wnaspi32/Makefile
@@ -5843,6 +5845,8 @@ dlls/win32s/Makefile
 dlls/win87em/Makefile
 dlls/winaspi/Makefile
 dlls/windebug/Makefile
+dlls/winmm/Makefile
+dlls/winmm/wineoss/Makefile
 dlls/wing/Makefile
 dlls/winspool/Makefile
 dlls/wnaspi32/Makefile
diff --git a/configure.in b/configure.in
index 4085e0d4087da291bba8a1c5c9808799bc3badac..6007c52541c9e984ac810035d033557aa198cbec 100644
--- a/configure.in
+++ b/configure.in
@@ -857,6 +857,8 @@ dlls/win32s/Makefile
 dlls/win87em/Makefile
 dlls/winaspi/Makefile
 dlls/windebug/Makefile
+dlls/winmm/Makefile
+dlls/winmm/wineoss/Makefile
 dlls/wing/Makefile
 dlls/winspool/Makefile
 dlls/wnaspi32/Makefile
diff --git a/dlls/winmm/.cvsignore b/dlls/winmm/.cvsignore
new file mode 100644
index 0000000000000000000000000000000000000000..f3c7a7c5da68804a1bdf391127ba34aed33c3cca
--- /dev/null
+++ b/dlls/winmm/.cvsignore
@@ -0,0 +1 @@
+Makefile
diff --git a/dlls/winmm/Makefile.in b/dlls/winmm/Makefile.in
new file mode 100644
index 0000000000000000000000000000000000000000..09e0c339852eaede2977a798c47342580080e3c3
--- /dev/null
+++ b/dlls/winmm/Makefile.in
@@ -0,0 +1,13 @@
+DEFS      = @DLLFLAGS@ -D__WINE__
+TOPSRCDIR = @top_srcdir@
+TOPOBJDIR = ../..
+SRCDIR    = @srcdir@
+VPATH     = @srcdir@
+MODULE    = winmm
+
+all: $(MODULE).o
+
+@MAKE_RULES@
+
+### Dependencies:
+
diff --git a/dlls/winmm/wineoss/.cvsignore b/dlls/winmm/wineoss/.cvsignore
new file mode 100644
index 0000000000000000000000000000000000000000..d30434f8a29cb5bcd4d645e8da40dc44f75d136c
--- /dev/null
+++ b/dlls/winmm/wineoss/.cvsignore
@@ -0,0 +1,2 @@
+Makefile
+wineoss.spec.c
diff --git a/dlls/winmm/wineoss/Makefile.in b/dlls/winmm/wineoss/Makefile.in
new file mode 100644
index 0000000000000000000000000000000000000000..7e2d45be0a87acce8327c97c10e4d7a087600fce
--- /dev/null
+++ b/dlls/winmm/wineoss/Makefile.in
@@ -0,0 +1,20 @@
+DEFS      = @DLLFLAGS@ -D__WINE__
+TOPSRCDIR = @top_srcdir@
+TOPOBJDIR = ../../..
+SRCDIR    = @srcdir@
+VPATH     = @srcdir@
+MODULE    = wineoss
+
+SPEC_SRCS = \
+	wineoss.spec
+
+C_SRCS = 
+
+all: $(MODULE).o
+
+@MAKE_RULES@
+
+call32.s: $(BUILD)
+	$(BUILD) @BUILDFLAGS@ -o $@ -call32
+
+### Dependencies:
diff --git a/dlls/winmm/wineoss/wineoss.spec b/dlls/winmm/wineoss/wineoss.spec
new file mode 100644
index 0000000000000000000000000000000000000000..9db44614deb2043c16e060e4219c0bb73dd1e356
--- /dev/null
+++ b/dlls/winmm/wineoss/wineoss.spec
@@ -0,0 +1,10 @@
+name wineoss
+type win32
+
+  1 stdcall DriverProc(long long long long long) OSS_DriverProc
+  2 stdcall auxMessage(long long long long long) OSS_auxMessage
+  3 stdcall mixMessage(long long long long long) OSS_mixMessage
+  4 stdcall midMessage(long long long long long) OSS_midMessage
+  5 stdcall modMessage(long long long long long) OSS_modMessage
+  6 stdcall widMessage(long long long long long) OSS_widMessage
+  7 stdcall wodMessage(long long long long long) OSS_wodMessage