VOGONS


First post, by Projanglez

User metadata
Rank Newbie
Rank
Newbie

Hi all,

I'd like to share a small project I've been working on: NCFTP386, a dual-panel FTP client for MS-DOS in the spirit of the classic Norton Commander.

Left panel shows the local DOS filesystem, right panel connects to an FTP server - fully keyboard-driven. It's built on Michael Brutman's excellent mTCP stack, so it runs on real vintage hardware. I've tested it on a genuine 386DX-40, with MS-DOS 6.22 and an NE2000 compatible NIC, and it's been stable and reliant so far.

x75HC3m.png

A few features:

  • Two panels: local (DOS) and remote (FTP, passive mode)
  • Copy in both directions (F5), including recursive directory trees
  • Multiple selection with the Ins key (Norton style) for copy/delete
  • Create (F7), rename (F6), recursive delete with pre-count confirmation (F8)
  • Navigate directories; view files with F3 (or Enter) — up to 32 KB displayed
  • Text file viewer and minimal editor (editing is local only)

It's compiled with Open Watcom for 8086+ and real-mode DOS. Source is GPLv3 (mTCP is statically linked), and the repo includes a build guide plus the exact mTCP commit it was tested against:

https://github.com/Projanglez/ncftp386

Feedback, bug reports, and testing on other hardware are very welcome. Hope someone here finds it useful!

Note: This application was developed with the help of an AI coding assistant (Claude Code).

Reply 1 of 17, by mbbrutman

User metadata
Rank Oldbie
Rank
Oldbie

Hi,

It's great to see people making new tools but I want to point out that you are using an 7 year old version of mTCP as your base, and not even the official version of mTCP. It would benefit you to provide a link to the real mTCP home page (http://www.brutman.com/mTCP/mTCP.html) and how to download the current mTCP to use it.

I freely admit that I don't use github for this project, and that is causing some friction for people who like to use github. I think there are enough people using mTCP now as their base where I'll have to break down and create an official repo on github. But please, don't use ancient code - there have been a lot of changes since then.

Mike

Reply 2 of 17, by Grzyb

User metadata
Rank l33t
Rank
l33t

Oh dear, for so many years people have been longing for such an utility, but there was nothing...
Suddenly, there are TWO such programs!

Anyway, "you can never have too much of a good thing" - I'm going to give this thing a try, too.
As of yet, I can only complain about the misleading name - looks like a 386+ version of this classic: http://www.ncftpd.com/ncftp/

In 2003, I voted in favour of joining the European Union. However, due to recent developments - especially the restrictions on cash usage - I'm hereby withdrawing my support. DOWN WITH THE EU!

Reply 3 of 17, by Projanglez

User metadata
Rank Newbie
Rank
Newbie
mbbrutman wrote on 2026-06-15, 22:06:
Hi, […]
Show full quote

Hi,

It's great to see people making new tools but I want to point out that you are using an 7 year old version of mTCP as your base, and not even the official version of mTCP. It would benefit you to provide a link to the real mTCP home page (http://www.brutman.com/mTCP/mTCP.html) and how to download the current mTCP to use it.

I freely admit that I don't use github for this project, and that is causing some friction for people who like to use github. I think there are enough people using mTCP now as their base where I'll have to break down and create an official repo on github. But please, don't use ancient code - there have been a lot of changes since then.

Mike

Thanks for the info! I will definetly put this on my todo list.

Grzyb wrote on 2026-06-15, 22:08:
Oh dear, for so many years people have been longing for such an utility, but there was nothing... Suddenly, there are TWO such p […]
Show full quote

Oh dear, for so many years people have been longing for such an utility, but there was nothing...
Suddenly, there are TWO such programs!

Anyway, "you can never have too much of a good thing" - I'm going to give this thing a try, too.
As of yet, I can only complain about the misleading name - looks like a 386+ version of this classic: http://www.ncftpd.com/ncftp/

Point taken - thanks for the feedback!

Reply 4 of 17, by Grzyb

User metadata
Rank l33t
Rank
l33t

Can't get it to work...

MTCPCFG var is set
PD is loaded
DHCP has been run
MTCP utilities work fine
FTP2P works fine

running this:

The attachment 1.png is no longer available

ends up like this:

The attachment 2.png is no longer available

I'm also attaching my config file...

In 2003, I voted in favour of joining the European Union. However, due to recent developments - especially the restrictions on cash usage - I'm hereby withdrawing my support. DOWN WITH THE EU!

Reply 5 of 17, by Projanglez

User metadata
Rank Newbie
Rank
Newbie
Grzyb wrote on 2026-06-17, 05:18:
Can't get it to work... […]
Show full quote

Can't get it to work...

MTCPCFG var is set
PD is loaded
DHCP has been run
MTCP utilities work fine
FTP2P works fine

running this:

The attachment 1.png is no longer available

ends up like this:

The attachment 2.png is no longer available

I'm also attaching my config file...

Many thanks for testing this. Really appreciated! Your config file looks good, and getting an IP via DHCP is a solid proof that mTCP is working.

I have just finished the migration from retrohun fork to Mike's official mTCP 2025-01-10 source. I have also updated my mTCP stack on my DOS machine to the lastest version (2025-01-10).
Would you mind testing the latest release, and please let me know which mTCP version you use?

If the problem still persists, I'll add some debug output / log to the app, so we can track the problem down.

Reply 6 of 17, by Projanglez

User metadata
Rank Newbie
Rank
Newbie
Grzyb wrote on 2026-06-17, 05:18:
Can't get it to work... […]
Show full quote

Can't get it to work...

MTCPCFG var is set
PD is loaded
DHCP has been run
MTCP utilities work fine
FTP2P works fine

running this:

The attachment 1.png is no longer available

ends up like this:

The attachment 2.png is no longer available

I'm also attaching my config file...

Another idea: Did you try starting without command line parameters, and then entering connection parameters after pressing F2?

Reply 7 of 17, by BloodyCactus

User metadata
Rank Oldbie
Rank
Oldbie

considering ncftp is a real thing and has been around for decades, you probably need to change your apps name...

--/\-[ Stu : Bloody Cactus :: [ https://bloodycactus.com :: http://kråketær.com ]-/\--

Reply 8 of 17, by Grzyb

User metadata
Rank l33t
Rank
l33t
Projanglez wrote on 2026-06-17, 12:03:

Would you mind testing the latest release, and please let me know which mTCP version you use?

OK, the new release seems to work fine.
I'm using mTCP version Jan 10 2025.

As of yet, two quick observations:
- You follow the classical NC convention: lowercase regular files, UPPERCASE DIRECTORIES. Fine for local DOS filesystem, but highly controversial for FTP servers - they usually follow the Unix convention, ie. case-sensitive.
- I'm used to having local HDD in the right panel - consider the "Swap panels" (Ctrl-U) option.

In 2003, I voted in favour of joining the European Union. However, due to recent developments - especially the restrictions on cash usage - I'm hereby withdrawing my support. DOWN WITH THE EU!

Reply 9 of 17, by Projanglez

User metadata
Rank Newbie
Rank
Newbie
BloodyCactus wrote on 2026-06-17, 12:19:

considering ncftp is a real thing and has been around for decades, you probably need to change your apps name...

Happy to change the name to something not to be confused with existing applications.

How about „TwinFTP“ as a name for the EXE and „TwinFTP for DOS“ as long name?

Reply 10 of 17, by Yoghoo

User metadata
Rank Oldbie
Rank
Oldbie
Projanglez wrote on Yesterday, 12:27:
BloodyCactus wrote on 2026-06-17, 12:19:

considering ncftp is a real thing and has been around for decades, you probably need to change your apps name...

Happy to change the name to something not to be confused with existing applications.

How about „TwinFTP“ as a name for the EXE and „TwinFTP for DOS“ as long name?

Seems TwinFTP was used as well as a Windows FTP server program. What about ftp4dos?

Reply 11 of 17, by Projanglez

User metadata
Rank Newbie
Rank
Newbie

I like the name FTP4DOS, but doesn‘t this somehow sound like something related to the 4DOS command processor?

Reply 12 of 17, by Yoghoo

User metadata
Rank Oldbie
Rank
Oldbie
Projanglez wrote on Yesterday, 13:59:

I like the name FTP4DOS, but doesn‘t this somehow sound like something related to the 4DOS command processor?

Is that a bad thing? I read it as FTP for DOS. Anyway it's not used as far as I know but you can also name it FTP2DOS of course. 😜

Reply 13 of 17, by Grzyb

User metadata
Rank l33t
Rank
l33t

Perhaps NFTP, for "Nortonish File Transfer Program"?

BTW: the general term for Norton Commander clones is "Orthodox File Managers", so another idea would be OFTP, for "Orthodox File Transfer Program".

Edit:

There was already a client named NFTP:
http://www.ayukov.com/nftp/
https://github.com/OS2World/APP-INTERNET-NFTP
...but long dead, rotten, and forgotten.

OFTP also exists:
https://en.wikipedia.org/wiki/OFTP
...but it's a completely different thing, and very niche.

Overall, I don't think any of these two options would cause confusion.

In 2003, I voted in favour of joining the European Union. However, due to recent developments - especially the restrictions on cash usage - I'm hereby withdrawing my support. DOWN WITH THE EU!

Reply 14 of 17, by Grzyb

User metadata
Rank l33t
Rank
l33t

Two more things:
- Confirmation dialogs default to "No", which is weird - in other programs they default to "Yes" even for operations like "Delete".
- When started in video mode 7 ("mode mono"), the client switches it to mode 3, so I expect it to fail on MDA/Hercules. It would be nice to support mono displays as well!

In 2003, I voted in favour of joining the European Union. However, due to recent developments - especially the restrictions on cash usage - I'm hereby withdrawing my support. DOWN WITH THE EU!

Reply 15 of 17, by leileilol

User metadata
Rank l33t++
Rank
l33t++
BloodyCactus wrote on 2026-06-17, 12:19:

considering ncftp is a real thing and has been around for decades, you probably need to change your apps name...

seems to be a trend, like there's a slop 'networkmanager' out there that'll bring confusion with the network-manager everyone uses, so lines up with the grand markov chain

apsosig.png
long live PCem
FUCK "AI". It is a tool of fascism. We do not need it. We do not use it.

Reply 16 of 17, by Projanglez

User metadata
Rank Newbie
Rank
Newbie

I think I‘ll be going with ftp4dos… This somehow nails it.

Reply 17 of 17, by Grzyb

User metadata
Rank l33t
Rank
l33t

I can upload a file with F5, and then delete the source with F8.
But nothing happens when I try to do both with F6...

In 2003, I voted in favour of joining the European Union. However, due to recent developments - especially the restrictions on cash usage - I'm hereby withdrawing my support. DOWN WITH THE EU!