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.
main.cppopens a 320×240 SDL window at 25 fps, allocates a pixel buffer and ast_controlstruct (keyboard state + frame flag), then hands both to the assembly entry point on a background thread.proyectoASM.sis the main game loop: reads input, moves paddles, updates the ball, paints the background and sprites pixel by pixel into the shared buffer.gameoverplayerone.sandgameoverplayertwo.srender the win screens.imagenes.hholds the sprite/pixel data.
| Player | Up | Down |
|---|---|---|
| Player 1 | W |
S |
| Player 2 | ↑ |
↓ |
Requires SDL2 and an AArch64 toolchain with assembler support.
mkdir build && cd build
cmake ..
make
./proyectoASMFinal project for the Computer Architecture course at UCC — 2020.