Clownacy
ffcd989cea
Remove unnecessary whitespace
2020-10-13 13:21:30 +01:00
Clownacy
b6fe4f175c
Make SDL2 controller backend safer
...
There were some edgecases that would causes crashes
2020-10-12 21:46:47 +01:00
Clownacy
a77cc0a559
Optimise the 3DS port (now runs okay on Old3DSs)
...
This commit customises the software renderer specifically for the
3DS, taking into account its rotated framebuffer and BGR format.
With this, the game appears to run full-speed on Old3DSs. Of course,
the level transition effect still makes the console chug, but that
thing was always a bit of a bottleneck.
2020-10-12 17:32:31 +01:00
Clownacy
8513a1d7d8
Correct 3DS Backend_PrintInfo writing to stderr
2020-10-12 10:37:19 +01:00
Clownacy
b5292f0ce7
Update remaining platform backends
2020-10-11 21:28:04 +01:00
Clownacy
f9993b264c
Fix dumb typo
2020-10-11 21:18:52 +01:00
Clownacy
5b4778fb06
Fix the 3DS crash when closing
...
For whatever reason, the 3DS *really* doesn't like it when I do all
the audio mixing in the callback function. Instead, it seems I have
to use a dedicated thread.
2020-10-11 21:16:47 +01:00
Clownacy
6df224400c
Okay never mind this doesn't avoid it at all
...
Seriously wtf why is it crashing
2020-10-11 16:01:27 +01:00
Clownacy
8d296f0385
Allow backend to specify data folder
...
On the 3DS, I want the data files to go in the read-only ROMFS, while
save data goes on the SD card. This is impossible with the current
system, so I'm changing it.
The other backends will need updating to support this.
2020-10-11 15:58:48 +01:00
Clownacy
f3ff030869
Avoid 3DS crash when closing the game
2020-10-11 15:58:27 +01:00
Clownacy
2a73c12a5f
3DS cleanup
2020-10-11 15:17:00 +01:00
Clownacy
c398ec7c25
Cleanup and enable New3DS speedup
2020-10-11 14:42:27 +01:00
Clownacy
80725016f7
Add mutexes to 3DS audio backend
...
Doesn't seem to fix the annoying crashes though...
2020-10-11 14:42:04 +01:00
Clownacy
75a31005d1
Add basic 3DS audio support
...
It's using the software mixer for now. I might be able to make it
hardware-accelerated in the future.
2020-10-11 14:27:39 +01:00
Clownacy
7013c28e26
Remove an unnecessary newline
2020-10-11 14:27:10 +01:00
Clownacy
5597245865
Optimise 3DS rendering a little
...
Double-buffering is enabled by default, and I don't need to flush
every single buffer.
2020-10-11 14:26:15 +01:00
Clownacy
10c4831160
Better 3DS debug logging and fix console output
...
Was using the wrong screen
2020-10-11 14:25:48 +01:00
Clownacy
f5b3b2e0d0
Add a basic 3DS port
...
Was a lot easier than I expected. The software renderer is such a
godsend for quick-and-dirty ports.
Oddly enough, even on an old3DS, this actually almost runs at full
speed (hits around 40FPS in Mimiga Village).
There's a lot of work left to do before this is actually useable:
* There's no audio
* You can't save
* A proper hardware-accelerated renderer is needed
2020-10-11 00:09:22 +01:00
Clownacy
49027c4ab7
Minor comment cleanup
2020-10-10 20:40:57 +01:00
Clownacy
12b7990cf9
Wii U: Fix usage of wrong shader
2020-10-04 21:00:38 +01:00
Clownacy
8eb4e29b10
Remove needless parameter
2020-10-04 13:56:43 +01:00
Clownacy
ce6e4e2a32
Add Wii U smooth framebuffer upscaling
2020-10-04 13:51:16 +01:00
Clownacy
30ec081d7b
Refactor Wii U renderer in preparation
...
This is in preparation for an upscaled-framebuffer system like the
OpenGL backend has.
I wonder if it's possible to just use a shader instead, and avoid the
need for an upscaled framebuffer to make the linear filtering not
look terrible.
2020-10-04 13:00:22 +01:00
Clownacy
385b7531ef
Remove leftover files I was using for testing
2020-10-04 00:47:55 +01:00
Clownacy
914034c406
Remove unused variable
2020-10-04 00:39:07 +01:00
Clownacy
771f83d06a
Fix the 'Studio Pixel Presents' text on Wii U
...
The vertex buffer was being deleted and recreated *after* it was
binded.
2020-10-04 00:37:49 +01:00
Clownacy
4b2a14167e
Wii U shader fixes
...
I don't know what bugs, if any, these fix
2020-10-03 22:29:13 +01:00
Clownacy
9458d2aea7
Avoid some duplicate code in Wii U flush function
2020-10-03 21:01:36 +01:00
Clownacy
6803438358
Fix Wii U using an uninitialised vertex buffer
2020-10-03 18:35:40 +01:00
Clownacy
c7cd67c410
Remove another useless variable
2020-10-03 16:11:58 +01:00
Clownacy
858fd0beb9
Fix Backend_EnableDragAndDrop not matching header
2020-10-03 16:10:34 +01:00
Clownacy
076a477239
Remove useless variable
2020-10-03 16:09:22 +01:00
Clownacy
9a5ac1606d
Correct a typo
2020-09-30 21:18:59 +01:00
Clownacy
ad5785611b
Change a float literal to double
2020-09-27 19:31:23 +01:00
Clownacy
35bf490f0d
Fix GLFW3 build error
...
Great API...
2020-09-27 17:51:16 +01:00
Clownacy
baf88b0d4b
Convert cursors to RGBA
...
...instead of colour-keyed RGB. Less goofing-around for the user.
2020-09-27 17:16:58 +01:00
Clownacy
b7e25cd9be
Wii U renderer cleanup
2020-09-27 17:16:58 +01:00
Clownacy
dad9dd6421
Correct oversized OpenGL upscaled framebuffer
2020-09-26 23:19:17 +01:00
Clownacy
530dab7bab
Update Wii U shader files
2020-09-23 19:56:50 +01:00
Clownacy
87da82a500
Wii U: Offload vertex transformation to GPU
2020-09-23 19:55:45 +01:00
Clownacy
663870ae76
Wii U: Offload tex-coord transformation to GPU
2020-09-23 19:05:01 +01:00
Clownacy
6b8ffe2886
More-efficient Wii U glyph fragment shader
2020-09-23 18:03:36 +01:00
Clownacy
45f2032c9a
Modernise how Wii U shaders are included
...
Uses newer bin2h. I would be nice if this process were automated...
2020-09-23 17:53:49 +01:00
Clownacy
006091305e
Fix an inconsistency
2020-09-23 17:08:07 +01:00
Clownacy
0103f2696b
Better way to handle Wii U screen viewports
2020-09-23 17:07:26 +01:00
Clownacy
42f12c18d9
Wii U integer-only viewport calculation
2020-09-23 16:57:36 +01:00
Clownacy
eac417cdc1
I guess I figured out what the GX2 context is for
2020-09-23 16:52:42 +01:00
Clownacy
1eb1e522c8
Clarify an odd design choice
2020-09-19 21:55:40 +01:00
Clownacy
a8bcf5a6fb
Orphan vertex buffers for improved performance
...
Bump my Raspberry Pi 3B+ from 100FPS to 120FPS.
2020-09-19 21:50:20 +01:00
Clownacy
9a990d6fa7
Correct some code indentation
2020-09-19 15:07:44 +01:00