The C02 library provides functions for common tasks and allows the creation of programs that can be compiled for different systems with little or no changes. Use of the C02 library requires a system specific header, which can be specified using the #include directive in the source code or by using a command line argument when running the compiler. The available headers include: appl2std Original Apple 2 (incomplete) apple1 Apple 1 (incomplete) c64 Commodored 64 (incomplete) oric Oric-1 (incomplete) plus4 Commoded Plus/4 (incomplete) py65 Python 6502 Emulator - py65mon vic3k Vic-20 with 3k memory (incomplete) vic8k Vic-20 with 8k+ memory (incomplete) The library functions are contained in various modules. The #include directive is used to allow the functions in a module to be used in a program. Most modules require that orher modules be included. These dependencies are detailed in the documentation for each individual module. The available modules are as follows: stddef Standard Definitions Commonly used constants, as well as base functions common to nearly every other module. stdlib Standard Library The most commonly used functions, including eight bit mathematical operations and string/numeric conversions. bitlib Bit Library Bit shift, rotate, and nybble manipulation functions for 8-bit values. intlib Integer Library Mathematical, bit shifting and string/numeric conversion functions for 16-bit values. ctype Characted Type Functions to detect character types and convert between lower and upper case. stdio Standard Input/Output Functions for reading and writing characters and strings from the keyboard and to the screen. stdiox Standard Input/Output Extended Functions for writing formatted data to the screen, including decimal and hexadecimal numbers. string String functions Functions for copying, searching, comparing, and concatenating strings. stringx String Extended The more powerful, but less frequently used string manipulation functions. memory Memory functions Functions for copying, searching, and comparing arrays. block Block functions Functions for reading, writing, and searching for fixed length segments of data to an arbitrarily large section of memory. stack Stack functions Contains functions for pushing and popping variable length segments of data onto and off of a stack in memory. memio Memory Input/Ouput Functions to simulate reading and writing to a section of memory as though it were a file. fileio File Input/Ouput Functions to access, read from, and write to files on cassette and/or disk. dirent Directory Entry Functions to read directories from disk, disk like devices, and possibly tapes. direct Directory Access Functions to switch between, create and remove directories, and to switch between devices.