Releases: Projanglez/FTP4DOS
Releases · Projanglez/FTP4DOS
Release list
FTP4DOS v1.0.0
The official 1.0.0 release. Includes last optimizations and much of the feedback in the VOGONS thread — special thanks to fly_indiz and ntalaec.
Fixed
- Long file names work in more setups. The v0.9.6 LFN support had only ever been exercised on plain DOS: detection now uses the documented Get Volume Information call instead of an undocumented probe that only Windows 9x answers (fixes DOSLFN on MS-DOS 7.x), the find-data record layout and attribute mask were wrong (garbage names, missing directories), and all file operations now route through the LFN API or the 8.3 alias. Enter long-named directories, view/copy/delete/rename long-named files, download to long names, create long-named directories — on Windows 9x DOS, MS-DOS 7.x, and DOSLFN.
- Steadier download speeds. Disk writes no longer starve the network stack: the file buffer is flushed in slices with packet processing in between, avoiding the burst/stall sawtooth seen on real hardware.
- Cancelling a download is instant instead of freezing the progress dialog for up to 10 seconds — ABOR is now sent while the data connection is still open, mirroring the upload path.
- Control-connection resync. Stale replies left over from aborted or timed-out transfers no longer desync later commands (the reported "PASV refused (257)"). A server-side idle timeout (421) now cleanly reports "connection lost" instead of failing on the next command.
- Full screen mode fix The full available space is now used for displaying long file names in full screen mode
- Minor bugfixes: UTF-8 remote paths are codepage-converted in the pane header (file lists already were), and the cursor is correctly reselected after leaving a UTF-8-named directory, Deterministic 8.3 download names for long remote names, Move+Skip no longer loses files, overflow guard for >4 GB transfer counters.
New
/SITESswitch: open the site manager directly on startup.
Downloads
FTP4DOS.EXE— the DOS executable.ftp4dos-mtcp-src-2025-01-10.zip— unmodified mTCP source (Michael B. Brutman, GPLv3), provided to satisfy the license; generated from the pinned submodule commitd68948fand unchanged in content since v0.9.5.
Full release history: HISTORY.md
FTP4DOS v0.9.6
Feature release, driven by feedback in the VOGONS thread — thanks to mbbrutman, ntalaec, Falcosoft, Grzyb and fly_indiz.
New
- Faster transfers + tunable buffers. Downloads now collect received data in a dedicated file buffer and write to disk in large blocks instead of many small per-packet writes — a big speedup on machines where small disk writes are expensive (uploads read in the same large blocks). The sizes are configurable in your mTCP configuration file (advanced, totally optional — the defaults work fine out of the box):
FTP4DOS_TCP_BUFFER(512–16384, default 16384) andFTP4DOS_FILE_BUFFER(512–32768, default 8192). The mTCP FTP client settingsFTP_TCP_BUFFER/FTP_FILE_BUFFERare read as fallbacks, so an already tunedMTCP.CFGjust works. See the README's "Performance tuning" section. - UTF-8 file name support (RFC 2640). Names from modern servers are converted to the active DOS codepage (CP437, CP850/858, CP866; override with
FTP4DOS_CODEPAGE) for panel display and local file names, while the original name is still used on the wire. Uploads to servers that announceUTF8in FEAT are encoded back to UTF-8 (OPTS UTF8 ON). - Long file names (LFN) in the local panel on systems with an LFN API (Windows 9x DOS, MS-DOS 7.x, or DOSLFN on plain DOS): long names are listed and handled natively.
Changed
- mTCP is now a git submodule of the official repository https://github.com/mbbrutman/mTCP, pinned to the
2025-01-10release tag — replacing the manually unpacked source zip (verified source-identical). Build withgit clone --recursiveorgit submodule update --init.
Downloads
FTP4DOS.EXE— the DOS executable.ftp4dos-mtcp-src-2025-01-10.zip— unmodified mTCP source (Michael B. Brutman, GPLv3), provided to satisfy the license; generated from the pinned submodule commitd68948fand unchanged in content since v0.9.5.
FTP4DOS v0.9.5a
Maintenance release over v0.9.5.
Fixes
- Downloading files with multi-dot / long names (e.g.
apack-1.00.zip) no longer fails. The local target is now mapped to a valid DOS 8.3 name (e.g.APACK-1~1.ZIP) instead of failing to create the file. Applies to both the F5 single-file download and batch copy. - Ctrl+C now works as a shortcut for "compare panels" (the numpad
+action). The keyboard is read via the BIOS (INT 16h), so Ctrl+C is no longer swallowed by DOS and no longer echoes a stray^C.
Changes
- Date and Time sorting merged into one "Date/Time" criterion. A file timestamp is a single entity (date major, time minor); the old separate, time-of-day-major "Time" sort was removed. Sort menu (Alt+F3) now lists Name, Extension, Size, Date/Time, Default.
- Minor F1 help text wording/consistency tweaks.
Downloads
FTP4DOS.EXE— the DOS executable.ftp4dos-mtcp-src-2025-01-10.zip— unmodified mTCP source (Michael B. Brutman, GPLv3), provided to satisfy the license; unchanged since v0.9.5.
FTP4DOS v0.9.5
Feature release over v0.9.4a.
New
- Site manager — save and load multiple named FTP connection profiles (host, port, user, password, start directory) in
FTP4DOS.SIT. Open it from the [Manage...] button in the F2 connect dialog: Ins = new (pre-filled from the current fields), F4 = edit, Del = delete; Enter connects. - Large remote directories (
/EXMEM) — by default a listing holds 512 entries and a popup warns when a directory has more. Start with/EXMEM(auto-detect) or/EXMEM:XMS//EXMEM:EMSto store the remote list in extended (XMS) or expanded (EMS) memory instead, lifting the limit to several thousand entries. A compact conventional sort-key cache keeps sorting fast. - Search / jump-to-name — Alt+F7 or Ctrl+F: type a prefix and jump to the next matching entry, wrapping to the top.
- Long remote file names — names longer than the 8.3/40-char column are kept in full and used for transfers; Alt+F2 "Detail" shows the complete name.
- Full-screen toggle — Alt+F8 makes the active panel span all 80 columns so long remote file names are readable; Tab switches which panel is maximized.
- Per-session conveniences — remembered per-pane sort order, an FTP start directory in the connect dialog (and
/D:DIR), Ctrl+A (Detail) and Ctrl+R (Refresh) shortcuts, and F9 = Refresh.
Fixes
- Entering a remote directory whose name exceeds 39 characters no longer fails with
550; the cursor stays put when a directory change fails. - Connect dialog: Left/Right now move between buttons, and labels/titles are clearer.
Assets
FTP4DOS.EXE— the DOS executable (real-mode 386, large model).ftp4dos-mtcp-src-2025-01-10.zip— the official mTCP source (version 2025-01-10) this build links against, provided per GPLv3 §6.
FTP4DOS v0.9.4a
Maintenance/feature update over v0.9.4.
Changes
- Remote panel: the
..(parent) entry is no longer shown at the FTP root directory, where there is no parent. - New — Alt+F2 "Detail": popup showing the selected entry's full filename (the panel column truncates long FTP names) plus its size in Bytes, KB, MB and GB.
- New — Alt+F5 "Refresh": re-read the active panel's directory, e.g. to pick up a file newly added on the FTP server. Both labels appear on the function-key bar while Alt is held.
- File sizes are now displayed consistently throughout the app using the classic 1024-based KB/MB/GB convention.
Assets
FTP4DOS.EXE— the DOS executable (real-mode 386, large model).ftp4dos-mtcp-src-2025-01-10.zip— the official mTCP source (version 2025-01-10) this build links against, provided per GPLv3 §6.
FTP4DOS v0.9.4
FTP4DOS v0.9.4
Transfer
- Live telemetry: current/average speed, ETA per file and for the whole batch
- Pause (P) and cancel (ESC) during transfers
- Copy/Move/Delete confirm dialogs now show recursive file/directory counts and total size
Display & i18n
- Compact size display for large files (M/G units), no more column overflow
- Locale-aware number/date/time formatting from the DOS country block
New features
- Alt+F9: file checksum (CRC32 + MD5), local and remote, optional save-to-file
- Alt+F3: configurable per-panel sorting (name/extension/size/date/time, ascending/descending)
Dialogs & input
- Comfortable input fields everywhere (cursor movement, Home/End, Del, mid-line insert)
- F1 help texts cleanup
Build: Open Watcom (16-bit real-mode DOS). mTCP official 2025-01-10 (unchanged).
Source of the bundled mTCP: ftp4dos-mtcp-src-2025-01-10.zip (GPLv3 §6).
FTP4DOS v0.9.2
- Renamed NCFTP386 → FTP4DOS (thanks to Yoghoo for the suggestion!)
- Swap panels with Ctrl+U (remembered across launches)
- Move with F6 (copy + delete source, recursive); rename moved to Alt+F6
- Confirmation dialogs default to Yes
- FTP panel preserves the server's original (case-sensitive) file names
- Monochrome (MDA/Hercules) display support; /MONO and /COLOR overrides
- ALT command bar (Norton-style): Alt+F1 Drive, Alt+F6 Rename
v0.9.1
Changes since v0.9.0
- Migrated from retrohun fork to official mTCP 2025-01-10 (brutman.com, GPLv3)
- Translated all source code comments to English
Assets
NCFTP386.EXE- DOS binary (8086/386+ compatible)ncftp386-mtcp-src-2025-01-10.zip- mTCP 2025-01-10 source code (GPLv3 §6)
v0.9.0 - First public release
Norton Commander-style dual-panel FTP client for MS-DOS on real x86 hardware, built with Open Watcom and mTCP (https://github.com/retrohun/mTCP).
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
- Remote view (F3) downloads to a temporary file first, then opens the viewer
- Edit local text files with F4 — minimal full-screen editor (~32 KB, local only)
- FTP connection keepalive: sends NOOP every 60 s to prevent server idle timeouts
- Bilingual German/English UI (auto-detected from DOS country setting, or forced on the command line: NCFTP386 /L:EN)
- Tested on real 386 hardware with a genuine LAN card
Requirements
- MS-DOS 5.x (or higher/compatible), 80×25 text mode
- Packet driver + mTCP configuration file (MTCPCFG env variable) + valid IP
Assets
- NCFTP386.EXE - Ready-to-run DOS binary
- ncftp386-mtcp-src-ad9cd0f.zip - mTCP source (GPLv3 §6 — corresponding source for the statically linked mTCP library)