Commit graph

36 commits

Author SHA1 Message Date
Clownacy
8b854a0c95 Don't use Windows.h in WindowsWrapper.h
The need for this was eliminates ages ago, when I remove the
WindowsWrapper.h dependencies from the backends (it should only be
used by core Cave Story code).

This should eliminate any future issues with Windows.h causing
name-collisions.
2020-07-08 19:33:52 +01:00
Clownacy
04fca693ad Try to avoid more Windows.h name collisions
I was hearing that DrawText would conflict.
2020-07-08 02:27:37 +01:00
Clownacy
ccffba8a80 Remove user-sabotage
They could have their reasons.
2020-06-30 13:49:14 +01:00
Gabriel Ravier
32a879ca58 src: Removed MAX_PATH and made the path/string handling better in general (ported over from supportPathsAboveFilenameMax)
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2020-06-29 00:14:30 +02:00
Clownacy
b57ccd7ed5 Shut up errors on Windows 2020-03-31 20:22:54 +01:00
Clownacy
61aec1cb15 Use native Windows types/macros when available
This prevents conflicts when a translation unit includes
`WindowsWrapper.h`, and middleware that includes `windows.h`.
2020-03-17 13:21:37 +00:00
Clownacy
8798a7cc19 Add the RGB macro to the windows.h wrapper 2020-01-22 23:53:14 +00:00
Clownacy
2b34cf7965 Typedef BOOL to bool
Since we're not converting to C anymore, it should be fine to rely
on this standard C++ type.
2020-01-20 23:47:33 +00:00
Clownacy
9cbaa0be00 Merge branch 'accurate' into portable 2020-01-08 13:16:21 +00:00
Clownacy
a5df6ebc72 Remove SET_RECT macro
I should probably remove WindowsWrapper.h from this branch now, and
just make files use windows.h directly.
2020-01-07 23:15:33 +00:00
Gabriel Ravier
adc4f99c5a Remove the undefs in WindowsWrapper, as these have no purpose here (no collisions with accurate)
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-11-04 15:07:20 +01:00
Clownacy
2b4b57c6eb Merge branch 'accurate' into portable 2019-09-04 14:11:54 +00:00
Clownacy
dcf9921481 Move SystemTask from WindowsWrapper.h to Main.h 2019-09-04 02:23:49 +01:00
Clownacy
4e50046d4b Remove WINDOWS and NONPORTABLE
Now that the portable stuff gets its own branch, these are unneeded
2019-09-04 02:14:15 +01:00
Clownacy
b553b0c2e9 Remove DWORD and BYTE
They're not as deeprooted as BOOL.
2019-09-04 01:10:54 +01:00
Clownacy
73e18b4610 Removed the WINDOWS and NONPORTABLE stuff
Now that all the ASM-accurate stuff is in its own branch, we don't
need these anymore.
2019-09-04 00:54:11 +01:00
Clownacy
5ea356a3bd Weed out a lot of the Windows dependency
Storytime: Cucky's original SDL2 port work involved using SDL2's
threading API to emulate the original WinAPI threading.

I can't be assed with that stuff, so I used the same trick Cucky did
for the Wii port, and hooked Organya up to the SDL2 audio callback.
This actually opens up the possibility for perfectly-synchronised
Organya playback. By that I mean, instead of needing a super
low-latency audio callback, I can have the callback synchronise its
audio mixing with Organya itself. I haven't done it yet, I plan to
soon.
2019-09-04 00:28:23 +01:00
Clownacy
451945e80c Ripped out SDL2, and begun made WinMain ASM-accurate
Almost there... see #74.
2019-09-01 14:39:16 +01:00
Clownacy
03e513365b PATH_LENGTH is actually Windows's MAX_PATH
When MAX_PATH isn't available, use FILENAME_MAX. This might be a bad
idea.
2019-08-31 01:44:53 +01:00
Clownacy
766f24188f Correct a header name
Windows isn't case-sensitive, but MinGW-w64 on Linux is.
2019-08-30 19:30:35 +00:00
Clownacy
9948fa8b07 Move the SDL_Window creation to the rendering backends
Whoops, didn't mean to commit the Main.cpp edit way back when I made
the OpenGL 2.1 backend.
2019-07-24 20:20:06 +01:00
Clownacy
323e33ed36 Fixes for non-MSVC2003 builds 2019-06-20 20:46:03 +01:00
Clownacy
44f142d8e7 Big ugly rework of WindowsWrapper.h
Okay so WindowsWrapper.h now just includes Windows.h if it wants
non-portability. This meant I had to split the custom RECT struct
back to the original RECT and unknown nameless struct (one uses
left/right, while the other uses front/back).
2019-06-20 20:06:55 +01:00
Clownacy
d2b5872c95 Weeded out some bool usage
Cave Story was written in C89. No bools. I've left in Sound.cpp's
though, since that's written in C++98 currently.
2019-05-24 10:07:30 +01:00
Clownacy
0eaca9966c Made Bullet.cpp ASM-accurate 2019-05-06 16:49:52 +01:00
Gabriel Ravier
d854004463 Added .gitattributes for normalisation and normalized a few sources files to LF (from CRLF)
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-05-03 12:27:11 +02:00
Clownacy
d019b85616 Made MiniMap.cpp supposedly ASM-accurate
Goes toward #74
A few core functions like Flip_SystemTask and GetTrg have a different
number of parameters to the original version of the game, so they cause
the ASM to generate differently.
2019-02-26 00:41:13 +00:00
Clownacy
5ba0454bc8 Made Fade.cpp ASM-accurate 2019-02-21 19:46:52 +00:00
Clownacy
0bb9760d87 Rearranged #includes 2019-02-18 21:30:22 +00:00
cuckydev
1e748f9406 fix 2019-02-09 23:07:23 -05:00
cuckydev
767c2972ae tallscreen fix, replicated MSVC rand 2019-02-09 22:02:18 -05:00
Clownacy
dfe2ec83ae Made Flash.cpp *really* accurate
So I found out that the orignal EXE was compiled with Visual Studio .NET
2003, thanks to its Rich Header. With this compiler, I can create the
exact same assembly code as the EXE.

Using this, I found a bunch of inaccuracies in Flash.cpp, as a small
test. I'll come back to this later, once the rest of the game is
complete, but until then, here's a small taster.
2019-02-08 16:38:27 +00:00
cuckydev
51638079c7 worked on npc stuff 2019-01-22 22:04:35 -05:00
cuckydev
c84f49f1dc wip 2019-01-16 22:48:21 -05:00
cuckydev
c6e3fa8685 working on draw stuff (doesn't compile) 2019-01-12 00:37:07 -05:00
cuckydev
b117a7a1bc
Initial Commit 2019-01-10 21:16:55 -05:00