Romcenter and database updating
Posted: Sun Apr 17, 2011 9:26 am
From time to time, when a new RC version is released it is required that the database is recreated from scratch for a reason. For instance, this happened with the recent release of v3.55. I can only suspect why this is happening (perhaps new fields were added to the db which require re-importing the original dat file), but it would be nice if a way existed to recreate the database without loosing all the settings and rom paths one has in the existing database.
For instance, the existing DB could be opened as read-only, importing only the settings and rom paths (database branch of the tree could remain empty) until the user provided the mame.exe or dat file containing the database entries. Then, the database part of the tree would be filled and the database could become read-write again.
Another idea would be this: when the user tries to open the old DB, RC, instead of telling him that the database needs to be recreated, it could do the following:
- Warn him that if he wishes to continue, a new DB will be created using the old one as a template, so he will have to enter the new DB filename and the respective mame.exe / dat file to use.
- Create a new DB
- Import all setting and rom paths from the old one.
- Ask the user if he wishes to delete the old DB or keep it so that he can still open it from the older RC version.
A third idea (perhaps the simplest and more elegant one):
- Leave everything as is - the user must manually create a new DB.
- Add a new menu entry "import settings and rom paths from another DB". That would do what it says. It would just import all settings (preferences) and rom paths (just the paths, not the info about the files they contain) from an older DB and after importing them, RC would automatically re-read them and add all relevant file info to the opened DB.
This could be a major time-saver for a user who has several databases. I don't know how much work it would require though. It would be nice to see it in a future 3.x update, if not too much trouble.
For instance, the existing DB could be opened as read-only, importing only the settings and rom paths (database branch of the tree could remain empty) until the user provided the mame.exe or dat file containing the database entries. Then, the database part of the tree would be filled and the database could become read-write again.
Another idea would be this: when the user tries to open the old DB, RC, instead of telling him that the database needs to be recreated, it could do the following:
- Warn him that if he wishes to continue, a new DB will be created using the old one as a template, so he will have to enter the new DB filename and the respective mame.exe / dat file to use.
- Create a new DB
- Import all setting and rom paths from the old one.
- Ask the user if he wishes to delete the old DB or keep it so that he can still open it from the older RC version.
A third idea (perhaps the simplest and more elegant one):
- Leave everything as is - the user must manually create a new DB.
- Add a new menu entry "import settings and rom paths from another DB". That would do what it says. It would just import all settings (preferences) and rom paths (just the paths, not the info about the files they contain) from an older DB and after importing them, RC would automatically re-read them and add all relevant file info to the opened DB.
This could be a major time-saver for a user who has several databases. I don't know how much work it would require though. It would be nice to see it in a future 3.x update, if not too much trouble.