Hacking Project NDS released !

  • Thread starter Thread starter Tuy_
  • Start date Start date
  • Views Views 5,385
  • Replies Replies 26
Second release of Project NDS has happened ! It has the following improvements:

* ADDED - A CRC32 check is done before copying. This way you are sure that what you think is copied is really copied.
* ADDED - Metacritic website data is imported. Tries to match the rominfo to the metacritic scores with a routine that uses a form of the titel of the game.
* ADDED - SearchOption 'Only Owned', when enabled it only shows the owned games
* ADDED - Menu item Help -> Online manual. When clicked it opens the default browser and goes to the ... um ... online help
smile.gif

* FIXED - Importing in an completely empty database could fail under certain conditions
* FIXED - Character ' was imported incorrect
* FIXED - Vista compatibility. This also means that the database & config is stored under Application Data from now on

As always you can find it @ http://projectnds.tuy.be/releases.aspx

Enjoy !
 
Still crashes in Vista 64

Problem signature:
Problem Event Name: CLR20r3
Problem Signature 01: project nds.exe
Problem Signature 02: 1.2.3055.11498
Problem Signature 03: 48297a25
Problem Signature 04: FirebirdSql.Data.FirebirdClient
Problem Signature 05: 2.0.1.0
Problem Signature 06: 4542101c
Problem Signature 07: ab
Problem Signature 08: 3e
Problem Signature 09: System.BadImageFormatException
OS Version: 6.0.6001.2.1.0.256.1
Locale ID: 1033
 
I haven't tried this yet, but do you taking into account CRCs from trimmed versions of the roms, too? Do you identify the rom by its filename or do you map it to a known list by the CRC32? Rom utilities like CLRMAME Pro use SHA1 values to identify roms rather than rely on their filenames. Also, trimmed CRC32 (or SHA1) values would be useful to determine if a user has a badly trimmed rom.
 
Dammit, their seems to be always a version of Vista (Vista32 works) wich make the FireBird database crash. Previous vista 'shit' was also caused by Firebird ...

But apparently there is a specific version of the firebird embedded server for Vista64
smile.gif
You can find it at this location: http://sourceforge.net/project/downloading...e_mirror=heanet
Download the embedded firebird database and just put all the files from the zip file in the location where you installed Project NDS. Can you confirm that it works (I have no Vista64, therefor I cannot test it :/ ) ?


I'm calculating the CRC32 and then this value is compared to the 'official' release info. If a trimmed version is released but it's on that list, then it will see it as valid. Otherwise it will not allow you to put it on the card. If needed I can make this a switch you can set, so it wouldn't do the crc check before copying.

To find out what game it is, the following is used:

- First the fastest way: When the gamenumber is found in front of the filename, that is used.
- if no number is found then it will check the filename, if this can be matched to an original filename from the release lists, then this is taken
- worst case: calculating the crc and then matching it to a known crc from the release info database

When it's not able to match it thru the gamenumber but could using another way, it will add the gamenumber in front of the file, so it will match it quickly next time. You can always change this filename, since no mapping is kept in the db. I choose to do it this way so you can change your files and locations however you see fit.
If no match can be done, it will add '0000' as gamenumber, and will try to match it every time the program start with very low priority, because maybe the game was not yet in the release info db.
 
Why use a database engine for such a small data? I'd rather go with ini files or some sort of custom storage rather than go through db troubles.
 
The data can get big fast, especially since I will add a lot of other web imports.
Even besides that it's good habbit because then you can use queries to access data instead of having it all in memory or scan thru a file.
I really don't recommend using anything else then databases (in some cases maybe xml) for storing data.
Good practice is to use ini's only for settings, not for data. Even then I would rather use an xml file (like I do for Project NDS
wink.gif
)
 

Site & Scene News

Popular threads in this forum