C'est ça.
Sur le STE, on a simplement un registre 8 bits (74F374) avec un DAC 8 bits parallèle (DAC0802) branché directement dessus. Il n'y a pas de broche d'horloge, la sortie est mise à jour quand on écrit dans le registre. On peut utiliser le contrôleur DMA pour transférer régulièrement des données dans le registre, mais il n'y a le choix qu'entre 4 fréquences, donc certains préfèrent utiliser un timer pour ça.
Sur la Jaguar c'est différent : c'est un DAC 16 bits série, qui a besoin d'un flux continu de données, d'une horloge et d'un signal de synchro gauche/droite. Une fois que le module I²S est initialisé, tout ça est géré automatiquement : la valeur de LTXD et RTXD est capturée une fois par cycle d'échantillonnage. Donc si tu utilises un timer plutôt que l'interruption I²S :
- si fréq. timer > fréq. I²S : il y a des échantillons qui sont ignorés
- si fréq. timer < fréq. I²S : il y a des échantillons qui sont utilisés deux fois (ou plus)
- si fréq. timer = fréq. I²S : ça marche, mais comme le déphasage I²S/timer est imprévisible, tu peux avoir une race condition entre l'écriture des registres audio et leur lecture
Bref autant utiliser l'interruption I²S : ça marche mieux et c'est fait exprès pour ça. Quant à savoir pourquoi certains jeux utilisent un timer... ils ont peut-être voulu faire comme ils avaient l'habitude sur les machines qu'ils connaissaient, ou pas bien compris la doc. C'est vrai que c'est pas forcément évident si on ne sait pas comment fonctionne l'électronique qu'il y a derrière. (Et puis si on commence à lister les jeux Jaguar qui font des trucs bizarres/douteux, on n'a pas fini

)
Sinon, Super Burnout est techniquement très bon en effet
