2011-06-24, 13:36
Verno Wrote:Right but I mean how did you personally get around it? Did you do the autoit script thing you mentioned below? I'm trying to find a workaround that will work within the confines of XBMC and Advanced Launcher.I personnaly did not get around this... because I'm not really using advanced launcher to play PSX games and also games that need disk switch are a minority. So I have not done this kind of script, but if I found time could a look to create an autoit script.
Wouldn't you have to create a different script for every potential disc swap in the game library?
Thanks for indulging me on this, I realize its a bit out of scope for your plugin, I just wanted others experience and how they overcame the problem.
This disk switch fonctionnality is not directly linked to XBMC or Advanced Launcher. Advanced launcher is starting appplication. If the application (like ePSXe) need to use different images disk and is not able to manage them simply and correctly that's not the goal to advanced launcher to correct this lake. Moreover when you know that other application (like WinUAE) are able to manage several disk image at the same time.
So, I think the first way is try to ask the the emulator devellopers to add this functionnalty into their emulator.
BTW, it may be possible to create an autoit script to do this. Not a script by game, but 1 auto script for each emulator using multi-disk. This script may work like this :
- First, iso files could be identified like this : image_cd1.iso, image_cd2.iso, image_cd3.iso, etc... and located into the same directory.
- Then we start the script using the first iso file name as one of the parameters (image_cd1.iso)
- Then the script is incrementaly scanning the folder for files named like this image_cd#.iso (image_cd1.iso, image_cd2.iso, image_cd3.iso, etc...) and determine the number of images file. For example if the image_cd5.iso is not found, so the game have 4 disks.
- We define a variable that will correspond to the active disk number and set to 1 for script start. Then we mount the correspoding iso image (image_cd1.iso) using Daemon Tools and start the emulator.
- At the same time the script still running into background waiting for a key press action.
- When a specific key is pressed (could be defined), the script unmount actual disk, increment disk number. If the disk number is higher than the number of disk, it will be set to 1. Then the script mount the new corresponding image.