Cheers mate, lol, you can imagine I did a facepalm as soon as you mentioned sample and hold
Brilliiant, and yup, I'm wanting to be able to work in 8-bit so that all the processing that goes on in the patch is done in 8-bit rather than Axoloti's default 32-bit. Can't test it right now, but I'm pretty sure I understand what you told me, at least reasonably well anyway.
Right, so if I lower the sample rate of a sinewave by sample and hold and do the bitshift thing, I'll hear an 8-bit sinewave. If I then put that 8-bit sinewave through a low pass filter, I'll hear what an 8-bit sinewave sounds like through a 32-bit filter. So that's my next question; how do I make the filter do it's processing in the same reduced 8-bit fashion? I can't sample and hold a filter, or can I? You mentioned putting a bitshift at the end of the signal path, and that does sound like it's what I'm getting at, but wouldn't that just take the final audio and reduce the bit-depth?
So what I'm getting at is how would I make something like a filter do it's processing in 8-bit rather than 32-bit?
I want to put the 8-bit sinewave through the filter and to ensure that the processing it's doing over that 8-bit sinewave is also done with 8-bit precision. For example, if I could use sample and hold on a filter, would putting it before the filter or after the filter be doing it right or worng, or wouldn't it effect the way it gets processed at all?
Same with envelopes, they're obviously going to be done using 32-bit precision by default so I'd need to change that so that they behave the same as 8-bit envelope processing would.