Skip to content

matinsaurralde/pongArmAssembly

Repository files navigation

pongArmAssembly

Pong written in ARM64 assembly. C++/SDL2 hosts the window and input loop; the game logic, paddle movement, ball physics, collisions and rendering all live in .s files.

How it works

  • main.cpp opens a 320×240 SDL window at 25 fps, allocates a pixel buffer and a st_control struct (keyboard state + frame flag), then hands both to the assembly entry point on a background thread.
  • proyectoASM.s is the main game loop: reads input, moves paddles, updates the ball, paints the background and sprites pixel by pixel into the shared buffer.
  • gameoverplayerone.s and gameoverplayertwo.s render the win screens.
  • imagenes.h holds the sprite/pixel data.

Controls

Player Up Down
Player 1 W S
Player 2

Build

Requires SDL2 and an AArch64 toolchain with assembler support.

mkdir build && cd build
cmake ..
make
./proyectoASM

Context

Final project for the Computer Architecture course at UCC — 2020.

About

Pong game made using arm assembly

Resources

Stars

0 stars

Watchers

2 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages