SSBM Decomp
Loading...
Searching...
No Matches
common_structs.h
Go to the documentation of this file.
1
3#ifndef _common_structs_h_
4#define _common_structs_h_
5
6#include <platform.h>
7
8#include <dolphin/gx.h>
9#include <dolphin/mtx.h>
10
11// Most of these should be moved to independent headers once they are created
12
13// SOUND EFFECTS
14
15#define SFX_VOLUME_MAX 0x7FU
16#define SFX_PAN_MID 0x40U
17
18// HSD_PAD
20typedef u32 HSD_Pad;
21
22#define HSD_PAD_DPADLEFT (1 << 0)
23#define HSD_PAD_DPADRIGHT (1 << 1)
24#define HSD_PAD_DPADDOWN (1 << 2)
25#define HSD_PAD_DPADUP (1 << 3)
26#define HSD_PAD_Z (1 << 4)
27#define HSD_PAD_R (1 << 5)
28#define HSD_PAD_L (1 << 6)
29#define HSD_PAD_7 (1 << 7)
30
32#define HSD_PAD_A (1 << 8)
33
34#define HSD_PAD_B (1 << 9)
35#define HSD_PAD_X (1 << 10)
36#define HSD_PAD_Y (1 << 11)
37#define HSD_PAD_START (1 << 12)
38
40#define HSD_PAD_LR (1 << 31)
41
42#define HSD_PAD_AB (HSD_PAD_A | HSD_PAD_B)
43#define HSD_PAD_XY (HSD_PAD_X | HSD_PAD_Y)
44
45// COLLISION FLAGS
46
47// From Ness's Yo-Yo collision check
48
50#define MPCOLL_RIGHTWALL 0x3F
51#define MPCOLL_FLAGS_B05 (1 << 5)
52#define MPCOLL_LEFTWALL 0xFC0
53#define MPCOLL_WALL (MPCOLL_RIGHTWALL | MPCOLL_LEFTWALL)
54#define MPCOLL_FLAGS_B11 (1 << 11)
55#define MPCOLL_CEIL 0x6000
56#define MPCOLL_FLAGS_B14 (1 << 14)
57#define MPCOLL_UNK 0x18000 // Floor??
58#define MPCOLL_GRPUSH (1 << 15)
59#define MPCOLL_FLAGS_B16 (1 << 16)
60#define MPCOLL_FLAGS_B20 (1 << 20) // 0x100000
61#define MPCOLL_FLAGS_B21 (1 << 21) // 0x200000
62#define MPCOLL_FLAGS_B23 (1 << 23)
63#define MPCOLL_FLAGS_B24 (1 << 24)
64#define MPCOLL_FLAGS_B25 (1 << 25)
65
66typedef union UnkFlagStruct {
68 struct {
69 u8 b0 : 1;
70 u8 b1 : 1;
71 u8 b2 : 1;
72 u8 b3 : 1;
73 u8 b4 : 1;
74 u8 b5 : 1;
75 u8 b6 : 1;
76 u8 b7 : 1;
77 };
79
84
85#endif
GroundOrAir
Definition common_structs.h:80
@ GA_Ground
Definition common_structs.h:81
@ GA_Air
Definition common_structs.h:82
u32 HSD_Pad
Definition common_structs.h:20
Definition common_structs.h:66
u8 b3
Definition common_structs.h:72
u8 b4
Definition common_structs.h:73
u8 b6
Definition common_structs.h:75
u8 b5
Definition common_structs.h:74
u8 b2
Definition common_structs.h:71
u8 b7
Definition common_structs.h:76
u8 b0
Definition common_structs.h:69
u8 u8
Definition common_structs.h:67
u8 b1
Definition common_structs.h:70