Homebrew 3DShell - Multi-purpose File Manager for the 3DS

Joel16

Ils ne passeront pas
OP
Member
Joined
May 8, 2011
Messages
933
Trophies
2
Age
27
Location
Doesn't concern you.
XP
5,283
Country
United States
Hello 3DS homebrew community, here's my (kinda) late Christmas present and a cheers to the new years for you guys. With 3DShell v3.0.0, the application is no longer in 'beta' stage (although some minor issues may exist), and is stable enough for optimal usage. For those that don't know 3DShell (3D Shell) is a multi purpose file manager with a GUI based on CyanogenMod/LineageOs's file manager. It allows the user to carry out basic file operations as well as support displaying various formats of images, extract zip files, play audio files, FTP, etc. This is a rather major update, and includes a lot of fixes and features that brings the application to a whole new level of maturity. However there's also some bad news. Some features that were planned have been scrapped, and these are the CIA installer and file downloader. I don't really have too much time to bother implementing these features because college keeps eating up too much of my time, however I can bring the CIA installer if highly requested. (Pull requests are also welcome!) Each year I get busier and busier and have less time to work on programs like this. Besides, this old dog might be getting too tired for this, once I'm done with this project I think it's time to call it quits.

DXr7jmI.png
eyWzpRr.png

Change-log:

Features:
  • Added sorting options into settings: alphabetical - ascending, alphabetical - descending, size - largest to smallest, and size - smallest to largest.
  • Directory listing is now initially alphabetically sorted. (Folder first / then files)
  • Display file transfer status and accepted connection address in FTP mode.
  • A minimal animated bar is displayed during file transfer in FTP mode.
  • Added music player with mp3, wav, ogg and flac support. (All thanks to deltabeard/MaK11-12 for implementing ctrmus functions as a base)
  • Added MP3 ID3v2 and ID3v1 parsing. (Displays title, album, genre etc.)
  • Added progress bar when copying/moving(cut) files.
  • Now uses the minizip v1.1 to extract zip files.
  • Added a progress bar when extracting zip files.
  • Many performance improvements. Removed unnecessary thread delays, code and lots of code clean-up.
  • Refactored config files. (Stored in /3ds/3DShell/config.cfg) - results in performance improvements and better organization. No longer creates separate config files for each setting (hidden.txt, bgm.txt, sysprotection.txt etc).
  • Refactored theme manager - Major improvements - code is a lot cleaner and switching between themes is much faster than before.
  • Add new boot logo by FrozenFire.
  • Update directory listing after disabling FTP. (Either press select or touch the FTP icon when FTP is enabled)
  • Add a toggle to display/hide 'hidden files'.
  • .files are now displayed if 'show hidden files' is enabled.
  • Merged upstream changes from FTPD.
  • New battery/Wi-Fi signal icons.
  • Increased text sizes for better readability.
Fixes:
  • Fixed incorrect timestamps in FTP.
  • Fixed special characters not being displayed.
  • Fixed special characters not being able to be modified under FTP.
  • Fixed bug when holding L + R for a while would generate many screenshots.
  • Fixed renaming non-empty directories.
  • Fixed folders with spaces in their names not being saved into last visited directory.
  • Copying a file from SD -> NAND or NAND -> SD has been fixed. (System protection should be turned off)
  • Better result handling to avoid crashes.
  • SD and NAND toggles have been moved to the far right to avoid confusion with other buttons.
  • Refactored makefile and fixed banner audio.

Download + QR

Oh almost forgot, with this release I'm also bundling an exclusive theme called "Material" (shown in the screenshots) which makes use of the improved theme manager. You can download the theme here: https://gbatemp.net/threads/3dshell-themes-list.476293/
 
Last edited by Joel16,

Giodude

GBAtemp's official rock
Member
Joined
May 17, 2015
Messages
5,094
Trophies
1
Age
23
Location
New York
XP
2,761
Country
United States
Hello 3DS homebrew community, here's my (kinda) late Christmas present and a cheers to the new years for you guys. With 3DShell v3.0.0, the application is no longer in 'beta' stage (although some minor issues may exist), and is stable enough for optimal usage. For those that don't know 3DShell (3D Shell) is a multi purpose file manager with a GUI based on CyanogenMod/LineageOs's file manager. It allows the user to carry out basic file operations as well as support displaying various formats of images, extract zip files, play audio files, FTP, etc. This is a rather major update, and includes a lot of fixes and features that brings the application to a whole new level of maturity. However there's also some bad news. Some features that were planned have been scrapped, and these are the CIA installer and file downloader. I don't really have too much time to bother implementing these features because college keeps eating up too much of my time, however I can bring the CIA installer if highly requested. (Pull requests are also welcome!) Each year I get busier and busier and have less time to work on programs like this. Besides, this old dog might be getting too tired for this, once I'm done with this project I think it's time to call it quits.

DXr7jmI.png
eyWzpRr.png

Change-log:

Features:
  • Added sorting options into settings: alphabetical - ascending, alphabetical - descending, size - largest to smallest, and size - smallest to largest.
  • Directory listing is now initially alphabetically sorted. (Folder first / then files)
  • Display file transfer status and accepted connection address in FTP mode.
  • A minimal animated bar is displayed during file transfer in FTP mode.
  • Added music player with mp3, wav, ogg and flac support. (All thanks to deltabeard/MaK11-12 for implementing ctrmus functions as a base)
  • Added MP3 ID3v2 and ID3v1 parsing. (Displays title, album, genre etc.)
  • Added progress bar when copying/moving(cut) files.
  • Now uses the minizip v1.1 to extract zip files.
  • Added a progress bar when extracting zip files.
  • Many performance improvements. Removed unnecessary thread delays, code and lots of code clean-up.
  • Refactored config files. (Stored in /3ds/3DShell/config.cfg) - results in performance improvements and better organization. No longer creates separate config files for each setting (hidden.txt, bgm.txt, sysprotection.txt etc).
  • Refactored theme manager - Major improvements - code is a lot cleaner and switching between themes is much faster than before.
  • Add new boot logo by FrozenFire.
  • Update directory listing after disabling FTP. (Either press select or touch the FTP icon when FTP is enabled)
  • Add a toggle to display/hide 'hidden files'.
  • .files are now displayed if 'show hidden files' is enabled.
  • Merged upstream changes from FTPD.
  • New battery/Wi-Fi signal icons.
  • Increased text sizes for better readability.
Fixes:
  • Fixed incorrect timestamps in FTP.
  • Fixed special characters not being displayed.
  • Fixed special characters not being able to be modified under FTP.
  • Fixed bug when holding L + R for a while would generate many screenshots.
  • Fixed renaming non-empty directories.
  • Fixed folders with spaces in their names not being saved into last visited directory.
  • Copying a file from SD -> NAND or NAND -> SD has been fixed. (System protection should be turned off)
  • Better result handling to avoid crashes.
  • SD and NAND toggles have been moved to the far right to avoid confusion with other buttons.
  • Refactored makefile and fixed banner audio.

Download + QR

Oh almost forgot, with this release I'm also bundling an exclusive theme called "Material" (shown in the screenshots) which makes use of the improved theme manager. You can download the theme here: https://gbatemp.net/threads/3dshell-themes-list.476293/
Holy sh*t man. That's fantastic! It looks amazing! Thank you so much!
 
  • Like
Reactions: Joel16

x149te

Well-Known Member
Newcomer
Joined
Feb 25, 2010
Messages
87
Trophies
1
Age
33
XP
1,150
Country
Russia
When open player listen music in headphones and close up 3DS music still plays, but when open up there black screen. Helps only restart of console.
CF - 11.6
last Luma
New 3DS
3DShell 3.0
.mp3 format
 
  • Like
Reactions: dsearnack

Joel16

Ils ne passeront pas
OP
Member
Joined
May 8, 2011
Messages
933
Trophies
2
Age
27
Location
Doesn't concern you.
XP
5,283
Country
United States
When open player listen music in headphones and close up 3DS music still plays, but when open up there black screen. Helps only restart of console.
CF - 11.6
last Luma
New 3DS
3DShell 3.0
.mp3 format

Totally forgot about sleep mode while testing! Anyways thanks for reporting, I'll take a look once I get more time.
 

x149te

Well-Known Member
Newcomer
Joined
Feb 25, 2010
Messages
87
Trophies
1
Age
33
XP
1,150
Country
Russia
Totally forgot about sleep mode while testing! Anyways thanks for reporting, I'll take a look once I get more time.
Ah. Please, add function switch songs on ZL and ZR, (not L and R, or change it in menu), because in original 3DS player you can't do that. You can switch music on triggers in Super Smash Bros.
 

Joel16

Ils ne passeront pas
OP
Member
Joined
May 8, 2011
Messages
933
Trophies
2
Age
27
Location
Doesn't concern you.
XP
5,283
Country
United States
Ah. Please, add function switch songs on ZL and ZR, (not L and R, or change it in menu), because in original 3DS player you can't do that. You can switch music on triggers in Super Smash Bros.

Yeah this was a planned feature but unfortunately didn't have enough time to include it in the release. I'll try to get onto it when I get more time. I'll make it so that either ZL/ZR or L/R can be used to switch songs.
 

Joel16

Ils ne passeront pas
OP
Member
Joined
May 8, 2011
Messages
933
Trophies
2
Age
27
Location
Doesn't concern you.
XP
5,283
Country
United States
A Slideshow feature would be neat. :)

Not sure if I'll have time for that, but we'll see. It's not really a feature for a file manager, it's more of a feature for a custom menu or something.

Also starting today I'm introducing bleeding edge builds (kinda like nightlies or should I say compileies?) that is generated after each commit has been pushed guaranteed that the build was successful. While these are untested, they are always built with the most up to date build environment (devkitarm, ctrulib, citro3d and portlibs) as they compile each and everyone of these with the latest commits. Considering I sometimes take forever to get an actual release up, this should hopefully give people a taste of what the most recent changes are like.

You can find the builds here: http://joel16.github.io
 

Justeego

Well-Known Member
Newcomer
Joined
Feb 24, 2017
Messages
59
Trophies
0
XP
386
Country
Italy
I'm looking forward to the txt editor, it would be awesome, anyway I can't read file's name if it is too long, I can see less characters using "Properties" than in the normal view, can you add a scrolling animation in the normal view and the possibility of having more columns of text using "Properties"?
 

Joel16

Ils ne passeront pas
OP
Member
Joined
May 8, 2011
Messages
933
Trophies
2
Age
27
Location
Doesn't concern you.
XP
5,283
Country
United States
I'm looking forward to the txt editor, it would be awesome, anyway I can't read file's name if it is too long, I can see less characters using "Properties" than in the normal view, can you add a scrolling animation in the normal view and the possibility of having more columns of text using "Properties"?

Yeah I can try and do that. If you can, could you possibly send a screenshot? I tired to account for long file names but didn't think people would have a longer file name than what fits in the main screen.
 

Joel16

Ils ne passeront pas
OP
Member
Joined
May 8, 2011
Messages
933
Trophies
2
Age
27
Location
Doesn't concern you.
XP
5,283
Country
United States
Alright, well I got done with my semester but now I'm busy with work ):
However that hasn't stopped me from working on this. I have now integrated an inbuilt updater for .3dsx and 3dshell. To get this you need to first install the following (3dsx or CIA): https://github.com/joel16/3DShell/tree/gh-pages From this build onwards you can install nightly updates. Nightly builds aren't really 'nightly' but they build each time a commit has been pushed. So chances are you might experience bugs. Release builds only happen once a full release that increments the version has been pushed. The updater is still new so it doesn't throw any proper error messages or anything yet (if an error occurs that is), but it does work. I'm doing this to get better interaction with the community since release intervals seem to be increasing as I get more busy. Be sure to leave some feedback if you are to use it.

Anyways enough blabbing, here's a screenshot:

NrBNNBN.png


 
Last edited by Joel16,

theoldbucwild

Well-Known Member
Member
Joined
Apr 15, 2017
Messages
284
Trophies
0
Age
20
XP
555
Country
United States
Alright, well I got done with my semester but now I'm busy with work ):
However that hasn't stopped me from working on this. I have now integrated an inbuilt updater for .3dsx and 3dshell. To get this you need to first install the following (3dsx or CIA): https://github.com/joel16/3DShell/tree/gh-pages From this build onwards you can install nightly updates. Nightly builds aren't really 'nightly' but they build each time a commit has been pushed. So chances are you might experience bugs. Release builds only happen once a full release that increments the version has been pushed. The updater is still new so it doesn't throw any proper error messages or anything yet (if an error occurs that is), but it does work. I'm doing this to get better interaction with the community since release intervals seem to be increasing as I get more busy. Be sure to leave some feedback if you are to use it.

Anyways enough blabbing, here's a screenshot:

NrBNNBN.png


Hey. So I took some screenshots using Luma is there any way this program can take these screenshots (bmp files) and move them into the DCIM folder so I can use the image share app to post them to Twitter (I have no computer access currently)

Thanks
 

Joel16

Ils ne passeront pas
OP
Member
Joined
May 8, 2011
Messages
933
Trophies
2
Age
27
Location
Doesn't concern you.
XP
5,283
Country
United States
Hey. So I took some screenshots using Luma is there any way this program can take these screenshots (bmp files) and move them into the DCIM folder so I can use the image share app to post them to Twitter (I have no computer access currently)

Thanks

There's no way to automatically do that. You can move the screenshots to that directory using the cut/copy option in file options. Multi select is yet to be implemented.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    OctoAori20 @ OctoAori20: Nice nice-