{% extends "konami.html" %}
{% block body %}
<h1>Benami/Konami e-Amusement API</h1>

<p>The pages across this mini-site aim to totally document, to the best of my ability, the API used for E-Amusement
    (XRPC), some of its inner workings, how to interface with it both as a client and a server, and how to perform this
    sort of analysis yourself.</p>

<p>If you just want a plug-and-play library, this is not it. If you're here for knowledge, my aim is that this is
    <i>the</i> most comprehensive public documentation, so you're hopefully in the right place.
</p>

<i><a href="./motivation.html">I moved the big block about why these page exist, because it was getting painfully
        long.</a></i>

<p>If you run into a mistake on these pages and want to raise an issue, either open one on
    <a href="https://gitea.tendokyu.moe/eamuse/universe">the big meta-repo</a> or feel free to get in touch directly.
</p>

<h2>Contents</h2>
{{ generate_toc(0)|safe }}

<h2>Code snippets</h2>
<p>Across these pages there are a number of code snippets. They roughly break down into three categories:</p>
<ul>
    <li>Assembly: Directly disassembled code from game binaries</li>
    <li>C: Either raw decompilation, or slightly cleaned up decompilation</li>
    <li>Python: Snippets from my local testing implementations</li>
    <li>Pseudocode: Used to illustrate some points. Note that it probably started life as Python before being
        pseudo'd</li>
</ul>
<p>If you yoink chunks of Python code, attribution is always appreciated, but consider it under CC0 (just don't be
    that person who tries to take credit for it, yeah?).</p>
<p>Assembly and C snippets often come with an accompanying filename and address. If you're interested in learning how
    things work in more detail, I'd strongly recommend checking them out. Not all games come with the same version of
    files; the provided addresses are for build SDVX build KFC-2019020600, using the default base offset.</p>
{% endblock %}