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

DSFTP: Difference between revisions

From GameBrew
No edit summary
m (Text replacement - "|download=https://dlhb.gamebrew.org/dshomebrew2/↵" to "|download=https://dlhb.gamebrew.org/dshomebrew2/")
 
(28 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Infobox homebrew
{{Infobox DS Homebrews
| title       = DSFTP
|title=DSFTP
| image       = [[File:DSFTP.png]]
|image=Dsftp2.png
| type       = Utility
|description=FTP server for DS.
| version     = 2.6
|author=Bjoern Giesler, updated by Coto
| licence    = Mixed
|lastupdated=2018/03/01
| author      = Bjoern Giesler
|type=Utilities
| website    = http://giesler.no-ip.org/~bjoern/en/sw_dsftp.html
|version=2.6
| download    = Media:DSFTP26.zip
|license=Mixed
| source     =  
|download=https://dlhb.gamebrew.org/dshomebrew2/dsftp.7z?k33p0fil35
|website=https://bitbucket.org/Coto88/dsftp
|source=https://bitbucket.org/Coto88/dsftp/src/master/bin
}}
}}
DSFTP is a proof-of-concept FTP server and software component for the NDS. It is a full-fledged FTP server, with the additional ability to boot .nds files directly from the FTP prompt (currently only tested on SuperCard CF and DS).
DSFTP is a proof-of-concept FTP server and software component for the NDS. It is a full-fledged FTP server, with the additional ability to boot .nds files directly from the FTP prompt (currently only tested on SuperCard CF and DS).


DSFTP is two things: A stand-alone server (as before), and a software component you can link to your code to run an FTP server from your own program. This component is called libDSFTP.  
DSFTP is two things: A stand-alone server (as before), and a software component you can link to your code to run an FTP server from your own program. This component is called libDSFTP.  


It was submitted for the Neoflash Summer Coding Comp 2006 (winner).
It was submitted to the NEO Summer Coding Compo 2006 (NDS Apps).


==Installation==
==Installation==
Line 37: Line 38:
  write true
  write true
  boot true
  boot true
  end user <br>
  end user


Change the user and pass to one of your choosing. Then save the file. [http://giesler.biz/bjoern/en/sw_dsftp.html#usage Further details on setting up the server with custom settings.]  
Change the user and pass to one of your choosing. Then save the file. [http://giesler.biz/bjoern/en/sw_dsftp.html#usage Further details on setting up the server with custom settings.]


'''Note from developer:'''
===Tested clients===
Performance tested using the following clients.
* command-line FTP on Mac/DOS
* RBrowser Lite on Mac
* MacOS X virtual FTP file system
* Firefox
* FileZilla
* FireFTP (Firefox plugin)
* WS_FTP


Performance tested using the following clients. Performance with other clients unknown, but should work.
Performance with other clients unknown, but should work.
 
command-line FTP on Mac/DOS<br>
RBrowser Lite on Mac<br>
MacOS X virtual FTP file system<br>
Firefox<br>
FileZilla<br>
FireFTP (Firefox plugin)<br>
WS_FTP<br>


==Known issues==
==Known issues==
"Acquiring DHCP - Could not connect. Please restart." Many Homebrew WiFi apps can't connect to Access Points using DHCP. The work around is to use a fixed IP address.
Acquiring DHCP - Could not connect. Please restart (Many Homebrew WiFi apps can't connect to Access Points using DHCP. The work around is to use a fixed IP address).


Seems to crash at the end of a long upload.
Seems to crash at the end of a long upload.
Line 73: Line 74:
* Uses DSGUI for graphics and file-system interface.
* Uses DSGUI for graphics and file-system interface.
'''Version 2.4'''
'''Version 2.4'''
* The FAT driver has been upgraded to chishm's DLDI file system driver interface. The pre-compiled version comes with Supercard CF driver installed. No other interfaces will be supported any more. If you have a different flash card, please patch the DSFTP binary yourself.  
* The FAT driver has been upgraded to chishm's [[DLDI|DLDI]] file system driver interface. The pre-compiled version comes with Supercard CF driver installed. No other interfaces will be supported any more. If you have a different flash card, please patch the DSFTP binary yourself.  
'''Version 2.3'''
'''Version 2.3'''
* UNZP added (submitted by Bertrand Augereau).
* UNZP added (submitted by Bertrand Augereau).
Line 89: Line 90:
* More bugfixes.
* More bugfixes.


<br>
==External links==
[[Category:DS homebrew applications]]
* Author's website - http://giesler.biz/bjoern/en/sw_dsftp.html
[[Category:Utility homebrews on DS]]
* Bitbucket - https://bitbucket.org/Coto88/dsftp
* NeoFlash - https://www.neoflash.com/forum/index.php?topic=2971.0
 
 
 
[[Category:NEO Summer Coding Compo 2006]]

Latest revision as of 04:47, 16 August 2024

DSFTP
Dsftp2.png
General
AuthorBjoern Giesler, updated by Coto
TypeUtilities
Version2.6
LicenseMixed
Last Updated2018/03/01
Links
Download
Website
Source

DSFTP is a proof-of-concept FTP server and software component for the NDS. It is a full-fledged FTP server, with the additional ability to boot .nds files directly from the FTP prompt (currently only tested on SuperCard CF and DS).

DSFTP is two things: A stand-alone server (as before), and a software component you can link to your code to run an FTP server from your own program. This component is called libDSFTP.

It was submitted to the NEO Summer Coding Compo 2006 (NDS Apps).

Installation

Download and unzip file.

Copy the DSFTP.nds (or .ds.gba) file to your flash card.

For development, it's best to copy libDSFTP.a and libDSFTPd.a to your devkitpro's lib directory, and the include directory to your devkitpro's include dir.

User guide

When you start the application it will auto connect using the WiFi settings in your DS and confirm the IP address at the bottom of the screen. If a config file is not found then it creates and displays a default user and password that you can use to access the DS. Use your favourite FTP program to connect to the IP address and authenticate with the username and password. You can then copy to/from and delete files from your card.

Create config

Create a text file called ftp.conf in (root)/data/settings/. File name and location is critical.

Using a text editor (eg. notepad) add the following text to the file:

user joe
pass whatever
root /
home /
write true
boot true
end user

Change the user and pass to one of your choosing. Then save the file. Further details on setting up the server with custom settings.

Tested clients

Performance tested using the following clients.

  • command-line FTP on Mac/DOS
  • RBrowser Lite on Mac
  • MacOS X virtual FTP file system
  • Firefox
  • FileZilla
  • FireFTP (Firefox plugin)
  • WS_FTP

Performance with other clients unknown, but should work.

Known issues

Acquiring DHCP - Could not connect. Please restart (Many Homebrew WiFi apps can't connect to Access Points using DHCP. The work around is to use a fixed IP address).

Seems to crash at the end of a long upload.

Upload speeds can be very slow (<1kb/sec).

Booting only verified to work on Supercard CF and Supercard SD.

Changelog

Version 2.6

  • Fixed hangs on some hardware combinations.
  • Fixed bug which caused directory contents not to be reported correctly.
  • Introduced new config option transferblocksize.

Version 2.5

  • Upgraded to devkitpro 21, so linking to libDSFTP should work now.
  • Uses DSWifi 0.34, so people with newer DS Lites should have no problems.
  • Uses libfat instead of gba_nds_fat, which should be more stable.
  • Uses DSGUI for graphics and file-system interface.

Version 2.4

  • The FAT driver has been upgraded to chishm's DLDI file system driver interface. The pre-compiled version comes with Supercard CF driver installed. No other interfaces will be supported any more. If you have a different flash card, please patch the DSFTP binary yourself.

Version 2.3

  • UNZP added (submitted by Bertrand Augereau).
  • DS->PC file transfer speeded up a lot (patch to DSWifi submitted by masscat).
  • Linked with Devkit R18 again (fixes some showstopper bugs).
  • More bugfixes.

Version 2.2

  • Glaring bug fixed that caused GBAMP not to work anymore.
  • Booting verified on SuperCard and GBAMP now.
  • CDUP command supported.
  • More bugfixes.

Version 2.1

  • Unified bootloading should now support most cards.
  • Auto-generated user & pass if none specified.
  • More bugfixes.

External links

Advertising: