418 Commits

Author SHA1 Message Date
ITotalJustice
9f7bf9581c add boost mode option for installing 2025-04-29 18:33:02 +01:00
ITotalJustice
8f39acbaa2 replace usb protocol with tinfoils protocol, in order to support applications supporting said protocol.
- replace the python script with the one included with tinfoil, minor changes such as changing the supported extension,
  removing unused imports.
- tested with the included script, fluffy and ns-usbloader on linux.
  a user was unable to get it working on mac however...
- added build instructions to the readme, i think they're correct.
- added install instructions to the readme.
2025-04-29 18:11:07 +01:00
ITotalJustice
81469d0ac9 remove PageAlignedVector from yati as it's no longer needed due to previous commit.
the previous commit changed usb transfers to always transfer to/from page aligned buffers.
i wanted to keep the commits seperate so that its easier revert or git bisect later on, if needed.
2025-04-29 14:19:37 +01:00
ITotalJustice
1eae35f072 simplify the usb transfer process by using an aligned buffer to transfer to/from. 2025-04-29 14:17:12 +01:00
ITotalJustice
5b82e07b1c fix building due to previous commit 2025-04-29 13:08:32 +01:00
ITotalJustice
73886c28ae add gc event waiting, fix control nca mounting, better skip nca support.
- gamecards now wait for an event to change, rather than polling each frame.
  this reduces cpu load on core 3 slightly (3-4% less).
- my understanding of fsOpenFileSystemWithId() was wrong, i thought it used the app_id for the id param.
  turns out it needs the program id (found in the nca header), this is why mounting some control ncas
  would fail.
  fs (and ncm) have a call in 17+ to get the program id, it does so by parsing the nca header.
  in yati, we already have the header so we can avoid the call.
  for the gamecard menu, we don't. so we can parse the nca header, or use the id offset (which we already have)
  to form the program id.
- std::find_if in yati now takes args by ref rather than by value, avoid quite large copies.
- stream installs can now parse the control nca.
- if an nca is already installed, it is now skipped. this is regardless to whether it is not in ncm db.
- nca skipping is technically supported for stream installs, however it is disabled for now as there needs
  to be a way to allow for the stream to continue reading and discarding data until the stream has finished.
  currently, if a ftp (stream) install is skipped, it will close the progress box and cause spahira to hang.
  this is because sphaira expects the stream to only be closed upon all data being read, so there's nothing more
  to process.
- renamed the title_id field in nca header to program_id.
2025-04-29 12:47:38 +01:00
ITotalJustice
eea09f6e57 [appstore] make author search case insensitive. 2025-04-28 22:06:44 +01:00
ITotalJustice
282c6e5493 bump version for release 0.7.0 -> 0.8.0 0.8.0 2025-04-27 21:01:45 +01:00
ITotalJustice
2c2f602d14 add gc_menu, add progress, icon, time remaining to progress bar (see full commit message).
- fix ignore distribution bit doing nothing.
- fix yati failing to parse control nca causing the transfer to abort.
- yati now uses ncm rather than ns to get the latest app version.
- improve ui::list input handling (it handles directional buttons now).
- progress bar displays speed and time remaining.
- added gc menu (taken from my gc installer nx and gci).
2025-04-27 20:01:13 +01:00
ITotalJustice
f7f1254699 Merge pull request #128 from ITotalJustice/stream_installs
Stream installs (FTP), and many fixes
2025-04-23 01:02:26 +01:00
ITotalJustice
90f8a62823 display useful info in ftp menu (ip, port, user, pass, ssid, passphrase) 2025-04-23 01:00:36 +01:00
ITotalJustice
e2a1c8b5e3 fix yati not setting correct version, add support for using zip name when creating forwarder, remove some dead code.
fixes #126
fixes #127
2025-04-22 23:15:16 +01:00
ITotalJustice
21f6f4b74d [skip ci] fix file assoc always using internal name, fix menu showing wrong time
fixes #126
2025-04-22 00:08:26 +01:00
ITotalJustice
75d3b3ee0d [skip-ci] initial support for stream installs, add ftp installs.
do NOT build or release binaries of this version, it is not complete and there will be dragons.
2025-04-21 23:23:59 +01:00
ITotalJustice
0dde379932 don't return from usb menu on error, wait until the user presses B 2025-04-21 13:33:36 +01:00
ITotalJustice
9800bbecdf add basic support for gamecard installing 2025-04-21 13:30:46 +01:00
ITotalJustice
60e915c255 enable screenshot permissions in applet mode. 2025-04-21 12:40:37 +01:00
ITotalJustice
786f8a42fa send file name and size via usb, add requirements.txt for usb.py 2025-04-21 01:41:20 +01:00
ITotalJustice
5a4a0f75f2 add support for mame and neogeo, as well as alias for rom folder names 2025-04-20 22:03:53 +01:00
ITotalJustice
5aca92a2cc fix usb menu name being set as irs (copy-paste bug). 0.7.0 2025-04-20 18:11:17 +01:00
ITotalJustice
7471885119 bump version for release 0.6.3 -> 0.7.0 2025-04-20 18:08:55 +01:00
ITotalJustice
5038fb0c28 add basic usb install support (see commit message).
transfers seems to work, although i have done very little testing.
i plan to extend the usb script so that it supports normal usb transfers, such as uploading and
downloading files to and from the switch.

however, most users are likely better off using mtp for said transfers.

the usb transfer code was taken from Haze, which is part of Atmosphere.
2025-04-20 18:04:35 +01:00
ITotalJustice
ff9f493460 fix skwbd numpa not showing 2025-04-20 14:18:02 +01:00
ITotalJustice
89e82927ee add basic support for title installing 2025-04-20 14:12:12 +01:00
ITotalJustice
651d9fa495 remove theme shuffle option
fixes #121
2025-04-19 22:55:08 +01:00
ITotalJustice
3141100457 fix themezer search...by actually *doing* the search.
fixes #111
2025-04-19 22:50:56 +01:00
ITotalJustice
6b4e81c935 bump version for new release 0.6.3 0.6.3 2025-04-18 13:18:14 +01:00
ITotalJustice
e243d5b64e fix themezer 2025-04-18 13:16:17 +01:00
shadow2560
252cd0cee6 Add 12 our time string in translation files and translated it for French language. (#120)
Signed-off-by: shadow2560 <24191064+shadow2560@users.noreply.github.com>
2025-04-09 18:05:14 +01:00
therealbungus
14abcc50b5 add 12 hour clock (#113) 2025-04-08 12:04:22 +01:00
BIGBIGSUI
134aadad5a Update zh.json (#110)
This is my updated zh.json file, I hope it helps.
2025-04-08 09:39:31 +01:00
Ny'hrarr
a56bc9e4fa Update pt.json (#109)
* Update pt.json

* Update pt.json
2025-04-08 09:39:18 +01:00
shadow2560
5bd466a9b6 Update french language. (#108)
Signed-off-by: shadow2560 <24191064+shadow2560@users.noreply.github.com>
2025-04-08 09:38:58 +01:00
LNLenost
16c58512ec Edited README, updated Italian translations (#117)
* Update README.md

* Update README.md

* Italian translations 1/2

* Italian translations 2/2
2025-04-08 09:38:32 +01:00
ITotalJustice
b1b0b13f2a fix filebrowser FsDirOpenMode_NoFileSize being passed
looks like fs ignores this flag as it was reporting the filesize regardless. however, if a file is created using
FsCreateOption_BigFile, then the filesize would return 0.
2025-01-22 13:01:38 +00:00
ITotalJustice
03e77faf06 draw "applet mode" text using error colour
fixes #104
2025-01-22 12:59:54 +00:00
ITotalJustice
7e381924ab fix forwarder creation bug on ams 1.7.1, fix cmake project version bug
i was checking against ams 1.7.1, however the change was introduced in ams 1.8.0.
fixes #106

as for cmake, i have no idea why this bug happens, but sometimes it will use the project version for hbl.
which results in sphaira having a version number of 3.0.0.
this only seemed to happen when building the zip with no current build.
2025-01-22 12:54:30 +00:00
spkats1
5763610e54 [Theme] alt icons + theme (#102)
* adding "sp icons"
2025-01-22 12:49:15 +00:00
HenryBaby
49956a3f84 Updated se.json with the latest added string. (#103)
Co-authored-by: ITotalJustice <47043333+ITotalJustice@users.noreply.github.com>
2025-01-22 12:48:00 +00:00
Yorunokyujitsu
b2915a8142 add new string, update ko, ja.json (#101) 2025-01-22 12:47:04 +00:00
ITotalJustice
e002aa9ec2 only disable audio in applet mode if an app is suspended, bump version. 0.6.2 2025-01-17 03:52:32 +00:00
ITotalJustice
0aaf460dbf bump version for release (i forgot to do this before making a new release...) 2025-01-16 21:48:40 +00:00
ITotalJustice
76c8b806d0 bump ftpsrv version to 1.2.2 which fixes mdtm. 0.6.1 2025-01-16 21:40:24 +00:00
glitched_nx
61783bc530 update de.json with missing translations and corrections (#95) 2025-01-16 21:38:47 +00:00
ITotalJustice
a3a2a04991 fix hbmenu restore prompt not triggering if /hbmenu.nro does not exist
fixes #99
2025-01-16 21:28:13 +00:00
ITotalJustice
b6304fca75 fix deko3d mem leak when using docked mode
fixes #97
2025-01-16 21:24:21 +00:00
ITotalJustice
5612ae5691 disable audio in applet mode due to audren fatal.
fixes #92
2025-01-16 21:03:26 +00:00
ITotalJustice
657c160599 enable warning flags, fix all warning, default init all vars, bump stb libs used in nanovg
fixes #98
2025-01-16 21:01:17 +00:00
HenryBaby
f66494aeb5 Fixed the "decending" typo. (#91)
Co-authored-by: ITotalJustice <47043333+ITotalJustice@users.noreply.github.com>
2025-01-16 05:17:59 +00:00
shadow2560
650e7812e5 Update french language. (#94)
Signed-off-by: shadow2560 <24191064+shadow2560@users.noreply.github.com>
2025-01-16 05:13:31 +00:00