dosemu2 / comcom64

64bit command.com
https://github.com/dosemu2/comcom32/
GNU General Public License v3.0
32 stars 5 forks source link

xcopy not replicating original dos behaviour and dir not accepting parameters #61

Closed haenschen closed 2 years ago

haenschen commented 2 years ago

Not sure if this is more of an freedos-utils problem. Running pre9 (can update to devel if needed) with fdpp and comcom32 and install-freedos. When using freedos and doing xcopy test1\*.* test2\*.* /s xcopy will ask me

Does *.* specify a file name
or a directory name on the target
(F = file, D= directory)?

while the MS-DOS xcopy will just copy the files. Also, the xcopy from the Freedos 1.0 binaries which were former required when building dosemu (http://dosemu.sourceforge.net/bleeding/) works fine. The new behaviour breaks some old applications which copy files during an installation routine and redirect the xcopy output to nul, leaving the user with a black screen.

Furthermore, how can I replace the existing xcopy and make sure dosemu uses my old one? I tried replacing the .exe in C:\bin directory, putting the xcopy.exe in the program directory and also deleting all PATH variables - nothing was working, it was always calling a different xcopy, I had to rename the xcopy.exe and call the new name manually to try to reproduce it. xcopy_working_old.zip

In addition to that, dir doesn't accept parameters for me. No dir /p, dir /? etc.

stsp commented 2 years ago

Also, the xcopy from the Freedos 1.0 binaries which were former required when building dosemu

When was such a requirement?

while the MS-DOS xcopy will just copy the files.

We have xcopy in comcom32 too. So could you please delete freedosish xcopy and try then?

stsp commented 2 years ago

In addition to that, dir doesn't accept parameters for me. No dir /p, dir /? etc.

This may be a comcom32 deficiency.

haenschen commented 2 years ago

Also, the xcopy from the Freedos 1.0 binaries which were former required when building dosemu

When was such a requirement?

For me it was the easiest way to have freedos preinstalled when installing dosemu :)

We have xcopy in comcom32 too. So could you please delete freedosish xcopy and try then?

I uninstalled freedos rmfdusr and did the test again, same result. To be honest, I think it is and was always using the comcom32 xcopy and not the freedos xcopy despite xcopy being in C:\bin and defined as PATH. I tried again with the freedos 1.3 xcopy (being renamed as zcopy so I can make sure dosemu is using the right one) and it works.

stsp commented 2 years ago

It seems you can do xcopy /i to suppress the question. Please check if that works as expected and I'll make it a default.

haenschen commented 2 years ago

It seems you can do xcopy /i to suppress the question. Please check if that works as expected and I'll make it a default.

Works as expected

stsp commented 2 years ago

So fixed then.