Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Ftpd 3DS: Difference between revisions

From GameBrew
m (Text replacement - "image = https://dlhb.gamebrew.org/3dshomebrew/" to "image = ")
 
(26 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Infobox 3DS Homebrews
{{Infobox 3DS Homebrews
| title = ftpd
|title=ftpd
| image = FTP-3DS.jpg|250px
|image=Ftpdmth2.png
| type = Utilities
|description=A FTP server.
| version=v3.1.0
|author=mtheall
| lastupdated = 2021/06/13
|lastupdated=2024/11/17
| licence = Mixed
|type=Utilities
| author = mtheall
|version=3.2.1
| website = https://github.com/mtheall/ftpd/
|license=Mixed
| download = https://dlhb.gamebrew.org/3dshomebrew/ftpd-3.1.0.7z
|download=https://dlhb.gamebrew.org/3dshomebrews/ftpdmth.7z
| source = https://github.com/mtheall/ftpd/releases
|website=https://github.com/mtheall/ftpd
|source=https://github.com/mtheall/ftpd/releases
}}
}}
 
ftpd is a FTP Server for 3DS/[[Ftpd Switch|Switch]]/Linux/NDS.
ftpd is a FTP Server for 3DS/Switch/Linux/NDS.


==Features==
==Features==
Line 25: Line 25:


==Installation==
==Installation==
===Installing===
Release comes 2 versions, Pro builds (use Dear ImGui graphics) and Classic builds (use console's graphics).
Available as a CIA and 3DSX. Both comes 2 versions, Pro builds (use Dear ImGui graphics) and Classic builds (use console's graphics).
* CIA - [https://mtheall.com/~mtheall/ftpd.cia Pro build] and [https://mtheall.com/~mtheall/ftpd-classic.cia Classic build]. Use either one and install with a CIA manager of your choice.
* 3DSX - [https://mtheall.com/~mtheall/ftpd.3dsx Pro build] and [https://mtheall.com/~mtheall/ftpd-classic.3dsx Classic build]. Copy either one to the 3ds folder of your SD card and run with homebrew launcher.


===Building===
Copy the .3dsx file the 3ds folder of your SD card and run with Homebrew Launcher or install .cia with a CIA manager of your choice.
You must set up the [https://devkitpro.org/wiki/Getting_Started development environment].


'''NDS:'''
==User guide==
 
===Recommended FTP clients===
The following pacman packages are required to build <code>nds/ftpd.nds</code>.
* Windows - [https://filezilla-project.org/download.php?type=client FileZilla].
* devkitARM
* Linux - [https://filezilla-project.org/download.php?type=client FileZilla].
* dswifi
* MacOS - [https://filezilla-project.org/download.php?type=client FileZilla].
* libfat-nds
* iOS non jailbroken - [https://itunes.apple.com/us/app/ftpmanager-ftp-sftp-ftps-client/id525959186?mt=8 FTPManager].
* libnds
* iOS Jailbroken - [http://moreinfo.thebigboss.org/moreinfo/depiction.php?file=filzafilemanagerDp Filza].
 
* Android - [https://play.google.com/store/apps/details?id=turbo.client&hl=en Turbo FTP Client & SFTP Client].
They are available as part of the <code>nds-dev</code> meta-package.
 
'''3DSX:'''
 
The following pacman packages are required to build <code>3ds/ftpd.3dsx</code>.
* 3dstools
* devkitARM
* libctru
 
They are available as part of the <code>3ds-dev</code> meta-package.
 
Build <code>3ds/ftpd.3dsx</code>: <code>make 3dsx</code>


==User guide==
===Supported Commands===
===Supported Commands===
{|
|
* ABOR
* ABOR
* ALLO (no-op)
* ALLO (no-op)
Line 76: Line 61:
* PASV
* PASV
* PORT
* PORT
|width="20px"|&nbsp;<!--spacer-column-->
|
* PWD
* PWD
* QUIT
* QUIT
Line 96: Line 83:
* XPWD
* XPWD
* XRMD
* XRMD
|}


===SITE commands===
===SITE commands===
* Show help - SITE HELP
* Show help: SITE HELP
* Set username - SITE USER
* Set username: SITE USER
* Set password - SITE PASS
* Set password: SITE PASS
* Set port - SITE PORT
* Set port: SITE PORT
* Set getMTime* - SITE MTIME [0|1]
* Set hostname1: SITE HOST
* Save config - SITE SAVE
* Set getMTime2(*): SITE MTIME [0|1]
 
* Save config: SITE SAVE
'''Note:''' getMTime only on 3DS. Enabling will give timestamps at the expense of slow listings.


===Dear ImGui===
(*) getMTime only on 3DS. Enabling will give timestamps at the expense of slow listings.
ftpd uses [https://github.com/ocornut/imgui Dear ImGui] as its graphical backend.


Standard Dear ImGui controller inputs are supported.
===Forks===
* [[ftpd-nds|ftpd for DS/DSi]] by asiekierka.
* [[Ftbrony 3DS|ftbrony]] by yellow8.
* [[FTPd Recompile 3DS|Recompile FTPd]] by GizmoTheGreen.
* [[FTP_-_Graphic_ModifierX_Edition_3DS|FTP Graphic ModifierX]] by Vorpal Blade.


==Controls==
==Controls==
Line 130: Line 120:


D-Pad - Move
D-Pad - Move
==Screenshots==
https://dlhb.gamebrew.org/3dshomebrews/ftpdmth3.png
https://dlhb.gamebrew.org/3dshomebrews/ftpdmth5.png
https://dlhb.gamebrew.org/3dshomebrews/ftpdmth4.png
https://dlhb.gamebrew.org/3dshomebrews/ftpdmth6.png


==Media==
==Media==
Line 136: Line 133:


==Changelog==
==Changelog==
'''v3.2.1 2024/11/17''' (ftpd pro)
* Center 3DS window selector on top screen
* Update to [https://github.com/ocornut/imgui/releases/tag/v1.91.5 Dear ImGui v1.91.5]
* General system stability improvements to enhance the user’s experience
'''v3.2.0 2024/11/11''' (ftpd pro)
* DSi wifi support with update to libnds-2.0.0
* mDNS support
* glob support
* ImGui stereoscopic effect on 3DS
* Removed CIA build for 3DS
** DO NOT ASK ME TO SUPPORT CIA
* Build with CMake
* Update to [https://github.com/ocornut/imgui/releases/tag/v1.91.4 Dear ImGui v1.91.4]
* General system stability improvements to enhance the user’s experience
'''v3.1.0 2021/06/13''' (ftpd pro)
'''v3.1.0 2021/06/13''' (ftpd pro)
* Access Point mode on Switch.
* Access Point mode on Switch.
Line 157: Line 170:
* Further improvements to overall system stability and other minor adjustments have been made to enhance the user experience.
* Further improvements to overall system stability and other minor adjustments have been made to enhance the user experience.


[[Category:3DS homebrew applications]]
==External links==
[[Category:Homebrew utility applications on 3DS]]
* GitHub - https://github.com/mtheall/ftpd

Latest revision as of 21:59, 17 November 2024

ftpd
Ftpdmth2.png
General
Authormtheall
TypeUtilities
Version3.2.1
LicenseMixed
Last Updated2024/11/17
Links
Download
Website
Source

ftpd is a FTP Server for 3DS/Switch/Linux/NDS.

Features

  • Appears to work well with a variety of clients.
  • Supports multiple simultaneous clients. The 3DS itself only appears to support enough sockets to perform 4-5 simultaneous data transfers, so it will help if you limit your FTP client to this many parallel requests.
  • Cutting-edge graphics (Dear ImGui backend).
  • Exit on NDS/3DS with START button.
  • Toggle backlight on NDS/3DS with SELECT button.
  • Emulation of a /dev/zero (/devZero) device for network performance testing:
    • Example retrieve curl ftp://192.168.1.115:5000/devZero -o /dev/zero
    • Example send curl -T /dev/zero ftp://192.168.1.115:5000/devZero

Installation

Release comes 2 versions, Pro builds (use Dear ImGui graphics) and Classic builds (use console's graphics).

Copy the .3dsx file the 3ds folder of your SD card and run with Homebrew Launcher or install .cia with a CIA manager of your choice.

User guide

Recommended FTP clients

Supported Commands

  • ABOR
  • ALLO (no-op)
  • APPE
  • CDUP
  • CWD
  • DELE
  • FEAT
  • HELP
  • LIST
  • MDTM
  • MKD
  • MLSD
  • MLST
  • MODE (no-op)
  • NLST
  • NOOP
  • OPTS
  • PASS (no-op)
  • PASV
  • PORT
 
  • PWD
  • QUIT
  • REST
  • RETR
  • RMD
  • RNFR
  • RNTO
  • SITE
  • SIZE
  • STAT
  • STOR
  • STRU (no-op)
  • SYST
  • TYPE (no-op)
  • USER (no-op)
  • XCUP
  • XCWD
  • XMKD
  • XPWD
  • XRMD

SITE commands

  • Show help: SITE HELP
  • Set username: SITE USER
  • Set password: SITE PASS
  • Set port: SITE PORT
  • Set hostname1: SITE HOST
  • Set getMTime2(*): SITE MTIME [0|1]
  • Save config: SITE SAVE

(*) getMTime only on 3DS. Enabling will give timestamps at the expense of slow listings.

Forks

Controls

A - Activate, Open, Toggle

A+D-Pad - Tweak value (+L/R to tweak slower/faster)

B - Cancel, Close, Exit

X - Edit text/on-screen keyboard

Y - Toggle menu

Hold Y+L/R - Focus windows

Hold Y+D-Pad - Resize window

Left Stick - Scroll, Move window (when holding Y)

D-Pad - Move

Screenshots

ftpdmth3.png ftpdmth5.png

ftpdmth4.png ftpdmth6.png

Media

How to Setup an FTP Client [FTPD] on o3DS or n3DS (GameInCanada)

Changelog

v3.2.1 2024/11/17 (ftpd pro)

  • Center 3DS window selector on top screen
  • Update to Dear ImGui v1.91.5
  • General system stability improvements to enhance the user’s experience

v3.2.0 2024/11/11 (ftpd pro)

  • DSi wifi support with update to libnds-2.0.0
  • mDNS support
  • glob support
  • ImGui stereoscopic effect on 3DS
  • Removed CIA build for 3DS
    • DO NOT ASK ME TO SUPPORT CIA
  • Build with CMake
  • Update to Dear ImGui v1.91.4
  • General system stability improvements to enhance the user’s experience

v3.1.0 2021/06/13 (ftpd pro)

  • Access Point mode on Switch.
  • Reset button for configuration.
  • Update to Dear ImGui 1.83.
  • General system stability improvements to enhance the user’s experience.

v3.0.0 2020/05/27 (ftpd pro)

  • Even better graphics than ever (Dear ImGui backend).
  • NDS support.
  • Exit button changed from B to PLUS/START.
  • Backlight toggle changed from PLUS/START to MINUS/SELECT.
  • User/Password support.
  • Scrollable log.
  • Status icons/text (battery/wifi/time).
  • "Classic" builds retain console interface.
  • Further improvements to overall system stability and other minor adjustments have been made to enhance the user experience.

v2.3.1 2019/09/16 (ftpd snap!)

  • Rebuild against latest toolchains.
  • Further improvements to overall system stability and other minor adjustments have been made to enhance the user experience.

External links

Advertising: