Commit graph

2137 commits

Author SHA1 Message Date
Clownacy
0aba8888bb Wii U: Update colour in PrepareToDrawGlyphs 2020-04-21 12:58:31 +01:00
Clownacy
90f729158a Wii U: Store glyph texture in R8 format 2020-04-21 12:56:14 +01:00
Clownacy
69e0d868a0 Added font rendering to Wii U 2020-04-21 12:45:37 +01:00
Clownacy
00792413f8 Cleanup 2020-04-21 03:34:59 +01:00
Clownacy
e687c502a9 Cleanup 2020-04-21 03:22:22 +01:00
Clownacy
4d2a227068 Add render-to-texture support to Wii U renderer 2020-04-21 03:16:37 +01:00
Clownacy
8377f011cf Add in-progress hardware Wii U renderer
*Very* incomplete. Right now, it can render textures and perform
colour-fills to the screen.
2020-04-21 00:59:12 +01:00
Clownacy
e40de4992f Wii U cleanup 2020-04-20 14:54:31 +01:00
Clownacy
24d8f318e5 Merge branch 'accurate' into portable 2020-04-20 13:08:51 +01:00
Clownacy
46ca9b4d4a aesthetic 2020-04-20 13:08:12 +01:00
Clownacy
5d309db3ad Ignore ConfigCSE2E.dat 2020-04-20 13:07:37 +01:00
Clownacy
dec481a8e0 And another 2020-04-20 13:05:21 +01:00
Clownacy
57c5879650 Add more files to .gitignore 2020-04-20 13:04:17 +01:00
Clownacy
7450952a24 Add a list of supported platforms 2020-04-20 12:58:05 +01:00
Clownacy
cb46112657 Note default options 2020-04-20 12:54:19 +01:00
Clownacy
e6f3a82634 Clean-up readme option descriptions 2020-04-20 12:53:30 +01:00
Clownacy
bcfcf2c017 Rename 'BUILD_DOCONFIG' to just 'DOCONFIG' 2020-04-20 12:50:53 +01:00
Clownacy
2978db4d30 More cleanup 2020-04-20 12:48:42 +01:00
Clownacy
2f7db28da8 Wii U backend cleanup 2020-04-20 12:46:36 +01:00
Clownacy
5ca12ae22a Tweak Wii U coordinates 2020-04-20 12:42:50 +01:00
Clownacy
65b470ba20 It seems we don't need the colour-buffer (Wii U) 2020-04-20 12:39:55 +01:00
Clownacy
e470b91501 Cleanup and documentation 2020-04-20 02:46:46 +01:00
Clownacy
a112001886 Add complete shader sources 2020-04-20 02:15:55 +01:00
Clownacy
f2ffab48e1 Make Wii U controls more Nintendo-y 2020-04-20 01:35:08 +01:00
Clownacy
b89207b586 Merge branch 'accurate' into portable 2020-04-20 01:17:19 +01:00
Clownacy
c52812664e Fix bosses flicking across the screen when hurt
The Wii U's wacky PowerPC architecture highlighted a cool
platform-dependency: the boss rendering code only properly works on
platforms where `char` is signed by default.

Granted, it's possible Pixel explicitly marked this variable as
signed. Who knows. Either way, CSE2 didn't, and now that's been
fixed.
2020-04-19 22:40:03 +01:00
Clownacy
76dc1f81ec Fix Wii U Pro Controller input oddities 2020-04-19 21:27:32 +01:00
Clownacy
e667844801 Fix Pro Controller support 2020-04-19 21:19:02 +01:00
Clownacy
ba65ebf3fe Add Wii U Pro Controller support
The controller doesn't seem to want to connect yet though.
2020-04-19 21:00:19 +01:00
Clownacy
91bda89661 Restore proper 4:3 aspect ratio 2020-04-19 20:48:48 +01:00
Clownacy
5c575a0be9 Fix crash
Dammit my build process wasn't actually updating the binary I was
testing.
2020-04-19 20:15:20 +01:00
Clownacy
cfe523589d Add the blooming Wii U shader
Geez, this has been missing for ages.
2020-04-19 19:46:01 +01:00
Clownacy
93cf72e269 Add sanity checks to the Wii U hardware mixer
The other audio backends have these - probably for a good reason,
too.
2020-04-19 19:45:09 +01:00
Clownacy
4f80ff4139 Correct a typo 2020-04-19 19:44:06 +01:00
Clownacy
04faccb259 More cleanup 2020-04-19 19:43:57 +01:00
Clownacy
01a444ff8c More cleanup 2020-04-19 19:37:16 +01:00
Clownacy
5704035b9b Cleanup 2020-04-19 19:31:21 +01:00
Clownacy
9e3b158973 Add stereo support to Wii U software mixer 2020-04-19 19:27:02 +01:00
Clownacy
288c2dccee Wii U - Use a frame callback instead of a thread 2020-04-19 19:05:25 +01:00
Clownacy
07ee648181 Add Wii U software audio mixer
The hardware-accelerated one is suffering from a bizarre-ass bug that
I can't fix for the life of me.
2020-04-19 19:03:00 +01:00
Clownacy
745783a025 Wii U samples are signed 2020-04-19 13:51:45 +01:00
Clownacy
7d95fb8ea3 Wii U audio backend cleanup
Still bugging-out though
2020-04-19 13:46:10 +01:00
Clownacy
9e9b86c6e9 Add new Wii U window backend
This uses basic hardware-acceleration to bounce the software-rendered
frame to both the gamepad *and* the TV!

The previous method only supported the gamepad, suffered from V-tear,
and used slightly more CPU (my test with the end of Egg Corridor ran
at 52FPS, while this new method runs at 55FPS).
2020-04-19 13:34:45 +01:00
Clownacy
0b6e90abd0 Work-around some global namespace polution
With GLFW, you're supposed to `#include` your extension loader before
it, but this header made that extremely awkward. The previous "fix"
would cause build errors on Windows when compiling the software
renderer.
2020-04-19 01:37:49 +01:00
Clownacy
320e891a70 Fix keyboard input on Windows 2020-04-19 01:33:52 +01:00
Clownacy
11b04fe93b Update other audio backends 2020-04-18 01:38:25 +01:00
Clownacy
011cb94f73 More guards 2020-04-18 01:23:25 +01:00
Clownacy
873566a19e Attempt 100 of trying to fix Wii U audio hangs
There's a new bug I've noticed: sometimes, an instrument will just
'disappear', and refuse to ever play again.

This stuff is practically impossible to debug, so I'm just throwing
things at the wall. This time, I'm going to make more use of the
`AXVoiceBegin` and `AXVoiceEnd` functions. I have no idea what
they're meant to do: code I found online uses it inconstently, and
Decaf doesn't have it implemented at all!

Hopefully, all of my problems have just been race conditions caused
by not using these guard functions (assuming that's what they are).
2020-04-18 01:16:36 +01:00
Clownacy
bbfcc48e2a Update Wii U instructions 2020-04-18 01:01:53 +01:00
Clownacy
f78f6b7105 Split Organya callback data
The function pointer only ever needs to be set once, unlike the
timer. This should avoid any scary race-conditions.
2020-04-18 00:54:24 +01:00