Revision 111
Added by markw about 11 years ago
common/a8core/pokey_mixer.vhdl | ||
---|---|---|
LIBRARY ieee;
|
||
USE ieee.std_logic_1164.all;
|
||
use ieee.numeric_std.all;
|
||
use IEEE.STD_LOGIC_MISC.all;
|
||
|
||
ENTITY pokey_mixer IS
|
||
PORT
|
||
... | ... | |
ARCHITECTURE vhdl OF pokey_mixer IS
|
||
signal volume_next : std_logic_vector(15 downto 0);
|
||
signal volume_reg : std_logic_vector(15 downto 0);
|
||
signal volume_all_next : std_logic_vector(15 downto 0);
|
||
signal volume_all_reg : std_logic_vector(15 downto 0);
|
||
|
||
signal volume_sum : std_logic_vector(5 downto 0);
|
||
signal volume_sum : std_logic_vector(9 downto 0);
|
||
|
||
signal channel_0_en : std_logic_vector(3 downto 0);
|
||
signal channel_1_en : std_logic_vector(3 downto 0);
|
||
signal channel_2_en : std_logic_vector(3 downto 0);
|
||
signal channel_3_en : std_logic_vector(3 downto 0);
|
||
|
||
signal gtia_en : std_logic_vector(15 downto 0);
|
||
BEGIN
|
||
-- register
|
||
process(clk)
|
||
begin
|
||
if (clk'event and clk='1') then
|
||
volume_reg <= volume_next;
|
||
volume_all_reg <= volume_all_next;
|
||
end if;
|
||
end process;
|
||
|
||
... | ... | |
-- end if;
|
||
end process;
|
||
|
||
process (channel_0_en,channel_1_en,channel_2_en,channel_3_en,covox_CHANNEL_0,covox_channel_1,gtia_en)
|
||
process (channel_0_en,channel_1_en,channel_2_en,channel_3_en,covox_CHANNEL_0,covox_channel_1,gtia_sound)
|
||
variable channel0_en_long : unsigned(10 downto 0);
|
||
variable channel1_en_long : unsigned(10 downto 0);
|
||
variable channel2_en_long : unsigned(10 downto 0);
|
||
variable channel3_en_long : unsigned(10 downto 0);
|
||
variable gtia_sound_long : unsigned(10 downto 0);
|
||
variable covox_0_long : unsigned(10 downto 0);
|
||
variable covox_1_long : unsigned(10 downto 0);
|
||
|
||
variable volume_int_sum : unsigned(10 downto 0);
|
||
begin
|
||
volume_sum <=
|
||
std_logic_vector
|
||
(
|
||
unsigned('0'&(
|
||
unsigned('0'&CHANNEL_0_en)
|
||
+ unsigned('0'&CHANNEL_1_en)
|
||
))
|
||
+
|
||
unsigned('0'&(
|
||
unsigned('0'&CHANNEL_2_en) +
|
||
unsigned('0'&CHANNEL_3_en)
|
||
))
|
||
);
|
||
channel0_en_long := (others=>'0');
|
||
channel1_en_long := (others=>'0');
|
||
channel2_en_long := (others=>'0');
|
||
channel3_en_long := (others=>'0');
|
||
gtia_sound_long := (others=>'0');
|
||
covox_0_long := (others=>'0');
|
||
covox_1_long := (others=>'0');
|
||
|
||
channel0_en_long(7 downto 4) := unsigned(channel_0_en);
|
||
channel1_en_long(7 downto 4) := unsigned(channel_1_en);
|
||
channel2_en_long(7 downto 4) := unsigned(channel_2_en);
|
||
channel3_en_long(7 downto 4) := unsigned(channel_3_en);
|
||
gtia_sound_long(7 downto 4) := gtia_sound>ia_sound>ia_sound>ia_sound;
|
||
covox_0_long(7 downto 0) := unsigned(covox_channel_0);
|
||
covox_1_long(7 downto 0) := unsigned(covox_channel_1);
|
||
|
||
volume_int_sum := ((channel0_en_long + channel1_en_long) + (channel2_en_long + channel3_en_long)) + (gtia_sound_long + (covox_0_long + covox_1_long));
|
||
|
||
volume_sum(8 downto 0) <= std_logic_vector(volume_int_sum(8 downto 0));
|
||
volume_sum(9) <= volume_int_sum(10) or volume_int_sum(9);
|
||
end process;
|
||
|
||
gtia_en(15 downto 13) <= (others=>'0');
|
||
gtia_en(12) <= gtia_sound;
|
||
gtia_en(11 downto 0) <= (others=>'0');
|
||
process (volume_sum, volume_next, gtia_en, covOX_CHANNEL_0,covOX_CHANNEL_1)
|
||
process (volume_sum, volume_next)
|
||
begin
|
||
case volume_sum is
|
||
when "000000" =>
|
||
case volume_sum(9 downto 0) is
|
||
when "0000000000" =>
|
||
volume_next <= X"0000";
|
||
when "000001" =>
|
||
volume_next <= X"05e4";
|
||
when "000010" =>
|
||
volume_next <= X"0b90";
|
||
when "000011" =>
|
||
volume_next <= X"1107";
|
||
when "000100" =>
|
||
volume_next <= X"1649";
|
||
when "000101" =>
|
||
volume_next <= X"1b57";
|
||
when "000110" =>
|
||
volume_next <= X"2032";
|
||
when "000111" =>
|
||
volume_next <= X"24db";
|
||
when "001000" =>
|
||
volume_next <= X"2954";
|
||
when "001001" =>
|
||
volume_next <= X"2d9d";
|
||
when "001010" =>
|
||
volume_next <= X"31b8";
|
||
when "001011" =>
|
||
volume_next <= X"35a6";
|
||
when "001100" =>
|
||
volume_next <= X"3968";
|
||
when "001101" =>
|
||
volume_next <= X"3cff";
|
||
when "001110" =>
|
||
volume_next <= X"406b";
|
||
when "001111" =>
|
||
volume_next <= X"43af";
|
||
when "010000" =>
|
||
volume_next <= X"46cc";
|
||
when "010001" =>
|
||
volume_next <= X"49c2";
|
||
when "010010" =>
|
||
volume_next <= X"4c92";
|
||
when "010011" =>
|
||
volume_next <= X"4f3e";
|
||
when "010100" =>
|
||
volume_next <= X"51c7";
|
||
when "010101" =>
|
||
volume_next <= X"542d";
|
||
when "010110" =>
|
||
volume_next <= X"5673";
|
||
when "010111" =>
|
||
volume_next <= X"5898";
|
||
when "011000" =>
|
||
volume_next <= X"5a9f";
|
||
when "011001" =>
|
||
volume_next <= X"5c88";
|
||
when "011010" =>
|
||
volume_next <= X"5e55";
|
||
when "011011" =>
|
||
volume_next <= X"6006";
|
||
when "011100" =>
|
||
volume_next <= X"619d";
|
||
when "011101" =>
|
||
volume_next <= X"631a";
|
||
when "011110" =>
|
||
volume_next <= X"647f";
|
||
when "011111" =>
|
||
volume_next <= X"65ce";
|
||
when "100000" =>
|
||
volume_next <= X"6706";
|
||
when "100001" =>
|
||
volume_next <= X"682a";
|
||
when "100010" =>
|
||
volume_next <= X"6939";
|
||
when "100011" =>
|
||
volume_next <= X"6a37";
|
||
when "100100" =>
|
||
volume_next <= X"6b22";
|
||
when "100101" =>
|
||
volume_next <= X"6bfe";
|
||
when "100110" =>
|
||
volume_next <= X"6cca";
|
||
when "100111" =>
|
||
volume_next <= X"6d88";
|
||
when "101000" =>
|
||
volume_next <= X"6e38";
|
||
when "101001" =>
|
||
volume_next <= X"6edd";
|
||
when "101010" =>
|
||
volume_next <= X"6f77";
|
||
when "101011" =>
|
||
volume_next <= X"7008";
|
||
when "101100" =>
|
||
volume_next <= X"708f";
|
||
when "101101" =>
|
||
volume_next <= X"710f";
|
||
when "101110" =>
|
||
volume_next <= X"7189";
|
||
when "101111" =>
|
||
volume_next <= X"71fe";
|
||
when "110000" =>
|
||
volume_next <= X"726e";
|
||
when "110001" =>
|
||
volume_next <= X"72db";
|
||
when "110010" =>
|
||
volume_next <= X"7347";
|
||
when "110011" =>
|
||
volume_next <= X"73b1";
|
||
when "110100" =>
|
||
volume_next <= X"741c";
|
||
when "110101" =>
|
||
volume_next <= X"7488";
|
||
when "110110" =>
|
||
volume_next <= X"74f6";
|
||
when "110111" =>
|
||
volume_next <= X"7568";
|
||
when "111000" =>
|
||
volume_next <= X"75df";
|
||
when "111001" =>
|
||
volume_next <= X"765c";
|
||
when "111010" =>
|
||
volume_next <= X"76df";
|
||
when "111011" =>
|
||
volume_next <= X"776b";
|
||
when "111100" =>
|
||
volume_next <= X"7800";
|
||
when "0000000001" =>
|
||
volume_next <= X"00cc";
|
||
when "0000000010" =>
|
||
volume_next <= X"0198";
|
||
when "0000000011" =>
|
||
volume_next <= X"0264";
|
||
when "0000000100" =>
|
||
volume_next <= X"032f";
|
||
when "0000000101" =>
|
||
volume_next <= X"03fa";
|
||
when "0000000110" =>
|
||
volume_next <= X"04c4";
|
||
when "0000000111" =>
|
||
volume_next <= X"058e";
|
||
when "0000001000" =>
|
||
volume_next <= X"0657";
|
||
when "0000001001" =>
|
||
volume_next <= X"0720";
|
||
when "0000001010" =>
|
||
volume_next <= X"07e8";
|
||
when "0000001011" =>
|
||
volume_next <= X"08b0";
|
||
when "0000001100" =>
|
||
volume_next <= X"0977";
|
||
when "0000001101" =>
|
||
volume_next <= X"0a3e";
|
||
when "0000001110" =>
|
||
volume_next <= X"0b05";
|
||
when "0000001111" =>
|
||
volume_next <= X"0bcb";
|
||
when "0000010000" =>
|
||
volume_next <= X"0c91";
|
||
when "0000010001" =>
|
||
volume_next <= X"0d56";
|
||
when "0000010010" =>
|
||
volume_next <= X"0e1a";
|
||
when "0000010011" =>
|
||
volume_next <= X"0edf";
|
||
when "0000010100" =>
|
||
volume_next <= X"0fa2";
|
||
when "0000010101" =>
|
||
volume_next <= X"1066";
|
||
when "0000010110" =>
|
||
volume_next <= X"1128";
|
||
when "0000010111" =>
|
||
volume_next <= X"11eb";
|
||
when "0000011000" =>
|
||
volume_next <= X"12ad";
|
||
when "0000011001" =>
|
||
volume_next <= X"136e";
|
||
when "0000011010" =>
|
||
volume_next <= X"142f";
|
||
when "0000011011" =>
|
||
volume_next <= X"14f0";
|
||
when "0000011100" =>
|
||
volume_next <= X"15b0";
|
||
when "0000011101" =>
|
||
volume_next <= X"1670";
|
||
when "0000011110" =>
|
||
volume_next <= X"172f";
|
||
when "0000011111" =>
|
||
volume_next <= X"17ee";
|
||
when "0000100000" =>
|
||
volume_next <= X"18ac";
|
||
when "0000100001" =>
|
||
volume_next <= X"196a";
|
||
when "0000100010" =>
|
||
volume_next <= X"1a27";
|
||
when "0000100011" =>
|
||
volume_next <= X"1ae4";
|
||
when "0000100100" =>
|
||
volume_next <= X"1ba1";
|
||
when "0000100101" =>
|
||
volume_next <= X"1c5d";
|
||
when "0000100110" =>
|
||
volume_next <= X"1d18";
|
||
when "0000100111" =>
|
||
volume_next <= X"1dd3";
|
||
when "0000101000" =>
|
||
volume_next <= X"1e8e";
|
||
when "0000101001" =>
|
||
volume_next <= X"1f48";
|
||
when "0000101010" =>
|
||
volume_next <= X"2002";
|
||
when "0000101011" =>
|
||
volume_next <= X"20bc";
|
||
when "0000101100" =>
|
||
volume_next <= X"2174";
|
||
when "0000101101" =>
|
||
volume_next <= X"222d";
|
||
when "0000101110" =>
|
||
volume_next <= X"22e5";
|
||
when "0000101111" =>
|
||
volume_next <= X"239d";
|
||
when "0000110000" =>
|
||
volume_next <= X"2454";
|
||
when "0000110001" =>
|
||
volume_next <= X"250a";
|
||
when "0000110010" =>
|
||
volume_next <= X"25c1";
|
||
when "0000110011" =>
|
||
volume_next <= X"2677";
|
||
when "0000110100" =>
|
||
volume_next <= X"272c";
|
||
when "0000110101" =>
|
||
volume_next <= X"27e1";
|
||
when "0000110110" =>
|
||
volume_next <= X"2895";
|
||
when "0000110111" =>
|
||
volume_next <= X"2949";
|
||
when "0000111000" =>
|
||
volume_next <= X"29fd";
|
||
when "0000111001" =>
|
||
volume_next <= X"2ab0";
|
||
when "0000111010" =>
|
||
volume_next <= X"2b63";
|
||
when "0000111011" =>
|
||
volume_next <= X"2c15";
|
||
when "0000111100" =>
|
||
volume_next <= X"2cc7";
|
||
when "0000111101" =>
|
||
volume_next <= X"2d79";
|
||
when "0000111110" =>
|
||
volume_next <= X"2e2a";
|
||
when "0000111111" =>
|
||
volume_next <= X"2eda";
|
||
when "0001000000" =>
|
||
volume_next <= X"2f8b";
|
||
when "0001000001" =>
|
||
volume_next <= X"303a";
|
||
when "0001000010" =>
|
||
volume_next <= X"30ea";
|
||
when "0001000011" =>
|
||
volume_next <= X"3198";
|
||
when "0001000100" =>
|
||
volume_next <= X"3247";
|
||
when "0001000101" =>
|
||
volume_next <= X"32f5";
|
||
when "0001000110" =>
|
||
volume_next <= X"33a2";
|
||
when "0001000111" =>
|
||
volume_next <= X"3450";
|
||
when "0001001000" =>
|
||
volume_next <= X"34fc";
|
||
when "0001001001" =>
|
||
volume_next <= X"35a9";
|
||
when "0001001010" =>
|
||
volume_next <= X"3654";
|
||
when "0001001011" =>
|
||
volume_next <= X"3700";
|
||
when "0001001100" =>
|
||
volume_next <= X"37ab";
|
||
when "0001001101" =>
|
||
volume_next <= X"3856";
|
||
when "0001001110" =>
|
||
volume_next <= X"3900";
|
||
when "0001001111" =>
|
||
volume_next <= X"39a9";
|
||
when "0001010000" =>
|
||
volume_next <= X"3a53";
|
||
when "0001010001" =>
|
||
volume_next <= X"3afc";
|
||
when "0001010010" =>
|
||
volume_next <= X"3ba4";
|
||
when "0001010011" =>
|
||
volume_next <= X"3c4c";
|
||
when "0001010100" =>
|
||
volume_next <= X"3cf4";
|
||
when "0001010101" =>
|
||
volume_next <= X"3d9b";
|
||
when "0001010110" =>
|
||
volume_next <= X"3e42";
|
||
when "0001010111" =>
|
||
volume_next <= X"3ee8";
|
||
when "0001011000" =>
|
||
volume_next <= X"3f8e";
|
||
when "0001011001" =>
|
||
volume_next <= X"4034";
|
||
when "0001011010" =>
|
||
volume_next <= X"40d9";
|
||
when "0001011011" =>
|
||
volume_next <= X"417d";
|
||
when "0001011100" =>
|
||
volume_next <= X"4222";
|
||
when "0001011101" =>
|
||
volume_next <= X"42c5";
|
||
when "0001011110" =>
|
||
volume_next <= X"4369";
|
||
when "0001011111" =>
|
||
volume_next <= X"440c";
|
||
when "0001100000" =>
|
||
volume_next <= X"44af";
|
||
when "0001100001" =>
|
||
volume_next <= X"4551";
|
||
when "0001100010" =>
|
||
volume_next <= X"45f3";
|
||
when "0001100011" =>
|
||
volume_next <= X"4694";
|
||
when "0001100100" =>
|
||
volume_next <= X"4735";
|
||
when "0001100101" =>
|
||
volume_next <= X"47d5";
|
||
when "0001100110" =>
|
||
volume_next <= X"4876";
|
||
when "0001100111" =>
|
||
volume_next <= X"4915";
|
||
when "0001101000" =>
|
||
volume_next <= X"49b5";
|
||
when "0001101001" =>
|
||
volume_next <= X"4a53";
|
||
when "0001101010" =>
|
||
volume_next <= X"4af2";
|
||
when "0001101011" =>
|
||
volume_next <= X"4b90";
|
||
when "0001101100" =>
|
||
volume_next <= X"4c2e";
|
||
when "0001101101" =>
|
||
volume_next <= X"4ccb";
|
||
when "0001101110" =>
|
||
volume_next <= X"4d68";
|
||
when "0001101111" =>
|
||
volume_next <= X"4e04";
|
||
when "0001110000" =>
|
||
volume_next <= X"4ea0";
|
||
when "0001110001" =>
|
||
volume_next <= X"4f3c";
|
||
when "0001110010" =>
|
||
volume_next <= X"4fd7";
|
||
when "0001110011" =>
|
||
volume_next <= X"5072";
|
||
when "0001110100" =>
|
||
volume_next <= X"510d";
|
||
when "0001110101" =>
|
||
volume_next <= X"51a7";
|
||
when "0001110110" =>
|
||
volume_next <= X"5240";
|
||
when "0001110111" =>
|
||
volume_next <= X"52da";
|
||
when "0001111000" =>
|
||
volume_next <= X"5372";
|
||
when "0001111001" =>
|
||
volume_next <= X"540b";
|
||
when "0001111010" =>
|
||
volume_next <= X"54a3";
|
||
when "0001111011" =>
|
||
volume_next <= X"553a";
|
||
when "0001111100" =>
|
||
volume_next <= X"55d2";
|
||
when "0001111101" =>
|
||
volume_next <= X"5669";
|
||
when "0001111110" =>
|
||
volume_next <= X"56ff";
|
||
when "0001111111" =>
|
||
volume_next <= X"5795";
|
||
when "0010000000" =>
|
||
volume_next <= X"582b";
|
||
when "0010000001" =>
|
||
volume_next <= X"58c0";
|
||
when "0010000010" =>
|
||
volume_next <= X"5955";
|
||
when "0010000011" =>
|
||
volume_next <= X"59e9";
|
||
when "0010000100" =>
|
||
volume_next <= X"5a7d";
|
||
when "0010000101" =>
|
||
volume_next <= X"5b11";
|
||
when "0010000110" =>
|
||
volume_next <= X"5ba4";
|
||
when "0010000111" =>
|
||
volume_next <= X"5c37";
|
||
when "0010001000" =>
|
||
volume_next <= X"5cca";
|
||
when "0010001001" =>
|
||
volume_next <= X"5d5c";
|
||
when "0010001010" =>
|
||
volume_next <= X"5dee";
|
||
when "0010001011" =>
|
||
volume_next <= X"5e7f";
|
||
when "0010001100" =>
|
||
volume_next <= X"5f10";
|
||
when "0010001101" =>
|
||
volume_next <= X"5fa0";
|
||
when "0010001110" =>
|
||
volume_next <= X"6031";
|
||
when "0010001111" =>
|
||
volume_next <= X"60c0";
|
||
when "0010010000" =>
|
||
volume_next <= X"6150";
|
||
when "0010010001" =>
|
||
volume_next <= X"61df";
|
||
when "0010010010" =>
|
||
volume_next <= X"626d";
|
||
when "0010010011" =>
|
||
volume_next <= X"62fc";
|
||
when "0010010100" =>
|
||
volume_next <= X"638a";
|
||
when "0010010101" =>
|
||
volume_next <= X"6417";
|
||
when "0010010110" =>
|
||
volume_next <= X"64a4";
|
||
when "0010010111" =>
|
||
volume_next <= X"6531";
|
||
when "0010011000" =>
|
||
volume_next <= X"65bd";
|
||
when "0010011001" =>
|
||
volume_next <= X"6649";
|
||
when "0010011010" =>
|
||
volume_next <= X"66d5";
|
||
when "0010011011" =>
|
||
volume_next <= X"6760";
|
||
when "0010011100" =>
|
||
volume_next <= X"67eb";
|
||
when "0010011101" =>
|
||
volume_next <= X"6875";
|
||
when "0010011110" =>
|
||
volume_next <= X"68ff";
|
||
when "0010011111" =>
|
||
volume_next <= X"6989";
|
||
when "0010100000" =>
|
||
volume_next <= X"6a12";
|
||
when "0010100001" =>
|
||
volume_next <= X"6a9b";
|
||
when "0010100010" =>
|
||
volume_next <= X"6b23";
|
||
when "0010100011" =>
|
||
volume_next <= X"6bac";
|
||
when "0010100100" =>
|
||
volume_next <= X"6c33";
|
||
when "0010100101" =>
|
||
volume_next <= X"6cbb";
|
||
when "0010100110" =>
|
||
volume_next <= X"6d42";
|
||
when "0010100111" =>
|
||
volume_next <= X"6dc9";
|
||
when "0010101000" =>
|
||
volume_next <= X"6e4f";
|
||
when "0010101001" =>
|
||
volume_next <= X"6ed5";
|
||
when "0010101010" =>
|
||
volume_next <= X"6f5a";
|
||
when "0010101011" =>
|
||
volume_next <= X"6fdf";
|
||
when "0010101100" =>
|
||
volume_next <= X"7064";
|
||
when "0010101101" =>
|
||
volume_next <= X"70e9";
|
||
when "0010101110" =>
|
||
volume_next <= X"716d";
|
||
when "0010101111" =>
|
||
volume_next <= X"71f0";
|
||
when "0010110000" =>
|
||
volume_next <= X"7274";
|
||
when "0010110001" =>
|
||
volume_next <= X"72f7";
|
||
when "0010110010" =>
|
||
volume_next <= X"7379";
|
||
when "0010110011" =>
|
||
volume_next <= X"73fc";
|
||
when "0010110100" =>
|
||
volume_next <= X"747d";
|
||
when "0010110101" =>
|
||
volume_next <= X"74ff";
|
||
when "0010110110" =>
|
||
volume_next <= X"7580";
|
||
when "0010110111" =>
|
||
volume_next <= X"7601";
|
||
when "0010111000" =>
|
||
volume_next <= X"7681";
|
||
when "0010111001" =>
|
||
volume_next <= X"7701";
|
||
when "0010111010" =>
|
||
volume_next <= X"7781";
|
||
when "0010111011" =>
|
||
volume_next <= X"7800";
|
||
when "0010111100" =>
|
||
volume_next <= X"787f";
|
||
when "0010111101" =>
|
||
volume_next <= X"78fe";
|
||
when "0010111110" =>
|
||
volume_next <= X"797c";
|
||
when "0010111111" =>
|
||
volume_next <= X"79fa";
|
||
when "0011000000" =>
|
||
volume_next <= X"7a77";
|
||
when "0011000001" =>
|
||
volume_next <= X"7af5";
|
||
when "0011000010" =>
|
||
volume_next <= X"7b71";
|
||
when "0011000011" =>
|
||
volume_next <= X"7bee";
|
||
when "0011000100" =>
|
||
volume_next <= X"7c6a";
|
||
when "0011000101" =>
|
||
volume_next <= X"7ce6";
|
||
when "0011000110" =>
|
||
volume_next <= X"7d61";
|
||
when "0011000111" =>
|
||
volume_next <= X"7ddc";
|
||
when "0011001000" =>
|
||
volume_next <= X"7e57";
|
||
when "0011001001" =>
|
||
volume_next <= X"7ed1";
|
||
when "0011001010" =>
|
||
volume_next <= X"7f4b";
|
||
when "0011001011" =>
|
||
volume_next <= X"7fc5";
|
||
when "0011001100" =>
|
||
volume_next <= X"803e";
|
||
when "0011001101" =>
|
||
volume_next <= X"80b7";
|
||
when "0011001110" =>
|
||
volume_next <= X"812f";
|
||
when "0011001111" =>
|
||
volume_next <= X"81a7";
|
||
when "0011010000" =>
|
||
volume_next <= X"821f";
|
||
when "0011010001" =>
|
||
volume_next <= X"8297";
|
||
when "0011010010" =>
|
||
volume_next <= X"830e";
|
||
when "0011010011" =>
|
||
volume_next <= X"8385";
|
||
when "0011010100" =>
|
||
volume_next <= X"83fb";
|
||
when "0011010101" =>
|
||
volume_next <= X"8471";
|
||
when "0011010110" =>
|
||
volume_next <= X"84e7";
|
||
when "0011010111" =>
|
||
volume_next <= X"855d";
|
||
when "0011011000" =>
|
||
volume_next <= X"85d2";
|
||
when "0011011001" =>
|
||
volume_next <= X"8646";
|
||
when "0011011010" =>
|
||
volume_next <= X"86bb";
|
||
when "0011011011" =>
|
||
volume_next <= X"872f";
|
||
when "0011011100" =>
|
||
volume_next <= X"87a2";
|
||
when "0011011101" =>
|
||
volume_next <= X"8816";
|
||
when "0011011110" =>
|
||
volume_next <= X"8889";
|
||
when "0011011111" =>
|
||
volume_next <= X"88fc";
|
||
when "0011100000" =>
|
||
volume_next <= X"896e";
|
||
when "0011100001" =>
|
||
volume_next <= X"89e0";
|
||
when "0011100010" =>
|
||
volume_next <= X"8a51";
|
||
when "0011100011" =>
|
||
volume_next <= X"8ac3";
|
||
when "0011100100" =>
|
||
volume_next <= X"8b34";
|
||
when "0011100101" =>
|
||
volume_next <= X"8ba4";
|
||
when "0011100110" =>
|
||
volume_next <= X"8c15";
|
||
when "0011100111" =>
|
||
volume_next <= X"8c85";
|
||
when "0011101000" =>
|
||
volume_next <= X"8cf4";
|
||
when "0011101001" =>
|
||
volume_next <= X"8d64";
|
||
when "0011101010" =>
|
||
volume_next <= X"8dd3";
|
||
when "0011101011" =>
|
||
volume_next <= X"8e41";
|
||
when "0011101100" =>
|
||
volume_next <= X"8eaf";
|
||
when "0011101101" =>
|
||
volume_next <= X"8f1d";
|
||
when "0011101110" =>
|
||
volume_next <= X"8f8b";
|
||
when "0011101111" =>
|
||
volume_next <= X"8ff8";
|
||
when "0011110000" =>
|
||
volume_next <= X"9065";
|
||
when "0011110001" =>
|
||
volume_next <= X"90d2";
|
||
when "0011110010" =>
|
||
volume_next <= X"913e";
|
||
when "0011110011" =>
|
||
volume_next <= X"91aa";
|
||
when "0011110100" =>
|
||
volume_next <= X"9216";
|
||
when "0011110101" =>
|
||
volume_next <= X"9281";
|
||
when "0011110110" =>
|
||
volume_next <= X"92ec";
|
||
when "0011110111" =>
|
||
volume_next <= X"9357";
|
||
when "0011111000" =>
|
||
volume_next <= X"93c1";
|
||
when "0011111001" =>
|
||
volume_next <= X"942b";
|
||
when "0011111010" =>
|
||
volume_next <= X"9495";
|
||
when "0011111011" =>
|
||
volume_next <= X"94fe";
|
||
when "0011111100" =>
|
||
volume_next <= X"9567";
|
||
when "0011111101" =>
|
||
volume_next <= X"95d0";
|
||
when "0011111110" =>
|
||
volume_next <= X"9638";
|
||
when "0011111111" =>
|
||
volume_next <= X"96a0";
|
||
when "0100000000" =>
|
||
volume_next <= X"9708";
|
||
when "0100000001" =>
|
||
volume_next <= X"9770";
|
||
when "0100000010" =>
|
||
volume_next <= X"97d7";
|
||
when "0100000011" =>
|
||
volume_next <= X"983d";
|
||
when "0100000100" =>
|
||
volume_next <= X"98a4";
|
||
when "0100000101" =>
|
||
volume_next <= X"990a";
|
||
when "0100000110" =>
|
||
volume_next <= X"9970";
|
||
when "0100000111" =>
|
||
volume_next <= X"99d5";
|
||
when "0100001000" =>
|
||
volume_next <= X"9a3b";
|
||
when "0100001001" =>
|
||
volume_next <= X"9a9f";
|
||
when "0100001010" =>
|
||
volume_next <= X"9b04";
|
||
when "0100001011" =>
|
||
volume_next <= X"9b68";
|
||
when "0100001100" =>
|
||
volume_next <= X"9bcc";
|
||
when "0100001101" =>
|
||
volume_next <= X"9c30";
|
||
when "0100001110" =>
|
||
volume_next <= X"9c93";
|
||
when "0100001111" =>
|
||
volume_next <= X"9cf6";
|
||
when "0100010000" =>
|
||
volume_next <= X"9d59";
|
||
when "0100010001" =>
|
||
volume_next <= X"9dbb";
|
||
when "0100010010" =>
|
||
volume_next <= X"9e1d";
|
||
when "0100010011" =>
|
||
volume_next <= X"9e7f";
|
||
when "0100010100" =>
|
||
volume_next <= X"9ee0";
|
||
when "0100010101" =>
|
||
volume_next <= X"9f41";
|
||
when "0100010110" =>
|
||
volume_next <= X"9fa2";
|
||
when "0100010111" =>
|
||
volume_next <= X"a003";
|
||
when "0100011000" =>
|
||
volume_next <= X"a063";
|
||
when "0100011001" =>
|
||
volume_next <= X"a0c3";
|
||
when "0100011010" =>
|
||
volume_next <= X"a122";
|
||
when "0100011011" =>
|
||
volume_next <= X"a182";
|
||
when "0100011100" =>
|
||
volume_next <= X"a1e1";
|
||
when "0100011101" =>
|
||
volume_next <= X"a23f";
|
||
when "0100011110" =>
|
||
volume_next <= X"a29e";
|
||
when "0100011111" =>
|
||
volume_next <= X"a2fc";
|
||
when "0100100000" =>
|
||
volume_next <= X"a359";
|
||
when "0100100001" =>
|
||
volume_next <= X"a3b7";
|
||
when "0100100010" =>
|
||
volume_next <= X"a414";
|
||
when "0100100011" =>
|
||
volume_next <= X"a471";
|
||
when "0100100100" =>
|
||
volume_next <= X"a4cd";
|
||
when "0100100101" =>
|
||
volume_next <= X"a52a";
|
||
when "0100100110" =>
|
||
volume_next <= X"a586";
|
||
when "0100100111" =>
|
||
volume_next <= X"a5e1";
|
||
when "0100101000" =>
|
||
volume_next <= X"a63c";
|
||
when "0100101001" =>
|
||
volume_next <= X"a698";
|
||
when "0100101010" =>
|
||
volume_next <= X"a6f2";
|
||
when "0100101011" =>
|
||
volume_next <= X"a74d";
|
||
when "0100101100" =>
|
||
volume_next <= X"a7a7";
|
||
when "0100101101" =>
|
||
volume_next <= X"a801";
|
||
when "0100101110" =>
|
||
volume_next <= X"a85a";
|
||
when "0100101111" =>
|
||
volume_next <= X"a8b4";
|
||
when "0100110000" =>
|
||
volume_next <= X"a90c";
|
||
when "0100110001" =>
|
||
volume_next <= X"a965";
|
||
when "0100110010" =>
|
||
volume_next <= X"a9be";
|
||
when "0100110011" =>
|
||
volume_next <= X"aa16";
|
||
when "0100110100" =>
|
||
volume_next <= X"aa6d";
|
||
when "0100110101" =>
|
||
volume_next <= X"aac5";
|
||
when "0100110110" =>
|
||
volume_next <= X"ab1c";
|
||
when "0100110111" =>
|
||
volume_next <= X"ab73";
|
||
when "0100111000" =>
|
||
volume_next <= X"abca";
|
||
when "0100111001" =>
|
||
volume_next <= X"ac20";
|
||
when "0100111010" =>
|
||
volume_next <= X"ac76";
|
||
when "0100111011" =>
|
||
volume_next <= X"accc";
|
||
when "0100111100" =>
|
||
volume_next <= X"ad21";
|
||
when "0100111101" =>
|
||
volume_next <= X"ad77";
|
||
when "0100111110" =>
|
||
volume_next <= X"adcb";
|
||
when "0100111111" =>
|
||
volume_next <= X"ae20";
|
||
when "0101000000" =>
|
||
volume_next <= X"ae74";
|
||
when "0101000001" =>
|
||
volume_next <= X"aec8";
|
||
when "0101000010" =>
|
||
volume_next <= X"af1c";
|
||
when "0101000011" =>
|
||
volume_next <= X"af70";
|
||
when "0101000100" =>
|
||
volume_next <= X"afc3";
|
||
when "0101000101" =>
|
||
volume_next <= X"b016";
|
||
when "0101000110" =>
|
||
volume_next <= X"b068";
|
||
when "0101000111" =>
|
||
volume_next <= X"b0bb";
|
||
when "0101001000" =>
|
||
volume_next <= X"b10d";
|
||
when "0101001001" =>
|
||
volume_next <= X"b15f";
|
||
when "0101001010" =>
|
||
volume_next <= X"b1b0";
|
||
when "0101001011" =>
|
||
volume_next <= X"b201";
|
||
when "0101001100" =>
|
||
volume_next <= X"b252";
|
||
when "0101001101" =>
|
||
volume_next <= X"b2a3";
|
||
when "0101001110" =>
|
||
volume_next <= X"b2f4";
|
||
when "0101001111" =>
|
||
volume_next <= X"b344";
|
||
when "0101010000" =>
|
||
volume_next <= X"b393";
|
||
when "0101010001" =>
|
||
volume_next <= X"b3e3";
|
||
when "0101010010" =>
|
||
volume_next <= X"b432";
|
||
when "0101010011" =>
|
||
volume_next <= X"b481";
|
||
when "0101010100" =>
|
||
volume_next <= X"b4d0";
|
||
when "0101010101" =>
|
||
volume_next <= X"b51f";
|
||
when "0101010110" =>
|
||
volume_next <= X"b56d";
|
||
when "0101010111" =>
|
||
volume_next <= X"b5bb";
|
||
when "0101011000" =>
|
||
volume_next <= X"b608";
|
||
when "0101011001" =>
|
||
volume_next <= X"b656";
|
||
when "0101011010" =>
|
||
volume_next <= X"b6a3";
|
||
when "0101011011" =>
|
||
volume_next <= X"b6f0";
|
||
when "0101011100" =>
|
||
volume_next <= X"b73c";
|
||
when "0101011101" =>
|
||
volume_next <= X"b789";
|
||
when "0101011110" =>
|
||
volume_next <= X"b7d5";
|
||
when "0101011111" =>
|
||
volume_next <= X"b821";
|
||
when "0101100000" =>
|
||
volume_next <= X"b86c";
|
||
when "0101100001" =>
|
||
volume_next <= X"b8b7";
|
||
when "0101100010" =>
|
||
volume_next <= X"b902";
|
||
when "0101100011" =>
|
||
volume_next <= X"b94d";
|
||
when "0101100100" =>
|
||
volume_next <= X"b998";
|
||
when "0101100101" =>
|
||
volume_next <= X"b9e2";
|
||
when "0101100110" =>
|
||
volume_next <= X"ba2c";
|
||
when "0101100111" =>
|
||
volume_next <= X"ba75";
|
||
when "0101101000" =>
|
||
volume_next <= X"babf";
|
||
when "0101101001" =>
|
||
volume_next <= X"bb08";
|
||
when "0101101010" =>
|
||
volume_next <= X"bb51";
|
||
when "0101101011" =>
|
||
volume_next <= X"bb99";
|
||
when "0101101100" =>
|
||
volume_next <= X"bbe2";
|
||
when "0101101101" =>
|
||
volume_next <= X"bc2a";
|
||
when "0101101110" =>
|
||
volume_next <= X"bc72";
|
||
when "0101101111" =>
|
||
volume_next <= X"bcb9";
|
||
when "0101110000" =>
|
||
volume_next <= X"bd01";
|
||
when "0101110001" =>
|
||
volume_next <= X"bd48";
|
||
when "0101110010" =>
|
||
volume_next <= X"bd8f";
|
||
when "0101110011" =>
|
||
volume_next <= X"bdd5";
|
||
when "0101110100" =>
|
||
volume_next <= X"be1b";
|
||
when "0101110101" =>
|
||
volume_next <= X"be62";
|
||
when "0101110110" =>
|
||
volume_next <= X"bea7";
|
||
when "0101110111" =>
|
||
volume_next <= X"beed";
|
||
when "0101111000" =>
|
||
volume_next <= X"bf32";
|
||
when "0101111001" =>
|
||
volume_next <= X"bf77";
|
||
when "0101111010" =>
|
||
volume_next <= X"bfbc";
|
||
when "0101111011" =>
|
||
volume_next <= X"c001";
|
||
when "0101111100" =>
|
||
volume_next <= X"c045";
|
||
when "0101111101" =>
|
||
volume_next <= X"c089";
|
||
when "0101111110" =>
|
||
volume_next <= X"c0cd";
|
||
when "0101111111" =>
|
||
volume_next <= X"c110";
|
||
when "0110000000" =>
|
||
volume_next <= X"c154";
|
||
when "0110000001" =>
|
||
volume_next <= X"c197";
|
||
when "0110000010" =>
|
||
volume_next <= X"c1d9";
|
||
when "0110000011" =>
|
||
volume_next <= X"c21c";
|
||
when "0110000100" =>
|
||
volume_next <= X"c25e";
|
||
when "0110000101" =>
|
||
volume_next <= X"c2a0";
|
||
when "0110000110" =>
|
||
volume_next <= X"c2e2";
|
||
when "0110000111" =>
|
||
volume_next <= X"c324";
|
||
when "0110001000" =>
|
||
volume_next <= X"c365";
|
||
when "0110001001" =>
|
||
volume_next <= X"c3a6";
|
||
when "0110001010" =>
|
||
volume_next <= X"c3e7";
|
||
when "0110001011" =>
|
||
volume_next <= X"c428";
|
||
when "0110001100" =>
|
||
volume_next <= X"c468";
|
||
when "0110001101" =>
|
||
volume_next <= X"c4a8";
|
||
when "0110001110" =>
|
||
volume_next <= X"c4e8";
|
||
when "0110001111" =>
|
||
volume_next <= X"c528";
|
||
when "0110010000" =>
|
||
volume_next <= X"c567";
|
||
when "0110010001" =>
|
||
volume_next <= X"c5a6";
|
||
when "0110010010" =>
|
||
volume_next <= X"c5e5";
|
||
when "0110010011" =>
|
||
volume_next <= X"c624";
|
||
when "0110010100" =>
|
||
volume_next <= X"c662";
|
||
when "0110010101" =>
|
||
volume_next <= X"c6a0";
|
||
when "0110010110" =>
|
||
volume_next <= X"c6de";
|
||
when "0110010111" =>
|
||
volume_next <= X"c71c";
|
||
when "0110011000" =>
|
||
volume_next <= X"c75a";
|
||
when "0110011001" =>
|
||
volume_next <= X"c797";
|
||
when "0110011010" =>
|
||
volume_next <= X"c7d4";
|
||
when "0110011011" =>
|
||
volume_next <= X"c811";
|
||
when "0110011100" =>
|
||
volume_next <= X"c84d";
|
||
when "0110011101" =>
|
||
volume_next <= X"c88a";
|
||
when "0110011110" =>
|
||
volume_next <= X"c8c6";
|
||
when "0110011111" =>
|
||
volume_next <= X"c902";
|
||
when "0110100000" =>
|
||
volume_next <= X"c93e";
|
||
when "0110100001" =>
|
||
volume_next <= X"c979";
|
||
when "0110100010" =>
|
||
volume_next <= X"c9b4";
|
||
when "0110100011" =>
|
||
volume_next <= X"c9ef";
|
||
when "0110100100" =>
|
||
volume_next <= X"ca2a";
|
||
when "0110100101" =>
|
||
volume_next <= X"ca64";
|
||
when "0110100110" =>
|
||
volume_next <= X"ca9f";
|
||
when "0110100111" =>
|
||
volume_next <= X"cad9";
|
||
when "0110101000" =>
|
||
volume_next <= X"cb13";
|
||
when "0110101001" =>
|
||
volume_next <= X"cb4c";
|
||
when "0110101010" =>
|
||
volume_next <= X"cb86";
|
||
when "0110101011" =>
|
||
volume_next <= X"cbbf";
|
||
when "0110101100" =>
|
||
volume_next <= X"cbf8";
|
||
when "0110101101" =>
|
||
volume_next <= X"cc31";
|
||
when "0110101110" =>
|
||
volume_next <= X"cc69";
|
||
when "0110101111" =>
|
||
volume_next <= X"cca1";
|
||
when "0110110000" =>
|
||
volume_next <= X"ccd9";
|
||
when "0110110001" =>
|
||
volume_next <= X"cd11";
|
||
when "0110110010" =>
|
||
volume_next <= X"cd49";
|
||
when "0110110011" =>
|
||
volume_next <= X"cd80";
|
||
when "0110110100" =>
|
||
volume_next <= X"cdb8";
|
||
when "0110110101" =>
|
||
volume_next <= X"cdee";
|
||
when "0110110110" =>
|
||
volume_next <= X"ce25";
|
||
when "0110110111" =>
|
||
volume_next <= X"ce5c";
|
||
when "0110111000" =>
|
||
volume_next <= X"ce92";
|
||
when "0110111001" =>
|
||
volume_next <= X"cec8";
|
||
when "0110111010" =>
|
||
volume_next <= X"cefe";
|
||
when "0110111011" =>
|
||
volume_next <= X"cf34";
|
||
when "0110111100" =>
|
||
volume_next <= X"cf69";
|
||
when "0110111101" =>
|
||
volume_next <= X"cf9f";
|
||
when "0110111110" =>
|
||
volume_next <= X"cfd4";
|
||
when "0110111111" =>
|
||
volume_next <= X"d008";
|
||
when "0111000000" =>
|
||
volume_next <= X"d03d";
|
||
when "0111000001" =>
|
||
volume_next <= X"d071";
|
||
when "0111000010" =>
|
||
volume_next <= X"d0a6";
|
||
when "0111000011" =>
|
||
volume_next <= X"d0da";
|
||
when "0111000100" =>
|
||
volume_next <= X"d10d";
|
||
when "0111000101" =>
|
||
volume_next <= X"d141";
|
||
when "0111000110" =>
|
||
volume_next <= X"d174";
|
||
when "0111000111" =>
|
||
volume_next <= X"d1a8";
|
||
when "0111001000" =>
|
||
volume_next <= X"d1db";
|
||
when "0111001001" =>
|
||
volume_next <= X"d20d";
|
||
when "0111001010" =>
|
||
volume_next <= X"d240";
|
||
when "0111001011" =>
|
||
volume_next <= X"d272";
|
||
when "0111001100" =>
|
||
volume_next <= X"d2a4";
|
||
when "0111001101" =>
|
||
volume_next <= X"d2d6";
|
||
when "0111001110" =>
|
||
volume_next <= X"d308";
|
||
when "0111001111" =>
|
||
volume_next <= X"d33a";
|
||
when "0111010000" =>
|
||
volume_next <= X"d36b";
|
||
when "0111010001" =>
|
||
volume_next <= X"d39c";
|
||
when "0111010010" =>
|
||
volume_next <= X"d3cd";
|
||
when "0111010011" =>
|
||
volume_next <= X"d3fe";
|
||
when "0111010100" =>
|
||
volume_next <= X"d42e";
|
||
when "0111010101" =>
|
||
volume_next <= X"d45e";
|
||
when "0111010110" =>
|
||
volume_next <= X"d48f";
|
||
when "0111010111" =>
|
||
volume_next <= X"d4bf";
|
||
when "0111011000" =>
|
||
volume_next <= X"d4ee";
|
||
when "0111011001" =>
|
||
volume_next <= X"d51e";
|
||
when "0111011010" =>
|
||
volume_next <= X"d54d";
|
||
when "0111011011" =>
|
||
volume_next <= X"d57c";
|
||
when "0111011100" =>
|
||
volume_next <= X"d5ab";
|
||
when "0111011101" =>
|
||
volume_next <= X"d5da";
|
||
when "0111011110" =>
|
||
volume_next <= X"d609";
|
||
when "0111011111" =>
|
||
volume_next <= X"d637";
|
||
when "0111100000" =>
|
||
volume_next <= X"d665";
|
||
when "0111100001" =>
|
||
volume_next <= X"d693";
|
||
when "0111100010" =>
|
||
volume_next <= X"d6c1";
|
||
when "0111100011" =>
|
||
volume_next <= X"d6ee";
|
||
when "0111100100" =>
|
||
volume_next <= X"d71c";
|
||
when "0111100101" =>
|
||
volume_next <= X"d749";
|
||
when "0111100110" =>
|
||
volume_next <= X"d776";
|
||
when "0111100111" =>
|
||
volume_next <= X"d7a3";
|
||
when "0111101000" =>
|
||
volume_next <= X"d7d0";
|
||
when "0111101001" =>
|
||
volume_next <= X"d7fc";
|
||
when "0111101010" =>
|
||
volume_next <= X"d828";
|
||
when "0111101011" =>
|
||
volume_next <= X"d854";
|
||
when "0111101100" =>
|
||
volume_next <= X"d880";
|
||
when "0111101101" =>
|
||
volume_next <= X"d8ac";
|
||
when "0111101110" =>
|
||
volume_next <= X"d8d8";
|
||
when "0111101111" =>
|
||
volume_next <= X"d903";
|
||
when "0111110000" =>
|
||
volume_next <= X"d92e";
|
||
when "0111110001" =>
|
||
volume_next <= X"d959";
|
||
when "0111110010" =>
|
||
volume_next <= X"d984";
|
||
when "0111110011" =>
|
||
volume_next <= X"d9af";
|
||
when "0111110100" =>
|
||
volume_next <= X"d9d9";
|
||
when "0111110101" =>
|
||
volume_next <= X"da03";
|
||
when "0111110110" =>
|
||
volume_next <= X"da2d";
|
||
when "0111110111" =>
|
||
volume_next <= X"da57";
|
||
when "0111111000" =>
|
||
volume_next <= X"da81";
|
||
when "0111111001" =>
|
||
volume_next <= X"daab";
|
||
when "0111111010" =>
|
||
volume_next <= X"dad4";
|
||
when "0111111011" =>
|
||
volume_next <= X"dafd";
|
||
when "0111111100" =>
|
||
volume_next <= X"db26";
|
||
when "0111111101" =>
|
||
volume_next <= X"db4f";
|
||
when "0111111110" =>
|
||
volume_next <= X"db78";
|
||
when "0111111111" =>
|
||
volume_next <= X"dba0";
|
||
when "1000000000" =>
|
||
volume_next <= X"dbc8";
|
||
when "1000000001" =>
|
||
volume_next <= X"dbf1";
|
||
when "1000000010" =>
|
||
volume_next <= X"dc19";
|
||
when "1000000011" =>
|
||
volume_next <= X"dc40";
|
||
when "1000000100" =>
|
||
volume_next <= X"dc68";
|
||
when "1000000101" =>
|
||
volume_next <= X"dc8f";
|
||
when "1000000110" =>
|
||
volume_next <= X"dcb7";
|
||
when "1000000111" =>
|
||
volume_next <= X"dcde";
|
||
when "1000001000" =>
|
||
volume_next <= X"dd05";
|
||
when "1000001001" =>
|
||
volume_next <= X"dd2c";
|
||
when "1000001010" =>
|
||
volume_next <= X"dd52";
|
||
when "1000001011" =>
|
||
volume_next <= X"dd79";
|
||
when "1000001100" =>
|
||
volume_next <= X"dd9f";
|
||
when "1000001101" =>
|
||
volume_next <= X"ddc5";
|
||
when "1000001110" =>
|
||
volume_next <= X"ddeb";
|
||
when "1000001111" =>
|
||
volume_next <= X"de11";
|
||
when "1000010000" =>
|
||
volume_next <= X"de36";
|
||
when "1000010001" =>
|
||
volume_next <= X"de5c";
|
||
when "1000010010" =>
|
||
volume_next <= X"de81";
|
||
when "1000010011" =>
|
||
volume_next <= X"dea6";
|
||
when "1000010100" =>
|
||
volume_next <= X"decb";
|
||
when "1000010101" =>
|
||
volume_next <= X"def0";
|
||
when "1000010110" =>
|
||
volume_next <= X"df15";
|
||
when "1000010111" =>
|
||
volume_next <= X"df39";
|
||
when "1000011000" =>
|
||
volume_next <= X"df5d";
|
||
when "1000011001" =>
|
||
volume_next <= X"df82";
|
||
when "1000011010" =>
|
||
volume_next <= X"dfa6";
|
||
when "1000011011" =>
|
||
volume_next <= X"dfc9";
|
||
when "1000011100" =>
|
||
volume_next <= X"dfed";
|
||
when "1000011101" =>
|
||
volume_next <= X"e011";
|
||
when "1000011110" =>
|
||
volume_next <= X"e034";
|
||
when "1000011111" =>
|
||
volume_next <= X"e057";
|
||
when "1000100000" =>
|
||
volume_next <= X"e07a";
|
||
when "1000100001" =>
|
||
volume_next <= X"e09d";
|
||
when "1000100010" =>
|
||
volume_next <= X"e0c0";
|
||
when "1000100011" =>
|
||
volume_next <= X"e0e2";
|
||
when "1000100100" =>
|
||
volume_next <= X"e105";
|
||
when "1000100101" =>
|
||
volume_next <= X"e127";
|
||
when "1000100110" =>
|
||
volume_next <= X"e149";
|
||
when "1000100111" =>
|
||
volume_next <= X"e16b";
|
||
when "1000101000" =>
|
||
volume_next <= X"e18d";
|
||
when "1000101001" =>
|
||
volume_next <= X"e1af";
|
||
when "1000101010" =>
|
||
volume_next <= X"e1d0";
|
||
when "1000101011" =>
|
||
volume_next <= X"e1f2";
|
||
when "1000101100" =>
|
||
volume_next <= X"e213";
|
||
when "1000101101" =>
|
||
volume_next <= X"e234";
|
||
when "1000101110" =>
|
||
volume_next <= X"e255";
|
||
when "1000101111" =>
|
||
volume_next <= X"e276";
|
||
when "1000110000" =>
|
||
volume_next <= X"e296";
|
||
when "1000110001" =>
|
||
volume_next <= X"e2b7";
|
||
when "1000110010" =>
|
||
volume_next <= X"e2d7";
|
||
when "1000110011" =>
|
||
volume_next <= X"e2f7";
|
||
when "1000110100" =>
|
||
volume_next <= X"e317";
|
||
when "1000110101" =>
|
||
volume_next <= X"e337";
|
||
when "1000110110" =>
|
||
volume_next <= X"e357";
|
||
when "1000110111" =>
|
||
volume_next <= X"e377";
|
||
when "1000111000" =>
|
||
volume_next <= X"e396";
|
||
when "1000111001" =>
|
||
volume_next <= X"e3b6";
|
||
when "1000111010" =>
|
||
volume_next <= X"e3d5";
|
||
when "1000111011" =>
|
||
volume_next <= X"e3f4";
|
||
when "1000111100" =>
|
||
volume_next <= X"e413";
|
||
when "1000111101" =>
|
||
volume_next <= X"e432";
|
||
when "1000111110" =>
|
||
volume_next <= X"e450";
|
||
when "1000111111" =>
|
||
volume_next <= X"e46f";
|
||
when "1001000000" =>
|
||
volume_next <= X"e48d";
|
||
when "1001000001" =>
|
||
volume_next <= X"e4ab";
|
||
when "1001000010" =>
|
||
volume_next <= X"e4c9";
|
||
when "1001000011" =>
|
||
volume_next <= X"e4e7";
|
||
when "1001000100" =>
|
||
volume_next <= X"e505";
|
||
when "1001000101" =>
|
||
volume_next <= X"e523";
|
||
when "1001000110" =>
|
||
volume_next <= X"e541";
|
||
when "1001000111" =>
|
||
volume_next <= X"e55e";
|
||
when "1001001000" =>
|
||
volume_next <= X"e57b";
|
||
when "1001001001" =>
|
||
volume_next <= X"e598";
|
||
when "1001001010" =>
|
||
volume_next <= X"e5b6";
|
||
when "1001001011" =>
|
||
volume_next <= X"e5d2";
|
||
when "1001001100" =>
|
||
volume_next <= X"e5ef";
|
||
when "1001001101" =>
|
||
volume_next <= X"e60c";
|
||
when "1001001110" =>
|
||
volume_next <= X"e628";
|
||
when "1001001111" =>
|
||
volume_next <= X"e645";
|
||
when "1001010000" =>
|
||
volume_next <= X"e661";
|
||
when "1001010001" =>
|
||
volume_next <= X"e67d";
|
||
when "1001010010" =>
|
||
volume_next <= X"e699";
|
||
when "1001010011" =>
|
||
volume_next <= X"e6b5";
|
||
when "1001010100" =>
|
||
volume_next <= X"e6d1";
|
||
when "1001010101" =>
|
||
volume_next <= X"e6ec";
|
||
when "1001010110" =>
|
||
volume_next <= X"e708";
|
||
when "1001010111" =>
|
||
volume_next <= X"e723";
|
||
when "1001011000" =>
|
||
volume_next <= X"e73f";
|
||
when "1001011001" =>
|
||
volume_next <= X"e75a";
|
||
when "1001011010" =>
|
||
volume_next <= X"e775";
|
||
when "1001011011" =>
|
||
volume_next <= X"e790";
|
||
when "1001011100" =>
|
||
volume_next <= X"e7aa";
|
||
when "1001011101" =>
|
||
volume_next <= X"e7c5";
|
||
when "1001011110" =>
|
||
volume_next <= X"e7e0";
|
||
when "1001011111" =>
|
||
volume_next <= X"e7fa";
|
||
when "1001100000" =>
|
||
volume_next <= X"e814";
|
||
when "1001100001" =>
|
||
volume_next <= X"e82f";
|
||
when "1001100010" =>
|
||
volume_next <= X"e849";
|
||
when "1001100011" =>
|
||
volume_next <= X"e862";
|
||
when "1001100100" =>
|
||
volume_next <= X"e87c";
|
||
when "1001100101" =>
|
||
volume_next <= X"e896";
|
||
when "1001100110" =>
|
||
volume_next <= X"e8b0";
|
||
when "1001100111" =>
|
||
volume_next <= X"e8c9";
|
||
when "1001101000" =>
|
||
volume_next <= X"e8e2";
|
||
when "1001101001" =>
|
||
volume_next <= X"e8fc";
|
||
when "1001101010" =>
|
||
volume_next <= X"e915";
|
||
when "1001101011" =>
|
||
volume_next <= X"e92e";
|
||
when "1001101100" =>
|
||
volume_next <= X"e947";
|
||
when "1001101101" =>
|
||
volume_next <= X"e960";
|
||
when "1001101110" =>
|
||
volume_next <= X"e978";
|
||
when "1001101111" =>
|
||
volume_next <= X"e991";
|
||
when "1001110000" =>
|
||
volume_next <= X"e9a9";
|
||
when "1001110001" =>
|
||
volume_next <= X"e9c2";
|
||
when "1001110010" =>
|
||
volume_next <= X"e9da";
|
||
when "1001110011" =>
|
||
volume_next <= X"e9f2";
|
||
when "1001110100" =>
|
||
volume_next <= X"ea0a";
|
||
when "1001110101" =>
|
||
volume_next <= X"ea22";
|
||
when "1001110110" =>
|
||
volume_next <= X"ea3a";
|
||
when "1001110111" =>
|
||
volume_next <= X"ea52";
|
||
when "1001111000" =>
|
||
volume_next <= X"ea69";
|
||
when "1001111001" =>
|
||
volume_next <= X"ea81";
|
||
when "1001111010" =>
|
||
volume_next <= X"ea98";
|
||
when "1001111011" =>
|
||
volume_next <= X"eab0";
|
||
when "1001111100" =>
|
||
volume_next <= X"eac7";
|
||
when "1001111101" =>
|
||
volume_next <= X"eade";
|
||
when "1001111110" =>
|
||
volume_next <= X"eaf5";
|
||
when "1001111111" =>
|
||
volume_next <= X"eb0c";
|
||
when "1010000000" =>
|
||
volume_next <= X"eb23";
|
Also available in: Unified diff
Mix covox and gtia as if they were pokey channels. Increase precision to allow 8-bit covox channels. Its not clear how gtia and covox really clip with pokey channels - that would need research. For now this improves volume.