Open main menu

Difference between revisions of "Compiling ScummVM/Visual Studio/Compiling Libraries"

→‎SDL: Inlined the SDL patch into a source code box, as the link to it is down
(→‎FLAC: Inlined the FLAC patch into a source code box, as the link to it is down)
(→‎SDL: Inlined the SDL patch into a source code box, as the link to it is down)
Line 69: Line 69:
SDL is already compiled and needs no further changes, so we can skip the compilation step for it.
SDL is already compiled and needs no further changes, so we can skip the compilation step for it.


'''Note for x64''': You will need to compile SDL for x64 on your own (as of the time of this writing), to do so you will also need to install the [http://msdn.microsoft.com/en-us/directx/default.aspx DirectX SDK found here]. You will also need to apply this patch [http://robertmegone.com/scummvm/build/sdl.patch from here] (patch gladly taken from the SDL mailing list).
'''Note for x64''': You will need to compile SDL for x64 on your own (as of the time of this writing), to do so you will also need to install the [http://msdn.microsoft.com/en-us/directx/default.aspx DirectX SDK found here]. You will also need to apply the following patch (gladly taken from the SDL mailing list):
 
<source lang="diff">
--- src/video/windx5/SDL_dx5video.c Tue Oct 13 00:07:16 2009
+++ src/video/windx5/SDL_dx5video.c Tue Nov 03 21:14:38 2009
@@ -332,7 +332,7 @@
{ &GUID_Key, 255, 0x8000FF0C, 0x00000000 },
};
-const DIDATAFORMAT c_dfDIKeyboard = { sizeof(DIDATAFORMAT), sizeof(DIOBJECTDATAFORMAT), 0x00000002, 256, 256, KBD_fmt };
+const DIDATAFORMAT c_dfDIKeyboard = { sizeof(DIDATAFORMAT), sizeof(DIOBJECTDATAFORMAT), DIDF_RELAXIS, 256, sizeof(KBD_fmt)/sizeof(KBD_fmt[0]), KBD_fmt };
/* Mouse */
@@ -347,7 +347,7 @@
{ NULL,      15, 0x80FFFF0C, 0x00000000 },
};
-const DIDATAFORMAT c_dfDIMouse = { sizeof(DIDATAFORMAT), sizeof(DIOBJECTDATAFORMAT), 0x00000002, 16, 7, PTR_fmt };
+const DIDATAFORMAT c_dfDIMouse = { sizeof(DIDATAFORMAT), sizeof(DIOBJECTDATAFORMAT), DIDF_RELAXIS, sizeof(DIMOUSESTATE), sizeof(PTR_fmt)/sizeof(PTR_fmt[0]), PTR_fmt };
static DIOBJECTDATAFORMAT PTR2_fmt[] = {
{ &GUID_XAxis, 0, 0x00FFFF03, 0x00000000 },
@@ -363,7 +363,7 @@
{ NULL,      19, 0x80FFFF0C, 0x00000000 }
};
-const DIDATAFORMAT c_dfDIMouse2 = { sizeof(DIDATAFORMAT), sizeof(DIOBJECTDATAFORMAT), 0x00000002, 20, 11, PTR2_fmt };
+const DIDATAFORMAT c_dfDIMouse2 = { sizeof(DIDATAFORMAT), sizeof(DIOBJECTDATAFORMAT), DIDF_RELAXIS, sizeof(DIMOUSESTATE), sizeof(PTR2_fmt)/sizeof(PTR2_fmt[0]), PTR2_fmt };
/* Joystick */
@@ -415,7 +415,7 @@
{ NULL, 79, 0x80FFFF0C, 0x00000000 },
};
-const DIDATAFORMAT c_dfDIJoystick = { sizeof(DIDATAFORMAT), sizeof(DIOBJECTDATAFORMAT), 0x00000001, 80, 44, JOY_fmt };
+const DIDATAFORMAT c_dfDIJoystick = { sizeof(DIDATAFORMAT), sizeof(DIOBJECTDATAFORMAT), DIDF_ABSAXIS, sizeof(DIJOYSTATE), sizeof(JOY_fmt)/sizeof(JOY_fmt[0]), JOY_fmt };
/* Initialization/Query functions */
</source>


After adding a new x64 configuration option in the project files, you may also need to remove "/MACHINE:I386" as additional linker command in Project->Properties, Configuration Properties->Linker->Command Line.
After adding a new x64 configuration option in the project files, you may also need to remove "/MACHINE:I386" as additional linker command in Project->Properties, Configuration Properties->Linker->Command Line.
1,489

edits