FTP Server for 3DS/Switch
Go to file
2020-05-18 20:58:18 -05:00
.github/ISSUE_TEMPLATE Update issue templates 2020-04-24 18:09:19 -05:00
3ds/gfx Documentation and minor refactors 2020-04-28 10:25:54 -05:00
include Add licenses 2020-05-18 20:58:11 -05:00
meta LTO -O3 for release build 2020-04-28 10:26:45 -05:00
nds Add NDS icon 2020-05-18 20:58:18 -05:00
source Fix nds flickering 2020-05-18 20:58:18 -05:00
switch/gfx Switch status icons 2020-04-28 10:25:54 -05:00
.clang-format Add configuration 2020-04-28 10:26:47 -05:00
.gitignore NDS support 2020-04-28 10:25:54 -05:00
ftpd-classic-qr.png NDS support 2020-04-28 10:25:54 -05:00
ftpd-qr.png NDS support 2020-04-28 10:25:54 -05:00
LICENSE v3.0.0-rc1 2020-04-28 10:25:54 -05:00
Makefile LTO -O3 for release build 2020-04-28 10:26:45 -05:00
Makefile.3ds Add licenses 2020-05-18 20:58:11 -05:00
Makefile.linux Add configuration 2020-04-28 10:26:47 -05:00
Makefile.nds Minor Makefile updates 2020-05-18 20:58:18 -05:00
Makefile.switch Minor Makefile updates 2020-05-18 20:58:18 -05:00
README.md Press select/minus to toggle backlight 2020-05-18 20:58:18 -05:00

ftpd

FTP Server for 3DS/Switch/Linux.

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.

  • Toggle backlight on 3DS with SELECT button

  • Toggle backlight on Switch with MINUS button

Latest Builds

NDS: https://mtheall.com/~mtheall/ftpd.nds

CIA: https://mtheall.com/~mtheall/ftpd.cia

3DSX: https://mtheall.com/~mtheall/ftpd.3dsx

NRO: https://mtheall.com/~mtheall/ftpd.nro

CIA QR Code

ftpd.cia

Classic Builds

CIA: https://mtheall.com/~mtheall/ftpd-classic.cia

3DSX: https://mtheall.com/~mtheall/ftpd-classic.3dsx

NRO: https://mtheall.com/~mtheall/ftpd-classic.nro

CIA QR Code

ftpd-classic.cia

Build and install

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

NRO

The following pacman packages are required to build switch/ftpd.nro:

devkitA64
libnx
switch-tools

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

Build switch/ftpd.nro:

make nro

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

Planned Commands

  • STOU

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