diff --git a/3rdParty/Storm/Source/storm.cpp b/3rdParty/Storm/Source/storm.cpp index 750592db6..fab69c1cb 100644 --- a/3rdParty/Storm/Source/storm.cpp +++ b/3rdParty/Storm/Source/storm.cpp @@ -78,7 +78,7 @@ LONG STORMAPI SFileGetFileSize(HANDLE hFile, LPDWORD lpFileSizeHigh) rInt; BOOL STORMAPI SFileOpenArchive(const char *szMpqName, DWORD dwPriority, DWORD dwFlags, HANDLE *phMpq) rBool; BOOL STORMAPI SFileOpenFile(const char *filename, HANDLE *phFile) rBool; BOOL STORMAPI SFileOpenFileEx(HANDLE hMpq, const char *szFileName, DWORD dwSearchScope, HANDLE *phFile) rBool; -BOOL STORMAPI SFileReadFile(HANDLE hFile, void *buffer, DWORD nNumberOfBytesToRead, DWORD *read, LONG lpDistanceToMoveHigh) rBool; +BOOL STORMAPI SFileReadFile(HANDLE hFile, void *buffer, DWORD nNumberOfBytesToRead, DWORD *read, LONG *lpDistanceToMoveHigh) rBool; void STORMAPI SFileSetLocale(LCID lcLocale) rVoid; diff --git a/3rdParty/Storm/Source/storm.h b/3rdParty/Storm/Source/storm.h index fe5a75ce0..4d66d64d1 100644 --- a/3rdParty/Storm/Source/storm.h +++ b/3rdParty/Storm/Source/storm.h @@ -505,7 +505,7 @@ enum SFileFlags SFILE_FROM_DISK = 0x00000004 }; -BOOL STORMAPI SFileReadFile(HANDLE hFile, void *buffer, DWORD nNumberOfBytesToRead, DWORD *read, LONG lpDistanceToMoveHigh); +BOOL STORMAPI SFileReadFile(HANDLE hFile, void *buffer, DWORD nNumberOfBytesToRead, DWORD *read, LONG *lpDistanceToMoveHigh); void STORMAPI SFileSetLocale(LCID lcLocale); diff --git a/DiabloUI/artfont.cpp b/DiabloUI/artfont.cpp index 8035f4eeb..691d73168 100644 --- a/DiabloUI/artfont.cpp +++ b/DiabloUI/artfont.cpp @@ -107,7 +107,7 @@ void __fastcall artfont_LoadArtFont(FontStruct *pFont, const char *pszBinFile, c if (!pFont->active && SFileOpenFile(pszBinFile, &phFile)) { v4 = SFileGetFileSize(phFile, 0); - if (SFileReadFile(phFile, pFont, v4, 0, 0)) { + if (SFileReadFile(phFile, pFont, v4, 0, NULL)) { SFileCloseFile(phFile); local_LoadArtImage(pszFileName, &pBuffer, size); memset(pFont->fonttrans, 0, 0x400u); diff --git a/DiabloUI/diabloui.h b/DiabloUI/diabloui.h index beebd775a..4a7768c5f 100644 --- a/DiabloUI/diabloui.h +++ b/DiabloUI/diabloui.h @@ -2,7 +2,7 @@ #ifndef __DIABLOUI_H__ #define __DIABLOUI_H__ -#ifdef __GNUC__ +#if defined(__GNUC__) || defined(__cplusplus) extern "C" { #endif @@ -55,7 +55,7 @@ void __stdcall UiCreateGameCriteria(_uiheroinfo *pInfo, char *str); BOOL __stdcall UiGetDefaultStats(int pclass, _uidefaultstats *pStats); BOOL __stdcall UiBetaDisclaimer(int a1); -#ifdef __GNUC__ +#if defined(__GNUC__) || defined(__cplusplus) } #endif diff --git a/MakefileVC b/MakefileVC index 90522a49b..524ffcc28 100644 --- a/MakefileVC +++ b/MakefileVC @@ -58,7 +58,7 @@ DIABLO_SRC += Source/render.cpp OBJS=$(DIABLO_SRC:.cpp=.obj) # hardcoded list of src files, because only some of them are ready to be compiled as C instead of C++ # once all files compile as C we should use the /TC flag abd DIABLO_SRC instead -DIABLO_SRC_FIXED = Source/appfat.cpp /TcSource/automap.cpp Source/capture.cpp /TcSource/codec.cpp Source/control.cpp /TcSource/cursor.cpp /TcSource/dead.cpp /TcSource/debug.cpp Source/diablo.cpp /TcSource/doom.cpp /TcSource/drlg_l1.cpp /TcSource/drlg_l2.cpp Source/drlg_l3.cpp /TcSource/drlg_l4.cpp Source/dthread.cpp Source/dx.cpp Source/effects.cpp /TcSource/encrypt.cpp Source/engine.cpp /TcSource/error.cpp Source/fault.cpp /TcSource/gamemenu.cpp /TcSource/gendung.cpp /TcSource/gmenu.cpp /TcSource/help.cpp Source/init.cpp /TcSource/interfac.cpp /TcSource/inv.cpp Source/items.cpp Source/lighting.cpp /TcSource/loadsave.cpp Source/logging.cpp Source/mainmenu.cpp /TcSource/minitext.cpp Source/missiles.cpp Source/monster.cpp /TcSource/movie.cpp Source/mpqapi.cpp Source/msg.cpp Source/msgcmd.cpp Source/multi.cpp Source/nthread.cpp Source/objects.cpp /TcSource/pack.cpp Source/palette.cpp /TcSource/path.cpp Source/pfile.cpp /TcSource/player.cpp /TcSource/plrmsg.cpp /TcSource/portal.cpp /TcSource/quests.cpp /TcSource/restrict.cpp Source/scrollrt.cpp /TcSource/setmaps.cpp /TcSource/sha.cpp Source/sound.cpp /TcSource/spells.cpp Source/stores.cpp /TcSource/sync.cpp /TcSource/textdat.cpp /TcSource/themes.cpp /TcSource/tmsg.cpp /TcSource/town.cpp /TcSource/towners.cpp /TcSource/track.cpp /TcSource/trigs.cpp Source/wave.cpp Source/render.cpp +DIABLO_SRC_FIXED = Source/appfat.cpp /TcSource/automap.cpp Source/capture.cpp /TcSource/codec.cpp Source/control.cpp /TcSource/cursor.cpp /TcSource/dead.cpp /TcSource/debug.cpp Source/diablo.cpp /TcSource/doom.cpp /TcSource/drlg_l1.cpp /TcSource/drlg_l2.cpp Source/drlg_l3.cpp /TcSource/drlg_l4.cpp Source/dthread.cpp Source/dx.cpp /TcSource/effects.cpp /TcSource/encrypt.cpp Source/engine.cpp /TcSource/error.cpp Source/fault.cpp /TcSource/gamemenu.cpp /TcSource/gendung.cpp /TcSource/gmenu.cpp /TcSource/help.cpp /TcSource/init.cpp /TcSource/interfac.cpp /TcSource/inv.cpp Source/items.cpp Source/lighting.cpp /TcSource/loadsave.cpp Source/logging.cpp /TcSource/mainmenu.cpp /TcSource/minitext.cpp Source/missiles.cpp Source/monster.cpp /TcSource/movie.cpp Source/mpqapi.cpp /TcSource/msg.cpp Source/msgcmd.cpp /TcSource/multi.cpp Source/nthread.cpp Source/objects.cpp /TcSource/pack.cpp Source/palette.cpp /TcSource/path.cpp /TcSource/pfile.cpp /TcSource/player.cpp /TcSource/plrmsg.cpp /TcSource/portal.cpp /TcSource/quests.cpp /TcSource/restrict.cpp Source/scrollrt.cpp /TcSource/setmaps.cpp /TcSource/sha.cpp Source/sound.cpp /TcSource/spells.cpp Source/stores.cpp /TcSource/sync.cpp /TcSource/textdat.cpp /TcSource/themes.cpp /TcSource/tmsg.cpp /TcSource/town.cpp /TcSource/towners.cpp /TcSource/track.cpp /TcSource/trigs.cpp /TcSource/wave.cpp Source/render.cpp PKWARE_SRC=$(sort $(wildcard 3rdParty/PKWare/*.cpp)) PKWARE_OBJS=$(PKWARE_SRC:.cpp=.obj) diff --git a/Source/effects.cpp b/Source/effects.cpp index 0da261966..8930c692e 100644 --- a/Source/effects.cpp +++ b/Source/effects.cpp @@ -2,7 +2,6 @@ #include "../types.h" -static float effects_cpp_init_value = INFINITY; int sfxdelay; // weak int sfxdnum; void *sfx_stream; diff --git a/Source/init.cpp b/Source/init.cpp index 05dfff0fd..2e92b4e44 100644 --- a/Source/init.cpp +++ b/Source/init.cpp @@ -3,7 +3,6 @@ #include "../types.h" _SNETVERSIONDATA fileinfo; -static float init_cpp_init_value = INFINITY; int gbActive; // weak char diablo_exe_path[260]; void *unused_mpq; diff --git a/Source/mainmenu.cpp b/Source/mainmenu.cpp index 066760cd8..d0b43aae1 100644 --- a/Source/mainmenu.cpp +++ b/Source/mainmenu.cpp @@ -2,7 +2,6 @@ #include "../types.h" -static float mainmenu_cpp_init_value = INFINITY; char gszHero[16]; /* data */ diff --git a/Source/msg.cpp b/Source/msg.cpp index ff6d72b55..f68e46881 100644 --- a/Source/msg.cpp +++ b/Source/msg.cpp @@ -19,8 +19,6 @@ BOOL deltaload; BYTE gbBufferMsgs; int pkt_counter; -static float msg_cpp_init_value = INFINITY; - void __fastcall msg_send_drop_pkt(int pnum, int reason) { TFakeDropPlr cmd; diff --git a/Source/multi.cpp b/Source/multi.cpp index a153695f0..4e74ecef1 100644 --- a/Source/multi.cpp +++ b/Source/multi.cpp @@ -9,7 +9,6 @@ short sgwPackPlrOffsetTbl[MAX_PLRS]; PkPlayerStruct netplr[MAX_PLRS]; char sgbPlayerTurnBitTbl[MAX_PLRS]; char sgbPlayerLeftGameTbl[MAX_PLRS]; -static float multi_cpp_init_value = INFINITY; int sgbSentThisCycle; // idb int dword_678628; // weak BYTE gbActivePlayers; // weak diff --git a/Source/pfile.cpp b/Source/pfile.cpp index 6ae1354c7..65915fb5a 100644 --- a/Source/pfile.cpp +++ b/Source/pfile.cpp @@ -5,8 +5,6 @@ #define PASSWORD_SINGLE "xrgyrkj1" #define PASSWORD_MULTI "szqnlsk1" -static float pfile_cpp_init_value = INFINITY; - static char hero_names[MAX_CHARACTERS][PLR_NAME_LEN]; BOOL gbValidSaveFile; @@ -315,14 +313,14 @@ char *__fastcall GetSaveDirectory(char *dst, int dst_size, unsigned int save_num BOOL __fastcall pfile_read_hero(HANDLE archive, PkPlayerStruct *pPack) { HANDLE file; - BOOL decoded, ret; + BOOL decoded; DWORD dwlen, nSize; unsigned char *buf; if (!SFileOpenFileEx(archive, "hero", 0, &file)) return FALSE; else { - ret = FALSE; + BOOL ret = FALSE; char password[16] = PASSWORD_SINGLE; nSize = 16; diff --git a/Source/wave.cpp b/Source/wave.cpp index f08f3dcf2..2feb34b5f 100644 --- a/Source/wave.cpp +++ b/Source/wave.cpp @@ -2,8 +2,6 @@ #include "../types.h" -static float wave_cpp_init_value = INFINITY; - BOOL __fastcall WCloseFile(HANDLE file) { return SFileCloseFile(file);