J'ai fait de la synthèse de table d'onde à quatre voix sur un Atari 2600. Sortie d'un échantillon tous les 76 cycles de processeur - 46 cycles pour la musique et 30 cycles pour l'affichage et d'autres choses. Chaque échantillon devait faire essentiellement les suivantes:
out1 = table1[phase1] + table2[phase2];
out2 = table3[phase3] + table4[phase4];
phase1 = (phase1 + freq1) mod length1;
phase2 = (phase2 + freq2) mod length2;
phase3 = (phase3 + freq3) mod length3;
phase4 = (phase4 + freq4) mod length4;
Le drapeau de transport doit être clair à l'entrée dans le code échantillon génération, et sera clair à la sortie. Le registre Y et l'accumulateur peuvent être n'importe quoi à l'entrée, et seront saccagés à la sortie. Le registre X n'est pas utilisé. Je suppose que la démo de Cubase pour le 64 a chaque boucle en utilisant un tracker, puis utilise un code assez simple pour l'effet d'écho, tout en utilisant le filtrage matériel et le contrôle du volume pour les effets de filtre et de volume.
Avez-vous eu une question spécifique sur la programmation que vous vouliez poser? –