Skip to content

⚔️👾In this project, we made an assembler in the form of a 2 player game. Each player has his own 8086 processor and 16-bit memory (RAM), your target is store the value "105e" in one of your opponent's registers. In each round you are able to write a complete x86 assembly instruction that will be executed on your opponent's processor but be caref…

Notifications You must be signed in to change notification settings

norhanreda/ClashOfProcessors

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

🔱 Clash of Processors 🔱

An x86 Assembly project

Description

In this project, we made an assembler in the form of a 2 player game. Each player has his own 8086 processor and 16-bit memory (RAM), your target is store the value "105e" in one of your opponent's registers. In each round you are able to write a complete x86 assembly instruction that will be executed on your opponent's processor but be careful, your opponent has set a forbidden character that you can't use in your instruction, in addition to some power ups that may be used against you, which makes it harder to reach your target.

Features

  • Serial port communication.
  • 20 x86 assembly instructions.
  • 6 addressing modes.
  • Separate chat module.
  • In-game chat (in 2 Players using serial port version).
  • Randomly flying objects, each player has a gun to shoot them and earn additional points.
  • 2 levels.

Versions

  • 2 Players on 1 PC
  • The 2 players play on the same pc using the same keyboard.
  • 2 Players using serial port
  • 2 PCs are connected using the serial port cable, each player plays on his PC with complete synchronisation in instructions, in-game chat, gun fire and more!

How To Run

Copy the project content into the path of your DosBox.
To run 2 players on 1 PC:
  • Open DosBox
  • Write the following commands:
    • masm clash
    • masm gun
    • masm rm
    • masm cmd_p1
    • masm cmd_p2
    • masm chat
    • masm start
    • masm level
    • masm powerups
    • masm win
    • link clash+rm+gun+cmd_p2+cmd_p1+chat+start+level+powerups+win
    • clash
To run 2 players using serial port version:
  • Open DosBox
  • Write the following commands:
    • masm clash
    • masm gun
    • masm rm
    • masm cmd_p1
    • masm cmd_p2
    • masm chat1
    • masm start
    • masm level
    • masm powerups
    • masm win
    • link clash+rm+gun+cmd_p2+cmd_p1+chat1+start+level+powerups+win
    • clash

Limitations

  • This version is only optimized for MASM 6.11, any other version or assembler may not run correctly.
  • In 2 Players using serial port version: name, initial points and level 2 are not synchronysed between the 2 PCs (yet).

About

⚔️👾In this project, we made an assembler in the form of a 2 player game. Each player has his own 8086 processor and 16-bit memory (RAM), your target is store the value "105e" in one of your opponent's registers. In each round you are able to write a complete x86 assembly instruction that will be executed on your opponent's processor but be caref…

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Assembly 100.0%