Using the Debug Interface

From C256 Foenix Wiki
Jump to navigation Jump to search

Using the Debug interface

Data and programs may be sent to the C256 Foenix over the USB debug port (right side of the FMX, left side of the U/U+).

Installing Drivers

The debug interface is a USB serial port which requires a driver to be installed on the host system. The drivers for the serial USB device (XR21B1411) can be found at:

Uploading with the Foenix IDE

To setup the Foenix IDE, not much is required beyond copying or cloning the repository from GitHub ( There is no special installation required, and the EXE should just run.

To upload a BIN or HEX file with the Foenix IDE's user interface:

  1. Select the Tools > Uploader menu option. An "Uploader Window" will open.
  2. Select the COM port associated with the C256 debug interface in the drop down selector.
  3. Click the "Connect" button to establish a connection to the C256.
  4. Click the button labeled with ellipsis (...) to select the file to upload. By default, the uploader will show BIN files, but you can choose to search for HEX files instead.
  5. If you are uploading a BIN file, enter the starting destination address in the field "C256 Dest Address". This step is not needed with HEX files, since they have the destination addresses for their data included.
  6. Click the "Send Binary" button to start the upload process.

Foenix IDE Uploader.png

Uploading with C256Mgr

C256Mgr is a set of Python scripts allowing access to the C256's USB debug interface. The scripts allow you to use the command line to upload BIN and HEX files to the C256, reprogram the flash memory, or examine memory on the C256. If your code includes a 64Tass compatible LBL file, the C256Mgr scripts can use that LBL file to allow you to examine memory based on the labels in your code. C256Mgr was originally intended to provide a cross-platform option for those who cannot run .Net applications. The C256Mgr can be found at:

To install the C256Mgr, you will need to make sure you have Python 3.7 installed as well as the PySerial library. You will need to edit the c256.ini file to set the default COM port and LBL file for your project, although both settings can be overridden by the command line options.

Once the manager is installed and configured correctly, there are two batch files that can be used to upload a file to the C256:

To upload a binary file, you use the UPLOAD.BAT file, which takes a BIN file and destination address (in hex) as arguments:

upload kernel.bin 380000

HEX File
To upload an Intel HEX file, you use the RUN256.BAT file, which takes just the HEX file as an argument:

run256 hello.hex