Reply 40 of 71, by wd
The reason why i'm asking:
sb dma transfer is active
game reads dma transfer counter (low part)
[here the dma wrapping due to autoinit happens/can happen]
game reads dma transfer counter (high part)
now the highpart<<8 + lowpart is not correct (which is no
problem in general and can happen on a real pc as well as
far as i understand) but there's an overflow
the overflow doesn't happen if the wrapping in-between those
reads ONLY happens if the read low part was <=0x40 (which did
not happen in dosbox before but can happen now due to the
io access reducing cycles)
I'm trying to estimate the port delay as well but i doubt the results
from the p4 are that useful...