Skip to content

Latest commit

 

History

History
23 lines (17 loc) · 1.27 KB

README.md

File metadata and controls

23 lines (17 loc) · 1.27 KB

Corewar

A virtual "arena" in which programs fight against one another.

This project can be broken down into three distinctive parts:

• The assembler: a program that compiles champions and translates them from the language
they are written in (assembly language) into “Bytecode”.
Bytecode is a machine code, which will be directly interpreted by the virtual machine.

• The virtual machine: It’s the “arena” in which champions will be executed.
It offers various functions, all of which are used for the battle of the champions.

• The champion: a file written in assembler language
containing data that defines program's behaviour on the "battlefield".

More detailed description of every part can be found in ./project_info/corewar.en.pdf.

corewar program lifecycle with ncurses vizualization:

alt text alt text alt text alt text