== DETAILS
Since the content file could potentially be huge, hashing the
whole thing at runtime may take a really long time. Plus, it
was loading the whole file into RAM at once.
Now, we only load 1MB at a time and hash up to the first 64MB.
== TESTING
I don't have any large content files to test it with, but I
tested it with a small one and confirmed that the hash was
correct.
== DETAILS
Fixes a bug where content CRC32 is not calculated when content loading
is done by the core instead of libretro. This impacts the ability to
do accurate content matching on netplay.
This notably affects MAME, but is by no means limited to MAME.
Change summary:
- adds a method to the crc32 implementation that calculates crc32 for
a file (as opposed to an in-memory buffer)
- fix a minor bug that would print the "core will load its own content"
right before attempting to load compressed content
- in the actual "core will load its own content" path, calculate the CRC32
and log it before returning
== TESTING
Tested locally on OSX:
- loaded content
- started netplay
- confirmed CRC showing in netplay data
- verified CRC32 against external crc32 tool