diff options
author | Dimitri Staessens <dimitri@ouroboros.rocks> | 2019-10-06 21:10:46 +0200 |
---|---|---|
committer | Dimitri Staessens <dimitri@ouroboros.rocks> | 2019-10-06 21:10:46 +0200 |
commit | 568553394d0a8b34668a75c9839a0f1f426469b2 (patch) | |
tree | 175c08844f05611b059ba6900fb6519dbbc735d2 /content/en/docs/Extra | |
parent | d5d6f70371958eec0679831abd283498ff2731e5 (diff) | |
download | website-568553394d0a8b34668a75c9839a0f1f426469b2.tar.gz website-568553394d0a8b34668a75c9839a0f1f426469b2.zip |
theme: Switch to docsy theme
Diffstat (limited to 'content/en/docs/Extra')
-rw-r--r-- | content/en/docs/Extra/_index.md | 7 | ||||
-rw-r--r-- | content/en/docs/Extra/ioq3.md | 101 | ||||
-rw-r--r-- | content/en/docs/Extra/raptor.md | 63 | ||||
-rw-r--r-- | content/en/docs/Extra/rumba.md | 13 |
4 files changed, 184 insertions, 0 deletions
diff --git a/content/en/docs/Extra/_index.md b/content/en/docs/Extra/_index.md new file mode 100644 index 0000000..8a405b0 --- /dev/null +++ b/content/en/docs/Extra/_index.md @@ -0,0 +1,7 @@ +--- +title: "Extra" +linkTitle: "Extra" +weight: 90 +description: > + Some extra tools and software. +--- diff --git a/content/en/docs/Extra/ioq3.md b/content/en/docs/Extra/ioq3.md new file mode 100644 index 0000000..a024c7d --- /dev/null +++ b/content/en/docs/Extra/ioq3.md @@ -0,0 +1,101 @@ +--- +title: "ioq3" +author: "Dimitri Staessens" +date: 2019-10-06 +draft: false +description: > + Added support for Ouroboros to the ioq3 game engine. +--- + + +As a demo, we have added Ouroboros support to the +[ioq3](https://github.com/ioquake/ioq3) game engine. ioq3 is a fork of +ID software's [Quake III Arena GPL Source +Release](https://github.com/id-Software/Quake-III-Arena). The port is +available as a [patch](/patches/ouroboros-ioq3.patch). The servers +currently only work in dedicated mode (there is no way yet to start a +server from the client). + +To get the demo, first get the latest ioq3 sources: + +```bash +$ git clone https://github.com/ioquake/ioq3.git +$ cd ioq3 +``` + +Copy the patch via the link above, or get it via wget: + +```bash +$ wget https://ouroboros.rocks/patches/ouroboros-ioq3.patch +``` + +Apply the patch to the ioq3 code: + +```bash +$ git apply ouroboros-ioq3.patch +``` + +With Ouroboros installed, build the ioq3 project in standalone mode: + +```bash +$ STANDALONE=1 make +``` + +You may need to install some dependencies like SDL2, see the [ioq3 +documentation](http://wiki.ioquake3.org/Building_ioquake3). + +The ioq3 project only supplies the game engine. To play Quake III Arena, +you need the original game files and a valid key. Various open source +games make use of the engine. We wil detail the procedure for running +OpenArena in your ioq3 build directory. + +Go to your build directory: + +```bash +$ cd build/<release_dir>/ +``` + +To run OpenArena, you only need to the game files. First download the +zip archive (openarena-0.8.8.zip) from the [OpenArena +website](http://www.openarena.ws) (or via wget) and then extract the +baseoa folder: + +```bash +$ wget http://www.openarena.ws/request.php?4 -O openarena-0.8.8.zip +$ unzip -j openarena-0.8.8.zip 'openarena-0.8.8/baseoa/*' -d +./baseoa +``` + +Make sure you have a local Ouroboros layer running in your system (see +[this](/tutorial-1/). + +To test the game, start a server (replace <arch> with the correct +architecture extension for your machine, eg x86_64): + +```bash +$ ./ioq3ded.<arch> +set com_basegame baseoa +map aggressor +``` + +Bind the pid of the server to a name and register it in the local layer: + +```bash +$ irm bind proc <pid> name my.ioq3.server +$ irm reg name my.ioq3.server layer <your_local_layer> +``` + +To connect, start a client (in a different terminal): + +```bash +$ ./ioquake3.<arch> +set com_basegame baseoa +``` + +When the client starts, go to the console by typing ~ (tilde) and enter +the following command + +```bash +connect -O my.ioq3.server +``` + +The client should now connect to the ioq3 dedicated server over +Ouroboros. Register the name in non-local layers to connect from other +machines. Happy Fragging! diff --git a/content/en/docs/Extra/raptor.md b/content/en/docs/Extra/raptor.md new file mode 100644 index 0000000..cf0f83b --- /dev/null +++ b/content/en/docs/Extra/raptor.md @@ -0,0 +1,63 @@ +--- +title: "Raptor" +author: "Dimitri Staessens" +date: 2019-10-06 +draft: false +description: > + Proof-of-concept FPGA demonstrator for Ouroboros. +--- + +Raptor is a proof-of-concept FPGA demonstrator for running Ouroboros +directly over Ethernet PHY (OSI L1). For this, it uses the [NetFPGA +10G](http://netfpga.org/site/#/systems/3netfpga-10g/details/) platform, +which has Broadcom AEL2005 PHY 10G Ethernet devices. Raptor is +point-to-point and does not use addresses. It is available for Linux +only and support is minimal. If you are interested in trying it out, +please contact us via the ouroboros mailing list or the IRC channel. + +You can clone the [raptor repository](/cgit/raptor/): + +```bash +$ git clone http://ouroboros.rocks/git/raptor +$ git clone https://ouroboros.rocks/git/raptor +$ git clone git://ouroboros.rocks/raptor +``` + +There are two directories. The *linux* directory contains the kernel +module, the *netfpga10g* directory contains the files necessary to build +the FPGA design. + +To build and install the kernel module: + +```bash +$ make +$ sudo make install +``` + +You can now load/unload the raptor kernel module: + +```bash +$ sudo modprobe raptor +$ sudo rmmod raptor +``` + +To uninstall the module: + +```bash +$ sudo make uninstall +``` + +You will need to get some cores (such as PCIe and XAUI) from Xilinx in +order to build this project using the provided tcl script. Detailed +instructions on how to build the NetFPGA project under construction. + +Raptor is integrated in Ouroboros and the raptor IPCP will be built if +the kernel module is installed in the default location. + +Raptor was developed as part of the master thesis (in Dutch) +"Implementatie van de Recursive Internet Architecture op een FPGA +platform" by Alexander D'hoore. The kernel module is licensed under +the [GNU Public License (GPL) version +2](https://www.gnu.org/licenses/old-licenses/gpl-2.0.html). The NetFPGA +design is available under the [GNU Lesser Public License (LGPL) version +2.1](https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html). diff --git a/content/en/docs/Extra/rumba.md b/content/en/docs/Extra/rumba.md new file mode 100644 index 0000000..5023f8e --- /dev/null +++ b/content/en/docs/Extra/rumba.md @@ -0,0 +1,13 @@ +--- +title: "Rumba" +author: "Dimitri Staessens" +date: 2019-10-06 +draft: false +description: > + Small orchestration framework for deploying recursive networks. +--- + +Rumba is an __experimentation framework__ for deploying recursive +network experiments in various network testbeds. It was developed as +part of the [ARCFIRE](http://ict-arcfire.eu) project, and available on +[gitlab](https://gitlab.com/arcfire/rumba) . |