summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Howard2009-10-16 18:35:19 +0000
committerSimon Howard2009-10-16 18:35:19 +0000
commit35f753d9e4b9d85cc712262a751729688e32aad6 (patch)
tree8bdecfaf3984c6ea1fee2a98526400ff648961dc
parent4c0dc104d7582d709d8cc665a1c46ed1d49cdd65 (diff)
downloadchocolate-doom-35f753d9e4b9d85cc712262a751729688e32aad6.tar.gz
chocolate-doom-35f753d9e4b9d85cc712262a751729688e32aad6.tar.bz2
chocolate-doom-35f753d9e4b9d85cc712262a751729688e32aad6.zip
Fix compile under MSVC (thanks entryway).
Subversion-branch: /branches/raven-branch Subversion-revision: 1718
-rw-r--r--msvc/doom.vcproj10
-rw-r--r--msvc/heretic.vcproj6
-rw-r--r--msvc/hexen.vcproj2
-rw-r--r--msvc/server.vcproj10
-rw-r--r--msvc/setup.vcproj10
-rw-r--r--src/doomtype.h2
-rw-r--r--src/heretic/am_data.h12
-rw-r--r--src/heretic/am_map.c2
-rw-r--r--src/heretic/p_enemy.c8
-rw-r--r--src/heretic/p_mobj.c6
-rw-r--r--src/heretic/p_pspr.c12
-rw-r--r--src/heretic/r_data.c20
-rw-r--r--src/hexen/am_data.h6
-rw-r--r--src/hexen/p_mobj.c4
-rw-r--r--src/hexen/r_data.c20
-rw-r--r--src/i_cdmus.c2
-rw-r--r--src/i_main.c6
-rw-r--r--src/i_system.h1
18 files changed, 98 insertions, 41 deletions
diff --git a/msvc/doom.vcproj b/msvc/doom.vcproj
index 2c3eb38e..c5714eea 100644
--- a/msvc/doom.vcproj
+++ b/msvc/doom.vcproj
@@ -42,7 +42,7 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=".;..\src;..\src\doom;..\textscreen;..\pcsound"
- PreprocessorDefinitions="WIN32;_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;PROGRAM_PREFIX="\"chocolate-\"""
+ PreprocessorDefinitions="WIN32;_DEBUG;_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;PROGRAM_PREFIX="\"chocolate-\"""
MinimalRebuild="true"
ExceptionHandling="0"
BasicRuntimeChecks="3"
@@ -221,6 +221,10 @@
>
</File>
<File
+ RelativePath="..\src\i_endoom.h"
+ >
+ </File>
+ <File
RelativePath="..\src\i_joystick.h"
>
</File>
@@ -593,6 +597,10 @@
>
</File>
<File
+ RelativePath="..\src\i_endoom.c"
+ >
+ </File>
+ <File
RelativePath="..\src\i_joystick.c"
>
</File>
diff --git a/msvc/heretic.vcproj b/msvc/heretic.vcproj
index c005da49..e9dbb0dd 100644
--- a/msvc/heretic.vcproj
+++ b/msvc/heretic.vcproj
@@ -41,7 +41,7 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=".;..\src;..\src\doom;..\src\heretic;..\textscreen;..\pcsound"
- PreprocessorDefinitions="WIN32;_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;PROGRAM_PREFIX=&quot;\&quot;chocolate-\&quot;&quot;"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;PROGRAM_PREFIX=&quot;\&quot;chocolate-\&quot;&quot;"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
@@ -196,6 +196,10 @@
>
</File>
<File
+ RelativePath="..\src\i_endoom.c"
+ >
+ </File>
+ <File
RelativePath="..\src\i_joystick.c"
>
</File>
diff --git a/msvc/hexen.vcproj b/msvc/hexen.vcproj
index c12e799e..12d247d1 100644
--- a/msvc/hexen.vcproj
+++ b/msvc/hexen.vcproj
@@ -41,6 +41,7 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=".;..\src;..\src\doom;..\src\heretic;..\textscreen;..\pcsound"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;PROGRAM_PREFIX=&quot;\&quot;chocolate-\&quot;&quot;"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
@@ -59,6 +60,7 @@
/>
<Tool
Name="VCLinkerTool"
+ AdditionalDependencies="SDL.lib SDL_mixer.lib SDL_net.lib SDLmain.lib"
OutputFile="$(OutDir)\chocolate-hexen-dbg.exe"
GenerateDebugInformation="true"
SubSystem="1"
diff --git a/msvc/server.vcproj b/msvc/server.vcproj
index 2ba219a6..d692267f 100644
--- a/msvc/server.vcproj
+++ b/msvc/server.vcproj
@@ -41,7 +41,7 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=".;..\src;..\textscreen"
- PreprocessorDefinitions="WIN32;_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;DEDICATEDSERVER"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;DEDICATEDSERVER"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
@@ -190,6 +190,10 @@
>
</File>
<File
+ RelativePath="..\src\i_system.c"
+ >
+ </File>
+ <File
RelativePath="..\src\i_timer.c"
>
</File>
@@ -244,6 +248,10 @@
>
</File>
<File
+ RelativePath="..\src\i_system.h"
+ >
+ </File>
+ <File
RelativePath="..\src\i_timer.h"
>
</File>
diff --git a/msvc/setup.vcproj b/msvc/setup.vcproj
index cff08ff4..5e2a2efe 100644
--- a/msvc/setup.vcproj
+++ b/msvc/setup.vcproj
@@ -41,7 +41,7 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories=".;..\src;..\src\doom;..\textscreen"
- PreprocessorDefinitions="WIN32;_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;CHOCOLATESETUP"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CRT_SECURE_NO_WARNINGS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;CHOCOLATESETUP"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
@@ -237,6 +237,10 @@
RelativePath="..\setup\txt_mouseinput.c"
>
</File>
+ <File
+ RelativePath="..\textscreen\txt_scrollpane.c"
+ >
+ </File>
</Filter>
<Filter
Name="Header Files"
@@ -295,6 +299,10 @@
RelativePath="..\setup\txt_mouseinput.h"
>
</File>
+ <File
+ RelativePath="..\textscreen\txt_scrollpane.h"
+ >
+ </File>
</Filter>
<Filter
Name="Resource Files"
diff --git a/src/doomtype.h b/src/doomtype.h
index b79bd687..e38d921f 100644
--- a/src/doomtype.h
+++ b/src/doomtype.h
@@ -36,7 +36,9 @@
#ifdef _WIN32
#define snprintf _snprintf
+#if _MSC_VER < 1400 /* not needed for Visual Studio 2008 */
#define vsnprintf _vsnprintf
+#endif
#define strcasecmp stricmp
#define strncasecmp strnicmp
diff --git a/src/heretic/am_data.h b/src/heretic/am_data.h
index 1f83d876..342f06a9 100644
--- a/src/heretic/am_data.h
+++ b/src/heretic/am_data.h
@@ -92,18 +92,18 @@ mline_t cheat_player_arrow[] = {
#define R (FRACUNIT)
mline_t triangle_guy[] = {
- { { -.867*R, -.5*R }, { .867*R, -.5*R } },
- { { .867*R, -.5*R } , { 0, R } },
- { { 0, R }, { -.867*R, -.5*R } }
+ { { (fixed_t)(-.867*R), (fixed_t)(-.5*R) }, { (fixed_t)(.867*R ), (fixed_t)(-.5*R) } },
+ { { (fixed_t)(.867*R ), (fixed_t)(-.5*R) }, { (fixed_t)(0 ), (fixed_t)(R ) } },
+ { { (fixed_t)(0 ), (fixed_t)(R ) }, { (fixed_t)(-.867*R), (fixed_t)(-.5*R) } }
};
#undef R
#define NUMTRIANGLEGUYLINES (sizeof(triangle_guy)/sizeof(mline_t))
#define R (FRACUNIT)
mline_t thintriangle_guy[] = {
- { { -.5*R, -.7*R }, { R, 0 } },
- { { R, 0 }, { -.5*R, .7*R } },
- { { -.5*R, .7*R }, { -.5*R, -.7*R } }
+ { { (fixed_t)(-.5*R), (fixed_t)(-.7*R) }, { (fixed_t)(R ), (fixed_t)(0 ) } },
+ { { (fixed_t)(R ), (fixed_t)(0 ) }, { (fixed_t)(-.5*R), (fixed_t)(.7*R ) } },
+ { { (fixed_t)(-.5*R), (fixed_t)(.7*R ) }, { (fixed_t)(-.5*R), (fixed_t)(-.7*R) } }
};
#undef R
#define NUMTHINTRIANGLEGUYLINES (sizeof(thintriangle_guy)/sizeof(mline_t))
diff --git a/src/heretic/am_map.c b/src/heretic/am_map.c
index aa1b273b..99a8e206 100644
--- a/src/heretic/am_map.c
+++ b/src/heretic/am_map.c
@@ -131,7 +131,7 @@ static fixed_t old_m_x, old_m_y;
static mpoint_t f_oldloc;
// used by MTOF to scale from map-to-frame-buffer coords
-static fixed_t scale_mtof = INITSCALEMTOF;
+static fixed_t scale_mtof = (fixed_t)INITSCALEMTOF;
// used by FTOM to scale from frame-buffer-to-map coords (=1/scale_mtof)
static fixed_t scale_ftom;
diff --git a/src/heretic/p_enemy.c b/src/heretic/p_enemy.c
index 05566a07..6ad8cff0 100644
--- a/src/heretic/p_enemy.c
+++ b/src/heretic/p_enemy.c
@@ -1917,7 +1917,7 @@ void A_HeadIceImpact(mobj_t * ice)
angle >>= ANGLETOFINESHIFT;
shard->momx = FixedMul(shard->info->speed, finecosine[angle]);
shard->momy = FixedMul(shard->info->speed, finesine[angle]);
- shard->momz = -.6 * FRACUNIT;
+ shard->momz = (fixed_t)(-.6 * FRACUNIT);
P_CheckMissileSpawn(shard);
}
}
@@ -2507,7 +2507,7 @@ void A_VolcanoBlast(mobj_t * volcano)
angle >>= ANGLETOFINESHIFT;
blast->momx = FixedMul(1 * FRACUNIT, finecosine[angle]);
blast->momy = FixedMul(1 * FRACUNIT, finesine[angle]);
- blast->momz = (2.5 * FRACUNIT) + (P_Random() << 10);
+ blast->momz = (fixed_t)(2.5 * FRACUNIT) + (P_Random() << 10);
S_StartSound(blast, sfx_volsht);
P_CheckMissileSpawn(blast);
}
@@ -2540,8 +2540,8 @@ void A_VolcBallImpact(mobj_t * ball)
angle = i * ANG90;
tiny->angle = angle;
angle >>= ANGLETOFINESHIFT;
- tiny->momx = FixedMul(FRACUNIT * .7, finecosine[angle]);
- tiny->momy = FixedMul(FRACUNIT * .7, finesine[angle]);
+ tiny->momx = FixedMul((fixed_t)(FRACUNIT * .7), finecosine[angle]);
+ tiny->momy = FixedMul((fixed_t)(FRACUNIT * .7), finesine[angle]);
tiny->momz = FRACUNIT + (P_Random() << 9);
P_CheckMissileSpawn(tiny);
}
diff --git a/src/heretic/p_mobj.c b/src/heretic/p_mobj.c
index b5366501..e07ecf45 100644
--- a/src/heretic/p_mobj.c
+++ b/src/heretic/p_mobj.c
@@ -70,7 +70,7 @@ boolean P_SetMobjState(mobj_t * mobj, statenum_t state)
if (state == S_NULL)
{ // Remove mobj
- mobj->state = S_NULL;
+ mobj->state = (state_t *) S_NULL;
P_RemoveMobj(mobj);
return (false);
}
@@ -100,7 +100,7 @@ boolean P_SetMobjStateNF(mobj_t * mobj, statenum_t state)
if (state == S_NULL)
{ // Remove mobj
- mobj->state = S_NULL;
+ mobj->state = (state_t *) S_NULL;
P_RemoveMobj(mobj);
return (false);
}
@@ -1214,7 +1214,7 @@ void P_SpawnPuff(fixed_t x, fixed_t y, fixed_t z)
break;
case MT_GAUNTLETPUFF1:
case MT_GAUNTLETPUFF2:
- puff->momz = .8 * FRACUNIT;
+ puff->momz = (fixed_t)(.8 * FRACUNIT);
default:
break;
}
diff --git a/src/heretic/p_pspr.c b/src/heretic/p_pspr.c
index 07a04ac7..7f9660ac 100644
--- a/src/heretic/p_pspr.c
+++ b/src/heretic/p_pspr.c
@@ -1639,14 +1639,14 @@ void A_PhoenixPuff(mobj_t * actor)
puff = P_SpawnMobj(actor->x, actor->y, actor->z, MT_PHOENIXPUFF);
angle = actor->angle + ANG90;
angle >>= ANGLETOFINESHIFT;
- puff->momx = FixedMul(FRACUNIT * 1.3, finecosine[angle]);
- puff->momy = FixedMul(FRACUNIT * 1.3, finesine[angle]);
+ puff->momx = FixedMul((fixed_t)(FRACUNIT * 1.3), finecosine[angle]);
+ puff->momy = FixedMul((fixed_t)(FRACUNIT * 1.3), finesine[angle]);
puff->momz = 0;
puff = P_SpawnMobj(actor->x, actor->y, actor->z, MT_PHOENIXPUFF);
angle = actor->angle - ANG90;
angle >>= ANGLETOFINESHIFT;
- puff->momx = FixedMul(FRACUNIT * 1.3, finecosine[angle]);
- puff->momy = FixedMul(FRACUNIT * 1.3, finesine[angle]);
+ puff->momx = FixedMul((fixed_t)(FRACUNIT * 1.3), finecosine[angle]);
+ puff->momy = FixedMul((fixed_t)(FRACUNIT * 1.3), finesine[angle]);
puff->momz = 0;
}
@@ -1727,7 +1727,7 @@ void A_ShutdownPhoenixPL2(player_t * player, pspdef_t * psp)
void A_FlameEnd(mobj_t * actor)
{
- actor->momz += 1.5 * FRACUNIT;
+ actor->momz += (fixed_t)(1.5 * FRACUNIT);
}
//----------------------------------------------------------------------------
@@ -1738,7 +1738,7 @@ void A_FlameEnd(mobj_t * actor)
void A_FloatPuff(mobj_t * puff)
{
- puff->momz += 1.8 * FRACUNIT;
+ puff->momz += (fixed_t)(1.8 * FRACUNIT);
}
//---------------------------------------------------------------------------
diff --git a/src/heretic/r_data.c b/src/heretic/r_data.c
index 9846196a..ee005248 100644
--- a/src/heretic/r_data.c
+++ b/src/heretic/r_data.c
@@ -221,7 +221,7 @@ void R_GenerateLookup(int texnum)
// fill in the lump / offset, so columns with only a single patch are
// all done
//
- patchcount = (byte *) alloca(texture->width);
+ patchcount = (byte *) Z_Malloc(texture->width, PU_STATIC, &patchcount);
memset(patchcount, 0, texture->width);
patch = texture->patches;
@@ -263,6 +263,8 @@ void R_GenerateLookup(int texnum)
texturecompositesize[texnum] += texture->height;
}
}
+
+ Z_Free(patchcount);
}
@@ -322,7 +324,7 @@ void R_InitTextures(void)
names = W_CacheLumpName("PNAMES", PU_STATIC);
nummappatches = LONG(*((int *) names));
name_p = names + 4;
- patchlookup = alloca(nummappatches * sizeof(*patchlookup));
+ patchlookup = Z_Malloc(nummappatches * sizeof(*patchlookup), PU_STATIC, NULL);
for (i = 0; i < nummappatches; i++)
{
strncpy(name, name_p + i * 8, 8);
@@ -423,6 +425,8 @@ void R_InitTextures(void)
totalwidth += texture->width;
}
+ Z_Free(patchlookup);
+
W_ReleaseLumpName("TEXTURE1");
if (maptex2)
{
@@ -654,7 +658,7 @@ void R_PrecacheLevel(void)
//
// precache flats
//
- flatpresent = alloca(numflats);
+ flatpresent = Z_Malloc(numflats, PU_STATIC, NULL);
memset(flatpresent, 0, numflats);
for (i = 0; i < numsectors; i++)
{
@@ -671,10 +675,12 @@ void R_PrecacheLevel(void)
W_CacheLumpNum(lump, PU_CACHE);
}
+ Z_Free(flatpresent);
+
//
// precache textures
//
- texturepresent = alloca(numtextures);
+ texturepresent = Z_Malloc(numtextures, PU_STATIC, NULL);
memset(texturepresent, 0, numtextures);
for (i = 0; i < numsides; i++)
@@ -700,10 +706,12 @@ void R_PrecacheLevel(void)
}
}
+ Z_Free(texturepresent);
+
//
// precache sprites
//
- spritepresent = alloca(numsprites);
+ spritepresent = Z_Malloc(numsprites, PU_STATIC, NULL);
memset(spritepresent, 0, numsprites);
for (th = thinkercap.next; th != &thinkercap; th = th->next)
@@ -728,4 +736,6 @@ void R_PrecacheLevel(void)
}
}
}
+
+ Z_Free(spritepresent);
}
diff --git a/src/hexen/am_data.h b/src/hexen/am_data.h
index db964598..e20e34ce 100644
--- a/src/hexen/am_data.h
+++ b/src/hexen/am_data.h
@@ -108,9 +108,9 @@ mline_t triangle_guy[] = {
#define R (FRACUNIT)
mline_t thintriangle_guy[] = {
- { { -.5*R, -.7*R }, { R, 0 } },
- { { R, 0 }, { -.5*R, .7*R } },
- { { -.5*R, .7*R }, { -.5*R, -.7*R } }
+ { { (fixed_t)(-.5*R), (fixed_t)(-.7*R) }, { (fixed_t)(R ), (fixed_t)(0 ) } },
+ { { (fixed_t)(R ), (fixed_t)(0 ) }, { (fixed_t)(-.5*R), (fixed_t)(.7*R ) } },
+ { { (fixed_t)(-.5*R), (fixed_t)(.7*R ) }, { (fixed_t)(-.5*R), (fixed_t)(-.7*R) } }
};
#undef R
#define NUMTHINTRIANGLEGUYLINES (sizeof(thintriangle_guy)/sizeof(mline_t))
diff --git a/src/hexen/p_mobj.c b/src/hexen/p_mobj.c
index 5d6f7097..ee8f8fd4 100644
--- a/src/hexen/p_mobj.c
+++ b/src/hexen/p_mobj.c
@@ -100,7 +100,7 @@ boolean P_SetMobjState(mobj_t * mobj, statenum_t state)
if (state == S_NULL)
{ // Remove mobj
- mobj->state = S_NULL;
+ mobj->state = (state_t *) S_NULL;
P_RemoveMobj(mobj);
return (false);
}
@@ -130,7 +130,7 @@ boolean P_SetMobjStateNF(mobj_t * mobj, statenum_t state)
if (state == S_NULL)
{ // Remove mobj
- mobj->state = S_NULL;
+ mobj->state = (state_t *) S_NULL;
P_RemoveMobj(mobj);
return (false);
}
diff --git a/src/hexen/r_data.c b/src/hexen/r_data.c
index bd020073..b82c0ff6 100644
--- a/src/hexen/r_data.c
+++ b/src/hexen/r_data.c
@@ -218,7 +218,7 @@ void R_GenerateLookup(int texnum)
// fill in the lump / offset, so columns with only a single patch are
// all done
//
- patchcount = (byte *) alloca(texture->width);
+ patchcount = (byte *) Z_Malloc(texture->width, PU_STATIC, &patchcount);
memset(patchcount, 0, texture->width);
patch = texture->patches;
@@ -260,6 +260,8 @@ void R_GenerateLookup(int texnum)
texturecompositesize[texnum] += texture->height;
}
}
+
+ Z_Free(patchcount);
}
@@ -319,7 +321,7 @@ void R_InitTextures(void)
names = W_CacheLumpName("PNAMES", PU_STATIC);
nummappatches = LONG(*((int *) names));
name_p = names + 4;
- patchlookup = alloca(nummappatches * sizeof(*patchlookup));
+ patchlookup = Z_Malloc(nummappatches * sizeof(*patchlookup), PU_STATIC, NULL);
for (i = 0; i < nummappatches; i++)
{
strncpy(name, name_p + i * 8, 8);
@@ -403,6 +405,8 @@ void R_InitTextures(void)
totalwidth += texture->width;
}
+ Z_Free(patchlookup);
+
W_ReleaseLumpName("TEXTURE1");
if (maptex2)
W_ReleaseLumpName("TEXTURE2");
@@ -620,7 +624,7 @@ void R_PrecacheLevel(void)
//
// precache flats
//
- flatpresent = alloca(numflats);
+ flatpresent = Z_Malloc(numflats, PU_STATIC, NULL);
memset(flatpresent, 0, numflats);
for (i = 0; i < numsectors; i++)
{
@@ -637,10 +641,12 @@ void R_PrecacheLevel(void)
W_CacheLumpNum(lump, PU_CACHE);
}
+ Z_Free(flatpresent);
+
//
// precache textures
//
- texturepresent = alloca(numtextures);
+ texturepresent = Z_Malloc(numtextures, PU_STATIC, NULL);
memset(texturepresent, 0, numtextures);
for (i = 0; i < numsides; i++)
@@ -667,10 +673,12 @@ void R_PrecacheLevel(void)
}
}
+ Z_Free(texturepresent);
+
//
// precache sprites
//
- spritepresent = alloca(numsprites);
+ spritepresent = Z_Malloc(numsprites, PU_STATIC, NULL);
memset(spritepresent, 0, numsprites);
for (th = thinkercap.next; th != &thinkercap; th = th->next)
@@ -695,4 +703,6 @@ void R_PrecacheLevel(void)
}
}
}
+
+ Z_Free(spritepresent);
}
diff --git a/src/i_cdmus.c b/src/i_cdmus.c
index 5a52b143..94ac47c6 100644
--- a/src/i_cdmus.c
+++ b/src/i_cdmus.c
@@ -25,6 +25,8 @@
//
//-----------------------------------------------------------------------------
+#include <stdio.h>
+
#include "SDL.h"
#include "SDL_cdrom.h"
diff --git a/src/i_main.c b/src/i_main.c
index a17d56b9..1ccc52c0 100644
--- a/src/i_main.c
+++ b/src/i_main.c
@@ -26,6 +26,8 @@
#include "config.h"
+#include <stdio.h>
+
#include "SDL.h"
#include "doomtype.h"
@@ -53,7 +55,7 @@ static void LockCPUAffinity(void)
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
-typedef BOOL WINAPI (*SetAffinityFunc)(HANDLE hProcess, DWORD_PTR mask);
+typedef BOOL (WINAPI *SetAffinityFunc)(HANDLE hProcess, DWORD mask);
// This is a bit more complicated than it really needs to be. We really
// just need to call the SetProcessAffinityMask function, but that
@@ -79,7 +81,7 @@ static void LockCPUAffinity(void)
}
// Find the SetProcessAffinityMask function.
- SetAffinity = GetProcAddress(kernel32_dll, "SetProcessAffinityMask");
+ SetAffinity = (SetAffinityFunc)GetProcAddress(kernel32_dll, "SetProcessAffinityMask");
// If the function was not found, we are on an old (Win9x) system
// that doesn't have this function. That's no problem, because
diff --git a/src/i_system.h b/src/i_system.h
index b34f61e4..0697f7db 100644
--- a/src/i_system.h
+++ b/src/i_system.h
@@ -60,6 +60,7 @@ ticcmd_t* I_BaseTiccmd (void);
// Clean exit, displays sell blurb.
void I_Quit (void);
+void I_Error (char *error, ...);
// Allocates from low memory under dos,
// just mallocs under unix