Thanks for the really quick compile, Ezio!
Tried it, it didn’t make any difference.
So it appears that when the source was changed from the original Windows version for the libretro build, the Prosystem .DAT file was incorporated directly into the Database.c file, instead of still being an external reference file. It also appears that the emulator is no longer checking the “Flags” and “Cart Type” values from this data, because the specific games that need info to pass the cart type and video flags to the emulator core aren’t working. Specifically, Kung Fu Master, Rampage, and Double Dragon.
Kung Fu Master needs the flags set to “2” in order to send the correct video mode, other wise the graphics are garbled - even after I changed the value to “2” in the Database.c file to “2” it is still garbled.
Rampage and Double Dragon are both a different bankswitching type cart, and need the cart type set to “6” in the Prosystem.DAT file passed to the emulator to determine the bankswitch mode and start the game. Currently, they don’t start in the PS3/Libretro port, even though that setting is correct in the Database.c file version of the Prosystem.DAT incorporation, but they do work correctly in every other port of Prosystem (Windows, Linux, PSP, Wii)
So it looks as if the incorporation of the Prosystem.DAT info isn’t reading or sending the cart types and flags info to the emulator core after incorporating this data into the Database.c file.
Not that I’m asking to reinvent the wheel here, but keeping the Prosystem.DAT as an external reference file is important, as the Atari 7800 has a very active homebrew and hack game dev scene, and occasionally new entries need to be made the the Prosystem.DAT to ensure compatibility with the emulator. Incorporating the info from Prosystem.dat into the database.c file makes that impossible from the user/game dev end, and requires frequent updates to the GIT then a recompile to keep up with it.