summaryrefslogtreecommitdiff
path: root/src/heretic/sounds.c
diff options
context:
space:
mode:
authorSimon Howard2008-09-17 19:10:54 +0000
committerSimon Howard2008-09-17 19:10:54 +0000
commit47c0b5207ed5bc077f1d9d59f94c12c522f2a0b9 (patch)
tree8907a0b55c3a1cb2998c4a69793279925f420d30 /src/heretic/sounds.c
parent1a9f364f3fe08bc769b66f162edec4f1bdf22345 (diff)
downloadchocolate-doom-47c0b5207ed5bc077f1d9d59f94c12c522f2a0b9.tar.gz
chocolate-doom-47c0b5207ed5bc077f1d9d59f94c12c522f2a0b9.tar.bz2
chocolate-doom-47c0b5207ed5bc077f1d9d59f94c12c522f2a0b9.zip
Split sound code out of Heretic's i_ibm.c into s_sound.c. Rename
soundst.h to s_sound.h to fit. Reformat sounds.c files to declare sounds through macros and harmonise on the common sfxinfo_t. Fix up Heretic sound code to use common sound API. Subversion-branch: /branches/raven-branch Subversion-revision: 1236
Diffstat (limited to 'src/heretic/sounds.c')
-rw-r--r--src/heretic/sounds.c414
1 files changed, 215 insertions, 199 deletions
diff --git a/src/heretic/sounds.c b/src/heretic/sounds.c
index 99dd102c..38c39210 100644
--- a/src/heretic/sounds.c
+++ b/src/heretic/sounds.c
@@ -25,216 +25,232 @@
// sounds.c
#include "doomdef.h"
+#include "i_sound.h"
#include "sounds.h"
// Music info
+#define MUSIC(name) \
+ { name, 0, NULL, NULL }
+
musicinfo_t S_music[] = {
- {"MUS_E1M1", 0}, // 1-1
- {"MUS_E1M2", 0},
- {"MUS_E1M3", 0},
- {"MUS_E1M4", 0},
- {"MUS_E1M5", 0},
- {"MUS_E1M6", 0},
- {"MUS_E1M7", 0},
- {"MUS_E1M8", 0},
- {"MUS_E1M9", 0},
-
- {"MUS_E2M1", 0}, // 2-1
- {"MUS_E2M2", 0},
- {"MUS_E2M3", 0},
- {"MUS_E2M4", 0},
- {"MUS_E1M4", 0},
- {"MUS_E2M6", 0},
- {"MUS_E2M7", 0},
- {"MUS_E2M8", 0},
- {"MUS_E2M9", 0},
-
- {"MUS_E1M1", 0}, // 3-1
- {"MUS_E3M2", 0},
- {"MUS_E3M3", 0},
- {"MUS_E1M6", 0},
- {"MUS_E1M3", 0},
- {"MUS_E1M2", 0},
- {"MUS_E1M5", 0},
- {"MUS_E1M9", 0},
- {"MUS_E2M6", 0},
-
- {"MUS_E1M6", 0}, // 4-1
- {"MUS_E1M2", 0},
- {"MUS_E1M3", 0},
- {"MUS_E1M4", 0},
- {"MUS_E1M5", 0},
- {"MUS_E1M1", 0},
- {"MUS_E1M7", 0},
- {"MUS_E1M8", 0},
- {"MUS_E1M9", 0},
-
- {"MUS_E2M1", 0}, // 5-1
- {"MUS_E2M2", 0},
- {"MUS_E2M3", 0},
- {"MUS_E2M4", 0},
- {"MUS_E1M4", 0},
- {"MUS_E2M6", 0},
- {"MUS_E2M7", 0},
- {"MUS_E2M8", 0},
- {"MUS_E2M9", 0},
-
- {"MUS_E3M2", 0}, // 6-1
- {"MUS_E3M3", 0}, // 6-2
- {"MUS_E1M6", 0}, // 6-3
-
- {"MUS_TITL", 0},
- {"MUS_INTR", 0},
- {"MUS_CPTD", 0}
+ MUSIC("MUS_E1M1"), // 1-1
+ MUSIC("MUS_E1M2"),
+ MUSIC("MUS_E1M3"),
+ MUSIC("MUS_E1M4"),
+ MUSIC("MUS_E1M5"),
+ MUSIC("MUS_E1M6"),
+ MUSIC("MUS_E1M7"),
+ MUSIC("MUS_E1M8"),
+ MUSIC("MUS_E1M9"),
+
+ MUSIC("MUS_E2M1"), // 2-1
+ MUSIC("MUS_E2M2"),
+ MUSIC("MUS_E2M3"),
+ MUSIC("MUS_E2M4"),
+ MUSIC("MUS_E1M4"),
+ MUSIC("MUS_E2M6"),
+ MUSIC("MUS_E2M7"),
+ MUSIC("MUS_E2M8"),
+ MUSIC("MUS_E2M9"),
+
+ MUSIC("MUS_E1M1"), // 3-1
+ MUSIC("MUS_E3M2"),
+ MUSIC("MUS_E3M3"),
+ MUSIC("MUS_E1M6"),
+ MUSIC("MUS_E1M3"),
+ MUSIC("MUS_E1M2"),
+ MUSIC("MUS_E1M5"),
+ MUSIC("MUS_E1M9"),
+ MUSIC("MUS_E2M6"),
+
+ MUSIC("MUS_E1M6"), // 4-1
+ MUSIC("MUS_E1M2"),
+ MUSIC("MUS_E1M3"),
+ MUSIC("MUS_E1M4"),
+ MUSIC("MUS_E1M5"),
+ MUSIC("MUS_E1M1"),
+ MUSIC("MUS_E1M7"),
+ MUSIC("MUS_E1M8"),
+ MUSIC("MUS_E1M9"),
+
+ MUSIC("MUS_E2M1"), // 5-1
+ MUSIC("MUS_E2M2"),
+ MUSIC("MUS_E2M3"),
+ MUSIC("MUS_E2M4"),
+ MUSIC("MUS_E1M4"),
+ MUSIC("MUS_E2M6"),
+ MUSIC("MUS_E2M7"),
+ MUSIC("MUS_E2M8"),
+ MUSIC("MUS_E2M9"),
+
+ MUSIC("MUS_E3M2"), // 6-1
+ MUSIC("MUS_E3M3"), // 6-2
+ MUSIC("MUS_E1M6"), // 6-3
+
+ MUSIC("MUS_TITL"),
+ MUSIC("MUS_INTR"),
+ MUSIC("MUS_CPTD")
};
// Sound info
+ /* Macro for original heretic sfxinfo_t
+#define SOUND(name, priority, numchannels) \
+ { name, NULL, priority, -1, NULL, 0, numchannels }
+#define SOUND_LINK(name, link_id, priority, numchannels) \
+ { name, &S_sfx[link_id], priority, -1, NULL, 0, numchannels }
+ */
+
+#define SOUND(name, priority, numchannels) \
+ { name, priority, NULL, -1, -1, -1, 0, numchannels, NULL }
+#define SOUND_LINK(name, link_id, priority, numchannels) \
+ { name, priority, &S_sfx[link_id], 0, 0, -1, 0, numchannels, NULL }
+
sfxinfo_t S_sfx[] = {
- {{0, 0, 0, 0, 0, 0, 0, 0}, NULL, 0, -1, NULL, 0, 0},
- {"gldhit", NULL, 32, -1, NULL, 0, 2},
- {"gntful", NULL, 32, -1, NULL, 0, -1},
- {"gnthit", NULL, 32, -1, NULL, 0, -1},
- {"gntpow", NULL, 32, -1, NULL, 0, -1},
- {"gntact", NULL, 32, -1, NULL, 0, -1},
- {"gntuse", NULL, 32, -1, NULL, 0, -1},
- {"phosht", NULL, 32, -1, NULL, 0, 2},
- {"phohit", NULL, 32, -1, NULL, 0, -1},
- {"-phopow", &S_sfx[sfx_hedat1], 32, -1, NULL, 0, 1},
- {"lobsht", NULL, 20, -1, NULL, 0, 2},
- {"lobhit", NULL, 20, -1, NULL, 0, 2},
- {"lobpow", NULL, 20, -1, NULL, 0, 2},
- {"hrnsht", NULL, 32, -1, NULL, 0, 2},
- {"hrnhit", NULL, 32, -1, NULL, 0, 2},
- {"hrnpow", NULL, 32, -1, NULL, 0, 2},
- {"ramphit", NULL, 32, -1, NULL, 0, 2},
- {"ramrain", NULL, 10, -1, NULL, 0, 2},
- {"bowsht", NULL, 32, -1, NULL, 0, 2},
- {"stfhit", NULL, 32, -1, NULL, 0, 2},
- {"stfpow", NULL, 32, -1, NULL, 0, 2},
- {"stfcrk", NULL, 32, -1, NULL, 0, 2},
- {"impsit", NULL, 32, -1, NULL, 0, 2},
- {"impat1", NULL, 32, -1, NULL, 0, 2},
- {"impat2", NULL, 32, -1, NULL, 0, 2},
- {"impdth", NULL, 80, -1, NULL, 0, 2},
- {"-impact", &S_sfx[sfx_impsit], 20, -1, NULL, 0, 2},
- {"imppai", NULL, 32, -1, NULL, 0, 2},
- {"mumsit", NULL, 32, -1, NULL, 0, 2},
- {"mumat1", NULL, 32, -1, NULL, 0, 2},
- {"mumat2", NULL, 32, -1, NULL, 0, 2},
- {"mumdth", NULL, 80, -1, NULL, 0, 2},
- {"-mumact", &S_sfx[sfx_mumsit], 20, -1, NULL, 0, 2},
- {"mumpai", NULL, 32, -1, NULL, 0, 2},
- {"mumhed", NULL, 32, -1, NULL, 0, 2},
- {"bstsit", NULL, 32, -1, NULL, 0, 2},
- {"bstatk", NULL, 32, -1, NULL, 0, 2},
- {"bstdth", NULL, 80, -1, NULL, 0, 2},
- {"bstact", NULL, 20, -1, NULL, 0, 2},
- {"bstpai", NULL, 32, -1, NULL, 0, 2},
- {"clksit", NULL, 32, -1, NULL, 0, 2},
- {"clkatk", NULL, 32, -1, NULL, 0, 2},
- {"clkdth", NULL, 80, -1, NULL, 0, 2},
- {"clkact", NULL, 20, -1, NULL, 0, 2},
- {"clkpai", NULL, 32, -1, NULL, 0, 2},
- {"snksit", NULL, 32, -1, NULL, 0, 2},
- {"snkatk", NULL, 32, -1, NULL, 0, 2},
- {"snkdth", NULL, 80, -1, NULL, 0, 2},
- {"snkact", NULL, 20, -1, NULL, 0, 2},
- {"snkpai", NULL, 32, -1, NULL, 0, 2},
- {"kgtsit", NULL, 32, -1, NULL, 0, 2},
- {"kgtatk", NULL, 32, -1, NULL, 0, 2},
- {"kgtat2", NULL, 32, -1, NULL, 0, 2},
- {"kgtdth", NULL, 80, -1, NULL, 0, 2},
- {"-kgtact", &S_sfx[sfx_kgtsit], 20, -1, NULL, 0, 2},
- {"kgtpai", NULL, 32, -1, NULL, 0, 2},
- {"wizsit", NULL, 32, -1, NULL, 0, 2},
- {"wizatk", NULL, 32, -1, NULL, 0, 2},
- {"wizdth", NULL, 80, -1, NULL, 0, 2},
- {"wizact", NULL, 20, -1, NULL, 0, 2},
- {"wizpai", NULL, 32, -1, NULL, 0, 2},
- {"minsit", NULL, 32, -1, NULL, 0, 2},
- {"minat1", NULL, 32, -1, NULL, 0, 2},
- {"minat2", NULL, 32, -1, NULL, 0, 2},
- {"minat3", NULL, 32, -1, NULL, 0, 2},
- {"mindth", NULL, 80, -1, NULL, 0, 2},
- {"minact", NULL, 20, -1, NULL, 0, 2},
- {"minpai", NULL, 32, -1, NULL, 0, 2},
- {"hedsit", NULL, 32, -1, NULL, 0, 2},
- {"hedat1", NULL, 32, -1, NULL, 0, 2},
- {"hedat2", NULL, 32, -1, NULL, 0, 2},
- {"hedat3", NULL, 32, -1, NULL, 0, 2},
- {"heddth", NULL, 80, -1, NULL, 0, 2},
- {"hedact", NULL, 20, -1, NULL, 0, 2},
- {"hedpai", NULL, 32, -1, NULL, 0, 2},
- {"sorzap", NULL, 32, -1, NULL, 0, 2},
- {"sorrise", NULL, 32, -1, NULL, 0, 2},
- {"sorsit", NULL, 200, -1, NULL, 0, 2},
- {"soratk", NULL, 32, -1, NULL, 0, 2},
- {"soract", NULL, 200, -1, NULL, 0, 2},
- {"sorpai", NULL, 200, -1, NULL, 0, 2},
- {"sordsph", NULL, 200, -1, NULL, 0, 2},
- {"sordexp", NULL, 200, -1, NULL, 0, 2},
- {"sordbon", NULL, 200, -1, NULL, 0, 2},
- {"-sbtsit", &S_sfx[sfx_bstsit], 32, -1, NULL, 0, 2},
- {"-sbtatk", &S_sfx[sfx_bstatk], 32, -1, NULL, 0, 2},
- {"sbtdth", NULL, 80, -1, NULL, 0, 2},
- {"sbtact", NULL, 20, -1, NULL, 0, 2},
- {"sbtpai", NULL, 32, -1, NULL, 0, 2},
- {"plroof", NULL, 32, -1, NULL, 0, 2},
- {"plrpai", NULL, 32, -1, NULL, 0, 2},
- {"plrdth", NULL, 80, -1, NULL, 0, 2},
- {"gibdth", NULL, 100, -1, NULL, 0, 2},
- {"plrwdth", NULL, 80, -1, NULL, 0, 2},
- {"plrcdth", NULL, 100, -1, NULL, 0, 2},
- {"itemup", NULL, 32, -1, NULL, 0, 2},
- {"wpnup", NULL, 32, -1, NULL, 0, 2},
- {"telept", NULL, 50, -1, NULL, 0, 2},
- {"doropn", NULL, 40, -1, NULL, 0, 2},
- {"dorcls", NULL, 40, -1, NULL, 0, 2},
- {"dormov", NULL, 40, -1, NULL, 0, 2},
- {"artiup", NULL, 32, -1, NULL, 0, 2},
- {"switch", NULL, 40, -1, NULL, 0, 2},
- {"pstart", NULL, 40, -1, NULL, 0, 2},
- {"pstop", NULL, 40, -1, NULL, 0, 2},
- {"stnmov", NULL, 40, -1, NULL, 0, 2},
- {"chicpai", NULL, 32, -1, NULL, 0, 2},
- {"chicatk", NULL, 32, -1, NULL, 0, 2},
- {"chicdth", NULL, 40, -1, NULL, 0, 2},
- {"chicact", NULL, 32, -1, NULL, 0, 2},
- {"chicpk1", NULL, 32, -1, NULL, 0, 2},
- {"chicpk2", NULL, 32, -1, NULL, 0, 2},
- {"chicpk3", NULL, 32, -1, NULL, 0, 2},
- {"keyup", NULL, 50, -1, NULL, 0, 2},
- {"ripslop", NULL, 16, -1, NULL, 0, 2},
- {"newpod", NULL, 16, -1, NULL, 0, -1},
- {"podexp", NULL, 40, -1, NULL, 0, -1},
- {"bounce", NULL, 16, -1, NULL, 0, 2},
- {"-volsht", &S_sfx[sfx_bstatk], 16, -1, NULL, 0, 2},
- {"-volhit", &S_sfx[sfx_lobhit], 16, -1, NULL, 0, 2},
- {"burn", NULL, 10, -1, NULL, 0, 2},
- {"splash", NULL, 10, -1, NULL, 0, 1},
- {"gloop", NULL, 10, -1, NULL, 0, 2},
- {"respawn", NULL, 10, -1, NULL, 0, 1},
- {"blssht", NULL, 32, -1, NULL, 0, 2},
- {"blshit", NULL, 32, -1, NULL, 0, 2},
- {"chat", NULL, 100, -1, NULL, 0, 1},
- {"artiuse", NULL, 32, -1, NULL, 0, 1},
- {"gfrag", NULL, 100, -1, NULL, 0, 1},
- {"waterfl", NULL, 16, -1, NULL, 0, 2},
+ SOUND("", 0, 0),
+ SOUND("gldhit", 32, 2),
+ SOUND("gntful", 32, -1),
+ SOUND("gnthit", 32, -1),
+ SOUND("gntpow", 32, -1),
+ SOUND("gntact", 32, -1),
+ SOUND("gntuse", 32, -1),
+ SOUND("phosht", 32, 2),
+ SOUND("phohit", 32, -1),
+ SOUND_LINK("-phopow", sfx_hedat1, 32, 1),
+ SOUND("lobsht", 20, 2),
+ SOUND("lobhit", 20, 2),
+ SOUND("lobpow", 20, 2),
+ SOUND("hrnsht", 32, 2),
+ SOUND("hrnhit", 32, 2),
+ SOUND("hrnpow", 32, 2),
+ SOUND("ramphit", 32, 2),
+ SOUND("ramrain", 10, 2),
+ SOUND("bowsht", 32, 2),
+ SOUND("stfhit", 32, 2),
+ SOUND("stfpow", 32, 2),
+ SOUND("stfcrk", 32, 2),
+ SOUND("impsit", 32, 2),
+ SOUND("impat1", 32, 2),
+ SOUND("impat2", 32, 2),
+ SOUND("impdth", 80, 2),
+ SOUND_LINK("-impact", sfx_impsit, 20, 2),
+ SOUND("imppai", 32, 2),
+ SOUND("mumsit", 32, 2),
+ SOUND("mumat1", 32, 2),
+ SOUND("mumat2", 32, 2),
+ SOUND("mumdth", 80, 2),
+ SOUND_LINK("-mumact", sfx_mumsit, 20, 2),
+ SOUND("mumpai", 32, 2),
+ SOUND("mumhed", 32, 2),
+ SOUND("bstsit", 32, 2),
+ SOUND("bstatk", 32, 2),
+ SOUND("bstdth", 80, 2),
+ SOUND("bstact", 20, 2),
+ SOUND("bstpai", 32, 2),
+ SOUND("clksit", 32, 2),
+ SOUND("clkatk", 32, 2),
+ SOUND("clkdth", 80, 2),
+ SOUND("clkact", 20, 2),
+ SOUND("clkpai", 32, 2),
+ SOUND("snksit", 32, 2),
+ SOUND("snkatk", 32, 2),
+ SOUND("snkdth", 80, 2),
+ SOUND("snkact", 20, 2),
+ SOUND("snkpai", 32, 2),
+ SOUND("kgtsit", 32, 2),
+ SOUND("kgtatk", 32, 2),
+ SOUND("kgtat2", 32, 2),
+ SOUND("kgtdth", 80, 2),
+ SOUND_LINK("-kgtact", sfx_kgtsit, 20, 2),
+ SOUND("kgtpai", 32, 2),
+ SOUND("wizsit", 32, 2),
+ SOUND("wizatk", 32, 2),
+ SOUND("wizdth", 80, 2),
+ SOUND("wizact", 20, 2),
+ SOUND("wizpai", 32, 2),
+ SOUND("minsit", 32, 2),
+ SOUND("minat1", 32, 2),
+ SOUND("minat2", 32, 2),
+ SOUND("minat3", 32, 2),
+ SOUND("mindth", 80, 2),
+ SOUND("minact", 20, 2),
+ SOUND("minpai", 32, 2),
+ SOUND("hedsit", 32, 2),
+ SOUND("hedat1", 32, 2),
+ SOUND("hedat2", 32, 2),
+ SOUND("hedat3", 32, 2),
+ SOUND("heddth", 80, 2),
+ SOUND("hedact", 20, 2),
+ SOUND("hedpai", 32, 2),
+ SOUND("sorzap", 32, 2),
+ SOUND("sorrise", 32, 2),
+ SOUND("sorsit", 200, 2),
+ SOUND("soratk", 32, 2),
+ SOUND("soract", 200, 2),
+ SOUND("sorpai", 200, 2),
+ SOUND("sordsph", 200, 2),
+ SOUND("sordexp", 200, 2),
+ SOUND("sordbon", 200, 2),
+ SOUND_LINK("-sbtsit", sfx_bstsit, 32, 2),
+ SOUND_LINK("-sbtatk", sfx_bstatk, 32, 2),
+ SOUND("sbtdth", 80, 2),
+ SOUND("sbtact", 20, 2),
+ SOUND("sbtpai", 32, 2),
+ SOUND("plroof", 32, 2),
+ SOUND("plrpai", 32, 2),
+ SOUND("plrdth", 80, 2),
+ SOUND("gibdth", 100, 2),
+ SOUND("plrwdth", 80, 2),
+ SOUND("plrcdth", 100, 2),
+ SOUND("itemup", 32, 2),
+ SOUND("wpnup", 32, 2),
+ SOUND("telept", 50, 2),
+ SOUND("doropn", 40, 2),
+ SOUND("dorcls", 40, 2),
+ SOUND("dormov", 40, 2),
+ SOUND("artiup", 32, 2),
+ SOUND("switch", 40, 2),
+ SOUND("pstart", 40, 2),
+ SOUND("pstop", 40, 2),
+ SOUND("stnmov", 40, 2),
+ SOUND("chicpai", 32, 2),
+ SOUND("chicatk", 32, 2),
+ SOUND("chicdth", 40, 2),
+ SOUND("chicact", 32, 2),
+ SOUND("chicpk1", 32, 2),
+ SOUND("chicpk2", 32, 2),
+ SOUND("chicpk3", 32, 2),
+ SOUND("keyup", 50, 2),
+ SOUND("ripslop", 16, 2),
+ SOUND("newpod", 16, -1),
+ SOUND("podexp", 40, -1),
+ SOUND("bounce", 16, 2),
+ SOUND_LINK("-volsht", sfx_bstatk, 16, 2),
+ SOUND_LINK("-volhit", sfx_lobhit, 16, 2),
+ SOUND("burn", 10, 2),
+ SOUND("splash", 10, 1),
+ SOUND("gloop", 10, 2),
+ SOUND("respawn", 10, 1),
+ SOUND("blssht", 32, 2),
+ SOUND("blshit", 32, 2),
+ SOUND("chat", 100, 1),
+ SOUND("artiuse", 32, 1),
+ SOUND("gfrag", 100, 1),
+ SOUND("waterfl", 16, 2),
// Monophonic sounds
- {"wind", NULL, 16, -1, NULL, 0, 1},
- {"amb1", NULL, 1, -1, NULL, 0, 1},
- {"amb2", NULL, 1, -1, NULL, 0, 1},
- {"amb3", NULL, 1, -1, NULL, 0, 1},
- {"amb4", NULL, 1, -1, NULL, 0, 1},
- {"amb5", NULL, 1, -1, NULL, 0, 1},
- {"amb6", NULL, 1, -1, NULL, 0, 1},
- {"amb7", NULL, 1, -1, NULL, 0, 1},
- {"amb8", NULL, 1, -1, NULL, 0, 1},
- {"amb9", NULL, 1, -1, NULL, 0, 1},
- {"amb10", NULL, 1, -1, NULL, 0, 1},
- {"amb11", NULL, 1, -1, NULL, 0, 0}
+ SOUND("wind", 16, 1),
+ SOUND("amb1", 1, 1),
+ SOUND("amb2", 1, 1),
+ SOUND("amb3", 1, 1),
+ SOUND("amb4", 1, 1),
+ SOUND("amb5", 1, 1),
+ SOUND("amb6", 1, 1),
+ SOUND("amb7", 1, 1),
+ SOUND("amb8", 1, 1),
+ SOUND("amb9", 1, 1),
+ SOUND("amb10", 1, 1),
+ SOUND("amb11", 1, 0)
};