known·good

Notes / freedosqemumtcpftpwindows

FreeDOS 1.3 under QEMU on Windows 10: networking and mTCP FTP

· by shaun

FreeDOS 1.3 in QEMU refused to bring up networking ("QEMU network detected… Physical hardware networking is not supported"). Removing one guard line from FDNET.BAT and using a pcnet NIC fixed it; an FTP 530 error was a Windows folder permission.

Tested onWindows 10 host; QEMU (qemu-system-x86_64); FreeDOS 1.3; mTCP

Symptoms #

Networking did not come up at boot. FreeDOS printed:

textQEMU network detected.
Physical hardware networking is not supported at this time.

Later, mTCP's FTP.EXE could log in to an FTP server on the Windows host but then failed with 530 User cannot log in, home directory inaccessible.

Cause #

FreeDOS 1.3's network startup script (FDNET.BAT) skips driver loading when it detects QEMU. The 530 error came from the Windows FTP server: the anonymous user could not read the shared folder.

Fix #

Launch QEMU with an emulated AMD PCnet NIC and user-mode networking:

batqemu-system-x86_64 -m 150 -cpu 486 -rtc base=localtime ^
  -drive file=freedos.img,format=raw -net nic,model=pcnet -net user

In C:\FREEDOS\BIN\FDNET.BAT, comment out (or delete) the line that jumps past QEMU:

batREM if /i "%1" == "start" goto NoStartQEM

Check C:\FREEDOS\MTCP.CFG for sane settings (DHCP works with -net user). After a reboot the interface comes up.

For the FTP error, open the shared folder's Properties → Security on the Windows host and add the group Everyone with read/write access (or whatever account the FTP site maps anonymous users to).