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. My bare hosting costs are currently not met so please consider becoming a contibuting member by either clicking this text or the Patreon link on the right.

Patreon

If neither of those of work for you, you can donate any amount by clicking here.

JK1974

Basic Member
  • Posts

    29
  • Joined

  • Last visited

JK1974's Achievements

Super Member!

Super Member! (3/5)

0

Reputation

  1. 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
  2. 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...
  3. 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.
  4. 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?
  5. 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
  6. 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.
  7. 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.
  8. As this tool is not public, I did not know what it does exactly.
  9. Simply unbelieveable, I am looking forward to it...
  10. 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).
  11. 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.
  12. 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
  13. 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.
  14. 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...
  15. 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.
×
×
  • Create New...