PSPSDK 2026-01-28
Loading...
Searching...
No Matches
pspctrl_kernel.h File Reference
#include <psptypes.h>
Include dependency graph for pspctrl_kernel.h:

Go to the source code of this file.

Macros

#define sceCtrlSetButtonMasks   sceCtrlSetButtonIntercept
 
#define sceCtrlGetButtonMask   sceCtrlGetButtonIntercept
 
#define sceCtrlRegisterButtonCallback   sceCtrlSetSpecialButtonCallback
 

Typedefs

typedef void(* SceKernelButtonCallbackFunction) (u32 cur_buttons, u32 last_buttons, void *opt)
 The callback function used by sceCtrlSetSpecialButtonCallback().
 
typedef enum SceCtrlButtonMaskMode SceCtrlButtonMaskMode
 Button mask settings.
 

Enumerations

enum  SceCtrlButtonMaskMode { SCE_CTRL_MASK_NO_MASK = 0 , SCE_CTRL_MASK_IGNORE_BUTTONS = 1 , SCE_CTRL_MASK_APPLY_BUTTONS = 2 }
 Button mask settings. More...
 

Functions

u32 sceCtrlSetButtonIntercept (u32 buttons, u32 mask_mode)
 
u32 sceCtrlGetButtonIntercept (u32 buttons)
 Get button mask mode.
 
int sceCtrlSetSpecialButtonCallback (u32 slot, u32 button_mask, SceKernelButtonCallbackFunction callback, void *opt)
 Registers a button callback.
 

Macro Definition Documentation

◆ sceCtrlGetButtonMask

#define sceCtrlGetButtonMask   sceCtrlGetButtonIntercept

◆ sceCtrlRegisterButtonCallback

#define sceCtrlRegisterButtonCallback   sceCtrlSetSpecialButtonCallback

◆ sceCtrlSetButtonMasks

#define sceCtrlSetButtonMasks   sceCtrlSetButtonIntercept

Typedef Documentation

◆ SceCtrlButtonMaskMode

Button mask settings.

◆ SceKernelButtonCallbackFunction

typedef void(* SceKernelButtonCallbackFunction) (u32 cur_buttons, u32 last_buttons, void *opt)

The callback function used by sceCtrlSetSpecialButtonCallback().

Enumeration Type Documentation

◆ SceCtrlButtonMaskMode

Button mask settings.

Enumerator
SCE_CTRL_MASK_NO_MASK 

No mask for the specified buttons.

Button input is normally recognized.

SCE_CTRL_MASK_IGNORE_BUTTONS 

The specified buttons are ignored, that means even if these buttons are pressed by the user they won't be shown as pressed internally.

You can only block user buttons for applications running in User Mode.
SCE_CTRL_MASK_APPLY_BUTTONS 

The specified buttons show up as being pressed, even if the user does not press them.

You can only turn ON user buttons for applications running in User Mode.

Function Documentation

◆ sceCtrlGetButtonIntercept()

u32 sceCtrlGetButtonIntercept ( u32 buttons)

Get button mask mode.

Parameters
buttonsThe buttons to check for. One or more buttons of SceCtrlButtons.
Returns
The button mask mode for the given buttons. One of SceCtrlButtonMaskMode.

◆ sceCtrlSetButtonIntercept()

u32 sceCtrlSetButtonIntercept ( u32 buttons,
u32 mask_mode )
Examples
Example.

◆ sceCtrlSetSpecialButtonCallback()

int sceCtrlSetSpecialButtonCallback ( u32 slot,
u32 button_mask,
SceKernelButtonCallbackFunction callback,
void * opt )

Registers a button callback.

Parameters
slotThe slot used to register the callback. Between 0 - 3.
button_maskBitwise OR'ed button values which will be checked for being pressed. One or more buttons of SceCtrlButtons.
callbackA pointer to the callback function handling the button callbacks.
optOptional user argument. Passed to the callback function as its third argument.
Returns
0 on success, < 0 on error.