Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

XCOPY doesn't preserve long filenames when copying files in DOS env #5196

Open
2 tasks done
rayrapetyan opened this issue Sep 5, 2024 · 4 comments
Open
2 tasks done
Labels

Comments

@rayrapetyan
Copy link

Describe the bug

XCOPY command replaces part of the filename with the "~" symbol for all files with long names it copies over.

Steps to reproduce the behaviour

  1. Mount CD ISO containing folder with long filenames as E: and FAT32 HDD image as D:
  2. While in DOS mode, run:
XCOPY E:\Game D:\Game /I /E /Y /H

Actual:
E:\Game\Loc35\001_ROD_01.WAV copied as D:\Game\Loc35\001_RO~3.WAV

Expected behavior

File E:\Game\Loc35\001_ROD_01.WAV should be copied as D:\Game\Loc35\001_ROD_01.WAV

What operating system(s) this bug have occurred on?

Debian Bookworm

What version(s) of DOSBox-X have this bug?

2024.03.01

Used configuration

[sdl]
autolock=true
output=opengl
showmenu=false

[dosbox]
title=Windows 98
memsize=128

[video]
vmemsize=8
vesa modelist width limit=0
vesa modelist height limit=0

[dos]
ver=7.1
hard drive data rate limit=0
floppy drive data rate limit=0

[cpu]
cputype=pentium_mmx
core=normal

[sblaster]
sbtype=sb16vibra

[fdc, primary]
int13fakev86io=true

[ide, primary]
int13fakeio=true
int13fakev86io=true

[ide, secondary]
int13fakeio=true
int13fakev86io=true
cd-rom insertion delay=4000

[ide, tertiary]
enable=true
int13fakeio=true
int13fakev86io=true
cd-rom insertion delay=4000

[ide, quaternary]
enable=true
int13fakeio=true
int13fakev86io=true
cd-rom insertion delay=4000

[ide, quinternary]
enable=true
int13fakeio=true
int13fakev86io=true
cd-rom insertion delay=4000
irq=9
io=0110
altio=011F

[render]
scaler=none

[autoexec]
IMGMOUNT C "C"
IMGMOUNT D "D"
IMGMOUNT E "E" -t iso
IMGMOUNT F "F" -t iso
BOOT C:
EXIT

Output log

No response

Additional information

No response

Have you checked that no similar bug report(s) exist?

  • I have searched and didn't find any similar bug report.

Code of Conduct & Contributing Guidelines

  • I agree to follow the code of conduct and the contributing guidelines.
@rayrapetyan rayrapetyan added the bug label Sep 5, 2024
@maron2000
Copy link
Contributor

XCOPY is imported from FreeDOS which doesn't support Long file names.
https://github.com/FDOS/xcopy

@rayrapetyan
Copy link
Author

I see, thanks. Do you know if there is a pure-DOS copy implementation supporting long file names?

@rayrapetyan
Copy link
Author

rayrapetyan commented Sep 5, 2024

Looks like LCOPY from LFN tools works as expected in dosbox-x with disabled virtual memory flag, but is there something else, maybe more stable and mature?
Also, since dosbox-x declares LFN support, why XCOPY was chosen?

@rayrapetyan rayrapetyan changed the title XCOPY doesn't preserve long filenames when copying from mounted CD iso to mounted FAT32 HDD img in dos mode XCOPY doesn't preserve long filenames when copying files in DOS env Sep 5, 2024
@rayrapetyan
Copy link
Author

Nope, LCOPY is failing to copy from mounted folder drives, it works only with image drives :(

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants