![]() |
Jo Engine 2026.11.1
Jo Sega Saturn Engine
|
System Management & Peripheral Control. More...
Go to the source code of this file.
Data Structures | |
| struct | jo_peripheral |
| Digital peripheral data (gamepad). More... | |
| struct | jo_peripheral_analog |
| Analog peripheral data (racing wheel, mission stick, 3D pad). More... | |
| struct | jo_peripheral_pointer |
| Pointing peripheral data (mouse). More... | |
| struct | jo_peripheral_keyboard |
| Keyboard data. More... | |
| struct | jo_smpc_status |
| SMPC status (Internal usage). More... | |
Macros | |
| #define | JO_PERIPHERAL_ID_NOT_CONNECTED |
| Peripheral ID: nothing connected. | |
| #define | JO_PERIPHERAL_ID_STANDARD_PAD |
| Peripheral ID: standard pad. | |
| #define | JO_PERIPHERAL_ID_RACING_WHEEL |
| Peripheral ID: racing wheel. | |
| #define | JO_PERIPHERAL_ID_MISSION_STICK |
| Peripheral ID: mission stick. | |
| #define | JO_PERIPHERAL_ID_NIGHTS_PAD |
| Peripheral ID: 3D pad (NiGHTS pad). | |
| #define | JO_PERIPHERAL_ID_MOUSE |
| Peripheral ID: mouse. | |
| #define | JO_PERIPHERAL_ID_SHUTTLE_MOUSE |
| Peripheral ID: shuttle mouse. | |
| #define | JO_PERIPHERAL_ID_KEYBOARD |
| Peripheral ID: keyboard. | |
| #define | JO_PERIPHERAL_KEYBOARD_CAPS_LOCK |
| Keyboard condition: caps lock is on. | |
| #define | JO_PERIPHERAL_KEYBOARD_NUM_LOCK |
| Keyboard condition: num lock is on. | |
| #define | JO_PERIPHERAL_KEYBOARD_SCROLL_LOCK |
| Keyboard condition: scroll lock is on. | |
| #define | JO_PERIPHERAL_KEYBOARD_MAKE |
| Keyboard condition: a key is pressed (make). | |
| #define | JO_PERIPHERAL_KEYBOARD_BREAK |
| Keyboard condition: a key is released (break). | |
| #define | JO_SMPC_PERIPHERAL_PER_PORT |
| Number of peripherals per port (with a multitap). | |
Functions | |
| static __jo_force_inline void | jo_smpc_write_byte (jo_smpc_memory_address addr, unsigned char data) |
| static __jo_force_inline unsigned char | jo_smpc_read_byte (jo_smpc_memory_address addr) |
| static __jo_force_inline void | jo_smpc_wait (void) |
| static __jo_force_inline void | jo_smpc_begin_command (void) |
| static __jo_force_inline void | jo_smpc_end_command (jo_smpc_command command) |
| void | __jo_smpc_command (const jo_smpc_command command) |
| Send a command to the SMPC and wait for the end of the command (Internal usage). | |
Variables | |
| jo_peripheral | __jo_smpc_peripherals [(15) *2] |
| Peripherals (Internal usage): 15 entries for port 1 followed by 15 entries for port 2. | |
| jo_smpc_status | __jo_smpc_status |
| SMPC status, refreshed every frame (Internal usage). | |
System Management & Peripheral Control.
| struct jo_peripheral |
| struct jo_peripheral_analog |
Analog peripheral data (racing wheel, mission stick, 3D pad).
| Data Fields | ||
|---|---|---|
| unsigned short | data | |
| unsigned char | id | |
| unsigned short | pull | |
| unsigned short | push | |
| unsigned int | reserved[3] | |
| unsigned char | size | |
| unsigned char | w | |
| unsigned char | x | |
| unsigned char | y | |
| unsigned char | z | |
| struct jo_peripheral_pointer |
Pointing peripheral data (mouse).
| Data Fields | ||
|---|---|---|
| unsigned short | data | |
| unsigned char | id | |
| unsigned short | pull | |
| unsigned short | push | |
| unsigned int | reserved[3] | |
| unsigned char | size | |
| short | x | |
| short | y | |
| struct jo_peripheral_keyboard |
Keyboard data.
| struct jo_smpc_status |
| #define JO_PERIPHERAL_ID_KEYBOARD |
Peripheral ID: keyboard.
| #define JO_PERIPHERAL_ID_MISSION_STICK |
Peripheral ID: mission stick.
| #define JO_PERIPHERAL_ID_MOUSE |
Peripheral ID: mouse.
| #define JO_PERIPHERAL_ID_NIGHTS_PAD |
Peripheral ID: 3D pad (NiGHTS pad).
| #define JO_PERIPHERAL_ID_NOT_CONNECTED |
Peripheral ID: nothing connected.
| #define JO_PERIPHERAL_ID_RACING_WHEEL |
Peripheral ID: racing wheel.
| #define JO_PERIPHERAL_ID_SHUTTLE_MOUSE |
Peripheral ID: shuttle mouse.
| #define JO_PERIPHERAL_ID_STANDARD_PAD |
Peripheral ID: standard pad.
| #define JO_PERIPHERAL_KEYBOARD_BREAK |
Keyboard condition: a key is released (break).
| #define JO_PERIPHERAL_KEYBOARD_CAPS_LOCK |
Keyboard condition: caps lock is on.
| #define JO_PERIPHERAL_KEYBOARD_MAKE |
Keyboard condition: a key is pressed (make).
| #define JO_PERIPHERAL_KEYBOARD_NUM_LOCK |
Keyboard condition: num lock is on.
| #define JO_PERIPHERAL_KEYBOARD_SCROLL_LOCK |
Keyboard condition: scroll lock is on.
| #define JO_SMPC_PERIPHERAL_PER_PORT |
Number of peripherals per port (with a multitap).
| enum jo_smpc_command |
SMPC Commands.
| void __jo_smpc_command | ( | const jo_smpc_command | command | ) |
Send a command to the SMPC and wait for the end of the command (Internal usage).
| command | SMPC command |
|
static |
|
static |
|
static |
|
static |
|
static |
|
extern |
Peripherals (Internal usage): 15 entries for port 1 followed by 15 entries for port 2.
|
extern |
SMPC status, refreshed every frame (Internal usage).