Pong over Telnet, implemented in x64 Assembly
Go to file
Tudor Roman a34f85f55d
Test build / pre-commit (pull_request) Successful in 54s Details
Test build / pre-commit (push) Successful in 27s Details
nix-based workflow
2024-01-31 18:58:48 +01:00
.gitea/workflows nix-based workflow 2024-01-31 18:58:48 +01:00
.envrc init 2024-01-29 11:49:05 +01:00
.gitignore init 2024-01-29 11:49:05 +01:00
README.md init 2024-01-29 11:49:05 +01:00
flake.lock init 2024-01-29 11:49:05 +01:00
flake.nix it's better to use extend 2024-01-29 12:17:09 +01:00
makefile init 2024-01-29 11:49:05 +01:00
pong.s init 2024-01-29 11:49:05 +01:00


Telnet Pong, in x64 Assembly

This is Pong, the well known classic game, playable over telnet, implemented for Linux in x64 assembly. This implementation makes heavy use of Linux-only features to make implementation easier, in particular:

  • epoll: For the game loop. It handles connection requests, input events, and game loop ticks.
  • timerfd: What other better way to implement game loop ticks than via a file descriptor-aware method! Thanks to timerfd, I can let epoll take care of that too.


Assuming you have make and gcc install, just run make.

A Nix flake is also provided. If you have Nix installed, you can run nix build.


This program was written for a bonus assignment during my first year of university. The assignment was to make any game in assembly, so I thought why not make it work over the network too...