ppkantorski / ultrahand-overlay Goto Github PK
View Code? Open in Web Editor NEWThe fully craft-able Nintendo Switch overlay executor.
License: GNU General Public License v2.0
The fully craft-able Nintendo Switch overlay executor.
License: GNU General Public License v2.0
Hello,
First of all thanks for fixing the other issues I reported. One thing I've been encountering at random is that the menu gets stuck on a certain page, for example sometimes I can't get back to the main overlays menu from the packages menu. Since it doesn't happen on every occasion I'm not sure what the cause of this is, is this a known issue?
For reference I am using Atmosphere 1.5.4 and firmware 16.0.3.
Hello, how can I delete the version number of other ovl plug-ins of Tesla/Ultrahand overlay?
Hi first at all, thanks a lot for this great work.
I am trying to build the code on my computer using MSYS and DevKitPro, have lots of libraries installed and has been able to build other overlays but after cloning your repo, copying libtesla to ~/Ultrahand-Overlay/lib/libtesla
and running make
I get this errors:
Impeeza@Titan MINGW64 ~/Ultrahand-Overlay
# make
main.cpp
C:/msys64/home/Impeeza/Ultrahand-Overlay/source/main.cpp:101:58: error: 'touchPosition' has not been declared
101 | virtual bool handleInput(u64 keysDown, u64 keysHeld, touchPosition touchInput, JoystickPosition leftJoyStick, JoystickPosition rightJoyStick) override {
| ^~~~~~~~~~~~~
C:/msys64/home/Impeeza/Ultrahand-Overlay/source/main.cpp:101:84: error: 'JoystickPosition' has not been declared
101 | virtual bool handleInput(u64 keysDown, u64 keysHeld, touchPosition touchInput, JoystickPosition leftJoyStick, JoystickPosition rightJoyStick) override {
| ^~~~~~~~~~~~~~~~
C:/msys64/home/Impeeza/Ultrahand-Overlay/source/main.cpp:101:115: error: 'JoystickPosition' has not been declared
101 | virtual bool handleInput(u64 keysDown, u64 keysHeld, touchPosition touchInput, JoystickPosition leftJoyStick, JoystickPosition rightJoyStick) override {
|
^~~~~~~~~~~~~~~~
C:/msys64/home/Impeeza/Ultrahand-Overlay/source/main.cpp:101:18: error: 'virtual bool ConfigOverlay::handleInput(u64, u64, int, int, int)' marked 'override', but does not override
101 | virtual bool handleInput(u64 keysDown, u64 keysHeld, touchPosition touchInput, JoystickPosition leftJoyStick, JoystickPosition rightJoyStick) override {
| ^~~~~~~~~~~
C:/msys64/home/Impeeza/Ultrahand-Overlay/source/main.cpp: In lambda function:
C:/msys64/home/Impeeza/Ultrahand-Overlay/source/main.cpp:62:40: error: 'KEY_A' was not declared in this scope
62 | if (keys & KEY_A) {
| ^~~~~
C:/msys64/home/Impeeza/Ultrahand-Overlay/source/main.cpp: In member function 'virtual bool ConfigOverlay::handleInput(u64, u64, int, int, int)':
As far I know touchPosition and KEY_A are defined on libnx
and I have installed latest one on /opt/devkitpro/libnx/
but somehow is not linked on the code.
can you please help me?
again, thanks a lot.
My overlays menu is blank. I was previously using Tesla on firmware 16.0.0 with the ovlEdiZon, ReverseNX-RT-ovl, and sys-clk-overlay overlays. After upgrading to firmware 17.0.0, Tesla was crashing Atmosphere so I installed the Ultrahand-Overlay instead. After finding the overlays menu blank, I tried installing the Edizon-overlay and FPSLocker through the included "Easy Installer" package to no avail.
Launch-day switch
EmuMMC 17.0.0 firmware
Atmosphere 1.6.2
Hekate 6.1.0
nx-ovlloader 1.0.6
Ultrahand-Overlay 1.4.9
Hello,
Can you adjust move
to overwrite files? I've observed that move will not work if the file exists on the destination path. This would simplify some commands that would currently require a copy followed by a delete. Thanks!
I just saw that this project lifted big parts of it's reboot logic from hekate, atmosphere and studious pancake which are all GPLv2 licensed. The license you chose for this project isn't compatible with the GPL Software License. See https://www.gnu.org/licenses/license-list.en.html#ccbysa
Hello,
About issue #2
The second issue I described still exists, I noticed you updated your example to match the one I posted but that's exactly where the problem is.
To summarize again:
move
used like this recursively moves files inside the directory instead of the directory itself which breaks toggling. copy
+ del
worked fine for small files but it's too slow for toggling something large that a move could do instantly.
[*exeFS Patches]
filter_on /atmosphere/exefs_patches/.offload/
source_on /atmosphere/exefs_patches/*/
mkdir /atmosphere/exefs_patches/.offload/
move {source_on} /atmosphere/exefs_patches/.offload/
source_off /atmosphere/exefs_patches/.offload/*/
move {source_off} /atmosphere/exefs_patches/
I'd like to be able to use the package I added by touching the screen of the switch directly with my finger when opening the UltraHand menu.This will make Ultrahand more user-friendly and cool.
Weird issue.
When using "Easy Installer" with v1.3.1 and downloading a file from a json entry, I get the following.
[Thu Jan 1 00:37:09 1970] Executing command: download https://api.github.com/repos/averne/Fizeau/releases /config/ultrahand/downloads/zip-url.json
[Thu Jan 1 00:37:09 1970] Executing command: json_file /config/ultrahand/downloads/zip-url.json
[Thu Jan 1 00:37:09 1970] fileUrl: https://github.com/averne/Fizeau/releases/download/v2.4.1/Fizeau-2.4.1-680ba4f.zip
[Thu Jan 1 00:37:09 1970] Error downloading file: Out of memory
[Thu Jan 1 00:37:09 1970] Executing command: download https://github.com/averne/Fizeau/releases/download/v2.4.1/Fizeau-2.4.1-680ba4f.zip /config/ultrahand/downloads/Fizeau-2.4.1-680ba4f.zip
[Thu Jan 1 00:37:09 1970] Error opening zip file: sdmc:/config/ultrahand/downloads/Fizeau-2.4.1-680ba4f.zip
However when just running download on a regular command it has no issues.
[Thu Jan 1 00:56:32 1970] Executing command: download https://github.com/averne/Fizeau/releases/download/v2.4.1/Fizeau-2.4.1-680ba4f.zip /config/ultrahand/downloads/Fizeau-2.4.1-680ba4f.zip1
[Thu Jan 1 00:56:32 1970] fileUrl: https://github.com/averne/Fizeau/releases/download/v2.4.1/Fizeau-2.4.1-680ba4f.zip
[Thu Jan 1 00:56:33 1970] Executing command: download https://github.com/averne/Fizeau/releases/download/v2.4.1/Fizeau-2.4.1-680ba4f.zip /config/ultrahand/downloads/Fizeau-2.4.1-680ba4f.zip2
[Thu Jan 1 00:56:33 1970] fileUrl: https://github.com/averne/Fizeau/releases/download/v2.4.1/Fizeau-2.4.1-680ba4f.zip
[Thu Jan 1 00:56:35 1970] Executing command: download https://github.com/averne/Fizeau/releases/download/v2.4.1/Fizeau-2.4.1-680ba4f.zip /config/ultrahand/downloads/Fizeau-2.4.1-680ba4f.zip3
[Thu Jan 1 00:56:35 1970] fileUrl: https://github.com/averne/Fizeau/releases/download/v2.4.1/Fizeau-2.4.1-680ba4f.zip
[Thu Jan 1 00:56:37 1970] Executing command: download https://github.com/averne/Fizeau/releases/download/v2.4.1/Fizeau-2.4.1-680ba4f.zip /config/ultrahand/downloads/Fizeau-2.4.1-680ba4f.zip4
Not sure why this is the case right now. Needs to be reviewed a bit more.
When I power on my switch and open Ultrahand menu, he works smooth, but in some minutes he starts lagging.
I tried remove some sysmodules and overlays but not make any difference.
When I power on my switch:
After few minutes:
Note to self for v1.3.4:
Need to fix selectedFooterDict
implementation for subSubMenu. Doesn't affect functionality, but it does affect the loading of the footers selection within the SelectionOverlay after entering a grouped command.
I'll get around to addressing this issue later today.
This currently makes some json_file
function calls not function properly. Still examining the issue, it is currently affecting some entries in "Easy Installer". Will update again when this issue has been patched.
I'll look into this, it should be easy to fix. But right now the immediate star-ing on a fresh menu spawn of an overlay will occasionally swap pages into Packages from Overlays. Most might not notice it, but since I started to notice i'm raising the issue while I resolve things.
Config overlay implementation needs to be fixed. Most people probably don't use this, but it is still very useful to see what a package contains (clicking X on a command). Invoking the config overlay currently leads to a blank screen. Will review more soon.
When changing the sequence of buttons to enter the Tesla menu I receive an error like this cracking
would like the ability to put a stock button in commands with shut down and reboot. currently i use studious just for the stock button so would be nice for of it all to be together
Hi !!!
Where i need to put the lang file ?
Hello there, on latest libs and DevKitPro you get the next errors:
Impeeza@Titan MINGW64 ~/Ultrahand-Overlay
# make all
main.cpp
In file included from C:/msys64/home/Impeeza/Ultrahand-Overlay/source/main.cpp:31:
C:/msys64/home/Impeeza/Ultrahand-Overlay/source/utils.hpp: In function 'void interpretAndExecuteCommand(std::vector<std::vector<std::__cxx11::basic_string<char> > >)':
C:/msys64/home/Impeeza/Ultrahand-Overlay/source/utils.hpp:359:37: **_error: 'stringToNumber' was not declared in this scope_**
359 | int listIndex = stringToNumber(arg.substr(startPos, endPos - startPos + 2));
| ^~~~~~~~~~~~~~
In file included from C:/msys64/home/Impeeza/Ultrahand-Overlay/lib/libtesla/include/tesla.hpp:68,
from C:/msys64/home/Impeeza/Ultrahand-Overlay/source/main.cpp:30:
C:/msys64/home/Impeeza/Ultrahand-Overlay/source/ini_funcs.hpp: At global scope:
C:/msys64/home/Impeeza/Ultrahand-Overlay/source/ini_funcs.hpp:166:66: warning: 'std::map<std::__cxx11::basic_string<char>, std::map<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > > parseIni(const std::string&)' defined but not used [-Wunused-function]
166 | static std::map<std::string, std::map<std::string, std::string>> parseIni(const std::string &str) {
| ^~~~~~~~
make[1]: *** [/opt/devkitpro/devkitA64/base_rules:16: main.o] Error 1
make: *** [Makefile:185: build] Error 2
Am I missing some library?
thanks a lot.
I downloaded them through the overlay, It seems that they have been placed in a deeper directory:
/config/ultrahand/lang/lang/*.json
Hi, first of all, thank you for this awesome app. I'm trying to setup a package that moves(I've also tried copy) sysmodules to atmosphere/contents/.backup directory. I'm able to do this manually, say, with DBI's sdcard browser but testing things out, Ultrahand mv and cp seems to fail to write after cutting(mv) or copying(cp). I understand that atmosphere directory is special but just wondering if it's possible with Ultrahand since it's doable manually with other apps.
Here's the command I'm trying to run
mv /atmosphere/contents/0000000000534C56 /atmosphere/contents/.backup/
In 1.1.3 toggling an overlay using the example will crash atmosphere with a data abort, 1.1.2 works fine.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.