forked from HarbourMasters/Starship
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsfx.h
511 lines (492 loc) · 24.4 KB
/
sfx.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
#ifndef SFX_H
#define SFX_H
#include "sys.h"
extern f32 gDefaultSfxSource[];
extern f32 gDefaultMod;
extern s8 gDefaultReverb;
void Audio_PlaySfx(u32 sfxId, f32* sfxSource, u8 token, f32* freqMod, f32* volMod, s8* reverbAdd);
void Audio_KillSfxByBank(u8 bankId);
void Audio_StopSfxByBankAndSource(u8 bankId, f32* sfxSource);
void Audio_KillSfxByBankAndSource(u8 bankId, f32* sfxSource);
void Audio_KillSfxBySource(f32* sfxSource);
void Audio_KillSfxBySourceAndId(f32* sfxSource, u32 sfxId);
void Audio_KillSfxByTokenAndId(u8 token, u32 sfxId);
void Audio_KillSfxById(u32 sfxId);
void Audio_StartPlayerNoise(u8 playerId);
void Audio_StopPlayerNoise(u8 playerId);
void Audio_InitBombSfx(u8 playerId, u8 type);
void Audio_PlayBombFlightSfx(u8 playerId, f32* sfxSource);
void Audio_PlayBombExplodeSfx(u8 playerId, f32* sfxSource);
void Audio_StopEngineNoise(f32* sfxSource);
void Audio_SetSfxSpeedModulation(f32 vel);
void Audio_SetTransposeAndPlaySfx(f32* sfxSource, u32 sfxId, u8 semitones);
void Audio_SetModulationAndPlaySfx(f32* sfxSource, u32 sfxId, f32 freqMod);
void Audio_PlaySfxModulated(f32* sfxSource, u32 sfxId);
void Audio_SetSfxMapModulation(u8 fMod);
void Audio_SetHeatAlarmParams(u8 shields, u8 heightParam);
void Audio_PlayEventSfx(f32* sfxSource, u16 eventSfxId);
void Audio_StopEventSfx(f32* sfxSource, u16 eventSfxId);
void Audio_SetEnvSfxReverb(s8 reverb);
void Audio_PlayPauseSfx(u8 active);
void Audio_PlayMapMenuSfx(u8 active);
void Audio_KillAllSfx(void);
#define AUDIO_PLAY_SFX(sfxId, srcPos, token) (Audio_PlaySfx((sfxId),(srcPos),(token),&gDefaultMod,&gDefaultMod,&gDefaultReverb))
#define SFX_FLAG_18 (1 << 18) // makes distance ignore z position? probably more
#define SFX_FLAG_19 (1 << 19)
#define SFX_FLAG_20 (1 << 20) // make priority ignore distance
#define SFX_FLAG_21 (1 << 21) // make reverb ignore distance
#define SFX_FLAG_22 (1 << 22) // make volume ignore distance
#define SFX_FLAG_23 (1 << 23) // make noisy
#define SFX_FLAG_27 (1 << 27) // allow duplicate requests
#define SFX_BANK_SHIFT 28
#define SFX_STATE_SHIFT 24
#define SFX_RANGE_SHIFT 16
#define SFX_IMPORT_SHIFT 8
#define SFX_BANK_MASK (0xF << SFX_BANK_SHIFT)
#define SFX_STATE_FLAG (1 << SFX_STATE_SHIFT)
#define SFX_RANGE_MASK (3 << SFX_RANGE_SHIFT)
#define SFX_IMPORT_MASK (0xFF << SFX_IMPORT_SHIFT)
#define SFX_BANK(sfxId) ((((sfxId) & SFX_BANK_MASK) >> SFX_BANK_SHIFT) & 0xFF)
#define SFX_BANK_ALT(sfxId) (((sfxId) >> SFX_BANK_SHIFT) & 0xFF)
#define SFX_STATE(sfxId) (((sfxId) & SFX_STATE_FLAG) >> SFX_STATE_SHIFT)
#define SFX_RANGE(sfxId) ((((sfxId) & SFX_RANGE_MASK) >> SFX_RANGE_SHIFT) & 0xFF)
#define SFX_IMPORT(sfxId) ((((sfxId) & SFX_IMPORT_MASK) >> SFX_IMPORT_SHIFT) & 0xFF)
#define SFX_INDEX(sfxId) ((sfxId) & 0xFF)
#define SFX_PACK(bank, index, range, importance, flags) \
((((bank)<<SFX_BANK_SHIFT)&SFX_BANK_MASK)|(((range)<<SFX_RANGE_SHIFT)&SFX_RANGE_MASK)|\
(((importance)<<SFX_IMPORT_SHIFT)&SFX_IMPORT_MASK)|((index)&0xFF)|SFX_STATE_FLAG|(flags))
typedef enum SfxBankId {
SFX_BANK_PLAYER,
SFX_BANK_1,
SFX_BANK_2,
SFX_BANK_3,
SFX_BANK_SYSTEM,
} SfxBankId;
#define NA_SE_NONE 0x00000000
#define NA_SE_TURRET_SHOT 0x09000000 // Invented name. Appears in unused turret mode.
#define NA_SE_ARWING_SHOT 0x09400000
#define NA_SE_SMART_BOMB_SHOT 0x09001001
#define NA_SE_ARWING_BOOST 0x09000002
#define NA_SE_ARWING_DASH 0x09004002 // Boost variant used by Venom 1 intro and boss Titania
#define NA_SE_ARWING_BRAKE 0x09000003
#define NA_SE_ARWING_EXPLOSION 0x0903F004
#define NA_SE_SLIPPY_HIT 0x09000004 // From Sector X boss
#define NA_SE_ARWING_ENGIN_GRD 0x0100F005
#define NA_SE_TANK_ENGIN 0x0100F006
#define NA_SE_WING_OPEN 0x09000007
#define NA_SE_BOMB_CHARGE 0x01008008 // iniial bomb flight. only plays for 1 frame. Bombs were chargeable?
#define NA_SE_BOMB_EXPLODE0 0x0901A009 // unused bomb explosion
#define NA_SE_BOMB_EXPLODE1 0x0903A00A // used bomb explosion
#define NA_SE_BOMB_EXPLODE2 0x0901A00B // unused bomb explosion
#define NA_SE_BACKUP_CLEAR 0x0940A00B // Also used for explosion on Corneria at game start
#define NA_SE_ARWING_TWIN_LASER 0x0940800C
#define NA_SE_ZERO_SHIELD 0x0900000D // Unreferenced. Sounds like an explosion
#define NA_SE_DAMAGE_S 0x0903900E
#define NA_SE_DAMAGE_L 0x0903A00F
#define NA_SE_ARWING_DOWN 0x0900C010
#define NA_SE_ROLLING_REFLECT 0x09007011
#define NA_SE_ROLLING_AIR 0x09000012
#define NA_SE_WING_OPEN_END 0x09000013
#define NA_SE_LIFT_UP_END 0x09002013
#define NA_SE_TANK_SHOT 0x09000014 // Also used for on-foot shot
#define NA_SE_TANK_BOUND 0x09008015 // Same as NA_SE_TANK_WALL_HIT
#define NA_SE_TANK_WALL_HIT 0x09008015 // Same as NA_SE_TANK_BOUND
#define NA_SE_TANK_GO_UP 0x01008016
#define NA_SE_MAR_ROLLING_AIR 0x09000017
#define NA_SE_STEP_FOX 0x09000018 // Unreferenced
#define NA_SE_STEP_FALCO 0x09000019 // Unreferenced
#define NA_SE_STEP_PEPPY 0x0900001A // Unreferenced
#define NA_SE_STEP_SLIPPY 0x0900001B // Unreferenced
#define NA_SE_DEMO_RUNNING 0x0140001C
#define NA_SE_LIFT_UP 0x0100001D
#define NA_SE_ENGINE_START 0x0100001E
#define NA_SE_VOLUME_TEST 0x0100001F
#define NA_SE_ARWING_ENGIN_SPC 0x0100F020
#define NA_SE_MAR_SHOT 0x09400021
#define NA_SE_MARINE_ENGINE00 0x0100F022
#define NA_SE_WING_REPAIR 0x09008023
#define NA_SE_TANK_BURNER_HALF 0x01004024
#define NA_SE_MAR_BOMB_SHOT 0x01000025
#define NA_SE_MAR_LAUNCH 0x01038026
#define NA_SE_MAR_TWIN_LASER 0x09400027 // Also used for hyper lasers
#define NA_SE_MAR_BOUND 0x09404028
#define NA_SE_LOCK_ON_LASER 0x09007029 // Charge shot fire
#define NA_SE_ARWING_WARP_DASH 0x0940802A // During warp zone entrance cutscene
#define NA_SE_MAP_ARWING_WARP_DASH 0x0900802A
#define NA_SE_ARWING_TWIN_LASER2 0x0940802B
#define NA_SE_ARWING_WING_BROKEN 0x0900A02C
#define NA_SE_LOCK_SEARCH 0x0900302D // Charge shot charge
#define NA_SE_SPREAD_EXPLOSION 0x0903502E // Charge shot/torpedo explode
#define NA_SE_TANK_DASH 0x0900402F
#define NA_SE_MARINE_BOOST 0x09004030
#define NA_SE_MARINE_BRAKE 0x09004031
#define NA_SE_MAP_ARWING_DASH 0x09000032
#define NA_SE_FALL 0x11000000
#define NA_SE_PASS 0x19000001
#define NA_SE_OB_METAL_BOUND_S 0x19030002 // Unreferenced.
#define NA_SE_OB_METAL_BOUND_M 0x19030003
#define NA_SE_EN_METAL_BOUND_M 0x19130003
#define NA_SE_EN_MS_LAND 0x19031003
#define NA_SE_OB_METAL_BOUND_L 0x19030004
#define NA_SE_OB_BLOCK_APPEAR 0x19122005
#define NA_SE_OB_BOUND_M 0x19020006
#define NA_SE_OB_ROCK_BOUND 0x19030006
#define NA_SE_OB_AQ_ROCK_BOUND 0x19400007
#define NA_SE_METALBOMB_REFLECT 0x19020008
#define NA_SE_OB_MA_SWITCH_UP 0x19033008
#define NA_SE_METALBOMB_BOUND 0x19030009 // Unreferenced.
#define NA_SE_TANK_SLIDE 0x1100000A
#define NA_SE_SPLASH_LEVEL_S 0x1100000B
#define NA_SE_SPLASH_LEVEL_L 0x1100000C
#define NA_SE_OB_GATE_OPEN 0x1900000D
#define NA_SE_OB_SLIDE_OPEN 0x1903000D
#define NA_SE_OB_GATE_CLOSE 0x1900000E
#define NA_SE_OB_SLIDE_CLOSE 0x1903000E
#define NA_SE_OB_EXPLOSION_S 0x1903400F
#define NA_SE_GREATFOX_ENGINE 0x11030010
#define NA_SE_EARTHQUAKE 0x11000011
#define NA_SE_MAP_ZOOM_START 0x19003012
#define NA_SE_MAP_ZOOM_END 0x19004013
#define NA_SE_OB_WATER_BOUND_M 0x19000014
#define NA_SE_OB_STEELFRAME 0x19500015
#define NA_SE_EXPLOSION_DEMO2 0x11030016
#define NA_SE_KA_UFO_FALLING 0x11404016
#define NA_SE_IN_SPLASH_S 0x19800017
#define NA_SE_OUT_SPLASH_S 0x19800018 // Unreferenced.
#define NA_SE_IN_SPLASH_L 0x19832019
#define NA_SE_OUT_SPLASH_L 0x1983201A
#define NA_SE_OB_CRAME_MOTOR 0x1900001B
#define NA_SE_OB_BROKEN_BOX 0x1903901C
#define NA_SE_OB_MINI_BOMB 0x1903001D
#define NA_SE_OB_WT_WHEEL_ROLL 0x1903001E
#define NA_SE_OB_WALL_UP 0x1903001F
#define NA_SE_ON_SPLASH_S 0x19000020
#define NA_SE_EN_PULL_CHAIN0 0x19003021
#define NA_SE_EN_GATHER_PARTS 0x11033022
#define NA_SE_EN_HEARTBEAT 0x11003023
#define NA_SE_OB_SAND_BOUND_S 0x19000024
#define NA_SE_KA_UFO_ENGINE 0x11037025
#define NA_SE_MAP_ZOOM_OUT 0x19000026
#define NA_SE_EN_BROKEN_SPARK 0x11000027
#define NA_SE_OB_SPARK_BEAM 0x11000028
#define NA_SE_OB_BOMB_ALARM 0x19000029
#define NA_SE_WARP_HOLE 0x1900602A
#define NA_SE_OB_WING 0x1900302B
#define NA_SE_SUBMARINE_ATM 0x1100802C
#define NA_SE_WATER_PRESSURE 0x1900002D
#define NA_SE_BUBBLE_UP 0x1900002E
#define NA_SE_EN_WT_BROKEN 0x1902102F
#define NA_SE_EN_WT_DISAPPEAR_S 0x19003030
#define NA_SE_EN_WT_BOUND_M 0x19402031
#define NA_SE_OB_BOMB_ALARM_LAST 0x19000032
#define NA_SE_EN_WT_DISAPPEAR_L 0x19000033
#define NA_SE_EN_RNG_BEAM_CHARGE 0x11015034
#define NA_SE_EN_RNG_BEAM_SHOT 0x19006035
#define NA_SE_EN_SHIELD_ROLL 0x19030036
#define NA_SE_GREATFOX_SHOT_DEMO 0x19030037
#define NA_SE_WARP_RING_1 0x19404038
#define NA_SE_WARP_RING_2 0x19404139
#define NA_SE_WARP_RING_3 0x1940423A
#define NA_SE_WARP_RING_4 0x1940433B
#define NA_SE_WARP_RING_5 0x1940443C
#define NA_SE_WARP_RING_6 0x1940453D
#define NA_SE_WARP_RING_7 0x1940463E
#define NA_SE_KA_UFO_HATCH_OPEN 0x1903203F
#define NA_SE_KA_UFO_HATCH_CLOSE 0x19032040
#define NA_SE_KA_UFO_CORE_OPEN 0x19032041
#define NA_SE_BO_CORE_APPEAR 0x19034041
#define NA_SE_KA_UFO_HATCH_STOP 0x19034042
#define NA_SE_KA_UFO_LONG_CHARGE 0x11034043
#define NA_SE_KA_UFO_LAST_CHARGE 0x19406044
#define NA_SE_KA_UFO_BEAM 0x1140B045
#define NA_SE_EXPLOSION_DEMO3 0x11038046
#define NA_SE_KA_UFO_BOUND 0x19408047
#define NA_SE_OB_BARRIER_RELEASE 0x19401048
#define NA_SE_EN_SPACE_SNAKE 0x11032049
#define NA_SE_OB_ROCKWALL_UP 0x1913204A
#define NA_SE_COLONY_LEVEL 0x1100004B // Unreferenced.
#define NA_SE_MAP_MOVE 0x1100004C
#define NA_SE_MAP_ROLL 0x1100204C
#define NA_SE_MAP_LINE_DRAW 0x1900404D
#define NA_SE_SHIP_ENGINE_SPC 0x1100004E // Unreferenced.
#define NA_SE_OB_BROKEN_SPARK_L 0x1900404F
#define NA_SE_EN_SHIELD_ROLL_LEVEL 0x11002050
#define NA_SE_EN_SHIELD_ROLL_STOP 0x19004051
#define NA_SE_OB_MAGMA_WAVE 0x11002052
#define NA_SE_EN_OUT_PROMINENCE 0x19035053
#define NA_SE_EN_OUT_MAGMA 0x19036053
#define NA_SE_EN_IN_PROMINENCE 0x19035054
#define NA_SE_EN_IN_MAGMA 0x19036054
#define NA_SE_OB_SMOKE 0x11000055
#define NA_SE_OB_ROCK_CRASH 0x19032056
#define NA_SE_OB_ROCK_EYE_OPEN 0x19030057
#define NA_SE_OB_SHIP_FALLDOWN 0x19033058
#define NA_SE_EN_VEBOSS_BROKEN 0x19030059
#define NA_SE_OB_ARM_SWING 0x1903005A
#define NA_SE_OB_POLE_MOVE 0x1903205B
#define NA_SE_OB_POLE_BOUND 0x1903205C
#define NA_SE_OB_HEAVY_SWITCH 0x1940405D
#define NA_SE_OB_CONNECT_CUT 0x1940205E
#define NA_SE_OB_MA_SWITCH_ON 0x1903205F
#define NA_SE_OB_MA_SWITCH_GRN 0x19020060
#define NA_SE_OB_MA_SWITCH_RED 0x19020061
#define NA_SE_OB_POST_UP 0x19001062
#define NA_SE_OB_SIDE_GATE_CLOSE 0x11001063
#define NA_SE_OB_SPEAR_STICK 0x19032064
#define NA_SE_RAILWAY_BOUND 0x19000065
#define NA_SE_EN_MABOSS_HATCH 0x19034066
#define NA_SE_EN_MABOSS_CHARGE0 0x19022067
#define NA_SE_EN_MABOSS_SHOT0 0x19023068
#define NA_SE_EN_MABOSS_PLATECHARGE 0x19022069
#define NA_SE_VO_ANDROSS_PUNCH 0x1940306A
#define NA_SE_VO_ANDROSS_SLAP 0x1940306B
#define NA_SE_VO_ANDROSS_WHAND 0x1940306C
#define NA_SE_VO_ANDROSS_CHOKE 0x1940306D
#define NA_SE_VO_ANDROSS_LAUGH 0x1940306E
#define NA_SE_VO_ANDROSS_GROAN 0x1940306F
#define NA_SE_VO_ANDROSS_DEATH 0x19403070
#define NA_SE_OB_ROUTE_EXPLOSION0 0x11403071
#define NA_SE_OB_ROUTEGATE_OPEN_Q 0x19038072
#define NA_SE_EN_ANDROSS_ROBOT 0x11030073
#define NA_SE_EN_ANDROSS_BRAIN 0x11034074
#define NA_SE_EN_ANDROSS_EYE 0x11032075
#define NA_SE_OB_ROUTE_EXPLOSION1 0x11403076
#define NA_SE_OB_FISH_AWAY 0x19400077
#define NA_SE_OB_AQ_PILLAR_BROKE 0x19021078
#define NA_SE_WARP_OUT 0x11407079
#define NA_SE_ARWING_HATCH 0x1950107A
#define NA_SE_OB_POINT_SWITCH 0x1940807B
#define NA_SE_VO_ANDROSS_EXCITE 0x1940307C
#define NA_SE_OB_PILLAR_ROLL 0x1903407D
#define NA_SE_OB_ROUTEGATE_CLOSE_Q 0x1903807E
#define NA_SE_OB_ROUTEGATE_OPEN_S 0x1903807F
#define NA_SE_OB_ROUTEGATE_CLOSE_S 0x19038080 // events that play this are unused
#define NA_SE_OB_LIFT 0x11032081
#define NA_SE_OB_PLATE_ROLL 0x19031082
#define NA_SE_STARFOX_SEAL 0x19031083
#define NA_SE_EXPLOSION_DEMO6 0x11020084
#define NA_SE_EXPLOSION_S 0x29000000
#define NA_SE_BIG_EXPLOSION 0x29000001 // Unreferenced.
#define NA_SE_EN_SHOT_0 0x29002002
#define NA_SE_EN_DAMAGE_M 0x29024003
#define NA_SE_OB_DAMAGE_M 0x29034003
#define NA_SE_EN_BREATH 0x31000004 // Unreferenced.
#define NA_SE_EN_WOLF_ENGINE 0x31004005
#define NA_SE_EN_WOLF_ENGINE2 0x31004006
#define NA_SE_EN_REFLECT 0x29121007
#define NA_SE_EN_EXPLOSION_S 0x2903A008
#define NA_SE_EN_EXPLOSION_M 0x2903B009
#define NA_SE_EN_EXPLOSION_L 0x2940C00A
#define NA_SE_EN_CRASH_DOWN 0x2903700B
#define NA_SE_ARWING_ENGINE_FG 0x3100000C
#define NA_SE_ARWING_SHOT_F 0x2900000D
#define NA_SE_EN_DAMAGE_S 0x2903300E
#define NA_SE_EN_DAMAGE_L 0x2900300F
#define NA_SE_EN_KNOCK_DOWN 0x2943500F
#define NA_SE_EN_S_FIGHTER_ENGINE 0x31000010 // Unreferenced.
#define NA_SE_EN_ENGINE_01 0x31000011
#define NA_SE_EN_MISSILE_ENGINE 0x31000012
#define NA_SE_EN_LONG_BEAM 0x31000013
#define NA_SE_EN_ALIEN_FLY 0x31000014
#define NA_SE_EN_SPACE_SHIP 0x31000015
#define NA_SE_EN_TANK_RB_ENGINE 0x31000016
#define NA_SE_EN_TANK_ENGINE 0x31000017
#define NA_SE_A_CARRIER_ENGINE 0x31038018
#define NA_SE_EN_HEAVY_WALK 0x29022019
#define NA_SE_EN_HATCH 0x2940201A
#define NA_SE_EN_MISSILE_SHOT 0x2903101B
#define NA_SE_EN_BARREL_SHOT 0x2903201B
#define NA_SE_EN_THROW 0x2902401C
#define NA_SE_EN_MS_PUNCH 0x2903401C
#define NA_SE_EN_FALLING_DOWN 0x2900201D
#define NA_SE_EN_LASER_BEAM 0x3100001E
#define NA_SE_EN_HEAVY_WALK1 0x2902201F
#define NA_SE_EN_HEAVY_JUMP 0x29023020
#define NA_SE_EN_HEAVY_BOUND 0x29034021
#define NA_SE_OB_HEAVY_BOUND 0x2903A021
#define NA_SE_EN_COMBINE 0x29433022
#define NA_SE_EN_MOTOR_ROLL 0x29400023
#define NA_SE_EN_MOTOR_STOP 0x29034024
#define NA_SE_EN_UNIT_COMBINE 0x29402024
#define NA_SE_EN_ENERGY_BEAM 0x31000025
#define NA_SE_EN_ZOBOSS_BEAM 0x31034025
#define NA_SE_EN_BOSS_EXPLOSION 0x2902F026
#define NA_SE_EN_STAR_EXPLOSION 0x2940F026
#define NA_SE_EN_PARTS_BROKEN 0x2940C027
#define NA_SE_EN_THROW_S 0x29000028
#define NA_SE_EN_HEAVY_WALK2 0x29406029
#define NA_SE_EN_APPEAR_SAND 0x2900502A
#define NA_SE_EN_TIBOSS_AT_CRY 0x2940702B
#define NA_SE_EN_TIBOSS_DM_CRY 0x2940802C
#define NA_SE_EN_TIBOSS_DW_CRY 0x2940902D
#define NA_SE_EXPLOSION_DEMO 0x3140402E
#define NA_SE_EXPLOSION_DEMO5 0x3143402E
#define NA_SE_EN_BOSS_BEAM0 0x3143102F
#define NA_SE_EN_BOSS_CHARGE 0x39435830
#define NA_SE_OB_SAND_BOUND_M 0x29003031
#define NA_SE_EN_BOSS_ATTACK 0x29403031
#define NA_SE_OB_SPEAR_PILLAR 0x29503032
#define NA_SE_EN_WT_EXPLOSION_S 0x29038033
#define NA_SE_EN_WT_EXPLOSION_M 0x29000034 // Unreferenced.
#define NA_SE_EN_WT_EXPLOSION_L 0x29000035 // Unreferenced.
#define NA_SE_EN_BIRD_DOWN 0x29018036
#define NA_SE_EN_BIRD_DAMAGE 0x29033037
#define NA_SE_EN_SPIDER_MOVE 0x21000038 // Unreferenced.
#define NA_SE_EN_SHIP_ENGINE_S 0x31012039
#define NA_SE_EN_SHIP_ENGINE_L 0x3100203A
#define NA_SE_EN_S_BALL_SHOT 0x2903203B
#define NA_SE_EN_SINK_PARTS 0x2940983C
#define NA_SE_EN_M_BALL_SHOT 0x2900403D
#define NA_SE_EN_PULL_CHAIN1 0x3100503E
#define NA_SE_EN_HEART_OPEN 0x2900803F
#define NA_SE_ARWING_ENGINE_FS 0x31000040
#define NA_SE_EN_SNAKE_DAMAGE 0x29034041
#define NA_SE_EN_KANI_DOWN 0x29000042 // Unreferenced.
#define NA_SE_EN_KANI_MOTOR 0x31030043
#define NA_SE_EN_DISAPPEAR_SAND 0x29000044 // Unreferenced.
#define NA_SE_EN_SANADA_DAMAGE 0x29034045
#define NA_SE_EN_SANADA_DOWN 0x2902A046
#define NA_SE_EN_SANADA_SWIM 0x31000047
#define NA_SE_EN_SANADA_APPEAR 0x29022048
#define NA_SE_EN_SEA_EXPLOSION_S 0x29018049
#define NA_SE_EN_SEA_EXPLOSION_L 0x2900004A // Unreferenced.
#define NA_SE_EN_P_BALL_SHOT 0x2903404B
#define NA_SE_EN_WT_DAMAGE_S 0x2903604C
#define NA_SE_EN_EYEFILM_DAMAGE 0x2940604C
#define NA_SE_EN_SHELL_BEAT 0x3140904D
#define NA_SE_EN_SHELL_DAMAGE 0x2940804E
#define NA_SE_EN_SHELL_DOWN 0x2940A04F
#define NA_SE_EN_KAIBASHIRA_DAMAGE 0x29036050
#define NA_SE_EN_EYEFILM_REVIVAL 0x29409051
#define NA_SE_EN_P_GUN_APPEAR 0x29400052
#define NA_SE_EN_P_GUN_DISAPPEAR 0x29000053 // Unreferenced.
#define NA_SE_EN_SHELL_CLOSE 0x29408054
#define NA_SE_EN_SHELL_FILLOPEN 0x29408055
#define NA_SE_EN_S_BEAM_CHARGE 0x31016056
#define NA_SE_EN_S_BEAM_SHOT 0x31037057
#define NA_SE_EN_S_BEAM_END 0x29038058
#define NA_SE_GREATFOX_BURNER 0x31024059
#define NA_SE_EN_BURNER_L 0x3102505A
#define NA_SE_EN_GRN_BEAM_CHARGE 0x3103605B
#define NA_SE_EN_GRN_BEAM_SHOT 0x3102705C
#define NA_SE_EN_MEBOSS_SHIELD 0x3102405D
#define NA_SE_EN_CATCH 0x2902405E
#define NA_SE_EN_PASS 0x2903305F
#define NA_SE_EN_MS_EXPLOSION_S 0x2903A060
#define NA_SE_EN_SZMIS_ENGINE 0x31032061
#define NA_SE_EN_PUNCH_ENGINE 0x3103A061
#define NA_SE_EN_BARRIER_REFLECT 0x29001062
#define NA_SE_EN_ANDROSS_EXPLOSION 0x31009063
#define NA_SE_EN_SPARK_DAMAGE_M 0x29033064
#define NA_SE_EN_VEBOSS_DAMAGE 0x31034064
#define NA_SE_EN_ARM_SWING 0x29034065
#define NA_SE_EN_COVER_OPEN 0x31404066
#define NA_SE_EN_COVER_CLOSE 0x31404067
#define NA_SE_EN_COVER_MOVE_STOP 0x39404068
#define NA_SE_EN_ENERGY_BALL 0x31008069
#define NA_SE_EN_UNIT_GATHERING 0x2900306A
#define NA_SE_EN_MS_SHOT_S 0x2900306B
#define NA_SE_EN_MS_DASH 0x2902306C
#define NA_SE_EN_MS_KICK 0x2902306D
#define NA_SE_EN_MS_SHOT_L 0x2901306E
#define NA_SE_EN_MS_SHIELD_BROKEN 0x2903A06F
#define NA_SE_EN_MS_EXPLOSION_L 0x29000070 // Unreferenced.
#define NA_SE_OB_SOROCK_APPEAR 0x29000071
#define NA_SE_OB_SOROCK_DISAPPEAR 0x29000072
#define NA_SE_EN_SOBOSS_CRY 0x29432073
#define NA_SE_EN_SOBOSS_DAMAGE 0x29433074
#define NA_SE_EN_SOBOSS_BROKEN 0x29434075
#define NA_SE_EN_SOBOSS_DOWN 0x39439076
#define NA_SE_EN_SOBOSS_SWING 0x29432077
#define NA_SE_EN_SOBOSS_BREATH 0x31033078
#define NA_SE_EN_SOBOSS_ROLL 0x39033079
#define NA_SE_EN_ANGLER_DAMAGE 0x2900007A // Unreferenced.
#define NA_SE_EN_ANGLER_DOWN 0x2900007B // Unreferenced.
#define NA_SE_BANK2_UNK_7C 0x2100007C // Unreferenced. Sounds like many small explosions
#define NA_SE_ROCK_REFLECT 0x2902107D
#define NA_SE_OB_MAGMA_BUBBLE 0x3140807E
#define NA_SE_BANK2_UNK_7F 0x2900007F // Unreferenced. Sounds like an impact
#define NA_SE_OB_VEBOSS_WALK 0x29032080
#define NA_SE_OB_VEBOSS_JUMP 0x29033081
#define NA_SE_OB_VEBOSS_LAND 0x29034082
#define NA_SE_OB_VEBOSS_ATTACK 0x31030083
#define NA_SE_OB_VEBOSS_BOUND 0x29405084
#define NA_SE_EN_FREIGHT_TRAIN 0x31078085
#define NA_SE_EN_MABOSS_REFLECT 0x29022086
#define NA_SE_EN_ANDROSS_BREATH 0x31022087
#define NA_SE_EN_ANDROSS_BITE0 0x29022088
#define NA_SE_EN_ANDROSS_BITE1 0x29022089
#define NA_SE_EN_ANDROSS_VOMIT 0x3140208A
#define NA_SE_EN_ANDROSS_SPARK 0x3103108B
#define NA_SE_EN_WT_THROW 0x2900308C
#define NA_SE_EN_WT_SPARK_CHARGE 0x2900208D
#define NA_SE_EN_WT_SPARK_BEAM 0x3100208E
#define NA_SE_EN_AQ_ZAKO_DAMAGE 0x2903408F
#define NA_SE_EN_AQ_ZAKO_DOWN 0x29038090
#define NA_SE_EN_WARP_IN 0x39408091
#define NA_SE_EN_WARP_OUT 0x39408092
#define NA_SE_EN_A6BOSS_CHARGE 0x39033093
#define NA_SE_EN_A6BOSS_BEAM 0x31405094
#define NA_SE_EN_TRAIN_BREAK 0x31408095
#define NA_SE_EN_ANDROSS_WARP 0x2940B096
#define NA_SE_EN_ANDROSS_CATCH 0x31408097
#define NA_SE_EN_KANI_STOP 0x29030098
#define NA_SE_EN_MABOSS_RAGE 0x29036099
#define NA_SE_EN_DOWN_IMPACT 0x2940D09A
#define NA_SE_EN_MARBLE_BEAM 0x3103109B
#define NA_SE_PAUSE_ON 0x4900F000
#define NA_SE_PAUSE_OFF 0x4900F001 // Unreferenced. Seems to be identical to NA_SE_PAUSE_ON
#define NA_SE_CURSOR 0x49000002
#define NA_SE_DECIDE 0x49000003
#define NA_SE_TWIN_LASER_GET 0x49002004
#define NA_SE_BOMB_GET 0x49002005 // Collect bomb. Seems to be identical to NA_SE_BOMB_GUAGE_UP
#define NA_SE_BOMB_GAUGE_UP 0x49002006 // Collect bomb. Seems to be identical to NA_SE_BOMB_GET
#define NA_SE_COUNT_UP 0x49004007
#define NA_SE_READY 0x49000008
#define NA_SE_GO 0x49000009
#define NA_SE_ERROR 0x4900100A
#define NA_SE_DIR_WARNING 0x4100000B // Unreferenced.
#define NA_SE_ITEM_APPEAR 0x4900000C
#define NA_SE_SHIELD_RING_M 0x4900200D
#define NA_SE_SHIELD_RING 0x4900200E
#define NA_SE_CHECKPOINT 0x4900400F
#define NA_SE_SHIELD_WARNING0 0x49008010 // Low health hit alarm
#define NA_SE_SHIELD_WARNING1 0x49008011 // Critical health hit alarm
#define NA_SE_TEAM_SHIELD_UP 0x41007012
#define NA_SE_GOLD_RING 0x49003013
#define NA_SE_DEMO_SIREN 0x49000014
#define NA_SE_SHIELD_UPGRADE 0x49008015
#define NA_SE_GOOD_LUCK 0x49002016
#define NA_SE_MESSAGE_MOVE 0x49000017 // Used for text in training mode
#define NA_SE_COMMU_REQUEST 0x49002018 // C> call alert
#define NA_SE_MAP_WINDOW_OPEN 0x49000019 // Also reticles on
#define NA_SE_MAP_WINDOW_CLOSE 0x4900101A // Also reticles off
#define NA_SE_MAR_LOCKON 0x4900001B
#define NA_SE_MISSILE_ALARM 0x4900001C
#define NA_SE_CANCEL 0x4900101D
#define NA_SE_COMPUTER_NOISE 0x4100001E // Used in mission briefing
#define NA_SE_MAP_MOVE_STOP 0x4900001F
#define NA_SE_ARWING_DECIDE 0x49000020 // Used in main menu
#define NA_SE_ARWING_CANCEL 0x49000021 // Used in main menu
#define NA_SE_ARWING_CURSOR 0x49000022 // Used in main menu
#define NA_SE_OVERHEAT_ALARM 0x4100C023
#define NA_SE_ONE_UP 0x4900C024
#define NA_SE_RING_PASS 0x49008025 // Also used for Corneria mech boss secret 1UP
#define NA_SE_SHIELD_BUZZER 0x49001026
#define NA_SE_LOCK_ON 0x49008027
#define NA_SE_BOSS_GAUGE_OPEN 0x4900C028
#define NA_SE_BANK4_UNK_1 0x40000029 // Unreferenced. Sounds like an item collect jingle
#define NA_SE_COUNTDOWN 0x4900C02A
#define NA_SE_VIEW_SITCHW_ON 0x4000002B // Unreferenced. Related to gFovYMode?
#define NA_SE_VIEW_MOVE_IN 0x4900002C
#define NA_SE_VIEW_MOVE_OUT 0x4900002D
#define NA_SE_SEARCHLIGHT_MISS 0x4900402E
#define NA_SE_RING_MISS 0x4900402F
#define NA_SE_GET_EMBLEM 0x49008030
#define NA_SE_MISSION_ACCOMPLISHED 0x49008031
#define NA_SE_VO_PEPPER_CONSENT 0x49000032 // This is ONE steep bill, but it's worth it.
#define NA_SE_VO_PEPPER_SURPRISE 0x49000033 // WHAT?!
#define NA_SE_MISSION_COMPLETE 0x49008034
#define NA_SE_BANL4_UNK_2 0x40000035 // Unreferenced. Hard to make out what it is
#define NA_SE_TIME_OVER 0x4900D036
#endif