diff options
author | Mike Stirling <opensource@mikestirling.co.uk> | 2011-07-30 10:39:52 +0100 |
---|---|---|
committer | Mike Stirling <opensource@mikestirling.co.uk> | 2011-07-30 10:39:52 +0100 |
commit | fc9ea65b8ac1849c9756cc58e6f14500646b1d8c (patch) | |
tree | 7a520dc724130cda33537f79b01fe3129f6bd9c0 /keyboard.vhd | |
parent | 22139faee8f39c1a2d5e03f35d586fcf3eda472b (diff) | |
download | fpga-bbc-fc9ea65b8ac1849c9756cc58e6f14500646b1d8c.tar.gz fpga-bbc-fc9ea65b8ac1849c9756cc58e6f14500646b1d8c.tar.bz2 fpga-bbc-fc9ea65b8ac1849c9756cc58e6f14500646b1d8c.zip |
Keyboard now working (needed to loop back slow bus outputs to inputs on system VIA). Added aux input to debugger for display of arbitrary hex values. Removed test IFR output from 6522
Diffstat (limited to 'keyboard.vhd')
-rw-r--r-- | keyboard.vhd | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/keyboard.vhd b/keyboard.vhd index 0558469..2c874f3 100644 --- a/keyboard.vhd +++ b/keyboard.vhd @@ -63,7 +63,7 @@ signal keyb_valid : std_logic; signal keyb_error : std_logic;
-- Internal signals
-type key_matrix is array(0 to 9) of std_logic_vector(7 downto 0);
+type key_matrix is array(0 to 15) of std_logic_vector(7 downto 0);
signal keys : key_matrix;
signal col : unsigned(3 downto 0);
signal release : std_logic;
@@ -133,6 +133,13 @@ begin keys(7) <= (others => '0');
keys(8) <= (others => '0');
keys(9) <= (others => '0');
+ -- These non-existent rows are used in the BBC master
+ keys(10) <= (others => '0');
+ keys(11) <= (others => '0');
+ keys(12) <= (others => '0');
+ keys(13) <= (others => '0');
+ keys(14) <= (others => '0');
+ keys(15) <= (others => '0');
elsif rising_edge(CLOCK) then
-- Copy DIP switches through to row 0
keys(2)(0) <= DIP_SWITCH(7);
|