Commit graph

67 commits

Author SHA1 Message Date
Clownacy
afb2b22e58 Merge branch 'accurate' into portable 2020-10-23 19:10:36 +01:00
Clownacy
d81c46a79c Release custom code under the MIT licence
Of course, Pixel's code is still proprietary.
2020-10-23 19:09:55 +01:00
Clownacy
603cfdd9db Merge branch 'accurate' into portable 2020-09-29 16:44:49 +01:00
Clownacy
0730bb74ef More cleanup 2020-09-27 22:02:45 +01:00
Clownacy
a05b802904 Merge branch 'accurate' into portable 2020-09-03 21:11:16 +01:00
Clownacy
0c367cecf7 Add FIX_MAJOR_BUGS option
This one specifically fixes bugs that either invoke undefined
behaviour or cause memory leaks. Essentially, they affect stability.
Bugs that just affect gameplay will remain covered by FIX_BUGS.
2020-09-03 21:05:14 +01:00
Clownacy
71970c1f74 Merge branch 'accurate' into portable 2020-08-29 17:11:28 +01:00
Clownacy
a3692d1c40 Add Caret enums 2020-08-05 21:45:59 +01:00
Clownacy
adb09e19b7 Merge branch 'accurate' into portable 2020-07-08 19:42:28 +01:00
Clownacy
13985fb349 Added SoundMode enum
Controls whether a PlaySoundObject call start, stops, or loops a
sound
2020-07-08 18:52:32 +01:00
Clownacy
4d3aae328b Merge branch 'accurate' into portable 2020-07-07 23:50:43 +01:00
Clownacy
220f48a98b Backport some undefined-behaviour fixes 2020-07-06 15:11:45 +01:00
Clownacy
28964f166c Merge branch 'accurate' into portable 2020-07-02 02:24:15 +01:00
Gabriel Ravier
3092c34681 src: Add #include <stddef.h> where appropriate in order to have NULL/size_t and others from the proper header
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2020-06-30 18:26:44 +02:00
Clownacy
27a1fd900f Revert more unnecessary edits 2020-06-30 13:48:46 +01:00
Gabriel Ravier
771b944d17 src: Some cleanup for the MAX_PATH std::string PR
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2020-06-29 19:02:25 +02:00
Gabriel Ravier
564d42dbd2 src: Change from using asprintf-based code to using std::string-based code
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2020-06-29 18:33:22 +02: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
cc8e875cb1 Merge branch 'accurate' into portable 2020-06-27 19:28:09 +01:00
Clownacy
a5bf854408 Document gMC.equip
All raw values have been replaced with enums
2020-06-27 19:27:57 +01:00
Clownacy
2f682a102f Merge branch 'accurate' into portable 2020-05-04 18:17:39 +01:00
Clownacy
03250d62a0 Make variables more accurate
This commit changes which variables are static: the Mac (and
presumably the Linux) debug data tells you what variables are static,
by prefixing their names with double_underscores.

The variable names themselves also hint at this: global variables are
prefixed with 'g', and use upper-camelcase, while static variables
use whatever_you_call_this.
2020-05-03 20:28:56 +01:00
Clownacy
a762f28837 Note some out-of-bounds array accesses
Thanks, Gabe
2020-02-01 12:45:32 +00:00
Gabriel Ravier
aad200801c Removed UB in PutArmsEnergy
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2020-01-31 23:55:59 +01:00
Clownacy
dfd50ecf8d Remove MycParam.cpp's dependency on SDL
Instead we just encrypt/decrypt the 290.rec data in an
endian-neutral way.
2020-01-26 14:45:36 +00:00
Clownacy
331d5a2d95 Merge branch 'accurate' into portable 2020-01-26 13:52:47 +00:00
Clownacy
30dced2587 Correct the style of some pointer checks 2020-01-26 13:52:24 +00:00
Clownacy
9cbaa0be00 Merge branch 'accurate' into portable 2020-01-08 13:16:21 +00:00
Clownacy
6d400cfcd4 Minor code style tweak 2020-01-07 07:06:02 +00:00
Clownacy
e978543dad More-accurate MycParam.cpp variable arrangement 2020-01-07 07:05:26 +00:00
Clownacy
84626ea710 Merge branch 'accurate' into portable 2020-01-07 04:55:16 +00:00
Clownacy
58d7a45392 Empty Tags.h
There's no evidence Tags.h contained these variables (if anything, it
appears that Pixel manually declared them in every file that used
them).

gg Pixel
2020-01-06 21:20:17 +00:00
Clownacy
0ec5d85d56 Merge branch 'accurate' into portable 2019-11-17 18:30:44 +00:00
Clownacy
dcc0f14266 Clean-up MycParam.cpp 2019-11-14 23:02:10 +00:00
Clownacy
531a6a0aeb Merge branch 'accurate' into portable 2019-11-10 12:17:40 +00:00
Clownacy
c5d6109df2 Comment tweaks 2019-11-10 12:17:07 +00:00
Gabriel Ravier
058881e4eb Documentation : Tried to clarify comment on random conversion to short
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-11-09 23:37:10 +01:00
Gabriel Ravier
5b18283e5f Documentation : Made some comments clearer
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2019-11-09 23:37:10 +01:00
Clownacy
5b5d5ae729 Revert "Restore the Windows-style path separators"
This reverts commit 42e1b36fd8.
2019-09-05 14:19:17 +01:00
Clownacy
84c3cd825e Merge branch 'accurate' into portable 2019-09-05 14:18:42 +01:00
Clownacy
42e1b36fd8 Restore the Windows-style path separators 2019-09-05 14:05:27 +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
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
35344c5f4f Fixes
What is it with Pixel's official code, and relying on non-standard
stuff? Even his PxTone library had portability issues.
2019-09-02 02:02:25 +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
c80b593a3f Some #include fixes
Finally figured out how to get include-what-you-use working
2019-06-06 18:44:28 +00:00
Clownacy
00ca00f5dd Weed out some usage of C++ bools
Pixel used BOOL, the C89-friendly Windows-specific equivalent
2019-05-14 01:35:04 +01:00
Clownacy
9da92097a8 Deobfuscate some TimeCounter-related values 2019-05-11 02:22:10 +01:00