Hardware based implementation of the BurgerTime arcade game.
- Make a new Quartus project
- Add the SystemVerilog files from the sv folder into the project, as well as the qip files and set final_top.sv as top level
- Generate HDL in platform designer using the included qsys file
- Use the generated sopcinfo file to create a new Eclipse project and add the usb_kb folder and main.c to the created project (these are located in ./software/final_drivers)
- Generate BSP, build, and run the project in Eclipse after compiling in Quartus and programming the device
- Follow prompts on screen when applicable
- Control the chef with WASD (W and S only work on ladders, going left or right off of a ladder or platform makes the chef fall to platform immediately below him)
- Press P to pepper (stun) enemies when they are close (next to the chef on either the left or right side)
- Walk over the center of ingredients to make them fall
- The game is over and a losing screen is shown when the chef loses all 3 lives (collides with enemies thrice)
- If all 4 burgers are formed, a winning screen is shown
- The score is displayed on the FPGA hex LEDs; the faster the stage is completed, the higher the score (a timer is incorporated into the score). Each ingredient that reached its destination adds 15 points/seconds while each enemy collision subtracts 60 seconds/points from the score. The score resets to 0 when the title screen is reached again (pressing ENTER after a game over/you win screen or pressing KEY0 on the FPGA).