<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://wiki.gametank.zone/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://wiki.gametank.zone/feed.php">
        <title>The GameTank Wiki - development:csdk:1.0</title>
        <description></description>
        <link>https://wiki.gametank.zone/</link>
        <image rdf:resource="https://wiki.gametank.zone/lib/exe/fetch.php?media=wiki:logo.png" />
       <dc:date>2026-04-11T23:19:11+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:controllers&amp;rev=1731031056&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:csdk&amp;rev=1731031129&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:debugging&amp;rev=1731031056&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:getting_started&amp;rev=1731031056&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:graphics&amp;rev=1731031164&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:music&amp;rev=1731031056&amp;do=diff"/>
                <rdf:li rdf:resource="https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:sprites&amp;rev=1731031056&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://wiki.gametank.zone/lib/exe/fetch.php?media=wiki:logo.png">
        <title>The GameTank Wiki</title>
        <link>https://wiki.gametank.zone/</link>
        <url>https://wiki.gametank.zone/lib/exe/fetch.php?media=wiki:logo.png</url>
    </image>
    <item rdf:about="https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:controllers&amp;rev=1731031056&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-08T01:57:36+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>controllers</title>
        <link>https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:controllers&amp;rev=1731031056&amp;do=diff</link>
        <description>Reading Controllers

Reading controllers on the GameTank requires to add #include “input.h” as an include file. The API is pretty straighforward:
update_inputs();
if (player1_buttons &amp; INPUT_MASK_LEFT) {
  ...
} else if (player1_buttons &amp; INPUT_MASK_RIGHT) {
  ...
}
if (player1_buttons &amp; INPUT_MASK_UP) {
  ...
} else if (player1_buttons &amp; INPUT_MASK_DOWN) {
  ...
}
// players_old_buttons is used to make sure users press and release the button
if (player1_buttons &amp; ~player1_old_buttons &amp; INPUT_MA…</description>
    </item>
    <item rdf:about="https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:csdk&amp;rev=1731031129&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-08T01:58:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>csdk</title>
        <link>https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:csdk&amp;rev=1731031129&amp;do=diff</link>
        <description>GameTank SDK

The C SDK provides a collection of libraries and tools to support making GameTank games entirely in C! It&#039;s available on GitHub.

You can start a git repository using the SDK as a template and customize it as much or as little as you want.

The SDK also makes it easy to bring artwork and music into your project, as well as update any asset changes using the provided conversion scripts and generated header files.</description>
    </item>
    <item rdf:about="https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:debugging&amp;rev=1731031056&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-08T01:57:36+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>debugging</title>
        <link>https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:debugging&amp;rev=1731031056&amp;do=diff</link>
        <description>Debugging your Program

The GameTank emulator contains a few tools to debug your program:

	*  The VRAM Viewer allows to check what is actually loaded in VRAM
	*  The Memory Browser allows to look at the RAM. Its Variables tab allows to see the value of any global variable defined in C</description>
    </item>
    <item rdf:about="https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:getting_started&amp;rev=1731031056&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-08T01:57:36+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>getting_started</title>
        <link>https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:getting_started&amp;rev=1731031056&amp;do=diff</link>
        <description>Getting started with the GameTank C SDK

To start a new project you can use the template feature on github to create a new repository based on a snapshot of gametank_sdk.

Along with the SDK itself you&#039;ll need to install some other tools:

cc65

cc65 is an open source toolchain for cross-compiling C to 6502-based platforms. It includes a C compiler, an assembler, and a linker. It supports multiple variants of the 6502, including the 65C02 and the W65C02S used by the GameTank.</description>
    </item>
    <item rdf:about="https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:graphics&amp;rev=1731031164&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-08T01:59:24+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>graphics</title>
        <link>https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:graphics&amp;rev=1731031164&amp;do=diff</link>
        <description>Graphics on the GameTank

In most systems, a sprite is a graphical resource of limited size that can be moved across the screen without modifying the playfield. Not so on the GameTank. A “sprite” here can have any size (up to 127×127 pixels) but cannot be moved. It</description>
    </item>
    <item rdf:about="https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:music&amp;rev=1731031056&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-08T01:57:36+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>music</title>
        <link>https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:music&amp;rev=1731031056&amp;do=diff</link>
        <description>Importing and Playing Music

Just like for graphical assets, sound assets need to be stored in the assets/&lt;your dir&gt;/ directory and require to run make import to generate the necessary files. Contrary to the graphical assets they do not need to be loaded explicitly.</description>
    </item>
    <item rdf:about="https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:sprites&amp;rev=1731031056&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2024-11-08T01:57:36+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>sprites</title>
        <link>https://wiki.gametank.zone/doku.php?id=development:csdk:1.0:sprites&amp;rev=1731031056&amp;do=diff</link>
        <description>Importing and Drawing Sprites

The SDK makes it easy to bring images into your game after you&#039;ve exported them, particularly from Aseprite. This page will go into a bit more detail on how to incorporate the image files into your project and then how to load and draw them in your code.</description>
    </item>
</rdf:RDF>
