cdrom: add missing BCD->int convert in cdrFreeze()
authorDaniel Silsby <dansilsby@gmail.com>
Tue, 12 Nov 2019 23:48:44 +0000 (18:48 -0500)
committerDaniel Silsby <dansilsby@gmail.com>
Tue, 12 Nov 2019 23:48:44 +0000 (18:48 -0500)
commitf84d4864a52c1d948c30dcc0f565232c6d1500df
tree50f8a8c8fe87585c044115bdc08ae23882f26ac3
parent31d997216cc3ed116125a344a44d2c813d322fc1
cdrom: add missing BCD->int convert in cdrFreeze()

For some Eboot .PBP game images, when loading a savestate, a zlib error
like 'uncompress failed with -5 for block 5383, sector 86132' would be
output to stdout/stderr. The savestate would still be playable, though.

Traced it down to cdrFreeze() failing to convert cdr.Prev from BCD->int
when calling ReadTrack(). Note that the odd 'cdr.Prev[0]++;' line seems
to be someone's hacky way of forcing ReadTrack() to avoid skipping what
it thinks is a duplicate sector read.
libpcsxcore/cdrom.c