The C64 OS Programmer's Guide is being written

This guide is being written and released and few chapters at a time. If a chapter seems to be empty, or if you click a chapter in the table of contents but it loads up Chapter 1, that's mostly likely because the chapter you've clicked doesn't exist yet.

Discussion of development topics are on-going about what to put in this guide. The discusssions are happening in the C64 OS Community Support Discord server, available to licensed C64 OS users.

C64 OS PROGRAMMER'S GUIDE

Chapter 5: Using Shared Libraries: Library Reference

This chapter provides an alphabetical list of all the libraries provided by C64 OS and the version in which they were introduced. The libraries are divided into two broad categories, common and uncommon.

Each library has its own page which outlines in detail the routines found within the library, how to call them, their input and output parameters, what they do and gives important context for how to use them correctly.

To learn how to write your own library, see Chapter 10: Writing a Shared Library.


Common Libraries

calendar.lib

Available: 1.0

Standard calendar routines, such as leap year and day of week.

cmp.lib

Available: 1.0

Comparison routines for directory and other sorting.

cnp.lib

Available: 1.07

Commodore Network Protocol packet library.

datetime.lib

Available: 1.0

String to integer and vice versa date/time conversion routines.

dir.lib

Available: 1.0

Directory loading and parsing. Supports all C64 OS supported devices.

fcopy.lib

Available: 1.0

File copy for a single file between any two file references. Supports REU.

fname.lib

Available: 1.04

Useful routines for working with filenames, such as extracting an extension.

gfx.lib

Available: 1.0

Routines for supporting status bar raster split when graphics data is available.

memory.lib

Available: 1.05

Memory management routines that extend the KERNAL memory module.

network.lib

Available: 1.07

Library for network management and coordination.

path.lib

Available: 1.0

Library with routines for standard path and file reference manipulation.

qsort.lib

Available: 1.0

Quick Sort routines paired with cmp.lib. Used by dir.lib to sort directories.

sidplay.lib

Available: 1.0

Library for loading PSID format SID music. Fetches metadata and controls playback.


Uncommon Libraries

checksum.lib

Available: 1.02

Provides standard checksum routines; CRC8, CRC16, CRC32.

crash.lib

Available: 1.0

Crash handler that loads the crashscreen when an exception is unhandled.

flock.lib

Available: 1.0

File lock routines for 1541, 1571, 1581, CMD HD, FD, RAMLink and IDE64.

grab.lib

Available: 1.0

Library for grabbing and saving a screenshot of the standard UI.

i2c.lib

Available: 1.0

Library that implements the I2C bus over the User Port. Two versions exist.

iec.lib

Available: 1.0

Library that scans the IEC bus and builds the detected devices table.

places.lib

Available: 1.0

Library of routines to load, read and manage recents and favorites.

qbasic.lib

Available: 1.05

Standard library to quit to BASIC, with Fast Reboot support.

rec.lib

Available: 1.0

Routines for detecting presence and capacity of 17xx REU.

tarea.lib

Available: 1.06

Library for supporting multi-line text editing in Toolkit.

wrap.lib

Available: 1.0

Softwraps text. Builds a linked-line table used by the TKText Toolkit class.

utils.lib

Available: 1.0

Builds and links the Utilities menu from //os/settings/:utilities.m definitions file.


Next Chapter: Using Toolkit

Table of Contents



This document is subject to revision updates.

Last modified: Jan 24, 2025