mirror of
https://github.com/davidgiven/fluxengine.git
synced 2025-10-31 11:17:01 -07:00
You can now record multiple revolutions (necessary for the Brother which puts
the index hole in the wrong place). Sector header record GCR is solved, probably; data record GCR is partially solved, although kinda weird (should check that my pulse train decoder isn't dropping bits).
This commit is contained in:
@@ -280,8 +280,18 @@ static void cmd_read(struct read_frame* f)
|
||||
|
||||
/* Start transferring. */
|
||||
|
||||
while (!index_irq && !dma_underrun)
|
||||
int revolutions = f->revolutions;
|
||||
while (!dma_underrun)
|
||||
{
|
||||
/* Have we reached the index pulse? */
|
||||
if (index_irq)
|
||||
{
|
||||
index_irq = false;
|
||||
revolutions--;
|
||||
if (revolutions == 0)
|
||||
break;
|
||||
}
|
||||
|
||||
/* Wait for the next block to be read. */
|
||||
while (dma_reading_from_td == dma_writing_to_td)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user