Commit Graph

946 Commits

Author SHA1 Message Date
natinusala
49082a8c80 libnx: enable video recording 2018-11-01 01:55:05 +01:00
p-sam
4c5c2170b6 libnx: call retroarch_main_quit on exit 2018-10-27 16:18:56 +00:00
natinusala
eac0d603f4 libnx: add network interfaces info 2018-10-12 17:37:03 +02:00
Nathan Strong
c5f9fc0a34 WiiU: fix network information
== DETAILS

For local netplay, it's useful to have your IP address easily
available. This commit makes the Information > Network Information
menu display the Wii U's IP address.

Change summary:
- Fix the logging init to be reentrant to avoid socket consumption
- Add implementation of POSIX `getifaddrs()` and `freeifaddrs()`
  to `missing_libc_functions.c`
- Remove compiler directives protecting the code paths that call
  `getifaddrs()` from being used in Wii U builds

== TESTING

Have tested locally, successfully get IP address information in
the Information > Network Information.

I think this may also fix NAT traversal. Will need to be tested.
2018-10-11 15:37:15 -07:00
twinaphex
247b21b151 (platform_switch.c) Set retro_rating level to 11 - some minor
cleanups
2018-10-08 04:20:07 +02:00
twinaphex
64b2e6ea5f Update platform_unix.c 2018-10-02 20:08:23 +02:00
lifajucejo
c39bc4ecab [LIBNX] Synchronize nxlink logging
- Logs were interleaved and caused instability on certain setups
2018-09-30 19:09:20 -04:00
M4xw
7a841eae24 [SWITCH] Change platform dir layout to match unix, fixes autodetect 2018-09-29 19:36:14 +02:00
lifajucejo
a1aec9a870 Add battery percentage (psm) to switch 2018-09-27 23:52:08 -04:00
M4xw
be2cba3200 [LIBNX] Mesa EGL backend has been fixed, remove workaround. 2018-09-27 20:02:30 +02:00
M4xw
cf097d7f42 [LIBNX] Implement OpenGL 2018-09-27 01:23:24 +02:00
misson20000
8ed254f0c0 small platform_switch indentation fixups 2018-09-15 03:27:29 -07:00
misson20000
7072bbb829 [NSW] SDK compat fixups 2018-09-15 03:27:29 -07:00
misson20000
fa76a3cb60 CRLF -> LF 2018-09-15 03:27:05 -07:00
M4xw
0ff014c1ac [LIBNX] Add Core extension 2018-09-15 02:29:40 +02:00
M4xw
424d169cd9 [LIBNX] Fix Audio and Platform for updated libnx 2018-09-15 01:29:42 +02:00
M4xw
64edf5f879 [LIBNX] Fixups and bare minimum to function 2018-09-14 20:38:42 +02:00
Stuart Carnie
1264e9c533 fix(Metal): Use ifdef syntax; add correct default for Metal build 2018-09-01 11:58:37 -07:00
neville
bd43682341 Use dynamic lookup code path 2018-08-31 19:37:40 +02:00
twinaphex
a58511ec00 Revert "Compatibility fixes for OSX PPC"
This reverts commit d7899c51aa.
2018-08-31 19:20:10 +02:00
twinaphex
1265d7546c Revert "Start using raw constants for OSX version detection"
This reverts commit ab34a70873.
2018-08-31 19:19:42 +02:00
twinaphex
ab34a70873 Start using raw constants for OSX version detection 2018-08-30 16:35:44 +02:00
neville
d7899c51aa Compatibility fixes for OSX PPC 2018-08-30 16:18:51 +02:00
Joel16
b606572bce Set max bus & gpu clock rates 2018-08-02 12:19:16 -05:00
kurumushi
bbe1dcd48f
Add imc0: mount for ps vita
This allows using the internal storage of the ps vita 2000 model when it's mounted on imc0: instead of ux0:
2018-07-23 23:11:54 +09:00
Twinaphex
a3ae537c02
Merge pull request #6862 from gblues/master
WIIU: cleanups to wiiu bootstrap code
2018-06-30 14:31:22 +02:00
Twinaphex
2bdffff435 Silence more warnings 2018-06-21 07:34:27 +02:00
Stuart Carnie
411bcf8bdd feat(apple): Metal support for macOS
* includes rgui
* shader support

This is a work-in-progress and there are some bugs and visual artifacts
still to be fixed.
2018-06-20 21:33:45 -07:00
Brad Parker
aa083d1e4c android: add configurable setting for Sustained Performance Mode 2018-06-19 02:50:33 -04:00
Brad Parker
7176bb19ad support powerstate/battery level in Android 2018-06-16 19:15:16 -04:00
gblues
8b87a53366 Replace hokey "hooks" struct with weak symbol annotations
- Did a test build to ensure RA built
- Copied over to my FTPservU sources and ensured no compile issues there

Looks solid. A lot cleaner, too.

@aliaspider
2018-06-07 18:41:16 -07:00
FIX94
6ede99b47b
(GC) ACTUALLY fix up build 2018-06-07 21:04:34 +02:00
gblues
f22c337cfc WIIU: cleanup and build-out of wiiu bootstrap code
I used the code in `wiiu/` to bootstrap my own WiiU homebrew app; this
PR reflects some changes I needed to make, that might be useful upstream.

1. Clean up filesystem initialization

Filesystem driver initialization was lumped in with filesystem mounting;
and that was a problem in my project, because I needed to be able to remount
the SD card on the fly. So, now it's split up.

I've added a callback object named "hooks" that can be used by consuming
applications to handle filesystem mounting and unmounting. If these hooks are
not provided, then the existing default behavior occurs.

2. Expand socket handling

- add `SO_NONBLOCK` flag for non-blocking socket I/O
- add normal errno defines like `EWOULDBLOCK` `EAGAIN`.

3. Remove RetroArch dependencies

- the exception handler protects usage of version_git with
  `#ifdef HAVE_GIT_VERSION` but not the include, so I added that.

  It also technically depends on version.h, but I'm not touching that.
  It's easy enough to implement and I needed the same functionality. I'm
  not sure what the best solution for that dependency is.

- missing_libc_functions.c included features/features_cpu.h which is
  a libretro include. This appears to be a stale include though, because
  everything compiles and works without it.

- an ifdef referencing the RA "WIIU" define, rather than the devkitpro
  "__wiiu__" define
2018-06-05 00:06:40 -07:00
twinaphex
ec718c6f71 Should only be used for Wii 2018-06-04 21:25:04 +02:00
FIX94
3f8235db28
revert commit 822e2fd
commit 822e2fd broke sd gecko mounting on gamecube, making the gamecube build unusable, reverting it makes it run fine again
2018-06-01 00:22:42 +02:00
meepingsnesroms
6c1e865d28 Make build system match core format 2018-05-19 09:59:47 -07:00
meepingsnesroms
5b2ec62a41 Add another error handler, fix variable name formatting 2018-05-18 17:39:11 -07:00
twinaphex
2bda59b8e4 (platform_unix.c) Get rid of some warnings 2018-05-18 05:17:13 +02:00
Twinaphex
bc0185c313
Merge pull request #6782 from meepingsnesroms/master
Make 3DS launch cores like a normal system
2018-05-17 01:34:48 +02:00
meepingsnesroms
ce0d8bb5e0 Remove quote parsing 2018-05-16 16:26:38 -07:00
meepingsnesroms
756db4f264 Fix broken path handling when launching a core with a file or with spaces 2018-05-15 11:46:13 -07:00
meepingsnesroms
052de6bcd2 3ds now has proper core launching 2018-05-15 10:30:34 -07:00
meepingsnesroms
1a6f572405 Fixes 2018-05-09 18:23:35 -07:00
meepingsnesroms
5f234f0dd1 Start using proper 3ds executable formats (doesnt work properly yet) 2018-05-09 15:55:48 -07:00
gblues
5b3dd70ac3 Use a different packet size
== DETAILS

We had some disagreement on what packet size to use.

The maximum packet size varies depending on the actual network
hardware in use; the typical Ethernet value is relatively safe,
but not 100% compatible.

RFC 791 does, however, define a minimum datagram size that all
IP hosts must be able to handle--and it's large enough for our
needs, since we're generally not writing more than maybe 100
bytes at a time anyway.

I also did a little bit of cleanup for readability.
2018-05-06 19:08:32 -07:00
gblues
23f0a85446 Implement UDP broadcast network logging on Wii U
== DETAILS

The broadcast address is a standard part of TCP/IP that is used to
send messages to everyone on the subnet. This patch updates the
logging code to do the following:

1. Derive the broadcast address from the Wii U's own IP address
   and subnet mask. These can all be obtained at runtime, which
   means we can...
2. Remove the PC_DEVELOPMENT_IP_ADDRESS define from Wii U's
   Makefile, because compiling in an IP is no longer needed.
3. Rewrite the net_listen script to listen for broadcast packets
   and print them out with timestamps.

Since it's using the broadcast address, the only requirement is
that the PC be on the same network subnet as the Wii U.

Because of the low overhead of UDP, I've made logging on by
default. This will make it a ton easier to get useful bug
reports from users.
2018-05-06 14:39:48 -07:00
gblues
58e298ab8d Fix Salamander build
- move non-salamander objects out of salamander scope
- move the missing libc functions to general scope
- fix salamander_main inline invocation

TESTING: Ran 'make -f Makefile.wiiu SALAMANDER=1' successfully
2018-05-06 10:01:20 -07:00
gblues
7448fd3157 More code re-organization
=== DETAILS
Since @aliaspider wants the `wiiu/` to be something of a mini-SDK, I've
reorganized the code I put in there:

- `wiiu/main.c` now only has the ELF/RPX entrypoints, and the code used
  by those entrypoints, with RA code removed (e.g. swapped retro_sleep()
  for usleep()). These entrypoints then call main() ...
- Moved `main()` and its support functions back into `frontend/drivers/platform_wiiu.c`
  I also renamed some of the support functions I wrote, and better
  organized them within the code.
- Moved `wiiu/input/` into the `input/` hierarchy:

  * The joypad drivers now live in `input/drivers_joypad/wiiu/`
  * The HID driver now lives in `input/drivers_hid/`
  * The Wii U specific headers now live in `input/include/wiiu`
  * I added `input/include` into the include search path to avoid
    using really ugly relative includes
2018-05-01 23:23:40 -07:00
gblues
04cefd27d1 Cleanup of Wii U launcher code
== DETAILS

The Wii U main entrypoints were embedded in the frontend driver,
which isn't a great place for them. Also, the `main()` method was
pretty long and monolithic. Now it's (much) less so.

Changes:

- Refactor out the main entrypoints into their own source files
  (`wiiu/main.c` and `wiiu/main.h`)
- Optimize includes in both files, so only the minimum needed to
  compile are included.
- The `main()` method is a lot easier to understand now. It's no longer
a confusing mess of ifdefs.
- There's a small amount of changes in the headers for future work, which
  is switching kpad_driver to be callback-driven. The only change here is
  to import the function that will be used, and define some data types.

Testing:
- Did local builds and confirmed build is successful
- Successfully loaded a core and switched among a few games
2018-04-30 21:56:06 -07:00
twinaphex
5a80a6046f (Android) Remove no longer needed machine/cpu-features.h 2018-04-28 19:29:30 +02:00