joncampbell123 / dosbox-x

DOSBox-X fork of the DOSBox project
GNU General Public License v2.0
2.83k stars 383 forks source link

Does Dosbox-X support CD Audio directly from the CD? #2629

Open WhyIsntTouhouBuntuRealYet opened 3 years ago

WhyIsntTouhouBuntuRealYet commented 3 years ago

I'm using the SDL1 build of Dosbox-X on a Raspberry pi 4 8GB model with TwisterOS installed. I use the command "mount d /media/QUAKE101 -t cdrom -usecd 0 -ioctl" and get the message "MSCDEX installed: Limited support."

Whenever I do this, Quake struggles to even go past 5 frames per second, and I don't get any music. I type in "CD PLAY 2" in the console, but nothing happens.

What I'm trying to do is to play the music files directly off the CD so I don't have to take up precious space on my 16GB SD card. Am I doing something wrong?

Wengier commented 3 years ago

Is this the message you saw from the command?

MSCDEX: Mounted subdirectory: limited support

DOSBox-X does support CD Audio directly from the CD, but this feature may sometimes depend on your platform. Is the path /media/QUAKE101 indeed referring to a CD? If not, the above message will appear. Also, the "-ioctl" option may not be supported in all platforms, even though it should work on most systems, such as my own Windows system.

WhyIsntTouhouBuntuRealYet commented 3 years ago

Yes, it refers to a CD. I have an original Quake CD, version 1.0.1. Also, Dosbox slows down considerably whenever I use this command. Perhaps it's too taxing on the program.

I know it's not my Pi, because Quakespasm plays CD Audio perfectly. Maybe a future build can remedy this?

Wengier commented 3 years ago

I do not have TwisterOS to test myself, but the issue could be specific to this environment, or there is something in the said path which is not supported at this time. If I personally have such an environment I would be able to test it myself and see if there is anything to fix.

rderooy commented 3 years ago

As the message when mounting already hints at, it is a mounted directory, and therefore there will not be any CD Audio.

For there to be CD Audio, there should be a way to point DOSBox-X to the actual CD device, not the mounted directory. This will normally be something like /dev/sr0 (there is typically also a /dev/cdrom symlink). However that will not work, as there is no support in DOSBox-X to directly access a raw CD-ROM device on Linux.

The real solution is to convert the CD-ROM into a CUE/BIN image, and IMGMOUNT that.

WhyIsntTouhouBuntuRealYet commented 3 years ago

Is there a Dosbox build that CAN directly access the CD drive?

Wengier commented 3 years ago

@WhyIsntTouhouBuntuRealYet Yes, of course, although maybe not for specific platforms.

On Windows, a command like mount c d:\ -t cdrom -usecd 0 -ioctl should work just fine for CD drive D: for Windows builds.

On macOS, a command like mount c /Volumes/cddrive -t cdrom -usecd 0 -ioctl is supposed to work for CD drive /Volumes/cddrive too for macOS builds (just confirmed myself).

CD drives may be expected to work differently for different platforms.