diff options
| author | LPFaint99 <lpfaint99@gmail.com> | 2009-02-22 07:52:02 +0000 |
|---|---|---|
| committer | LPFaint99 <lpfaint99@gmail.com> | 2009-02-22 07:52:02 +0000 |
| commit | e5cf9c8b8c591ad977b5700f788dcbea88d3d09b (patch) | |
| tree | 96a2e804019b73c6fda39c3657246c46eb618084 /Source/Core/DiscIO/Src/DriveBlob.cpp | |
| parent | 42101f0ce619c7c7eefe961b2c0a29fa0de7ce93 (diff) | |
Fix for read from raw drive on some machines,
must have been a fluke that it worked for me and a few others
thanks to shuffle2 and daxtsu for testing patch
some linux compile fixes
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2360 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source/Core/DiscIO/Src/DriveBlob.cpp')
| -rw-r--r-- | Source/Core/DiscIO/Src/DriveBlob.cpp | 20 |
1 files changed, 5 insertions, 15 deletions
diff --git a/Source/Core/DiscIO/Src/DriveBlob.cpp b/Source/Core/DiscIO/Src/DriveBlob.cpp index fd104f441f..ce7bd4d752 100644 --- a/Source/Core/DiscIO/Src/DriveBlob.cpp +++ b/Source/Core/DiscIO/Src/DriveBlob.cpp @@ -36,7 +36,7 @@ namespace DiscIO } else { - SetSectorSize(2048); + SectorReader::SetSectorSize(2048); #ifdef _LOCKDRIVE // Lock the compact disc in the CD-ROM drive to prevent accidental // removal while reading from it. @@ -127,27 +127,17 @@ namespace DiscIO delete lpSector; } - void DriveReader::SetSectorSize(int blocksize) - { - for (int i = 0; i < CACHE_SIZE; i++) - { - cache[i] = new u8[blocksize]; - cache_tags[i] = (u64)(s64) - 1; - } - m_blocksize = blocksize; - } - const u8 *DriveReader::GetBlockData(u64 block_num) { - if (cache_tags[0] == block_num) + if (SectorReader::cache_tags[0] == block_num) { - return cache[0]; + return SectorReader::cache[0]; } else { GetBlock(block_num, cache[0]); - cache_tags[0] = block_num; - return cache[0]; + SectorReader::cache_tags[0] = block_num; + return SectorReader::cache[0]; } } |
