summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib
diff options
context:
space:
mode:
author R. Belmont <rb6502@users.noreply.github.com>2013-01-08 01:42:32 +0000
committer R. Belmont <rb6502@users.noreply.github.com>2013-01-08 01:42:32 +0000
commit2fc04181bc0aca2d135d322ed849db98b4726095 (patch)
treef34f41ad6ff05676e0a0de7e9aa13d9839cefc5a /src/lib
parent306f908c0f0b87c7f8790d6e32ba15ab1da40da3 (diff)
cdrom: fixed getting the type of the last track, fixes PCE Bomberman '94 proto (nw)
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/util/cdrom.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/lib/util/cdrom.c b/src/lib/util/cdrom.c
index 7d9e053b7d4..d783c556503 100644
--- a/src/lib/util/cdrom.c
+++ b/src/lib/util/cdrom.c
@@ -223,6 +223,7 @@ cdrom_file *cdrom_open(const char *inputfile)
/* fill out dummy entries for the last track to help our search */
file->cdtoc.tracks[i].physframeofs = physofs;
+ file->cdtoc.tracks[i].logframeofs = logofs;
file->cdtoc.tracks[i].chdframeofs = 0;
return file;
@@ -305,6 +306,7 @@ cdrom_file *cdrom_open(chd_file *chd)
/* fill out dummy entries for the last track to help our search */
file->cdtoc.tracks[i].physframeofs = physofs;
+ file->cdtoc.tracks[i].logframeofs = logofs;
file->cdtoc.tracks[i].chdframeofs = chdofs;
return file;
@@ -393,6 +395,7 @@ UINT32 cdrom_read_data(cdrom_file *file, UINT32 lbasector, void *buffer, UINT32
/* copy out the requested sector */
UINT32 tracktype = file->cdtoc.tracks[tracknum].trktype;
+
if ((datatype == tracktype) || (datatype == CD_TRACK_RAW_DONTCARE))
{
return (read_partial_sector(file, buffer, chdsector, tracknum, 0, file->cdtoc.tracks[tracknum].datasize) == CHDERR_NONE);