This MR adds logic for building an installable .cia for the moonlight streaming client.
Building is performed though a 3DS specific makefile, not the existing cmake system.
The config file location is hard-coded to 3ds/moonlight/moonlight.conf on the SD card
The client uses a very basic CLI, which exits after any command has been run.
Currently, the 3DS build uses the SDL2 drivers for video, audio and controls. Fast hardware decoding is not working, so 30fps will not work properly. I've been using 10fps for testing.
Audio also doesn't work yet. Only white noise is produced.
Button controls work, but the thumbstick seems to only move in 2 directions.
Changelog
Adds a dockerfile for building a container with 3DS build dependencies installed
Adds submodules and build/install scripts for the following 3DS library dependencies:
FFmpeg_for_3DS
SDL
libexpat
openssl
libuuid
Adds vscode task for running the 3DS build container
Adds resources for building a 3DS .cia package
Adds banner, sound, icon, and RSF file for moonlight
RSF file is currently given more permissions than it requires. This should be reduced to only necessary services.
Adds #if flags to block drivers that aren't compatible with the 3DS
Modifies the example config file to match the currently working 3DS setup
Adds 3DS definition for getline
Some files were given unique names to prevent conflicts during compilation/linking
Makes non-hardware accelerated renderers an option for SDL video
Overview
This MR adds logic for building an installable .cia for the moonlight streaming client. Building is performed though a 3DS specific makefile, not the existing cmake system. The config file location is hard-coded to
3ds/moonlight/moonlight.conf
on the SD card The client uses a very basic CLI, which exits after any command has been run. Currently, the 3DS build uses the SDL2 drivers for video, audio and controls. Fast hardware decoding is not working, so 30fps will not work properly. I've been using 10fps for testing. Audio also doesn't work yet. Only white noise is produced. Button controls work, but the thumbstick seems to only move in 2 directions.Changelog