libjoybus
Joybus implementation for 32-bit MCUs
Loading...
Searching...
No Matches
n64.h
1
7
8#pragma once
9
10#include <joybus/bus.h>
11#include <joybus/n64.h>
12
38
45typedef void (*joybus_n64_accessory_detect_cb_t)(int accessory_type, void *user_data);
46
57int joybus_n64_read(struct joybus *bus, uint8_t *response, joybus_transfer_cb_t callback, void *user_data);
58
73int joybus_n64_accessory_write(struct joybus *bus, uint16_t addr, const uint8_t *data, uint8_t *response,
74 joybus_transfer_cb_t callback, void *user_data);
75
89int joybus_n64_accessory_read(struct joybus *bus, uint16_t addr, uint8_t *response, joybus_transfer_cb_t callback,
90 void *user_data);
91
103void joybus_n64_accessory_detect(struct joybus *bus, joybus_n64_accessory_detect_cb_t callback, void *user_data);
104
110void joybus_n64_motor_start(struct joybus *bus);
111
117void joybus_n64_motor_stop(struct joybus *bus);
118
void(* joybus_n64_accessory_detect_cb_t)(int accessory_type, void *user_data)
Callback type for N64 accessory detection.
Definition n64.h:45
joybus_n64_accessory_type
N64 controller accessory types.
Definition n64.h:16
void joybus_n64_accessory_detect(struct joybus *bus, joybus_n64_accessory_detect_cb_t callback, void *user_data)
Detect the accessory connected to a N64 controller.
Definition n64.c:320
int joybus_n64_accessory_read(struct joybus *bus, uint16_t addr, uint8_t *response, joybus_transfer_cb_t callback, void *user_data)
Read data from a N64 controller's accessory port.
Definition n64.c:96
void joybus_n64_motor_stop(struct joybus *bus)
Stop the rumble motor in a N64 Rumble Pak.
Definition n64.c:341
int joybus_n64_accessory_write(struct joybus *bus, uint16_t addr, const uint8_t *data, uint8_t *response, joybus_transfer_cb_t callback, void *user_data)
Write data to a N64 controller's accessory port.
Definition n64.c:77
void joybus_n64_motor_start(struct joybus *bus)
Start the rumble motor in a N64 Rumble Pak.
Definition n64.c:334
int joybus_n64_read(struct joybus *bus, uint8_t *response, joybus_transfer_cb_t callback, void *user_data)
Read the current input state of an N64 controller.
Definition n64.c:67
@ JOYBUS_N64_ACCESSORY_SNAP_STATION
Snap Station.
Definition n64.h:36
@ JOYBUS_N64_ACCESSORY_RUMBLE_PAK
Rumble Pak.
Definition n64.h:27
@ JOYBUS_N64_ACCESSORY_CONTROLLER_PAK
Controller Pak.
Definition n64.h:24
@ JOYBUS_N64_ACCESSORY_UNKNOWN
Accessory type could not be determined.
Definition n64.h:21
@ JOYBUS_N64_ACCESSORY_NONE
No accessory connected.
Definition n64.h:18
@ JOYBUS_N64_ACCESSORY_BIO_SENSOR
Bio Sensor.
Definition n64.h:33
@ JOYBUS_N64_ACCESSORY_TRANSFER_PAK
Transfer Pak.
Definition n64.h:30
void(* joybus_transfer_cb_t)(struct joybus *bus, int result, void *user_data)
Function type for transfer completion callbacks.
Definition bus.h:44
A Joybus instance.
Definition bus.h:59