Actions

Ftpd 3DS

From GameBrew - a wiki dedicated to Video Game Homebrew.


ftpd
FTP-3DS.jpg
General
Author(s) mtheall
Type Utilities
Version v3.1.0
Licence Mixed
Last Updated 2021/06/13
Links
Website Website
Download Download
Source Source
Advertisements


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

Installing

Available as a CIA and 3DSX. Both comes 2 versions, Pro builds (use Dear ImGui graphics) and Classic builds (use console's graphics).

Building

You must set up the development environment.

NDS:

The following pacman packages are required to build nds/ftpd.nds.

  • devkitARM
  • dswifi
  • libfat-nds
  • libnds

They are available as part of the nds-dev meta-package.

3DSX:

The following pacman packages are required to build 3ds/ftpd.3dsx.

  • 3dstools
  • devkitARM
  • libctru

They are available as part of the 3ds-dev meta-package.

Build 3ds/ftpd.3dsx: make 3dsx

User guide

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 getMTime* - 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

ftpd uses Dear ImGui as its graphical backend.

Standard Dear ImGui controller inputs are supported.

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

Media

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

Changelog

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.

Advertising: