1.1. Introduction

This book documents the USB systems SWI API. It consists of chapters for the two modules which provide the API. The "core" module which provides raw USB services and the "library" module which provides support functions to enable easier driver writing.

The RISC OS USB C API is the primary supported API and should be used if possible.

The core module has a somewhat non standard interface compared with other RISC OS modules, its error handling and some parameters are non standard. The specifics are explained in the introduction of the chapter documenting the core.

The library module adhears to general RISC OS style calling conventions including standard error returns. Some common core calls have been replicated here with standard semantics which should assist driver writers.