Sega CD (Fusion) and Daemon Tools in Windows 10 issues.

gwdoiron

New member
Building up a new machine for the arcade cabinet. It is running Windows 10. Hyperlaunch 3 was having fits (hanging up the 2nd time I would launch an emulator), so I decided to move to RocketLauncher.
I had Daemon Tools Pro (7.0.0.0555) installed, to mount SegaCD images. However, Rocketlauncher complains that it isn't compatible and won't mount the images. This is strange, seeing as how Hyperlaunch 3.X would happily mount images by pointing it to the same DTAgent.exe file.
I then uninstalled it, and purchase Daemon Tools Lite (5.0.1.0407), with the Advanced Mounting feature. Rocketlauncher works with this, HOWEVER, DTLite insists on spinning a random device name each time you mount an image. Fusion unfortunately saves the device name (and bus identification) in the configuration file as the CDROM drive. Unfortunately, whenever you do a mount operation in Daemon Tools Lite (as Rocketlauncher must do), the device name changes, so Fusion never sees the correct CDROM drive.
Reverting to an older version of Daemon Tools is not a possibility, as Windows 10 blocks the installation as incompatible (and overriding this bricks your installation, as I found out).

Can we please get DTPro to be recognized by Hyperlaunch? It seems like it might be a pain in the rear to support DTLite, would require passing the bus ID and drive ID of the newly mounted image to the fusion.ini file. Plus, I have yet to set up the other CDROM system emulators, and I can easily see this happening again with a different emulator.

Thanks.
 

djvj

Administrator
Staff member
Developer
So you should have reported first before changing your DT version that it was not compatible as I could havelooked into making it so. Compatibility rests solely on what I had access to at the time.

Now that you changed to another version, you might as well stick with that. I have no idea what this "Advanced Mounting" feature is. It has never been brought up before and so many others are using DT w/o ever bringing up anything of the sort on Win 10. So something tells me you are not doing something right.

RL doesn't use device names to mount anything, so don't see why that would matter. Check your RL log and watch what RL sends to DT to see what I mean. If you have any other issues, you need to post a troubleshooting log.
 

gwdoiron

New member
1. I still have DTPRo installed in another machine, and can run diagnostics from there.
2. Advanced mounting is a DT Lite option which allows you to specify mounting points and device names. This is something new in the Windows 10 version, previously DTLite operated like DTPro in that you could do this with the basic program.
3. I believe the issue may be related to a change they made to DTLite for Windows 10 where it automatically deletes the device when you eject an image.. Unfortunately, changing the device name throught the DT UI only sticks for as long as that particular image is mounted. When mounting an image, it creates a drive with a random device name. The device name is part of the CDROM identification used by Fusion (along with the bus identification); if it doesn't match what is stored in the fusion.ini file, it won't attempt to access that device. You can get around it by manually selecting the new CDROM identifier through the Kega menus, but this is not really a good option in a cabinet.
4. DTPro does not suffer from ever-changing device names, and would be a better solution. (Viewed another way, DTLite has become a less ideal solution)
5. I never implied that RL was doing something wrong (other than complaining that DTPro wasn't supported). I was asking if it was possible to whitelist it.
6. In any event, I worked around the problem this weekend by spending 12 hours converting all the images into .cue/.bin format, disabling Daemon Tools support for Fusion in RocketLauncherUI and using Fusion's native .cue/.bin image support instead of a DT Cdrom drive.
 

djvj

Administrator
Staff member
Developer
Thank you for the detailed information, stuff like this helps a ton.

Yea if this is only affecting Win10, I wouldn't know unless someone reported this exact issue which nobody has. I never used Win10 yet, nor do I own DT, so I can't speak much on compatibility and headaches that may arise. The only win10 experience I have is what someone reported and is noted on the VD section on the wiki.

Can you give me an example of one of these device names? and what Fusion is saving in its ini? They match up letter for letter? If so, there may be a way to retrieve that name so support for this can be added.
 

gwdoiron

New member
So, I'll mount an image: Afterburner 3.
I go into Fusion, and assign the Daemon Tools drive (F:).
First-DR-run.png
Here's what gets written to the relevant section of FUSION.INI
;---------------------------------
; Mega CD/Sega CD Specific
;---------------------------------

LastSegaCDImage=D:\CHUCK_ROCK_2.CUE
SCDUSABIOS=D:\Hyperspin\Emulators\Fusion\SCD_110.BIN
SCDJAPBIOS=
SCDEURBIOS=
SCDStateFiles=D:\Hyperspin\Emulators\Fusion\STATE
DefaultDrive=5:0:0 DiscSoft M3OGETQB219 1.0

Now, I eject the image from Explorer, and mount Afterburner 3 again.
I boot up FUSION, and look at the CD Drive menu:
Second-DR-run.png
Notice that the device name has changed (even though the BUS ID hasn't), and no CDROM drive is checked off.
If I exit out now without choosing a new cdrom drive, the .ini file looks like this:

;---------------------------------
; Mega CD/Sega CD Specific
;---------------------------------

LastSegaCDImage=D:\CHUCK_ROCK_2.CUE
SCDUSABIOS=D:\Hyperspin\Emulators\Fusion\SCD_110.BIN
SCDJAPBIOS=
SCDEURBIOS=
SCDStateFiles=D:\Hyperspin\Emulators\Fusion\STATE
DefaultDrive=X:X:X None

Now, I'll re-open fusion, select the new CDROM drive, and exit.
;---------------------------------
; Mega CD/Sega CD Specific
;---------------------------------

LastSegaCDImage=D:\CHUCK_ROCK_2.CUE
SCDUSABIOS=D:\Hyperspin\Emulators\Fusion\SCD_110.BIN
SCDJAPBIOS=
SCDEURBIOS=
SCDStateFiles=D:\Hyperspin\Emulators\Fusion\STATE
DefaultDrive=5:0:0 DiscSoft 7GUH5RRXHLP 1.0

And now I'll open fusion again:
Fourth-DR-run.png
This time, when I didn't dismount/remount, the device name doesn't change, and Fusion kept the CDROM drive assignment.

So, what happens, is I'll start up fusion manually with a mounted disk, set the CDROM drive, and exit.
The instant RocketLauncher uses DT to mount an image, the CDROM drive name gets changed.
RocketLauncher then launches Fusion with the correct command line arguments. But the default CDROM drive has changed, and Fusion thinks it has no CD to boot from. Your press start, and are treated to the SegaCD CDrom player screen with no disc.

As I said before, this behavior is new with the Windows 10 compatible version of DT Lite. On Windows 7, DT never did this, and attempting to install the old version of DT on Windows 10 prevents Windows from even starting, forcing a reinstall (if you're foolish enough to force Windows to install it despite the popup warning that it isn't compatible).
 
Last edited:

kylecp1979

New member
RL Member
I run sega cd with fusion on windows 10 no problem go to your rocketlauncher settings and turn the virtual drive to false I don't think you need daemon tools for too many systems on rocketlauncher the only system I use it for is commodore amiga cd32 so far.
 

teeedubb

New member
Supporter
RL Member
Did you ever find a solution to the changing cdrom device name? I'm using win 10 and DT lite 10 and having a very similar issue - a created scsi virtual drive does not remain installed after a reboot. That in itself isnt a problem, its easy to add one on boot (RL doesnt seem to create one if the option is enabled though, I can look into this some more if wanted), but the device name changes so when starting a sega cd game I end up at the music player until I change the device id in the fusion gui. On a side note, if I manually add a drive the device id doesnt change when unmounting a disc.

Im thinking of using a AHK script to get the id via devcon.exe and updating the fusion.ini that way, but though Id post here incase someone has another solution.
 
Top