Project

General

Profile

« Previous | Next » 

Revision 225

Added by markw almost 11 years ago

First 5200 stick now working - at least joystick + keypad

View differences:

common/a8core/atari5200core_simplesdram.vhd
-- GTIA consol
CONSOL_OUT => CONSOL_OUT, -- TODO sound, pots(err, pokey?), 2bit controller keyboard select
CONSOL_IN => (others=>'1'),
CONSOL_IN => "1000",
GTIA_TRIG => "11"&TRIG, -- triggers (4 ports...)
-- ANTIC
common/a8core/pot_from_signed.vhdl
begin
count_next <= count_reg;
if (pot_reset ='1' or enabled = '1') then
if (pot_reset ='1' or enabled = '0') then
count_next <= std_logic_vector(to_unsigned(to_integer(pos)+initial,10));
end if;
common/a8core/ps2_to_atari5200.vhdl
case controller_select is
when "00" =>
-- todo change order to match keycode! check with petes test
atari_keyboard(0)<=ps2_keys_reg(16#05#); --f1
atari_keyboard(1)<=ps2_keys_reg(16#06#); --f2
atari_keyboard(2)<=ps2_keys_reg(16#04#); --f3
atari_keyboard(3)<=ps2_keys_reg(16#16#); --1
atari_keyboard(4)<=ps2_keys_reg(16#1E#); --2
atari_keyboard(5)<=ps2_keys_reg(16#26#); --3
atari_keyboard(6)<=ps2_keys_reg(16#15#); --q
atari_keyboard(7)<=ps2_keys_reg(16#1D#); --w
atari_keyboard(8)<=ps2_keys_reg(16#24#); --e
atari_keyboard(9)<=ps2_keys_reg(16#1c#); --a
atari_keyboard(10)<=ps2_keys_reg(16#1b#); --s
atari_keyboard(11)<=ps2_keys_reg(16#23#); --d
atari_keyboard(12)<=ps2_keys_reg(16#1a#); --z
atari_keyboard(13)<=ps2_keys_reg(16#22#); --x
atari_keyboard(14)<=ps2_keys_reg(16#21#); --c
atari_keyboard(12)<=ps2_keys_reg(16#05#); --f1
atari_keyboard(8)<=ps2_keys_reg(16#06#); --f2
atari_keyboard(4)<=ps2_keys_reg(16#04#); --f3
atari_keyboard(15)<=ps2_keys_reg(16#16#); --1
atari_keyboard(14)<=ps2_keys_reg(16#1E#); --2
atari_keyboard(13)<=ps2_keys_reg(16#26#); --3
atari_keyboard(11)<=ps2_keys_reg(16#15#); --q
atari_keyboard(10)<=ps2_keys_reg(16#1D#); --w
atari_keyboard(9)<=ps2_keys_reg(16#24#); --e
atari_keyboard(7)<=ps2_keys_reg(16#1c#); --a
atari_keyboard(6)<=ps2_keys_reg(16#1b#); --s
atari_keyboard(5)<=ps2_keys_reg(16#23#); --d
atari_keyboard(3)<=ps2_keys_reg(16#1a#); --z
atari_keyboard(2)<=ps2_keys_reg(16#22#); --x
atari_keyboard(1)<=ps2_keys_reg(16#21#); --c
fire_pressed_sel <= fire2(0);
when "01" =>
atari_keyboard(0)<=ps2_keys_reg(16#29#);
atari_keyboard(1)<=ps2_keys_reg(16#29#);
atari_keyboard(2)<=ps2_keys_reg(16#29#);
atari_keyboard(3)<=ps2_keys_reg(16#29#);
atari_keyboard(12)<=ps2_keys_reg(16#29#);
atari_keyboard(8)<=ps2_keys_reg(16#29#);
atari_keyboard(4)<=ps2_keys_reg(16#29#);
atari_keyboard(15)<=ps2_keys_reg(16#29#);
atari_keyboard(14)<=ps2_keys_reg(16#29#);
atari_keyboard(13)<=ps2_keys_reg(16#29#);
atari_keyboard(11)<=ps2_keys_reg(16#29#);
atari_keyboard(10)<=ps2_keys_reg(16#29#);
atari_keyboard(9)<=ps2_keys_reg(16#29#);
atari_keyboard(7)<=ps2_keys_reg(16#29#);
atari_keyboard(6)<=ps2_keys_reg(16#29#);
atari_keyboard(5)<=ps2_keys_reg(16#29#);
atari_keyboard(6)<=ps2_keys_reg(16#29#);
atari_keyboard(7)<=ps2_keys_reg(16#29#);
atari_keyboard(8)<=ps2_keys_reg(16#29#);
atari_keyboard(9)<=ps2_keys_reg(16#29#);
atari_keyboard(10)<=ps2_keys_reg(16#29#);
atari_keyboard(11)<=ps2_keys_reg(16#29#);
atari_keyboard(12)<=ps2_keys_reg(16#29#);
atari_keyboard(13)<=ps2_keys_reg(16#29#);
atari_keyboard(14)<=ps2_keys_reg(16#29#);
atari_keyboard(3)<=ps2_keys_reg(16#29#);
atari_keyboard(2)<=ps2_keys_reg(16#29#);
atari_keyboard(1)<=ps2_keys_reg(16#29#);
fire_pressed_sel <= fire2(1);
when "10" =>
atari_keyboard(0)<=ps2_keys_reg(16#29#);
atari_keyboard(1)<=ps2_keys_reg(16#29#);
atari_keyboard(2)<=ps2_keys_reg(16#29#);
atari_keyboard(3)<=ps2_keys_reg(16#29#);
atari_keyboard(12)<=ps2_keys_reg(16#29#);
atari_keyboard(8)<=ps2_keys_reg(16#29#);
atari_keyboard(4)<=ps2_keys_reg(16#29#);
atari_keyboard(15)<=ps2_keys_reg(16#29#);
atari_keyboard(14)<=ps2_keys_reg(16#29#);
atari_keyboard(13)<=ps2_keys_reg(16#29#);
atari_keyboard(11)<=ps2_keys_reg(16#29#);
atari_keyboard(10)<=ps2_keys_reg(16#29#);
atari_keyboard(9)<=ps2_keys_reg(16#29#);
atari_keyboard(7)<=ps2_keys_reg(16#29#);
atari_keyboard(6)<=ps2_keys_reg(16#29#);
atari_keyboard(5)<=ps2_keys_reg(16#29#);
atari_keyboard(6)<=ps2_keys_reg(16#29#);
atari_keyboard(7)<=ps2_keys_reg(16#29#);
atari_keyboard(8)<=ps2_keys_reg(16#29#);
atari_keyboard(9)<=ps2_keys_reg(16#29#);
atari_keyboard(10)<=ps2_keys_reg(16#29#);
atari_keyboard(11)<=ps2_keys_reg(16#29#);
atari_keyboard(12)<=ps2_keys_reg(16#29#);
atari_keyboard(13)<=ps2_keys_reg(16#29#);
atari_keyboard(14)<=ps2_keys_reg(16#29#);
atari_keyboard(3)<=ps2_keys_reg(16#29#);
atari_keyboard(2)<=ps2_keys_reg(16#29#);
atari_keyboard(1)<=ps2_keys_reg(16#29#);
fire_pressed_sel <= fire2(2);
when "11" =>
atari_keyboard(0)<=ps2_keys_reg(16#29#);
atari_keyboard(1)<=ps2_keys_reg(16#29#);
atari_keyboard(2)<=ps2_keys_reg(16#29#);
atari_keyboard(3)<=ps2_keys_reg(16#29#);
atari_keyboard(12)<=ps2_keys_reg(16#29#);
atari_keyboard(8)<=ps2_keys_reg(16#29#);
atari_keyboard(4)<=ps2_keys_reg(16#29#);
atari_keyboard(15)<=ps2_keys_reg(16#29#);
atari_keyboard(14)<=ps2_keys_reg(16#29#);
atari_keyboard(13)<=ps2_keys_reg(16#29#);
atari_keyboard(11)<=ps2_keys_reg(16#29#);
atari_keyboard(10)<=ps2_keys_reg(16#29#);
atari_keyboard(9)<=ps2_keys_reg(16#29#);
atari_keyboard(7)<=ps2_keys_reg(16#29#);
atari_keyboard(6)<=ps2_keys_reg(16#29#);
atari_keyboard(5)<=ps2_keys_reg(16#29#);
atari_keyboard(6)<=ps2_keys_reg(16#29#);
atari_keyboard(7)<=ps2_keys_reg(16#29#);
atari_keyboard(8)<=ps2_keys_reg(16#29#);
atari_keyboard(9)<=ps2_keys_reg(16#29#);
atari_keyboard(10)<=ps2_keys_reg(16#29#);
atari_keyboard(11)<=ps2_keys_reg(16#29#);
atari_keyboard(12)<=ps2_keys_reg(16#29#);
atari_keyboard(13)<=ps2_keys_reg(16#29#);
atari_keyboard(14)<=ps2_keys_reg(16#29#);
atari_keyboard(3)<=ps2_keys_reg(16#29#);
atari_keyboard(2)<=ps2_keys_reg(16#29#);
atari_keyboard(1)<=ps2_keys_reg(16#29#);
fire_pressed_sel <= fire2(3);
when others =>
end case;

Also available in: Unified diff