I wrote No Snakes! as a proof of concept, to take advantage of Snowdrop OS's new set of serial port system calls. Much like Snowdrop OS, I wrote No Snakes! exclusively in x86 assembly language.
No Snakes! is my first attempt at a networked game. It is limited to two human players, and uses a client-server communications model. It uses the arrow keys to direct the snake. Local player's snake is always displayed in green, whereas the enemy player's snake is displayed in red.
When running in server mode
, the game is in charge of accepting input, managing the state of the game (pre-start, in-progress, game over), updating snake positions, and communicating snake and victory state to the client.
When running in client mode
, the game is much dumber. All it does is transmit player input to the server, and receive snake positions and the winner, in the event of game over.
No Snakes! is not distributed stand-alone. Instead, you can find its source code among the other apps included with my homebrew operating system, Snowdrop OS, here