Moderately crudely hack in routing side information to the decoders; this is

needed by the Victor 9000 decoder to figure out the right clock rate.
This commit is contained in:
David Given
2019-04-16 19:50:25 +02:00
parent 9b59e7025d
commit 7a49ec7819
25 changed files with 77 additions and 53 deletions

View File

@@ -200,23 +200,23 @@ abort:
return rawbits;
}
nanoseconds_t AbstractDecoder::guessClock(Fluxmap& fluxmap, unsigned physicalTrack) const
nanoseconds_t AbstractDecoder::guessClock(Fluxmap& fluxmap, unsigned physicalTrack, unsigned physicalSide) const
{
if (manualClockRate != 0.0)
return manualClockRate * 1000.0;
return guessClockImpl(fluxmap, physicalTrack);
return guessClockImpl(fluxmap, physicalTrack, physicalSide);
}
nanoseconds_t AbstractDecoder::guessClockImpl(Fluxmap& fluxmap, unsigned) const
nanoseconds_t AbstractDecoder::guessClockImpl(Fluxmap& fluxmap, unsigned, unsigned) const
{
return fluxmap.guessClock();
}
void AbstractSeparatedDecoder::decodeToSectors(const RawBits& bitmap, unsigned physicalTrack,
void AbstractSeparatedDecoder::decodeToSectors(const RawBits& bitmap, unsigned physicalTrack, unsigned physicalSide,
RawRecordVector& rawrecords, SectorVector& sectors)
{
rawrecords = extractRecords(bitmap);
sectors = decodeToSectors(rawrecords, physicalTrack);
sectors = decodeToSectors(rawrecords, physicalTrack, physicalSide);
}
RawRecordVector AbstractSoftSectorDecoder::extractRecords(const RawBits& rawbits) const