diff options
Diffstat (limited to 'src/drive.c')
-rw-r--r-- | src/drive.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/drive.c b/src/drive.c index cc85635..64b765a 100644 --- a/src/drive.c +++ b/src/drive.c @@ -55,7 +55,7 @@ void drive_step_up(drive_t *drive) { if (drive->track < 39 && drive->halftrack == 0) { drive->image_ptr += SECTORS_PER_TRACK[drive->track] << 8; drive->track += 1; - drive->sector = drive->sector % SECTORS_PER_TRACK[drive->track]; + drive->sector = drive->sector * SECTORS_PER_TRACK[drive->track] / SECTORS_PER_TRACK[drive->track - 1]; } } @@ -64,7 +64,7 @@ void drive_step_down(drive_t *drive) { if (drive->track > 0 && drive->halftrack == 0) { drive->image_ptr -= SECTORS_PER_TRACK[drive->track - 1] << 8; drive->track -= 1; - drive->sector = drive->sector % SECTORS_PER_TRACK[drive->track]; + drive->sector = drive->sector * SECTORS_PER_TRACK[drive->track] / SECTORS_PER_TRACK[drive->track + 1]; } } |