Here's some more background information that may (or may not) explain the
problems you are experiencing: The MITS disk format is a format for hard-sectored
disks, i.e. disks that have not just one index hole for the start of the track
but an index hole for every sector (plus an extra one for the start of the track).
So an 8" disk had 33 index holes. When looking for a specific sector, the MITS
controller counts the index holes from the start-of-track until it gets there.
Most more recent disk drives use soft-sectored formats, i.e. they only have one
index hole for the start-of-track and (during format) write patterns on the disk
that signify where each sector starts.
Since it is pretty hard to get your hand on 8" hard-sectored disks (and as far as
I know 5.25" hard-sectored disks with 32 sectors don't exist), the AD disk controller
emulates the hard sectors with timers. After measuring the disk rotation time it is
easy to know whether this is a hard-sectored or soft-sectored disk. If it is
hard-sectored then the controller just counts the sector holes. If it is soft-sectored
then the controller divides a track into sectors just by waiting 1/32 of the full rotation
time for each sector. Of course this requires the disk drive to spin at a very regular
rate. If the disk drive itself varies its speed too much between rotations then the
start of the sectors will be off.
Note that such drives would still work fine with soft-sectored formats since those
formats were specifically designed to be more tolerant of drive variations.
And the MITS format can deal with drive variations just fine as long as you use
hard-sectored 8" disks. The issue is that using soft-sectored disks with a format
that requires precise timing also requires a precise disk drive.
Now the TEAC drive I am using is a direct-drive system where the motor is directly
attached to the axle that spins the disk. If your drive uses a belt then belt slippage
may introduce variations in speed that are larger than the controller can tolerate.
The same can happen if the drive mechanics are "sticky".
So it could be an issue with your drive.
I have attempted to work around these problems in software with some experimental
code that is included in the controller. This is controlled by two flags, both
of which are disabled by default:
1) Sync after step. I have seen some drives that slow down their rotation slightly
when stepping the head to a different track. If this flag is enabled then the
controller waits for the "track start" hole to re-sync the sector timer after
stepping the head.
2) "Relative" sector timing. If enabled then instead of just using a timer to find
the start of a sector the controller will actually READ the previous sectors from
the start of the track and do its timing based on where the previous sector
actually ended. This works fairly well but only on disks that have already been
written to (so there actually are sectors that can be read).
You could try experimenting with those flags for your drive and see if that helps.
To set the flags, use the "F [d] [f]" command in the controller where [d] is the
drive number and [f] is the flag setting:
0: both flags disabled
1: Sync after step enabled, relative timing disabled
2: Sync after step disabled, relative timing enabled
3: Sync after step enabled, relative timing enabled
I hope that helps!