Merci
J'ai bien l'intention de rattraper GLX au niveau du mixage, pour le reste, mod master lui est déjà supèrieur.
La, j'ai downgrade Mod Master 2.2 qui supporte le HP Interne, SB, SBPro, SB16, Gravis et Covox.
J'ai supprimé partiellement le code Gravis pour faire de la place, mais j'aimerais pouvoir le faire fonctionner. C'est d'ailleurs mon intention première, faire fonctionner une gravis sur un XT.
J'ai découvert la premiere fois les .MOD sur mon PC1512, je ne me souviens plus du nom du player...
Et ensuite Mod Play sur 286 et plus.
Le mixage se fait en additionnant chaque sample à des vitesses et volumes different.
Pour le volume, on utilise une table précalculée, elle ne prends pas trop de place car il y a 64 niveaux de volume different.
Pour le vitesse, on fait 2 additions (Calcul en virgule fixe).
L'ennemis de la vitesse, c'est les boucles. Pour supprimer ce soucis, j'ai étendu les samples pour pouvoir calculer 64 échantillons d'un coup.
J'ajuste la position du pointeur (Boucle ou pas boucle) après le calcul des 64 échantillons.
Pour le fun, voici le Coeur du code de mixage: (J ai l'intention de publier les sources)
BH: Volume
AL: Incrément Décimal
BP: Incrément entier
CX: Mono/Stereo
MOV BL,ES:[SI] ;BL=Sample sans volume
MOV BL,[BX] ;DH=Sample avec le volume et BX offset Volume
ADD [DI],BL ;Mixage
ADD DI,CX ;CX=1 => Mono CX=2 => Stereo Changé en INC DI dans la version XT
ADD AH,AL ;Partie décimale
ADC SI,BP ;Partie Entière