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
Clownacy
1042d3fcf2
Note a difference in the old Linux port
2019-02-18 02:56:27 +00:00
Clownacy
f9a4ea9ed4
Fixed an inaccuracy in NPC002 (Behemoth)
...
Was missing some calls for the sound effects, screen rumble, and smoke
NPC
2019-02-18 02:39:38 +00:00
Clownacy
99474e4aef
Fix another capitalisation error in the stage table
...
Should probably stick these fixes in FIX_BUGS at some point...
2019-02-17 00:43:38 +00:00
Clownacy
132f523510
Changed direction key fix
...
The old fix kinda just hardcoded the game to English keyboard layouts.
Scancode bind the keys based on position instead of meaning, which
should work better.
2019-02-16 22:18:26 +00:00