Brick Breaker ASMx86 is a retro-style arcade game built using assembly language for x86 architecture. It offers exciting features such as multiplayer support via serial communication, a chat feature in the main menu, and unique power-ups to enhance gameplay.
- Play against a friend using serial communication.
- Synchronize gameplay for an engaging competitive experience.
- Use the chat feature in the main menu to communicate with your opponent before starting the game.
- Supports basic text messaging over serial communication.
- Hit a special red block to gain an additional life point, giving you an edge in challenging levels.
- Control the paddle to bounce the ball and break all the bricks.
- Progressive levels with increasing difficulty.
- An x86-compatible computer or emulator.
- Serial communication hardware or virtual COM ports (if running on real hardware).
- DOSBox or equivalent for emulation.
- Clone the repository:
git clone https://github.com/AmrSamy59/Brick-Breaker-ASMx86.git
- Copy the required executable files:
- Copy the
.exe
files from the8086
folder (e.g.,tasm
,link
, etc.) into the project folder.
- Copy the
- Edit the
mount
folder:- Modify the path in the
run.py
script to point to your project folder.
- Modify the path in the
- Edit the DOSBox path:
- Update the DOSBox path in the
run.py
script to match your DOSBox installation directory.
- Update the DOSBox path in the
- Run the
run.py
script:python run.py
- Arrow Keys: Move the paddle left and right.
- Enter: Start the game in main menu.
- C: Start the chat in main menu.
- Esc: exit the game/chat synchronously for both players.
Watch the gameplay in action:
- Connect two computers using a serial cable or set up virtual COM ports.
- Launch the game on both systems.
- Use the chat feature in the main menu to ensure proper connection.
- Start the multiplayer game and enjoy!
- The game features a unique power-up: hit the red block to gain an extra life point.
- Multiplayer and chat features rely on serial communication protocols.
- Ensure proper hardware setup or emulation for seamless communication.
- Add more power-ups (e.g., wider paddle, speed control).
- Introduce new brick designs and level layouts.
- Enhance chat functionality with emojis or predefined messages.
- Developers: Amr Samy, Anas Magdy, Shady Mohamed, Tasneem Mohamed