Skip to content

Latest commit

 

History

History
37 lines (25 loc) · 2.26 KB

README.md

File metadata and controls

37 lines (25 loc) · 2.26 KB

Corewar

In this project, you will create a virtual “arena” in which programs will fight against one another (the “Champions”). You will also create an assembler to compile those Champions as well as a Champion to show the world that you can create life from coffee.

ASM Explanation

Teamwork

  • @vomnes : The Assembler
  • @atrudel : The Virtual Machine
  • @pdady : The Virtual Machine and the Visual (ncurses)

ASM

  • The assembler: this is the program that will compile your champions and translate them from the language you will write them in (assembly language) into “Bytecode”. Bytecode is a machine code, which will be directly interpreted by the virtual machine.

alt text

file.s (Pseudo-ASM) to file.cor (Binary file)

alt textalt text

Details binary compilation

alt text

VM

  • The virtual machine: It’s the “arena” in which your champions will be executed. It offers various functions, all of which will be useful for the battle of the champions. Obviously, the virtual machine should allow for numerous simultaneous processes; we are asking you for a gladiator fight, not a one-man show simulator.

alt text

Corewar Visual with ncurses

alt text

Corewar Visual end

alt text

Corewar Verbose mode

alt text

Corewar Dump mode

alt text