Skip to content

Latest commit

 

History

14 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pong Variations

Pong, Hand-Written for Real Game Boy Hardware

A Game Boy ROM, hand-written in SM83 assembly (RGBDS), implementing a variation on Pong: a single player-controlled paddle bounces a ball off the top and bottom walls, aiming to keep it in play. Built from scratch: tile data, OAM sprite handling, VBlank-synced input, and collision detection, with no engine underneath it.


Sections

  1. Project Structure
  2. Status
  3. Building
  4. Controls
  5. Resources

Project Structure

src/
├── lib
│   ├── hardware.inc ; standard RGBDS hardware register/constant definitions
│   └── objects.asm  ; paddle and ball tile data
└── pong.asm         ; entry point, main loop, input handling, ball physics, collision, interrupt handler

Status

In active development. Currently:

  • Paddle renders as three stacked 8×8 tiles and moves with Up/Down, clamped to the screen bounds.
  • Second paddle (computer-controlled) renders on the opposite side of the field.
  • Ball renders and moves diagonally every frame, bouncing off the top and bottom walls.
  • Ball-paddle collision detection is wired up against both paddles (bounding-box check against each paddle's X plane and Y span).
  • Computer paddle tracks the ball's y-position every frame, moving one pixel at a time toward it, clamped to the screen bounds.
  • Ball resets after any player "scores".
  • No scoring display yet.

Building

Requires RGBDS 0.5.0 or later.

cd src
make        # assemble, link, and fix the ROM -> pong.gb
make run    # open pong.gb in the default Game Boy emulator
make clean  # remove build artifacts (pong.gb, pong.o, pong.sym)

Load the resulting pong.gb in SameBoy or any other Game Boy emulator (or flash it to a cartridge for the real thing).


Controls

Button Action
Up Move paddle up
Down Move paddle down

Resources

About

No description or website provided.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages