For their final project the team's goal is to implement the game Tetris on the NEXYS 4 DDR board. The group began by building the game from scratch, but due to limit time and expertise a new direction was chosen. Instead the team was able to find an existing VHDL Tetris project and determined appropriate tasks that fit their skill levels.
The first thing the team did was try to implement the VHDL code themselves. The team considered different ideas of how to do things such as display the blocks and move them using the buttons on the board. The team tried to make the logic to implement these ideas. After some small progress, time constraints required the team to look for additional resources to further along the project.
After some research the team came upon a another student's completed code (special thanks to Alihan, who's code is linked below in the Helpful Links section). The team created source files (around 11) using the student's code, and made some modifications to allow it to work with our board, as this student was using a different FPGA.
Additionally, the team had to make their own constraint file. This was done by using a previously made constraint file from the Pong Lab 6.
When creating the tetris game, the team attempted to get the game to work on the buttons on the Nexys. The team did this by creating a constraint file that would pair, pins on the board with, functions in the code. Although when the team did this they could not get this to work and still do not know why it did not work. The team then made a constraint file in order to control the game with a keyboard instead of, the buttons on the board. This is the file that the team used in the final product.
To the right shows the game working with the keyboard. Below shows how when the number under the score reaches 0, it just resets to 18.