Commander X16 Development

Last updated 2/05/2024

This page is basically a companion to my devlog that I've been posting on Youtube. I recommend watching that for full context.

Xist16 Logo

Xist16 is a graphics library (with a few other useful things thrown in like some user input convenience functions and a pseudorandom number generator) I've written for the Commander X16 to expedite the development of CX16 programs (games, primarily) in C using the cc65 compiler.

Xist16 is currently hosted on Github. It is licensed under the MIT license, which means you're free to use it for any purpose as long as you provide attribution and don't hold me liable if you somehow manage to blow yourself up with it.

Games

Now that the initial release of the Xist16 library is complete, I'll be using it to develop my own games for the Commander X16! I will post updates as development progresses to my devlog playlist.

Downloads

 

Precompiled ZSound library for anyone who has problems compiling it themselves

 

Here is my image converter that will convert PNG files into raw palette indices which can be loaded directly into the CX16's VRAM. To use it, place the files you want to convert into the data folder and run XistImageConverter. It will output .IMG files which you can then load into your CX16 applications. You can replace the cx16palette.png file with your own palette as long as it is a 16x16 file where each pixel corresponds to the color in your palette in that index position (0 for the top-left to 255 for the bottom-right). Note that I misremembered how I implemented replacing the palette in my devlog video: If you want to use a custom palette, it must be named cx16palette.png exactly.

There is a version available for Windows and one for Linux. Both versions include the source code. The Windows version is standalone but the Linux one will require JDK 17+ installed on your system to work.

 

Python utility for converting strings into comma-separated lists of ASCII codes (helpful if you hard-code any strings in your program for use with Xist16's text draw functions).

 

Links

Commander X16 Official Website
CC65 Compiler Suite
Optimizing cc65 Code (IMPORTANT for writing performant code)
GNU Make for Windows
ZSound Library
ZSMKit
CX16 C Programming Tutorial