GithubHelp home page GithubHelp logo

ambroseled / ucfk4-pong Goto Github PK

View Code? Open in Web Editor NEW
0.0 0.0 1.0 323 KB

An implementation of pong that runs on two UCFK4 ATmega32u2 microcontrollers

Makefile 11.90% C 88.10%
atmega32u2 microcontroller pong-game pong c microcontrollers game

ucfk4-pong's Introduction

ENCE260 UCFK4 Assignment - Pong

A simple implementation of pong using two ucfk4, written as a pair assigment for ENCE260-18 achieving an A grade. Developed by:

  • Ambrose Ledbrook | 79172462
  • Josh Jarvis | 28803714

The drivers required for this game to run are not provided here. All drivers needed and a copy of the game is provided here: https://github.com/ambroseled/UCFK4-Apps

Usage

  1. Set up boards in a dimely lit area close together with ir receivers and senders facing each other
  2. In terminal navigate to the root of the group128 folder
  3. Run make clean
  4. Then run make program twice
  5. Press the navswtich move to game difficulty selection, on either board
  6. Use the navswitch to select the game difficulty
  7. Confirm difficulty and start the game by pressing the navswitch
  8. Use the navswitch to control your paddle
  9. Play the game!!

group128 Folder Location

  • The MakeFile of the game relies on the group128 folder being two directories down from the drivers, utils and fonts folders that are porvided in the ence260-ucfk4 repository
  • When running the game please ensure that the group128 folder is in the above location

The Game

  • The goal of the game is to win by causing the other player to miss the ball
  • Use your paddle to bounce the ball back onto the other players screen and stop it from hitting the back of your screen
  • The active player will be indicated by the blue led

Game Difficulty

  • The game has 3 difficulty levels which relate to the speed of the ball
    • Easy - 1
    • Medium - 2
    • Hard - 3

Winning / Losing the Game

  • When the game is over the winner's boad will display You Won!! :) as well as the led turning on and the losing board will display You Lost :(
  • The game menu can then be reached through a press of the navswitch from either board

The Game Menu

  1. The game menu first gives a greeting Welcome to pong
  2. Then with a push of the navswitch you move on to difficulty selection
  3. The navswitch can be used to cycle through the different difficulty levels
  4. A push of the navswitch will confirm the difficulty and start the game

Game Over Menu

  1. A winning or losing message will be displayed
  2. A push of the navswitch will again move you to difficulty selection
  3. Another push of the navswitch will confirm difficulty and restart the game

ucfk4-pong's People

Contributors

ambroseled avatar

Forkers

benkeimpe

ucfk4-pong's Issues

Dependabot couldn't find a Gemfile for this project

Dependabot couldn't find a Gemfile for this project.

Dependabot requires a Gemfile to evaluate your project's current Ruby dependencies. It had expected to find one at the path: /Gemfile.

If this isn't a Ruby project, or if it is a library, you may wish to disable updates for it from within Dependabot.

You can mention @dependabot in the comments below to contact the Dependabot team.

Dependabot couldn't find a Gemfile for this project

Dependabot couldn't find a Gemfile for this project.

Dependabot requires a Gemfile to evaluate your project's current Ruby dependencies. It had expected to find one at the path: /Gemfile.

If this isn't a Ruby project, or if it is a library, you may wish to disable updates for it from within Dependabot.

You can mention @dependabot in the comments below to contact the Dependabot team.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.