Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/algosup/2024-2025-project-1-fpga-team-6
This project aims to create a Frogger game using the FPGA (Field Programmable Gate Array) technology and Verilog.
https://github.com/algosup/2024-2025-project-1-fpga-team-6
console controller fpga frogger-game game-development lilypad verilog
Last synced: about 2 months ago
JSON representation
This project aims to create a Frogger game using the FPGA (Field Programmable Gate Array) technology and Verilog.
- Host: GitHub
- URL: https://github.com/algosup/2024-2025-project-1-fpga-team-6
- Owner: algosup
- Created: 2024-09-23T12:55:40.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2024-10-25T07:02:58.000Z (2 months ago)
- Last Synced: 2024-10-25T09:53:01.473Z (2 months ago)
- Topics: console, controller, fpga, frogger-game, game-development, lilypad, verilog
- Language: Verilog
- Homepage:
- Size: 5.68 MB
- Stars: 5
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ✨ Frogger FPGA Team 6 ✨
## What is the purpose of this project? 📚
This project aims to create a Frogger game using the FPGA (Field Programmable Gate Array) technology. We handle input, output, screen display and even memory management using Verilog.
![2024-10-18 11-49-23](https://github.com/user-attachments/assets/550aa575-0d70-416f-be6d-736c16db6aaf)
## What is Frogger? 🐸
- The goal of the game is to move a frog from the bottom of the screen to the top. There’s only one problem: The frog is trying to cross a busy highway filled with cars! You must carefully control the frog to cross the road without getting hit by a car.
Our Frogger game will contain colorful sprites, though no sounds can be handled as the only way we can display the game on a monitor is with a VGA port.
## How can we play the game? 🕹️
To play the game, you'll need to have some required elements:
- A [Go-Board](https://nandland.com/cart/)
- A [VGA compatible monitor](https://www.amazon.com./s?k=vga+monitor&crid=1SGS6CI178TBH&sprefix=vga+mo%2Caps%2C207&ref=nb_sb_ss_ts-doa-p_1_6)
- A [VGA cable](https://www.amazon.com./s?k=vga+cable&crid=1N29E5VSJS1W4&sprefix=vga%2Caps%2C199&ref=nb_sb_ss_ts-doa-p_2_3)
- A [micro-USB cable](https://www.amazon.com./s?k=micro-usb+cable&crid=L7H96RRAM5DF&sprefix=micro-us%2Caps%2C158&ref=nb_sb_ss_ts-doa-p_2_8)### macOS Setup
Then, you'll need to setup apio on your machine.
To do this, follow the steps on this [link](https://nandland.com/set-up-apio-fpga-build-and-program/).Once you've setup the software, all you need is
- [download our latest release](https://github.com/algosup/2024-2025-project-1-fpga-team-6/releases)
- connect the board to your computer with the micro-USB cable
- upload it into the board using the `apio upload` command on your terminal (make sure you're in the Frogger folder!)Then, if the board is correctly plugged and connected to a VGA monitor, the game will launch!
## LilyPad 🪷
LilyPad is a console we've made beside the Frogger game. The Go-Board contains the game you want to play, you put it correctly inside the console, and it's plug & play!
The console has been constructed to contain the Go-Board, letting the 7-Segment displays visible.
Also, the Pmods have been placed specifically to create controller plugs.
As we created a console, we needed to create controllers as well, and we did.
Note: The game is totally playable with only a Go-Board, but the console and controllers will allow a huge experience!
## Can we buy/recreate the console? 🎮🕹️👾
Yes, you could be able to create your own LilyPad!
You can even order one to our team.To know everything about the cost of a LilyPad, you can check this [link](https://docs.google.com/spreadsheets/d/1F-HxhJdpekoRyOHcomrwG5_U2OMouyGQa8QbSrjasqM/edit?usp=sharing).
Also, you can check the [LilyPad Documentation](https://github.com/algosup/2024-2025-project-1-fpga-team-6/releases) to dive deeper into the subject!
## "FPGA"? How does this work? 💾
The FPGA is a type of configurable integrated circuit that can be repeatedly programmed after manufacturing.
We actually used the Go-Board provided by Russell Merrick, who taught us how to deal with this technology at [ALGOSUP](https://algosup.com/en.html).To be able to upload some code in this hardware, we used Verilog as a programming language.
## Who are the people in the team? 🤝
Team 6 involves few coworkers, handling different roles:
| Role | Name | Picture |
| ------------------ | ----- | ------- |
| Project Manager | Enzo GUILLOUCHE | [](https://github.com/EnzoGuillouche) |
| Program Manager | Evan UHRING | [](https://github.com/Evan-UHRING) |
| Technical Leader | Maxime CARON | [](https://github.com/MaximeAlgosup) |
| Software Engineer | Elone DELILLE | [](https://github.com/HiNett) |
| Quality Assurance | Axel DAVID | [](https://github.com/Fus1onAxel) |
| Technical Writer | Pierre GORIN | [](https://github.com/Pierre2103) |[Here](https://github.com/algosup/2024-2025-project-1-fpga-team-6/graphs/contributors) are their contributions to the project!
#### The project's documentation
- [Weekly Reports](./Documents/Management/WeeklyReports/)
- [Management Documentation](./Documents/Management/)
- [Functional specifications](./Documents/FunctionalSpecifications/functionalSpecifications.md)
- [Technical specifications](./Documents/TechnicalSpecifications/technicalSpecifications.md)
- [3D Models](./3DModels/)
- [Quality Assurance Documentation](./Documents/QA/)
- [User Manuals](./Documents/Manuals/)