PDA

View Full Version : Relative Paths


Ego-X
08-13-2008, 08:13 PM
Just a small request Bill.

I moved my HyperSpin Folder earlier, as I was testing it now it took me a couple of minutes before I remembered I needed to edit paths.

Using relative paths would eliminate this problem entirely.

fata1err0r
08-16-2008, 08:18 PM
I concur, I like having my emulator folder in same directory as hyperspin and should be able to enter ..\mame\mame.exe. Also walking around with an external hyperspin hdd and pluging it in and it working regardless of drive letter makes sense.

joebells
08-19-2008, 11:27 PM
I know this was discussed before but I forget what was said. I just want to say though that I think relative paths would be a great addition. I find myself reinstalling all the time for various reasons, and I install hyperspin on an external drive so the drive letter changes. relative paths would make it work no matter what the drive letter ended up being. Yeah I know I can force a drive letter but this would be nicer.

Not anything crazy important but it would be nice.

fata1err0r
08-19-2008, 11:39 PM
I have found a tricky way around this, if you share a folder with write permissions. Then you go to my computer and map a network drive you can make it a high letter that wont be overwritten. Also this lets you run it on other network pcs.

Another way is the subst command (subst [folder] [drive letter] ).

Both pretty crappy solutions but it works for now.

joebells
08-19-2008, 11:44 PM
yeah I'm not messing with those solutions, thanks though I just don't want to have to set that up every time. I thought about just mounting the drive as a folder to but I'm not messing with any of that. I was just thinking if it was something that could be added easily it would be nice.

BadBoyBill
08-20-2008, 12:43 AM
I will look into adding this feature, I actually need it myself since I have my portable drive.

joebells
08-20-2008, 06:08 AM
ok for a temporary "solution" you can use notepad++ to do it pretty quickly using regular expressions.

Get Notepad++ from here http://notepad-plus.sourceforge.net/uk/download.php after you download it start it and press the open button and navigate to your hyperspin settings folder and highlight all the files in here and press open. All of your ini files should open up at once in seperate tabs.

Press ctrl + H to bring up the search and replace dialog. Select the regular expression radio button at the bottom and then paste this in the search field

rompath = C:\\HyperSpin\\Emulators\\([^\\]*)\\roms

and this in the replace field

rompath = H:\Emulation\Games\\1

of course replacing the path with your own path but the \1 must be at the end. The \1 inserts whatever was in the parenthesis in the search. Press find next to make sure its highlighting the correct part. Press replace and make sure it replaces it like you want. If it does then press replace all in all documents open and it will change that value for all the ini files at once saving a bunch of time.

This also assumes that your rom folders are named the same as what HyperSpin sets up by default like "Super Nintendo Entertainment System" mine are named like the no-intro dat names so I have to add modify the lines slightly when it is finished but the hyperspin default names are pretty close so it just takes a bit of adding and adjusting. Much better than typing the whole thing out on each file.

in my case the path line only needs a slight change from C:\HyperSpin to H:\Emulation but if yours is more complicated this program is really nice and should be able to fix you up just fine. What this ([^\\]*) does is it it keeps choosing text elements that are not \ the carot means not and there are two \\ so that it searches for \ instead of treating it as a regular expression term. So it chooses the emulator folder name since it is between \ \ The \1 inserts whatever was in the first set of regular expression parenthesis. If we had done several sets of parenthesis then we could of inserted text from the second set of parethesis with \2 and so on.

RetroBorg
02-15-2009, 04:52 PM
I know relative folder paths is supported in HyperLaunch but can you include it in HyperSpin as well, as I use MAME with hi-score support which HyperLaunch doesn't support.

I'm trying to have HyperSpin running on a thumb drive so I can take it anywhere.

Thanks.

Phil

THK
02-15-2009, 06:00 PM
at the moment for my external drive: Start > Administrative Tools > Computer Management > Disk Management > 2nd mouse btn > Change Drive letter and paths... > change letter external drive to your hyperspin settings (unless of course its the same as the windows drive)

dunno bout Vista though. Relative folder paths will make it less of a hassle, so that would be great!

dakillah
02-20-2009, 07:52 AM
I did it the way as fata1err0r already pointed out, using the subst command and creating a drive letter X. you can do it by 2 scripts one for setting the x drive and one for removing the x subst mapping. running both through hyperspin as startup and exit program.

hyperfan
04-11-2009, 03:10 PM
I must be missing something. It appears as if relative paths are supported when using HQ. I am assuming it is starting from where the hyperspin.exe file resides. say g:\hyperspin. I am trying to get it to find the emulators folder
g:\hyperspin\emulators.......

I get the command line preview to show the following:

".\emulators\MameUI32.exe" ".\emulators\Mame32\roms\RomName.zip"

when i type the same thing into a command line (without quotes) from within the hyperspin directory it works.

everything works fine when i 'hardcode" the drive letter in the filepath.

I also tried
"..\hyperspin\emulators\Arcade\Mame32\MameUI32.exe" "..\hyperspin\emulators\Mame32\roms\RomName.zip"

please help?
i really want to get this to work with a detachable drive where drive letters change all the time.

BadBoyBill
04-11-2009, 03:23 PM
you have to have hyperlaunch = true for launching your games to have relative paths working.

rangel
04-12-2009, 02:21 AM
What I did is have the entire emulation project in one folder "Emulation", to include HS and all my emulators.
All my paths are based on D:, but can be whatever you want. My current project folder is 30 gb.
So, whenever I move this project to another computer, I just use storage manager to partition the hardrive you want to use and set the drive letter for the EMUs.
Then all you have to do is move it and it works just fine. Or if you have a portable, just use storage manager to rename it to the letter you need. If you used C:, then it will be a one time change for your paths to get to a higher letter of your choosing for easier transfer.

lordindy
06-08-2009, 02:31 PM
Just wanted to add my vote to "relative path" support in Hyperspin. I'm new to all this, but I can see that managing all the roms, emulators and graphics/themes will require some sort of staging space. I plan on putting it all on a USB drive, and it would be nice to tote it from place to place, without having to worry about drive letters, so that I could BLOW someones mind with a simple autolaunch on the USB drive. Imagine, plug USB in, Hyperspin comes up (hehehhe, maybe add a THX sound effect along with the usual Hyperspin intro), and BAM! THe wheels, the emulators, the games, the movies, the music, all spinning and themed. Relative paths bring the "mind blowing" a bit closer. I understand that launching scripts to rename the drive letter or such is also possible, but it's not as.... elegant.

Man......just imagine the persons jaw...when you connect a USB drive to a random system....and up comes Hyperspin intro and every game that ever was... hehehehehhehe.

You folks (not just the Hyperspin boys, but all of you in the scene) are simply amazing. I'm partial to the history of gaming, and this frontend, the emulators, hardware projects, and commitment and support are incredible.

Cheers to all of you

BadBoyBill
06-08-2009, 02:41 PM
My last post in this thread states how to get relative paths working.

brian_hoffman
06-08-2009, 03:09 PM
Realitive paths work fine. As BBB said you need to use hyperlaunch.
in your INI's just have them look like

.\emulators\mame

the ".\" assumes your starting directory is the same location Hyperlaunch is in.
By default it is in your HYPERSPIN folder. Then in the hyperspin folder it looks for an emulators folder then the mame folder.

So whatever drive letter it is in it does not matter.

Clear as mud?

StarControl
06-10-2009, 10:46 AM
Just for a working example, these lines are taken from my mame.ini file:
[exe info]
path = .\media\MAME\Emulator\
rompath = .\media\MAME\roms\

[video defaults]
path = .\Video\

My directory structure looks like this:
F:\Arcade <--this is where hyperspin.exe and hyperlaunch.exe are
+Databases
+Media
+Atari 5200
+Mame
+Emulator <--this is where mame.exe is
+Images
+Roms
+Video +Panasonic 3DO
+Settings

However, I haven't got any of the CD based emulators up and running yet. Is it possible to use relative paths with DaemonTools?

SophT
06-10-2009, 12:13 PM
umm... I've been looking and I don't know if relative paths are natively supported in daemon tools - but since it's being used with HyperLauch you may be able to fake it with AutoHotKey with something like:

setworkingdir = %emupath%

run, daemontools -0, %A_workingdir%%romname%%romextension%

and this could possibly take:
./hyperspin/emulators/cd based emulator/cd media.iso

and fill in the actual path so the command line would be

[drive]:/hyperspin.../cd media.iso

don't quote me on it though - I'm not looking at the AHK documentation right now, and I'm not that good at it yet.

lordindy
06-11-2009, 11:09 PM
Just wanted to say thanks guys. I have managed to create a USB Hyperspin drive (so far, just with MAME and DAPHNE and Lynx..the rest will come) that autolaunches and also shows the Hyperspin icon on the drive letter (autorun.inf). I can't wait to get all the various emulators working with relative paths. Hyperspin to go!

sjlewis78
01-12-2011, 07:42 AM
I am having all sorts of grief trying to get the relative paths working. It appears that the emulator launches but can't find the game path and says file not found. I have hyperlaunch turned on and it works if I have the full path with drive letters.

My directory Structure is:
H:\Hyperspin\Emulators\[System emu directory]
H:\Hyperspin\Roms\[System rom directory]

Here is an example of the settings for NES:

[exe info]
path=.\Emulators\Nestopia\
rompath=.\Roms\NES\
userompath=false
exe=nestopia.exe
romextension=nes
parameters=
searchsubfolders=false
pcgame=false
winstate=HIDDEN
hyperlaunch=true

Am I missing something here?

X1pheR
01-12-2011, 11:03 AM
Can it be that even though Hyperspin with use of Hyperlaunch supports it but nestopia simply doesn't?

wickedwackguy
01-21-2011, 01:12 PM
being able to add MULTIPLE folders of ROMs / CHDs instead of thrwoing everything into one big pile of f*ck.
god that would make my year!

sjlewis78
01-23-2011, 01:37 PM
It's possible is Nestopia, but I tried every emulator I have. MAME is the only one that seems to work with relative path on roms, so it makes it unlikely.

Monyet
02-15-2011, 04:22 AM
What about just being able to edit the path directly in HyperHQ? I know where everything is on my PC and find it easier to type the path than have to navigate to the required directory.

Dred
02-15-2011, 01:43 PM
Whats the problem with nestopia? I have my hyperspin on my portable drive and most of my emulators are working fine with relative path.

You can't enter the paths in hyperhq but you can edit the config files with ./ same with most of the emulators confiugration files as well.

the only issues i have had with relative path are the emulators that simply won't accept it. Like kega fusion has to have a full path for sega cd bios. I can't get around that.

Daphne also does not like relative path and i have to put full path.

So far the rest of emulators including nestopia work great without worrying about what drive letter my usb drive is.