diff --git a/src/load.c b/src/load.c
index 49231031..df0c0b18 100644
--- a/src/load.c
+++ b/src/load.c
@@ -36,9 +36,6 @@
 #include "hio.h"
 
 #ifndef LIBXMP_CORE_PLAYER
-#if !defined(HAVE_POPEN) && defined(WIN32)
-#include "win32/ptpopen.h"
-#endif
 #include "md5.h"
 #include "extras.h"
 #endif
@@ -56,41 +53,6 @@ int test_oxm		(FILE *);
 
 #define BUFLEN 16384
 
-static int execute_command(char *cmd, char *filename, FILE *t)
-{
-	char line[1024], buf[BUFLEN];
-	FILE *p;
-	int n;
-
-	snprintf(line, 1024, cmd, filename);
-
-#ifdef WIN32
-	/* Note: The _popen function returns an invalid file opaque, if
-	 * used in a Windows program, that will cause the program to hang
-	 * indefinitely. _popen works properly in a Console application.
-	 * To create a Windows application that redirects input and output,
-	 * read the section "Creating a Child Process with Redirected Input
-	 * and Output" in the Win32 SDK. -- Mirko 
-	 */
-	p = popen(line, "rb");
-#else
-	/* Linux popen fails with "rb" */
-	p = popen(line, "r");
-#endif
-
-	if (p == NULL) {
-	    return -1;
-	}
-
-	while ((n = fread(buf, 1, BUFLEN, p)) > 0) {
-	    fwrite(buf, 1, n, t);
-	}
-
-	pclose (p);
-
-	return 0;
-}
-
 static void set_md5sum(HIO_HANDLE *f, unsigned char *digest)
 {
 	unsigned char buf[BUFLEN];
