Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

libuci

libuci is a C library for the Commodore 64 that implements the client side of the Ultimate Command Interface (UCI) protocol, supporting cc65 and oscar64 compilers.

UCI allows C64 programs to communicate with Ultimate devices programmatically through cartridge port registers.

Features

  • File Access (DOS): Read, write, rename, and delete files on SD cards or USB storage, navigate directories, and read the real-time clock.
  • Networking: Fetch network interface details (IP, MAC) and open TCP or UDP sockets.
  • SoftIEC & DMA Load: Mount disk images (.d64, .d71, .d81) and load binaries directly into C64 RAM via DMA.
  • System Control: Query installed SID chips, hardware info, and reboot the system.
  • Text Codec: Convert strings between ASCII (firmware), PETSCII and Screen Codes (C64 display).

Usage

To use libuci in your project, copy the header file(s) from include/ and the source file(s) you need from src/ (core.c along with specific subsystem modules like dos.c or net.c) into your project's build setup.

Detailed API documentation and function comments are located in the header files:

Examples

Sample programs demonstrating each feature can be found in the examples/ directory:

About

C Library for Commodore 64 Ultimate Command Interface (UCI)

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages