-- -- Arkanoid.vhd -- -- Combines Ark.vhd (game logic), Beep.vhd (sound) and Draw.vhd (Display) -- to create the SOF file used to program the FLEX10K20 chip (arkanoid.sof) -- -- Total logic cells used: 923/1152 ( 80%) -- Total EABs used: 1/6 ( 16%) -- library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_ARITH.all; use ieee.std_logic_UNSIGNED.all; entity Arkanoid is port( Clock : in std_logic; --reset : in std_logic; move_right : in std_logic; move_left : in std_logic; Red,Green,Blue : out std_logic; Horiz_sync,Vert_sync: buffer std_logic; sound : buffer std_logic ); end Arkanoid; architecture Arka_it of Arkanoid is component Ark port( Clock : in std_logic; --reset : in std_logic; move_left : in std_logic; move_right : in std_logic; v_sync : in std_logic; collide : out std_logic; blocks_gone : in std_logic; OBall_x : out std_logic_vector(10 downto 0); OBall_y : out std_logic_vector(10 downto 0); Opaddle_x : out std_logic_vector(10 downto 0); Olives : out std_logic_vector(1 downto 0); signal blockaddress : in std_logic_vector(9 downto 0); signal blockdata : out std_logic ); end component Ark; component draw port( signal Clock : in std_logic; --signal reset : in std_logic; signal Red,Green,Blue : out std_logic; signal ball_x, ball_y : std_logic_vector(10 downto 0); signal paddle_x : std_logic_vector(10 downto 0); signal Horiz_sync,Vert_sync : out std_logic; signal blocks_gone : out std_logic; signal lives : in std_logic_vector(1 downto 0); signal blockaddress : out std_logic_vector(9 downto 0); signal blockdata : in std_logic ); end component draw; component beep port( v_sync : in std_logic; collision : in std_logic; --reset : in std_logic; sound : buffer std_logic ); end component beep; signal OBall_x : std_logic_vector(10 downto 0); signal OBall_y : std_logic_vector(10 downto 0); signal Opaddle_x : std_logic_vector(10 downto 0); signal collide : std_logic; signal blocks_gone : std_logic; signal lives : std_logic_vector(1 downto 0); signal blockaddress : std_logic_vector(9 downto 0); signal blockdata : std_logic; begin game_m : Ark port map( Clock => Clock, --reset => reset, move_left => move_left, move_right => move_right, v_sync => Vert_sync, collide => collide, blocks_gone => blocks_gone, OBall_x => OBall_x, OBall_y => OBall_y, Opaddle_x => Opaddle_x, Olives => lives, blockaddress => blockaddress, blockdata => blockdata ); d_it_m : draw port map( Clock => Clock, --reset => reset, Red => Red, Green => Green, Blue => Blue, ball_x => OBall_x, ball_y => OBall_y, paddle_x => Opaddle_x, Horiz_sync => Horiz_sync, Vert_sync => Vert_sync, blocks_gone => blocks_gone, lives => lives, blockaddress => blockaddress, blockdata => blockdata ); beep_it_m : beep port map( v_sync => Vert_sync, collision => collide, --reset => reset, sound => sound ); end Arka_it;