summaryrefslogtreecommitdiffstats
path: root/loader/wine
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2012-08-12 15:30:21 +0200
committerwm4 <wm4@nowhere>2012-08-16 17:16:33 +0200
commitaebfbbf2bdda8e18beef90c16da97bd335f7d3b0 (patch)
treea7362bf3ef6f2d80a47b2e539a2ea4efe5e2e079 /loader/wine
parentc6b03ffef6250096373c4a81a489dae9fbff9087 (diff)
downloadmpv-aebfbbf2bdda8e18beef90c16da97bd335f7d3b0.tar.bz2
mpv-aebfbbf2bdda8e18beef90c16da97bd335f7d3b0.tar.xz
Remove win32/qt/xanim/real binary codecs loading
Remove the win32 loader - the win32 emulation layer, as well as the code for using DirectShow/DMO/VFW codecs. Remove loading of xanim, QuickTime, and RealMedia codecs. The win32 emulation layer is based on a very old version of wine. Apparently, wine code was copied and hacked until it was somehow able to load a limited collection of binary codecs. It poked around in the code segment of some known binary codecs to disable unsupported win32 API calls to make them work. Example from module.c: for (i=0;i<5;i++) RVA(0x19e842)[i]=0x90; // make_new_region ? for (i=0;i<28;i++) RVA(0x19e86d)[i]=0x90; // call__call_CreateCompatibleDC ? for (i=0;i<5;i++) RVA(0x19e898)[i]=0x90; // jmp_to_call_loadbitmap ? for (i=0;i<9;i++) RVA(0x19e8ac)[i]=0x90; // call__calls_OLE_shit ? for (i=0;i<106;i++) RVA(0x261b10)[i]=0x90; // disable threads Just to show how utterly insane this code is. You wouldn't want even your worst enemy to have to maintain this. In fact, it seems nobody made major changes to this code ever since it was committed. Most formats can be decoded by libavcodecs these days, and the loader couldn't be used on 64 bit platforms anyway. The same is (probably) true for the other binary codecs. General note about how support for win32 codecs could be added back: It's not possible to replace the win32 loader code by using wine as library, because modern wine can not be linked with native Linux programs for certain reasons. It would be possible to to move DirectShow video decoding into a separate process linked with wine, like the CoreAVC-for-Linux patches do. There is also the mplayer-ww fork, which uses the dshownative library to use DirectShow codecs on Windows.
Diffstat (limited to 'loader/wine')
-rw-r--r--loader/wine/avifmt.h240
-rw-r--r--loader/wine/basetsd.h152
-rw-r--r--loader/wine/debugtools.h71
-rw-r--r--loader/wine/driver.h110
-rw-r--r--loader/wine/elfdll.h13
-rw-r--r--loader/wine/heap.h56
-rw-r--r--loader/wine/ldt.h92
-rw-r--r--loader/wine/mmreg.h249
-rw-r--r--loader/wine/module.h149
-rw-r--r--loader/wine/msacm.h935
-rw-r--r--loader/wine/msacmdrv.h203
-rw-r--r--loader/wine/ntdef.h93
-rw-r--r--loader/wine/objbase.h22
-rw-r--r--loader/wine/pe_image.h81
-rw-r--r--loader/wine/poppack.h15
-rw-r--r--loader/wine/pshpack1.h12
-rw-r--r--loader/wine/pshpack2.h12
-rw-r--r--loader/wine/pshpack4.h14
-rw-r--r--loader/wine/pshpack8.h12
-rw-r--r--loader/wine/vfw.h669
-rw-r--r--loader/wine/winbase.h1777
-rw-r--r--loader/wine/windef.h628
-rw-r--r--loader/wine/windows.h30
-rw-r--r--loader/wine/winerror.h1658
-rw-r--r--loader/wine/winestring.h13
-rw-r--r--loader/wine/winnt.h2663
-rw-r--r--loader/wine/winreg.h49
-rw-r--r--loader/wine/winuser.h2922
28 files changed, 0 insertions, 12940 deletions
diff --git a/loader/wine/avifmt.h b/loader/wine/avifmt.h
deleted file mode 100644
index 0fe347539a..0000000000
--- a/loader/wine/avifmt.h
+++ /dev/null
@@ -1,240 +0,0 @@
-/****************************************************************************
- *
- * AVIFMT - AVI file format definitions
- *
- ****************************************************************************/
-#ifndef MPLAYER_AVIFMT_H
-#define MPLAYER_AVIFMT_H
-
-#ifndef MPLAYER_NOAVIFMT_H
-
-#include "windef.h"
-
-#ifndef MPLAYER_MSACM_H
-typedef DWORD FOURCC;
-#endif
-
-
-#ifdef _MSC_VER
-#pragma warning(disable:4200)
-#endif
-
-/* The following is a short description of the AVI file format. Please
- * see the accompanying documentation for a full explanation.
- *
- * An AVI file is the following RIFF form:
- *
- * RIFF('AVI'
- * LIST('hdrl'
- * avih(<MainAVIHeader>)
- * LIST ('strl'
- * strh(<Stream header>)
- * strf(<Stream format>)
- * ... additional header data
- * LIST('movi'
- * { LIST('rec'
- * SubChunk...
- * )
- * | SubChunk } ....
- * )
- * [ <AVIIndex> ]
- * )
- *
- * The main file header specifies how many streams are present. For
- * each one, there must be a stream header chunk and a stream format
- * chunk, enlosed in a 'strl' LIST chunk. The 'strf' chunk contains
- * type-specific format information; for a video stream, this should
- * be a BITMAPINFO structure, including palette. For an audio stream,
- * this should be a WAVEFORMAT (or PCMWAVEFORMAT) structure.
- *
- * The actual data is contained in subchunks within the 'movi' LIST
- * chunk. The first two characters of each data chunk are the
- * stream number with which that data is associated.
- *
- * Some defined chunk types:
- * Video Streams:
- * ##db: RGB DIB bits
- * ##dc: RLE8 compressed DIB bits
- * ##pc: Palette Change
- *
- * Audio Streams:
- * ##wb: waveform audio bytes
- *
- * The grouping into LIST 'rec' chunks implies only that the contents of
- * the chunk should be read into memory at the same time. This
- * grouping is used for files specifically intended to be played from
- * CD-ROM.
- *
- * The index chunk at the end of the file should contain one entry for
- * each data chunk in the file.
- *
- * Limitations for the current software:
- * Only one video stream and one audio stream are allowed.
- * The streams must start at the beginning of the file.
- *
- *
- * To register codec types please obtain a copy of the Multimedia
- * Developer Registration Kit from:
- *
- * Microsoft Corporation
- * Multimedia Systems Group
- * Product Marketing
- * One Microsoft Way
- * Redmond, WA 98052-6399
- *
- */
-
-#ifndef mmioFOURCC
-#define mmioFOURCC( ch0, ch1, ch2, ch3 ) \
- ( (DWORD)(BYTE)(ch0) | ( (DWORD)(BYTE)(ch1) << 8 ) | \
- ( (DWORD)(BYTE)(ch2) << 16 ) | ( (DWORD)(BYTE)(ch3) << 24 ) )
-#endif
-
-/* Macro to make a TWOCC out of two characters */
-#ifndef aviTWOCC
-#define aviTWOCC(ch0, ch1) ((WORD)(BYTE)(ch0) | ((WORD)(BYTE)(ch1) << 8))
-#endif
-
-typedef WORD TWOCC;
-
-/* form types, list types, and chunk types */
-#define formtypeAVI mmioFOURCC('A', 'V', 'I', ' ')
-#define listtypeAVIHEADER mmioFOURCC('h', 'd', 'r', 'l')
-#define ckidAVIMAINHDR mmioFOURCC('a', 'v', 'i', 'h')
-#define listtypeSTREAMHEADER mmioFOURCC('s', 't', 'r', 'l')
-#define ckidSTREAMHEADER mmioFOURCC('s', 't', 'r', 'h')
-#define ckidSTREAMFORMAT mmioFOURCC('s', 't', 'r', 'f')
-#define ckidSTREAMHANDLERDATA mmioFOURCC('s', 't', 'r', 'd')
-#define ckidSTREAMNAME mmioFOURCC('s', 't', 'r', 'n')
-
-#define listtypeAVIMOVIE mmioFOURCC('m', 'o', 'v', 'i')
-#define listtypeAVIRECORD mmioFOURCC('r', 'e', 'c', ' ')
-
-#define ckidAVINEWINDEX mmioFOURCC('i', 'd', 'x', '1')
-
-/*
-** Stream types for the <fccType> field of the stream header.
-*/
-#define streamtypeVIDEO mmioFOURCC('v', 'i', 'd', 's')
-#define streamtypeAUDIO mmioFOURCC('a', 'u', 'd', 's')
-#define streamtypeMIDI mmioFOURCC('m', 'i', 'd', 's')
-#define streamtypeTEXT mmioFOURCC('t', 'x', 't', 's')
-
-/* Basic chunk types */
-#define cktypeDIBbits aviTWOCC('d', 'b')
-#define cktypeDIBcompressed aviTWOCC('d', 'c')
-#define cktypePALchange aviTWOCC('p', 'c')
-#define cktypeWAVEbytes aviTWOCC('w', 'b')
-
-/* Chunk id to use for extra chunks for padding. */
-#define ckidAVIPADDING mmioFOURCC('J', 'U', 'N', 'K')
-
-/*
-** Useful macros
-**
-** Warning: These are nasty macro, and MS C 6.0 compiles some of them
-** incorrectly if optimizations are on. Ack.
-*/
-
-/* Macro to get stream number out of a FOURCC ckid */
-#define FromHex(n) (((n) >= 'A') ? ((n) + 10 - 'A') : ((n) - '0'))
-#define StreamFromFOURCC(fcc) ((WORD) ((FromHex(LOBYTE(LOWORD(fcc))) << 4) + \
- (FromHex(HIBYTE(LOWORD(fcc))))))
-
-/* Macro to get TWOCC chunk type out of a FOURCC ckid */
-#define TWOCCFromFOURCC(fcc) HIWORD(fcc)
-
-/* Macro to make a ckid for a chunk out of a TWOCC and a stream number
-** from 0-255.
-*/
-#define ToHex(n) ((BYTE) (((n) > 9) ? ((n) - 10 + 'A') : ((n) + '0')))
-#define MAKEAVICKID(tcc, stream) \
- MAKELONG((ToHex((stream) & 0x0f) << 8) | \
- (ToHex(((stream) & 0xf0) >> 4)), tcc)
-
-/*
-** Main AVI File Header
-*/
-
-/* flags for use in <dwFlags> in AVIFileHdr */
-#define AVIF_HASINDEX 0x00000010 // Index at end of file?
-#define AVIF_MUSTUSEINDEX 0x00000020
-#define AVIF_ISINTERLEAVED 0x00000100
-#define AVIF_TRUSTCKTYPE 0x00000800 // Use CKType to find key frames?
-#define AVIF_WASCAPTUREFILE 0x00010000
-#define AVIF_COPYRIGHTED 0x00020000
-
-/* The AVI File Header LIST chunk should be padded to this size */
-#define AVI_HEADERSIZE 2048 // size of AVI header list
-
-typedef struct
-{
- DWORD dwMicroSecPerFrame; // frame display rate (or 0L)
- DWORD dwMaxBytesPerSec; // max. transfer rate
- DWORD dwPaddingGranularity; // pad to multiples of this
- // size; normally 2K.
- DWORD dwFlags; // the ever-present flags
- DWORD dwTotalFrames; // # frames in file
- DWORD dwInitialFrames;
- DWORD dwStreams;
- DWORD dwSuggestedBufferSize;
-
- DWORD dwWidth;
- DWORD dwHeight;
-
- DWORD dwReserved[4];
-} MainAVIHeader;
-
-/*
-** Stream header
-*/
-
-#define AVISF_DISABLED 0x00000001
-
-#define AVISF_VIDEO_PALCHANGES 0x00010000
-
-
-typedef struct {
- FOURCC fccType;
- FOURCC fccHandler;
- DWORD dwFlags; /* Contains AVITF_* flags */
- WORD wPriority;
- WORD wLanguage;
- DWORD dwInitialFrames;
- DWORD dwScale;
- DWORD dwRate; /* dwRate / dwScale == samples/second */
- DWORD dwStart;
- DWORD dwLength; /* In units above... */
- DWORD dwSuggestedBufferSize;
- DWORD dwQuality;
- DWORD dwSampleSize;
- RECT rcFrame;
-} AVIStreamHeader;
-
-/* Flags for index */
-#define AVIIF_LIST 0x00000001L // chunk is a 'LIST'
-#define AVIIF_KEYFRAME 0x00000010L // this frame is a key frame.
-
-#define AVIIF_NOTIME 0x00000100L // this frame doesn't take any time
-#define AVIIF_COMPUSE 0x0FFF0000L // these bits are for compressor use
-
-#define FOURCC_RIFF mmioFOURCC('R', 'I', 'F', 'F')
-#define FOURCC_LIST mmioFOURCC('L', 'I', 'S', 'T')
-
-typedef struct
-{
- DWORD ckid;
- DWORD dwFlags;
- DWORD dwChunkOffset; // Position of chunk
- DWORD dwChunkLength; // Length of chunk
-} AVIINDEXENTRY;
-
-#define AVISTREAMREAD_CONVENIENT (-1L)
-
-/*
-** Palette change chunk
-**
-** Used in video streams.
-*/
-#endif /* MPLAYER_NOAVIFMT_H */
-#endif /* MPLAYER_AVIFMT_H */
diff --git a/loader/wine/basetsd.h b/loader/wine/basetsd.h
deleted file mode 100644
index c1baf7fbd1..0000000000
--- a/loader/wine/basetsd.h
+++ /dev/null
@@ -1,152 +0,0 @@
-/*
- * Compilers that uses ILP32, LP64 or P64 type models
- * for both Win32 and Win64 are supported by this file.
- */
-
-/*
- * Modified for use with MPlayer, detailed changelog at
- * http://svn.mplayerhq.hu/mplayer/trunk/
- */
-
-#ifndef MPLAYER_BASETSD_H
-#define MPLAYER_BASETSD_H
-
-#include "config.h"
-
-/*
- * Win32 was easy to implement under Unix since most (all?) 32-bit
- * Unices uses the same type model (ILP32) as Win32, where int, long
- * and pointer are 32-bit.
- *
- * Win64, however, will cause some problems when implemented under Unix.
- * Linux/{Alpha, Sparc64} and most (all?) other 64-bit Unices uses
- * the LP64 type model where int is 32-bit and long and pointer are
- * 64-bit. Win64 on the other hand uses the P64 (sometimes called LLP64)
- * type model where int and long are 32 bit and pointer is 64-bit.
- */
-
-/* Type model indepent typedefs */
-
-#ifndef __INTEL_COMPILER
-
-#ifndef __int8
-typedef char __int8;
-#endif
-#ifndef __uint8
-typedef unsigned char __uint8;
-#endif
-
-#ifndef __int16
-typedef short __int16;
-#endif
-#ifndef __uint16
-typedef unsigned short __uint16;
-#endif
-
-#ifndef __int32
-typedef int __int32;
-#endif
-#ifndef __uint32
-typedef unsigned int __uint32;
-#endif
-
-#ifndef __int64
-typedef long long __int64;
-#endif
-#ifndef __uint64
-typedef unsigned long long __uint64;
-#endif
-
-#else
-
-typedef unsigned __int8 __uint8;
-typedef unsigned __int16 __uint16;
-typedef unsigned __int32 __uint32;
-typedef unsigned __int64 __uint64;
-
-#endif /* __INTEL_COMPILER */
-
-/* Always signed and 32 bit wide */
-
-typedef __int32 LONG32;
-//typedef __int32 INT32;
-
-typedef LONG32 *PLONG32;
-//typedef INT32 *PINT32;
-
-/* Always unsigned and 32 bit wide */
-
-typedef __uint32 ULONG32;
-typedef __uint32 DWORD32;
-typedef __uint32 UINT32;
-
-typedef ULONG32 *PULONG32;
-typedef DWORD32 *PDWORD32;
-typedef UINT32 *PUINT32;
-
-/* Always signed and 64 bit wide */
-
-typedef __int64 LONG64;
-typedef __int64 INT64;
-
-typedef LONG64 *PLONG64;
-typedef INT64 *PINT64;
-
-/* Always unsigned and 64 bit wide */
-
-typedef __uint64 ULONG64;
-typedef __uint64 DWORD64;
-typedef __uint64 UINT64;
-
-typedef ULONG64 *PULONG64;
-typedef DWORD64 *PDWORD64;
-typedef UINT64 *PUINT64;
-
-/* Win32 or Win64 dependent typedef/defines. */
-
-#ifdef _WIN64
-
-typedef __int64 INT_PTR, *PINT_PTR;
-typedef __uint64 UINT_PTR, *PUINT_PTR;
-
-#define MAXINT_PTR 0x7fffffffffffffff
-#define MININT_PTR 0x8000000000000000
-#define MAXUINT_PTR 0xffffffffffffffff
-
-typedef __int32 HALF_PTR, *PHALF_PTR;
-typedef __int32 UHALF_PTR, *PUHALF_PTR;
-
-#define MAXHALF_PTR 0x7fffffff
-#define MINHALF_PTR 0x80000000
-#define MAXUHALF_PTR 0xffffffff
-
-typedef __int64 LONG_PTR, *PLONG_PTR;
-typedef __uint64 ULONG_PTR, *PULONG_PTR;
-typedef __uint64 DWORD_PTR, *PDWORD_PTR;
-
-#else /* FIXME: defined(_WIN32) */
-
-typedef __int32 INT_PTR, *PINT_PTR;
-typedef __uint32 UINT_PTR, *PUINT_PTR;
-
-#define MAXINT_PTR 0x7fffffff
-#define MININT_PTR 0x80000000
-#define MAXUINT_PTR 0xffffffff
-
-typedef __int16 HALF_PTR, *PHALF_PTR;
-typedef __uint16 UHALF_PTR, *PUHALF_PTR;
-
-#define MAXUHALF_PTR 0xffff
-#define MAXHALF_PTR 0x7fff
-#define MINHALF_PTR 0x8000
-
-typedef __int32 LONG_PTR, *PLONG_PTR;
-typedef __uint32 ULONG_PTR, *PULONG_PTR;
-typedef __uint32 DWORD_PTR, *PDWORD_PTR;
-
-#endif /* defined(_WIN64) || defined(_WIN32) */
-
-typedef INT_PTR SSIZE_T, *PSSIZE_T;
-typedef UINT_PTR SIZE_T, *PSIZE_T;
-
-#endif /* MPLAYER_BASETSD_H */
diff --git a/loader/wine/debugtools.h b/loader/wine/debugtools.h
deleted file mode 100644
index aaefdb7dd6..0000000000
--- a/loader/wine/debugtools.h
+++ /dev/null
@@ -1,71 +0,0 @@
-#ifndef MPLAYER_DEBUGTOOLS_H
-#define MPLAYER_DEBUGTOOLS_H
-
-#include <stdarg.h>
-#include "config.h"
-#include "windef.h"
-
-struct GUID;
-
-/* Internal definitions (do not use these directly) */
-
-enum DEBUG_CLASS { DBCL_FIXME, DBCL_ERR, DBCL_WARN, DBCL_TRACE, DBCL_COUNT };
-
-#ifndef NO_TRACE_MSGS
-# define GET_DEBUGGING_trace(dbch) ((dbch)[0] & (1 << DBCL_TRACE))
-#else
-# define GET_DEBUGGING_trace(dbch) 0
-#endif
-
-#ifndef NO_DEBUG_MSGS
-# define GET_DEBUGGING_warn(dbch) ((dbch)[0] & (1 << DBCL_WARN))
-# define GET_DEBUGGING_fixme(dbch) ((dbch)[0] & (1 << DBCL_FIXME))
-#else
-# define GET_DEBUGGING_warn(dbch) 0
-# define GET_DEBUGGING_fixme(dbch) 0
-#endif
-
-/* define error macro regardless of what is configured */
-#define GET_DEBUGGING_err(dbch) ((dbch)[0] & (1 << DBCL_ERR))
-
-#define GET_DEBUGGING(dbcl,dbch) GET_DEBUGGING_##dbcl(dbch)
-#define SET_DEBUGGING(dbcl,dbch,on) \
- ((on) ? ((dbch)[0] |= 1 << (dbcl)) : ((dbch)[0] &= ~(1 << (dbcl))))
-
-/* Exported definitions and macros */
-
-/* These function return a printable version of a string, including
- quotes. The string will be valid for some time, but not indefinitely
- as strings are re-used. */
-LPCSTR debugstr_an( LPCSTR s, int n );
-LPCSTR debugstr_wn( LPCWSTR s, int n );
-LPCSTR debugres_a( LPCSTR res );
-LPCSTR debugres_w( LPCWSTR res );
-LPCSTR debugstr_guid( const struct GUID *id );
-LPCSTR debugstr_hex_dump( const void *ptr, int len );
-int dbg_header_err( const char *dbg_channel, const char *func );
-int dbg_header_warn( const char *dbg_channel, const char *func );
-int dbg_header_fixme( const char *dbg_channel, const char *func );
-int dbg_header_trace( const char *dbg_channel, const char *func );
-int dbg_vprintf( const char *format, va_list args );
-
-static inline LPCSTR debugstr_a( LPCSTR s ) { return debugstr_an( s, 80 ); }
-static inline LPCSTR debugstr_w( LPCWSTR s ) { return debugstr_wn( s, 80 ); }
-
-#define TRACE_(X) TRACE
-#define WARN_(X) TRACE
-#define WARN TRACE
-#define ERR_(X) printf
-#define ERR printf
-#define FIXME_(X) TRACE
-#define FIXME TRACE
-
-#define TRACE_ON(X) 1
-#define ERR_ON(X) 1
-
-#define DECLARE_DEBUG_CHANNEL(ch) \
- extern char dbch_##ch[];
-#define DEFAULT_DEBUG_CHANNEL(ch) \
- extern char dbch_##ch[]; static char * const __dbch_default = dbch_##ch;
-
-#endif /* MPLAYER_DEBUGTOOLS_H */
diff --git a/loader/wine/driver.h b/loader/wine/driver.h
deleted file mode 100644
index e10934bc28..0000000000
--- a/loader/wine/driver.h
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * Drivers definitions
- */
-
-#ifndef MPLAYER_DRIVER_H
-#define MPLAYER_DRIVER_H
-
-#include "windef.h"
-
-#define MMSYSERR_BASE 0
-
-#define MMSYSERR_NOERROR 0 /* no error */
-#define MMSYSERR_ERROR (MMSYSERR_BASE + 1) /* unspecified error */
-#define MMSYSERR_BADDEVICEID (MMSYSERR_BASE + 2) /* device ID out of range */
-#define MMSYSERR_NOTENABLED (MMSYSERR_BASE + 3) /* driver failed enable */
-#define MMSYSERR_ALLOCATED (MMSYSERR_BASE + 4) /* device already allocated */
-#define MMSYSERR_INVALHANDLE (MMSYSERR_BASE + 5) /* device handle is invalid */
-#define MMSYSERR_NODRIVER (MMSYSERR_BASE + 6) /* no device driver present */
-#define MMSYSERR_NOMEM (MMSYSERR_BASE + 7) /* memory allocation error */
-#define MMSYSERR_NOTSUPPORTED (MMSYSERR_BASE + 8) /* function isn't supported */
-#define MMSYSERR_BADERRNUM (MMSYSERR_BASE + 9) /* error value out of range */
-#define MMSYSERR_INVALFLAG (MMSYSERR_BASE + 10) /* invalid flag passed */
-#define MMSYSERR_INVALPARAM (MMSYSERR_BASE + 11) /* invalid parameter passed */
-#define MMSYSERR_LASTERROR (MMSYSERR_BASE + 11) /* last error in range */
-
-#define DRV_LOAD 0x0001
-#define DRV_ENABLE 0x0002
-#define DRV_OPEN 0x0003
-#define DRV_CLOSE 0x0004
-#define DRV_DISABLE 0x0005
-#define DRV_FREE 0x0006
-#define DRV_CONFIGURE 0x0007
-#define DRV_QUERYCONFIGURE 0x0008
-#define DRV_INSTALL 0x0009
-#define DRV_REMOVE 0x000A
-#define DRV_EXITSESSION 0x000B
-#define DRV_EXITAPPLICATION 0x000C
-#define DRV_POWER 0x000F
-
-#define DRV_RESERVED 0x0800
-#define DRV_USER 0x4000
-
-#define DRVCNF_CANCEL 0x0000
-#define DRVCNF_OK 0x0001
-#define DRVCNF_RESTART 0x0002
-
-#define DRVEA_NORMALEXIT 0x0001
-#define DRVEA_ABNORMALEXIT 0x0002
-
-#define DRV_SUCCESS 0x0001
-#define DRV_FAILURE 0x0000
-
-#define GND_FIRSTINSTANCEONLY 0x00000001
-
-#define GND_FORWARD 0x00000000
-#define GND_REVERSE 0x00000002
-
-typedef struct {
- DWORD dwDCISize;
- LPCSTR lpszDCISectionName;
- LPCSTR lpszDCIAliasName;
-} DRVCONFIGINFO16, *LPDRVCONFIGINFO16;
-
-typedef struct {
- DWORD dwDCISize;
- LPCWSTR lpszDCISectionName;
- LPCWSTR lpszDCIAliasName;
-} DRVCONFIGINFO, *LPDRVCONFIGINFO;
-
-
-/* GetDriverInfo16 references this structure, so this a struct defined
- * in the Win16 API.
- * GetDriverInfo has been deprecated in Win32.
- */
-typedef struct
-{
- UINT16 length;
- HDRVR16 hDriver;
- HINSTANCE16 hModule;
- CHAR szAliasName[128];
-} DRIVERINFOSTRUCT16, *LPDRIVERINFOSTRUCT16;
-
-LRESULT WINAPI DefDriverProc16(DWORD dwDevID, HDRVR16 hDriv, UINT16 wMsg,
- LPARAM dwParam1, LPARAM dwParam2);
-LRESULT WINAPI DefDriverProc(DWORD dwDriverIdentifier, HDRVR hdrvr,
- UINT Msg, LPARAM lParam1, LPARAM lParam2);
-HDRVR16 WINAPI OpenDriver16(LPCSTR szDriverName, LPCSTR szSectionName,
- LPARAM lParam2);
-HDRVR WINAPI OpenDriverA(LPCSTR szDriverName, LPCSTR szSectionName,
- LPARAM lParam2);
-HDRVR WINAPI OpenDriverW(LPCWSTR szDriverName, LPCWSTR szSectionName,
- LPARAM lParam2);
-#define OpenDriver WINELIB_NAME_AW(OpenDriver)
-LRESULT WINAPI CloseDriver16(HDRVR16 hDriver, LPARAM lParam1, LPARAM lParam2);
-LRESULT WINAPI CloseDriver(HDRVR hDriver, LPARAM lParam1, LPARAM lParam2);
-LRESULT WINAPI SendDriverMessage16( HDRVR16 hDriver, UINT16 message,
- LPARAM lParam1, LPARAM lParam2 );
-LRESULT WINAPI SendDriverMessage( HDRVR hDriver, UINT message,
- LPARAM lParam1, LPARAM lParam2 );
-HMODULE16 WINAPI GetDriverModuleHandle16(HDRVR16 hDriver);
-HMODULE WINAPI GetDriverModuleHandle(HDRVR hDriver);
-
-DWORD WINAPI GetDriverFlags( HDRVR hDriver );
-/* this call (GetDriverFlags) is not documented, nor the flags returned.
- * here are Wine only definitions
- */
-#define WINE_GDF_EXIST 0x80000000
-#define WINE_GDF_16BIT 0x10000000
-
-#endif /* MPLAYER_DRIVER_H */
diff --git a/loader/wine/elfdll.h b/loader/wine/elfdll.h
deleted file mode 100644
index e93ae10429..0000000000
--- a/loader/wine/elfdll.h
+++ /dev/null
@@ -1,13 +0,0 @@
-#ifndef MPLAYER_ELFDLL_H
-#define MPLAYER_ELFDLL_H
-
-#include "module.h"
-#include "windef.h"
-
-WINE_MODREF *ELFDLL_LoadLibraryExA(LPCSTR libname, DWORD flags);
-HINSTANCE16 ELFDLL_LoadModule16(LPCSTR libname);
-void ELFDLL_UnloadLibrary(WINE_MODREF *wm);
-
-void *ELFDLL_dlopen(const char *libname, int flags);
-
-#endif /* MPLAYER_ELFDLL_H */
diff --git a/loader/wine/heap.h b/loader/wine/heap.h
deleted file mode 100644
index 477f0e1acc..0000000000
--- a/loader/wine/heap.h
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * Win32 heap definitions
- *
- * Copyright 1996 Alexandre Julliard
- */
-
-#ifndef MPLAYER_HEAP_H
-#define MPLAYER_HEAP_H
-
-#include "config.h"
-
-#include "winbase.h"
-
-extern HANDLE SystemHeap;
-extern HANDLE SegptrHeap;
-
-int HEAP_IsInsideHeap( HANDLE heap, DWORD flags, LPCVOID ptr );
-SEGPTR HEAP_GetSegptr( HANDLE heap, DWORD flags, LPCVOID ptr );
-LPSTR HEAP_strdupA( HANDLE heap, DWORD flags, LPCSTR str );
-LPWSTR HEAP_strdupW( HANDLE heap, DWORD flags, LPCWSTR str );
-LPWSTR HEAP_strdupAtoW( HANDLE heap, DWORD flags, LPCSTR str );
-LPSTR HEAP_strdupWtoA( HANDLE heap, DWORD flags, LPCWSTR str );
-
-/* SEGPTR helper macros */
-
-#define SEGPTR_ALLOC(size) \
- (HeapAlloc( SegptrHeap, 0, (size) ))
-#define SEGPTR_NEW(type) \
- ((type *)HeapAlloc( SegptrHeap, 0, sizeof(type) ))
-#define SEGPTR_STRDUP(str) \
- (HIWORD(str) ? HEAP_strdupA( SegptrHeap, 0, (str) ) : (LPSTR)(str))
-#define SEGPTR_STRDUP_WtoA(str) \
- (HIWORD(str) ? HEAP_strdupWtoA( SegptrHeap, 0, (str) ) : (LPSTR)(str))
- /* define an inline function, a macro won't do */
-static inline SEGPTR WINE_UNUSED SEGPTR_Get(LPCVOID ptr) {
- return HIWORD(ptr) ? HEAP_GetSegptr( SegptrHeap, 0, ptr ) : (SEGPTR)ptr;
-}
-#define SEGPTR_GET(ptr) SEGPTR_Get(ptr)
-#define SEGPTR_FREE(ptr) \
- (HIWORD(ptr) ? HeapFree( SegptrHeap, 0, (ptr) ) : 0)
-
-/* system heap private data */
-/* you must lock the system heap before using this structure */
-typedef struct
-{
- void *gdi; /* GDI heap */
- void *user; /* USER handle table */
- void *cursor; /* cursor information */
- void *queue; /* message queues descriptor */
- void *win; /* windows descriptor */
- void *root; /* X11 root window */
-} SYSTEM_HEAP_DESCR;
-
-extern SYSTEM_HEAP_DESCR *SystemHeapDescr;
-
-#endif /* MPLAYER_HEAP_H */
diff --git a/loader/wine/ldt.h b/loader/wine/ldt.h
deleted file mode 100644
index e607085f33..0000000000
--- a/loader/wine/ldt.h
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * LDT copy
- *
- * Copyright 1995 Alexandre Julliard
- */
-
-#ifndef MPLAYER_LDT_H
-#define MPLAYER_LDT_H
-
-#include "windef.h"
-enum seg_type
-{
- SEGMENT_DATA = 0,
- SEGMENT_STACK = 1,
- SEGMENT_CODE = 2
-};
-
- /* This structure represents a real LDT entry. */
- /* It is used by get_ldt_entry() and set_ldt_entry(). */
-typedef struct
-{
- unsigned long base; /* base address */
- unsigned long limit; /* segment limit (in pages or bytes) */
- int seg_32bit; /* is segment 32-bit? */
- int read_only; /* is segment read-only? */
- int limit_in_pages; /* is the limit in pages or bytes? */
- enum seg_type type; /* segment type */
-} ldt_entry;
-void LDT_BytesToEntry( const unsigned long *buffer, ldt_entry *content );
-void LDT_EntryToBytes( unsigned long *buffer, const ldt_entry *content );
-int LDT_GetEntry( int entry, ldt_entry *content );
-int LDT_SetEntry( int entry, const ldt_entry *content );
-void LDT_Print( int start, int length );
-
-
- /* This structure is used to build the local copy of the LDT. */
-typedef struct
-{
- unsigned long base; /* base address or 0 if entry is free */
- unsigned long limit; /* limit in bytes or 0 if entry is free */
-} ldt_copy_entry;
-
-#define LDT_SIZE 8192
-
-extern ldt_copy_entry ldt_copy[LDT_SIZE];
-
-#define AHSHIFT 3 /* don't change! */
-#define AHINCR (1 << AHSHIFT)
-
-#define SELECTOR_TO_ENTRY(sel) (((int)(sel) & 0xffff) >> AHSHIFT)
-#define ENTRY_TO_SELECTOR(i) ((i) ? (((int)(i) << AHSHIFT) | 7) : 0)
-#define IS_LDT_ENTRY_FREE(i) (!(ldt_flags_copy[(i)] & LDT_FLAGS_ALLOCATED))
-#define IS_SELECTOR_FREE(sel) (IS_LDT_ENTRY_FREE(SELECTOR_TO_ENTRY(sel)))
-#define GET_SEL_BASE(sel) (ldt_copy[SELECTOR_TO_ENTRY(sel)].base)
-#define GET_SEL_LIMIT(sel) (ldt_copy[SELECTOR_TO_ENTRY(sel)].limit)
-
-/* Convert a segmented ptr (16:16) to a linear (32) pointer */
-
-#define PTR_SEG_OFF_TO_LIN(seg,off) \
- ((void*)(GET_SEL_BASE(seg) + (unsigned int)(off)))
-#define PTR_SEG_TO_LIN(ptr) \
- PTR_SEG_OFF_TO_LIN(SELECTOROF(ptr),OFFSETOF(ptr))
-#define PTR_SEG_OFF_TO_SEGPTR(seg,off) \
- ((SEGPTR)MAKELONG(off,seg))
-#define PTR_SEG_OFF_TO_HUGEPTR(seg,off) \
- PTR_SEG_OFF_TO_SEGPTR( (seg) + (HIWORD(off) << AHSHIFT), LOWORD(off) )
-
-#define W32S_APPLICATION() (PROCESS_Current()->flags & PDB32_WIN32S_PROC)
-#define W32S_OFFSET 0x10000
-#define W32S_APP2WINE(addr, offset) ((addr)? (DWORD)(addr) + (DWORD)(offset) : 0)
-#define W32S_WINE2APP(addr, offset) ((addr)? (DWORD)(addr) - (DWORD)(offset) : 0)
-
-extern unsigned char ldt_flags_copy[LDT_SIZE];
-
-#define LDT_FLAGS_TYPE 0x03 /* Mask for segment type */
-#define LDT_FLAGS_READONLY 0x04 /* Segment is read-only (data) */
-#define LDT_FLAGS_EXECONLY 0x04 /* Segment is execute-only (code) */
-#define LDT_FLAGS_32BIT 0x08 /* Segment is 32-bit (code or stack) */
-#define LDT_FLAGS_BIG 0x10 /* Segment is big (limit is in pages) */
-#define LDT_FLAGS_ALLOCATED 0x80 /* Segment is allocated (no longer free) */
-
-#define GET_SEL_FLAGS(sel) (ldt_flags_copy[SELECTOR_TO_ENTRY(sel)])
-
-#define FIRST_LDT_ENTRY_TO_ALLOC 17
-
-/* Determine if sel is a system selector (i.e. not managed by Wine) */
-#define IS_SELECTOR_SYSTEM(sel) \
- (!((sel) & 4) || (SELECTOR_TO_ENTRY(sel) < FIRST_LDT_ENTRY_TO_ALLOC))
-#define IS_SELECTOR_32BIT(sel) \
- (IS_SELECTOR_SYSTEM(sel) || (GET_SEL_FLAGS(sel) & LDT_FLAGS_32BIT))
-
-#endif /* MPLAYER_LDT_H */
diff --git a/loader/wine/mmreg.h b/loader/wine/mmreg.h
deleted file mode 100644
index 2ed01a215e..0000000000
--- a/loader/wine/mmreg.h
+++ /dev/null
@@ -1,249 +0,0 @@
-/*
- * mmreg.h - Declarations for ???
- *
- * Modified for use with MPlayer, detailed changelog at
- * http://svn.mplayerhq.hu/mplayer/trunk/
- *
- */
-
-#ifndef MPLAYER_MMREG_H
-#define MPLAYER_MMREG_H
-
-/***********************************************************************
- * Defines/Enums
- */
-
-#ifndef ACM_WAVEFILTER
-#define ACM_WAVEFILTER
-
-#include "windef.h"
-
-#define WAVE_FILTER_UNKNOWN 0x0000
-#define WAVE_FILTER_DEVELOPMENT 0xFFFF
-
-typedef struct __attribute__((__packed__)) WAVEFILTER {
- DWORD cbStruct;
- DWORD dwFilterTag;
- DWORD fdwFilter;
- DWORD dwReserved[5];
-} WAVEFILTER, *PWAVEFILTER, *NPWAVEFILTER, *LPWAVEFILTER;
-#endif /* ACM_WAVEFILTER */
-
-#ifndef WAVE_FILTER_VOLUME
-#define WAVE_FILTER_VOLUME 0x0001
-
-typedef struct __attribute__((__packed__)) WAVEFILTER_VOLUME {
- WAVEFILTER wfltr;
- DWORD dwVolume;
-} VOLUMEWAVEFILTER, *PVOLUMEWAVEFILTER, *NPVOLUMEWAVEFILTER, *LPVOLUMEWAVEFILTER;
-#endif /* WAVE_FILTER_VOLUME */
-
-#ifndef WAVE_FILTER_ECHO
-#define WAVE_FILTER_ECHO 0x0002
-
-typedef struct __attribu