Burczenie może wynikać z tego że CPU i SDMA mają osobne kwarce, więc za każdym VBLem trzeba doczytać inną ilość sampli, a ty stosujesz stały bufor, więc mogą robić się 'dziury'.
Zresztą te 50Hz jest umowne i zależy od zegara CPU (Do STE były wkładane chyba ze dwa różne). W ST w trybie "50Hz" VBL = CPU clock / 313 / 512. w trybie "60Hz" VBL = CPU clock / 262 / 508. Dla TT będzie też inaczej, tylko jeden tryb, coś koło 59Hz, nie pamiętam teraz dokładnych cyklów.
Dodatkowo, SDMA ma 8bajtowy bufor FIFO, no i przerwanie czy liczniki pokazują stan załadowania danych do bufora a nie stan aktualnie odtwarzanych danych. Na Atari-forum ktoś kiedyś podawał jak obliczyć wielkość bufora na ramkę, poszukam.
Tak się zastanawiam czemu robisz to na VBL, kod tego wymaga?
