Concerning volume, a "classical" 2 voices mixing routine generally uses samples converted to 7 bits (so as the result has 8 bits).unseenmenace wrote: Sat Oct 30, 2021 10:51 pm That's really cool, I'll be interested to hear how big the hit in sound quality and volume is. Not sure if I can make use of movep for buffering in my routine since it needs to be pretty adaptable for different output devices but I'll give it some thought![]()
With the add.l approach (or add.w as mentionned by dbug), you must convert to 6 bits (and unsigned) so as the addition works correctly. Therefore the amplitude of the signal will be divided by 2, so a loss of 6dB.
In the repository containing my replay code, there are also already compiled examples (require STe and probably 1 or 2 MBytes of RAM, I can't remember), using the different techniques I have implemented (and also different MOD files for some), so you will be able to compare the sound quality difference. They are here: https://github.com/Uko-TAL/STE_FullScre ... master/Bin
And the two following test programs use the same MOD file and allow to compare the two mixing techniques:
- MPL.TOS: mix using the move.l, add.l and movep.l technique
- MPFSOV.TOS: mix using move.b, add.b, and move.b
(When launched, wait few seconds until a text is displayed, then press the space bar)
And it is the move.l, add.l and movep.l option that I have also used in my latest demo (see my signature below).