For Developers: Bjoern Giesler’s DSFTP 1.9 FTP Server and Software Component for DS

DSDSFTP is a homebrew project by Bjoern Giesler. It started out as an FTP server for the Nintendo DS.

Recently, DSFTP 1.8 came out and it was a stand-alone FTP server (like the DSFTP 1.6) that also had a software component called libDSFTP. Now Bjoern Giesler has released an update with DSFTP 1.9.

It is still a stand-alone program that you can use as an FTP server on your DS. And it is still a software component that makes the lives of developers easy. As Bjoern Giesler describes it: “[You] add an FTP server to your own program with a couple lines of code. With this, you can speed up the build process radically, because you can upload the new version of your program to your own running program, and reboot it immediately. This can even be automated via the command line. No swapping of flash cards ever again!”

Furthermore, we’ve learned that DSFTP has been tested on SuperCard, M3, and GBAMP. This is a good thing to have cleared up, because when we reported on it earlier, it seemed that it had only been tested on SuperCard. DSFTP also uses REIN’s FAT library, so it should also work with MagicKey 2/3. However, booting is only supported on SuperCard as of now (we wonder if Bjoern Geisler has more in plan for future releases).

The download contains the following:

  1. the stand-alone DSFTP program in both .ds.gba and .nds formats
  2. the libDSFTP library and headers to integrate an FTP server into your own program
  3. full user and developer documentation
  4. full source code for the stand-alone DSFTP program, supplied as an example of how to use the library

The documentation and the source code is in the download for those of you who want more details.

Read on for more details (click the link to the full article below).

Download: [DSFTP 1.9 for NDS]

DSDSFTP is a homebrew project by Bjoern Giesler. It started out as an FTP server for the Nintendo DS.

Recently, DSFTP 1.8 came out and it was a stand-alone FTP server (like the DSFTP 1.6) that also had a software component called libDSFTP. Now Bjoern Giesler has released an update with DSFTP 1.9.

It is still a stand-alone program that you can use as an FTP server on your DS. And it is still a software component that makes the lives of developers easy. As Bjoern Giesler describes it: “[You] add an FTP server to your own program with a couple lines of code. With this, you can speed up the build process radically, because you can upload the new version of your program to your own running program, and reboot it immediately. This can even be automated via the command line. No swapping of flash cards ever again!”

Furthermore, we’ve learned that DSFTP has been tested on SuperCard, M3, and GBAMP. This is a good thing to have cleared up, because when we reported on it earlier, it seemed that it had only been tested on SuperCard. DSFTP also uses REIN’s FAT library, so it should also work with MagicKey 2/3. However, booting is only supported on SuperCard as of now (we wonder if Bjoern Giesler has more in plan for future releases).

The download contains the following:

  1. the stand-alone DSFTP program in both .ds.gba and .nds formats
  2. the libDSFTP library and headers to integrate an FTP server into your own program
  3. full user and developer documentation
  4. full source code for the stand-alone DSFTP program, supplied as an example of how to use the library

Yes, the documentation and the source code is in the download for those of you who want more details.

Examples
Bjoern also gave some examples of how DSFTP works. To use DSFTP as a stand-alone server, a configuration file must be created at /data/settings/ftp.conf. Here is an example config file:

# Message of the day, displayed on connect
motd /ftp/motd.txt
# Where to store the log file
logfile /data/logs/ftp.log
# Log up to which level? (0-5)
loglevel 4

# Activate screensaver after 30 seconds
screensaver 30
# Wake screensaver up upon log message
wakeonlog false

# Define a new user: password, root/home, whether writing and booting is allowed
user bjoern
    pass whatever
    root /
    home /
    write true
    boot true
end user

user anonymous
    root /ftp/anonymous
    write false
end user

Once the config file exists, DSFTP can be started. You can connect to your DS with FireFTP, Internet Explorer, command-line FTP. Using DSFTP in your own software is also just as simple (well, “simple” if you understand it).

void mainloop(void)
   {
      BFTPServer server;

      // if you want to use a config file…
      BFTPConfigurator configurator(&server);
      configurator.configureFromFile(“/data/settings/ftp.conf”);

      // or if you want to add users by hand…
      server.addUser(“myusername”, “mypassword”);

      while(true)
      {
         // your own mainloop stuff
         // …
         server.handle();
         swiWaitForVBlank();
      }
   }

Download: [DSFTP 1.9 for NDS]

Add a Comment

Your email address will not be published. Required fields are marked *