From 1dff0502b0dae4abcc0d5d1113cffee28c330348 Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Sat, 22 May 2021 01:06:33 +0200 Subject: [PATCH] - moved libvpx and libsmackerdec to more fitting places, plus some project cleanup. --- CMakeLists.txt | 2 +- .../windows/vpx}/include/vpx/vp8.h | 0 .../windows/vpx}/include/vpx/vp8dx.h | 0 .../windows/vpx}/include/vpx/vpx_codec.h | 0 .../windows/vpx}/include/vpx/vpx_decoder.h | 0 .../vpx}/include/vpx/vpx_frame_buffer.h | 0 .../windows/vpx}/include/vpx/vpx_image.h | 0 .../windows/vpx}/include/vpx/vpx_integer.h | 0 .../windows/vpx}/lib/32/libcompat-to-msvc.lib | Bin .../windows/vpx}/lib/32/libvpx.lib | Bin .../windows/vpx}/lib/64/libcompat-to-msvc.lib | Bin .../windows/vpx}/lib/64/libvpx.lib | Bin .../windows/vpx}/lib/instructions.txt | 88 +- .../windows/vpx}/src/_dbg_LOAD_IMAGE.h | 0 .../windows/vpx}/src/_dbg_common.h | 0 .../windows/vpx}/src/backtrace.c | 0 .../windows/vpx}/src/compat-to-msvc/Makefile | 44 +- .../vpx}/src/compat-to-msvc/dll_dependency.S | 176 +-- .../vpx}/src/compat-to-msvc/dll_math.c | 1144 ++++++++--------- .../windows/vpx}/src/compat-to-msvc/io_math.c | 78 +- .../vpx}/src/compat-to-msvc/vsnprintf.c | 38 +- platform/Windows/src/dxlibs/Makefile | 48 - platform/Windows/src/dxlibs/d3d8.def | 5 - platform/Windows/src/dxlibs/d3dx8d.def | 155 --- platform/Windows/src/dxlibs/d3dxof.def | 3 - platform/Windows/src/dxlibs/ddraw.def | 15 - platform/Windows/src/dxlibs/dinput.c | 533 -------- platform/Windows/src/dxlibs/dinput.def | 6 - platform/Windows/src/dxlibs/dinput8.def | 4 - platform/Windows/src/dxlibs/dplayx.def | 8 - platform/Windows/src/dxlibs/dpnaddr.def | 3 - platform/Windows/src/dxlibs/dpnet.def | 3 - platform/Windows/src/dxlibs/dpnlobby.def | 3 - platform/Windows/src/dxlibs/dpvoice.def | 3 - platform/Windows/src/dxlibs/dsetup.def | 18 - platform/Windows/src/dxlibs/dsound.def | 13 - platform/Windows/src/dxlibs/dxguid.c | 580 --------- platform/Windows/src/dxlibs/dxguid_sdl.c | 9 - platform/Windows/src/dxlibs/readme.txt | 8 - source/CMakeLists.txt | 113 +- .../thirdparty}/libsmackerdec/COPYING | 0 .../libsmackerdec/include/BitReader.h | 0 .../libsmackerdec/include/FileStream.h | 0 .../libsmackerdec/include/HuffmanVLC.h | 0 .../libsmackerdec/include/LogError.h | 0 .../libsmackerdec/include/SmackerDecoder.h | 0 .../libsmackerdec/src/BitReader.cpp | 0 .../libsmackerdec/src/FileStream.cpp | 0 .../libsmackerdec/src/HuffmanVLC.cpp | 0 .../libsmackerdec/src/LogError.cpp | 0 .../libsmackerdec/src/SmackerDecoder.cpp | 0 51 files changed, 810 insertions(+), 2290 deletions(-) rename {platform/Windows => bin/windows/vpx}/include/vpx/vp8.h (100%) rename {platform/Windows => bin/windows/vpx}/include/vpx/vp8dx.h (100%) rename {platform/Windows => bin/windows/vpx}/include/vpx/vpx_codec.h (100%) rename {platform/Windows => bin/windows/vpx}/include/vpx/vpx_decoder.h (100%) rename {platform/Windows => bin/windows/vpx}/include/vpx/vpx_frame_buffer.h (100%) rename {platform/Windows => bin/windows/vpx}/include/vpx/vpx_image.h (100%) rename {platform/Windows => bin/windows/vpx}/include/vpx/vpx_integer.h (100%) rename {platform/Windows => bin/windows/vpx}/lib/32/libcompat-to-msvc.lib (100%) rename {platform/Windows => bin/windows/vpx}/lib/32/libvpx.lib (100%) rename {platform/Windows => bin/windows/vpx}/lib/64/libcompat-to-msvc.lib (100%) rename {platform/Windows => bin/windows/vpx}/lib/64/libvpx.lib (100%) rename {platform/Windows => bin/windows/vpx}/lib/instructions.txt (98%) rename {platform/Windows => bin/windows/vpx}/src/_dbg_LOAD_IMAGE.h (100%) rename {platform/Windows => bin/windows/vpx}/src/_dbg_common.h (100%) rename {platform/Windows => bin/windows/vpx}/src/backtrace.c (100%) rename {platform/Windows => bin/windows/vpx}/src/compat-to-msvc/Makefile (92%) rename {platform/Windows => bin/windows/vpx}/src/compat-to-msvc/dll_dependency.S (94%) rename {platform/Windows => bin/windows/vpx}/src/compat-to-msvc/dll_math.c (96%) rename {platform/Windows => bin/windows/vpx}/src/compat-to-msvc/io_math.c (94%) rename {platform/Windows => bin/windows/vpx}/src/compat-to-msvc/vsnprintf.c (97%) delete mode 100644 platform/Windows/src/dxlibs/Makefile delete mode 100644 platform/Windows/src/dxlibs/d3d8.def delete mode 100644 platform/Windows/src/dxlibs/d3dx8d.def delete mode 100644 platform/Windows/src/dxlibs/d3dxof.def delete mode 100644 platform/Windows/src/dxlibs/ddraw.def delete mode 100644 platform/Windows/src/dxlibs/dinput.c delete mode 100644 platform/Windows/src/dxlibs/dinput.def delete mode 100644 platform/Windows/src/dxlibs/dinput8.def delete mode 100644 platform/Windows/src/dxlibs/dplayx.def delete mode 100644 platform/Windows/src/dxlibs/dpnaddr.def delete mode 100644 platform/Windows/src/dxlibs/dpnet.def delete mode 100644 platform/Windows/src/dxlibs/dpnlobby.def delete mode 100644 platform/Windows/src/dxlibs/dpvoice.def delete mode 100644 platform/Windows/src/dxlibs/dsetup.def delete mode 100644 platform/Windows/src/dxlibs/dsound.def delete mode 100644 platform/Windows/src/dxlibs/dxguid.c delete mode 100644 platform/Windows/src/dxlibs/dxguid_sdl.c delete mode 100644 platform/Windows/src/dxlibs/readme.txt rename source/{ => common/thirdparty}/libsmackerdec/COPYING (100%) rename source/{ => common/thirdparty}/libsmackerdec/include/BitReader.h (100%) rename source/{ => common/thirdparty}/libsmackerdec/include/FileStream.h (100%) rename source/{ => common/thirdparty}/libsmackerdec/include/HuffmanVLC.h (100%) rename source/{ => common/thirdparty}/libsmackerdec/include/LogError.h (100%) rename source/{ => common/thirdparty}/libsmackerdec/include/SmackerDecoder.h (100%) rename source/{ => common/thirdparty}/libsmackerdec/src/BitReader.cpp (100%) rename source/{ => common/thirdparty}/libsmackerdec/src/FileStream.cpp (100%) rename source/{ => common/thirdparty}/libsmackerdec/src/HuffmanVLC.cpp (100%) rename source/{ => common/thirdparty}/libsmackerdec/src/LogError.cpp (100%) rename source/{ => common/thirdparty}/libsmackerdec/src/SmackerDecoder.cpp (100%) diff --git a/CMakeLists.txt b/CMakeLists.txt index 873a93a72..69016ca66 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -151,7 +151,7 @@ endif() # Fast math flags, required by some subprojects set( ZD_FASTMATH_FLAG "" ) -if( ZD_CMAKE_COMPILER_IS_GNUCXX_COMPATIBLE ) +if( DEM_CMAKE_COMPILER_IS_GNUCXX_COMPATIBLE ) set( ZD_FASTMATH_FLAG "-ffast-math -ffp-contract=fast" ) elseif( MSVC ) set( ZD_FASTMATH_FLAG "/fp:fast" ) diff --git a/platform/Windows/include/vpx/vp8.h b/bin/windows/vpx/include/vpx/vp8.h similarity index 100% rename from platform/Windows/include/vpx/vp8.h rename to bin/windows/vpx/include/vpx/vp8.h diff --git a/platform/Windows/include/vpx/vp8dx.h b/bin/windows/vpx/include/vpx/vp8dx.h similarity index 100% rename from platform/Windows/include/vpx/vp8dx.h rename to bin/windows/vpx/include/vpx/vp8dx.h diff --git a/platform/Windows/include/vpx/vpx_codec.h b/bin/windows/vpx/include/vpx/vpx_codec.h similarity index 100% rename from platform/Windows/include/vpx/vpx_codec.h rename to bin/windows/vpx/include/vpx/vpx_codec.h diff --git a/platform/Windows/include/vpx/vpx_decoder.h b/bin/windows/vpx/include/vpx/vpx_decoder.h similarity index 100% rename from platform/Windows/include/vpx/vpx_decoder.h rename to bin/windows/vpx/include/vpx/vpx_decoder.h diff --git a/platform/Windows/include/vpx/vpx_frame_buffer.h b/bin/windows/vpx/include/vpx/vpx_frame_buffer.h similarity index 100% rename from platform/Windows/include/vpx/vpx_frame_buffer.h rename to bin/windows/vpx/include/vpx/vpx_frame_buffer.h diff --git a/platform/Windows/include/vpx/vpx_image.h b/bin/windows/vpx/include/vpx/vpx_image.h similarity index 100% rename from platform/Windows/include/vpx/vpx_image.h rename to bin/windows/vpx/include/vpx/vpx_image.h diff --git a/platform/Windows/include/vpx/vpx_integer.h b/bin/windows/vpx/include/vpx/vpx_integer.h similarity index 100% rename from platform/Windows/include/vpx/vpx_integer.h rename to bin/windows/vpx/include/vpx/vpx_integer.h diff --git a/platform/Windows/lib/32/libcompat-to-msvc.lib b/bin/windows/vpx/lib/32/libcompat-to-msvc.lib similarity index 100% rename from platform/Windows/lib/32/libcompat-to-msvc.lib rename to bin/windows/vpx/lib/32/libcompat-to-msvc.lib diff --git a/platform/Windows/lib/32/libvpx.lib b/bin/windows/vpx/lib/32/libvpx.lib similarity index 100% rename from platform/Windows/lib/32/libvpx.lib rename to bin/windows/vpx/lib/32/libvpx.lib diff --git a/platform/Windows/lib/64/libcompat-to-msvc.lib b/bin/windows/vpx/lib/64/libcompat-to-msvc.lib similarity index 100% rename from platform/Windows/lib/64/libcompat-to-msvc.lib rename to bin/windows/vpx/lib/64/libcompat-to-msvc.lib diff --git a/platform/Windows/lib/64/libvpx.lib b/bin/windows/vpx/lib/64/libvpx.lib similarity index 100% rename from platform/Windows/lib/64/libvpx.lib rename to bin/windows/vpx/lib/64/libvpx.lib diff --git a/platform/Windows/lib/instructions.txt b/bin/windows/vpx/lib/instructions.txt similarity index 98% rename from platform/Windows/lib/instructions.txt rename to bin/windows/vpx/lib/instructions.txt index 4ab9340ed..a028c7595 100644 --- a/platform/Windows/lib/instructions.txt +++ b/bin/windows/vpx/lib/instructions.txt @@ -1,44 +1,44 @@ -Instructions for Building EDuke32's Library Dependencies Targeting Win32 and Win64 -================================================================================== - -First, follow these instructions: http://wiki.eduke32.com/wiki/Building_EDuke32_on_Windows - -Download the latest sources from the link provided. - -The build output listed as "Desired Results" is what EDuke32 needs to function. - -The desired results for each library in some cases may need to be installed to the compiler. "x depends on the results of y to compile" means that the build output of x must be added to the compiler in this way. Copy files listed in each category to the appropriate destinations. Unless otherwise noted, do NOT copy the ".dll.a" file or else the final product may depend on external DLLs (which you may actually want). - -For MinGW (MinGW32): -from the compiler root (ex. C:/MinGW/) - * headers: include/ - * libraries: lib/ - -For MinGW-w64: -from the compiler root (ex. C:/MinGW-w64/mingw32-dw2/) - * headers: -w64-mingw32/include/ - * libraries: -w64-mingw32/lib/ - -Binaries (if mentioned) need to be present with the finished EDuke32 executables. They are not needed during compilation. - -NB: Text formatted as code blocks are commands to be pasted into the Windows command prompt. -http://wiki.eduke32.com/wiki/Working_with_the_Windows_Command_Prompt - -[//]: # (Plain text readers: This refers to lines beginning with exactly four spaces.) - - -libvpx ------- -### Prerequisites ### -Download the binary of yasm (http://yasm.tortall.net/) for your host system architecture. Both builds target both architectures. -The build environment needs pr.exe (https://mingw-lib.googlecode.com/files/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2). -### Download ### - * Instructions: http://www.webmproject.org/code/ - * Stable: http://downloads.webmproject.org/releases/webm/ - * Git: https://chromium.googlesource.com/webm/libvpx -### Build ### - sh ./configure --disable-vp8-encoder --disable-vp9-encoder --disable-multithread --disable-spatial-resampling --as=yasm && make libvpx.a -### Desired Results ### - * headers: vpx/vp8.h vpx/vp8dx.h vpx/vpx_codec.h vpx/vpx_decoder.h vpx/vpx_frame_buffer.h vpx/vpx_image.h vpx/vpx_integer.h - * libraries: libvpx.a - +Instructions for Building EDuke32's Library Dependencies Targeting Win32 and Win64 +================================================================================== + +First, follow these instructions: http://wiki.eduke32.com/wiki/Building_EDuke32_on_Windows + +Download the latest sources from the link provided. + +The build output listed as "Desired Results" is what EDuke32 needs to function. + +The desired results for each library in some cases may need to be installed to the compiler. "x depends on the results of y to compile" means that the build output of x must be added to the compiler in this way. Copy files listed in each category to the appropriate destinations. Unless otherwise noted, do NOT copy the ".dll.a" file or else the final product may depend on external DLLs (which you may actually want). + +For MinGW (MinGW32): +from the compiler root (ex. C:/MinGW/) + * headers: include/ + * libraries: lib/ + +For MinGW-w64: +from the compiler root (ex. C:/MinGW-w64/mingw32-dw2/) + * headers: -w64-mingw32/include/ + * libraries: -w64-mingw32/lib/ + +Binaries (if mentioned) need to be present with the finished EDuke32 executables. They are not needed during compilation. + +NB: Text formatted as code blocks are commands to be pasted into the Windows command prompt. +http://wiki.eduke32.com/wiki/Working_with_the_Windows_Command_Prompt + +[//]: # (Plain text readers: This refers to lines beginning with exactly four spaces.) + + +libvpx +------ +### Prerequisites ### +Download the binary of yasm (http://yasm.tortall.net/) for your host system architecture. Both builds target both architectures. +The build environment needs pr.exe (https://mingw-lib.googlecode.com/files/coreutils-5.97-MSYS-1.0.11-snapshot.tar.bz2). +### Download ### + * Instructions: http://www.webmproject.org/code/ + * Stable: http://downloads.webmproject.org/releases/webm/ + * Git: https://chromium.googlesource.com/webm/libvpx +### Build ### + sh ./configure --disable-vp8-encoder --disable-vp9-encoder --disable-multithread --disable-spatial-resampling --as=yasm && make libvpx.a +### Desired Results ### + * headers: vpx/vp8.h vpx/vp8dx.h vpx/vpx_codec.h vpx/vpx_decoder.h vpx/vpx_frame_buffer.h vpx/vpx_image.h vpx/vpx_integer.h + * libraries: libvpx.a + diff --git a/platform/Windows/src/_dbg_LOAD_IMAGE.h b/bin/windows/vpx/src/_dbg_LOAD_IMAGE.h similarity index 100% rename from platform/Windows/src/_dbg_LOAD_IMAGE.h rename to bin/windows/vpx/src/_dbg_LOAD_IMAGE.h diff --git a/platform/Windows/src/_dbg_common.h b/bin/windows/vpx/src/_dbg_common.h similarity index 100% rename from platform/Windows/src/_dbg_common.h rename to bin/windows/vpx/src/_dbg_common.h diff --git a/platform/Windows/src/backtrace.c b/bin/windows/vpx/src/backtrace.c similarity index 100% rename from platform/Windows/src/backtrace.c rename to bin/windows/vpx/src/backtrace.c diff --git a/platform/Windows/src/compat-to-msvc/Makefile b/bin/windows/vpx/src/compat-to-msvc/Makefile similarity index 92% rename from platform/Windows/src/compat-to-msvc/Makefile rename to bin/windows/vpx/src/compat-to-msvc/Makefile index 6928f9825..7c5f3760d 100644 --- a/platform/Windows/src/compat-to-msvc/Makefile +++ b/bin/windows/vpx/src/compat-to-msvc/Makefile @@ -1,22 +1,22 @@ - -o=o - -NAME:=libcompat-to-msvc - - -%.$o: %.c - gcc -Wall -Wextra -O3 -c $< -o $@ - -%.$o: %.S - gcc -c $< -o $@ - -OBJS=dll_math.$o io_math.$o dll_dependency.$o vsnprintf.$o - -.INTERMEDIATE: $(OBJS) - -$(NAME).a: $(OBJS) - ar rc $@ $^ - ranlib $@ - -clean: - -rm -f *.a *.o + +o=o + +NAME:=libcompat-to-msvc + + +%.$o: %.c + gcc -Wall -Wextra -O3 -c $< -o $@ + +%.$o: %.S + gcc -c $< -o $@ + +OBJS=dll_math.$o io_math.$o dll_dependency.$o vsnprintf.$o + +.INTERMEDIATE: $(OBJS) + +$(NAME).a: $(OBJS) + ar rc $@ $^ + ranlib $@ + +clean: + -rm -f *.a *.o diff --git a/platform/Windows/src/compat-to-msvc/dll_dependency.S b/bin/windows/vpx/src/compat-to-msvc/dll_dependency.S similarity index 94% rename from platform/Windows/src/compat-to-msvc/dll_dependency.S rename to bin/windows/vpx/src/compat-to-msvc/dll_dependency.S index e69f86be6..31fd95c82 100644 --- a/platform/Windows/src/compat-to-msvc/dll_dependency.S +++ b/bin/windows/vpx/src/compat-to-msvc/dll_dependency.S @@ -1,88 +1,88 @@ -/* Implementation for gcc's internal stack-allocation routines. */ -.global ___chkstk -.global __alloca - -.global ___chkstk_ms -___chkstk_ms: -#ifdef _WIN64 - pushq %rax - pushq %rcx - cmpq $0x1000, %rax - leaq 24(%rsp), %rcx - jb .Lchkstk_ms_end -.Lchkstk_ms_loop: - subq $0x1000, %rcx - subq $0x1000, %rax - orq $0x0, (%rcx) - cmpq $0x1000, %rax - ja .Lchkstk_ms_loop -.Lchkstk_ms_end: - subq %rax, %rcx - orq $0x0, (%rcx) - popq %rcx - popq %rax - ret -#else - pushl %eax - pushl %ecx - cmpl $0x1000, %eax - leal 12(%esp), %ecx - jb chkstk_ms_end -chkstk_ms_loop: - subl $0x1000, %ecx - subl $0x1000, %eax - orl $0x0, (%ecx) - cmpl $0x1000, %eax - ja chkstk_ms_loop -chkstk_ms_end: - subl %eax, %ecx - orl $0x0, (%ecx) - popl %ecx - popl %eax - ret -#endif - -#ifdef _WIN64 -__alloca: - movq %rcx, %rax -.align 4 -___chkstk: - popq %r11 - movq %rsp, %r10 - cmpq $0x1000, %rax - jb .Lchkstk_end -.Lchkstk_loop: - subq $0x1000, %r10 - subq $0x1000, %rax - orl $0x0, (%r10) - cmpq $0x1000, %rax - ja .Lchkstk_loop -.Lchkstk_end: - subq %rax, %r10 - movq %rsp, %rax - orl $0x0, (%r10) - movq %r10, %rsp - pushq %r11 - ret -#else -___chkstk: -__alloca: - pushl %ecx - leal 8(%esp), %ecx - cmpl $0x1000, %eax /* > 4k ?*/ - jb chkstk_end -chkstk_loop: - subl $0x1000, %ecx - subl $0x1000, %eax - orl $0x0, (%ecx) - cmpl $0x1000, %eax - ja chkstk_loop -chkstk_end: - subl %eax, %ecx - orl $0x0, (%ecx) - movl %esp, %eax - movl %ecx, %esp - movl (%eax), %ecx - pushl 4(%eax) - ret -#endif +/* Implementation for gcc's internal stack-allocation routines. */ +.global ___chkstk +.global __alloca + +.global ___chkstk_ms +___chkstk_ms: +#ifdef _WIN64 + pushq %rax + pushq %rcx + cmpq $0x1000, %rax + leaq 24(%rsp), %rcx + jb .Lchkstk_ms_end +.Lchkstk_ms_loop: + subq $0x1000, %rcx + subq $0x1000, %rax + orq $0x0, (%rcx) + cmpq $0x1000, %rax + ja .Lchkstk_ms_loop +.Lchkstk_ms_end: + subq %rax, %rcx + orq $0x0, (%rcx) + popq %rcx + popq %rax + ret +#else + pushl %eax + pushl %ecx + cmpl $0x1000, %eax + leal 12(%esp), %ecx + jb chkstk_ms_end +chkstk_ms_loop: + subl $0x1000, %ecx + subl $0x1000, %eax + orl $0x0, (%ecx) + cmpl $0x1000, %eax + ja chkstk_ms_loop +chkstk_ms_end: + subl %eax, %ecx + orl $0x0, (%ecx) + popl %ecx + popl %eax + ret +#endif + +#ifdef _WIN64 +__alloca: + movq %rcx, %rax +.align 4 +___chkstk: + popq %r11 + movq %rsp, %r10 + cmpq $0x1000, %rax + jb .Lchkstk_end +.Lchkstk_loop: + subq $0x1000, %r10 + subq $0x1000, %rax + orl $0x0, (%r10) + cmpq $0x1000, %rax + ja .Lchkstk_loop +.Lchkstk_end: + subq %rax, %r10 + movq %rsp, %rax + orl $0x0, (%r10) + movq %r10, %rsp + pushq %r11 + ret +#else +___chkstk: +__alloca: + pushl %ecx + leal 8(%esp), %ecx + cmpl $0x1000, %eax /* > 4k ?*/ + jb chkstk_end +chkstk_loop: + subl $0x1000, %ecx + subl $0x1000, %eax + orl $0x0, (%ecx) + cmpl $0x1000, %eax + ja chkstk_loop +chkstk_end: + subl %eax, %ecx + orl $0x0, (%ecx) + movl %esp, %eax + movl %ecx, %esp + movl (%eax), %ecx + pushl 4(%eax) + ret +#endif diff --git a/platform/Windows/src/compat-to-msvc/dll_math.c b/bin/windows/vpx/src/compat-to-msvc/dll_math.c similarity index 96% rename from platform/Windows/src/compat-to-msvc/dll_math.c rename to bin/windows/vpx/src/compat-to-msvc/dll_math.c index 052332402..966fb99d7 100644 --- a/platform/Windows/src/compat-to-msvc/dll_math.c +++ b/bin/windows/vpx/src/compat-to-msvc/dll_math.c @@ -1,572 +1,572 @@ -/*- - * Copyright (c) 1992, 1993 - * The Regents of the University of California. All rights reserved. - * - * This software was developed by the Computer Systems Engineering group - * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and - * contributed to Berkeley. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 4. Neither the name of the University nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#ifndef _LIBKERN_QUAD_H_ -#define _LIBKERN_QUAD_H_ - -/* - * Quad arithmetic. - * - * This library makes the following assumptions: - * - * - The type long long (aka quad_t) exists. - * - * - A quad variable is exactly twice as long as `long'. - * - * - The machine's arithmetic is two's complement. - * - * This library can provide 128-bit arithmetic on a machine with 128-bit - * quads and 64-bit longs, for instance, or 96-bit arithmetic on machines - * with 48-bit longs. - */ -/* -#include -#include -#include -#include -*/ - -#include -typedef long long quad_t; -typedef unsigned long long u_quad_t; -typedef unsigned long u_long; -#ifndef CHAR_BIT -# define CHAR_BIT __CHAR_BIT__ -#endif - -/* - * Define the order of 32-bit words in 64-bit words. - * For little endian only. - */ -#define _QUAD_HIGHWORD 1 -#define _QUAD_LOWWORD 0 - -/* - * Depending on the desired operation, we view a `long long' (aka quad_t) in - * one or more of the following formats. - */ -union uu { - quad_t q; /* as a (signed) quad */ - quad_t uq; /* as an unsigned quad */ - long sl[2]; /* as two signed longs */ - u_long ul[2]; /* as two unsigned longs */ -}; - -/* - * Define high and low longwords. - */ -#define H _QUAD_HIGHWORD -#define L _QUAD_LOWWORD - -/* - * Total number of bits in a quad_t and in the pieces that make it up. - * These are used for shifting, and also below for halfword extraction - * and assembly. - */ -#define QUAD_BITS (sizeof(quad_t) * CHAR_BIT) -#define LONG_BITS (sizeof(long) * CHAR_BIT) -#define HALF_BITS (sizeof(long) * CHAR_BIT / 2) - -/* - * Extract high and low shortwords from longword, and move low shortword of - * longword to upper half of long, i.e., produce the upper longword of - * ((quad_t)(x) << (number_of_bits_in_long/2)). (`x' must actually be u_long.) - * - * These are used in the multiply code, to split a longword into upper - * and lower halves, and to reassemble a product as a quad_t, shifted left - * (sizeof(long)*CHAR_BIT/2). - */ -#define HHALF(x) ((x) >> HALF_BITS) -#define LHALF(x) ((x) & ((1 << HALF_BITS) - 1)) -#define LHUP(x) ((x) << HALF_BITS) - -typedef unsigned int qshift_t; - -quad_t __ashldi3(quad_t, qshift_t); -quad_t __ashrdi3(quad_t, qshift_t); -int __cmpdi2(quad_t a, quad_t b); -quad_t __divdi3(quad_t a, quad_t b); -quad_t __lshrdi3(quad_t, qshift_t); -quad_t __moddi3(quad_t a, quad_t b); -u_quad_t __qdivrem(u_quad_t u, u_quad_t v, u_quad_t *rem); -u_quad_t __udivdi3(u_quad_t a, u_quad_t b); -u_quad_t __umoddi3(u_quad_t a, u_quad_t b); -int __ucmpdi2(u_quad_t a, u_quad_t b); - -#endif /* !_LIBKERN_QUAD_H_ */ - -#if defined (_X86_) && !defined (__x86_64__) -/* - * Shift a (signed) quad value left (arithmetic shift left). - * This is the same as logical shift left! - */ -quad_t -__ashldi3(a, shift) - quad_t a; - qshift_t shift; -{ - union uu aa; - - aa.q = a; - if (shift >= LONG_BITS) { - aa.ul[H] = shift >= QUAD_BITS ? 0 : - aa.ul[L] << (shift - LONG_BITS); - aa.ul[L] = 0; - } else if (shift > 0) { - aa.ul[H] = (aa.ul[H] << shift) | - (aa.ul[L] >> (LONG_BITS - shift)); - aa.ul[L] <<= shift; - } - return (aa.q); -} - -/* - * Shift a (signed) quad value right (arithmetic shift right). - */ -quad_t -__ashrdi3(a, shift) - quad_t a; - qshift_t shift; -{ - union uu aa; - - aa.q = a; - if (shift >= LONG_BITS) { - long s; - - /* - * Smear bits rightward using the machine's right-shift - * method, whether that is sign extension or zero fill, - * to get the `sign word' s. Note that shifting by - * LONG_BITS is undefined, so we shift (LONG_BITS-1), - * then 1 more, to get our answer. - */ - s = (aa.sl[H] >> (LONG_BITS - 1)) >> 1; - aa.ul[L] = shift >= QUAD_BITS ? s : - aa.sl[H] >> (shift - LONG_BITS); - aa.ul[H] = s; - } else if (shift > 0) { - aa.ul[L] = (aa.ul[L] >> shift) | - (aa.ul[H] << (LONG_BITS - shift)); - aa.sl[H] >>= shift; - } - return (aa.q); -} - -/* - * Return 0, 1, or 2 as a <, =, > b respectively. - * Both a and b are considered signed---which means only the high word is - * signed. - */ -int -__cmpdi2(a, b) - quad_t a, b; -{ - union uu aa, bb; - - aa.q = a; - bb.q = b; - return (aa.sl[H] < bb.sl[H] ? 0 : aa.sl[H] > bb.sl[H] ? 2 : - aa.ul[L] < bb.ul[L] ? 0 : aa.ul[L] > bb.ul[L] ? 2 : 1); -} - -/* - * Divide two signed quads. - * ??? if -1/2 should produce -1 on this machine, this code is wrong - */ -quad_t -__divdi3(a, b) - quad_t a, b; -{ - u_quad_t ua, ub, uq; - int neg; - - if (a < 0) - ua = -(u_quad_t)a, neg = 1; - else - ua = a, neg = 0; - if (b < 0) - ub = -(u_quad_t)b, neg ^= 1; - else - ub = b; - uq = __qdivrem(ua, ub, (u_quad_t *)0); - return (neg ? -uq : uq); -} - -/* - * Shift an (unsigned) quad value right (logical shift right). - */ -quad_t -__lshrdi3(a, shift) - quad_t a; - qshift_t shift; -{ - union uu aa; - - aa.q = a; - if (shift >= LONG_BITS) { - aa.ul[L] = shift >= QUAD_BITS ? 0 : - aa.ul[H] >> (shift - LONG_BITS); - aa.ul[H] = 0; - } else if (shift > 0) { - aa.ul[L] = (aa.ul[L] >> shift) | - (aa.ul[H] << (LONG_BITS - shift)); - aa.ul[H] >>= shift; - } - return (aa.q); -} - -/* - * Return remainder after dividing two signed quads. - * - * XXX - * If -1/2 should produce -1 on this machine, this code is wrong. - */ -quad_t -__moddi3(a, b) - quad_t a, b; -{ - u_quad_t ua, ub, ur; - int neg; - - if (a < 0) - ua = -(u_quad_t)a, neg = 1; - else - ua = a, neg = 0; - if (b < 0) - ub = -(u_quad_t)b; - else - ub = b; - (void)__qdivrem(ua, ub, &ur); - return (neg ? -ur : ur); -} - - -/* - * Multiprecision divide. This algorithm is from Knuth vol. 2 (2nd ed), - * section 4.3.1, pp. 257--259. - */ - -#define B (1 << HALF_BITS) /* digit base */ - -/* Combine two `digits' to make a single two-digit number. */ -#define COMBINE(a, b) (((u_long)(a) << HALF_BITS) | (b)) - -/* select a type for digits in base B: use unsigned short if they fit */ -#if ULONG_MAX == 0xffffffff && USHRT_MAX >= 0xffff -typedef unsigned short digit; -#else -typedef u_long digit; -#endif - -/* - * Shift p[0]..p[len] left `sh' bits, ignoring any bits that - * `fall out' the left (there never will be any such anyway). - * We may assume len >= 0. NOTE THAT THIS WRITES len+1 DIGITS. - */ -static void -__shl(register digit *p, register int len, register int sh) -{ - register int i; - - for (i = 0; i < len; i++) - p[i] = LHALF(p[i] << sh) | (p[i + 1] >> (HALF_BITS - sh)); - p[i] = LHALF(p[i] << sh); -} - -/* - * __qdivrem(u, v, rem) returns u/v and, optionally, sets *rem to u%v. - * - * We do this in base 2-sup-HALF_BITS, so that all intermediate products - * fit within u_long. As a consequence, the maximum length dividend and - * divisor are 4 `digits' in this base (they are shorter if they have - * leading zeros). - */ -u_quad_t -__qdivrem(uq, vq, arq) - u_quad_t uq, vq, *arq; -{ - union uu tmp; - digit *u, *v, *q; - register digit v1, v2; - u_long qhat, rhat, t; - int m, n, d, j, i; - digit uspace[5], vspace[5], qspace[5]; - - /* - * Take care of special cases: divide by zero, and u < v. - */ - if (vq == 0) { - /* divide by zero. */ - static volatile const unsigned int zero = 0; - - tmp.ul[H] = tmp.ul[L] = 1 / zero; - if (arq) - *arq = uq; - return (tmp.q); - } - if (uq < vq) { - if (arq) - *arq = uq; - return (0); - } - u = &uspace[0]; - v = &vspace[0]; - q = &qspace[0]; - - /* - * Break dividend and divisor into digits in base B, then - * count leading zeros to determine m and n. When done, we - * will have: - * u = (u[1]u[2]...u[m+n]) sub B - * v = (v[1]v[2]...v[n]) sub B - * v[1] != 0 - * 1 < n <= 4 (if n = 1, we use a different division algorithm) - * m >= 0 (otherwise u < v, which we already checked) - * m + n = 4 - * and thus - * m = 4 - n <= 2 - */ - tmp.uq = uq; - u[0] = 0; - u[1] = HHALF(tmp.ul[H]); - u[2] = LHALF(tmp.ul[H]); - u[3] = HHALF(tmp.ul[L]); - u[4] = LHALF(tmp.ul[L]); - tmp.uq = vq; - v[1] = HHALF(tmp.ul[H]); - v[2] = LHALF(tmp.ul[H]); - v[3] = HHALF(tmp.ul[L]); - v[4] = LHALF(tmp.ul[L]); - for (n = 4; v[1] == 0; v++) { - if (--n == 1) { - u_long rbj; /* r*B+u[j] (not root boy jim) */ - digit q1, q2, q3, q4; - - /* - * Change of plan, per exercise 16. - * r = 0; - * for j = 1..4: - * q[j] = floor((r*B + u[j]) / v), - * r = (r*B + u[j]) % v; - * We unroll this completely here. - */ - t = v[2]; /* nonzero, by definition */ - q1 = u[1] / t; - rbj = COMBINE(u[1] % t, u[2]); - q2 = rbj / t; - rbj = COMBINE(rbj % t, u[3]); - q3 = rbj / t; - rbj = COMBINE(rbj % t, u[4]); - q4 = rbj / t; - if (arq) - *arq = rbj % t; - tmp.ul[H] = COMBINE(q1, q2); - tmp.ul[L] = COMBINE(q3, q4); - return (tmp.q); - } - } - - /* - * By adjusting q once we determine m, we can guarantee that - * there is a complete four-digit quotient at &qspace[1] when - * we finally stop. - */ - for (m = 4 - n; u[1] == 0; u++) - m--; - for (i = 4 - m; --i >= 0;) - q[i] = 0; - q += 4 - m; - - /* - * Here we run Program D, translated from MIX to C and acquiring - * a few minor changes. - * - * D1: choose multiplier 1 << d to ensure v[1] >= B/2. - */ - d = 0; - for (t = v[1]; t < B / 2; t <<= 1) - d++; - if (d > 0) { - __shl(&u[0], m + n, d); /* u <<= d */ - __shl(&v[1], n - 1, d); /* v <<= d */ - } - /* - * D2: j = 0. - */ - j = 0; - v1 = v[1]; /* for D3 -- note that v[1..n] are constant */ - v2 = v[2]; /* for D3 */ - do { - register digit uj0, uj1, uj2; - - /* - * D3: Calculate qhat (\^q, in TeX notation). - * Let qhat = min((u[j]*B + u[j+1])/v[1], B-1), and - * let rhat = (u[j]*B + u[j+1]) mod v[1]. - * While rhat < B and v[2]*qhat > rhat*B+u[j+2], - * decrement qhat and increase rhat correspondingly. - * Note that if rhat >= B, v[2]*qhat < rhat*B. - */ - uj0 = u[j + 0]; /* for D3 only -- note that u[j+...] change */ - uj1 = u[j + 1]; /* for D3 only */ - uj2 = u[j + 2]; /* for D3 only */ - if (uj0 == v1) { - qhat = B; - rhat = uj1; - goto qhat_too_big; - } else { - u_long nn = COMBINE(uj0, uj1); - qhat = nn / v1; - rhat = nn % v1; - } - while (v2 * qhat > COMBINE(rhat, uj2)) { - qhat_too_big: - qhat--; - if ((rhat += v1) >= B) - break; - } - /* - * D4: Multiply and subtract. - * The variable `t' holds any borrows across the loop. - * We split this up so that we do not require v[0] = 0, - * and to eliminate a final special case. - */ - for (t = 0, i = n; i > 0; i--) { - t = u[i + j] - v[i] * qhat - t; - u[i + j] = LHALF(t); - t = (B - HHALF(t)) & (B - 1); - } - t = u[j] - t; - u[j] = LHALF(t); - /* - * D5: test remainder. - * There is a borrow if and only if HHALF(t) is nonzero; - * in that (rare) case, qhat was too large (by exactly 1). - * Fix it by adding v[1..n] to u[j..j+n]. - */ - if (HHALF(t)) { - qhat--; - for (t = 0, i = n; i > 0; i--) { /* D6: add back. */ - t += u[i + j] + v[i]; - u[i + j] = LHALF(t); - t = HHALF(t); - } - u[j] = LHALF(u[j] + t); - } - q[j] = qhat; - } while (++j <= m); /* D7: loop on j. */ - - /* - * If caller wants the remainder, we have to calculate it as - * u[m..m+n] >> d (this is at most n digits and thus fits in - * u[m+1..m+n], but we may need more source digits). - */ - if (arq) { - if (d) { - for (i = m + n; i > m; --i) - u[i] = (u[i] >> d) | - LHALF(u[i - 1] << (HALF_BITS - d)); - u[i] = 0; - } - tmp.ul[H] = COMBINE(uspace[1], uspace[2]); - tmp.ul[L] = COMBINE(uspace[3], uspace[4]); - *arq = tmp.q; - } - - tmp.ul[H] = COMBINE(qspace[1], qspace[2]); - tmp.ul[L] = COMBINE(qspace[3], qspace[4]); - return (tmp.q); -} - -/* - * Return 0, 1, or 2 as a <, =, > b respectively. - * Neither a nor b are considered signed. - */ -int -__ucmpdi2(a, b) - u_quad_t a, b; -{ - union uu aa, bb; - - aa.uq = a; - bb.uq = b; - return (aa.ul[H] < bb.ul[H] ? 0 : aa.ul[H] > bb.ul[H] ? 2 : - aa.ul[L] < bb.ul[L] ? 0 : aa.ul[L] > bb.ul[L] ? 2 : 1); -} - -/* - * Divide two unsigned quads. - */ -u_quad_t -__udivdi3(a, b) - u_quad_t a, b; -{ - - return (__qdivrem(a, b, (u_quad_t *)0)); -} - -/* - * Return remainder after dividing two unsigned quads. - */ -u_quad_t -__umoddi3(a, b) - u_quad_t a, b; -{ - u_quad_t r; - - (void)__qdivrem(a, b, &r); - return (r); -} - -/* - * Divide two unsigned quads. - * This function is new in GCC 7. - */ -u_quad_t -__udivmoddi4(a, b, rem) - u_quad_t a, b, *rem; -{ - u_quad_t ua, ub, uq, ur; - - ua = a; - ub = b; - uq = __qdivrem(ua, ub, &ur); - if (rem) - *rem = ur; - return uq; -} -#else -static int __attribute__((unused)) dummy; -#endif /* defined (_X86_) && !defined (__x86_64__) */ - +/*- + * Copyright (c) 1992, 1993 + * The Regents of the University of California. All rights reserved. + * + * This software was developed by the Computer Systems Engineering group + * at Lawrence Berkeley Laboratory under DARPA contract BG 91-66 and + * contributed to Berkeley. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef _LIBKERN_QUAD_H_ +#define _LIBKERN_QUAD_H_ + +/* + * Quad arithmetic. + * + * This library makes the following assumptions: + * + * - The type long long (aka quad_t) exists. + * + * - A quad variable is exactly twice as long as `long'. + * + * - The machine's arithmetic is two's complement. + * + * This library can provide 128-bit arithmetic on a machine with 128-bit + * quads and 64-bit longs, for instance, or 96-bit arithmetic on machines + * with 48-bit longs. + */ +/* +#include +#include +#include +#include +*/ + +#include +typedef long long quad_t; +typedef unsigned long long u_quad_t; +typedef unsigned long u_long; +#ifndef CHAR_BIT +# define CHAR_BIT __CHAR_BIT__ +#endif + +/* + * Define the order of 32-bit words in 64-bit words. + * For little endian only. + */ +#define _QUAD_HIGHWORD 1 +#define _QUAD_LOWWORD 0 + +/* + * Depending on the desired operation, we view a `long long' (aka quad_t) in + * one or more of the following formats. + */ +union uu { + quad_t q; /* as a (signed) quad */ + quad_t uq; /* as an unsigned quad */ + long sl[2]; /* as two signed longs */ + u_long ul[2]; /* as two unsigned longs */ +}; + +/* + * Define high and low longwords. + */ +#define H _QUAD_HIGHWORD +#define L _QUAD_LOWWORD + +/* + * Total number of bits in a quad_t and in the pieces that make it up. + * These are used for shifting, and also below for halfword extraction + * and assembly. + */ +#define QUAD_BITS (sizeof(quad_t) * CHAR_BIT) +#define LONG_BITS (sizeof(long) * CHAR_BIT) +#define HALF_BITS (sizeof(long) * CHAR_BIT / 2) + +/* + * Extract high and low shortwords from longword, and move low shortword of + * longword to upper half of long, i.e., produce the upper longword of + * ((quad_t)(x) << (number_of_bits_in_long/2)). (`x' must actually be u_long.) + * + * These are used in the multiply code, to split a longword into upper + * and lower halves, and to reassemble a product as a quad_t, shifted left + * (sizeof(long)*CHAR_BIT/2). + */ +#define HHALF(x) ((x) >> HALF_BITS) +#define LHALF(x) ((x) & ((1 << HALF_BITS) - 1)) +#define LHUP(x) ((x) << HALF_BITS) + +typedef unsigned int qshift_t; + +quad_t __ashldi3(quad_t, qshift_t); +quad_t __ashrdi3(quad_t, qshift_t); +int __cmpdi2(quad_t a, quad_t b); +quad_t __divdi3(quad_t a, quad_t b); +quad_t __lshrdi3(quad_t, qshift_t); +quad_t __moddi3(quad_t a, quad_t b); +u_quad_t __qdivrem(u_quad_t u, u_quad_t v, u_quad_t *rem); +u_quad_t __udivdi3(u_quad_t a, u_quad_t b); +u_quad_t __umoddi3(u_quad_t a, u_quad_t b); +int __ucmpdi2(u_quad_t a, u_quad_t b); + +#endif /* !_LIBKERN_QUAD_H_ */ + +#if defined (_X86_) && !defined (__x86_64__) +/* + * Shift a (signed) quad value left (arithmetic shift left). + * This is the same as logical shift left! + */ +quad_t +__ashldi3(a, shift) + quad_t a; + qshift_t shift; +{ + union uu aa; + + aa.q = a; + if (shift >= LONG_BITS) { + aa.ul[H] = shift >= QUAD_BITS ? 0 : + aa.ul[L] << (shift - LONG_BITS); + aa.ul[L] = 0; + } else if (shift > 0) { + aa.ul[H] = (aa.ul[H] << shift) | + (aa.ul[L] >> (LONG_BITS - shift)); + aa.ul[L] <<= shift; + } + return (aa.q); +} + +/* + * Shift a (signed) quad value right (arithmetic shift right). + */ +quad_t +__ashrdi3(a, shift) + quad_t a; + qshift_t shift; +{ + union uu aa; + + aa.q = a; + if (shift >= LONG_BITS) { + long s; + + /* + * Smear bits rightward using the machine's right-shift + * method, whether that is sign extension or zero fill, + * to get the `sign word' s. Note that shifting by + * LONG_BITS is undefined, so we shift (LONG_BITS-1), + * then 1 more, to get our answer. + */ + s = (aa.sl[H] >> (LONG_BITS - 1)) >> 1; + aa.ul[L] = shift >= QUAD_BITS ? s : + aa.sl[H] >> (shift - LONG_BITS); + aa.ul[H] = s; + } else if (shift > 0) { + aa.ul[L] = (aa.ul[L] >> shift) | + (aa.ul[H] << (LONG_BITS - shift)); + aa.sl[H] >>= shift; + } + return (aa.q); +} + +/* + * Return 0, 1, or 2 as a <, =, > b respectively. + * Both a and b are considered signed---which means only the high word is + * signed. + */ +int +__cmpdi2(a, b) + quad_t a, b; +{ + union uu aa, bb; + + aa.q = a; + bb.q = b; + return (aa.sl[H] < bb.sl[H] ? 0 : aa.sl[H] > bb.sl[H] ? 2 : + aa.ul[L] < bb.ul[L] ? 0 : aa.ul[L] > bb.ul[L] ? 2 : 1); +} + +/* + * Divide two signed quads. + * ??? if -1/2 should produce -1 on this machine, this code is wrong + */ +quad_t +__divdi3(a, b) + quad_t a, b; +{ + u_quad_t ua, ub, uq; + int neg; + + if (a < 0) + ua = -(u_quad_t)a, neg = 1; + else + ua = a, neg = 0; + if (b < 0) + ub = -(u_quad_t)b, neg ^= 1; + else + ub = b; + uq = __qdivrem(ua, ub, (u_quad_t *)0); + return (neg ? -uq : uq); +} + +/* + * Shift an (unsigned) quad value right (logical shift right). + */ +quad_t +__lshrdi3(a, shift) + quad_t a; + qshift_t shift; +{ + union uu aa; + + aa.q = a; + if (shift >= LONG_BITS) { + aa.ul[L] = shift >= QUAD_BITS ? 0 : + aa.ul[H] >> (shift - LONG_BITS); + aa.ul[H] = 0; + } else if (shift > 0) { + aa.ul[L] = (aa.ul[L] >> shift) | + (aa.ul[H] << (LONG_BITS - shift)); + aa.ul[H] >>= shift; + } + return (aa.q); +} + +/* + * Return remainder after dividing two signed quads. + * + * XXX + * If -1/2 should produce -1 on this machine, this code is wrong. + */ +quad_t +__moddi3(a, b) + quad_t a, b; +{ + u_quad_t ua, ub, ur; + int neg; + + if (a < 0) + ua = -(u_quad_t)a, neg = 1; + else + ua = a, neg = 0; + if (b < 0) + ub = -(u_quad_t)b; + else + ub = b; + (void)__qdivrem(ua, ub, &ur); + return (neg ? -ur : ur); +} + + +/* + * Multiprecision divide. This algorithm is from Knuth vol. 2 (2nd ed), + * section 4.3.1, pp. 257--259. + */ + +#define B (1 << HALF_BITS) /* digit base */ + +/* Combine two `digits' to make a single two-digit number. */ +#define COMBINE(a, b) (((u_long)(a) << HALF_BITS) | (b)) + +/* select a type for digits in base B: use unsigned short if they fit */ +#if ULONG_MAX == 0xffffffff && USHRT_MAX >= 0xffff +typedef unsigned short digit; +#else +typedef u_long digit; +#endif + +/* + * Shift p[0]..p[len] left `sh' bits, ignoring any bits that + * `fall out' the left (there never will be any such anyway). + * We may assume len >= 0. NOTE THAT THIS WRITES len+1 DIGITS. + */ +static void +__shl(register digit *p, register int len, register int sh) +{ + register int i; + + for (i = 0; i < len; i++) + p[i] = LHALF(p[i] << sh) | (p[i + 1] >> (HALF_BITS - sh)); + p[i] = LHALF(p[i] << sh); +} + +/* + * __qdivrem(u, v, rem) returns u/v and, optionally, sets *rem to u%v. + * + * We do this in base 2-sup-HALF_BITS, so that all intermediate products + * fit within u_long. As a consequence, the maximum length dividend and + * divisor are 4 `digits' in this base (they are shorter if they have + * leading zeros). + */ +u_quad_t +__qdivrem(uq, vq, arq) + u_quad_t uq, vq, *arq; +{ + union uu tmp; + digit *u, *v, *q; + register digit v1, v2; + u_long qhat, rhat, t; + int m, n, d, j, i; + digit uspace[5], vspace[5], qspace[5]; + + /* + * Take care of special cases: divide by zero, and u < v. + */ + if (vq == 0) { + /* divide by zero. */ + static volatile const unsigned int zero = 0; + + tmp.ul[H] = tmp.ul[L] = 1 / zero; + if (arq) + *arq = uq; + return (tmp.q); + } + if (uq < vq) { + if (arq) + *arq = uq; + return (0); + } + u = &uspace[0]; + v = &vspace[0]; + q = &qspace[0]; + + /* + * Break dividend and divisor into digits in base B, then + * count leading zeros to determine m and n. When done, we + * will have: + * u = (u[1]u[2]...u[m+n]) sub B + * v = (v[1]v[2]...v[n]) sub B + * v[1] != 0 + * 1 < n <= 4 (if n = 1, we use a different division algorithm) + * m >= 0 (otherwise u < v, which we already checked) + * m + n = 4 + * and thus + * m = 4 - n <= 2 + */ + tmp.uq = uq; + u[0] = 0; + u[1] = HHALF(tmp.ul[H]); + u[2] = LHALF(tmp.ul[H]); + u[3] = HHALF(tmp.ul[L]); + u[4] = LHALF(tmp.ul[L]); + tmp.uq = vq; + v[1] = HHALF(tmp.ul[H]); + v[2] = LHALF(tmp.ul[H]); + v[3] = HHALF(tmp.ul[L]); + v[4] = LHALF(tmp.ul[L]); + for (n = 4; v[1] == 0; v++) { + if (--n == 1) { + u_long rbj; /* r*B+u[j] (not root boy jim) */ + digit q1, q2, q3, q4; + + /* + * Change of plan, per exercise 16. + * r = 0; + * for j = 1..4: + * q[j] = floor((r*B + u[j]) / v), + * r = (r*B + u[j]) % v; + * We unroll this completely here. + */ + t = v[2]; /* nonzero, by definition */ + q1 = u[1] / t; + rbj = COMBINE(u[1] % t, u[2]); + q2 = rbj / t; + rbj = COMBINE(rbj % t, u[3]); + q3 = rbj / t; + rbj = COMBINE(rbj % t, u[4]); + q4 = rbj / t; + if (arq) + *arq = rbj % t; + tmp.ul[H] = COMBINE(q1, q2); + tmp.ul[L] = COMBINE(q3, q4); + return (tmp.q); + } + } + + /* + * By adjusting q once we determine m, we can guarantee that + * there is a complete four-digit quotient at &qspace[1] when + * we finally stop. + */ + for (m = 4 - n; u[1] == 0; u++) + m--; + for (i = 4 - m; --i >= 0;) + q[i] = 0; + q += 4 - m; + + /* + * Here we run Program D, translated from MIX to C and acquiring + * a few minor changes. + * + * D1: choose multiplier 1 << d to ensure v[1] >= B/2. + */ + d = 0; + for (t = v[1]; t < B / 2; t <<= 1) + d++; + if (d > 0) { + __shl(&u[0], m + n, d); /* u <<= d */ + __shl(&v[1], n - 1, d); /* v <<= d */ + } + /* + * D2: j = 0. + */ + j = 0; + v1 = v[1]; /* for D3 -- note that v[1..n] are constant */ + v2 = v[2]; /* for D3 */ + do { + register digit uj0, uj1, uj2; + + /* + * D3: Calculate qhat (\^q, in TeX notation). + * Let qhat = min((u[j]*B + u[j+1])/v[1], B-1), and + * let rhat = (u[j]*B + u[j+1]) mod v[1]. + * While rhat < B and v[2]*qhat > rhat*B+u[j+2], + * decrement qhat and increase rhat correspondingly. + * Note that if rhat >= B, v[2]*qhat < rhat*B. + */ + uj0 = u[j + 0]; /* for D3 only -- note that u[j+...] change */ + uj1 = u[j + 1]; /* for D3 only */ + uj2 = u[j + 2]; /* for D3 only */ + if (uj0 == v1) { + qhat = B; + rhat = uj1; + goto qhat_too_big; + } else { + u_long nn = COMBINE(uj0, uj1); + qhat = nn / v1; + rhat = nn % v1; + } + while (v2 * qhat > COMBINE(rhat, uj2)) { + qhat_too_big: + qhat--; + if ((rhat += v1) >= B) + break; + } + /* + * D4: Multiply and subtract. + * The variable `t' holds any borrows across the loop. + * We split this up so that we do not require v[0] = 0, + * and to eliminate a final special case. + */ + for (t = 0, i = n; i > 0; i--) { + t = u[i + j] - v[i] * qhat - t; + u[i + j] = LHALF(t); + t = (B - HHALF(t)) & (B - 1); + } + t = u[j] - t; + u[j] = LHALF(t); + /* + * D5: test remainder. + * There is a borrow if and only if HHALF(t) is nonzero; + * in that (rare) case, qhat was too large (by exactly 1). + * Fix it by adding v[1..n] to u[j..j+n]. + */ + if (HHALF(t)) { + qhat--; + for (t = 0, i = n; i > 0; i--) { /* D6: add back. */ + t += u[i + j] + v[i]; + u[i + j] = LHALF(t); + t = HHALF(t); + } + u[j] = LHALF(u[j] + t); + } + q[j] = qhat; + } while (++j <= m); /* D7: loop on j. */ + + /* + * If caller wants the remainder, we have to calculate it as + * u[m..m+n] >> d (this is at most n digits and thus fits in + * u[m+1..m+n], but we may need more source digits). + */ + if (arq) { + if (d) { + for (i = m + n; i > m; --i) + u[i] = (u[i] >> d) | + LHALF(u[i - 1] << (HALF_BITS - d)); + u[i] = 0; + } + tmp.ul[H] = COMBINE(uspace[1], uspace[2]); + tmp.ul[L] = COMBINE(uspace[3], uspace[4]); + *arq = tmp.q; + } + + tmp.ul[H] = COMBINE(qspace[1], qspace[2]); + tmp.ul[L] = COMBINE(qspace[3], qspace[4]); + return (tmp.q); +} + +/* + * Return 0, 1, or 2 as a <, =, > b respectively. + * Neither a nor b are considered signed. + */ +int +__ucmpdi2(a, b) + u_quad_t a, b; +{ + union uu aa, bb; + + aa.uq = a; + bb.uq = b; + return (aa.ul[H] < bb.ul[H] ? 0 : aa.ul[H] > bb.ul[H] ? 2 : + aa.ul[L] < bb.ul[L] ? 0 : aa.ul[L] > bb.ul[L] ? 2 : 1); +} + +/* + * Divide two unsigned quads. + */ +u_quad_t +__udivdi3(a, b) + u_quad_t a, b; +{ + + return (__qdivrem(a, b, (u_quad_t *)0)); +} + +/* + * Return remainder after dividing two unsigned quads. + */ +u_quad_t +__umoddi3(a, b) + u_quad_t a, b; +{ + u_quad_t r; + + (void)__qdivrem(a, b, &r); + return (r); +} + +/* + * Divide two unsigned quads. + * This function is new in GCC 7. + */ +u_quad_t +__udivmoddi4(a, b, rem) + u_quad_t a, b, *rem; +{ + u_quad_t ua, ub, uq, ur; + + ua = a; + ub = b; + uq = __qdivrem(ua, ub, &ur); + if (rem) + *rem = ur; + return uq; +} +#else +static int __attribute__((unused)) dummy; +#endif /* defined (_X86_) && !defined (__x86_64__) */ + diff --git a/platform/Windows/src/compat-to-msvc/io_math.c b/bin/windows/vpx/src/compat-to-msvc/io_math.c similarity index 94% rename from platform/Windows/src/compat-to-msvc/io_math.c rename to bin/windows/vpx/src/compat-to-msvc/io_math.c index 201f8da21..39d5a8e39 100644 --- a/platform/Windows/src/compat-to-msvc/io_math.c +++ b/bin/windows/vpx/src/compat-to-msvc/io_math.c @@ -1,39 +1,39 @@ -// Some libraries expect these functions, for which Visual Studio (pre-2013) falls down on the job. - -#include -#include - -#ifndef _MSC_VER -# include -int64_t _ftelli64( - FILE *stream -); -int _fseeki64( - FILE *stream, - int64_t offset, - int origin -); -#endif - -int fseeko(FILE *fp, off_t offset, int whence) -{ - return _fseeki64(fp, (int64_t)offset, whence); -} -int fseeko64(FILE *fp, off64_t offset, int whence) -{ - return _fseeki64(fp, (int64_t)offset, whence); -} - -off_t ftello(FILE *stream) -{ - return (off_t)_ftelli64(stream); -} -off64_t ftello64(FILE *stream) -{ - return (off64_t)_ftelli64(stream); -} - -long lround(double d) -{ - return (long)(d > 0 ? d + 0.5 : ceil(d - 0.5)); -} +// Some libraries expect these functions, for which Visual Studio (pre-2013) falls down on the job. + +#include +#include + +#ifndef _MSC_VER +# include +int64_t _ftelli64( + FILE *stream +); +int _fseeki64( + FILE *stream, + int64_t offset, + int origin +); +#endif + +int fseeko(FILE *fp, off_t offset, int whence) +{ + return _fseeki64(fp, (int64_t)offset, whence); +} +int fseeko64(FILE *fp, off64_t offset, int whence) +{ + return _fseeki64(fp, (int64_t)offset, whence); +} + +off_t ftello(FILE *stream) +{ + return (off_t)_ftelli64(stream); +} +off64_t ftello64(FILE *stream) +{ + return (off64_t)_ftelli64(stream); +} + +long lround(double d) +{ + return (long)(d > 0 ? d + 0.5 : ceil(d - 0.5)); +} diff --git a/platform/Windows/src/compat-to-msvc/vsnprintf.c b/bin/windows/vpx/src/compat-to-msvc/vsnprintf.c similarity index 97% rename from platform/Windows/src/compat-to-msvc/vsnprintf.c rename to bin/windows/vpx/src/compat-to-msvc/vsnprintf.c index 7992984fc..15de014c4 100644 --- a/platform/Windows/src/compat-to-msvc/vsnprintf.c +++ b/bin/windows/vpx/src/compat-to-msvc/vsnprintf.c @@ -1,19 +1,19 @@ -/** - * This file has no copyright assigned and is placed in the Public Domain. - * This file is part of the mingw-w64 runtime package. - * No warranty is given; refer to the file DISCLAIMER.PD within this package. - */ -#define __CRT__NO_INLINE -#include -#include - -extern int __cdecl _vsnprintf(char * __restrict__, size_t, const char * __restrict__, va_list); - -int __cdecl __ms_vsnprintf (char * __restrict__ s, size_t n, const char * __restrict__ format, va_list arg) -{ - return _vsnprintf(s, n, format, arg); -} -int __cdecl __mingw_vsnprintf (char * __restrict__ s, size_t n, const char * __restrict__ format, va_list arg) -{ - return _vsnprintf(s, n, format, arg); -} +/** + * This file has no copyright assigned and is placed in the Public Domain. + * This file is part of the mingw-w64 runtime package. + * No warranty is given; refer to the file DISCLAIMER.PD within this package. + */ +#define __CRT__NO_INLINE +#include +#include + +extern int __cdecl _vsnprintf(char * __restrict__, size_t, const char * __restrict__, va_list); + +int __cdecl __ms_vsnprintf (char * __restrict__ s, size_t n, const char * __restrict__ format, va_list arg) +{ + return _vsnprintf(s, n, format, arg); +} +int __cdecl __mingw_vsnprintf (char * __restrict__ s, size_t n, const char * __restrict__ format, va_list arg) +{ + return _vsnprintf(s, n, format, arg); +} diff --git a/platform/Windows/src/dxlibs/Makefile b/platform/Windows/src/dxlibs/Makefile deleted file mode 100644 index 9a3d0caff..000000000 --- a/platform/Windows/src/dxlibs/Makefile +++ /dev/null @@ -1,48 +0,0 @@ -# ensure dinput.h can be found before running - -%.o: %.c - gcc -I../../include -Wall -Wextra -c $< -o $@ - -lib%.a: %.def %.o - dlltool -k --output-lib $@ --def $*.def - ar r $@ $*.o - ranlib $@ - -lib%.a: %.def - dlltool -k --output-lib $@ --def $< - - - -all : libdsound.a libdxguid.a libdxguid_sdl.a - @ls -l $^ - -full : libd3d8.a libd3dx8d.a libd3dxof.a libddraw.a libdinput.a libdinput8.a libdplayx.a \ -libdpnaddr.a libdpnet.a libdpnlobby.a libdpvoice.a libdsetup.a \ -libdsound.a libdxguid.a libdxguid_sdl.a - @ls -l $^ - @echo move the created libraries to the lib dir. - @echo happy coding !! - - - -libdxguid_sdl.a : dxguid_sdl.o - ar -r libdxguid_sdl.a dxguid_sdl.o - ranlib libdxguid_sdl.a - -libdxguid.a : dxguid.o - ar -r libdxguid.a dxguid.o - ranlib libdxguid.a - -libdinput_custom.a : dinput.o - ar r libdinput_custom.a dinput.o - ranlib libdinput_custom.a - -libdinput8.a : dinput8.def dinput.o - dlltool -k --output-lib libdinput8.a --def dinput8.def - ar r libdinput8.a dinput.o - ranlib libdinput8.a - - - -clean: - -rm -f *.a *.o diff --git a/platform/Windows/src/dxlibs/d3d8.def b/platform/Windows/src/dxlibs/d3d8.def deleted file mode 100644 index 8b8b6c968..000000000 --- a/platform/Windows/src/dxlibs/d3d8.def +++ /dev/null @@ -1,5 +0,0 @@ -LIBRARY "d3d8.dll" -EXPORTS -ValidatePixelShader -ValidateVertexShader -Direct3DCreate8@4 diff --git a/platform/Windows/src/dxlibs/d3dx8d.def b/platform/Windows/src/dxlibs/d3dx8d.def deleted file mode 100644 index eff9d5cea..000000000 --- a/platform/Windows/src/dxlibs/d3dx8d.def +++ /dev/null @@ -1,155 +0,0 @@ -LIBRARY "d3dx8d.dll" -EXPORTS -D3DXAssembleShader@24 -D3DXAssembleShaderFromFileA@20 -D3DXAssembleShaderFromFileW@20 -D3DXBoxBoundProbe@16 -D3DXCheckCubeTextureRequirements@24 -D3DXCheckTextureRequirements@28 -D3DXCheckVolumeTextureRequirements@32 -D3DXCleanMesh@12 -D3DXColorAdjustContrast@12 -D3DXColorAdjustSaturation@12 -D3DXCompileEffect@16 -D3DXCompileEffectFromFileA@12 -D3DXCompileEffectFromFileW@12 -D3DXComputeBoundingBox@20 -D3DXComputeBoundingSphere@20 -D3DXComputeNormals@4 -D3DXCreateBox@24 -D3DXCreateBuffer@8 -D3DXCreateCubeTexture@28 -D3DXCreateCubeTextureFromFileA@12 -D3DXCreateCubeTextureFromFileExA@52 -D3DXCreateCubeTextureFromFileExW@52 -D3DXCreateCubeTextureFromFileInMemory@16 -D3DXCreateCubeTextureFromFileInMemoryEx@56 -D3DXCreateCubeTextureFromFileW@12 -D3DXCreateCylinder@32 -D3DXCreateEffect@20 -D3DXCreateFont@12 -D3DXCreateFontIndirect@12 -D3DXCreateMatrixStack@8 -D3DXCreateMesh@24 -D3DXCreateMeshFVF@24 -D3DXCreatePMeshFromStream@24 -D3DXCreatePolygon@20 -D3DXCreateRenderToEnvMap@24 -D3DXCreateRenderToSurface@28 -D3DXCreateSPMesh@20 -D3DXCreateSkinMesh@28 -D3DXCreateSkinMeshFVF@28 -D3DXCreateSkinMeshFromMesh@12 -D3DXCreateSphere@24 -D3DXCreateSprite@8 -D3DXCreateTeapot@12 -D3DXCreateTextA@28 -D3DXCreateTextW@28 -D3DXCreateTexture@32 -D3DXCreateTextureFromFileA@12 -D3DXCreateTextureFromFileExA@56 -D3DXCreateTextureFromFileExW@56 -D3DXCreateTextureFromFileInMemory@16 -D3DXCreateTextureFromFileInMemoryEx@60 -D3DXCreateTextureFromFileW@12 -D3DXCreateTextureFromResourceA@16 -D3DXCreateTextureFromResourceExA@60 -D3DXCreateTextureFromResourceExW@60 -D3DXCreateTextureFromResourceW@16 -D3DXCreateTorus@28 -D3DXCreateVolumeTexture@36 -D3DXDeclaratorFromFVF@8 -D3DXFVFFromDeclarator@8 -D3DXFilterCubeTexture@16 -D3DXFilterTexture@16 -D3DXFilterVolumeTexture@16 -D3DXGeneratePMesh@28 -D3DXGetErrorStringA@12 -D3DXGetErrorStringW@12 -D3DXGetFVFVertexSize@4 -D3DXIntersect@32 -D3DXLoadMeshFromX@28 -D3DXLoadMeshFromXof@28 -D3DXLoadSkinMeshFromXof@36 -D3DXLoadSurfaceFromFileA@32 -D3DXLoadSurfaceFromFileInMemory@36 -D3DXLoadSurfaceFromFileW@32 -D3DXLoadSurfaceFromMemory@40 -D3DXLoadSurfaceFromResourceA@36 -D3DXLoadSurfaceFromResourceW@36 -D3DXLoadSurfaceFromSurface@32 -D3DXLoadVolumeFromMemory@44 -D3DXLoadVolumeFromVolume@32 -D3DXMatrixAffineTransformation@20 -D3DXMatrixInverse@12 -D3DXMatrixLookAtLH@16 -D3DXMatrixLookAtRH@16 -D3DXMatrixMultiply@12 -D3DXMatrixOrthoLH@20 -D3DXMatrixOrthoOffCenterLH@28 -D3DXMatrixOrthoOffCenterRH@28 -D3DXMatrixOrthoRH@20 -D3DXMatrixPerspectiveFovLH@20 -D3DXMatrixPerspectiveFovRH@20 -D3DXMatrixPerspectiveLH@20 -D3DXMatrixPerspectiveOffCenterLH@28 -D3DXMatrixPerspectiveOffCenterRH@28 -D3DXMatrixPerspectiveRH@20 -D3DXMatrixReflect@8 -D3DXMatrixRotationAxis@12 -D3DXMatrixRotationQuaternion@8 -D3DXMatrixRotationX@8 -D3DXMatrixRotationY@8 -D3DXMatrixRotationYawPitchRoll@16 -D3DXMatrixRotationZ@8 -D3DXMatrixScaling@16 -D3DXMatrixShadow@12 -D3DXMatrixTransformation@28 -D3DXMatrixTranslation@16 -D3DXMatrixTranspose@8 -D3DXMatrixfDeterminant@4 -D3DXPlaneFromPointNormal@12 -D3DXPlaneFromPoints@16 -D3DXPlaneIntersectLine@16 -D3DXPlaneNormalize@8 -D3DXPlaneTransform@12 -D3DXQuaternionBaryCentric@24 -D3DXQuaternionExp@8 -D3DXQuaternionInverse@8 -D3DXQuaternionLn@8 -D3DXQuaternionMultiply@12 -D3DXQuaternionNormalize@8 -D3DXQuaternionRotationAxis@12 -D3DXQuaternionRotationMatrix@8 -D3DXQuaternionRotationYawPitchRoll@16 -D3DXQuaternionSlerp@16 -D3DXQuaternionSquad@24 -D3DXQuaternionToAxisAngle@12 -D3DXSaveMeshToX@24 -D3DXSimplifyMesh@28 -D3DXSphereBoundProbe@16 -D3DXTesselateMesh@20 -D3DXValidMesh@8 -D3DXVec2BaryCentric@24 -D3DXVec2CatmullRom@24 -D3DXVec2Hermite@24 -D3DXVec2Normalize@8 -D3DXVec2Transform@12 -D3DXVec2TransformCoord@12 -D3DXVec2TransformNormal@12 -D3DXVec3BaryCentric@24 -D3DXVec3CatmullRom@24 -D3DXVec3Hermite@24 -D3DXVec3Normalize@8 -D3DXVec3Project@24 -D3DXVec3Transform@12 -D3DXVec3TransformCoord@12 -D3DXVec3TransformNormal@12 -D3DXVec3Unproject@24 -D3DXVec4BaryCentric@24 -D3DXVec4CatmullRom@24 -D3DXVec4Cross@16 -D3DXVec4Hermite@24 -D3DXVec4Normalize@8 -D3DXVec4Transform@12 -D3DXWeldVertices@24 diff --git a/platform/Windows/src/dxlibs/d3dxof.def b/platform/Windows/src/dxlibs/d3dxof.def deleted file mode 100644 index 6660bab13..000000000 --- a/platform/Windows/src/dxlibs/d3dxof.def +++ /dev/null @@ -1,3 +0,0 @@ -LIBRARY "d3dxof.dll" -EXPORTS -DirectXFileCreate@4 diff --git a/platform/Windows/src/dxlibs/ddraw.def b/platform/Windows/src/dxlibs/ddraw.def deleted file mode 100644 index 1d514db81..000000000 --- a/platform/Windows/src/dxlibs/ddraw.def +++ /dev/null @@ -1,15 +0,0 @@ -LIBRARY "DDRAW.dll" -EXPORTS -DDGetAttachedSurfaceLcl@12 -DDInternalLock@8 -DDInternalUnlock@4 -DSoundHelp@12 -DirectDrawCreate@12 -DirectDrawCreateClipper@12 -DirectDrawCreateEx@16 -DirectDrawEnumerateA@8 -DirectDrawEnumerateExA@12 -DirectDrawEnumerateExW@12 -DirectDrawEnumerateW@8 -GetDDSurfaceLocal@12 -GetSurfaceFromDC@12 diff --git a/platform/Windows/src/dxlibs/dinput.c b/platform/Windows/src/dxlibs/dinput.c deleted file mode 100644 index 196bf4894..000000000 --- a/platform/Windows/src/dxlibs/dinput.c +++ /dev/null @@ -1,533 +0,0 @@ - -#define DIRECTINPUT_VERSION 0x0700 -#include "dx/dinput.h" -/* This is a replacement for parts of dinput.lib. */ - -DIOBJECTDATAFORMAT rgodf_c_dfDIKeyboard[] = { -{&GUID_Key, 0, -2147483636, 0}, -{&GUID_Key, 1, -2147483380, 0}, -{&GUID_Key, 2, -2147483124, 0}, -{&GUID_Key, 3, -2147482868, 0}, -{&GUID_Key, 4, -2147482612, 0}, -{&GUID_Key, 5, -2147482356, 0}, -{&GUID_Key, 6, -2147482100, 0}, -{&GUID_Key, 7, -2147481844, 0}, -{&GUID_Key, 8, -2147481588, 0}, -{&GUID_Key, 9, -2147481332, 0}, -{&GUID_Key, 10, -2147481076, 0}, -{&GUID_Key, 11, -2147480820, 0}, -{&GUID_Key, 12, -2147480564, 0}, -{&GUID_Key, 13, -2147480308, 0}, -{&GUID_Key, 14, -2147480052, 0}, -{&GUID_Key, 15, -2147479796, 0}, -{&GUID_Key, 16, -2147479540, 0}, -{&GUID_Key, 17, -2147479284, 0}, -{&GUID_Key, 18, -2147479028, 0}, -{&GUID_Key, 19, -2147478772, 0}, -{&GUID_Key, 20, -2147478516, 0}, -{&GUID_Key, 21, -2147478260, 0}, -{&GUID_Key, 22, -2147478004, 0}, -{&GUID_Key, 23, -2147477748, 0}, -{&GUID_Key, 24, -2147477492, 0}, -{&GUID_Key, 25, -2147477236, 0}, -{&GUID_Key, 26, -2147476980, 0}, -{&GUID_Key, 27, -2147476724, 0}, -{&GUID_Key, 28, -2147476468, 0}, -{&GUID_Key, 29, -2147476212, 0}, -{&GUID_Key, 30, -2147475956, 0}, -{&GUID_Key, 31, -2147475700, 0}, -{&GUID_Key, 32, -2147475444, 0}, -{&GUID_Key, 33, -2147475188, 0}, -{&GUID_Key, 34, -2147474932, 0}, -{&GUID_Key, 35, -2147474676, 0}, -{&GUID_Key, 36, -2147474420, 0}, -{&GUID_Key, 37, -2147474164, 0}, -{&GUID_Key, 38, -2147473908, 0}, -{&GUID_Key, 39, -2147473652, 0}, -{&GUID_Key, 40, -2147473396, 0}, -{&GUID_Key, 41, -2147473140, 0}, -{&GUID_Key, 42, -2147472884, 0}, -{&GUID_Key, 43, -2147472628, 0}, -{&GUID_Key, 44, -2147472372, 0}, -{&GUID_Key, 45, -2147472116, 0}, -{&GUID_Key, 46, -2147471860, 0}, -{&GUID_Key, 47, -2147471604, 0}, -{&GUID_Key, 48, -2147471348, 0}, -{&GUID_Key, 49, -2147471092, 0}, -{&GUID_Key, 50, -2147470836, 0}, -{&GUID_Key, 51, -2147470580, 0}, -{&GUID_Key, 52, -2147470324, 0}, -{&GUID_Key, 53, -2147470068, 0}, -{&GUID_Key, 54, -2147469812, 0}, -{&GUID_Key, 55, -2147469556, 0}, -{&GUID_Key, 56, -2147469300, 0}, -{&GUID_Key, 57, -2147469044, 0}, -{&GUID_Key, 58, -2147468788, 0}, -{&GUID_Key, 59, -2147468532, 0}, -{&GUID_Key, 60, -2147468276, 0}, -{&GUID_Key, 61, -2147468020, 0}, -{&GUID_Key, 62, -2147467764, 0}, -{&GUID_Key, 63, -2147467508, 0}, -{&GUID_Key, 64, -2147467252, 0}, -{&GUID_Key, 65, -2147466996, 0}, -{&GUID_Key, 66, -2147466740, 0}, -{&GUID_Key, 67, -2147466484, 0}, -{&GUID_Key, 68, -2147466228, 0}, -{&GUID_Key, 69, -2147465972, 0}, -{&GUID_Key, 70, -2147465716, 0}, -{&GUID_Key, 71, -2147465460, 0}, -{&GUID_Key, 72, -2147465204, 0}, -{&GUID_Key, 73, -2147464948, 0}, -{&GUID_Key, 74, -2147464692, 0}, -{&GUID_Key, 75, -2147464436, 0}, -{&GUID_Key, 76, -2147464180, 0}, -{&GUID_Key, 77, -2147463924, 0}, -{&GUID_Key, 78, -2147463668, 0}, -{&GUID_Key, 79, -2147463412, 0}, -{&GUID_Key, 80, -2147463156, 0}, -{&GUID_Key, 81, -2147462900, 0}, -{&GUID_Key, 82, -2147462644, 0}, -{&GUID_Key, 83, -2147462388, 0}, -{&GUID_Key, 84, -2147462132, 0}, -{&GUID_Key, 85, -2147461876, 0}, -{&GUID_Key, 86, -2147461620, 0}, -{&GUID_Key, 87, -2147461364, 0}, -{&GUID_Key, 88, -2147461108, 0}, -{&GUID_Key, 89, -2147460852, 0}, -{&GUID_Key, 90, -2147460596, 0}, -{&GUID_Key, 91, -2147460340, 0}, -{&GUID_Key, 92, -2147460084, 0}, -{&GUID_Key, 93, -2147459828, 0}, -{&GUID_Key, 94, -2147459572, 0}, -{&GUID_Key, 95, -2147459316, 0}, -{&GUID_Key, 96, -2147459060, 0}, -{&GUID_Key, 97, -2147458804, 0}, -{&GUID_Key, 98, -2147458548, 0}, -{&GUID_Key, 99, -2147458292, 0}, -{&GUID_Key, 100, -2147458036, 0}, -{&GUID_Key, 101, -2147457780, 0}, -{&GUID_Key, 102, -2147457524, 0}, -{&GUID_Key, 103, -2147457268, 0}, -{&GUID_Key, 104, -2147457012, 0}, -{&GUID_Key, 105, -2147456756, 0}, -{&GUID_Key, 106, -2147456500, 0}, -{&GUID_Key, 107, -2147456244, 0}, -{&GUID_Key, 108, -2147455988, 0}, -{&GUID_Key, 109, -2147455732, 0}, -{&GUID_Key, 110, -2147455476, 0}, -{&GUID_Key, 111, -2147455220, 0}, -{&GUID_Key, 112, -2147454964, 0}, -{&GUID_Key, 113, -2147454708, 0}, -{&GUID_Key, 114, -2147454452, 0}, -{&GUID_Key, 115, -2147454196, 0}, -{&GUID_Key, 116, -2147453940, 0}, -{&GUID_Key, 117, -2147453684, 0}, -{&GUID_Key, 118, -2147453428, 0}, -{&GUID_Key, 119, -2147453172, 0}, -{&GUID_Key, 120, -2147452916, 0}, -{&GUID_Key, 121, -2147452660, 0}, -{&GUID_Key, 122, -2147452404, 0}, -{&GUID_Key, 123, -2147452148, 0}, -{&GUID_Key, 124, -2147451892, 0}, -{&GUID_Key, 125, -2147451636, 0}, -{&GUID_Key, 126, -2147451380, 0}, -{&GUID_Key, 127, -2147451124, 0}, -{&GUID_Key, 128, -2147450868, 0}, -{&GUID_Key, 129, -2147450612, 0}, -{&GUID_Key, 130, -2147450356, 0}, -{&GUID_Key, 131, -2147450100, 0}, -{&GUID_Key, 132, -2147449844, 0}, -{&GUID_Key, 133, -2147449588, 0}, -{&GUID_Key, 134, -2147449332, 0}, -{&GUID_Key, 135, -2147449076, 0}, -{&GUID_Key, 136, -2147448820, 0}, -{&GUID_Key, 137, -2147448564, 0}, -{&GUID_Key, 138, -2147448308, 0}, -{&GUID_Key, 139, -2147448052, 0}, -{&GUID_Key, 140, -2147447796, 0}, -{&GUID_Key, 141, -2147447540, 0}, -{&GUID_Key, 142, -2147447284, 0}, -{&GUID_Key, 143, -2147447028, 0}, -{&GUID_Key, 144, -2147446772, 0}, -{&GUID_Key, 145, -2147446516, 0}, -{&GUID_Key, 146, -2147446260, 0}, -{&GUID_Key, 147, -2147446004, 0}, -{&GUID_Key, 148, -2147445748, 0}, -{&GUID_Key, 149, -2147445492, 0}, -{&GUID_Key, 150, -2147445236, 0}, -{&GUID_Key, 151, -2147444980, 0}, -{&GUID_Key, 152, -2147444724, 0}, -{&GUID_Key, 153, -2147444468, 0}, -{&GUID_Key, 154, -2147444212, 0}, -{&GUID_Key, 155, -2147443956, 0}, -{&GUID_Key, 156, -2147443700, 0}, -{&GUID_Key, 157, -2147443444, 0}, -{&GUID_Key, 158, -2147443188, 0}, -{&GUID_Key, 159, -2147442932, 0}, -{&GUID_Key, 160, -2147442676, 0}, -{&GUID_Key, 161, -2147442420, 0}, -{&GUID_Key, 162, -2147442164, 0}, -{&GUID_Key, 163, -2147441908, 0}, -{&GUID_Key, 164, -2147441652, 0}, -{&GUID_Key, 165, -2147441396, 0}, -{&GUID_Key, 166, -2147441140, 0}, -{&GUID_Key, 167, -2147440884, 0}, -{&GUID_Key, 168, -2147440628, 0}, -{&GUID_Key, 169, -2147440372, 0}, -{&GUID_Key, 170, -2147440116, 0}, -{&GUID_Key, 171, -2147439860, 0}, -{&GUID_Key, 172, -2147439604, 0}, -{&GUID_Key, 173, -2147439348, 0}, -{&GUID_Key, 174, -2147439092, 0}, -{&GUID_Key, 175, -2147438836, 0}, -{&GUID_Key, 176, -2147438580, 0}, -{&GUID_Key, 177, -2147438324, 0}, -{&GUID_Key, 178, -2147438068, 0}, -{&GUID_Key, 179, -2147437812, 0}, -{&GUID_Key, 180, -2147437556, 0}, -{&GUID_Key, 181, -2147437300, 0}, -{&GUID_Key, 182, -2147437044, 0}, -{&GUID_Key, 183, -2147436788, 0}, -{&GUID_Key, 184, -2147436532, 0}, -{&GUID_Key, 185, -2147436276, 0}, -{&GUID_Key, 186, -2147436020, 0}, -{&GUID_Key, 187, -2147435764, 0}, -{&GUID_Key, 188, -2147435508, 0}, -{&GUID_Key, 189, -2147435252, 0}, -{&GUID_Key, 190, -2147434996, 0}, -{&GUID_Key, 191, -2147434740, 0}, -{&GUID_Key, 192, -2147434484, 0}, -{&GUID_Key, 193, -2147434228, 0}, -{&GUID_Key, 194, -2147433972, 0}, -{&GUID_Key, 195, -2147433716, 0}, -{&GUID_Key, 196, -2147433460, 0}, -{&GUID_Key, 197, -2147433204, 0}, -{&GUID_Key, 198, -2147432948, 0}, -{&GUID_Key, 199, -2147432692, 0}, -{&GUID_Key, 200, -2147432436, 0}, -{&GUID_Key, 201, -2147432180, 0}, -{&GUID_Key, 202, -2147431924, 0}, -{&GUID_Key, 203, -2147431668, 0}, -{&GUID_Key, 204, -2147431412, 0}, -{&GUID_Key, 205, -2147431156, 0}, -{&GUID_Key, 206, -2147430900, 0}, -{&GUID_Key, 207, -2147430644, 0}, -{&GUID_Key, 208, -2147430388, 0}, -{&GUID_Key, 209, -2147430132, 0}, -{&GUID_Key, 210, -2147429876, 0}, -{&GUID_Key, 211, -2147429620, 0}, -{&GUID_Key, 212, -2147429364, 0}, -{&GUID_Key, 213, -2147429108, 0}, -{&GUID_Key, 214, -2147428852, 0}, -{&GUID_Key, 215, -2147428596, 0}, -{&GUID_Key, 216, -2147428340, 0}, -{&GUID_Key, 217, -2147428084, 0}, -{&GUID_Key, 218, -2147427828, 0}, -{&GUID_Key, 219, -2147427572, 0}, -{&GUID_Key, 220, -2147427316, 0}, -{&GUID_Key, 221, -2147427060, 0}, -{&GUID_Key, 222, -2147426804, 0}, -{&GUID_Key, 223, -2147426548, 0}, -{&GUID_Key, 224, -2147426292, 0}, -{&GUID_Key, 225, -2147426036, 0}, -{&GUID_Key, 226, -2147425780, 0}, -{&GUID_Key, 227, -2147425524, 0}, -{&GUID_Key, 228, -2147425268, 0}, -{&GUID_Key, 229, -2147425012, 0}, -{&GUID_Key, 230, -2147424756, 0}, -{&GUID_Key, 231, -2147424500, 0}, -{&GUID_Key, 232, -2147424244, 0}, -{&GUID_Key, 233, -2147423988, 0}, -{&GUID_Key, 234, -2147423732, 0}, -{&GUID_Key, 235, -2147423476, 0}, -{&GUID_Key, 236, -2147423220, 0}, -{&GUID_Key, 237, -2147422964, 0}, -{&GUID_Key, 238, -2147422708, 0}, -{&GUID_Key, 239, -2147422452, 0}, -{&GUID_Key, 240, -2147422196, 0}, -{&GUID_Key, 241, -2147421940, 0}, -{&GUID_Key, 242, -2147421684, 0}, -{&GUID_Key, 243, -2147421428, 0}, -{&GUID_Key, 244, -2147421172, 0}, -{&GUID_Key, 245, -2147420916, 0}, -{&GUID_Key, 246, -2147420660, 0}, -{&GUID_Key, 247, -2147420404, 0}, -{&GUID_Key, 248, -2147420148, 0}, -{&GUID_Key, 249, -2147419892, 0}, -{&GUID_Key, 250, -2147419636, 0}, -{&GUID_Key, 251, -2147419380, 0}, -{&GUID_Key, 252, -2147419124, 0}, -{&GUID_Key, 253, -2147418868, 0}, -{&GUID_Key, 254, -2147418612, 0}, -{&GUID_Key, 255, -2147418356, 0} -}; - -const DIDATAFORMAT c_dfDIKeyboard = {sizeof(DIDATAFORMAT), -sizeof(DIOBJECTDATAFORMAT), -0x00000002, -256, -256, -&rgodf_c_dfDIKeyboard[0]}; - -DIOBJECTDATAFORMAT rgodf_c_dfDIMouse[] = { -{&GUID_XAxis, 0, 16776963, 0}, -{&GUID_YAxis, 4, 16776963, 0}, -{&GUID_ZAxis, 8, -2130706685, 0}, -{0, 12, 16776972, 0}, -{0, 13, 16776972, 0}, -{0, 14, -2130706676, 0}, -{0, 15, -2130706676, 0}}; -const DIDATAFORMAT c_dfDIMouse = {sizeof(DIDATAFORMAT), -sizeof(DIOBJECTDATAFORMAT), -0x00000002, -16, -7, -rgodf_c_dfDIMouse}; - -DIOBJECTDATAFORMAT rgodf_c_dfDIMouse2[] = { -{&GUID_XAxis, 0, 16776963, 0}, -{&GUID_YAxis, 4, 16776963, 0}, -{&GUID_ZAxis, 8, -2130706685, 0}, -{0, 12, 16776972, 0}, -{0, 13, 16776972, 0}, -{0, 14, -2130706676, 0}, -{0, 15, -2130706676, 0}, -{0, 16, -2130706676, 0}, -{0, 17, -2130706676, 0}, -{0, 18, -2130706676,0}, -{0, 19, -2130706676, 0}}; -const DIDATAFORMAT c_dfDIMouse2 = {sizeof(DIDATAFORMAT), -sizeof(DIOBJECTDATAFORMAT), -0x00000002, -20, -11, -rgodf_c_dfDIMouse2}; - -DIOBJECTDATAFORMAT rgodf_c_dfDIJoystick[] = { -{&GUID_XAxis, 0, -2130706685, 256}, -{&GUID_YAxis, 4, -2130706685, 256}, -{&GUID_ZAxis, 8, -2130706685, 256}, -{&GUID_RxAxis, 12, -2130706685, 256}, -{&GUID_RyAxis, 16, -2130706685, 256}, -{&GUID_RzAxis, 20, -2130706685, 256}, -{&GUID_Slider, 24, -2130706685, 256}, -{&GUID_Slider, 28, -2130706685, 256}, -{&GUID_POV, 32, -2130706672, 0}, -{&GUID_POV, 36, -2130706672, 0}, -{&GUID_POV, 40, -2130706672, 0}, -{&GUID_POV, 44, -2130706672, 0}, -{0, 48, -2130706676, 0}, -{0, 49, -2130706676, 0}, -{0, 50, -2130706676, 0}, -{0, 51, -2130706676, 0}, -{0, 52, -2130706676, 0}, -{0, 53, -2130706676, 0}, -{0, 54, -2130706676, 0}, -{0, 55, -2130706676, 0}, -{0, 56, -2130706676, 0}, -{0, 57, -2130706676, 0}, -{0, 58, -2130706676, 0}, -{0, 59, -2130706676, 0}, -{0, 60, -2130706676, 0}, -{0, 61, -2130706676, 0}, -{0, 62, -2130706676, 0}, -{0, 63, -2130706676, 0}, -{0, 64, -2130706676, 0}, -{0, 65, -2130706676, 0}, -{0, 66, -2130706676, 0}, -{0, 67, -2130706676, 0}, -{0, 68, -2130706676, 0}, -{0, 69, -2130706676, 0}, -{0, 70, -2130706676, 0}, -{0, 71, -2130706676, 0}, -{0, 72, -2130706676, 0}, -{0, 73, -2130706676, 0}, -{0, 74, -2130706676, 0}, -{0, 75, -2130706676, 0}, -{0, 76, -2130706676, 0}, -{0, 77, -2130706676, 0}, -{0, 78, -2130706676, 0}, -{0, 79, -2130706676, 0}}; -const DIDATAFORMAT c_dfDIJoystick = {sizeof(DIDATAFORMAT), -sizeof(DIOBJECTDATAFORMAT), -0x00000001, -80, -44, -rgodf_c_dfDIJoystick}; - -DIOBJECTDATAFORMAT rgodf_c_dfDIJoystick2[] = { -{&GUID_XAxis, 0, -2130706685, 256}, -{&GUID_YAxis, 4, -2130706685, 256}, -{&GUID_ZAxis, 8, -2130706685, 256}, -{&GUID_RxAxis, 12, -2130706685, 256}, -{&GUID_RyAxis, 16, -2130706685, 256}, -{&GUID_RzAxis, 20, -2130706685, 256}, -{&GUID_Slider, 24, -2130706685, 256}, -{&GUID_Slider, 28, -2130706685, 256}, -{&GUID_POV, 32, -2130706672, 0}, -{&GUID_POV, 36, -2130706672, 0}, -{&GUID_POV, 40, -2130706672, 0}, -{&GUID_POV, 44, -2130706672, 0}, -{0, 48, -2130706676, 0}, -{0, 49, -2130706676, 0}, -{0, 50, -2130706676, 0}, -{0, 51, -2130706676, 0}, -{0, 52, -2130706676, 0}, -{0, 53, -2130706676, 0}, -{0, 54, -2130706676, 0}, -{0, 55, -2130706676, 0}, -{0, 56, -2130706676, 0}, -{0, 57, -2130706676, 0}, -{0, 58, -2130706676, 0}, -{0, 59, -2130706676, 0}, -{0, 60, -2130706676, 0}, -{0, 61, -2130706676, 0}, -{0, 62, -2130706676, 0}, -{0, 63, -2130706676, 0}, -{0, 64, -2130706676, 0}, -{0, 65, -2130706676, 0}, -{0, 66, -2130706676, 0}, -{0, 67, -2130706676, 0}, -{0, 68, -2130706676, 0}, -{0, 69, -2130706676, 0}, -{0, 70, -2130706676, 0}, -{0, 71, -2130706676, 0}, -{0, 72, -2130706676, 0}, -{0, 73, -2130706676, 0}, -{0, 74, -2130706676, 0}, -{0, 75, -2130706676, 0}, -{0, 76, -2130706676, 0}, -{0, 77, -2130706676, 0}, -{0, 78, -2130706676, 0}, -{0, 79, -2130706676, 0}, -{0, 80, -2130706676, 0}, -{0, 81, -2130706676, 0}, -{0, 82, -2130706676, 0}, -{0, 83, -2130706676, 0}, -{0, 84, -2130706676, 0}, -{0, 85, -2130706676, 0}, -{0, 86, -2130706676, 0}, -{0, 87, -2130706676, 0}, -{0, 88, -2130706676, 0}, -{0, 89, -2130706676, 0}, -{0, 90, -2130706676, 0}, -{0, 91, -2130706676, 0}, -{0, 92, -2130706676, 0}, -{0, 93, -2130706676, 0}, -{0, 94, -2130706676, 0}, -{0, 95, -2130706676, 0}, -{0, 96, -2130706676, 0}, -{0, 97, -2130706676, 0}, -{0, 98, -2130706676, 0}, -{0, 99, -2130706676, 0}, -{0, 100, -2130706676, 0}, -{0, 101, -2130706676, 0}, -{0, 102, -2130706676, 0}, -{0, 103, -2130706676, 0}, -{0, 104, -2130706676, 0}, -{0, 105, -2130706676, 0}, -{0, 106, -2130706676, 0}, -{0, 107, -2130706676, 0}, -{0, 108, -2130706676, 0}, -{0, 109, -2130706676, 0}, -{0, 110, -2130706676, 0}, -{0, 111, -2130706676, 0}, -{0, 112, -2130706676, 0}, -{0, 113, -2130706676, 0}, -{0, 114, -2130706676, 0}, -{0, 115, -2130706676, 0}, -{0, 116, -2130706676, 0}, -{0, 117, -2130706676, 0}, -{0, 118, -2130706676, 0}, -{0, 119, -2130706676, 0}, -{0, 120, -2130706676, 0}, -{0, 121, -2130706676, 0}, -{0, 122, -2130706676, 0}, -{0, 123, -2130706676, 0}, -{0, 124, -2130706676, 0}, -{0, 125, -2130706676, 0}, -{0, 126, -2130706676, 0}, -{0, 127, -2130706676, 0}, -{0, 128, -2130706676, 0}, -{0, 129, -2130706676, 0}, -{0, 130, -2130706676, 0}, -{0, 131, -2130706676, 0}, -{0, 132, -2130706676, 0}, -{0, 133, -2130706676, 0}, -{0, 134, -2130706676, 0}, -{0, 135, -2130706676, 0}, -{0, 136, -2130706676, 0}, -{0, 137, -2130706676, 0}, -{0, 138, -2130706676, 0}, -{0, 139, -2130706676, 0}, -{0, 140, -2130706676, 0}, -{0, 141, -2130706676, 0}, -{0, 142, -2130706676, 0}, -{0, 143, -2130706676, 0}, -{0, 144, -2130706676, 0}, -{0, 145, -2130706676, 0}, -{0, 146, -2130706676, 0}, -{0, 147, -2130706676, 0}, -{0, 148, -2130706676, 0}, -{0, 149, -2130706676, 0}, -{0, 150, -2130706676, 0}, -{0, 151, -2130706676, 0}, -{0, 152, -2130706676, 0}, -{0, 153, -2130706676, 0}, -{0, 154, -2130706676, 0}, -{0, 155, -2130706676, 0}, -{0, 156, -2130706676, 0}, -{0, 157, -2130706676, 0}, -{0, 158, -2130706676, 0}, -{0, 159, -2130706676, 0}, -{0, 160, -2130706676, 0}, -{0, 161, -2130706676, 0}, -{0, 162, -2130706676, 0}, -{0, 163, -2130706676, 0}, -{0, 164, -2130706676, 0}, -{0, 165, -2130706676, 0}, -{0, 166, -2130706676, 0}, -{0, 167, -2130706676, 0}, -{0, 168, -2130706676, 0}, -{0, 169, -2130706676, 0}, -{0, 170, -2130706676, 0}, -{0, 171, -2130706676, 0}, -{0, 172, -2130706676, 0}, -{0, 173, -2130706676, 0}, -{0, 174, -2130706676, 0}, -{0, 175, -2130706676, 0}, -{&GUID_XAxis, 176, -2130706685, 512}, -{&GUID_YAxis, 180, -2130706685, 512}, -{&GUID_ZAxis, 184, -2130706685, 512}, -{&GUID_RxAxis, 188, -2130706685, 512}, -{&GUID_RyAxis, 192, -2130706685, 512}, -{&GUID_RzAxis, 196, -2130706685, 512}, -{&GUID_Slider, 24, -2130706685, 512}, -{&GUID_Slider, 28, -2130706685, 512}, -{&GUID_XAxis, 208, -2130706685, 768}, -{&GUID_YAxis, 212, -2130706685, 768}, -{&GUID_ZAxis, 216, -2130706685, 768}, -{&GUID_RxAxis, 220, -2130706685, 768}, -{&GUID_RyAxis, 224, -2130706685, 768}, -{&GUID_RzAxis, 228, -2130706685, 768}, -{&GUID_Slider, 24, -2130706685, 768}, -{&GUID_Slider, 28, -2130706685, 768}, -{&GUID_XAxis, 240, -2130706685, 1024}, -{&GUID_YAxis, 244, -2130706685, 1024}, -{&GUID_ZAxis, 248, -2130706685, 1024}, -{&GUID_RxAxis, 252, -2130706685, 1024}, -{&GUID_RyAxis, 256, -2130706685, 1024}, -{&GUID_RzAxis, 260, -2130706685, 1024}, -{&GUID_Slider, 24, -2130706685, 1024}, -{&GUID_Slider, 28, -2130706685, 1024}}; -const DIDATAFORMAT c_dfDIJoystick2 = {sizeof(DIDATAFORMAT), -sizeof(DIOBJECTDATAFORMAT), -0x00000001, -272, -164, -rgodf_c_dfDIJoystick2}; - - - - - diff --git a/platform/Windows/src/dxlibs/dinput.def b/platform/Windows/src/dxlibs/dinput.def deleted file mode 100644 index c89f1cb69..000000000 --- a/platform/Windows/src/dxlibs/dinput.def +++ /dev/null @@ -1,6 +0,0 @@ -LIBRARY "dinput.dll" -EXPORTS -DirectInputCreateA@16 -DirectInputCreateEx@20 -DirectInputCreateW@16 - diff --git a/platform/Windows/src/dxlibs/dinput8.def b/platform/Windows/src/dxlibs/dinput8.def deleted file mode 100644 index 572104a00..000000000 --- a/platform/Windows/src/dxlibs/dinput8.def +++ /dev/null @@ -1,4 +0,0 @@ -LIBRARY "dinput8.dll" -EXPORTS -DirectInput8Create@20 - diff --git a/platform/Windows/src/dxlibs/dplayx.def b/platform/Windows/src/dxlibs/dplayx.def deleted file mode 100644 index 237ecac58..000000000 --- a/platform/Windows/src/dxlibs/dplayx.def +++ /dev/null @@ -1,8 +0,0 @@ -LIBRARY "dplayx.dll" -EXPORTS -DirectPlayCreate@12 -DirectPlayEnumerate@8 -DirectPlayEnumerateA@8 -DirectPlayEnumerateW@8 -DirectPlayLobbyCreateA@20 -DirectPlayLobbyCreateW@20 diff --git a/platform/Windows/src/dxlibs/dpnaddr.def b/platform/Windows/src/dxlibs/dpnaddr.def deleted file mode 100644 index 48c1ed175..000000000 --- a/platform/Windows/src/dxlibs/dpnaddr.def +++ /dev/null @@ -1,3 +0,0 @@ -LIBRARY "dpnaddr.dll" -EXPORTS -DirectPlay8AddressCreate@12 diff --git a/platform/Windows/src/dxlibs/dpnet.def b/platform/Windows/src/dxlibs/dpnet.def deleted file mode 100644 index 1e1a20049..000000000 --- a/platform/Windows/src/dxlibs/dpnet.def +++ /dev/null @@ -1,3 +0,0 @@ -LIBRARY "dpnet.dll" -EXPORTS -DirectPlay8Create@12 diff --git a/platform/Windows/src/dxlibs/dpnlobby.def b/platform/Windows/src/dxlibs/dpnlobby.def deleted file mode 100644 index 3b1884ae4..000000000 --- a/platform/Windows/src/dxlibs/dpnlobby.def +++ /dev/null @@ -1,3 +0,0 @@ -LIBRARY "dpnlobby.dll" -EXPORTS -DirectPlay8LobbyCreate@12 diff --git a/platform/Windows/src/dxlibs/dpvoice.def b/platform/Windows/src/dxlibs/dpvoice.def deleted file mode 100644 index 94b6757d7..000000000 --- a/platform/Windows/src/dxlibs/dpvoice.def +++ /dev/null @@ -1,3 +0,0 @@ -LIBRARY "dpvoice.dll" -EXPORTS -DirectPlayVoiceCreate@12 diff --git a/platform/Windows/src/dxlibs/dsetup.def b/platform/Windows/src/dxlibs/dsetup.def deleted file mode 100644 index cc62beed1..000000000 --- a/platform/Windows/src/dxlibs/dsetup.def +++ /dev/null @@ -1,18 +0,0 @@ -LIBRARY "DSETUP.dll" -EXPORTS -DirectXDeviceDriverSetupA@16 -DirectXDeviceDriverSetupW@16 -DirectXLoadString@12 -DirectXRegisterApplicationA@8 -DirectXRegisterApplicationW@8 -DirectXSetupA@12 -DirectXSetupCallback@20 -DirectXSetupGetFileVersion@12 -DirectXSetupGetVersion@8 -DirectXSetupIsEng@0 -DirectXSetupIsJapan@0 -DirectXSetupIsJapanNec@0 -DirectXSetupSetCallback@4 -DirectXSetupShowEULA@4 -DirectXSetupW@12 -DirectXUnRegisterApplication@8 diff --git a/platform/Windows/src/dxlibs/dsound.def b/platform/Windows/src/dxlibs/dsound.def deleted file mode 100644 index c59e0760d..000000000 --- a/platform/Windows/src/dxlibs/dsound.def +++ /dev/null @@ -1,13 +0,0 @@ -LIBRARY "dsound.dll" -EXPORTS -DirectSoundCaptureCreate8@12 -DirectSoundCaptureCreate@12 -DirectSoundCaptureEnumerateA@8 -DirectSoundCaptureEnumerateW@8 -DirectSoundCreate8@12 -DirectSoundCreate@12 -DirectSoundCreate -DirectSoundEnumerateA@8 -DirectSoundEnumerateW@8 -DirectSoundFullDuplexCreate@40 -GetDeviceID@8 diff --git a/platform/Windows/src/dxlibs/dxguid.c b/platform/Windows/src/dxlibs/dxguid.c deleted file mode 100644 index 69a2c17e8..000000000 --- a/platform/Windows/src/dxlibs/dxguid.c +++ /dev/null @@ -1,580 +0,0 @@ - -#define DIRECTINPUT_VERSION 0x0700 -#include "dx/dinput.h" -/* This is a replacement for Microsoft's dxguid.lib. */ - -#undef DEFINE_GUID -#define DEFINE_GUID(n,a,b,c,d,e,f,g,h,i,j,k) const GUID n = {a,b,c,{d,e,f,g,h,i,j,k}} - -/* d3rmobj.h */ -DEFINE_GUID(CLSID_CDirect3DRMDevice, 0x4fa3568e, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); -DEFINE_GUID(CLSID_CDirect3DRMViewport, 0x4fa3568f, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); -DEFINE_GUID(CLSID_CDirect3DRMFrame, 0x4fa35690, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); -DEFINE_GUID(CLSID_CDirect3DRMMesh, 0x4fa35691, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); -DEFINE_GUID(CLSID_CDirect3DRMMeshBuilder, 0x4fa35692, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); -DEFINE_GUID(CLSID_CDirect3DRMFace, 0x4fa35693, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); -DEFINE_GUID(CLSID_CDirect3DRMLight, 0x4fa35694, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); -DEFINE_GUID(CLSID_CDirect3DRMTexture, 0x4fa35695, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); -DEFINE_GUID(CLSID_CDirect3DRMWrap, 0x4fa35696, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); -DEFINE_GUID(CLSID_CDirect3DRMMaterial, 0x4fa35697, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); -DEFINE_GUID(CLSID_CDirect3DRMAnimation, 0x4fa35698, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); -DEFINE_GUID(CLSID_CDirect3DRMAnimationSet, 0x4fa35699, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); -DEFINE_GUID(CLSID_CDirect3DRMUserVisual, 0x4fa3569a, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); -DEFINE_GUID(CLSID_CDirect3DRMShadow, 0x4fa3569b, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); -DEFINE_GUID(CLSID_CDirect3DRMViewportInterpolator, -0xde9eaa1, 0x3b84, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3); -DEFINE_GUID(CLSID_CDirect3DRMFrameInterpolator, -0xde9eaa2, 0x3b84, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3); -DEFINE_GUID(CLSID_CDirect3DRMMeshInterpolator, -0xde9eaa3, 0x3b84, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3); -DEFINE_GUID(CLSID_CDirect3DRMLightInterpolator, -0xde9eaa6, 0x3b84, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3); -DEFINE_GUID(CLSID_CDirect3DRMMaterialInterpolator, -0xde9eaa7, 0x3b84, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3); -DEFINE_GUID(CLSID_CDirect3DRMTextureInterpolator, -0xde9eaa8, 0x3b84, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3); -DEFINE_GUID(CLSID_CDirect3DRMProgressiveMesh, 0x4516ec40, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3); -DEFINE_GUID(CLSID_CDirect3DRMClippedVisual, 0x5434e72d, 0x6d66, 0x11d1, 0xbb, 0xb, 0x0, 0x0, 0xf8, 0x75, 0x86, 0x5a); - -/* d3rmwin.h */ -DEFINE_GUID(IID_IDirect3DRMWinDevice, 0xc5016cc0, 0xd273, 0x11ce, 0xac, 0x48, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); - -/* dpaddr.h */ -DEFINE_GUID(CLSID_DirectPlay8Address,0x934a9523, 0xa3ca, 0x4bc5, 0xad, 0xa0, 0xd6, 0xd9, 0x5d, 0x97, 0x94, 0x21); -DEFINE_GUID(IID_IDirectPlay8Address, 0x83783300, 0x4063, 0x4c8a, 0x9d, 0xb3, 0x82, 0x83, 0xa, 0x7f, 0xeb, 0x31); -DEFINE_GUID(IID_IDirectPlay8AddressIP,0xe5a0e990, 0x2bad, 0x430b, 0x87, 0xda, 0xa1, 0x42, 0xcf, 0x75, 0xde, 0x58); - - -/* dplay.h */ -DEFINE_GUID(IID_IDirectPlay2, 0x2b74f7c0, 0x9154, 0x11cf, 0xa9, 0xcd, 0x0, 0xaa, 0x0, 0x68, 0x86, 0xe3); -DEFINE_GUID(IID_IDirectPlay2A,0x9d460580, 0xa822, 0x11cf, 0x96, 0xc, 0x0, 0x80, 0xc7, 0x53, 0x4e, 0x82); - -DEFINE_GUID(IID_IDirectPlay3, 0x133efe40, 0x32dc, 0x11d0, 0x9c, 0xfb, 0x0, 0xa0, 0xc9, 0xa, 0x43, 0xcb); -DEFINE_GUID(IID_IDirectPlay3A,0x133efe41, 0x32dc, 0x11d0, 0x9c, 0xfb, 0x0, 0xa0, 0xc9, 0xa, 0x43, 0xcb); - -DEFINE_GUID(IID_IDirectPlay4, 0xab1c530, 0x4745, 0x11d1, 0xa7, 0xa1, 0x0, 0x0, 0xf8, 0x3, 0xab, 0xfc); -DEFINE_GUID(IID_IDirectPlay4A,0xab1c531, 0x4745, 0x11d1, 0xa7, 0xa1, 0x0, 0x0, 0xf8, 0x3, 0xab, 0xfc); - -DEFINE_GUID(CLSID_DirectPlay,0xd1eb6d20, 0x8923, 0x11d0, 0x9d, 0x97, 0x0, 0xa0, 0xc9, 0xa, 0x43, 0xcb); - -DEFINE_GUID(DPSPGUID_IPX, 0x685bc400, 0x9d2c, 0x11cf, 0xa9, 0xcd, 0x0, 0xaa, 0x0, 0x68, 0x86, 0xe3); -DEFINE_GUID(DPSPGUID_TCPIP, 0x36E95EE0, 0x8577, 0x11cf, 0x96, 0xc, 0x0, 0x80, 0xc7, 0x53, 0x4e, 0x82); -DEFINE_GUID(DPSPGUID_SERIAL, 0xf1d6860, 0x88d9, 0x11cf, 0x9c, 0x4e, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e); -DEFINE_GUID(DPSPGUID_MODEM, 0x44eaa760, 0xcb68, 0x11cf, 0x9c, 0x4e, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e); -DEFINE_GUID(IID_IDirectPlay, 0x5454e9a0, 0xdb65, 0x11ce, 0x92, 0x1c, 0x00, 0xaa, 0x00, 0x6c, 0x49, 0x72); - -/* dplay8.h */ -DEFINE_GUID(CLSID_DirectPlay8Client,0x743f1dc6, 0x5aba, 0x429f, 0x8b, 0xdf, 0xc5, 0x4d, 0x3, 0x25, 0x3d, 0xc2); -DEFINE_GUID(CLSID_DirectPlay8Peer,0x286f484d, 0x375e, 0x4458, 0xa2, 0x72, 0xb1, 0x38, 0xe2, 0xf8, 0xa, 0x6a); -DEFINE_GUID(CLSID_DirectPlay8Server,0xda825e1b, 0x6830, 0x43d7, 0x83, 0x5d, 0xb, 0x5a, 0xd8, 0x29, 0x56, 0xa2); -DEFINE_GUID(IID_IDirectPlay8Client, 0x5102dacd, 0x241b, 0x11d3, 0xae, 0xa7, 0x0, 0x60, 0x97, 0xb0, 0x14, 0x11); -DEFINE_GUID(IID_IDirectPlay8Peer, 0x5102dacf, 0x241b, 0x11d3, 0xae, 0xa7, 0x0, 0x60, 0x97, 0xb0, 0x14, 0x11); -DEFINE_GUID(IID_IDirectPlay8Server, 0x5102dace, 0x241b, 0x11d3, 0xae, 0xa7, 0x0, 0x60, 0x97, 0xb0, 0x14, 0x11); - -DEFINE_GUID(CLSID_DP8SP_IPX, 0x53934290, 0x628d, 0x11d2, 0xae, 0xf, 0x0, 0x60, 0x97, 0xb0, 0x14, 0x11); -DEFINE_GUID(CLSID_DP8SP_MODEM, 0x6d4a3650, 0x628d, 0x11d2, 0xae, 0xf, 0x0, 0x60, 0x97, 0xb0, 0x14, 0x11); -DEFINE_GUID(CLSID_DP8SP_SERIAL, 0x743b5d60, 0x628d, 0x11d2, 0xae, 0xf, 0x0, 0x60, 0x97, 0xb0, 0x14, 0x11); -DEFINE_GUID(CLSID_DP8SP_TCPIP, 0xebfe7ba0, 0x628d, 0x11d2, 0xae, 0xf, 0x0, 0x60, 0x97, 0xb0, 0x14, 0x11); - -/* dplobby.h */ -DEFINE_GUID(IID_IDirectPlayLobby, 0xaf465c71, 0x9588, 0x11cf, 0xa0, 0x20, 0x0, 0xaa, 0x0, 0x61, 0x57, 0xac); -DEFINE_GUID(IID_IDirectPlayLobbyA, 0x26c66a70, 0xb367, 0x11cf, 0xa0, 0x24, 0x0, 0xaa, 0x0, 0x61, 0x57, 0xac); -DEFINE_GUID(IID_IDirectPlayLobby2, 0x194c220, 0xa303, 0x11d0, 0x9c, 0x4f, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e); -DEFINE_GUID(IID_IDirectPlayLobby2A, 0x1bb4af80, 0xa303, 0x11d0, 0x9c, 0x4f, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e); -DEFINE_GUID(IID_IDirectPlayLobby3, 0x2db72490, 0x652c, 0x11d1, 0xa7, 0xa8, 0x0, 0x0, 0xf8, 0x3, 0xab, 0xfc); -DEFINE_GUID(IID_IDirectPlayLobby3A, 0x2db72491, 0x652c, 0x11d1, 0xa7, 0xa8, 0x0, 0x0, 0xf8, 0x3, 0xab, 0xfc); -DEFINE_GUID(CLSID_DirectPlayLobby, 0x2fe8f810, 0xb2a5, 0x11d0, 0xa7, 0x87, 0x0, 0x0, 0xf8, 0x3, 0xab, 0xfc); -DEFINE_GUID(DPLPROPERTY_MessagesSupported, 0x762ccda1, 0xd916, 0x11d0, 0xba, 0x39, 0x0, 0xc0, 0x4f, 0xd7, 0xed, 0x67); -DEFINE_GUID(DPLPROPERTY_LobbyGuid, 0xf56920a0, 0xd218, 0x11d0, 0xba, 0x39, 0x0, 0xc0, 0x4f, 0xd7, 0xed, 0x67); -DEFINE_GUID(DPLPROPERTY_PlayerGuid, 0xb4319322, 0xd20d, 0x11d0, 0xba, 0x39, 0x0, 0xc0, 0x4f, 0xd7, 0xed, 0x67); -DEFINE_GUID(DPLPROPERTY_PlayerScore, 0x48784000, 0xd219, 0x11d0, 0xba, 0x39, 0x0, 0xc0, 0x4f, 0xd7, 0xed, 0x67); -DEFINE_GUID(DPAID_TotalSize, 0x1318f560, 0x912c, 0x11d0, 0x9d, 0xaa, 0x0, 0xa0, 0xc9, 0xa, 0x43, 0xcb); -DEFINE_GUID(DPAID_ServiceProvider, 0x7d916c0, 0xe0af, 0x11cf, 0x9c, 0x4e, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e); -DEFINE_GUID(DPAID_LobbyProvider, 0x59b95640, 0x9667, 0x11d0, 0xa7, 0x7d, 0x0, 0x0, 0xf8, 0x3, 0xab, 0xfc); -DEFINE_GUID(DPAID_Phone, 0x78ec89a0, 0xe0af, 0x11cf, 0x9c, 0x4e, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e); -DEFINE_GUID(DPAID_PhoneW, 0xba5a7a70, 0x9dbf, 0x11d0, 0x9c, 0xc1, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e); -DEFINE_GUID(DPAID_Modem, 0xf6dcc200, 0xa2fe, 0x11d0, 0x9c, 0x4f, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e); -DEFINE_GUID(DPAID_ModemW, 0x1fd92e0, 0xa2ff, 0x11d0, 0x9c, 0x4f, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e); -DEFINE_GUID(DPAID_INet, 0xc4a54da0, 0xe0af, 0x11cf, 0x9c, 0x4e, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e); -DEFINE_GUID(DPAID_INetW, 0xe63232a0, 0x9dbf, 0x11d0, 0x9c, 0xc1, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e); -DEFINE_GUID(DPAID_INetPort, 0xe4524541, 0x8ea5, 0x11d1, 0x8a, 0x96, 0x0, 0x60, 0x97, 0xb0, 0x14, 0x11); -DEFINE_GUID(DPAID_MaxMessageSize, 0xf5d09980, 0xf0c4, 0x11d1, 0x83, 0x26, 0x0, 0x60, 0x97, 0xb0, 0x14, 0x11); -DEFINE_GUID(DPAID_ComPort, 0xf2f0ce00, 0xe0af, 0x11cf, 0x9c, 0x4e, 0x0, 0xa0, 0xc9, 0x5, 0x42, 0x5e); - -/* dplobby8.h */ -DEFINE_GUID(CLSID_DirectPlay8LobbiedApplication, 0x667955ad, 0x6b3b, 0x43ca, 0xb9, 0x49, 0xbc, 0x69, 0xb5, 0xba, 0xff, 0x7f); -DEFINE_GUID(CLSID_DirectPlay8LobbyClient, 0x3b2b6775, 0x70b6, 0x45af, 0x8d, 0xea, 0xa2, 0x9, 0xc6, 0x95, 0x59, 0xf3); -DEFINE_GUID(IID_IDirectPlay8LobbiedApplication, 0x819074a3, 0x16c, 0x11d3, 0xae, 0x14, 0x0, 0x60, 0x97, 0xb0, 0x14, 0x11); -DEFINE_GUID(IID_IDirectPlay8LobbyClient, 0x819074a2, 0x16c, 0x11d3, 0xae, 0x14, 0x0, 0x60, 0x97, 0xb0, 0x14, 0x11); - -/* dvoice.h */ -DEFINE_GUID(CLSID_DirectPlayVoiceClient, 0xb9f3eb85, 0xb781, 0x4ac1, 0x8d, 0x90, 0x93, 0xa0, 0x5e, 0xe3, 0x7d, 0x7d); -DEFINE_GUID(CLSID_DirectPlayVoiceServer, 0xd3f5b8e6, 0x9b78, 0x4a4c, 0x94, 0xea, 0xca, 0x23, 0x97, 0xb6, 0x63, 0xd3); -DEFINE_GUID(CLSID_DirectPlayVoiceTest, 0xf0f094b, 0xb01c, 0x4091, 0xa1, 0x4d, 0xdd, 0xc, 0xd8, 0x7, 0x71, 0x1a); -DEFINE_GUID(IID_IDirectPlayVoiceClient, 0x1dfdc8ea, 0xbcf7, 0x41d6, 0xb2, 0x95, 0xab, 0x64, 0xb3, 0xb2, 0x33, 0x6); -DEFINE_GUID(IID_IDirectPlayVoiceServer, 0xfaa1c173, 0x468, 0x43b6, 0x8a, 0x2a, 0xea, 0x8a, 0x4f, 0x20, 0x76, 0xc9); -DEFINE_GUID(IID_IDirectPlayVoiceTest, 0xd26af734, 0x208b, 0x41da, 0x82, 0x24, 0xe0, 0xce, 0x79, 0x81, 0xb, 0xe1); -DEFINE_GUID(DPVCTGUID_ADPCM, 0x699b52c1, 0xa885, 0x46a8, 0xa3, 0x8, 0x97, 0x17, 0x24, 0x19, 0xad, 0xc7); -DEFINE_GUID(DPVCTGUID_GSM,0x24768c60, 0x5a0d, 0x11d3, 0x9b, 0xe4, 0x52, 0x54, 0x0, 0xd9, 0x85, 0xe7); -DEFINE_GUID(DPVCTGUID_NONE, 0x8de12fd4, 0x7cb3, 0x48ce, 0xa7, 0xe8, 0x9c, 0x47, 0xa2, 0x2e, 0x8a, 0xc5); -DEFINE_GUID(DPVCTGUID_SC03, 0x7d82a29b, 0x2242, 0x4f82, 0x8f, 0x39, 0x5d, 0x11, 0x53, 0xdf, 0x3e, 0x41); -DEFINE_GUID(DPVCTGUID_SC06, 0x53def900, 0x7168, 0x4633, 0xb4, 0x7f, 0xd1, 0x43, 0x91, 0x6a, 0x13, 0xc7); -DEFINE_GUID(DPVCTGUID_TRUESPEECH, 0xd7954361, 0x5a0b, 0x11d3, 0x9b, 0xe4, 0x52, 0x54, 0x0, 0xd9, 0x85, 0xe7); -DEFINE_GUID(DPVCTGUID_VR12, 0xfe44a9fe, 0x8ed4, 0x48bf, 0x9d, 0x66, 0x1b, 0x1a, 0xdf, 0xf9, 0xff, 0x6d); - -/* dxfile.h */ -DEFINE_GUID(CLSID_CDirectXFile, 0x4516ec43, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3); -DEFINE_GUID(IID_IDirectXFile, 0x3d82ab40, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -DEFINE_GUID(IID_IDirectXFileEnumObject, 0x3d82ab41, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -DEFINE_GUID(IID_IDirectXFileSaveObject, 0x3d82ab42, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -DEFINE_GUID(IID_IDirectXFileObject, 0x3d82ab43, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -DEFINE_GUID(IID_IDirectXFileData, 0x3d82ab44, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -DEFINE_GUID(IID_IDirectXFileDataReference, 0x3d82ab45, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -DEFINE_GUID(IID_IDirectXFileBinary, 0x3d82ab46, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -DEFINE_GUID(TID_DXFILEHeader, 0x3d82ab43, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); - -/* rmxfguid.h */ -DEFINE_GUID(TID_D3DRMInfo, 0x2b957100, 0x9e9a, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -DEFINE_GUID(TID_D3DRMMesh, 0x3d82ab44, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -DEFINE_GUID(TID_D3DRMVector, 0x3d82ab5e, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -DEFINE_GUID(TID_D3DRMMeshFace, 0x3d82ab5f, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -DEFINE_GUID(TID_D3DRMMaterial, 0x3d82ab4d, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -DEFINE_GUID(TID_D3DRMMaterialArray, 0x35ff44e1, 0x6c7c, 0x11cf, 0x8F, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMFrame, 0x3d82ab46, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -DEFINE_GUID(TID_D3DRMFrameTransformMatrix, 0xf6f23f41, 0x7686, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMMeshMaterialList, 0xf6f23f42, 0x7686, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMMeshTextureCoords, 0xf6f23f40, 0x7686, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMMeshNormals, 0xf6f23f43, 0x7686, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMCoords2d, 0xf6f23f44, 0x7686, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMMatrix4x4, 0xf6f23f45, 0x7686, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMAnimation, 0x3d82ab4f, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -DEFINE_GUID(TID_D3DRMAnimationSet, 0x3d82ab50, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -DEFINE_GUID(TID_D3DRMAnimationKey, 0x10dd46a8, 0x775b, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xA3); -DEFINE_GUID(TID_D3DRMFloatKeys, 0x10dd46a9, 0x775b, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xA3); -DEFINE_GUID(TID_D3DRMMaterialAmbientColor, 0x01411840, 0x7786, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xA3); -DEFINE_GUID(TID_D3DRMMaterialDiffuseColor, 0x01411841, 0x7786, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xA3); -DEFINE_GUID(TID_D3DRMMaterialSpecularColor, 0x01411842, 0x7786, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xA3); -DEFINE_GUID(TID_D3DRMMaterialEmissiveColor, 0xd3e16e80, 0x7835, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMMaterialPower, 0x01411843, 0x7786, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xA3); -DEFINE_GUID(TID_D3DRMColorRGBA, 0x35ff44e0, 0x6c7c, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xA3); -DEFINE_GUID(TID_D3DRMColorRGB, 0xd3e16e81, 0x7835, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMGuid, 0xa42790e0, 0x7810, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMTextureFilename, 0xa42790e1, 0x7810, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMTextureReference, 0xa42790e2, 0x7810, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMIndexedColor, 0x1630b820, 0x7842, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMMeshVertexColors, 0x1630b821, 0x7842, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMMaterialWrap, 0x4885ae60, 0x78e8, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMBoolean, 0x537da6a0, 0xca37, 0x11d0, 0x94, 0x1c, 0x0, 0x80, 0xc8, 0xc, 0xfa, 0x7b); -DEFINE_GUID(TID_D3DRMMeshFaceWraps, 0xed1ec5c0, 0xc0a8, 0x11d0, 0x94, 0x1c, 0x0, 0x80, 0xc8, 0xc, 0xfa, 0x7b); -DEFINE_GUID(TID_D3DRMBoolean2d, 0x4885ae63, 0x78e8, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMTimedFloatKeys, 0xf406b180, 0x7b3b, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMAnimationOptions, 0xe2bf56c0, 0x840f, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMFramePosition, 0xe2bf56c1, 0x840f, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMFrameVelocity, 0xe2bf56c2, 0x840f, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMFrameRotation, 0xe2bf56c3, 0x840f, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -DEFINE_GUID(TID_D3DRMLight, 0x3d82ab4a, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -DEFINE_GUID(TID_D3DRMCamera, 0x3d82ab51, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -DEFINE_GUID(TID_D3DRMAppData, 0xe5745280, 0xb24f, 0x11cf, 0x9d, 0xd5, 0x0, 0xaa, 0x0, 0xa7, 0x1a, 0x2f); -DEFINE_GUID(TID_D3DRMLightUmbra, 0xaed22740, 0xb31f, 0x11cf, 0x9d, 0xd5, 0x0, 0xaa, 0x0, 0xa7, 0x1a, 0x2f); -DEFINE_GUID(TID_D3DRMLightRange, 0xaed22742, 0xb31f, 0x11cf, 0x9d, 0xd5, 0x0, 0xaa, 0x0, 0xa7, 0x1a, 0x2f); -DEFINE_GUID(TID_D3DRMLightPenumbra, 0xaed22741, 0xb31f, 0x11cf, 0x9d, 0xd5, 0x0, 0xaa, 0x0, 0xa7, 0x1a, 0x2f); -DEFINE_GUID(TID_D3DRMLightAttenuation, 0xa8a98ba0, 0xc5e5, 0x11cf, 0xb9, 0x41, 0x0, 0x80, 0xc8, 0xc, 0xfa, 0x7b); -DEFINE_GUID(TID_D3DRMInlineData, 0x3a23eea0, 0x94b1, 0x11d0, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -DEFINE_GUID(TID_D3DRMUrl, 0x3a23eea1, 0x94b1, 0x11d0, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -DEFINE_GUID(TID_D3DRMProgressiveMesh, 0x8A63C360, 0x997D, 0x11d0, 0x94, 0x1C, 0x0, 0x80, 0xC8, 0x0C, 0xFA, 0x7B); -DEFINE_GUID(TID_D3DRMExternalVisual, 0x98116AA0, 0xBDBA, 0x11d1, 0x82, 0xC0, 0x00, 0xA0, 0xC9, 0x69, 0x72, 0x71); -DEFINE_GUID(TID_D3DRMStringProperty, 0x7f0f21e0, 0xbfe1, 0x11d1, 0x82, 0xc0, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x71); -DEFINE_GUID(TID_D3DRMPropertyBag, 0x7f0f21e1, 0xbfe1, 0x11d1, 0x82, 0xc0, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x71); -DEFINE_GUID(TID_D3DRMRightHanded, 0x7f5d5ea0, 0xd53a, 0x11d1, 0x82, 0xc0, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x71); - -/* d3drm.h */ -DEFINE_GUID(IID_IDirect3DRM, 0x2bc49361, 0x8327, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); -DEFINE_GUID(IID_IDirect3DRM2, 0x4516ecc8, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3); -DEFINE_GUID(IID_IDirect3DRM3, 0x4516ec83, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3); -DEFINE_GUID(CLSID_CDirect3DRM, 0x4516ec41, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3); - -/* dvp.h */ -DEFINE_GUID(IID_IDDVideoPortContainer, 0x6C142760, 0xA733, 0x11CE, 0xA5, 0x21, 0x00, 0x20, 0xAF, 0x0B, 0xE5, 0x60); -DEFINE_GUID(IID_IDirectDrawVideoPort, 0xB36D93E0, 0x2B43, 0x11CF, 0xA2, 0xDE, 0x00, 0xAA, 0x00, 0xB9, 0x33, 0x56); -DEFINE_GUID(DDVPTYPE_E_HREFH_VREFH, 0x54F39980L, 0xDA60, 0x11CF, 0x9B, 0x06, 0x00, 0xA0, 0xC9, 0x03, 0xA3, 0xB8); -DEFINE_GUID(DDVPTYPE_E_HREFH_VREFL, 0x92783220L, 0xDA60, 0x11CF, 0x9B, 0x06, 0x00, 0xA0, 0xC9, 0x03, 0xA3, 0xB8); -DEFINE_GUID(DDVPTYPE_E_HREFL_VREFH, 0xA07A02E0L, 0xDA60, 0x11CF, 0x9B, 0x06, 0x00, 0xA0, 0xC9, 0x03, 0xA3, 0xB8); -DEFINE_GUID(DDVPTYPE_E_HREFL_VREFL, 0xE09C77E0L, 0xDA60, 0x11CF, 0x9B, 0x06, 0x00, 0xA0, 0xC9, 0x03, 0xA3, 0xB8); -DEFINE_GUID(DDVPTYPE_CCIR656, 0xFCA326A0L, 0xDA60, 0x11CF, 0x9B, 0x06, 0x00, 0xA0, 0xC9, 0x03, 0xA3, 0xB8); -DEFINE_GUID(DDVPTYPE_BROOKTREE, 0x1352A560L, 0xDA61, 0x11CF, 0x9B, 0x06, 0x00, 0xA0, 0xC9, 0x03, 0xA3, 0xB8); -DEFINE_GUID(DDVPTYPE_PHILIPS, 0x332CF160L, 0xDA61, 0x11CF, 0x9B, 0x06, 0x00, 0xA0, 0xC9, 0x03, 0xA3, 0xB8); - -/* dmksctrl.h */ -DEFINE_GUID(IID_IKsControl, 0x28F54685, 0x06FD, 0x11D2, 0xB2, 0x7A, 0x00, 0xA0, 0xC9, 0x22, 0x31, 0x96); -DEFINE_GUID(KSDATAFORMAT_SUBTYPE_MIDI, 0x1D262760L, 0xE957, 0x11CF, 0xA5, 0xD6, 0x28, 0xDB, 0x04, 0xC1, 0x00, 0x00); -DEFINE_GUID(KSDATAFORMAT_SUBTYPE_DIRECTMUSIC, 0x1a82f8bc, 0x3f8b, 0x11d2, 0xb7, 0x74, 0x00, 0x60, 0x08, 0x33, 0x16, 0xc1); - -/* dmplugin.h */ -DEFINE_GUID(CLSID_DirectMusicScriptTrack,0x4108fa85, 0x3586, 0x11d3, 0x8b, 0xd7, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xb6); /* {4108FA85-3586-11d3-8BD7-00600893B1B6} */ -DEFINE_GUID(CLSID_DirectMusicMarkerTrack,0x55a8fd00, 0x4288, 0x11d3, 0x9b, 0xd1, 0x8a, 0xd, 0x61, 0xc8, 0x88, 0x35); -DEFINE_GUID(CLSID_DirectMusicSegmentTriggerTrack, 0xbae4d665, 0x4ea1, 0x11d3, 0x8b, 0xda, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xb6); /* {BAE4D665-4EA1-11d3-8BDA-00600893B1B6} */ -DEFINE_GUID(CLSID_DirectMusicLyricsTrack, 0x995c1cf5, 0x54ff, 0x11d3, 0x8b, 0xda, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xb6); /* {995C1CF5-54FF-11d3-8BDA-00600893B1B6} */ -DEFINE_GUID(CLSID_DirectMusicParamControlTrack, 0x4be0537b, 0x5c19, 0x11d3, 0x8b, 0xdc, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xb6); /* {4BE0537B-5C19-11d3-8BDC-00600893B1B6} */ -DEFINE_GUID(CLSID_DirectMusicMelodyFormulationTrack, 0xb0684266, 0xb57f, 0x11d2, 0x97, 0xf9, 0x0, 0xc0, 0x4f, 0xa3, 0x6e, 0x58); -DEFINE_GUID(CLSID_DirectMusicWaveTrack,0xeed36461, 0x9ea5, 0x11d3, 0x9b, 0xd1, 0x0, 0x80, 0xc7, 0x15, 0xa, 0x74); - -DEFINE_GUID(IID_IDirectMusicTool8, 0xe674303, 0x3b05, 0x11d3, 0x9b, 0xd1, 0xf9, 0xe7, 0xf0, 0xa0, 0x15, 0x36); -DEFINE_GUID(IID_IDirectMusicTrack8, 0xe674304, 0x3b05, 0x11d3, 0x9b, 0xd1, 0xf9, 0xe7, 0xf0, 0xa0, 0x15, 0x36); - -/* dmusicc.h */ -DEFINE_GUID(IID_IReferenceClock, 0x56a86897, 0x0ad4, 0x11ce, 0xb0, 0x3a, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70); -DEFINE_GUID(CLSID_DirectMusic, 0x636b9f10, 0x0c7d, 0x11d1, 0x95, 0xb2, 0x00, 0x20, 0xaf, 0xdc, 0x74, 0x21); -DEFINE_GUID(CLSID_DirectMusicCollection, 0x480ff4b0, 0x28b2, 0x11d1, 0xbe, 0xf7, 0x0, 0xc0, 0x4f, 0xbf, 0x8f, 0xef); -DEFINE_GUID(CLSID_DirectMusicSynth, 0x58C2B4D0, 0x46E7, 0x11D1, 0x89, 0xAC, 0x00, 0xA0, 0xC9, 0x05, 0x41, 0x29); -DEFINE_GUID(IID_IDirectMusic, 0xd2ac2876, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(IID_IDirectMusicBuffer, 0xd2ac2878, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(IID_IDirectMusicPort, 0x55e2edd8, 0xcd7c, 0x11d1, 0xa7, 0x6f, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12); -DEFINE_GUID(IID_IDirectMusicThru, 0xced153e7, 0x3606, 0x11d2, 0xb9, 0xf9, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12); - -DEFINE_GUID(IID_IDirectMusicPortDownload, 0xd2ac287a, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(IID_IDirectMusicDownload, 0xd2ac287b, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(IID_IDirectMusicCollection, 0xd2ac287c, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(IID_IDirectMusicInstrument, 0xd2ac287d, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(IID_IDirectMusicDownloadedInstrument, 0xd2ac287e, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); - -DEFINE_GUID(IID_IDirectMusic2,0x6fc2cae1, 0xbc78, 0x11d2, 0xaf, 0xa6, 0x0, 0xaa, 0x0, 0x24, 0xd8, 0xb6); - -DEFINE_GUID(GUID_DMUS_PROP_GM_Hardware, 0x178f2f24, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12); -DEFINE_GUID(GUID_DMUS_PROP_GS_Hardware, 0x178f2f25, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12); -DEFINE_GUID(GUID_DMUS_PROP_XG_Hardware, 0x178f2f26, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12); - -DEFINE_GUID(GUID_DMUS_PROP_XG_Capable, 0x6496aba1, 0x61b0, 0x11d2, 0xaf, 0xa6, 0x0, 0xaa, 0x0, 0x24, 0xd8, 0xb6); -DEFINE_GUID(GUID_DMUS_PROP_GS_Capable, 0x6496aba2, 0x61b0, 0x11d2, 0xaf, 0xa6, 0x0, 0xaa, 0x0, 0x24, 0xd8, 0xb6); - -DEFINE_GUID(GUID_DMUS_PROP_DLS1, 0x178f2f27, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12); -DEFINE_GUID(GUID_DMUS_PROP_DLS2, 0xf14599e5, 0x4689, 0x11d2, 0xaf, 0xa6, 0x0, 0xaa, 0x0, 0x24, 0xd8, 0xb6); -DEFINE_GUID(GUID_DMUS_PROP_INSTRUMENT2, 0x865fd372, 0x9f67, 0x11d2, 0x87, 0x2a, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); - -DEFINE_GUID(GUID_DMUS_PROP_SynthSink_DSOUND, 0xaa97844, 0xc877, 0x11d1, 0x87, 0xc, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_DMUS_PROP_SynthSink_WAVE, 0xaa97845, 0xc877, 0x11d1, 0x87, 0xc, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_DMUS_PROP_SampleMemorySize, 0x178f2f28, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12); -DEFINE_GUID(GUID_DMUS_PROP_SamplePlaybackRate, 0x2a91f713, 0xa4bf, 0x11d2, 0xbb, 0xdf, 0x0, 0x60, 0x8, 0x33, 0xdb, 0xd8); -DEFINE_GUID(GUID_DMUS_PROP_WriteLatency,0x268a0fa0, 0x60f2, 0x11d2, 0xaf, 0xa6, 0x0, 0xaa, 0x0, 0x24, 0xd8, 0xb6); -DEFINE_GUID(GUID_DMUS_PROP_WritePeriod,0x268a0fa1, 0x60f2, 0x11d2, 0xaf, 0xa6, 0x0, 0xaa, 0x0, 0x24, 0xd8, 0xb6); - -DEFINE_GUID(GUID_DMUS_PROP_MemorySize, 0x178f2f28, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12); -DEFINE_GUID(GUID_DMUS_PROP_WavesReverb,0x4cb5622, 0x32e5, 0x11d2, 0xaf, 0xa6, 0x0, 0xaa, 0x0, 0x24, 0xd8, 0xb6); -DEFINE_GUID(GUID_DMUS_PROP_Effects, 0xcda8d611, 0x684a, 0x11d2, 0x87, 0x1e, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_DMUS_PROP_LegacyCaps,0xcfa7cdc2, 0x00a1, 0x11d2, 0xaa, 0xd5, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12); -DEFINE_GUID(GUID_DMUS_PROP_Volume, 0xfedfae25L, 0xe46e, 0x11d1, 0xaa, 0xce, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12); - -/* dmusici.h */ -DEFINE_GUID(CLSID_DirectMusicPerformance, 0xd2ac2881, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(CLSID_DirectMusicSegment, 0xd2ac2882, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(CLSID_DirectMusicSegmentState, 0xd2ac2883, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(CLSID_DirectMusicGraph, 0xd2ac2884, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(CLSID_DirectMusicTempoTrack, 0xd2ac2885, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(CLSID_DirectMusicSeqTrack, 0xd2ac2886, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(CLSID_DirectMusicCurveTrack, 0xc51f3861, 0xf9a6, 0x11d1, 0xbc, 0x95, 0x0, 0xa0, 0xc9, 0x22, 0xe6, 0xeb); -DEFINE_GUID(CLSID_DirectMusicSysExTrack, 0xd2ac2887, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(CLSID_DirectMusicTimeSigTrack, 0xd2ac2888, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(CLSID_DirectMusicStyle, 0xd2ac288a, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(CLSID_DirectMusicChordTrack, 0xd2ac288b, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(CLSID_DirectMusicCommandTrack, 0xd2ac288c, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(CLSID_DirectMusicStyleTrack, 0xd2ac288d, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(CLSID_DirectMusicMotifTrack, 0xd2ac288e, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(CLSID_DirectMusicChordMap,0xd2ac288f, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(CLSID_DirectMusicComposer, 0xd2ac2890, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(CLSID_DirectMusicSignPostTrack, 0xf17e8672, 0xc3b4, 0x11d1, 0x87, 0xb, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(CLSID_DirectMusicLoader, 0xd2ac2892, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(CLSID_DirectMusicBandTrack,0xd2ac2894, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(CLSID_DirectMusicBand, 0x79ba9e00, 0xb6ee, 0x11d1, 0x86, 0xbe, 0x0, 0xc0, 0x4f, 0xbf, 0x8f, 0xef); -DEFINE_GUID(CLSID_DirectMusicChordMapTrack,0xd2ac2896, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(CLSID_DirectMusicMuteTrack, 0xd2ac2898, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_DirectMusicAllTypes, 0xd2ac2893, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_NOTIFICATION_SEGMENT, 0xd2ac2899, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_NOTIFICATION_PERFORMANCE,0x81f75bc5, 0x4e5d, 0x11d2, 0xbc, 0xc7, 0x0, 0xa0, 0xc9, 0x22, 0xe6, 0xeb); -DEFINE_GUID(GUID_NOTIFICATION_MEASUREANDBEAT, 0xd2ac289a, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_NOTIFICATION_CHORD, 0xd2ac289b, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_NOTIFICATION_COMMAND, 0xd2ac289c, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_CommandParam,0xd2ac289d, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_CommandParam2, 0x28f97ef7, 0x9538, 0x11d2, 0x97, 0xa9, 0x0, 0xc0, 0x4f, 0xa3, 0x6e, 0x58); -DEFINE_GUID(GUID_ChordParam,0xd2ac289e, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_RhythmParam,0xd2ac289f, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_IDirectMusicStyle,0xd2ac28a1, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_TimeSignature,0xd2ac28a4, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_TempoParam,0xd2ac28a5, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_IDirectMusicBand,0xd2ac28ac, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_IDirectMusicChordMap,0xd2ac28ad, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_MuteParam,0xd2ac28af, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_Download,0xd2ac28a7, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_Unload,0xd2ac28a8, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_ConnectToDLSCollection, 0x1db1ae6b, 0xe92e, 0x11d1, 0xa8, 0xc5, 0x0, 0xc0, 0x4f, 0xa3, 0x72, 0x6e); -DEFINE_GUID(GUID_Enable_Auto_Download,0xd2ac28a9, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_Clear_All_Bands,0xd2ac28ab, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_StandardMIDIFile, 0x6621075, 0xe92e, 0x11d1, 0xa8, 0xc5, 0x0, 0xc0, 0x4f, 0xa3, 0x72, 0x6e); -DEFINE_GUID(GUID_DisableTimeSig, 0x45fc707b, 0x1db4, 0x11d2, 0xbc, 0xac, 0x0, 0xa0, 0xc9, 0x22, 0xe6, 0xeb); -DEFINE_GUID(GUID_EnableTimeSig, 0x45fc707c, 0x1db4, 0x11d2, 0xbc, 0xac, 0x0, 0xa0, 0xc9, 0x22, 0xe6, 0xeb); -DEFINE_GUID(GUID_DisableTempo, 0x45fc707d, 0x1db4, 0x11d2, 0xbc, 0xac, 0x0, 0xa0, 0xc9, 0x22, 0xe6, 0xeb); -DEFINE_GUID(GUID_EnableTempo, 0x45fc707e, 0x1db4, 0x11d2, 0xbc, 0xac, 0x0, 0xa0, 0xc9, 0x22, 0xe6, 0xeb); -DEFINE_GUID(GUID_SeedVariations, 0x65b76fa5, 0xff37, 0x11d2, 0x81, 0x4e, 0x0, 0xc0, 0x4f, 0xa3, 0x6e, 0x58); -DEFINE_GUID(GUID_PerfMasterTempo,0xd2ac28b0, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_PerfMasterVolume,0xd2ac28b1, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_PerfMasterGrooveLevel,0xd2ac28b2, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(GUID_PerfAutoDownload, 0xfb09565b, 0x3631, 0x11d2, 0xbc, 0xb8, 0x0, 0xa0, 0xc9, 0x22, 0xe6, 0xeb); -DEFINE_GUID(GUID_DefaultGMCollection, 0xf17e8673, 0xc3b4, 0x11d1, 0x87, 0xb, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(IID_IDirectMusicLoader, 0x2ffaaca2, 0x5dca, 0x11d2, 0xaf, 0xa6, 0x0, 0xaa, 0x0, 0x24, 0xd8, 0xb6); -DEFINE_GUID(IID_IDirectMusicGetLoader,0x68a04844, 0xd13d, 0x11d1, 0xaf, 0xa6, 0x0, 0xaa, 0x0, 0x24, 0xd8, 0xb6); -DEFINE_GUID(IID_IDirectMusicObject,0xd2ac28b5, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(IID_IDirectMusicSegment, 0xf96029a2, 0x4282, 0x11d2, 0x87, 0x17, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(IID_IDirectMusicSegmentState, 0xa3afdcc7, 0xd3ee, 0x11d1, 0xbc, 0x8d, 0x0, 0xa0, 0xc9, 0x22, 0xe6, 0xeb); -DEFINE_GUID(IID_IDirectMusicTrack, 0xf96029a1, 0x4282, 0x11d2, 0x87, 0x17, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(IID_IDirectMusicPerformance,0x7d43d03, 0x6523, 0x11d2, 0x87, 0x1d, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(IID_IDirectMusicTool,0xd2ac28ba, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(IID_IDirectMusicGraph,0x2befc277, 0x5497, 0x11d2, 0xbc, 0xcb, 0x0, 0xa0, 0xc9, 0x22, 0xe6, 0xeb); -DEFINE_GUID(IID_IDirectMusicStyle,0xd2ac28bd, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(IID_IDirectMusicChordMap,0xd2ac28be, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(IID_IDirectMusicComposer,0xd2ac28bf, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(IID_IDirectMusicBand,0xd2ac28c0, 0xb39b, 0x11d1, 0x87, 0x4, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); -DEFINE_GUID(IID_IDirectMusicPerformance2,0x6fc2cae0, 0xbc78, 0x11d2, 0xaf, 0xa6, 0x0, 0xaa, 0x0, 0x24, 0xd8, 0xb6); -DEFINE_GUID(IID_IDirectMusicSegment2, 0xd38894d1, 0xc052, 0x11d2, 0x87, 0x2f, 0x0, 0x60, 0x8, 0x93, 0xb1, 0xbd); - -DEFINE_GUID(IID_IDirectMusicLoader8, 0x19e7c08c, 0xa44, 0x4e6a, 0xa1, 0x16, 0x59, 0x5a, 0x7c, 0xd5, 0xde, 0x8c); -DEFINE_GUID(IID_IDirectMusicPerformance8, 0x679c4137, 0xc62e, 0x4147, 0xb2, 0xb4, 0x9d, 0x56, 0x9a, 0xcb, 0x25, 0x4c); -DEFINE_GUID(IID_IDirectMusicSegment8,0xc6784488, 0x41a3, 0x418f, 0xaa, 0x15, 0xb3, 0x50, 0x93, 0xba, 0x42, 0xd4); -DEFINE_GUID(IID_IDirectMusicSegmentState8, 0xa50e4730, 0xae4, 0x48a7, 0x98, 0x39, 0xbc, 0x4, 0xbf, 0xe0, 0x77, 0x72); -DEFINE_GUID(IID_IDirectMusicStyle8, 0xfd24ad8a, 0xa260, 0x453d, 0xbf, 0x50, 0x6f, 0x93, 0x84, 0xf7, 0x9, 0x85); - -DEFINE_GUID(IID_IDirectMusicPatternTrack, 0x51c22e10, 0xb49f, 0x46fc, 0xbe, 0xc2, 0xe6, 0x28, 0x8f, 0xb9, 0xed, 0xe6); -DEFINE_GUID(IID_IDirectMusicScript, 0x2252373a, 0x5814, 0x489b, 0x82, 0x9, 0x31, 0xfe, 0xde, 0xba, 0xf1, 0x37); /* {2252373A-5814-489b-8209-31FEDEBAF137} */ -DEFINE_GUID(IID_IDirectMusicContainer, 0x9301e386, 0x1f22, 0x11d3, 0x82, 0x26, 0xd2, 0xfa, 0x76, 0x25, 0x5d, 0x47); - -DEFINE_GUID(IID_IDirectMusicSong, 0xa862b2ec, 0x3676, 0x4982, 0x85, 0xa, 0x78, 0x42, 0x77, 0x5e, 0x1d, 0x86); -DEFINE_GUID(IID_IDirectMusicAudioPath,0xc87631f5, 0x23be, 0x4986, 0x88, 0x36, 0x5, 0x83, 0x2f, 0xcc, 0x48, 0xf9); - - -/* d3d.h */ -DEFINE_GUID(IID_IDirect3D, 0x3BBA0080, 0x2421, 0x11CF, 0xA3, 0x1A, 0x00, 0xAA, 0x00, 0xB9, 0x33, 0x56); -DEFINE_GUID(IID_IDirect3D2, 0x6aae1ec1, 0x662a, 0x11d0, 0x88, 0x9d, 0x00, 0xaa, 0x00, 0xbb, 0xb7, 0x6a); -DEFINE_GUID(IID_IDirect3D3, 0xbb223240, 0xe72b, 0x11d0, 0xa9, 0xb4, 0x00, 0xaa, 0x00, 0xc0, 0x99, 0x3e); -DEFINE_GUID( IID_IDirect3D7, 0xf5049e77,0x4861,0x11d2,0xa4,0x7,0x0,0xa0,0xc9,0x6,0x29,0xa8); -DEFINE_GUID(IID_IDirect3DRampDevice, 0xF2086B20, 0x259F, 0x11CF, 0xA3, 0x1A, 0x00, 0xAA, 0x00, 0xB9, 0x33, 0x56); -DEFINE_GUID(IID_IDirect3DRGBDevice, 0xA4665C60, 0x2673, 0x11CF, 0xA3, 0x1A, 0x00, 0xAA, 0x00, 0xB9, 0x33, 0x56); -DEFINE_GUID(IID_IDirect3DHALDevice, 0x84E63dE0, 0x46AA, 0x11CF, 0x81, 0x6F, 0x00, 0x00, 0xC0, 0x20, 0x15, 0x6E); -DEFINE_GUID(IID_IDirect3DMMXDevice, 0x881949a1, 0xd6f3, 0x11d0, 0x89, 0xab, 0x00, 0xa0, 0xc9, 0x05, 0x41, 0x29); -DEFINE_GUID(IID_IDirect3DRefDevice, 0x50936643, 0x13e9, 0x11d1, 0x89, 0xaa, 0x0, 0xa0, 0xc9, 0x5, 0x41, 0x29); -DEFINE_GUID(IID_IDirect3DNullDevice, 0x8767df22, 0xbacc, 0x11d1, 0x89, 0x69, 0x0, 0xa0, 0xc9, 0x6, 0x29, 0xa8); -DEFINE_GUID( IID_IDirect3DTnLHalDevice, 0xf5049e78, 0x4861, 0x11d2, 0xa4, 0x7, 0x0, 0xa0, 0xc9, 0x6, 0x29, 0xa8); -DEFINE_GUID(IID_IDirect3DDevice, 0x64108800, 0x957d, 0X11d0, 0x89, 0xab, 0x00, 0xa0, 0xc9, 0x05, 0x41, 0x29); -DEFINE_GUID(IID_IDirect3DDevice2, 0x93281501, 0x8cf8, 0x11d0, 0x89, 0xab, 0x0, 0xa0, 0xc9, 0x5, 0x41, 0x29); -DEFINE_GUID(IID_IDirect3DDevice3, 0xb0ab3b60, 0x33d7, 0x11d1, 0xa9, 0x81, 0x0, 0xc0, 0x4f, 0xd7, 0xb1, 0x74); -DEFINE_GUID( IID_IDirect3DDevice7, 0xf5049e79, 0x4861, 0x11d2, 0xa4, 0x7, 0x0, 0xa0, 0xc9, 0x6, 0x29, 0xa8); -DEFINE_GUID( IID_IDirect3DTexture, 0x2CDCD9E0,0x25A0,0x11CF,0xA3,0x1A,0x00,0xAA,0x00,0xB9,0x33,0x56 ); -DEFINE_GUID(IID_IDirect3DTexture2, 0x93281502, 0x8cf8, 0x11d0, 0x89, 0xab, 0x0, 0xa0, 0xc9, 0x5, 0x41, 0x29); -DEFINE_GUID(IID_IDirect3DLight, 0x4417C142, 0x33AD, 0x11CF, 0x81, 0x6F, 0x00, 0x00, 0xC0, 0x20, 0x15, 0x6E); -DEFINE_GUID(IID_IDirect3DMaterial, 0x4417C144, 0x33AD, 0x11CF, 0x81, 0x6F, 0x00, 0x00, 0xC0, 0x20, 0x15, 0x6E); -DEFINE_GUID(IID_IDirect3DMaterial2, 0x93281503, 0x8cf8, 0x11d0, 0x89, 0xab, 0x0, 0xa0, 0xc9, 0x5, 0x41, 0x29); -DEFINE_GUID(IID_IDirect3DMaterial3, 0xca9c46f4, 0xd3c5, 0x11d1, 0xb7, 0x5a, 0x0, 0x60, 0x8, 0x52, 0xb3, 0x12); -DEFINE_GUID(IID_IDirect3DExecuteBuffer, 0x4417C145, 0x33AD, 0x11CF, 0x81, 0x6F, 0x00, 0x00, 0xC0, 0x20, 0x15, 0x6E); -DEFINE_GUID(IID_IDirect3DViewport, 0x4417C146, 0x33AD, 0x11CF, 0x81, 0x6F, 0x00, 0x00, 0xC0, 0x20, 0x15, 0x6E); -DEFINE_GUID(IID_IDirect3DViewport2, 0x93281500, 0x8cf8, 0x11d0, 0x89, 0xab, 0x0, 0xa0, 0xc9, 0x5, 0x41, 0x29); -DEFINE_GUID(IID_IDirect3DViewport3, 0xb0ab3b61, 0x33d7, 0x11d1, 0xa9, 0x81, 0x0, 0xc0, 0x4f, 0xd7, 0xb1, 0x74); -DEFINE_GUID(IID_IDirect3DVertexBuffer, 0x7a503555, 0x4a83, 0x11d1, 0xa5, 0xdb, 0x0, 0xa0, 0xc9, 0x3, 0x67, 0xf8); -DEFINE_GUID( IID_IDirect3DVertexBuffer7, 0xf5049e7d, 0x4861, 0x11d2, 0xa4, 0x7, 0x0, 0xa0, 0xc9, 0x6, 0x29, 0xa8); - -/* d3d8.h */ -DEFINE_GUID(IID_IDirect3D8, 0x1dd9e8da, 0x1c77, 0x4d40, 0xb0, 0xcf, 0x98, 0xfe, 0xfd, 0xff, 0x95, 0x12); -DEFINE_GUID(IID_IDirect3DDevice8, 0x7385e5df, 0x8fe8, 0x41d5, 0x86, 0xb6, 0xd7, 0xb4, 0x85, 0x47, 0xb6, 0xcf); -DEFINE_GUID(IID_IDirect3DResource8, 0x1b36bb7b, 0x9b7, 0x410a, 0xb4, 0x45, 0x7d, 0x14, 0x30, 0xd7, 0xb3, 0x3f); -DEFINE_GUID(IID_IDirect3DBaseTexture8, 0xb4211cfa, 0x51b9, 0x4a9f, 0xab, 0x78, 0xdb, 0x99, 0xb2, 0xbb, 0x67, 0x8e); -DEFINE_GUID(IID_IDirect3DTexture8, 0xe4cdd575, 0x2866, 0x4f01, 0xb1, 0x2e, 0x7e, 0xec, 0xe1, 0xec, 0x93, 0x58); -DEFINE_GUID(IID_IDirect3DCubeTexture8, 0x3ee5b968, 0x2aca, 0x4c34, 0x8b, 0xb5, 0x7e, 0x0c, 0x3d, 0x19, 0xb7, 0x50); -DEFINE_GUID(IID_IDirect3DVolumeTexture8, 0x4b8aaafa, 0x140f, 0x42ba, 0x91, 0x31, 0x59, 0x7e, 0xaf, 0xaa, 0x2e, 0xad); -DEFINE_GUID(IID_IDirect3DVertexBuffer8, 0x8aeeeac7, 0x05f9, 0x44d4, 0xb5, 0x91, 0x00, 0x0b, 0x0d, 0xf1, 0xcb, 0x95); -DEFINE_GUID(IID_IDirect3DIndexBuffer8, 0x0e689c9a, 0x053d, 0x44a0, 0x9d, 0x92, 0xdb, 0x0e, 0x3d, 0x75, 0x0f, 0x86); -DEFINE_GUID(IID_IDirect3DSurface8, 0xb96eebca, 0xb326, 0x4ea5, 0x88, 0x2f, 0x2f, 0xf5, 0xba, 0xe0, 0x21, 0xdd); -DEFINE_GUID(IID_IDirect3DVolume8, 0xbd7349f5, 0x14f1, 0x42e4, 0x9c, 0x79, 0x97, 0x23, 0x80, 0xdb, 0x40, 0xc0); -DEFINE_GUID(IID_IDirect3DSwapChain8, 0x928c088b, 0x76b9, 0x4c6b, 0xa5, 0x36, 0xa5, 0x90, 0x85, 0x38, 0x76, 0xcd); - -/* d3dx8core.h */ -DEFINE_GUID(IID_ID3DXBuffer, 0x932e6a7e, 0xc68e, 0x45dd, 0xa7, 0xbf, 0x53, 0xd1, 0x9c, 0x86, 0xdb, 0x1f); -DEFINE_GUID( IID_ID3DXFont, 0x2d501df7, 0xd253, 0x4414, 0x86, 0x5f, 0xa6, 0xd5, 0x4a, 0x75, 0x31, 0x38); -DEFINE_GUID( IID_ID3DXSprite, 0xe8691849, 0x87b8, 0x4929, 0x90, 0x50, 0x1b, 0x5, 0x42, 0xd5, 0x53, 0x8c); -DEFINE_GUID( IID_ID3DXRenderToSurface, 0x69cc587c, 0xe40c, 0x458d, 0xb5, 0xd3, 0xb0, 0x29, 0xe1, 0x8e, 0xb6, 0xa); -DEFINE_GUID( IID_ID3DXRenderToEnvMap, 0x9f6779e5, 0x60a9, 0x4d8b, 0xae, 0xe4, 0x32, 0x77, 0xf, 0x40, 0x5d, 0xba); - -/* d3dx8effect.h */ -DEFINE_GUID( IID_ID3DXTechnique, 0xa00f378d, 0xaf79, 0x4917, 0x90, 0x7e, 0x4d, 0x63, 0x5e, 0xe6, 0x38, 0x44); -DEFINE_GUID( IID_ID3DXEffect, 0x281bbdd4, 0xaedf, 0x4907, 0x86, 0x50, 0xe7, 0x9c, 0xdf, 0xd4, 0x51, 0x65); - -/* d3dx8math.h */ -DEFINE_GUID( IID_ID3DXMatrixStack, 0xe3357330, 0xcc5e, 0x11d2, 0xa4, 0x34, 0x0, 0xa0, 0xc9, 0x6, 0x29, 0xa8); - -/* d3dx8mesh.h */ -DEFINE_GUID(IID_ID3DXBaseMesh, 0xa69ba991, 0x1f7d, 0x11d3, 0xb9, 0x29, 0x0, 0xc0, 0x4f, 0x68, 0xdc, 0x23); -DEFINE_GUID(IID_ID3DXMesh, 0x9d84ac46, 0x6b90, 0x49a9, 0xa7, 0x21, 0x8, 0x5c, 0x7a, 0x3e, 0x3d, 0xae); -DEFINE_GUID(IID_ID3DXPMesh, 0x15981aa8, 0x1a05, 0x48e3, 0xbb, 0xe7, 0xff, 0x5d, 0x49, 0x65, 0x4e, 0x3f); -DEFINE_GUID(IID_ID3DXSPMesh, 0xbc3bbde2, 0x1f7d, 0x11d3, 0xb9, 0x29, 0x0, 0xc0, 0x4f, 0x68, 0xdc, 0x23); -DEFINE_GUID(IID_ID3DXSkinMesh, 0x82a53844, 0xf322, 0x409e, 0xa2, 0xe9, 0x99, 0x2e, 0x11, 0x4, 0x6, 0x9d); - - -/* dsound.h */ -DEFINE_GUID(CLSID_DirectSound, 0x47d4d946, 0x62e8, 0x11cf, 0x93, 0xbc, 0x44, 0x45, 0x53, 0x54, 0x0, 0x0); -DEFINE_GUID(CLSID_DirectSound8, 0x3901cc3f, 0x84b5, 0x4fa4, 0xba, 0x35, 0xaa, 0x81, 0x72, 0xb8, 0xa0, 0x9b); -DEFINE_GUID(CLSID_DirectSoundCapture, 0xb0210780, 0x89cd, 0x11d0, 0xaf, 0x8, 0x0, 0xa0, 0xc9, 0x25, 0xcd, 0x16); -DEFINE_GUID(CLSID_DirectSoundFullDuplex, 0xfea4300c, 0x7959, 0x4147, 0xb2, 0x6a, 0x23, 0x77, 0xb9, 0xe7, 0xa9, 0x1d); -DEFINE_GUID(CLSID_DirectSoundCapture8, 0xe4bcac13, 0x7f99, 0x4908, 0x9a, 0x8e, 0x74, 0xe3, 0xbf, 0x24, 0xb6, 0xe1); -DEFINE_GUID(DSDEVID_DefaultPlayback, 0xdef00000, 0x9c6d, 0x47ed, 0xaa, 0xf1, 0x4d, 0xda, 0x8f, 0x2b, 0x5c, 0x03); -DEFINE_GUID(DSDEVID_DefaultCapture, 0xdef00001, 0x9c6d, 0x47ed, 0xaa, 0xf1, 0x4d, 0xda, 0x8f, 0x2b, 0x5c, 0x03); -DEFINE_GUID(DSDEVID_DefaultVoicePlayback, 0xdef00002, 0x9c6d, 0x47ed, 0xaa, 0xf1, 0x4d, 0xda, 0x8f, 0x2b, 0x5c, 0x03); -DEFINE_GUID(DSDEVID_DefaultVoiceCapture, 0xdef00003, 0x9c6d, 0x47ed, 0xaa, 0xf1, 0x4d, 0xda, 0x8f, 0x2b, 0x5c, 0x03); - -DEFINE_GUID(IID_IDirectSound, 0x279AFA83, 0x4981, 0x11CE, 0xA5, 0x21, 0x00, 0x20, 0xAF, 0x0B, 0xE5, 0x60); -DEFINE_GUID(IID_IDirectSound8, 0xC50A7E93, 0xF395, 0x4834, 0x9E, 0xF6, 0x7F, 0xA9, 0x9D, 0xE5, 0x09, 0x66); -DEFINE_GUID(IID_IDirectSoundBuffer, 0x279AFA85, 0x4981, 0x11CE, 0xA5, 0x21, 0x00, 0x20, 0xAF, 0x0B, 0xE5, 0x60); -DEFINE_GUID(IID_IDirectSoundBuffer8, 0x6825a449, 0x7524, 0x4d82, 0x92, 0x0f, 0x50, 0xe3, 0x6a, 0xb3, 0xab, 0x1e); -DEFINE_GUID(GUID_All_Objects, 0xaa114de5, 0xc262, 0x4169, 0xa1, 0xc8, 0x23, 0xd6, 0x98, 0xcc, 0x73, 0xb5); - -DEFINE_GUID(IID_IDirectSound3DListener, 0x279AFA84, 0x4981, 0x11CE, 0xA5, 0x21, 0x00, 0x20, 0xAF, 0x0B, 0xE5, 0x60); -DEFINE_GUID(IID_IDirectSound3DBuffer, 0x279AFA86, 0x4981, 0x11CE, 0xA5, 0x21, 0x00, 0x20, 0xAF, 0x0B, 0xE5, 0x60); -DEFINE_GUID(IID_IDirectSoundCapture, 0xb0210781, 0x89cd, 0x11d0, 0xaf, 0x8, 0x0, 0xa0, 0xc9, 0x25, 0xcd, 0x16); -DEFINE_GUID(IID_IDirectSoundCaptureBuffer, 0xb0210782, 0x89cd, 0x11d0, 0xaf, 0x8, 0x0, 0xa0, 0xc9, 0x25, 0xcd, 0x16); -DEFINE_GUID(IID_IDirectSoundCaptureBuffer8, 0x990df4, 0xdbb, 0x4872, 0x83, 0x3e, 0x6d, 0x30, 0x3e, 0x80, 0xae, 0xb6); -DEFINE_GUID(IID_IDirectSoundNotify, 0xb0210783, 0x89cd, 0x11d0, 0xaf, 0x8, 0x0, 0xa0, 0xc9, 0x25, 0xcd, 0x16); -DEFINE_GUID(IID_IKsPropertySet, 0x31efac30, 0x515c, 0x11d0, 0xa9, 0xaa, 0x00, 0xaa, 0x00, 0x61, 0xbe, 0x93); -DEFINE_GUID(IID_IDirectSoundFXGargle, 0xd616f352, 0xd622, 0x11ce, 0xaa, 0xc5, 0x00, 0x20, 0xaf, 0x0b, 0x99, 0xa3); -DEFINE_GUID(IID_IDirectSoundFXChorus, 0x880842e3, 0x145f, 0x43e6, 0xa9, 0x34, 0xa7, 0x18, 0x06, 0xe5, 0x05, 0x47); -DEFINE_GUID(IID_IDirectSoundFXFlanger, 0x903e9878, 0x2c92, 0x4072, 0x9b, 0x2c, 0xea, 0x68, 0xf5, 0x39, 0x67, 0x83); -DEFINE_GUID(IID_IDirectSoundFXEcho, 0x8bd28edf, 0x50db, 0x4e92, 0xa2, 0xbd, 0x44, 0x54, 0x88, 0xd1, 0xed, 0x42); -DEFINE_GUID(IID_IDirectSoundFXDistortion, 0x8ecf4326, 0x455f, 0x4d8b, 0xbd, 0xa9, 0x8d, 0x5d, 0x3e, 0x9e, 0x3e, 0x0b); -DEFINE_GUID(IID_IDirectSoundFXCompressor, 0x4bbd1154, 0x62f6, 0x4e2c, 0xa1, 0x5c, 0xd3, 0xb6, 0xc4, 0x17, 0xf7, 0xa0); -DEFINE_GUID(IID_IDirectSoundFXParamEq, 0xc03ca9fe, 0xfe90, 0x4204, 0x80, 0x78, 0x82, 0x33, 0x4c, 0xd1, 0x77, 0xda); -DEFINE_GUID(IID_IDirectSoundFXI3DL2Reverb, 0x4b166a6a, 0x0d66, 0x43f3, 0x80, 0xe3, 0xee, 0x62, 0x80, 0xde, 0xe1, 0xa4); -DEFINE_GUID(IID_IDirectSoundFXWavesReverb,0x46858c3a,0x0dc6,0x45e3,0xb7,0x60,0xd4,0xee,0xf1,0x6c,0xb3,0x25); -DEFINE_GUID(IID_IDirectSoundCaptureFXAec, 0x174d3eb9, 0x6696, 0x4fac, 0xa4, 0x6c, 0xa0, 0xac, 0x7b, 0xc9, 0xe2, 0xf); -DEFINE_GUID(IID_IDirectSoundCaptureFXNoiseSuppress, 0xed311e41, 0xfbae, 0x4175, 0x96, 0x25, 0xcd, 0x8, 0x54, 0xf6, 0x93, 0xca); -DEFINE_GUID(IID_IDirectSoundFullDuplex, 0xedcb4c7a, 0xdaab, 0x4216, 0xa4, 0x2e, 0x6c, 0x50, 0x59, 0x6d, 0xdc, 0x1d); - -DEFINE_GUID(DS3DALG_NO_VIRTUALIZATION, 0xc241333f, 0x1c1b, 0x11d2, 0x94, 0xf5, 0x0, 0xc0, 0x4f, 0xc2, 0x8a, 0xca); -DEFINE_GUID(DS3DALG_HRTF_FULL, 0xc2413340, 0x1c1b, 0x11d2, 0x94, 0xf5, 0x0, 0xc0, 0x4f, 0xc2, 0x8a, 0xca); -DEFINE_GUID(DS3DALG_HRTF_LIGHT, 0xc2413342, 0x1c1b, 0x11d2, 0x94, 0xf5, 0x0, 0xc0, 0x4f, 0xc2, 0x8a, 0xca); - -DEFINE_GUID(GUID_DSFX_STANDARD_GARGLE, 0xdafd8210, 0x5711, 0x4b91, 0x9f, 0xe3, 0xf7, 0x5b, 0x7a, 0xe2, 0x79, 0xbf); -DEFINE_GUID(GUID_DSFX_STANDARD_CHORUS, 0xefe6629c, 0x81f7, 0x4281, 0xbd, 0x91, 0xc9, 0xd6, 0x04, 0xa9, 0x5a, 0xf6); -DEFINE_GUID(GUID_DSFX_STANDARD_FLANGER, 0xefca3d92, 0xdfd8, 0x4672, 0xa6, 0x03, 0x74, 0x20, 0x89, 0x4b, 0xad, 0x98); -DEFINE_GUID(GUID_DSFX_STANDARD_ECHO, 0xef3e932c, 0xd40b, 0x4f51, 0x8c, 0xcf, 0x3f, 0x98, 0xf1, 0xb2, 0x9d, 0x5d); -DEFINE_GUID(GUID_DSFX_STANDARD_DISTORTION, 0xef114c90, 0xcd1d, 0x484e, 0x96, 0xe5, 0x09, 0xcf, 0xaf, 0x91, 0x2a, 0x21); -DEFINE_GUID(GUID_DSFX_STANDARD_COMPRESSOR, 0xef011f79, 0x4000, 0x406d, 0x87, 0xaf, 0xbf, 0xfb, 0x3f, 0xc3, 0x9d, 0x57); -DEFINE_GUID(GUID_DSFX_STANDARD_PARAMEQ, 0x120ced89, 0x3bf4, 0x4173, 0xa1, 0x32, 0x3c, 0xb4, 0x06, 0xcf, 0x32, 0x31); -DEFINE_GUID(GUID_DSFX_STANDARD_I3DL2REVERB, 0xef985e71, 0xd5c7, 0x42d4, 0xba, 0x4d, 0x2d, 0x07, 0x3e, 0x2e, 0x96, 0xf4); -DEFINE_GUID(GUID_DSFX_WAVES_REVERB, 0x87fc0268, 0x9a55, 0x4360, 0x95, 0xaa, 0x00, 0x4a, 0x1d, 0x9d, 0xe2, 0x6c); -DEFINE_GUID(GUID_DSCFX_CLASS_AEC, 0xBF963D80L, 0xC559, 0x11D0, 0x8A, 0x2B, 0x00, 0xA0, 0xC9, 0x25, 0x5A, 0xC1); -DEFINE_GUID(GUID_DSCFX_MS_AEC, 0xcdebb919, 0x379a, 0x488a, 0x87, 0x65, 0xf5, 0x3c, 0xfd, 0x36, 0xde, 0x40); -DEFINE_GUID(GUID_DSCFX_SYSTEM_AEC, 0x1c22c56d, 0x9879, 0x4f5b, 0xa3, 0x89, 0x27, 0x99, 0x6d, 0xdc, 0x28, 0x10); -DEFINE_GUID(GUID_DSCFX_CLASS_NS, 0xe07f903f, 0x62fd, 0x4e60, 0x8c, 0xdd, 0xde, 0xa7, 0x23, 0x66, 0x65, 0xb5); -DEFINE_GUID(GUID_DSCFX_MS_NS, 0x11c5c73b, 0x66e9, 0x4ba1, 0xa0, 0xba, 0xe8, 0x14, 0xc6, 0xee, 0xd9, 0x2d); -DEFINE_GUID(GUID_DSCFX_SYSTEM_NS, 0x5ab0882e, 0x7274, 0x4516, 0x87, 0x7d, 0x4e, 0xee, 0x99, 0xba, 0x4f, 0xd0); - -/* ddraw.h */ -DEFINE_GUID( CLSID_DirectDraw, 0xD7B70EE0,0x4340,0x11CF,0xB0,0x63,0x00,0x20,0xAF,0xC2,0xCD,0x35 ); -DEFINE_GUID( CLSID_DirectDraw7, 0x3c305196,0x50db,0x11d3,0x9c,0xfe,0x00,0xc0,0x4f,0xd9,0x30,0xc5 ); -DEFINE_GUID( CLSID_DirectDrawClipper, 0x593817A0,0x7DB3,0x11CF,0xA2,0xDE,0x00,0xAA,0x00,0xb9,0x33,0x56 ); -DEFINE_GUID( IID_IDirectDraw, 0x6C14DB80,0xA733,0x11CE,0xA5,0x21,0x00,0x20,0xAF,0x0B,0xE5,0x60 ); -DEFINE_GUID( IID_IDirectDraw2, 0xB3A6F3E0,0x2B43,0x11CF,0xA2,0xDE,0x00,0xAA,0x00,0xB9,0x33,0x56 ); -DEFINE_GUID( IID_IDirectDraw4, 0x9c59509a,0x39bd,0x11d1,0x8c,0x4a,0x00,0xc0,0x4f,0xd9,0x30,0xc5 ); -DEFINE_GUID( IID_IDirectDraw7, 0x15e65ec0,0x3b9c,0x11d2,0xb9,0x2f,0x00,0x60,0x97,0x97,0xea,0x5b ); -DEFINE_GUID( IID_IDirectDrawSurface, 0x6C14DB81,0xA733,0x11CE,0xA5,0x21,0x00,0x20,0xAF,0x0B,0xE5,0x60 ); -DEFINE_GUID( IID_IDirectDrawSurface2, 0x57805885,0x6eec,0x11cf,0x94,0x41,0xa8,0x23,0x03,0xc1,0x0e,0x27 ); -DEFINE_GUID( IID_IDirectDrawSurface3, 0xDA044E00,0x69B2,0x11D0,0xA1,0xD5,0x00,0xAA,0x00,0xB8,0xDF,0xBB ); -DEFINE_GUID(IID_IDirectDrawSurface4, 0x0B2B8630,0xAD35,0x11D0,0x8E,0xA6,0x00,0x60,0x97,0x97,0xEA,0x5B ); -DEFINE_GUID( IID_IDirectDrawSurface7, 0x06675a80,0x3b9b,0x11d2,0xb9,0x2f,0x00,0x60,0x97,0x97,0xea,0x5b ); - -DEFINE_GUID( IID_IDirectDrawPalette, 0x6C14DB84,0xA733,0x11CE,0xA5,0x21,0x00,0x20,0xAF,0x0B,0xE5,0x60 ); -DEFINE_GUID( IID_IDirectDrawClipper, 0x6C14DB85,0xA733,0x11CE,0xA5,0x21,0x00,0x20,0xAF,0x0B,0xE5,0x60 ); -DEFINE_GUID( IID_IDirectDrawColorControl, 0x4B9F0EE0,0x0D7E,0x11D0,0x9B,0x06,0x00,0xA0,0xC9,0x03,0xA3,0xB8 ); -DEFINE_GUID(IID_IDirectDrawGammaControl, 0x69C11C3E,0xB46B,0x11D1,0xAD,0x7A,0x00,0xC0,0x4F,0xC2,0x9B,0x4E ); - -/* dls2.h */ - -DEFINE_GUID(DLSID_GMInHardware, 0x178f2f24, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12); -DEFINE_GUID(DLSID_GSInHardware, 0x178f2f25, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12); -DEFINE_GUID(DLSID_XGInHardware, 0x178f2f26, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12); -DEFINE_GUID(DLSID_SupportsDLS1, 0x178f2f27, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12); -DEFINE_GUID(DLSID_SupportsDLS2, 0xf14599e5, 0x4689, 0x11d2, 0xaf, 0xa6, 0x0, 0xaa, 0x0, 0x24, 0xd8, 0xb6); -DEFINE_GUID(DLSID_SampleMemorySize, 0x178f2f28, 0xc364, 0x11d1, 0xa7, 0x60, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12); -DEFINE_GUID(DLSID_ManufacturersID, 0xb03e1181, 0x8095, 0x11d2, 0xa1, 0xef, 0x0, 0x60, 0x8, 0x33, 0xdb, 0xd8); -DEFINE_GUID(DLSID_ProductID, 0xb03e1182, 0x8095, 0x11d2, 0xa1, 0xef, 0x0, 0x60, 0x8, 0x33, 0xdb, 0xd8); -DEFINE_GUID(DLSID_SamplePlaybackRate, 0x2a91f713, 0xa4bf, 0x11d2, 0xbb, 0xdf, 0x0, 0x60, 0x8, 0x33, 0xdb, 0xd8); - - -/* dinputd.h */ - -DEFINE_GUID(IID_IDirectInputEffectDriver, 0x02538130,0x898F,0x11D0,0x9A,0xD0,0x00,0xA0,0xC9,0xA0,0x6E,0x35); -DEFINE_GUID(IID_IDirectInputJoyConfig, 0x1DE12AB1,0xC9F5,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(IID_IDirectInputPIDDriver, 0xEEC6993A,0xB3FD,0x11D2,0xA9,0x16,0x00,0xC0,0x4F,0xB9,0x86,0x38); -DEFINE_GUID(IID_IDirectInputJoyConfig8, 0xeb0d7dfa,0x1990,0x4f27,0xb4,0xd6,0xed,0xf2,0xee,0xc4,0xa4,0x4c); - -DEFINE_GUID(GUID_KeyboardClass, 0x4D36E96B,0xE325,0x11CE,0xBF,0xC1,0x08,0x00,0x2B,0xE1,0x03,0x18); -DEFINE_GUID(GUID_MediaClass, 0x4D36E96C,0xE325,0x11CE,0xBF,0xC1,0x08,0x00,0x2B,0xE1,0x03,0x18); -DEFINE_GUID(GUID_MouseClass, 0x4D36E96F,0xE325,0x11CE,0xBF,0xC1,0x08,0x00,0x2B,0xE1,0x03,0x18); -DEFINE_GUID(GUID_HIDClass, 0x745A17A0,0x74D3,0x11D0,0xB6,0xFE,0x00,0xA0,0xC9,0x0F,0x57,0xDA); - -/* dinput.h */ - -DEFINE_GUID(CLSID_DirectInput, 0x25E609E0,0xB259,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(CLSID_DirectInputDevice,0x25E609E1,0xB259,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(CLSID_DirectInput8, 0x25E609E4,0xB259,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(CLSID_DirectInputDevice8,0x25E609E5,0xB259,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); - -DEFINE_GUID(IID_IDirectInputA, 0x89521360,0xAA8A,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(IID_IDirectInputW, 0x89521361,0xAA8A,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(IID_IDirectInput2A, 0x5944E662,0xAA8A,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(IID_IDirectInput2W, 0x5944E663,0xAA8A,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(IID_IDirectInput7A, 0X9A4CB684,0X236D,0X11D3,0X8E,0X9D,0X00,0XC0,0X4F,0X68,0X44,0XAE); -DEFINE_GUID(IID_IDirectInput7W, 0X9A4CB685,0X236D,0X11D3,0X8E,0X9D,0X00,0XC0,0X4F,0X68,0X44,0XAE); -DEFINE_GUID(IID_IDirectInput8A, 0xBF798030,0x483A,0x4DA2,0xAA,0x99,0x5D,0x64,0xED,0x36,0x97,0x00); -DEFINE_GUID(IID_IDirectInput8W, 0xBF798031,0x483A,0x4DA2,0xAA,0x99,0x5D,0x64,0xED,0x36,0x97,0x00); - -DEFINE_GUID(IID_IDirectInputDeviceA, 0x5944E680,0xC92E,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(IID_IDirectInputDeviceW, 0x5944E681,0xC92E,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(IID_IDirectInputDevice2A,0x5944E682,0xC92E,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(IID_IDirectInputDevice2W,0x5944E683,0xC92E,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(IID_IDirectInputEffect, 0xE7E1F7C0,0x88D2,0x11D0,0x9A,0xD0,0x00,0xA0,0xC9,0xA0,0x6E,0x35); -DEFINE_GUID(IID_IDirectInputDevice7A,0X57D7C6BC,0X2356,0X11D3,0X8E,0X9D,0X00,0XC0,0X4F,0X68,0X44,0XAE); -DEFINE_GUID(IID_IDirectInputDevice7W,0X57D7C6BD,0X2356,0X11D3,0X8E,0X9D,0X00,0XC0,0X4F,0X68,0X44,0XAE); -DEFINE_GUID(IID_IDirectInputDevice8A,0x54D41080,0xDC15,0x4833,0xA4,0x1B,0x74,0x8F,0x73,0xA3,0x81,0x79); -DEFINE_GUID(IID_IDirectInputDevice8W,0x54D41081,0xDC15,0x4833,0xA4,0x1B,0x74,0x8F,0x73,0xA3,0x81,0x79); - -DEFINE_GUID(GUID_XAxis, 0xA36D02E0,0xC9F3,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(GUID_YAxis, 0xA36D02E1,0xC9F3,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(GUID_ZAxis, 0xA36D02E2,0xC9F3,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(GUID_RxAxis, 0xA36D02F4,0xC9F3,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(GUID_RyAxis, 0xA36D02F5,0xC9F3,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(GUID_RzAxis, 0xA36D02E3,0xC9F3,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(GUID_Slider, 0xA36D02E4,0xC9F3,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); - - -DEFINE_GUID(GUID_Button, 0xA36D02F0,0xC9F3,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(GUID_Key, 0x55728220,0xD33C,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); - -DEFINE_GUID(GUID_POV, 0xA36D02F2,0xC9F3,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); - -DEFINE_GUID(GUID_Unknown, 0xA36D02F3,0xC9F3,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); - -DEFINE_GUID(GUID_SysMouse, 0x6F1D2B60,0xD5A0,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(GUID_SysKeyboard,0x6F1D2B61,0xD5A0,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(GUID_Joystick ,0x6F1D2B70,0xD5A0,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(GUID_SysMouseEm, 0x6F1D2B80,0xD5A0,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(GUID_SysMouseEm2,0x6F1D2B81,0xD5A0,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(GUID_SysKeyboardEm, 0x6F1D2B82,0xD5A0,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); -DEFINE_GUID(GUID_SysKeyboardEm2,0x6F1D2B83,0xD5A0,0x11CF,0xBF,0xC7,0x44,0x45,0x53,0x54,0x00,0x00); - -DEFINE_GUID(GUID_ConstantForce,0x13541C20,0x8E33,0x11D0,0x9A,0xD0,0x00,0xA0,0xC9,0xA0,0x6E,0x35); -DEFINE_GUID(GUID_RampForce, 0x13541C21,0x8E33,0x11D0,0x9A,0xD0,0x00,0xA0,0xC9,0xA0,0x6E,0x35); -DEFINE_GUID(GUID_Square, 0x13541C22,0x8E33,0x11D0,0x9A,0xD0,0x00,0xA0,0xC9,0xA0,0x6E,0x35); -DEFINE_GUID(GUID_Sine, 0x13541C23,0x8E33,0x11D0,0x9A,0xD0,0x00,0xA0,0xC9,0xA0,0x6E,0x35); -DEFINE_GUID(GUID_Triangle, 0x13541C24,0x8E33,0x11D0,0x9A,0xD0,0x00,0xA0,0xC9,0xA0,0x6E,0x35); -DEFINE_GUID(GUID_SawtoothUp, 0x13541C25,0x8E33,0x11D0,0x9A,0xD0,0x00,0xA0,0xC9,0xA0,0x6E,0x35); -DEFINE_GUID(GUID_SawtoothDown, 0x13541C26,0x8E33,0x11D0,0x9A,0xD0,0x00,0xA0,0xC9,0xA0,0x6E,0x35); -DEFINE_GUID(GUID_Spring, 0x13541C27,0x8E33,0x11D0,0x9A,0xD0,0x00,0xA0,0xC9,0xA0,0x6E,0x35); -DEFINE_GUID(GUID_Damper, 0x13541C28,0x8E33,0x11D0,0x9A,0xD0,0x00,0xA0,0xC9,0xA0,0x6E,0x35); -DEFINE_GUID(GUID_Inertia, 0x13541C29,0x8E33,0x11D0,0x9A,0xD0,0x00,0xA0,0xC9,0xA0,0x6E,0x35); -DEFINE_GUID(GUID_Friction, 0x13541C2A,0x8E33,0x11D0,0x9A,0xD0,0x00,0xA0,0xC9,0xA0,0x6E,0x35); -DEFINE_GUID(GUID_CustomForce, 0x13541C2B,0x8E33,0x11D0,0x9A,0xD0,0x00,0xA0,0xC9,0xA0,0x6E,0x35); - - diff --git a/platform/Windows/src/dxlibs/dxguid_sdl.c b/platform/Windows/src/dxlibs/dxguid_sdl.c deleted file mode 100644 index 4d2fc528f..000000000 --- a/platform/Windows/src/dxlibs/dxguid_sdl.c +++ /dev/null @@ -1,9 +0,0 @@ - -#define DIRECTINPUT_VERSION 0x0700 -#include "dx/dinput.h" - -#undef DEFINE_GUID -#define DEFINE_GUID(n,a,b,c,d,e,f,g,h,i,j,k) const GUID n = {a,b,c,{d,e,f,g,h,i,j,k}} - -/* dsound.h */ -DEFINE_GUID(IID_IDirectSoundNotify, 0xb0210783, 0x89cd, 0x11d0, 0xaf, 0x8, 0x0, 0xa0, 0xc9, 0x25, 0xcd, 0x16); diff --git a/platform/Windows/src/dxlibs/readme.txt b/platform/Windows/src/dxlibs/readme.txt deleted file mode 100644 index 40a9f96f5..000000000 --- a/platform/Windows/src/dxlibs/readme.txt +++ /dev/null @@ -1,8 +0,0 @@ -This minimal DirectX 8.0 SDK is largely based upon work from Paul Gerfen. - -paul@gamecoding.co.uk -www.gamecoding.co.uk - - -from: http://alleg.sourceforge.net/files/dx80_mgw.zip -tweaked for inclusion in EDuke32 diff --git a/source/CMakeLists.txt b/source/CMakeLists.txt index 5b0614eea..8a3a38159 100644 --- a/source/CMakeLists.txt +++ b/source/CMakeLists.txt @@ -83,28 +83,7 @@ if( WIN32 ) setupapi oleaut32 dbghelp - legacy_stdio_definitions - - shlwapi - version - imm32 - dxguid - dsound - winspool - advapi32 - shell32 - SetupAPI - uuid - odbc32 - odbccp32 - - # this local library crap needs to go away. Sadly there doesn't seem to be anything to get a working libvpx that doesn't force linking with MinGW dependencies. - #libvpx - #libcompat-to-msvc - - ) - - + legacy_stdio_definitions ) if( NOT DEM_CMAKE_COMPILER_IS_GNUCXX_COMPATIBLE ) @@ -154,6 +133,13 @@ else() endif() endif() + if ( NOT WIN32 ) + option( NO_SDL_JOYSTICK "Disable SDL joystick support (Not applicable to Windows)" OFF ) + if ( NO_SDL_JOYSTICK ) + add_definitions( -DNO_SDL_JOYSTICK=1 ) + endif() + endif() + if( NO_GTK ) add_definitions( -DNO_GTK ) elseif( DYN_GTK ) @@ -305,16 +291,6 @@ if( DEM_CMAKE_COMPILER_IS_GNUCXX_COMPATIBLE ) set( CMAKE_C_FLAGS "-Wall -Wextra -Wno-unused -Wno-unused-parameter -Wno-missing-field-initializers -ffp-contract=off ${CMAKE_C_FLAGS}" ) set( CMAKE_CXX_FLAGS "-Wall -Wextra -Wno-unused -Wno-unused-parameter -Wno-missing-field-initializers -ffp-contract=off ${CMAKE_CXX_FLAGS}" ) - # ARM processors (Raspberry Pi, et al) - enable ARM NEON support. - if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm") - set (USE_ARMV8 0 CACHE BOOL "Use ARMv8 instructions - Raspberry Pi 3") - if (USE_ARMV8) - set( CMAKE_CXX_FLAGS "-mcpu=cortex-a53 -mfpu=neon-fp-armv8 -mtune=cortex-a53 -mhard-float -DNO_SSE ${CMAKE_CXX_FLAGS}" ) - else () - set( CMAKE_CXX_FLAGS "-mcpu=cortex-a7 -mfpu=neon-vfpv4 -mtune=cortex-a7 -mhard-float -DNO_SSE ${CMAKE_CXX_FLAGS}" ) - endif () - endif () - if( NOT X64 AND NOT CAN_DO_MFPMATH ) set( CMAKE_C_FLAGS "-DNO_SSE ${CMAKE_C_FLAGS}" ) set( CMAKE_CXX_FLAGS "-DNO_SSE ${CMAKE_CXX_FLAGS}" ) @@ -368,15 +344,8 @@ if( NOT STRUPR_EXISTS ) add_definitions( -DNEED_STRUPR=1 ) endif() -CHECK_FUNCTION_EXISTS( stricmp STRICMP_EXISTS ) -if( NOT STRICMP_EXISTS ) - add_definitions( -Dstricmp=strcasecmp ) -endif() - -CHECK_FUNCTION_EXISTS( strnicmp STRNICMP_EXISTS ) -if( NOT STRNICMP_EXISTS ) - add_definitions( -Dstrnicmp=strncasecmp ) -endif() +require_stricmp() +require_strnicmp() if( NOT MSVC ) add_definitions( -D__forceinline=inline ) @@ -425,10 +394,10 @@ if( MSVC AND NOT ZMUSIC_FOUND ) # Use prebuilt library set( ZMUSIC_ROOT_PATH "${CMAKE_CURRENT_SOURCE_DIR}/../bin/windows/zmusic" ) set( ZMUSIC_INCLUDE_DIR ${ZMUSIC_ROOT_PATH}/include ) - set( ZMUSIC_LIBRARIES zmusiclite ) + set( ZMUSIC_LIBRARIES zmusic ) if( X64 ) link_directories( ${ZMUSIC_ROOT_PATH}/64bit ) - elseif( ${TARGET_ARCHITECTURE} MATCHES "arm" ) + elseif( ARM64 ) link_directories( ${ZMUSIC_ROOT_PATH}/arm64 ) else() link_directories( ${ZMUSIC_ROOT_PATH}/32bit ) @@ -436,11 +405,12 @@ if( MSVC AND NOT ZMUSIC_FOUND ) set( ZMUSIC_FOUND TRUE ) endif() + # VPX if( MSVC AND NOT VPX_FOUND ) # Use prebuilt library - set( VPX_ROOT_PATH "${CMAKE_CURRENT_SOURCE_DIR}/../platform/Windows" ) + set( VPX_ROOT_PATH "${CMAKE_CURRENT_SOURCE_DIR}/../bin/Windows/vpx" ) set( VPX_INCLUDE_DIR ${VPX_ROOT_PATH}/include ) set( VPX_LIBRARIES libvpx libcompat-to-msvc ) if( ARM64 ) @@ -578,14 +548,14 @@ if( HAVE_MMX ) common/textures/hires/hqnx_asm/hq4x_asm.cpp common/textures/hires/hqnx_asm/hqnx_asm_Image.cpp) - if( ZD_CMAKE_COMPILER_IS_GNUCXX_COMPATIBLE ) + if( DEM_CMAKE_COMPILER_IS_GNUCXX_COMPATIBLE ) set_source_files_properties( common/textures/hires/hqnx_asm/hq2x_asm.cpp common/textures/hires/hqnx_asm/hq3x_asm.cpp common/textures/hires/hqnx_asm/hq4x_asm.cpp common/textures/hires/hqresize.cpp PROPERTIES COMPILE_FLAGS "-mmmx" ) - endif( ZD_CMAKE_COMPILER_IS_GNUCXX_COMPATIBLE ) + endif( DEM_CMAKE_COMPILER_IS_GNUCXX_COMPATIBLE ) endif( HAVE_MMX ) if( HAVE_PARALLEL_FOR ) @@ -627,9 +597,6 @@ include_directories( ${CMAKE_CURRENT_BINARY_DIR} ) file( GLOB HEADER_FILES build/include/*.h glbackend/*.h - libsmackerdec/include/*.h - libxmp-lite/include/libxmp-lite/*.h - libxmp-lite/src/*.h core/*.h core/2d/*.h core/utility/*.h @@ -665,6 +632,7 @@ file( GLOB HEADER_FILES common/thirdparty/*.h common/thirdparty/rapidjson/*.h common/thirdparty/math/*h + common/thirdparty/libsmackerdec/include/*.h common/rendering/*.h common/rendering/gl_load/*.h common/rendering/hwrenderer/*.h @@ -973,13 +941,6 @@ set( FASTMATH_SOURCES common/textures/hires/hqnx/hq4x.cpp common/textures/hires/xbr/xbrz.cpp common/textures/hires/xbr/xbrz_old.cpp - # This should better be made a library subproject later, once things are working. - libsmackerdec/src/BitReader.cpp - libsmackerdec/src/FileStream.cpp - libsmackerdec/src/HuffmanVLC.cpp - libsmackerdec/src/LogError.cpp - libsmackerdec/src/SmackerDecoder.cpp - common/utility/matrix.cpp # The rest is only here because it is C, not C++ @@ -1194,6 +1155,11 @@ set (PCH_SOURCES common/thirdparty/base64.cpp common/thirdparty/md5.cpp common/thirdparty/superfasthash.cpp + common/thirdparty/libsmackerdec/src/BitReader.cpp + common/thirdparty/libsmackerdec/src/FileStream.cpp + common/thirdparty/libsmackerdec/src/HuffmanVLC.cpp + common/thirdparty/libsmackerdec/src/LogError.cpp + common/thirdparty/libsmackerdec/src/SmackerDecoder.cpp common/filesystem/filesystem.cpp common/filesystem/ancientzip.cpp common/filesystem/file_7z.cpp @@ -1312,8 +1278,6 @@ endif() macro( use_precompiled_header ) if( MSVC ) enable_precompiled_headers( "${ARGV0}/g_pch.h" PCH_SOURCES ) - # The original Build code was written with unsigned chars and unfortunately they still haven't been eliminated entirely. - # All other code should stay with signed chars. What a mess... :( else() # Temporary solution for compilers other than MSVC set_source_files_properties( ${PCH_SOURCES} PROPERTIES COMPILE_FLAGS "-include g_pch.h" ) @@ -1377,7 +1341,6 @@ include_directories( build/include libxmp-lite/include libxmp-lite/include/libxmp-lite - libsmackerdec/include thirdparty/include thirdparty/imgui core @@ -1396,6 +1359,8 @@ include_directories( common/audio/sound common/audio/music common/2d + common/cutscenes + common/thirdparty/libsmackerdec/include common/thirdparty common/textures common/textures/formats @@ -1486,7 +1451,7 @@ add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD if( CMAKE_COMPILER_IS_GNUCXX ) # GCC misoptimizes this file endif() -if( ZD_CMAKE_COMPILER_IS_GNUCXX_COMPATIBLE ) +if( DEM_CMAKE_COMPILER_IS_GNUCXX_COMPATIBLE ) # Need to enable intrinsics for these files. if( SSE_MATTERS ) set_property( SOURCE @@ -1611,34 +1576,6 @@ source_group("Build Engine" REGULAR_EXPRESSION "^${CMAKE_CURRENT_SOURCE_DIR}/bui source_group("Build Engine\\Headers" REGULAR_EXPRESSION "^${CMAKE_CURRENT_SOURCE_DIR}/build/include/.+") source_group("Build Engine\\Sources" REGULAR_EXPRESSION "^${CMAKE_CURRENT_SOURCE_DIR}/build/src/.+") -macro( add_game_library ) - file( GLOB HEADER_FILES src/*.h ) - if( NOT_COMPILED_SOURCE_FILES ) - set_source_files_properties( ${NOT_COMPILED_SOURCE_FILES} PROPERTIES HEADER_FILE_ONLY TRUE ) - endif() - use_precompiled_header("..") - add_library( ${ARGV0} STATIC - ${PCH_SOURCES} - ${HEADER_FILES} - ${NOT_COMPILED_SOURCE_FILES} - ) -endmacro() - -macro( add_game_library2 ) - file( GLOB HEADER_FILES src/*.h ) - if( NOT_COMPILED_SOURCE_FILES ) - set_source_files_properties( ${NOT_COMPILED_SOURCE_FILES} PROPERTIES HEADER_FILE_ONLY TRUE ) - endif() - use_precompiled_header("../..") - add_library( ${ARGV0} STATIC - ${PCH_SOURCES} - ${HEADER_FILES} - ${NOT_COMPILED_SOURCE_FILES} - ) -endmacro() - -require_stricmp() -require_strnicmp() unset( PCH_SOURCES ) unset( HEADER_FILES ) diff --git a/source/libsmackerdec/COPYING b/source/common/thirdparty/libsmackerdec/COPYING similarity index 100% rename from source/libsmackerdec/COPYING rename to source/common/thirdparty/libsmackerdec/COPYING diff --git a/source/libsmackerdec/include/BitReader.h b/source/common/thirdparty/libsmackerdec/include/BitReader.h similarity index 100% rename from source/libsmackerdec/include/BitReader.h rename to source/common/thirdparty/libsmackerdec/include/BitReader.h diff --git a/source/libsmackerdec/include/FileStream.h b/source/common/thirdparty/libsmackerdec/include/FileStream.h similarity index 100% rename from source/libsmackerdec/include/FileStream.h rename to source/common/thirdparty/libsmackerdec/include/FileStream.h diff --git a/source/libsmackerdec/include/HuffmanVLC.h b/source/common/thirdparty/libsmackerdec/include/HuffmanVLC.h similarity index 100% rename from source/libsmackerdec/include/HuffmanVLC.h rename to source/common/thirdparty/libsmackerdec/include/HuffmanVLC.h diff --git a/source/libsmackerdec/include/LogError.h b/source/common/thirdparty/libsmackerdec/include/LogError.h similarity index 100% rename from source/libsmackerdec/include/LogError.h rename to source/common/thirdparty/libsmackerdec/include/LogError.h diff --git a/source/libsmackerdec/include/SmackerDecoder.h b/source/common/thirdparty/libsmackerdec/include/SmackerDecoder.h similarity index 100% rename from source/libsmackerdec/include/SmackerDecoder.h rename to source/common/thirdparty/libsmackerdec/include/SmackerDecoder.h diff --git a/source/libsmackerdec/src/BitReader.cpp b/source/common/thirdparty/libsmackerdec/src/BitReader.cpp similarity index 100% rename from source/libsmackerdec/src/BitReader.cpp rename to source/common/thirdparty/libsmackerdec/src/BitReader.cpp diff --git a/source/libsmackerdec/src/FileStream.cpp b/source/common/thirdparty/libsmackerdec/src/FileStream.cpp similarity index 100% rename from source/libsmackerdec/src/FileStream.cpp rename to source/common/thirdparty/libsmackerdec/src/FileStream.cpp diff --git a/source/libsmackerdec/src/HuffmanVLC.cpp b/source/common/thirdparty/libsmackerdec/src/HuffmanVLC.cpp similarity index 100% rename from source/libsmackerdec/src/HuffmanVLC.cpp rename to source/common/thirdparty/libsmackerdec/src/HuffmanVLC.cpp diff --git a/source/libsmackerdec/src/LogError.cpp b/source/common/thirdparty/libsmackerdec/src/LogError.cpp similarity index 100% rename from source/libsmackerdec/src/LogError.cpp rename to source/common/thirdparty/libsmackerdec/src/LogError.cpp diff --git a/source/libsmackerdec/src/SmackerDecoder.cpp b/source/common/thirdparty/libsmackerdec/src/SmackerDecoder.cpp similarity index 100% rename from source/libsmackerdec/src/SmackerDecoder.cpp rename to source/common/thirdparty/libsmackerdec/src/SmackerDecoder.cpp