anthonygego / breakout

Breakout game with boni/mali implemented on Terasic hardware and MyPIC from UCL (LELEC2103 Project)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LELEC2103 Project (2014-2015)

This page contains some reminders about the followed guidelines.

Specifications

Communication

PIC32 <-> PIC32
  • PIC32 use MIWI to send binary messages to each other.
  • MIWI messages have a size up to 2KB
Nios <-> PIC32
  • Nios/PIC32 can send binary messages of any size (within limits) to PIC32/Nios
  • Nios/PIC32 can send RPC messages to PIC32/Nios
  • PIC32 redirects RPC messages to RPC handler routines
  • When MIWI RPC is sent to PIC32, it redirects the contained message to other PIC32
  • When File RPC is sent to PIC32
Nios <-> Nios
  • Nios can send RPC message to other Nios
  • RPC messages are received in background

Screen, touch and accelerometer

MTL
  • Nios manages the Frame Reader buffer
  • Nios can read the values of multi-touch registers
  • Nios uses double buffering
  • Nios can read the values of ADXL registers
  • Software sprites can be copied into graphical buffers via SGDMA
  • Hardware sprites can display over the screen buffer
LT24
  • Nios manages the LT24 screen buffer
  • Nios can read the values of touch registers

Game management

  • Game is launched from the website
  • Level can be chosen on the website
  • Paddle controller can be chosen on the website
  • Game status can be seen on the website

Gameplay

  • LT24 can induce boni/mali to the MTL side
  • Paddle can be moved by touching it
  • Paddle can be moved thanks to accelerometer
  • Paddle can be resized by boni/mali
  • Game can be paused by touching the playing area
  • Fixed points for brick collision
  • Additional points for consecutive brick collision
  • Boni/mali can add/remove life
  • Boni/mali can speed up/down the ball

Levels

  • Levels are defined by background image and bricks map
  • Bricks map is defined by array of char ( * for empty, numbers for others )
  • Bricks need collisions to be destructed
  • Boni/mali can add/remove bricks

Communication protocols

PIC32 <-> PIC32

About

Breakout game with boni/mali implemented on Terasic hardware and MyPIC from UCL (LELEC2103 Project)


Languages

Language:C 85.4%Language:C++ 5.3%Language:Java 3.5%Language:Makefile 2.5%Language:C# 1.1%Language:Objective-C 0.6%Language:Assembly 0.5%Language:Verilog 0.4%Language:HTML 0.3%Language:SystemVerilog 0.2%Language:Tcl 0.2%Language:Shell 0.1%Language:MATLAB 0.0%Language:JavaScript 0.0%Language:CSS 0.0%