The Corewar project is a game in which several programs called "Champions" will fight to stay the last one alive. Corewar is actually a computer simulation in which processors will share memory to run on.
The project is based on a virtual machine in which the champions will fight for memory by all possible means in order to win, the last champion being able to signal that he is alive wins the game. In other words, the last champion to execute the "live" instruction is declared winner.
(f)open, (f)read, (f)write, getline, lseek, fseek, (f)close, malloc, realloc, free, exit.
-
All keywords are in upercase
-
Merges keep their default git message
-
Keywords: [ADD] [RM] [FIX] [EDIT]
-
Syntax: "[ADD] something"
-
No warnings
-
No coding style errors
- creation and destruction: [name]_factory.c
- others: [name]_tools.c
Other file keywords can be used as long as they respect the syntax [name]_[function].c
Clone the project
git clone https://github.com/EpitechPromo2027/B-CPE-200-TLS-2-1-corewar-lucien.pineau.git
Go to the project directory
cd B-CPE-200-TLS-2-1-corewar-lucien.pineau.git
Compile the project
make
Execute the binaries
./asm/asm [filename] ...
./corewar/corewar [-dump nbr_cycle] [[-n prog_number] [-a load_address] prog_name] ...
To run the unit tests, run the following command
make unit_tests
To run the binary tests, run the following command
make btests
To see the coverage of the tests, run the following command
make gcovr
To generate the documentation, run the following command
sudo make docs-install
make docs
To remove the installed files, run the following command
sudo make docs-remove