JK1974
Basic Member-
Posts
29 -
Joined
-
Last visited
Content Type
Profiles
Forums
Events
Downloads
Store
Articles
Everything posted by JK1974
-
I vote for Mp3tag - it has very very powerful scripting possibilities. If you don´t like scripting, you still will benefit of the tag-2-filename or filename-2-tag feature that enables you reformatting tags or filenames with just a little template line. Of course, you can also order your mp3 filename list by name, bitrate etc. to get a rough overview e.g. on the quality of your files, mark them and move them to a separate folder. Furthermore, the connection to freedb, amazon and discogs helps you with renaming your files. For best album art quality, go for the Album Art Downloader from http://sourceforge.net/projects/album-art and import it with Mp3tag. You can (of course) also automate the import e.g. of the folder.jpg you just created with MP3tag - or rely on the album art delivered by amazon or discogs. For autotagging of chaotic files, I think there is no way around Nero or WinOnCD/EasyCDCreator because the Gracenote fingerprinting used there really works great and is IMHO the best out there. If it is about quality besides of the used bitrate, you might try EncSpot. The Pro version has later on become freeware - try to find an appropriate download link as the original site does not exist anymore. This tool shows you an estimated quality of an MP3 file. However, I don´t know if a detailed analysis is being used of if they just try to find out the used encoder and simply judge on this. A test with an e.g. 5- or 10-times reencoded MP3 file might give us an answer on this... Hope this helps With kind regards JK
-
I just had to make a few adjustments on my script to get the Amiga things working, so it was no big work getting this working. And I had in mind that there has been a thread here about Amiga support, so I will take a closer look what already has been done. At least, I did not know that there is also a conversion function for snaps and titlescreens etc. However, I see this renaming script "project" also as opportunity to see other Gamebase collections (CPC, Spectrum etc.) working with GameEx just by changing a few lines in the code. If I would find the time, it would be worth to port it to AutoIt and create a GUI where you can change all the relevant parameters - some kind of GameBase-2-GameEx-Converter...
-
Just working on the Amiga "version". As I expected: Minor modifications. 1) The name of the MDB file is of course different 2) The boxes in the table "Extras" are now called "Boxscan - Front" and not "Covers" anymore 3) The base screenshot name refers to the title screenshot, while "_1" is a game screenshot, so it´s the opposite of how it has been done in most cases in GB64. Nevertheless, it´s a little bit annoying that I found a "/" in several screenshot pathnames which needs to be replaced against "\". I haven´t installed Gamebase Amiga yet, just used the mdb file. There is said to be support for the IDF image file format which I currently don´t take care of (I also do similar on the C64 renaming because I ignore additional cards and tapes delivered with some extra packages, but it´s now already more games than mankind can play ). And, I have to admit that I did not test a single game yet, so maybe it would also be necessary to generate script files for every game that delivers the recommended kickstart version etc. as parameters to UAE. Going to check posts first that deal with running Amiga games... When I have finished testing the renaming, I am going to release it and see later on, what still needs to be done to get Amiga games starting as comfortable as possible.
-
Just checked it again with the database - indeed this only seems to happen once. Going to edit my text above... Concerning the Beta - thanks for the offer, and if you need bugreports, feel free to send it to me But to be honest: I can´t promise giving you fast feedback until you release it - I think that you will release the new version around next weekend?
-
Hi, I was a little disappointed that THE home computer of the 80ies just has poor support in GameEx. I don´t speak of the database and GameEx itself - it´s simply the fact that there are no screenshot packs, box shots etc. out there that can be used immediately with GameEx. The only way to get a good base for C64 games in GameEx seemed to be to use the outdated GoodTools script that renames the short names of GB64 V3 to long names. Nevertheless, a screenshot converter was still missing... So I took some time, took a deeper look into the GB64 v5 database (get if from www.gb64.com) and searched for WHS code snippets. And here is the result: The Code: inputRomFolder = "Games" inputSnapFolder = "Screenshots" 'inputCoverFolder = "Cover" outputRomFolder = "GB64Ren\roms" outputSnapFolder = "GB64Ren\snaps" outputTitlesFolder = "GB64Ren\titles" outputCoverFolder = "GB64Ren\boxes" On Error Resume Next Set fso = CreateObject("Scripting.FileSystemObject") Set gameFile = fso.CreateTextFile("GB64roms2Good.bat", True) Set snapFile = fso.CreateTextFile("GB64snap2Good.bat", True) Set boxesFile = fso.CreateTextFile("GB64boxes2Good.bat", True) gameFile.WriteLine ("chcp 1252") gameFile.WriteLine ("md " & outputRomFolder) snapFile.WriteLine ("chcp 1252") snapFile.WriteLine ("md " & outputSnapFolder) snapFile.WriteLine ("md " & outputTitlesFolder) boxesFile.WriteLine ("chcp 1252") boxesFile.WriteLine ("md " & OutputCoverFolder) Set objConnection = CreateObject("ADODB.Connection") objConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0; " & "Data Source=GBC_v05.mdb" Set objRecordSet = CreateObject("ADODB.Recordset") objRecordSet.Open "SELECT * FROM Games ORDER BY GA_Id" , objConnection, 3, 3 objRecordSet.MoveFirst Do Until objRecordSet.EOF outputFilename = objRecordSet.Fields.Item("Name") outputFilename = Replace(outputFilename,"\","-") outputFilename = Replace(outputFilename,"/","-") outputFilename = Replace(outputFilename,":","-") outputFilename = Replace(outputFilename,"*","-") outputFilename = Replace(outputFilename,"?","-") outputFilename = Replace(outputFilename,"<","-") outputFilename = Replace(outputFilename,">","-") outputFilename = Replace(outputFilename,"|","-") outputFilename = Replace(outputFilename,chr(34),"-") If Len(objRecordSet.Fields.Item("Filename"))<>0 then gameFile.WriteLine ("copy /Y ") & chr(34) & inputRomFolder & ("\") & objRecordSet.Fields.Item("Filename") & chr(34) & chr(32) & chr(34) & outputRomFolder & ("\") & outputFilename & (" (") & objRecordSet.Fields.Item("GA_Id") & (")") & Right(objRecordSet.Fields.Item("Filename"),4) & chr(34) snapFile.WriteLine ("copy /Y ") & chr(34) & inputSnapFolder & ("\") & objRecordSet.Fields.Item("ScrnshotFilename") & chr(34) & chr(32) & chr(34) & outputSnapFolder & ("\") & outputFilename & (" (") & objRecordSet.Fields.Item("GA_Id") & (")") & Right(objRecordSet.Fields.Item("ScrnshotFilename"),4) & chr(34) snapFile.WriteLine ("copy /Y ") & chr(34) & inputSnapFolder & ("\") & Left(objRecordSet.Fields.Item("ScrnshotFilename"),Len(objRecordSet.Fields.Item("ScrnshotFilename"))-4) & ("_1") & Right(objRecordSet.Fields.Item("ScrnshotFilename"),4) & chr(34) & chr(32) & chr(34) & outputTitlesFolder & ("\") & outputFilename & (" (") & objRecordSet.Fields.Item("GA_Id") & (")") & Right(objRecordSet.Fields.Item("ScrnshotFilename"),4) & chr(34) End If objRecordSet.MoveNext Loop Set objRecordSet2 = CreateObject("ADODB.Recordset") objRecordSet2.Open "SELECT * FROM Extras ORDER BY GA_Id, DisplayOrder" , objConnection, 3, 3 objRecordSet2.MoveFirst objRecordSet.MoveFirst last_gaid = 0 Do Until objRecordSet2.EOF If Left(objRecordSet2.Fields.Item("Name"),Len("Cover")) = "Cover" AND Left(objRecordSet2.Fields.Item("Name"),Len("Magazine")) <> "Magazine" then Do Until objRecordSet.EOF If objRecordSet2.Fields.Item("GA_Id") <> objRecordSet.Fields.Item("GA_Id") Then objRecordSet.MoveNext Else outputFilename = objRecordSet.Fields.Item("Name") outputFilename = Replace(outputFilename,"\","-") outputFilename = Replace(outputFilename,"/","-") outputFilename = Replace(outputFilename,":","-") outputFilename = Replace(outputFilename,"*","-") outputFilename = Replace(outputFilename,"?","-") outputFilename = Replace(outputFilename,"<","-") outputFilename = Replace(outputFilename,">","-") outputFilename = Replace(outputFilename,"|","-") outputFilename = Replace(outputFilename,chr(34),"-") boxesFile.WriteLine ("copy /Y ") & chr(34) & objRecordSet2.Fields.Item("Path") & chr(34) & chr(32) & chr(34) & outputCoverFolder & ("\") & outputFilename & (" (") & objRecordSet.Fields.Item("GA_Id") & (")") & Right(objRecordSet2.Fields.Item("Path"),4) & chr(34) last_gaid = objRecordSet2.Fields.Item("GA_Id") Do While objRecordSet2.Fields.Item("GA_Id") = last_gaid objRecordSet2.MoveNext Loop Exit Do End If Loop End If objRecordSet2.MoveNext Loop gameFile.Close snapFile.Close boxFile.Close What does this script do? It creates "GB64roms2Good.bat", "GB64snap2Good.bat" and "GB64boxes2Good.bat". Those *.bats simply copy files from the GB64 collection to the folders GB64Ren\roms, GB64Ren\snaps, GB64Ren\titles and GB64Ren\boxes and give them a unique name (like the GoodTools v3 gbc2long.bat script) so that the games can directly be played in GameEx after setting the right paths in the Emulator Setup page. How do I use it? Simply copy the text above to a text file, rename it e.g. to "Convert_GB64_v5.vbs", move it to the same directory where the Gamebase64 database file "GBC_v05.mdb" is located and run it. It will create the three *.bat files within a few seconds. Then, put the *.bat files in your Gamebase directory just above the folder "Games", "Screenshots" and "Covers" and start them (you can also run all 3 at the same time). A new directory GB64Ren as well as subdirectories will be created and the files are being copied automatically in the right folders. How does it work? This script accesses the Gamebase database by using the Windows Scripting Host. It opens the table "Games" and goes through it line-by-line reading the entries "Filename", "ScrnshotFilename", "Name" and "GA_Id". The first one contains the original GB64-filename, "ScrnshotFilename" the base name of the snapshots, "Name" the unshortened game name and "GA_Id" the unique Gamebase-ID. The following codelines write DOS-copy commands to the *.bats using the original game name and the Gamebase-ID for the new filenames, e.g. : copy /Y "Games\0\100KPYRA_00001_01.zip" "GB64Ren\roms\$100,000 Pyramid, The (1).zip If there are special characters in the game name that are not allowed on the Windows file systems, they are being converted before. Furthermore, the DOS line "chcp 1252" allows correct renaming of filenames that use umlauts etc. The same is being done for the screenshots. Browsing through the Gamebase database online, I found out that very often the second screenshot (with the extension "_1.jpg") is the title or boot screenshot. So, an additional copy-line is generated that copies the "_1"-screenshot to the titles folder while the first screenshot goes to the GB64Ren/snaps directory. If the "_1"-screenshot does not exist, you simply get an "file not found" error message. So every database entry becomes something like: copy /Y "Screenshots\0\The_$100,000_Pyramid.png" "GB64Ren\snaps\$100,000 Pyramid, The (1).png" copy /Y "Screenshots\0\The_$100,000_Pyramid_1.png" "GB64Ren\titles\$100,000 Pyramid, The (1).png" The last passages have been written for getting covers out of the GB64 extras pack and put it into the folder GB64Ren\boxes. For this, the table "Extras" is being read, and if the field "Name" has the entry "Cover", the file mentioned in the field "Path" is being copied. If there are further covers for the same game (i.e. if the GA_Id stays the same within the next database entries) they are simply ignored. Customization You can change every path apart from the "covers" path because not every cover has been stored in the "Cover" subdirectory - some are also located in the folder "Magcover". To-do and problems 1) From what I can see, this script is working without bugs and is fast enough. Nevertheless, as I am not a WSH and DB guru, I think that the code could be much more readable if someone else here with more scripting knowledge could optimize it. And because I started taking a deeper look into the SQL commands quite late, there might also be a lot of room for improvements... But, well, it works 2) SOLVED: When using the GameEx C64 database, I had to wait here for more than 15 minutes when reading the directory for the first time! Here is a Q6600 with 2 GByte RAM, all ROMs an images stored on a local HD --- only happens the first time. 3) Although the games have exactly the same names like the screenshots and titles, sometimes a wrong image is being displayed as title (see the "Defender" screenshot below feat. "Defender of the Crown" as "title" - I know, that this is not the real title screen, but that the "_1" picture in GB64...); in fact, there should be none as there is not title shot for the game "Defender"). Any way to turn off the fuzzy matching here? 4) Does GameEx support more than one screenshot per game? 5) Currently, games in the list with the same name are only differenciated by their Gamebase-ID shown in brackets (as long this is activated in the settings). Maybe it would make sense to add additionally info about the version in a second bracket (like "US" or the publisher´s name). 6) Adopt it to Gamebase Amiga etc. ... Have fun... - any suggestions and help are very welcome
-
I simply copied the "Name" column to the "GoodName" column in the "GameData" table of the database - then it worked for quite a lot of games.
-
I have written about this already at http://www.gameex.info/forums/index.php?showtopic=7128. The directory list is being read several times if you have "Show last games played" is activated. Try to disable this option until a fixed GameEx is available.
-
As this tool is not public, I did not know what it does exactly.
-
Simply unbelieveable, I am looking forward to it...
-
Don´t know if this is allowed to be asked - if not, just delete this post -, but is filling the db done manually? I have been thinking about taking a look into Auto-it and trying to build some kind of special website parser which extracts some information. I did not make it as a proposal because I am not a student anymore, have a family and (still) a job etc. - so I don´t know if I have enough time left if this idea would become to complicated. Would a script like this help filling the database? In the last weeks, I took several times a look at gb64.com (especially because of GoodTools renaming) and just visited mobygames.com (because of the descriptions, screen- and packshots).
-
I completely agree with you, but I believe that this is some kind of work-in-progress. If it takes too much time until dat-o-matic is ready, we could try to build this parent-clone sets on our own by comparing the filenames as it has already been suggested. I haven´t tried to generate a *.dat file yet, but I think that if such a half-automatically merged set exists, it might just be a few clicks in clrmamepro to generate a parent-clone *.dat that can be delivered with the GameEx download package. Of course, we can give this parent-clone *.dat back to the no-intro community - maybe this and the support within GameEx will speed things up.
-
I just overflew the readme first an thought that there is just general information - and that your info was the result of some experiments like I did them. Because in the last month being in the retrogaming mood, it was quite difficult for me to understand all this GoodTool/No-Intro/TOSEC stuff as I haven´t seen a lot of pages that explain the retrogaming terms and how to work with all those tools and sets - this forum seems to me to be one of the best sources even if it is not directly connected to those tools. Even the so called "clrmamepro guides" are/were difficult to understand if you don´t have a knowledge of some basic retrogaming terms because they are not explained there (which makes those guides quite unusable IMHO)... That might also have been the reason for not reading the readme all through - because I thought there is no more in-depth information... So, sorry for bloating up this thread unnecessarily... I think that the support of parent-clone dats would be the better (because more error-free) and more standardized solution. Furthermore, it does not look too complicated to me. Just take a look: <game name="Lylat Wars (Europe) (En,Fr,De)"> <description>Lylat Wars (Europe) (En,Fr,De)</description> <release name="Lylat Wars" region="EUR"/> <rom name="Lylat Wars (Europe) (En,Fr,De).n64" size="12582912" crc="94A1A16A" md5="204A14C2AC815AFEE74B58EF9394708D" sha1="8DE2942E59E31FEA235AD672F6096294D8E7D12E"/> </game> <game name="Lylat Wars (Australia) (En,Fr,De)" cloneof="Lylat Wars (Europe) (En,Fr,De)"> <description>Lylat Wars (Australia) (En,Fr,De)</description> <release name="Lylat Wars" region="AUS"/> <rom name="Lylat Wars (Australia) (En,Fr,De).n64" size="12582912" crc="ED1249A5" md5="A51F94CA0CE8BFE1BAD0192957F0DCE0" sha1="9CBF5087D5684D3B5329630932EB2BFB29AF8511"/> </game> <game name="Star Fox 64 (Japan)" cloneof="Lylat Wars (Europe) (En,Fr,De)"> <description>Star Fox 64 (Japan)</description> <release name="Star Fox 64" region="JPN"/> <rom name="Star Fox 64 (Japan).n64" size="12582912" crc="879EDB89" md5="384EF29B9A1F638EAE21A871C2F1CEA9" sha1="86629DEF8EDBCFD1C6A3DE1C5172B14D1BF2F020"/> </game> <game name="Star Fox 64 (USA)" cloneof="Lylat Wars (Europe) (En,Fr,De)"> <description>Star Fox 64 (USA)</description> <rom name="Star Fox 64 (USA).n64" size="12582912" crc="363E7EE8" md5="FECDCBBCD1A178A2F4B29B43FACF9F39" sha1="CFF7FB46E79D35F727E4E20CC4C13492ECD2A2D7"/> </game> <game name="Star Fox 64 (USA) (Rev A)" cloneof="Lylat Wars (Europe) (En,Fr,De)"> <description>Star Fox 64 (USA) (Rev A)</description> <release name="Star Fox 64" region="USA"/> <rom name="Star Fox 64 (USA) (Rev A).n64" size="12582912" crc="D71902B0" md5="EF9A76901153F66123DAFCCB0C13CD94" sha1="7D6B2D10DECD487A172FC4C49E44C4F71AB0D703"/> </game> You simply have to read the dat file into memory and parse for "<game name...>". Search in the same line for "cloneof". If it does not exist, make the value of the "name" field a new entry in a db or alternate map file. Otherwise, append the "cloneof" version to the corresponding parent "name" entry. And BTW: I don´t think that you have to check the size, crc, md5 or sha1 - so this would not have to take too much time . Parsing them and using some kind of cache algorithm to speed it up the next time it is needed (e.g. check the date of the dat and the number of rom files) would first solve the parent-clone problem and second would not need you to have to merge your no-intro collection - and keep it "intact" for updates etc. (even if this increases the size, but as long as clrmamepro does no solid compression, the community won´t use parent-clone archives). The major thing will be to put it in a list that works like the GoodTools list, because for detecting the different version, GameEx seems to unpack the archive (why not simply listing the file names?) and then scans for the filenames. This, of course, does not work for the common No-Intro split sets. And extending detecting (USA) next to (U) is normally just a simple extension of an if-statement
-
Just edited my last post because I just took a closer look into the readme - I should have done this before... BTW.: Is there any way to detect the connection between the parent and the clone without this "specialized" dat? I haven´t found any information on this in a "normal" dat. Is this an extra field in the no-intro database that is normally hidden? I wonder because when I go into the download section of the no-intro site, the information "After you click, the server will generate, on the fly, the requested file." is being displayed.
-
I just tried this hint it on N64 files, and it indeed worked. Looks nice in GameEx now, like GoodTools archives, just the region flags are missing. However: clrmamepro does not create solid 7z archives. So, Mario Kart 64 becomes 40 MByte instead of 8,5 MByte! I have written the following DOS-*.bat file which converts *.zip archives (faster to create with clrmamepro and better than no compression) to solid 7z archives: for %%i in ("*.zip") do %programfiles%\7-Zip\7z.exe e -o"%%~ni" "%%i" && %programfiles%\7-Zip\7z.exe a -t7z -ms -mmt -mx=9 "%%~ni.7z" ".\%%~ni\*" && rmdir /s /q "%%~ni" && del /q "%%i" Just put this *.bat in the directory of your parent-clone no-intro roms and click on it. Of course, 7-zip should be installed before including the command-line version. But as a lot of you said: I also want to keep my roms untouched for updates - a rebuilding before an update would really take quite a lot of time. So it seems to me, No-Intro support would also require reading and analysing a parent-clone XML to get the roms sorted in the correct way. EDIT: This is how it looks like: There is another minor "problem": There is a boxshot for "Star Fox 64", but not for "Lylat Wars". But because the set is named "Lylat Wars", there is no option for the "Star Fox" boxshot to be displayed. If I rename the archive to "Star Fox 64.7z", the boxshot as well as the cardridge is being shown. As it is stated in the readme, this can be solved by resorting the region settings in clrmamepro. Furthermore, the readme says that GoodMerge should be used with the appropriate XMDB file for getting solid archives - quite a little complicated, especially as there are currently no parent-clone XMLs e.g. for NES and SNES...
-
A major problem I have just seen is: How do you find out which games belong together if they are called differently in different regions? Star Fox 64 for N64 was called "Star Fox 64" in US and Japan, in Europe it was apparently called "Lylat Wars". Having it stored in one archive like with GoodTools makes it clear that they belong together, but after using clrmamepro for converting it to No-Intro gives me those two completely different names.
-
Translated: You would have to see my chaos... Well, same here. My comment should have been also a little side-note that a German wants sorted ROMs - what an incident...
-
Filtering out is an option, but it is not as good as the support that we get for the GoodTool ROMs. I don´t want to hide the US and JP roms, I just don´t want to get the game list filled with duplicates because I expect them to show just in the detail view as it is with GoodTool sets. And as cowering does not seem to continue his work, at least not like the no-intro guys, it might be time to think about an extension of GameEx as no-intro seems to be the future for the majority. Writing a tool that merges the No-Intro sets, would be an option, but as I said, this is kind of "non-standard". As fRequEnCy said, my ROMs also should remain untouched for updates and such . Maybe I am going put it on the wish list here... Just a comparison how it could look like: GoodTools vs. GoodMerged No-Intro Oops, German screenshots - isn´t it said that they are way too organized and don´t like it cluttered?
-
Well, if you have these roms, why would you abandom them for no reason? The problem is, that you would need to scan the directories in an completely other way than before because the archives are not merged - an option like "Support No-Intro" on every emulation setup would be necessary. After scanning the directory, you would have to merge the archives internally (e.g. with some kind of array), comparing the first few letters of every game until there is a token like "(USA)" and "(Europe)". These different versions would have to be written in the array of every game. Then, the mentioned tokens would have to be removed in the gamelist, and when selecting a game, the array would have to be read to show all the different variants. On the other hand, if the games are in alphabetical order, you could go line by line and fill e.g. a (temporary) db file comparable to the map files: One game in every line, the file names of the variants following in the next columns to the right (I don´t think that you would need more than 5 of them)... Much work - much more than my past requests concerning network support
-
Hi, I have used GoodTools sets before in GameEx, and this is working great: Only one title in the gamelist, all "subversions" in the detailed view including language flags to the left. However, I don´t need all the hacks, overdumps etc., just the "originals", so renaming to No-Intro would be the way to go. And it seems to me that the bigger part of the GameEx community uses No-Intro sets in the meantime. However, with my setup, No-Intro looks more uncomfortable, as if GameEx does not "support" No-Intro: Most games are listet several times in the game list (because the No-Intro sets are not merged, so you get the languages in the "main list"), and of course, the detailed view does not work as it does with GoodTools set. To get the game list cleaned up, I played with the filter options, but those don´t work as they just filter the sets inside the archives, not the archives themselves. So, to get e.g. only the European releases, would I really have to move all US and JP roms to a different folder? I also converted a GoodTools set to No-Intro and used GoodMerge to convert it back. Of course, this worked and gave me the result I expected, but this would also remove newer No-Intro roms from the set. Furthermore, GoodMerged No-Intro sets are not really common. With screenshots following the No-Intro convention, this also would not help. So, did I oversee some options, or are there some more sophisticated ways to get No-Intro sets working as "clean" as GoodTools sets? Or do we simply have to wait for further GameEx developments? Thanx a lot in advance for your suggestions.
-
New version of the script: @echo on set directory=%1 set directory=%directory:~1,-1% set file=%2 set file=%file:~1,-1% mkdir %temp%\Gameex_temp copy "%directory%\*.cue" %temp%\Gameex_temp copy ..\packiso\*.* %temp%\Gameex_temp cd %temp%\Gameex_temp echo Set objArgs = WScript.Arguments >> messagebox.vbs echo Set objShell = CreateObject("Wscript.Shell") >> messagebox.vbs echo intReturn = objShell.Popup(objArgs(0), 3, "Recreating Playstation image") >> messagebox.vbs messagebox.vbs "Extracting 7z archive with binary data. Please wait..." 7za e "%directory%\*.7z" messagebox.vbs "Adding ECM..." unecm.exe *.ecm del "*.ecm" messagebox.vbs "Uncompressing APE audio tracks..." for %%i in ("%directory%\*.ape") do mac "%%i" "%%~ni.wav" -d && sox.exe "%%~ni.wav" -t raw -s -c 2 -w -r 44100 "%%~ni.bin" && del "*.wav" del "*.exe" messagebox.vbs "Mounting image and starting emulation..." "%programfiles%\Daemon Tools Lite\daemon.exe" -mount 0,"%temp%\Gameex_temp\%file%" cd %programfiles%\GameEx\Emulators\epsxe start/wait %programfiles%\GameEx\Emulators\epsxe\epsxe.exe -nogui -analog1 ping -n 3 localhost > nul "%programfiles%\Daemon Tools Lite\daemon.exe" -unmount 0 rmdir /s /q %temp%\Gameex_temp The original code had one big disadvantage: The temp directory got too big because the there was the copy, the non-ECM file and finally the ECMed bin track - and additionally the ape, the wav and the wav-bin files. Furthermore, copying the 7z archive as well as the ape tracks took unnecessary time - this new script does the un-7z-ing and APE-2-wav conversion "on-the-fly" without using the temp folder. Furthermore, I added self-closing message boxes to get at least some status messages. I am not satisfied with them but maybe they are better than nothing. Last-but-not-least: You don´t need the packiso package anymore, you can use 7za, unecm, mac and sox from their project websites. However, packiso contains all those tools, so it is still worth downloading. Nevertheless: The epsxe parameter -analog1 still seems not to work as expected... Many thanks to Google who helped my find more information about DOS and VBS syntax.
-
I tried this before, and it did not help. Maybe I did something wrong, so I am going to check it again. But I don´t think so because when the list is being opened, a temporary mapfile is created, so reading the file list again should be really fast, but it is not because on every played game, the directory is scanned once again. Please try filemon yourself - it´s a freeware tool by the "famous" Mark Russinovich (and Bryce Cogswell) who had the sysinternals website before and now works for Microsoft.
-
Well, I just had a problem and wanted to solve it I think that using NAS will become more common within the next years, and the problem that the unzip folders are also generated on the NAS and not on a local temp folder is also one thing that still needs to be resolved (maybe this can also be fixed temporarily with a "wrapper" *.bat). As there is just low feedback on this and no one talked about those problems before, I can understand if this is currently low priority. So I hope that my findings will speed things up a little bit If not, with the workaround(s) mentioned, GameEx still is a fantastic piece of software. BTW: I already gave Tom the link to this thread, but thanks for your help anyway.
-
I found the reason for this misbehaviour, and I would call it some kind of bug as it will have impact on every setup where the games are located on a slower drive (network, external USB hd etc.). Again, I used filemon to check what is going on on when GameEx accesses the files, and get some strange error lines: 1763 23:43:17 GameEx.exe:5400 LOCK C:\Program files\GameEx\DATA\data.ldb SUCCESS Excl: Yes Offset: 1073749505 Length: 1 1764 23:43:17 GameEx.exe:5400 READ C:\Program files\GameEx\DATA\data.mdb SUCCESS Offset: 61440 Length: 4096 1765 23:43:17 GameEx.exe:5400 UNLOCK C:\Program files\GameEx\DATA\data.ldb SUCCESS Offset: 1073749505 Length: 1 1766 23:43:17 GameEx.exe:5400 LOCK C:\Program files\GameEx\DATA\data.ldb SUCCESS Excl: Yes Offset: 1073749505 Length: 1 1767 23:43:17 GameEx.exe:5400 READ C:\Program files\GameEx\DATA\data.mdb SUCCESS Offset: 61440 Length: 4096 1768 23:43:17 GameEx.exe:5400 UNLOCK C:\Program files\GameEx\DATA\data.ldb SUCCESS Offset: 1073749505 Length: 1 1769 23:43:17 GameEx.exe:5400 OPEN U:\roms\Sony\psx\Colin McRae Rally (E) (v1.3) [SLES-00477].cue NOT FOUND Options: Open Access: Read-Attributes ... 1773 23:43:17 GameEx.exe:5400 DIRECTORY U:\roms\Sony\psx\ NO SUCH FILE FileBothDirectoryInformation: Colin McRae Rally (E) (v1.3) [SLES-00477].cue ... 1789 23:43:17 GameEx.exe:5400 DIRECTORY U:\roms\Sony\psx\#\ NO SUCH FILE FileBothDirectoryInformation: Colin McRae Rally (E) (v1.3) [SLES-00477].cue ... 1837 23:43:17 GameEx.exe:5400 DIRECTORY U:\roms\Sony\psx\#\007 - The World is Not Enough (E) [SLES-03134]\ NO SUCH FILE FileBothDirectoryInformation: Colin McRae Rally (E) (v1.3) [SLES-00477].cue ... ... 14716 23:43:56 GameEx.exe:5400 DIRECTORY U:\roms\Sony\psx\ NO SUCH FILE FileBothDirectoryInformation: Gran Turismo (E) (No EDC) [SCES-00984].cue ... 14732 23:43:56 GameEx.exe:5400 DIRECTORY U:\roms\Sony\psx\#\ NO SUCH FILE FileBothDirectoryInformation: Gran Turismo (E) (No EDC) [SCES-00984].cue ... 27636 23:44:33 GameEx.exe:5400 DIRECTORY U:\roms\Sony\psx\Z\Zero Divide 2 - The Secret Wish (S) [SCES-01290]\ NO SUCH FILE FileBothDirectoryInformation: Gran Turismo (E) (No EDC) [SCES-00984].cue ... 27650 23:44:33 GameEx.exe:5400 OPEN U:\roms\Sony\psx\G\Gran Turismo (E) (No EDC) [SCES-00984]\Gran Turismo (E) (No EDC) [SCES-00984].cue SUCCESS Options: Open Access: Read-Attributes 27651 23:44:33 GameEx.exe:5400 OPEN U:\roms\Sony\psx\G\Gran Turismo (E) (No EDC) [SCES-00984]\ SUCCESS Options: Open Directory Access: 00100000 27652 23:44:33 GameEx.exe:5400 QUERY INFORMATION U:\roms\Sony\psx\G\Gran Turismo (E) (No EDC) [SCES-00984]\Gran Turismo (E) (No EDC) [SCES-00984].cue SUCCESS FileNetworkOpenInformation 27653 23:44:33 GameEx.exe:5400 CLOSE U:\roms\Sony\psx\G\Gran Turismo (E) (No EDC) [SCES-00984]\Gran Turismo (E) (No EDC) [SCES-00984].cue SUCCESS Result: The directory is read twice, once for searching Colin McRae Rally and once again for searching Gran Turismo. Where are they from? Those two games were the ones that I started before - the "last played games". As a result: Having 10 last played games, the directory is read 10 times searching the CUE files. This also happens if you return from the detail view to the game listing and will make problems on all other emulators that you use. Using a GoodTool archive even makes it worse as GameEx starts searching for the uncompressed image file in the whole directory. Possible Bugfix: Storing also the directory or archive information in the data.mdb. There is currently just one workaround until this problem is being fixed: Disabling the display of the "last played games" in the emulator settings.
-
Here I have added the relevant parts - you can see, that unfortunately there seems to be nothing to see, apart from that there is "no database data". Or did I chose the wrong logfile? 16:15:39.5 10.03.2009: Validating: Emulator_9: Custom Background: 16:15:39.5 10.03.2009: Warning: Emulator_9: Custom Background Does not exist 16:15:39.5 10.03.2009: Validating: Emulator_9: Snap Path: 16:15:39.5 10.03.2009: Warning: Emulator_9: Snap Path Does not exist 16:15:39.5 10.03.2009: Validating: Emulator_9: Custom Art Path 1: 16:15:39.5 10.03.2009: Warning: Emulator_9: Custom Art Path 1 Does not exist 16:15:39.5 10.03.2009: Validating: Emulator_9: Custom Art Path 2: 16:15:39.5 10.03.2009: Warning: Emulator_9: Custom Art Path 2 Does not exist 16:15:39.5 10.03.2009: Validating: Emulator_9: Custom Art Path 3: 16:15:39.5 10.03.2009: Warning: Emulator_9: Custom Art Path 3 Does not exist 16:15:39.5 10.03.2009: Validating: Emulator_9: Control Panel Path: 16:15:39.5 10.03.2009: Warning: Emulator_9: Control Panel Path Does not exist 16:15:39.5 10.03.2009: Validating: Emulator_9: Instructions Path: 16:15:39.5 10.03.2009: Warning: Emulator_9: Instructions Path Does not exist 16:15:39.5 10.03.2009: Validating: Emulator_9: Database: [Console] Sony Playstation 16:15:39.5 10.03.2009: Validating: Emulator_9: Title Snap Path: 16:15:39.5 10.03.2009: Warning: Emulator_9: Title Snap Path Does not exist 16:15:39.5 10.03.2009: Validating: Emulator_9: Box Art Path: 16:15:39.5 10.03.2009: Warning: Emulator_9: Box Art Path Does not exist 16:15:39.5 10.03.2009: Validating: Emulator_9: Cart Art Path: 16:15:39.5 10.03.2009: Warning: Emulator_9: Cart Art Path Does not exist 16:15:39.5 10.03.2009: Validating: Emulator_9: Manual Path: 16:15:39.5 10.03.2009: Warning: Emulator_9: Manual Path Does not exist 16:15:39.6 10.03.2009: Restoring Emulator from Cache 16:15:39.7 10.03.2009: Restoring Emulator Database From Cache 16:16:48.7 10.03.2009: Restoring Emulator from Cache 16:16:48.7 10.03.2009: No Database Data 16:21:30.8 10.03.2009: Restoring Emulator from Cache 16:21:31.0 10.03.2009: Restoring Emulator Database From Cache 16:21:31.1 10.03.2009: Restoring Emulator from Cache 16:21:31.1 10.03.2009: Restoring Emulator Database From Cache 16:21:31.2 10.03.2009: Restoring Emulator from Cache 16:21:31.3 10.03.2009: Restoring Emulator Database From Cache 16:21:31.3 10.03.2009: Restoring Emulator from Cache 16:21:31.4 10.03.2009: Restoring Emulator Database From Cache 16:21:31.4 10.03.2009: Restoring Emulator from Cache 16:21:31.4 10.03.2009: Restoring Emulator Database From Cache 16:21:31.5 10.03.2009: Restoring Emulator from Cache 16:21:31.5 10.03.2009: Restoring Emulator Database From Cache 16:22:19.5 10.03.2009: Running: cmd.exe /c C: epsxe.bat "U:\Emulators\roms\Sony\Complete PSX PAL Collection (Redump.Org)\G\Gran Turismo (E) (No EDC) [SCES-00984]" "Gran Turismo (E) (No EDC) [SCES-00984].cue" 16:23:21.7 10.03.2009: Running: cmd.exe /c C: epsxe.bat "U:\Emulators\roms\Sony\Complete PSX PAL Collection (Redump.Org)\G\Gran Turismo (E) (No EDC) [SCES-00984]" "Gran Turismo (E) (No EDC) [SCES-00984].cue" 16:41:04.5 10.03.2009: Starting Attract Mode ...
-
Not yet gigabit (the switch is outdated ), but as I said: Doing a simple a simple "dir /s *.cue" which should be enough for getting all the game names just takes 10s-20s. I just logged in at home via VNC (so some bandwidth goes away) and I did some measurements: 1) Loading the game list: around 4 minutes! 2) Starting Gran Turismo 1, which is around 300 MByte, needs calling the locally saved epsxe.bat (takes around 20s-30s[!!!] until the debug window is being opened), copying the image file (takes around 45s) and ecm-ing it locally (around 60s). 3) Reading the directory again after closing the emulator: again around 4 minutes (just had here 3:45). Playing around with SNES games, the caching also does not seem to work here - around 60s for reading the files, 30s for a re-reading. But as I said: There might be slightly measurement errors. But starting a game does not make any problems. As the NAS drive is an USB drive, I could test the speed with non-LAN-"direct access", but this would not be a real solution for me... Quite interesting: The psx directory is the biggest one by size, but by the number of files, there are directories with more files. I finally started FileMon (get it from Microsoft) to see what´s going on, and I found out that GameEx is reading the directory several times (I stopped counting at the third repetition), accessing also the data.mdb. Finally a bug e.g. with the new subdirectory scan option? Maybe even problems with all game data on LAN accessed by GameEx as caching does not seem to work here?




