Project

General

Profile

« Previous | Next » 

Revision 357

Added by markw over 10 years ago

Patch from Hias to fix dropped command packets. Many thanks for digging into this!

View differences:

common/a8core/sio_device.vhdl
end process;
-- state machine
command_next <= sio_command;
process(state_reg, command_next, command_reg, bus_free, pokey_data_out, target_reg, clear_request)
begin
state_next <= state_reg;
......
target_wr_en<='0';
target_next<=target_reg;
command_next <= command_reg;
if (bus_free = '1') then
command_next <= sio_command;
case (state_reg) is
when state_wait_high_low =>
target_next<=(others=>'0');
if (command_next = '0' and command_reg='1') then
if (sio_command = '0' and command_reg='1') then
state_next <= state_command_clear_irq;
end if;
when state_command_clear_irq =>
......
if (clear_request = '1') then
state_next <= state_wait_high_low;
command_next <= sio_command;
end if;
end process;

Also available in: Unified diff