Commit graph

2510 commits

Author SHA1 Message Date
Clownacy
4403d10c14 Merge branch 'accurate' into portable 2020-05-04 18:24:23 +01:00
Clownacy
70a3badc0d Cleanup 2020-05-04 18:21:44 +01:00
Clownacy
2f682a102f Merge branch 'accurate' into portable 2020-05-04 18:17:39 +01:00
Clownacy
4000615b45 This is also likely more accurate to the source 2020-05-03 22:13:28 +01:00
Clownacy
124aebaaa2 This is likely more accurate to the original code 2020-05-03 22:07:18 +01:00
Clownacy
e1af3336aa Fix compilation 2020-05-03 22:05:39 +01:00
Clownacy
496a50c272 More static function stuff
This time I'm using the Linux debug data
2020-05-03 21:52:37 +01:00
Clownacy
95b29bb516 Mark some functions as static
Mac debug data confirms these
2020-05-03 21:52:36 +01:00
Clownacy
486cf37161 Mark a char as signed
Might revert, not sure. I'm just doing this for consistency with
other bits of code.
2020-05-03 21:52:29 +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
Gabriel Ravier
bdbc2475c6 CMakeLists: Add setting of CMP0072 to normal CMakeLists, too
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2020-05-03 02:21:16 +02:00
Clownacy
b7418432df Merge branch 'portable' of https://github.com/Clownacy/Cave-Story-Engine-2 into portable 2020-05-03 01:17:06 +01:00
Clownacy
340a552003
Merge pull request #118 from GabrielRavier/portableAddSDL2VersionCheck
CMakeLists: Add minimum version for SDL2
2020-05-03 01:12:40 +01:00
Clownacy
4895880682 WiiU: Use different folder depending on language 2020-05-02 23:54:38 +01:00
Gabriel Ravier
277a0b8e73 CMakeLists: Add minimum version for SDL2
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2020-05-01 00:19:12 +02:00
Gabriel Ravier
b52a343760 CMakeLists: Fix CMP0072 warning
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2020-05-01 00:13:22 +02:00
Clownacy
bdbebf9a35 Merge branch 'portable' of https://github.com/Clownacy/Cave-Story-Engine-2 into portable 2020-04-29 16:13:08 +01:00
Clownacy
88602ccaf6 Do not create glyph textures with no height/width
This should fix the issue with cute_spritebatch.h, described in #116.
2020-04-29 13:09:51 +01:00
Clownacy
d0ec163e0a Merge branch 'accurate' into portable 2020-04-27 18:42:11 +01:00
Clownacy
99ed3ead55
Merge pull request #115 from GabrielRavier/portableAddCMake3_10Support
Add support for CMake 3.8 in portable
2020-04-27 18:41:34 +01:00
Clownacy
3dd904adf6
Merge pull request #114 from GabrielRavier/accurateAddCMake3_10Support
Accurate: Change minimum CMake version from 3.12 to 3.5.1
2020-04-27 18:41:13 +01:00
Clownacy
16f29f6fb7 Merge branch 'accurate' into portable 2020-04-26 00:56:40 +01:00
Clownacy
1e63788c61 Use safe printf functions for Wii U code 2020-04-26 00:55:33 +01:00
Clownacy
aa18cccef5 Ditch the Nintendo-style controls
After asking around, people really seem to prefer Xbox-style
controllers. Admittedly, when I was playtesting with Nintendo
controls, I wound up using my fingers to press A/B because of how
awkward it was.
2020-04-26 00:50:43 +01:00
Clownacy
43c0b670ab Figured out the mystery values in RestoreSurfaces
They're ASCII characters.
2020-04-26 00:07:45 +01:00
Clownacy
e4e8453ba6 Make some logic more like vanilla 2020-04-25 17:58:19 +01:00
Clownacy
c5691d7570 Fix Wii U port when TV is set to 1080p
WUT's bugged. See here:
https://github.com/devkitPro/wut/issues/119

It apparently got this bug from the Decaf emulator. Maybe I should
tell those guys too.
2020-04-25 00:22:24 +01:00
Clownacy
22c9987191 Dear me: Test your fixes before committing them
you complete tit-head
2020-04-24 19:49:18 +01:00
Clownacy
cbeeb7a180 Fix WiiU-Software backend buffer being 5ms
5ms is too small: it cannot be updated fast enough, resulting in
crackling coming from the gamepad speakers. Now it's 10ms, as
intended.
2020-04-24 19:42:47 +01:00
Clownacy
20440ff5e0 Missing a line 2020-04-24 17:20:32 +01:00
Clownacy
8e2d8ab962 Add context initialisation to miniaudio backend
This is used for mutexes in the enhanced backend
2020-04-24 17:06:53 +01:00
Clownacy
bf8d824b70 Fix typo 2020-04-24 13:02:51 +01:00
Clownacy
8945ca8275 Remove old Wii U window backend
Made redundant by hardware-accelerated one.
2020-04-23 21:06:36 +01:00
Clownacy
fe69a5d76d Fix typo 2020-04-23 21:05:25 +01:00
Clownacy
231d1b93a7 Add error-handling to Font.cpp
Prevents a crash on the Wii U port in 1280x720 when you try to open
the pause menu. There's a giant delay now instead, and I'm not sure
where it comes from. Still, it's an improvement.
2020-04-23 20:50:12 +01:00
Clownacy
a7f2ec6a5e Safely-handle LockSurface failing
Fixes crash on Wii U at 1280x720 (LockSurface fails there because
CreateSurface fails - maybe it's running out of memory again)
2020-04-23 19:53:33 +01:00
Clownacy
a8d0595bcd Update other backends to current API
The only other backend besides the Wii U one to use `render_target`
is the SDLTexture one.
2020-04-23 14:38:45 +01:00
Clownacy
b841f22c6d Remember to free the glyph shader 2020-04-23 14:35:41 +01:00
Clownacy
b8dd512dc4 Free surface upon failure 2020-04-23 14:34:58 +01:00
Clownacy
d7c138f818 More error-handling 2020-04-23 14:33:59 +01:00
Clownacy
1f9247e587 Cleanup and extra error-handling 2020-04-23 14:31:19 +01:00
Clownacy
ee1d777ebb ...Actually do what the last commit said 2020-04-23 13:41:24 +01:00
Clownacy
a2cdd9ac18 Allow surfaces to be marked as not-render-targets
The Wii U has a very limited pool of memory for render targets
(32MB), so we should only use it if we have to.

This 'fixes' a bug in the enhanced branch, where if you use 2x
sprites at 854x480, the third line of the text box will be corrupted
(text will appear on the second line instead, and be black instead of
white).

The other renderers haven't been updated for the API change yet.
2020-04-23 13:23:10 +01:00
Clownacy
ebb96ad239 Cleanup 2020-04-22 01:50:31 +01:00
Clownacy
4752423ff3 Use pitch 2020-04-22 01:46:48 +01:00
Clownacy
0421a7ca54 Wii U: Glyphs don't use colour-buffers 2020-04-22 01:08:31 +01:00
Clownacy
6bdb406940 Also consistency with enhanced branch 2020-04-22 00:14:08 +01:00
Clownacy
f006508232 Sanity check 2020-04-22 00:13:54 +01:00
Clownacy
6a00057469 Do not stream bitmaps
Again - Wii U SD card IO is terrible, so load the whole file at
once instead.
2020-04-21 23:57:07 +01:00
Clownacy
abdd7fc771 Add missing case for Wii U screen size
My Wii U always uses this value
2020-04-21 23:53:37 +01:00