- Moved code to retrieve the cart name earlier and possibly rely on it to identify a game instead of game ID + CRC
- Moved code to regroup the different game checks
- Some comments and conditions get reduced
1. Added CRC database lookup for ROM dump validation and file renaming
2. Added delays to improve successful ROM dumping. Especially helps with
2-chip ROMs
3. Fixed database mapper config for Star Trek (not a 2-chip ROM)
1. SMS cart size detection algorithm is updated based on bank count instead of multiples of detected cart size from the header.
2. SMS cart size detection is only invoked if the "TMR SEGA" header is parsed for non-JP carts.
3. Manual selection of ROM size is now present in the SMS/GG menus to allow for manual override as detection algorithm does not work correctly for Cloud Master and Penguin Land US SMS carts.
4. SG-1000 Operation menu now allows for reset instead of relying on a power cycle.
Instead of bank switching on a single bank and reading 1024 bytes
at a time, this update switches 8 banks at a time and reads 8 KiB
per iteration. The hypothesis is that the timing between
bank switching and reading 1024 bytes at a time is insufficient for
the mapper while reading in batches of 8 KiB allows for enough
time for the data to be switched and accessible.
This change fixes the ability to dump the following
VRC2B Famicom cartridges:
B27B8CF4 -> Contra (Japan).nes
49123146 -> Getsu Fuuma Den (Japan).nes
AC9895CC -> Dragon Scroll - Yomigaerishi Maryuu (Japan).nes
Also verified a VRC4E Famicom Cartridge:
C1FBF659 -> Akumajou Special - Boku Dracula-kun (Japan).nes