Commit graph

1927 commits

Author SHA1 Message Date
Clownacy
b7a8698bb8 Made NpcAct320.cpp ASM-accurate 2019-02-25 17:32:53 +00:00
Clownacy
2d0607df32 Made NpcAct300.cpp ASM-accurate 2019-02-25 17:02:21 +00:00
Clownacy
d921729820 Made NpcAct280 ASM-accurate 2019-02-25 16:27:15 +00:00
Clownacy
30ebdf3102 Made NpcAct260.cpp ASM-accurate 2019-02-25 14:23:58 +00:00
Clownacy
4a955e02bf Made NpcAct240.cpp ASM-accurate 2019-02-25 12:27:48 +00:00
Clownacy
5290ce3bd5 Made NpcAct220.cpp ASM-accurate 2019-02-25 11:41:52 +00:00
Clownacy
6f8197d9ac Made NpcAct200.cpp ASM-accurate 2019-02-25 11:11:59 +00:00
Clownacy
65be197fdf Made NpcAct180.cpp 2019-02-25 10:12:56 +00:00
Clownacy
fc1b522a08 Made NpcAct160.cpp ASM-accurate 2019-02-25 03:04:19 +00:00
Clownacy
819be3b600 Made NpcAct140.cpp ASM-accurate 2019-02-25 02:26:38 +00:00
Clownacy
6984d0cb97 Made NpcAct120.cpp ASM-accurate 2019-02-25 01:47:58 +00:00
Clownacy
27bfd3914c Made NpcAct100.cpp almost ASM-accurate
One bit compiles identically, but with the wrong registers. I'm hoping
this will go away once the memory layout's accurate enough.
2019-02-25 01:19:54 +00:00
Clownacy
a65bf3bb60 Made NpcAct080.cpp ASM-accurate 2019-02-24 22:51:46 +00:00
Clownacy
cdeb1061f4 Made NpcAct060.cpp ASM-accurate 2019-02-24 21:26:22 +00:00
Clownacy
6adcff2614 Made NpcAct040.cpp ASM-accurate 2019-02-24 20:19:08 +00:00
Clownacy
532661b0cf Made Map.cpp and some of NpcAct020.cpp ASM-accurate
Also added a new constant 'NONPORTABLE', for enabling bits of code that
are non-portable, but needed for accuracy
2019-02-24 14:35:35 +00:00
Clownacy
08ee4c96a7 Made NpcAct020.cpp ASM-accurate 2019-02-24 11:37:10 +00:00
Clownacy
a4cebede74 Made Flash.cpp actually ASM-accurate 2019-02-24 03:13:36 +00:00
Clownacy
3fc8ceb0a6 Made NpcAct000.cpp *really* ASM-accurate
Unlike the other files, I've gone out of my way to get accurate stack
frame layouts. The Devilution comparer tool really comes in handy here.
2019-02-24 02:34:19 +00:00
Clownacy
8484fc2c2d Fix Font.cpp not expecting the font colour in BGR 2019-02-23 23:36:53 +00:00
Clownacy
01ddc5e923 Fixed some warning MSVC2003 was giving in /W3 mode 2019-02-23 21:45:57 +00:00
Clownacy
d55f72aeaf Another missing #include that MSVC2003 noticed 2019-02-23 15:25:49 +00:00
Clownacy
3e4ef292c4 Add a missing (but unusable) call 2019-02-22 22:27:18 +00:00
Clownacy
3e5f44f8de Changed some things to BOOL/BOOLEAN, for ASM-accuracy 2019-02-22 22:23:57 +00:00
Clownacy
923749e41e Some more fixes for errors MSVC2003 noticed
Now I've got the entire project building with MSVC2003, _and_ I can
compare its ASM with Devilution's disassembler tool.
2019-02-22 21:18:39 +00:00
Clownacy
e3549f8703 Made Triangle.cpp ASM-accurate
It's really starting to look more and more like Pixel really did write
in C90... just look at the declarations I have to shove at the start of
the functions.
2019-02-21 23:24:23 +00:00
Clownacy
293dbd4e03 1) I'm stupid 2) Use RGB for the PutText calls 2019-02-21 21:16:57 +00:00
Clownacy
b648268283 Changed CortBox(2) col parameter from RGB to BGR
That's how it is in the original. Look up Microsoft's COLORREF.
2019-02-21 21:01:16 +00:00
Clownacy
3eca2d7cf3 Add all GetCortBoxColor calls back (also I found a vanilla bug) 2019-02-21 20:56:27 +00:00
Clownacy
5754da507d Made gFade static
We don't need to leak all this
2019-02-21 20:23:24 +00:00
Clownacy
88ed2d6eab Made Flags.cpp ASM-accurate 2019-02-21 20:20:13 +00:00
Clownacy
fb9b545e27 Made Flash.cpp more source-accurate
The returns make more sense than those empty brackets
2019-02-21 19:51:40 +00:00
Clownacy
5ba0454bc8 Made Fade.cpp ASM-accurate 2019-02-21 19:46:52 +00:00
Clownacy
995a4f7a79 Work around a portability issue for now
We'll maybe need a new compiler flag or something. I don't like leaving
something like this enabled by default.
2019-02-20 19:55:45 +00:00
Clownacy
367b41bc88 Fixed another case of assuming long is 32-bit 2019-02-20 15:08:35 +00:00
Clownacy
55f1d3a9fe Fixed some problems found while compiling most of this with VC++2003
I could compile most of this, but not link it (SDL2's .lib files must
be too new).
2019-02-20 03:55:05 +00:00
Clownacy
a76b7a3a87 Fix sprite upscaling on platforms where long isn't 32-bit
That was dumb.
2019-02-19 23:35:37 +00:00
Clownacy
9203105235 Shut up some warnings 2019-02-19 22:57:00 +00:00
Clownacy
ec148c1072 Made the spriterects C++03-compatible 2019-02-19 22:30:43 +00:00
Clownacy
4d04590b28 Made the game compile as C++03
Still need to sort out the C++11-only initialiser lists that GCC allows
in C++03 mode with a warning.
2019-02-19 16:05:28 +00:00
Clownacy
ff4352ffde Made more NPCs ASM-accurate
Geez, there has to be a faster way to do this. This is tedious as all
hell.
2019-02-19 15:52:25 +00:00
Clownacy
754bed870c Got NpcAct000.cpp to compile in MSVC2003 and made NPCs 0/1 ASM-accurate 2019-02-19 04:33:50 +00:00
Clownacy
84945aa898 Removed some old unimplemented-function stuff that we no longer need 2019-02-19 00:55:01 +00:00
Clownacy
fbaf46548f Made Back.cpp about as ASM-accurate as I can make it
...without removing the widescreen stuff, at least.
2019-02-19 00:50:16 +00:00
Clownacy
e1e49a4dcc Made ArmsItem.cpp ASM-accurate 2019-02-19 00:18:32 +00:00
Clownacy
0bb9760d87 Rearranged #includes 2019-02-18 21:30:22 +00:00
Clownacy
809fb95b26 Fix Surface_Ids crash 2019-02-18 20:40:51 +00:00
Clownacy
e5caff593c Removed the SDL dependency from Draw.h
Should make compiling with VC++ 2003 simpler
2019-02-18 20:40:07 +00:00
Clownacy
132d3c5110 Applied SURFACE_ID constants to everything 2019-02-18 14:36:58 +00:00
Clownacy
f08c1c3aa6 Added some bugfixes and cleanup 2019-02-18 13:24:10 +00:00