Eiim / Chokistream

A from-scratch re-implementation of Snickerstream
GNU General Public License v2.0
30 stars 1 forks source link

Add background mode + improve headless mode #28

Open Eiim opened 10 months ago

Eiim commented 10 months ago

Change "headless mode" to "autoconnect mode" and support launching into GUI from this mode. This effectively provides a way to launch with preconfigured parameters from CLI. Since we don't have JavaFX native libs anymore, there's not as much need to distinguish between headless and GUI.

Add a "background mode", which is similar to autoconnect mode but repeatedly attempts to connect to the 3DS if it fails and closes back to background mode when we close the connection. Note that we might have to think more carefully about closing everything cleanly in this case.

trevorwatkins1129 commented 6 months ago

What is the current progress on this? Was thinking it would also be useful to have an integrated InputRedirection server.

Eiim commented 6 months ago

I haven't been able to work on Chokistream lately, but hopefully once we get into summer my schedule will clear up more. When I get back to Chokistream, I expect this to be the first thing I work on!

I also would like to do input redirection. Now that #24 is done, it's on the table. I don't have a timeline for it though.

trevorwatkins1129 commented 6 months ago

I'm going to try to implement InputRedir in java and merge it here.

trevorwatkins1129 commented 6 months ago

In order to get InputRedir working in Java, it will require a full rewrite of InputRedirection-Qt. However, this has not been updates in 7 years. Maybe we can integrate a better InputRedir in Churinomod?

Eiim commented 6 months ago

The core of what we need is just understanding the protocols to communicate with Rosalina. Since InputRedirectionQt is permissively licensed, and pretty simple, it's probably easiest to just read that code and re-implement it in Java. But I don't know if it's outdated in some way. I would be interested to know what other modern NTR clients that support input redirection use, whether it's InputRedirectionQt or something custom.

Eiim commented 6 months ago

Further discussion about input redirection should take place in #35. I've put out some planning stuff there that's normally behind closed doors, but since you're interested in contributing, I thought it should be public here.