Homebrew [Release] Sunshell - A powerfull shell for 3DS

  • Thread starter Thread starter Rinnegatamante
  • Start date Start date
  • Views Views 258,326
  • Replies Replies 1,054
  • Likes Likes 77
And also FTP Server module finished with fully working background support.
ftp_sun.bmp
 
EDIT: Here's an updated Main Menu screenshot showing FTP Server running in background:
bg_ftp.bmp

this is reallly great work!! wow! its awesome ! i can imagine personalizing it already :P ..i loooove where its going with your homebrew! love the ftp module running in the background!..it reminds me of FSD on xbox360.
will there be a 'setting' icon? or the top-screen's widget (calendar, clock..if its widgets..) appears only when you click on the icon? perhaps there could be a setting option, with all your main modules with their own settings! with different fonts etc.. and the setting to change wallpapers directly from the shell:grog:

oh and the ability to make folders would be cool to!

great work! :bow:
 
this is reallly great work!! wow! its awesome ! i can imagine personalizing it already :P ..i loooove where its going with your homebrew! love the ftp module running in the background!..it reminds me of FSD on xbox360.
will there be a 'setting' icon? or the top-screen's widget (calendar, clock..if its widgets..) appears only when you click on the icon? perhaps there could be a setting option, with all your main modules with their own settings! with different fonts etc.. and the setting to change wallpapers directly from the shell:grog:

oh and the ability to make folders would be cool to!

great work! :bow:

First alpha version will not provide:
- moving icon (they can be reorganized by editing index.lua for example music icon in "SLOT1" instead of Applications)
- editing fonts/bg/icons FROM homebrew (you can still customize them by editing Sunshell files). Fonts are not supported by lpp-3ds cause i encountered problems with stb_truetype and freetype so i don't know what library to use to add TTF font support.
- Creating any kind of folder for icons

Top screen is a future Widget system as can be seen from index.lua src ( https://github.com/Rinnegatamante/Sunshell/blob/master/LUA/index.lua ):
Code:
if widget == nil then
-- Blit clock
hours,minutes,seconds = System.getTime()
if minutes < 10 then
minutes = "0"..minutes
end
if seconds < 10 then
seconds = "0"..seconds
end
formatted_time = hours..":"..minutes..":"..seconds
Screen.fillEmptyRect(255,395,85,125,black,TOP_SCREEN)
Screen.fillRect(256,394,86,124,white,TOP_SCREEN)
Screen.debugPrint(259,89,"Digital Clock",selected,TOP_SCREEN)
Screen.debugPrint(259,109,formatted_time,black,TOP_SCREEN)
-- Blit calendar
dv,d,m,ye = System.getDate()
i = 1
x = 10
y = 85
Screen.fillEmptyRect(x-5,x+240,y-45,y+115,black,TOP_SCREEN)
Screen.fillRect(x-4,x+239,y-44,y+114,white,TOP_SCREEN)
Screen.debugPrint(x+50,y-40,months[m].." "..ye,black,TOP_SCREEN)
Screen.debugPrint(x,y-20,"S",selected,TOP_SCREEN)
Screen.debugPrint(x+35,y-20,"M",selected,TOP_SCREEN)
Screen.debugPrint(x+70,y-20,"T",selected,TOP_SCREEN)
Screen.debugPrint(x+105,y-20,"W",selected,TOP_SCREEN)
Screen.debugPrint(x+140,y-20,"T",selected,TOP_SCREEN)
Screen.debugPrint(x+175,y-20,"F",selected,TOP_SCREEN)
Screen.debugPrint(x+210,y-20,"S",selected,TOP_SCREEN)
while i <= month_days[m] do
if i == d then
Screen.debugPrint(x + (days_table[i]) * 35,y,i,selected,TOP_SCREEN)
else
Screen.debugPrint(x + (days_table[i]) * 35,y,i,black,TOP_SCREEN)
end
if days_table[i] == 6 then
y = y + 20
end
i=i+1
end
end

FTP alert is shown only if you start FTP server and return Main Menu without terminating FTP server (A similar alert is shown by Clock module for Alarm Clock reminding you what time you setted for alarm).
Code:
-- Module background code
function BackgroundFTP()
    last_shared = Socket.updateFTP()
   
    -- Blit FTP alert on Main Menu
        if module == "Main Menu" then
            Screen.fillEmptyRect(255,395,45,65,black,TOP_SCREEN)
            Screen.fillRect(256,394,46,64,white,TOP_SCREEN)
            Screen.debugPrint(259,50,"FTP: ON",black,TOP_SCREEN)
        end
end
 
  • Like
Reactions: puss2puss
Sunshell repo still not updated but lpp-3ds repo is fully updated with FTP support: https://github.com/Rinnegatamante/lpp-3ds/blob/master/source/luaSocket.cpp

Techincally is like ftpony but more stable.

EDIT: Here's an updated Main Menu screenshot showing FTP Server running in background:
bg_ftp.bmp

Looks pretty cool.
Would be cool if FTP status changes to:
- Busy; if it's transfering files
- Idle; if active, but not transfering
- Off; Obviously if it's not running in the background.
- Error; if connection breaks, or whatever.

Oh and, instead of using white draw boxes, I'd prefer images so we can theme it :lol: (Ignore this if it already uses images)
 
  • Like
Reactions: puss2puss
Could you replace the FTP: ON with something like "FTP: %IP%"?

IP is too long for rappresentation.

Looks pretty cool.
Would be cool if FTP status changes to:
- Busy; if it's transfering files
- Idle; if active, but not transfering
- Off; Obviously if it's not running in the background.
- Error; if connection breaks, or whatever.

Oh and, instead of using white draw boxes, I'd prefer images so we can theme it :lol: (Ignore this if it already uses images)

FTP status could be cool but using image is not a priority. (Using lot of images could slow application).
 
Finished last module (Photos) so, Sunshell is ready for a first Alpha release.
I need only a banner and an icon for CIA/3DS build.

sweet!! ..does the banner needs to be in 3D? if so, wich program is used to make 3d banners? nevermind..i found :P

btw, would be nice, but its just a suggestion, if you would choose a name that is more relevent to what it is..I love 'sunshell', but i think it could be something a bit different to be more about what it is.. like SunshellDash.. 3DShell.. anyway, like i said its only a suggestion in case you want to make some changes, before its to late :P
:bow:
 
Ok, i arranged myself for an icon/banner.
Here's the first Alpha release of Sunshell!

I updated first post with all necessary info.
To install it, please read the README.txt file.
Sunshell could also be used as an Homebrew Menu replacement. In RAR file you find a patched sun_index.lua to use it as boot.3dsx.

I'll also update GitHub repository soon (Not GateWait "soon" concept u.u).

Known issues:
- Random flickering screens on 3DS/CIA build. Don't know why this happens, if someone has any idea, please help me to solve this issue.
- Calc Module is probably very bugged, please report me any kind of bug you encounter.
- Using Sunshell as boot.3dsx make some Sunshell modules (like Applications) to be incompatible with CIA/3DS build. (If you, for example, want to use Sunshell as CIA on Gateway and as boot.3dsx on Ninjhax)

This is an Alpha so please, report me any kind of bug you encounter (not the ones i listed in the Known issues).

To moderators: Please edit Topic subject to [Release].

For next release i just have some neat ideas (Extdata Manager, Config Module to edit BG, Font colors, etc..., better keyboard for Mail Module and so on).
 
It's a reference to moonshell, personally, I like it :p

ahh ok..i didnt know about moonshell :P i love the name Sunshell! i was just suggesting in-case.. and now that i know about the reference i understand better about the name ''sunshell'' ^_^


Rinnegatamante: i'm so excited to try it out! ..i cant wait to be able to install it directly as a cia instead of passing thru cubic ninja everytime :P
anyway, i'il try it in about 2 hours.. thanks for the great work you do!
:grog:
 

Site & Scene News

Popular threads in this forum