SSBM Decomp
Loading...
Searching...
No Matches
controller.h
Go to the documentation of this file.
1#ifndef _controller_h_
2#define _controller_h_
3
4#include <platform.h>
5
6#include "baselib/forward.h"
8
10#include "baselib/rumble.h"
11
12#include <dolphin/pad/pad.h>
13
14#define PAD_ERR_NO_CONTROLLER -1
15
22
25};
26
53
54struct PadLibData {
55 /*0x00*/ u8 qnum;
56 /*0x01*/ u8 qread;
57 /*0x02*/ u8 qwrite;
58 /*0x03*/ u8 qcount;
59 /*0x04*/ u8 qtype;
60 /*0x08*/ HSD_PadData* queue;
61 /*0x0C*/ s32 repeat_start;
63 /*0x14*/ s8 adc_type;
64 /*0x15*/ s8 adc_th;
65 /*0x18*/ f32 adc_angle;
76 /*0x26*/ s8 scale_stick;
79 /*0x29*/ u8 cross_dir;
81 /*0x2B*/ u8 reset_switch;
83};
84
88
92void HSD_PadRenewRawStatus(bool);
94void HSD_PadRenewGameStatus(void);
95void HSD_PadRenewStatus(void);
96void HSD_PadReset(void);
98
99#endif
HSD_FlushType
Definition controller.h:16
@ HSD_PAD_FLUSH_QUEUE_TERMINATE
Definition controller.h:20
@ HSD_PAD_FLUSH_QUEUE_THROWAWAY
Definition controller.h:18
@ HSD_PAD_FLUSH_QUEUE_LEAVE1
Definition controller.h:19
@ HSD_PAD_FLUSH_QUEUE_MERGE
Definition controller.h:17
void HSD_PadRenewRawStatus(bool)
Definition controller.c:59
u8 HSD_PadGetRawQueueCount(void)
Definition controller.c:25
HSD_PadStatus HSD_PadMasterStatus[4]
Definition controller.c:19
void HSD_PadInit(u8, HSD_PadData *, u16, HSD_PadRumbleListData *)
Definition controller.c:571
void HSD_PadReset(void)
Definition controller.c:549
void HSD_PadRenewGameStatus(void)
Definition controller.c:469
void HSD_PadFlushQueue(HSD_FlushType)
Definition controller.c:128
HSD_PadStatus HSD_PadGameStatus[4]
Definition controller.c:21
HSD_PadStatus HSD_PadCopyStatus[4]
Definition controller.c:20
void HSD_PadRenewStatus(void)
Definition controller.c:541
void HSD_PadRenewMasterStatus(void)
Definition controller.c:322
s32 HSD_PadGetResetSwitch(void)
Definition controller.c:39
signed char s8
A signed 8-bit integer.
Definition platform.h:8
unsigned long u32
An unsigned 32-bit integer.
Definition platform.h:26
float f32
A 32-bit floating-point number.
Definition platform.h:62
unsigned short u16
An unsigned 16-bit integer.
Definition platform.h:23
signed long s32
A signed 32-bit integer.
Definition platform.h:14
unsigned char u8
An unsigned 8-bit integer.
Definition platform.h:20
Definition controller.h:23
PADStatus stat[4]
Definition controller.h:24
Definition rumble.h:34
Definition controller.h:27
u8 cross_dir
Definition controller.h:50
s32 repeat_count
Definition controller.h:33
s8 subStickY
Definition controller.h:37
u8 analogR
Definition controller.h:39
f32 nml_subStickY
Definition controller.h:45
u8 analogA
Definition controller.h:40
u32 trigger
Definition controller.h:30
u32 last_button
Definition controller.h:29
u32 button
Definition controller.h:28
s8 stickX
Definition controller.h:34
f32 nml_stickY
Definition controller.h:43
u32 release
Definition controller.h:32
u8 analogL
Definition controller.h:38
f32 nml_analogL
Definition controller.h:46
s8 err
Definition controller.h:51
f32 nml_subStickX
Definition controller.h:44
f32 nml_analogB
Definition controller.h:49
s8 subStickX
Definition controller.h:36
u32 repeat
Definition controller.h:31
f32 nml_stickX
Definition controller.h:42
f32 nml_analogR
Definition controller.h:47
f32 nml_analogA
Definition controller.h:48
u8 analogB
Definition controller.h:41
s8 stickY
Definition controller.h:35
Definition pad.h:27
Definition controller.h:54
u8 clamp_stickShift
Definition controller.h:67
s8 adc_type
Definition controller.h:63
u8 qcount
Definition controller.h:58
u8 clamp_analogABMax
Definition controller.h:74
s8 scale_stick
Definition controller.h:76
u8 scale_analogAB
Definition controller.h:78
HSD_PadData * queue
Definition controller.h:60
u8 clamp_analogABMin
Definition controller.h:75
s8 adc_th
Definition controller.h:64
u8 reset_switch
Definition controller.h:81
u8 clamp_analogLRShift
Definition controller.h:70
s32 repeat_interval
Definition controller.h:62
u8 qwrite
Definition controller.h:57
u8 scale_analogLR
Definition controller.h:77
u8 clamp_analogLRMin
Definition controller.h:72
u8 qtype
Definition controller.h:59
u8 qread
Definition controller.h:56
u8 reset_switch_status
Definition controller.h:80
s8 clamp_stickMin
Definition controller.h:69
s32 repeat_start
Definition controller.h:61
s8 clamp_stickMax
Definition controller.h:68
u8 clamp_analogABShift
Definition controller.h:73
f32 adc_angle
Definition controller.h:65
RumbleInfo rumble_info
Definition controller.h:82
u8 qnum
Definition controller.h:55
u8 clamp_analogLRMax
Definition controller.h:71
u8 clamp_stickType
Definition controller.h:66
u8 cross_dir
Definition controller.h:79
Definition rumble.h:28