Commit graph

30 commits

Author SHA1 Message Date
Sergey Semushin
6ec6e3c530 Make MonstrStruct::_msquelch and DMonstrStr::_mactive unsigned.
Also utilize UCHAR_MAX for value of 255 used extensively for those flags.
2019-05-10 21:52:23 +01:00
galaxyhaxz
8ead9a8606 run_game_loop 2019-05-05 12:30:39 +01:00
galaxyhaxz
777c517b8e Change ASM macro 2019-04-22 02:23:12 -05:00
galaxyhaxz
540892ff9d Preliminary support for fixed header files 2019-04-21 17:20:38 +02:00
galaxyhaxz
b228d6e00a Palette fix for newer Windows 2019-04-12 22:42:39 -05:00
Anders Jenbo
736181aa72 Fix warnings 2019-04-05 15:09:53 +02:00
Anders Jenbo
f8f2c0b79b
Unhide fixed warnings 2019-04-05 01:09:15 +02:00
Anders Jenbo
4ad6567187
It's a feature not a bug 2019-04-05 01:08:41 +02:00
galaxyhaxz
f59fd7de20
Fix gendung.cpp headache (#722) 2019-03-23 04:26:23 -05:00
Anders Jenbo
e795b6116a Make use of atexit() C compatible (#537) 2019-01-01 03:05:29 +01:00
Robin Eklind
8ed5573766
engine: clean up CelDecDatLightEntry and Cel2DecDatLightEntry (#524)
Now, these functions no longer use references. Instead they
use pointer to pointer. Furthermore, they've been simplified
to for loops, as essentially, the decompiled functions were
unrolled loops (as seen in the memset function).
2018-12-30 03:52:50 +01:00
Anders Jenbo
87ea335ec4 Compile gamemenu.cpp, track.cpp & trigs.cpp as C (#525)
This enables processing pfile.h as a C header, this adds two minor
warnings to the compile process but should be fine (game works)
2018-12-30 03:27:03 +01:00
Robin Eklind
6817fecc34 cursor.h and objects.h no longer have collisions 2018-12-30 03:19:10 +01:00
Anders Jenbo
629dfa2083 Compile as c (#522)
* Reorder lib

This is the orhter that they appear in the exe imports

* Make includes C compatible

cursor.h: SetCursor conflicts with existing function
engine.h: CelDecDatLightEntry and Cel2DecDatLightEntry use by reference
*&
objects.h: DeleteObject conflicts with existing function

* Start compiling select files as C

* Clean up

pfile still emits warnings when parsed as C:
err:msvcrt:demangle_datatype Unknown type @
err:msvcrt:demangle_datatype Unknown type @
2018-12-30 01:47:51 +01:00
Anders Jenbo
fcc4e19287 Format debug related code 2018-10-22 01:45:27 +02:00
Anders Jenbo
a202569faa Fix bad commit (fixes build) 2018-10-22 01:24:40 +02:00
Anders Jenbo
a08bfa22c0 Autoformat some base files 2018-10-22 00:02:40 +02:00
galaxyhaxz
21d611439f
Remove temp debug now that bugs are gone 2018-08-31 23:36:48 -05:00
nomdenom
798beff9d5 Speed up build with WIN32_LEAN_AND_MEAN (#173) 2018-08-23 18:07:57 -05:00
galaxyhaxz
5ff8756116
Fix junk (#174) 2018-08-21 23:58:17 -05:00
galaxyhaxz
fa64b2148d
Add defines [W.I.P] (#160) 2018-08-15 22:13:15 -05:00
galaxyhaxz
d93b3ca253
Update types.h 2018-06-28 09:33:17 -05:00
galaxyhaxz
d03c56e844
Add debug lighting, add cmd line note (#61) 2018-06-23 12:19:49 -05:00
galaxyhaxz
5e8bb2e5bb
Add icon, improve makefile, fix debugger (#50) 2018-06-22 10:36:57 -05:00
galaxyhaxz
0db106a5b4
Add support for Visual C++ 5.10 (#12)
* Update stuff
2018-06-14 02:38:27 -05:00
galaxyhaxz
e50f5a1299
Update types.h 2018-06-09 05:25:47 -05:00
mewmew
f5f76f8b8a Fix build on Linux 2018-06-08 11:23:30 +02:00
galaxyhaxz
b1ee40f6e7
Revert "Add preliminary support for compiling on Linux" 2018-06-07 22:00:35 -05:00
mewmew
20fdbf8aa2 Fix compile errors on Linux
Source/../types.h:35:10: fatal error: DiabloUI/_diabloui.h: No such file or directory
 #include "DiabloUI/_diabloui.h"

---

Source/../Source/init.h:43:109: error: fastcall and stdcall attributes are not compatible
 LRESULT (__stdcall *__fastcall SetWindowProc(void *func))(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam);

---

Source/missiles.cpp:915:27: error: unable to find numeric literal operator ‘operator""i64’
  *(_QWORD *)&Dirs[0][2] = 0i64;

---

Source/world.cpp:38:1: error: narrowing conversion of ‘3937053354’ from ‘unsigned int’ to ‘int’ inside { } [-Wnarrowing]

---

Source/lighting.cpp:429:1: error: narrowing conversion of ‘-1’ from ‘int’ to ‘unsigned char’ inside { } [-Wnarrowing]

---

Source/objects.cpp:5459:62: error: unable to find numeric literal operator ‘operator""i64’
      while ( !(plr[v53]._pMemSpells[1] & ((unsigned __int64)(1i64 << v60) >> 32) | plr[v53]._pMemSpells[0] & (unsigned int)(1i64 << v60)) );

---

Source/control.cpp:488:9: error: unable to find numeric literal operator ‘operator""i64’
   v26 = 1i64;

---

Source/objects.cpp:243:1: error: narrowing conversion of ‘255’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]

---

Source/gamemenu.cpp:22:1: error: narrowing conversion of ‘2147483648’ from ‘unsigned int’ to ‘int’ inside { } [-Wnarrowing]

---

Source/sound.cpp:41:88: error: narrowing conversion of ‘240’ from ‘unsigned int’ to ‘char’ inside { } [-Wnarrowing]

---

Source/quests.cpp:46:1: error: narrowing conversion of ‘255’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]

---

Source/player.cpp:4666:8: error: unable to find numeric literal operator ‘operator""i64’
  v14 = 0i64;

---

Source/init.cpp:546:109: error: fastcall and stdcall attributes are not compatible
 LRESULT (__stdcall *__fastcall SetWindowProc(void *func))(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)

---

Source/items.cpp:114:1: error: narrowing conversion of ‘(item_effect_type)255’ from ‘unsigned int’ to ‘char’ inside { } [-Wnarrowing]

---

Source/items.cpp:307:1: error: narrowing conversion of ‘(unique_base_item)255’ from ‘unsigned int’ to ‘char’ inside { } [-Wnarrowing]

---

Source/items.cpp:854:8: error: unable to find numeric literal operator ‘operator""i64’
  v37 = 0i64;

---

Source/items.cpp:471:1: error: narrowing conversion of ‘(item_equip_type)255’ from ‘unsigned int’ to ‘char’ inside { } [-Wnarrowing]
2018-06-07 22:44:03 +02:00
galaxyhaxz
8060b9b92b
Add files via upload 2018-06-06 21:15:59 -05:00