#174407 - Bregalad - Tue Jun 08, 2010 11:21 am
The DAC on the GBA can work for a various # of bits, and this at various sampling rates. According to belogic.com :
Now, let's consider the following :
* Output for each GB channel can vary between 0 and 15 -> output for all of them vary between 0 and 60
* Output for each Direct Sound channel can very between -128 and 127
--> Total output can vary between -256 and 314, or if it is "offseted" into an unsigned range, form 0 and 570.
This implies the DAC should be at least 10 bit for no loss of quality. (because 9 bits can only handle 0-511).
Also I didn't take in account register 0x82, which allows to change global volume on Direct Sound and Gameboy channels. I'll assume it shifts the output of the corresponding channels right 1 or 2 times if the volume is reduced, dropping the low bit(s) which implies a loss of quality.
What am I missing ?
Quote: |
00=9bit at 32768 Hz
01= 8bit at 65536 Hz 10=7bit at 131072 Hz 11= 6bit at 262144 Hz |
Now, let's consider the following :
* Output for each GB channel can vary between 0 and 15 -> output for all of them vary between 0 and 60
* Output for each Direct Sound channel can very between -128 and 127
--> Total output can vary between -256 and 314, or if it is "offseted" into an unsigned range, form 0 and 570.
This implies the DAC should be at least 10 bit for no loss of quality. (because 9 bits can only handle 0-511).
Also I didn't take in account register 0x82, which allows to change global volume on Direct Sound and Gameboy channels. I'll assume it shifts the output of the corresponding channels right 1 or 2 times if the volume is reduced, dropping the low bit(s) which implies a loss of quality.
What am I missing ?