Jump to content

All my products and services are free. All my costs are met by donations I receive from my users. If you enjoy using any of my products, please donate to support me. Thank you for your support. Tom Speirs

Patreon


Adultery

Recommended Posts

Hi Adultery, thanks for this plugin it has helped me debug my issue with GameEx failing to see my virtual drive.

I have a suggestion and a possible bug.

I didn't find the plugin the easiest to work out.

From your initial post I thought that I replace the command in Setup Wizzard with [DTLOADER] then add my own command to your plugin config.

This is where I think there is a bug. When you type something in your mount command and click save, nothing is saved.

Turns out that it doesn't work this way anyway so it's not an issue :) but maybe you could update the plugin config screen to show an example of how to use the plugin. I'm sure people that don't visit the forum could be trying to use your plugin but have no idea where to start so just give up.

Also maybe you could let Tom know that version 1.07 is available as it is still 1.06 that is bundled with GameEx and it doesn't work at all.

Anyway thanks for this really handy plugin

Stu

Link to comment
Share on other sites

I'm not sure what you mean, can you be a little more specific?

The plugin isn't made to work with the ROMs in folders option in GameEx, so this is less a bug and more a flaw by design. I'm not sure if there is a graceful way to handle this option but I will look into it.

Link to comment
Share on other sites

What I'm trying to say is I have no idea what the "MOUNT COMMAND" box is for but what I have noticed is that if you type something into it and press "SAVE" it doesn't save. Maybe this isn't a bug but seems strange to have a text box but not accept any input maybe it should be disabled if that's the case.

When I first ran the plugin I had no idea what to do as I didn't see any way to tell GameEx to use the plugin for a particular system, I had to search the forum to find the answer so I think you should have an example on the plugin config screen itself.

As for the roms in folders I wouldn't waste any time on it. I don't think its an issue you can do anything about. Tom needs to send you the full path to the ROM being loaded not "ROM FOLDER" + "ROM NAME" as this is leaving out the subfolder.

Unless Tom already passes this information, it's been that long since I created a plugin for GameEx that I can't remember. I assume he doesn't though as his own virtual drive implementation seems to be using "ROM FOLDER" + "ROM NAME" instead the full path.

Stu

Link to comment
Share on other sites

Ahh I got ya.

It's possible there is a bug there. Traditionally, you just add the loader command to the system setup in GameEx and enable the plugin. So like the actual emulator's command line in the GameEx setup wizard might look something like this:

Command=Kega.exe -scd [DTLoader]

No need for additional setup or mount/unmount commands to be entered manually unless you're either using an unsupported loader or you installed your iso loader in an unusual spot. I will look into the commands not being saved, although that really only needs to be used in rare cases anyways.

Using the plugin for a standard loader doesn't need these commands so the example wouldn't help.

As I stated before, it doesn't support ROMs in folders although I may figure out a way to add it in.

No, Tom doesn't pass the subfolder in the ROM path, I will have to do a scan myself.

It's pretty clear on the main page that the best and easiest way to use the plugin is to just add the command to the command line, as outlined in the first post. You're making it way too complicated on yourself since aside from having them in folders it's kind of like a touchless automatic thing.

Link to comment
Share on other sites

Updated to 1.0.8:

  • Added support for GameEx's "Roms In Subfolders" option
  • Added better handling for user configuration errors in the manual loader configuration options

Get the update at the download portal, or visit the first post for more info. :)

  • Like 1
Link to comment
Share on other sites

I wasn't going to add it until stu pointed out that GameEx's native dtools support doesn't provide this functionality at all, so I think I found a suitable way to handle it. I'd be interested in hearing how it works, I don't use this configuration on any of my emulators and can't test it, but it should work just fine.

It should also be noted that the problem stu mentioned about it not saving was because he attempted to save it without an unmount command, so the configuration will now let you know if and why it didn't save that setting and what you need to do to fix it.

I hope this helps users with configurations outside the scope of GameEx's abilities.

Link to comment
Share on other sites

Hate to be the bringer of bad news but I'm afraid the roms in subfolder isn't working.

I tested with Die Hard Arcade which is in the USA folder but your plugin has picked the EURO folder

24/09/2013 20:30:53 : Virtual Drive Loader (Version: 1.0.8)24/09/2013 20:30:53 : 13.16 INITIALIZED OK!: GameEx24/09/2013 20:30:53 : LOAD XML: E:\GameEx\PLUGINS\DT Loader\Settings.xml24/09/2013 20:30:53 : XML: XML file was loaded OK!24/09/2013 20:30:53 : RESULT: XML(EXE_PATH) - C:\Program Files (x86)\DAEMON Tools Lite\DTLite.exe24/09/2013 20:30:53 : INIT PLUGIN: Initialization completed!24/09/2013 20:31:32 : CL IN: ssf.exe [dtloader]24/09/2013 20:31:32 : Command switch detected! Launching!24/09/2013 20:31:32 : DT MOUNT (CL): EXE IN: C:\Program Files (x86)\DAEMON Tools Lite\DTLite.exe24/09/2013 20:31:32 : DT MOUNT (CL): ARG IN: -mount 0, "[rompath]\[romfile]"24/09/2013 20:31:32 : DT MOUNT (CL): CL: ssf.exe24/09/2013 20:31:32 : 7-ZIP: Checking for 7-zip...24/09/2013 20:31:32 : 7-ZIP: 7-zip check completed successfully!24/09/2013 20:31:32 : ROMS IN FOLDERS: Checking for ROMs In Folders...24/09/2013 20:31:33 : ROMS IN FOLDERS: ROMs In Folders setting found! Setting up ROM path...24/09/2013 20:31:33 : ROMS IN FOLDERS: subfolder=E:\Sega Saturn\Roms\EURO
Link to comment
Share on other sites

I suppose the file names are both exactly the same? Just in different folders?

I'm not sure how I could possibly distinguish which is which if that's the case, based on what GameEx sends me. If that exact file name exists in multiple folders, there's no way I can possibly know which one you're running, and I really don't know what you would expect the plugin to do aside from trying to guess which one you want to play.

If it's not the case then it would be a bug, but I think this is the reason.

Link to comment
Share on other sites

Ahh ok, thanks for the report Stu. :)

I'll look into this right now. I probably just made a mistake in the search algorithm. Hang tight. :)

Link to comment
Share on other sites

you're almost there

25/09/2013 19:53:26 : Virtual Drive Loader (Version: 1.0.8)25/09/2013 19:53:26 : 13.16 INITIALIZED OK!: GameEx25/09/2013 19:53:26 : LOAD XML: E:\GameEx\PLUGINS\DT Loader\Settings.xml25/09/2013 19:53:26 : XML: XML file was loaded OK!25/09/2013 19:53:26 : RESULT: XML(EXE_PATH) - C:\Program Files (x86)\DAEMON Tools Lite\DTLite.exe25/09/2013 19:53:26 : INIT PLUGIN: Initialization completed!25/09/2013 19:55:26 : CL IN: ssf.exe [dtloader]25/09/2013 19:55:26 : Command switch detected! Launching!25/09/2013 19:55:26 : DT MOUNT (CL): EXE IN: C:\Program Files (x86)\DAEMON Tools Lite\DTLite.exe25/09/2013 19:55:26 : DT MOUNT (CL): ARG IN: -mount 0, "[rompath]\[romfile]"25/09/2013 19:55:26 : DT MOUNT (CL): CL: ssf.exe25/09/2013 19:55:26 : 7-ZIP: Checking for 7-zip...25/09/2013 19:55:26 : 7-ZIP: 7-zip check completed successfully!25/09/2013 19:55:26 : ROMS IN FOLDERS: Checking for ROMs In Folders...25/09/2013 19:55:26 : ROMS IN FOLDERS: ROMs In Folders setting found! Setting up ROM path...25/09/2013 19:55:26 : ROMS IN FOLDERS: scanning=E:\Sega Saturn\Roms\EURO25/09/2013 19:55:26 : ROMS IN FOLDERS: scanning=E:\Sega Saturn\Roms\USA25/09/2013 19:55:26 : ROMS IN FOLDERS: Game found! Setting sub folder...25/09/2013 19:55:26 : ROMS IN FOLDERS: Roms In Folders check completed successfully!25/09/2013 19:55:26 : VD LAUNCHER: Launcher(NEW) - ARG USING: -mount 0, "E:\Sega Saturn\Roms\USA\Die Hard Arcade (USA).cue\Die Hard Arcade (USA).cue"25/09/2013 19:55:26 : VD LAUNCHER: Launcher(NEW) - EXE USING: C:\Program Files (x86)\DAEMON Tools Lite\DTLite.exe25/09/2013 19:55:27 : VD LAUNCHER: Launcher(NEW) - Plugin is sleeping...25/09/2013 19:55:37 : DT MOUNT (CL): Loader was launched successfully!25/09/2013 19:55:37 : CMD OUT: Returning rebuilt Command Line...25/09/2013 19:56:03 : DT UNMOUNT (CL): Unmounting...25/09/2013 19:56:03 : VD LAUNCHER: Launcher(NEW) - ARG USING: -unmount 025/09/2013 19:56:03 : VD LAUNCHER: Launcher(NEW) - EXE USING: C:\Program Files (x86)\DAEMON Tools Lite\DTLite.exe25/09/2013 19:56:04 : DT UNMOUNT (CL): Drive unmounted successfully!25/09/2013 19:56:22 : Exiting GameEx...25/09/2013 19:56:22 : Later!

you're in the right directory but your passing the filename twice :)

Link to comment
Share on other sites

Version 1.0.9 is out!

  • Fixed a bug in "Roms In Folders" Option (Thanks to Stu1983 for his help in testing this feature!)
  • This makes the plugin your best option if using GameEx's Roms In Subfolders option, since the native DT support does not currently work with that configuration
  • Found and fixed a bug in the Command-Line variable support that was introduced in the new plugin version
  • Some minor code tweaks and cleanup
  • Like 1
Link to comment
Share on other sites

  • 11 months later...

Hi Adultery!

I think I might have discovered something odd with Virtual Drive Loader, but I could use a second opinion, lol. Essentially it looks like Virtual Drive Loader might be running some string parsing against the [ROM] parameter? What I'm seeing (for instance) is that if I have Virtual Drive Loader activated the [ROM] parameter gets converted from 'Metal Gear Solid (USA) (Disc 1) (v1.1)' to 'metal gear solid (usa) (disc 1) (v1.1)' all lower case. It's not such a big deal, unless you're trying to bend the rules a bit (as I am naturally!).

Support files are below, but here's what I'm trying to do in a nutshell. My ROM directory is pointed to the directory containing all my bin/cues. But my working path points to a directory containing ePSXeCutor shortcuts. So my emulator command is simply "[ROM].lnk". So long as the names of my shortcuts are an exact match to the names of my cue files it should work just fine, except if the [ROM] variable gets converted to lower case. Here's a whole raft of support files for ya:

Virtual Drive Loader Settings.xml

<?xml version="1.0" encoding="utf-8" standalone="yes"?><dt_mount>  <settings>    <xml_ver>1.1</xml_ver>    <created>Thursday, February 06, 2014 12:57:49 PM</created>    <debug>True</debug>    <exepath>C:\Program Files (x86)\DAEMON Tools Lite\DTLite.exe</exepath>  </settings></dt_mount> 


Running ePSXeCutor with DTLoader enabled. Check out the emulator command executed in the runitgame.bat, and logged in the dtloader.log. When Virtual Drive Loader is enabled the [ROM] parameter gets converted to lower case when the emulator command is run. So the emulator command fails here, but it should be noted that the disc image is successfully mounted.


Emulator Config: [Console] Sony Playstation (ePSXecutor) DTLOADER.ini. In this config Virtual Drive Loader is being triggered via the [DTLOADER-SCSI] command directive.

GameEx Support File Data

runitgame.bat: When Virtual Drive Loader is enabled it appears that the emulator command is converting the [ROM] parameter to lower case. This will cause the command to fail under this configuration.
GameEx Support File Data

dtloader.log: The CL IN logged here matches the command seen in runitgame.bat above.


8/31/2014 9:24:18 AM : Virtual Drive Loader (Version: 1.0.9)
8/31/2014 9:24:18 AM : 13.28 INITIALIZED OK!: GameEx
8/31/2014 9:24:18 AM : LOAD XML: C:\GameEx\PLUGINS\DT Loader\Settings.xml
8/31/2014 9:24:18 AM : XML: XML file was loaded OK!
8/31/2014 9:24:18 AM : RESULT: XML(EXE_PATH) - C:\Program Files (x86)\DAEMON Tools Lite\DTLite.exe
8/31/2014 9:24:18 AM : INIT PLUGIN: Initialization completed!
8/31/2014 9:24:49 AM : CL IN: "metal gear solid (usa) (disc 1) (v1.1).lnk" [dtloader-scsi]
8/31/2014 9:24:49 AM : DT MOUNT (CL-SCSI): EXE IN: C:\Program Files (x86)\DAEMON Tools Lite\DTLite.exe
8/31/2014 9:24:49 AM : DT MOUNT (CL-SCSI): ARG IN: -mount scsi, 0, "[rompath]\[romfile]"
8/31/2014 9:24:49 AM : DT MOUNT (CL-SCSI): CL: "metal gear solid (usa) (disc 1) (v1.1).lnk"
8/31/2014 9:24:49 AM : 7-ZIP: Checking for 7-zip...
8/31/2014 9:24:49 AM : 7-ZIP: 7-zip check completed successfully!
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: Checking for ROMs In Folders...
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: ROMs In Folders setting found! Setting up ROM path...
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: scanning=E:\Emulation\Roms\Sony_PlayStation[RE]\ePSXe\Final Fantasy IX (USA) (Disc 1) (v1.0)
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: searching=Metal Gear Solid (USA) (Disc 1) (v1.1).cue
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: scanning=E:\Emulation\Roms\Sony_PlayStation[RE]\ePSXe\Final Fantasy IX (USA) (Disc 2) (v1.0)
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: searching=Metal Gear Solid (USA) (Disc 1) (v1.1).cue
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: scanning=E:\Emulation\Roms\Sony_PlayStation[RE]\ePSXe\Final Fantasy IX (USA) (Disc 3) (v1.0)
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: searching=Metal Gear Solid (USA) (Disc 1) (v1.1).cue
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: scanning=E:\Emulation\Roms\Sony_PlayStation[RE]\ePSXe\Final Fantasy IX (USA) (Disc 4) (v1.0)
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: searching=Metal Gear Solid (USA) (Disc 1) (v1.1).cue
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: scanning=E:\Emulation\Roms\Sony_PlayStation[RE]\ePSXe\Final Fantasy VII (USA) (Disc 1)
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: searching=Metal Gear Solid (USA) (Disc 1) (v1.1).cue
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: scanning=E:\Emulation\Roms\Sony_PlayStation[RE]\ePSXe\Final Fantasy VII (USA) (Disc 2)
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: searching=Metal Gear Solid (USA) (Disc 1) (v1.1).cue
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: scanning=E:\Emulation\Roms\Sony_PlayStation[RE]\ePSXe\Final Fantasy VII (USA) (Disc 3)
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: searching=Metal Gear Solid (USA) (Disc 1) (v1.1).cue
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: scanning=E:\Emulation\Roms\Sony_PlayStation[RE]\ePSXe\Final Fantasy VIII (USA) (Disc 1)
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: searching=Metal Gear Solid (USA) (Disc 1) (v1.1).cue
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: scanning=E:\Emulation\Roms\Sony_PlayStation[RE]\ePSXe\Final Fantasy VIII (USA) (Disc 2)
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: searching=Metal Gear Solid (USA) (Disc 1) (v1.1).cue
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: scanning=E:\Emulation\Roms\Sony_PlayStation[RE]\ePSXe\Final Fantasy VIII (USA) (Disc 3)
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: searching=Metal Gear Solid (USA) (Disc 1) (v1.1).cue
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: scanning=E:\Emulation\Roms\Sony_PlayStation[RE]\ePSXe\Final Fantasy VIII (USA) (Disc 4)
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: searching=Metal Gear Solid (USA) (Disc 1) (v1.1).cue
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: scanning=E:\Emulation\Roms\Sony_PlayStation[RE]\ePSXe\Metal Gear Solid (USA) (Disc 1) (v1.1)
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: searching=Metal Gear Solid (USA) (Disc 1) (v1.1).cue
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: Game found! Setting sub folder...
8/31/2014 9:24:49 AM : ROMS IN FOLDERS: Roms In Folders check completed successfully!
8/31/2014 9:24:49 AM : VIRTUAL DRIVE LAUNCHER: Launcher(NEW) - ARG USING: -mount scsi, 0, "E:\Emulation\Roms\Sony_PlayStation[RE]\ePSXe\Metal Gear Solid (USA) (Disc 1) (v1.1)\Metal Gear Solid (USA) (Disc 1) (v1.1).cue"
8/31/2014 9:24:49 AM : VIRTUAL DRIVE LAUNCHER: Launcher(NEW) - EXE USING: C:\Program Files (x86)\DAEMON Tools Lite\DTLite.exe
8/31/2014 9:24:49 AM : VIRTUAL DRIVE LAUNCHER: Launcher(NEW) - Plugin is sleeping...
8/31/2014 9:24:59 AM : DT MOUNT (CL-SCSI): Loader was launched successfully!
8/31/2014 9:24:59 AM : CMD OUT: Returning rebuilt Command Line...
8/31/2014 9:25:01 AM : DT UNMOUNT (CL-SCSI): Terminating...
8/31/2014 9:25:01 AM : VIRTUAL DRIVE LAUNCHER: Launcher(NEW) - ARG USING: -unmount scsi, 0
8/31/2014 9:25:01 AM : VIRTUAL DRIVE LAUNCHER: Launcher(NEW) - EXE USING: C:\Program Files (x86)\DAEMON Tools Lite\DTLite.exe
8/31/2014 9:25:01 AM : DT UNMOUNT (CL-SCSI): Drive unmounted successfully!


GameEx Log: No surprises here. The command matches the runitgame.bat

GameEx Support File Data


GameEx Log: Once again there's nothing terribly surprising here. The command logged here accurately reflects the runitgame.bat

GameEx Support File Data
Link to comment
Share on other sites

Ahh yeah, that's expected behavior. The reason I do that is so it finds and strips variables like [ROM] or [Rom] or [rom] or [rOm] (you get the idea) without having to run a search on the string a bunch of times.

I can probably fix that though, I was just too lazy to do it at the time but could probably just do a regex.replace instead. :)

You need this right away?

Link to comment
Share on other sites

No rush at all man! :) Although it's worth noting that it's not that the string literal "[ROM]" is being manipulated (I'm not sure that would matter all that much?). It's that the file name itself is being changed in the [ROM] parameter.

So if I have a file called Metal Gear Solid (USA) (Disc 1) (v1.1).lnk it's getting converted to metal gear solid (usa) (disc 1) (v1.1).lnk. This causes the emulator command to fail since the it doesn't find the applicable file due to the case sensitivity (And again I'm definitely bending the rules of emulator configuration here - I'd be willing to wager that I am the only one being adversely affected by this :lol: )

Link to comment
Share on other sites

So very close dude! It looks like there's still a couple issues, but it's definitely progress! Here's the command line that was executed in this latest version:

"Metal Gearolid (USA) (Disc 1) (v1.1).lnk" [DTLOADER-SCSI]

runitgame.bat:

GameEx Support File Data

dtloader.log:

GameEx Support File Data

Dude thanks so much for looking into this, and if you would rather simply enjoy your labor day without solving the world's (emulation) problems you're certainly deserving of a break!

Link to comment
Share on other sites

Nope, I got it now. I tested it here and it's working... I forgot to escape the brackets in RegEx, silly me...

Once you confirm it's working I'll go ahead and make a major release, but I'm pretty confident it will. ;)

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...