Files posted by Turranius
Basically, this little program is full of features, but its main purpose is to lower (or mute) the volume after a time of idle and to bring it back when you move or press anything.
Any suggestions? Let me know.
Set the volume to a percent of the current volume after an amount of time (This is the default). Just mute the audio after an amount of time (Works on XP) Force the volume to a certain percent at startup. Force the volume to a certain percent when going idle (A definable percent instead of a percent of current volume). Definable FadeOut delay and FadeIn delay. Full-fledged application launcher with working dir, delay and restart options. Exceptions. You specify the exe file(s) you want. If one of them is active, it will not go idle. Volume per program. has the ability to change the volume to a certain percent if a process (program) is running. Splashscreen when idle. Shows some fancy graphics (optionally) that works like a screensaver when idle. Right click it in the traybar for a menu. A few more advanced options.
Do not be alarmed by the number of options for it. Run it as it is to start with and then you can start fiddling with the settings.
I got tired of manually renaming videos and media to match my roms. I tried a few softwares for it, but none worked quite the way I wanted.
You may use it to match anything to your roms/images/XML. Here are a few examples.
1: You have an XML file or ROM files. You also have media (movies perhaps) but the names does not match the XML.
2: You have an XML file but your ROM files does not match the XML.
3: You have media files named the way you want, but your ROM files does not match,
4: You have some files that must match other files. Not necessarily HyperSpin/Emulator related.
Basically, you set what you want to use for source names (An XML file or a folder containing files).
You also set a source directory that you want to be coped/moved to match the source names.
Then you set a destination directory for where you want the copied/moved files to end up.
Anyway, how does it work?
The application cleans up the Source NAMES (From folder or XML) & the Source FILES and puts then into an internal array.
4x4 Off-Road Racing (USA) (Disk 1).D64
4x4 OffRoad Racing
So now we have a cleaned up Romname and sourcefile(s). It then runs a Damerau-Levenshtein distance comparison between two strings. Yes, thats right. It computes the edit distance between two strings, that is the number of omissions, insertions, changes or swap of letters necessary to transform one string into the other.
This function is by jchd at the http://www.autoitscript.com forums and the description above is a cut and paste. hehe. You thought I sounded smart, right?
In other words, it compares the romname with all the source media and returns the source media that has the least amout of "spelling errors" in it.
Is this fast? No, its slow as hell if you have a lot of source media. Say you have 1000 roms and 500 media files.
For every rom file (1000) it has to go through every media file (500) and do the distance comparison on each one of them to find the best match. So this takes a while. The more media files you have, the slower each rom takes.
It will stop looking if it finds a direct match though, so that will speed it up.
It will not overwrite or even do the comparison IF you already have the media file for that rom in your destination directory. It does not care about extensions in the destination dir, so if you already have DestinationDir\Colony.MP4 it will not overwrite it later with a file with a different extension (Colony.FLV for example) as it only checks "Does Destination\Colony.* already exist?" and skip it if so.
This is good. Lets give an example. Say you have a mix of FLV and MP4 dupes. Split them up into separate folders.
Run this program, pointing it to one of the folders. Let it run. It will now copy those files.
Run it again, pointing it to the other folder. It will now only copy the files that do not already exist, no matter the extension.
It is available on my FTP (signature) and attached to this post with source.
Run the application.
XML Source: Switch between using a XML or a folder to use for Source Names by clicking the "Switch to files" button. Switch back to XML using the same button.
Source files: Select the folder containing the files to be renamed (copied or moved actually).
Pre Strip #: This will strip out the defined number of characters from the start of the source names. This is good if your sourcefiles has a header that you do not want to be included
in the search. For example, your source file(s) are called something like "0001 - Electroplankton (Japan).nds" and the first 7 chars there messes it up (0001 - ). Set this to 7 and it will strip that out. Leave it at 0 to not strip.
Post Strip #: Same as above, but it will strip from the end of the name. Doubt this is needed.
Destination: Select the folder to copy/move the renamed files to.
The "0" is the number of misspellings to constitute a direct match. These will be copied/moved automatically without question. Recommended to keep it at 0. Its worth going through the manual labor later if you want it right. You can set it to -1 to disable automatic copying all together if you want to verify everything manually.
The "2" is the number of "misspellings" to constitute a possible match. If you want "A game" but it finds a Source file called "A_game", it will count as 1 misspelling. It will be added to a list that you'll go through at the end and select the matches.
Note: Releases with higher "spelling errors" will also be shown after this list is displayed, so you will get a chance to match even higher spelling errors.
"Move Sourcefiles to Destination": If you check this, any matches from "Source Files" will be moved into "Destination" instead of copied. Never recommended unless you want to rename very large ISO roms collections or something.
If one Sourcefile matches more then one Source Names, it will not allow it and ask you if you want to change to Copy Mode or Quit.
"Do not show result windows":. If you check this, it will not show you what file names it found, what file sources or which files that are perfect matches before continuing. The first response needed after clicking "Start" will be to help with the partial matches.
"Handle different disks?": Normally, everything in a () will be ignored, but if you check this, it will read inside the () and  for disk,disc,tape and cart and try to keep them correct as well.
In other words, if you are matching a romset or similar with (Disk 1, Side etc (Commodore 64 for example), leave this checked. If the romset does not include it (NES and similar), uncheck it to gain a little bit of speed.
"Number of source files found before splitting them based on first char": The default is 10000. Normally, all source files are matched against all sources. This can get VERY slow on large sets with few direct hits (0 spelling errors). If the number of source files exceed 10000, it will split them up into different searches so a source that starts with the letter A will only search for source files also starting with A.
You may lower this number if you want to trigger this search method with a smaller source files set if you want. It will go a lot faster, however you might get missed results if they do not start with the same character ("Star Wars The" & "The Start Wars" for example will be a miss).
After it has indexed the sources and source files, it will display a message if it needs to split them up into different arrays (searches).
The "Reset to Default" button simply clears all the fields back to default.
Click Start to go on. Don't worry. Nothing will happen automatically yet!
This little fella will pop up to give you information on what its doing. You don't actually HAVE to watch it. Its more to show you that its working.
It first goes through the XML or folder you selected to find all the names we want to use and clean them up for matching.
It will then present what it found (Unless "Do not show result windows" is checked) and show you the "Rom Name Cleaned" names for each Rom that it will use to match with the source media. Just click the X to continue.
It then goes through the source media and does the same thing (Unless "Do not show result windows" is checked). Click the X to continue.
It will now start the matching and show you in the window what its doing.
Once it has gone through all the files, it will display (Unless "Do not show result windows" is checked) those that had low enough spelling errors to be automatically copied (0 in this case).
Those files are copied when you press the X.
Remember, you can hit Shift-ESC at any time (except if a question is on screen) to exit the application.
You can see the
Rom Name Clean: The cleaned name of the source name we want to use.
Source Match Clean: The best match it found for it, also cleaned.
Rom Full Name: The real name we want (read from XML or directory).
Source Match Full Name: The best match for it. Real filename, not cleaned.
Misspellings: The number of differences between them. We selected 0 for automatic processing, so this will only contain 0's.
New Name: The new name that will be created in the destination folder. It should match the "Rom Full Name" but with its own extension of course.
When the copy is complete, it will show you the rest of the matches that it needs your help with. We selected 2 here, so only those with 1 or 2 misspellings will be processed.
Simply check the ones you think are a match and click the "Start" button. To skip to the next part, click "Skip". To abort, click "Close" or the X at the top right.
Note: This window is resizable. You may also drag the vertical lines between the headers to increase/decrease the column width (like Excel).
Once all are done, it will also show you the ones that did not get a match, its best match and the number of spelling errors for it. You can select to go through this list as well and check things you think is a match still.
As you can see, I did find one that is a match. It was a non match because of a bug in 1.7 and previous. Fixed in 1.8 (& sign was stripped from XML source names).
And thats pretty much it =)
Note, everything shown in the lists are also logged to a subdir called "Logs". Its TAB separated lists, so you can just copy and paste it into Excel.
--[ Purpose ]-------------------------------------------------
Controls the order the controllers appear in the "Game Controllers" list in Windows.
--[ Reason ]--------------------------------------------------
The order they appear in are used in some emulators and games to define the order they should be used.
For example, the top one in the list is Joy1. Second one Joy2 etc.
Problem here is threefold.
1: The list is not always the same after a restart so you have to remap all your controllers in the emulators
that use this setup.
2: If you plug in another controller, it will (most of the time) not go to the end of the list but in the
middle somewhere, messing up the order of the other controllers.
3: Even if everything is as you think it should be, your first joystick might be called Joy3 in the
games/emulators and it just looks ugly =)
--[ Usage ]---------------------------------------------------
Connect all the controllers that you want to have a permanent location in the list.
Run "Tur-Game_Controller_Order.exe" as administrator and it will list all the controllers and ask
you, one by one which location it should have in the list (basically, where you want it to appear. 1 = top)
That will create a Settings.ini file. If that file exists the next time you run it, it will simply
go through the controllers and reorder them, silently. Remove or rename Settings.ini to get it to run
You can also create more then one Settings.ini file if you have different setups. Simply specify which
.ini file it should work with when running it, for example "Tur-Game_Controller_Order.exe Settings2.ini"
By default, when you run it with a Settings.ini present, it will just run once and exit, but you can have
it running all the time, checking the order every few seconds or so. This is good if you have some controllers
plugged in some of the time but want to be able to plug in others without them appearing in the middle of the
list. Edit Settings.ini and change DaemonMode=False to True.
DaemonModeDelay= is how many seconds to wait between each check. 5-10 seconds is a good value IMO.
--[ Notes for BlissBox users ]--------------------------------
If you own a BlissBox you must update the firmware first so the ports get unique HIDs and names.
See here: http://atarigalore.wix.com/4play
They should appear as 4-Play_port1 to port4 (at least at the time of writing. As long as they are unique
--[ Limitations ]---------------------------------------------
One big limitation is this. Say you have 3 controllers connected that are Joy1, Joy2 and Joy3 in the
emulators/games. If you unplug the first controller in the list (Joy1), the others will shift up and Joy2
will become Joy1 etc. There is no way around that at the moment, except for creating a dummy Joy1 controller
to put at the top of the list. I have yet to figure that one out easely.
Always keep your permanetly connected controllers at the top of the list to overcome this.
--[ Other hints ]---------------------------------------------
You must set UAC to "Never Notify" if you want this program to run on startup automatically as its
running as a local administrator. You also can not just make a shortcut to your Startup folder for it
as windows will not allow it. In the "Extras" folder you'll find a small VBS script that just runs it
from the same location as the exe, so copy the VBS to where you have Tur-Game_Controller_Order.exe
and make a shortcut to the VBS file to your Startup folder in Windows.
Any controllers connected that are NOT in the Settings.ini file when you run it will automatically go
to the end of the list.
I include a program called "List_Controllers.exe" as well. This only lists all the connected controllers
and the HID for it. You can use this if you want to add a controller to an already existing Settings.ini
file. Just copy the HID shown into Settings.ini.
When manually editing Settings.ini, make sure the ports start with Port1, Port2 and there are no gaps in the
This package contains two files to be placed with HyperSpin.exe
You can select to start them instead of HyperSpin.exe.
HyperSpinFullScreen.exe = Starts HyperSpin in fullscreen mode.
HyperSpinNotFullScreen.exe = Starts HyperSpin in windowed mode.
I do not expect a lot of people to use this, but I have my HyperSpin setup on the network for multiple machines.
On my work computer, where I set everything up, I do not want to start HS in fullscreen.
On my arcade machines, I do want to start it fullscreen.
I always forgot to change manually so it always opens the "wrong" way.
Running HyperSpinNotFullScreen.exe on my work computer and HyperSpinFullScreen.exe on my arcade machines makes sure they always start HS in the correct way.
All it really does it change the FullScreen value in Settings.ini to either true or false before launching "HyperSpin.exe".
Sources are included...
This nifty little program has one purpose. To remove files with the same name but different extensions.
Example: Say you have a lot of .png images in your Videos folder to be used instead of videos in HyperSpin.
Now, more and more .mp4 files are being released on EmuMovies instead and suddenly, you have both:
1st Division Manager (Europe).png
1st Division Manager (Europe).mp4
in your videos folder.
You only want the mp4 file.
Run the program, point it to the folder to cleanup and specify the extension you want to KEEP (.mp4).
It will then go through and move any dupes that are NOT mp4 to a "Backup" subdirectory.
So, it will not delete anything, only move it to a Backup dir in the dir you specify for cleanup.
Another example: You have both .flv and .mp4 files in your Videos folder. You want to prioritize .mp4 files and move .flv duplicate files out of the way.
The first time you run it, an .ini file will be created with the settings you select. This is simply so that the same selection will be the default if you run the program again.