[< back to index](../doc_index.md)

# Commodore 64-oriented modules

## c64_kernal module

The `c64_kernal` module is imported automatically on the C64 target.
It provides access to Kernal routines, so it requires the Kernal ROM to be enabled.

TODO

## c64_basic module

The `c64_basic` module provides access to Kernal routines, so it requires the Basic ROM to be enabled.
In particular, this means that it will not work on cartridge targets without extra preparations.

TODO

## c64_hardware

TODO

## c1531

The `c1531` module implements a Commodore 1531 proportional mouse driver compatible with the [`mouse` module](./mouse.md).

#### `void c1531_mouse()`

Updates the state of the mouse.

## c1531_default

Defines the `c1531` module as the default module for reading mouse input.

#### `alias read_mouse = c1531_mouse`

## c64_joy

The `c64_joy` module implements a joystick driver compatible with the [`joy` module](./joy.md).

#### `void read_joy2()`

Reads the joystick from the port 2.

#### `void read_joy1()`

Reads the joystick from the port 1.

#### `void read_also_joy2()`

Reads the joystick from the port 2 and adds its readouts to the current readouts.

#### `void read_also_joy1()`

Reads the joystick from the port 1 and adds its readouts to the current readouts.

## c64_joy2_default

Defines the joystick in port 2 as the default joystick.

#### `alias read_joy = read_joy2`



