55 Commits

Author SHA1 Message Date
aliaspider
a7632620da (WIIU) add a sprite shader. 2018-01-04 17:38:04 +01:00
aliaspider
f9e06725fa (WIIU) rework makefile. 2017-12-31 14:07:14 +01:00
gblues
65c177a0ee Move HID driver into wiiu/ code
== DETAILS

RetroArch's general HID drivers are intended as a full-on substitute for
other input drivers such as XInput, DInput, SDL, etc. The Wii U port is,
to my knowledge, the first case of heterogenous input drivers working
concurrently.

As such, I've moved things around:

- The HID driver source is moved into the wiiu/input/ directory alongside
  the joypad subdrivers.
- We no longer use the input_hid_init_first() method to instantiate; instead
  we just init the wiiu HID driver directly.
- The HID pad driver and HID subsystem driver enjoy a tighter coupling,
  mainly having to do with the initialization of the joypad connections
  list, because there's no way to inform the HID driver's init() method
  how many slots to allocate.

== TESTING
Will test in a moment, but at  least it compiles cleanly. ;)
2017-12-30 04:43:38 +01:00
gblues
52c754cfa8 Split wiiu_gamepad into three sub-drivers
== DETAILS
Well, after a lot of code analysis, this seems like the
best way to handle things on the Wii U without also completely
re-architecting the I/O handling in RetroArch.

How it works:

- the top-level wiiu_joypad driver is now nothing more than a
  delegator.
- the wiiu-specific drivers live in `wiiu/input/`
- wpad_driver.c handles the WiiU gamepad
- kpad_driver.c handles the wiimotes
- hidpad_driver.c will handle HID devices like the GC adapter, DS3/DS4, etc.

  (I say "will" because this isn't implemented yet)

== TESTING
Haven't actually tried the build to see if it works, but it does
compile.
2017-12-30 04:43:18 +01:00
gblues
192f5875b9 Simplify, add logging, revert some of the changes
== DETAILS
The old code was crashing; I did a minimalized branch and the crash
went away, so I'm bringing that over here. Meaning I'll have to
redo some of the other work I'd put in, but oh well.

(now watch it start crashing again)

== TESTING
Can confirm it builds. Wii U is busy ATM so I can't test.
2017-12-30 04:40:23 +01:00
Nathan Strong
e80d99dbae Delete controller_patcher; start on proper HID driver
== DETAILS

We discovered that the controller_patcher code was causing
the WiiU to intermittently crash when switching ROMs.

Changes:

- Completely extricates the controller_patcher code
- Create a skeleton wiiu_hid driver
- Wire up the build system to build/link it successfully

== TESTING

Has not been tested. Probably doesn't crash, since the
skeleton driver is just a copy of the null driver.
2017-12-30 04:38:57 +01:00
twinaphex
4ecb4d5dfb (Wiiu) Add overlays courtesy of r-type, thanks 2017-12-27 08:38:03 +01:00
Ash
46bffb8b12
[WiiU] Add -D__WUT__; fixes integrated libiosuhax
There was some type confusion around IOS_Open with libiosuhax, leading
to it treating the first instruction of that function as an address to
point to. Adding -D__WUT__ lets it know that we are using proper symbols
and not function pointers.
2017-12-20 13:47:30 +11:00
twinaphex
7c73930a87 Add libiosuhax/libfat 2017-12-19 22:12:58 +01:00
twinaphex
951918a245 Reduce size of Makefiles 2017-12-07 05:54:54 +01:00
Ash
bf3e256a43
[WiiU] Input: Make controller_patcher a compile-time option
As discussed in libretro#5357; controller_patcher is now optional. It's
off by default; though this could be changed with a simple makefile
tweak (ENABLE_CONTROLLER_PATCHER ?= 1, perhaps?)

To re-enable controller_patcher; append ENABLE_CONTROLLER_PATCHER=1 to
your usual make command.

controller_patcher was the only user of c++ constructors in the Wii U
port, so you'll need 26a006c in your tree otherwise you will have a
blackscreen on startup.
2017-12-01 18:29:21 +11:00
radius
b32a69889e console buildfix 2017-11-19 16:21:26 -05:00
radius
8f14a92c54 console build fixes 2017-11-19 15:50:01 -05:00
twinaphex
360a3686a0 Update include dirs 2017-11-06 05:23:53 +01:00
Ash
e41b8db3e2
[WiiU] Add quiet support to makefile
Inspired by Makefile.win; this commit will hide compiler commands from
being printed to the shell. Old behaviour can be restored by running
"make -f Makefile.wiiu V=1". Should make it harder to miss warnings now.
2017-11-04 16:19:49 +11:00
Brad Parker
e01fdcb07d wiiu: enable cheevos 2017-10-03 20:35:18 -04:00
radius
afa7d7d8e5 readd this 2017-09-27 21:21:08 -05:00
Andrés
b253ea7b08 Move HAVE_KEYMAPPER 2017-09-27 18:03:34 -05:00
Andrés
fcc5adda85 Add keymapper to wiiu builds 2017-09-21 23:44:35 -05:00
Ash
2492f3d6b3 Add missing_libc_functions.c (for DOSBox) 2017-06-15 15:21:38 +10:00
twinaphex
69ab4b6137 Remove HAVE_RLAUNCH 2017-06-01 01:24:46 +02:00
aliaspider
f589c50043 (WiiU) misc. 2017-05-28 12:42:19 +01:00
aliaspider
934f7c58ba (WiiU) enable networking. 2017-05-23 10:24:23 +01:00
aliaspider
634de19dc9 (WiiU) enable libretrodb. 2017-05-22 06:07:27 +01:00
aliaspider
db490a69a3 (WiiU) add a menu display driver. enable MATERIALUI and XMB. 2017-05-22 01:45:40 +01:00
aliaspider
be3240a1a1 (WiiU) enable HAVE_LANGEXTRA. 2017-05-21 04:36:55 +01:00
aliaspider
b17e76d8b7 (WiiU) add freetype and stb font support.
freetype disabled by default due to requiring an external library.
2017-05-21 04:22:32 +01:00
aliaspider
8dee95651f (WiiU) add a font driver. 2017-05-21 03:05:41 +01:00
Maschell
b34abd4c17 [Wii U] Added a missing target to the makefile 2017-05-20 19:25:33 +02:00
Maschell
e695d4e8ad [WiiU] Initial controller patcher support (HID via USB and network)
- Reading config from sd cards currently broken
- Not implemeted as a driver, currently all devices will be mapped to the WiiU Gamepad driver
2017-05-08 12:24:06 +02:00
twinaphex
69abe6dbb9 Move deps/zlib to deps/libz 2017-03-25 10:05:33 +01:00
aliaspider
8f88d8fb4d (WiiU) implement the missing requirement for core loading: exec,
exitspawn, set_fork and salamander.
2017-01-25 19:52:31 +01:00
aliaspider
021b510452 (WiiU) refactors/cleanups. 2017-01-23 16:14:05 +01:00
aliaspider
1601febabc (WiiU) buildfix for devkitPPC r29.
- add wut headers and elf2rpl to source tree.
2017-01-23 16:01:53 +01:00
twinaphex
14a800f1f5 Update Makefiles - audio_filters have been moved to libretro-common 2017-01-09 12:37:01 +01:00
FIX94
c0b023a1cf (WiiU) added basic libiosuhax support 2016-12-17 18:42:04 +01:00
twinaphex
9375efe24e Add HAVE_CC_RESAMPLER defines 2016-12-12 12:44:29 +01:00
aliaspider
7a72cef9de (WiiU) choose normal quality for the sinc resampler. 2016-11-24 04:45:22 +01:00
aliaspider
675b588d3b (WiiU) makefile: add dependency tracking. 2016-11-24 03:26:34 +01:00
aliaspider
15c535d06f (WiiU) ignore elf2rpl errors. 2016-11-23 05:27:52 +01:00
aliaspider
ea248559e0 (WiiU) rpx update:
- c++ static constructors/destructors fix for rpx builds.
- building both rpx and hbl elf formats doesn't require a clean step
inbetween anymore, both can be now built in a single make call.
2016-11-23 03:21:01 +01:00
aliaspider
eedbea4527 (WiiU) build RPX imports from imports.h. 2016-11-23 00:06:35 +01:00
aliaspider
3acdf3d1cb (WiiU) import only the needed symbols. 2016-11-22 22:48:44 +01:00
aliaspider
3cc1ddbdd1 (WiiU) simplify memory.c 2016-11-16 18:25:23 +01:00
aliaspider
418787e6ca (WiiU) can't use start files with rpx buidls yet (this also means, no C+
+ static constructors support).
2016-11-16 17:44:54 +01:00
aliaspider
286a1887a9 (WiiU) change linker script, add calls to _init() and _fini().
fixes cores relying on C++ static constructors/destructors. (only for
elf builds)
2016-11-15 19:37:30 +01:00
aliaspider
dbd8a87ebb (WiiU) can compile as rpx. (doesn't exit properly) 2016-11-09 14:26:38 +01:00
aliaspider
b8330e2a73 (WIIU) configure logger ip in makefile. 2016-11-08 09:25:20 +01:00
aliaspider
86763e1e26 (WiiU) implement a sound driver. 2016-11-06 19:03:41 +01:00
aliaspider
d3b3c18a6f (WIIU) GX2 rendering. 2016-11-05 15:05:46 +01:00