summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorMichael Panzlaff <michael.panzlaff@fau.de>2021-07-08 15:28:40 +0200
committerMichael Panzlaff <michael.panzlaff@fau.de>2021-08-25 18:03:48 +0200
commit4fbf785bbdfee9be474724caf8b804b0544d0f79 (patch)
tree67ad61cd0d2b1f681cbb7090886f99abb1fdc988 /include
parent6e37656a84a76cd315b870a8002e2fec0fa0f00e (diff)
arm7: decompile SND_command
Diffstat (limited to 'include')
-rw-r--r--include/nitro/SND_work_shared.h45
1 files changed, 45 insertions, 0 deletions
diff --git a/include/nitro/SND_work_shared.h b/include/nitro/SND_work_shared.h
index 08eda013..02cc8bff 100644
--- a/include/nitro/SND_work_shared.h
+++ b/include/nitro/SND_work_shared.h
@@ -42,6 +42,51 @@ struct SNDSharedWork {
s16 globalVars[16]; // 0x260
}; // size = 0x280
+struct SNDDriverInfo {
+ struct SNDWork work; // 0x0000
+ u32 channelControls[SND_CHANNEL_COUNT]; // 0x1180
+ struct SNDWork *workPtr; // 0x11C0
+ u32 lockedChannels; // 0x11C4
+ u8 unk_XXX[24]; // 0x11C8
+}; // size = 0x11E0
+
+struct SNDChannelInfo {
+ struct {
+ BOOL active : 1;
+ BOOL locked: 1;
+ } flags; // 0x0
+ u16 volume; // 0x4
+ u8 pan; // 0x6
+ u8 unk_7; // 0x7
+ s32 envStatus; // 0x8
+}; // size = 0xC
+
+struct SNDPlayerInfo {
+ struct {
+ BOOL active : 1;
+ BOOL paused : 1;
+ } flags; // 0x0
+ u16 trackBitMask; // 0x4
+ u16 tempo; // 0x6
+ u8 volume; // 0x8
+ u8 unk_9[3]; // 0x9
+}; // size = 0xC
+
+struct SNDTrackInfo {
+ u16 program; // 0x0
+ u8 volume; // 0x2
+ u8 expression; // 0x3
+
+ s8 pitchBend; // 0x4
+ u8 bendRange; // 0x5
+ u8 pan; // 0x6
+ s8 transpose; // 0x7
+
+ u8 unk_8; // 0x8
+ u8 chnCount; // 0x9
+ u8 channel[SND_CHANNEL_COUNT]; // 0xA
+}; // size = 0x1A
+
extern struct SNDWork SNDi_Work;
extern struct SNDSharedWork *SNDi_SharedWork;