Project

General

Profile

« Previous | Next » 

Revision 1470

Added by markw 7 months ago

Incorrect clock for sio data mixing

View differences:

pokeymax.vhd
signal SIO_TXD : std_logic;
signal SIO_RXD : std_logic;
signal SIO_RXD_SYNC : std_logic;
signal SIO_RXD_ADC : std_logic;
signal POKEY_IRQ : std_logic_vector(3 downto 0);
......
KEYBOARD_RESPONSE <= IOX_KEYBOARD_RESPONSE;
end generate ps2_off;
synchronizer_SIO : entity work.synchronizer
port map (clk=>CLK49152, raw=>SID, sync=>SIO_RXD_ADC);
adc_on : if enable_adc=1 generate
-- Proper ADC for SIO/PBI audio in
......
end process;
process(SIO_RXD_SYNC,SIO_DATA_VOLUME_REG)
process(SIO_RXD_ADC,SIO_DATA_VOLUME_REG)
begin
sio_noise <= (others=>'0');
case SIO_DATA_VOLUME_REG is
when "01" =>
sio_noise(10) <= not(SIO_RXD_SYNC);
sio_noise(10) <= not(SIO_RXD_ADC);
when "10" =>
sio_noise(11) <= not(SIO_RXD_SYNC);
sio_noise(11) <= not(SIO_RXD_ADC);
when "11" =>
sio_noise(12) <= not(SIO_RXD_SYNC);
sio_noise(12) <= not(SIO_RXD_ADC);
when others =>
end case;
end process;
......
case SIO_DATA_VOLUME_REG is
when "01" =>
SIO_AUDIO(10) <= SIO_RXD_SYNC;
SIO_AUDIO(10) <= SIO_RXD_ADC;
when "10" =>
SIO_AUDIO(11) <= SIO_RXD_SYNC;
SIO_AUDIO(11) <= SIO_RXD_ADC;
when "11" =>
SIO_AUDIO(12) <= SIO_RXD_SYNC;
SIO_AUDIO(12) <= SIO_RXD_ADC;
when others =>
end case;
end process;
......
SOD <= '0' when SIO_TXD='0' else 'Z';
SIO_RXD <= SID;
synchronizer_SIO : entity work.synchronizer
port map (clk=>clk, raw=>SID, sync=>SIO_RXD_SYNC);
--1->pin37

Also available in: Unified diff