summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: efb1734)
raw | patch | inline | side by side (parent: efb1734)
author | DeaDDooMER <deaddoomer@deadsoftware.ru> | |
Fri, 24 Apr 2020 08:44:48 +0000 (12:44 +0400) | ||
committer | DeaDDooMER <deaddoomer@deadsoftware.ru> | |
Fri, 24 Apr 2020 08:44:48 +0000 (12:44 +0400) |
12 files changed:
src/config.c | patch | blob | history | |
src/game.c | patch | blob | history | |
src/map.c | patch | blob | history | |
src/menu.c | patch | blob | history | |
src/music.h | patch | blob | history | |
src/openal/sound.c | patch | blob | history | |
src/save.c | patch | blob | history | |
src/sdl/main.c | patch | blob | history | |
src/sdl2/main.c | patch | blob | history | |
src/sdlmixer/sound.c | patch | blob | history | |
src/sound.h | patch | blob | history | |
src/stubsnd/sound.c | patch | blob | history |
diff --git a/src/config.c b/src/config.c
index 80c94bf3c85613e268342fc1eba88e42075ab582..1980bc61ec2986f13e9d82bfe4100a47abecfa9e 100644 (file)
--- a/src/config.c
+++ b/src/config.c
const cfg_t *CFG_find_entry (const char *key, const cfg_t *cfg) {
assert(key != NULL);
- assert(cfg != NULL);
- int i = 0;
- while (cfg[i].cfg && strcasecmp(cfg[i].cfg, key) != 0) {
- i++;
+ if (cfg != NULL) {
+ int i = 0;
+ while (cfg[i].cfg && strcasecmp(cfg[i].cfg, key) != 0) {
+ i++;
+ }
+ return cfg[i].cfg ? &cfg[i] : NULL;
+ } else {
+ return NULL;
}
- return cfg[i].cfg ? &cfg[i] : NULL;
}
int CFG_update_key (const char *key, const char *value, const cfg_t *cfg) {
+ assert(key != NULL);
+ assert(value != NULL);
const cfg_t *entry = CFG_find_entry(key, cfg);
if (entry != NULL) {
void *p = entry->p;
case Y_KEY: *(int*)p = I_string_to_key(value); break;
default: assert(0); // unknown type -> something broken
}
+ //logo("CFG_update_key: [%s] = [%s]\n", key, value);
return 1;
} else {
return 0;
@@ -244,9 +250,11 @@ int CFG_update_config (const char *old, const char *new, int n, const cfg_t **cf
CFG_close_iterator();
}
for (j = 0; j < n; j++) {
- i = 0;
- while (CFG_write_entry(nf, &cfg[j][i])) {
- i++;
+ if (cfg[j] != NULL) {
+ i = 0;
+ while (CFG_write_entry(nf, &cfg[j][i])) {
+ i++;
+ }
}
}
fclose(nf);
diff --git a/src/game.c b/src/game.c
index 85108333d617a5508dba067bebb48510e2ad34a5..e952a6c319a042ab3bd5d5bc39ba38296da26e4c 100644 (file)
--- a/src/game.c
+++ b/src/game.c
}
void load_game (int n) {
- F_freemus();
+ MUS_free();
W_init();
F_loadgame(n);
set_trans(GS_GAME);
BM_mark(&pl1.o,BM_PLR1);
if(_2pl) BM_mark(&pl2.o,BM_PLR2);
MN_mark();
- S_startmusic(music_time);
+ //MUS_start(music_time);
+ MUS_start(0);
}
void G_start (void) {
char s[8];
-
- F_freemus();
+ MUS_free();
sprintf(s,"MAP%02u",(word)g_map);
F_loadmap(s);
set_trans(GS_GAME);
BM_mark(&pl1.o,BM_PLR1);
if(_2pl) BM_mark(&pl2.o,BM_PLR2);
MN_mark();
- S_startmusic(music_time);
+ //MUS_start(music_time);
+ MUS_start(0);
}
#define GGAS_TOTAL (MN__LAST-MN_DEMON+16+10)
G_start();
} else {
g_st = GS_BVIDEO;
- F_freemus();
+ MUS_free();
}
}
#endif
if(g_exit==1) {
if(G_end_video()) {
- F_freemus();
+ MUS_free();
g_st=GS_EVIDEO;
return;
}
case 31: case 32: g_map=16;set_trans(GS_INTER);break;
default: ++g_map;set_trans(GS_INTER);break;
}
- F_freemus();
- if(g_st==GS_INTER) {
- F_loadmus("INTERMUS");
- }else {F_loadmus("\x8a\x8e\x8d\x85\x96\x0");if(mus_vol>0) {S_volumemusic(128);} }
- S_startmusic(0);
+ MUS_free();
+ if (g_st == GS_INTER) {
+ MUS_load("INTERMUS");
+ } else {
+ MUS_load("\x8a\x8e\x8d\x85\x96\x0");
+ MUS_volume(128);
+ }
+ MUS_start(0);
}else if(g_exit==2) {
switch(g_map) {
case 31: g_map=32;set_trans(GS_INTER);break;
case 32: g_map=16;set_trans(GS_INTER);break;
default: g_map=31;set_trans(GS_INTER);break;
}
- F_freemus();
- F_loadmus("INTERMUS");
- S_startmusic(0);
+ MUS_free();
+ MUS_load("INTERMUS");
+ MUS_start(0);
}
#ifdef DEMO
diff --git a/src/map.c b/src/map.c
index dfc7b7071c0a9744264c2fef70438415ae74bcf9..7071dd4fe5fd0dcc6583e7a6f89b4a7afc6a8a76 100644 (file)
--- a/src/map.c
+++ b/src/map.c
switch (blk.t) {
case MB_MUSIC:
myfread(g_music, 8, 1, h);
- if (music_random) {
- F_randmus(g_music);
- }
- F_loadmus(g_music);
+ //if (music_random) {
+ // F_randmus(g_music);
+ //}
+ MUS_load(g_music);
return 1;
}
return 0;
diff --git a/src/menu.c b/src/menu.c
index 639fed9cfddeed963cc9862a5316f4d59c1ca989..7286a45375a11e4a271996357ad3b9150b93f9d6 100644 (file)
--- a/src/menu.c
+++ b/src/menu.c
NULL, &save_game_menu_handler
};
-static int sound_menu_handler (menu_msg_t *msg, const menu_t *m, void *data, int i) {
- static int cur;
- enum { VOLUME, __NUM__ };
- static const simple_menu_t sm = {
- GM_BIG, "Sound", NULL,
- {
- { "Volume", NULL },
- }
- };
- if (i == VOLUME) {
- switch (msg->type) {
- case GM_GETENTRY: return GM_init_int0(msg, GM_SCROLLER, 0, 0, 0);
- case GM_GETINT: return GM_init_int(msg, snd_vol, 0, 128, 8);
- case GM_SETINT: S_volume(msg->integer.i); return 1;
- }
- }
- return simple_menu_handler(msg, i, __NUM__, &sm, &cur);
-}
-
-static const menu_t sound_menu = {
- NULL, &sound_menu_handler
-};
-
-static int music_menu_handler (menu_msg_t *msg, const menu_t *m, void *data, int i) {
- static int cur;
- enum { VOLUME, MUSIC, __NUM__ };
- static const simple_menu_t sm = {
- GM_BIG, "Music", NULL,
- {
- { "Volume", NULL },
- { "Music: ", NULL },
- }
- };
- if (i == VOLUME) {
- switch (msg->type) {
- case GM_GETENTRY: return GM_init_int0(msg, GM_SCROLLER, 0, 0, 0);
- case GM_GETINT: return GM_init_int(msg, mus_vol, 0, 128, 8);
- case GM_SETINT: S_volumemusic(msg->integer.i); return 1;
- }
- } else if (i == MUSIC) {
- switch (msg->type) {
- case GM_GETSTR: return GM_init_str(msg, g_music, strlen(g_music));
- case GM_SELECT:
- F_freemus();
- F_nextmus(g_music);
- F_loadmus(g_music);
- S_startmusic(music_time * 2); // ???
- return 1;
- }
- }
- return simple_menu_handler(msg, i, __NUM__, &sm, &cur);
-}
-
-static const menu_t music_menu = {
- NULL, &music_menu_handler
-};
-
static int options_menu_handler (menu_msg_t *msg, const menu_t *m, void *data, int i) {
static int cur;
+ const menu_t *mm;
enum { VIDEO, SOUND, MUSIC, __NUM__ };
static const simple_menu_t sm = {
GM_BIG, "Options", NULL,
{
{ "Video", NULL },
- { "Sound", &sound_menu },
- { "Music", &music_menu },
+ { "Sound", NULL },
+ { "Music", NULL },
}
};
if (msg->type == GM_SELECT) {
- if (i == VIDEO) {
- const menu_t *mm = R_menu();
- return mm ? GM_push(mm) : 1;
+ switch (i) {
+ case VIDEO: mm = R_menu(); break;
+ case SOUND: mm = S_menu(); break;
+ case MUSIC: mm = MUS_menu(); break;
+ default: mm = NULL;
+ }
+ if (mm != NULL) {
+ return GM_push(mm);
}
}
return simple_menu_handler(msg, i, __NUM__, &sm, &cur);
} else if (msg->type == GM_SELECT) {
switch (i) {
case YES:
- F_freemus();
+ MUS_free();
GM_stop();
Z_sound(S_get(qsnd[myrand(QSND_NUM)]), 255);
S_wait();
msnd4 = Z_getsnd("SWTCHX");
msnd5 = Z_getsnd("SUDI");
msnd6 = Z_getsnd("TUDI");
- F_loadmus("MENU");
- S_startmusic(0);
+ MUS_load("MENU");
+ MUS_start(0);
}
diff --git a/src/music.h b/src/music.h
index ab1d3e78868fae62e9a6b62f7cc08fa4912577e3..7681d7f6dd4d9ead9ceba77f00ebeb3f4208dba1 100644 (file)
--- a/src/music.h
+++ b/src/music.h
#ifndef MUSIC_H_INCLUDED
#define MUSIC_H_INCLUDED
-extern short mus_vol;
-extern char music_random;
-extern int music_time;
-extern int music_fade;
+#include "menu.h"
+#include "system.h"
-void S_initmusic (void);
-void S_donemusic (void);
-void S_startmusic (int time);
-void S_stopmusic (void);
-void S_volumemusic (int v);
-void F_loadmus (char n[8]);
-void F_freemus (void);
-void S_updatemusic (void);
+const cfg_t *MUS_args (void);
+const cfg_t *MUS_conf (void);
+const menu_t *MUS_menu (void);
+
+void MUS_init (void);
+void MUS_done (void);
+void MUS_start (int time);
+void MUS_stop (void);
+void MUS_volume (int v);
+void MUS_load (char n[8]);
+void MUS_free (void);
+void MUS_update (void);
#endif /* MUSIC_H_INCLUDED */
diff --git a/src/openal/sound.c b/src/openal/sound.c
index 73d36a42968a46e87f3548c900257a0dd84635a8..ef9afdab2b09c6d8fb26bda6d4f74b09947f55c0 100644 (file)
--- a/src/openal/sound.c
+++ b/src/openal/sound.c
ALuint source;
} openal_channel;
-short snd_vol;
-short mus_vol;
-char music_random;
-int music_time;
-int music_fade;
+static short snd_vol;
static ALCdevice *device;
static ALCcontext *context;
/* Music */
-void S_initmusic (void) {
+const cfg_t *MUS_args (void) {
+ return NULL;
+}
+
+const cfg_t *MUS_conf (void) {
+ return NULL;
+}
+const menu_t *MUS_menu (void) {
+ return NULL;
}
-void S_donemusic (void) {
+void MUS_init (void) {
}
-void S_startmusic (int time) {
+void MUS_done (void) {
}
-void S_stopmusic (void) {
+void MUS_start (int time) {
}
-void S_volumemusic (int v) {
+void MUS_stop (void) {
}
-void F_loadmus (char n[8]) {
+void MUS_volume (int v) {
}
-void F_freemus (void) {
+void MUS_load (char n[8]) {
}
-void S_updatemusic (void) {
+void MUS_free (void) {
+
+}
+
+void MUS_update (void) {
}
/* Sound */
+static int sound_menu_handler (menu_msg_t *msg, const menu_t *m, void *data, int i) {
+ static int cur;
+ enum { VOLUME, __NUM__ };
+ static const simple_menu_t sm = {
+ GM_BIG, "Sound", NULL,
+ {
+ { "Volume", NULL },
+ }
+ };
+ if (i == VOLUME) {
+ switch (msg->type) {
+ case GM_GETENTRY: return GM_init_int0(msg, GM_SCROLLER, 0, 0, 0);
+ case GM_GETINT: return GM_init_int(msg, snd_vol, 0, 128, 8);
+ case GM_SETINT: S_volume(msg->integer.i); return 1;
+ }
+ }
+ return simple_menu_handler(msg, i, __NUM__, &sm, &cur);
+}
+
+const menu_t *S_menu (void) {
+ static const menu_t m = {
+ NULL, &sound_menu_handler
+ };
+ return &m;
+}
+
+const cfg_t *S_args (void) {
+ static const cfg_t args[] = {
+ { "sndvol", &snd_vol, Y_WORD },
+ { NULL, NULL, 0 }
+ };
+ return args;
+}
+
+const cfg_t *S_conf (void) {
+ static const cfg_t conf[] = {
+ { "sound_volume", &snd_vol, Y_WORD },
+ { NULL, NULL, 0 }
+ };
+ return conf;
+}
+
static void convert_this_ext (Uint32 src_format, int src_chan, int src_rate, Uint32 dst_format, int dst_chan, int dst_rate, const void *buf, int len, void **maxbuf, int *maxlen) {
SDL_AudioCVT cvt;
*maxlen = 0;
diff --git a/src/save.c b/src/save.c
index 4ffb554521c490f7e198b70d056bdd48ecdff84f..1e87b4b208144adcf273b8b4f491af73d6219ddf 100644 (file)
--- a/src/save.c
+++ b/src/save.c
}
cheat = myfread8(h);
myfread(g_music, 8, 1, h);
- F_loadmus(g_music);
+ MUS_load(g_music);
}
static void IT_savegame (FILE *h) {
diff --git a/src/sdl/main.c b/src/sdl/main.c
index 1c16dc33307100048c40af58c3a38ee2060b7319..057c82ec2123842550a3ab41bf69df1e14b86aed 100644 (file)
--- a/src/sdl/main.c
+++ b/src/sdl/main.c
{"file", NULL, Y_FILES},
{"cheat", &cheat, Y_SW_ON},
// {"vga", &shot_vga, Y_SW_ON},
- {"sndvol", &snd_vol, Y_WORD},
- {"musvol", &mus_vol, Y_WORD},
+// {"musvol", &mus_vol, Y_WORD},
{"mon", &nomon, Y_SW_OFF},
{"warp", &_warp, Y_BYTE},
// {"config", NULL, cfg_file, Y_STRING},
static const cfg_t cfg[] = {
// {"screenshot", &shot_vga, Y_SW_ON},
- {"sound_volume", &snd_vol, Y_WORD},
- {"music_volume", &mus_vol, Y_WORD},
- {"music_random", &music_random, Y_SW_ON},
- {"music_time", &music_time, Y_DWORD},
- {"music_fade", &music_fade, Y_DWORD},
+// {"music_volume", &mus_vol, Y_WORD},
+// {"music_random", &music_random, Y_SW_ON},
+// {"music_time", &music_time, Y_DWORD},
+// {"music_fade", &music_fade, Y_DWORD},
{"pl1_left", &pl1.kl, Y_KEY},
{"pl1_right",&pl1.kr, Y_KEY},
{"pl1_up", &pl1.ku, Y_KEY},
};
static void CFG_args (int argc, char **argv) {
- const cfg_t *list[] = { arg, R_args() };
- ARG_parse(argc, argv, 2, list);
+ const cfg_t *list[] = { arg, R_args(), S_args(), MUS_args() };
+ ARG_parse(argc, argv, 4, list);
}
static void CFG_load (void) {
- const cfg_t *list[] = { cfg, R_conf() };
- CFG_read_config("default.cfg", 2, list);
- CFG_read_config("doom2d.cfg", 2, list);
+ const cfg_t *list[] = { cfg, R_conf(), S_conf(), MUS_conf() };
+ CFG_read_config("default.cfg", 4, list);
+ CFG_read_config("doom2d.cfg", 4, list);
}
static void CFG_save (void) {
- const cfg_t *list[] = { cfg, R_conf() };
- CFG_update_config("doom2d.cfg", "doom2d.cfg", 2, list, "generated by doom2d, do not modify");
+ const cfg_t *list[] = { cfg, R_conf(), S_conf(), MUS_conf() };
+ CFG_update_config("doom2d.cfg", "doom2d.cfg", 4, list, "generated by doom2d, do not modify");
}
/* --- error.h --- */
void ERR_fatal (char *s, ...) {
va_list ap;
R_done();
+ MUS_done();
S_done();
- S_donemusic();
M_shutdown();
SDL_Quit();
puts("\nКРИТИЧЕСКАЯ ОШИБКА:");
static void step (void) {
poll_events();
- S_updatemusic();
+ MUS_update();
Uint32 t = SDL_GetTicks();
if (t - ticks > DELAY) {
ticks = t;
M_startup();
F_allocres();
S_init();
- S_initmusic();
+ MUS_init();
R_init();
G_init();
ticks = SDL_GetTicks();
#endif
CFG_save();
R_done();
- S_donemusic();
+ MUS_done();
S_done();
M_shutdown();
SDL_Quit();
diff --git a/src/sdl2/main.c b/src/sdl2/main.c
index f9eb159fe7b7342c1ab28cd2fd9a9a9a5ed783c7..6044bfc7ecad9e6be1359b507714b3e2040a9422 100644 (file)
--- a/src/sdl2/main.c
+++ b/src/sdl2/main.c
{"file", NULL, Y_FILES},
{"cheat", &cheat, Y_SW_ON},
// {"vga", &shot_vga, Y_SW_ON},
- {"sndvol", &snd_vol, Y_WORD},
- {"musvol", &mus_vol, Y_WORD},
+// {"musvol", &mus_vol, Y_WORD},
{"mon", &nomon, Y_SW_OFF},
{"warp", &_warp, Y_BYTE},
// {"config", NULL, cfg_file, Y_STRING},
static const cfg_t cfg[] = {
// {"screenshot", &shot_vga, Y_SW_ON},
- {"sound_volume", &snd_vol, Y_WORD},
- {"music_volume", &mus_vol, Y_WORD},
- {"music_random", &music_random, Y_SW_ON},
- {"music_time", &music_time, Y_DWORD},
- {"music_fade", &music_fade, Y_DWORD},
+// {"music_volume", &mus_vol, Y_WORD},
+// {"music_random", &music_random, Y_SW_ON},
+// {"music_time", &music_time, Y_DWORD},
+// {"music_fade", &music_fade, Y_DWORD},
{"pl1_left", &pl1.kl, Y_KEY},
{"pl1_right",&pl1.kr, Y_KEY},
{"pl1_up", &pl1.ku, Y_KEY},
};
static void CFG_args (int argc, char **argv) {
- const cfg_t *list[] = { arg, R_args() };
- ARG_parse(argc, argv, 2, list);
+ const cfg_t *list[] = { arg, R_args(), S_args(), MUS_args() };
+ ARG_parse(argc, argv, 4, list);
}
static void CFG_load (void) {
- const cfg_t *list[] = { cfg, R_conf() };
- CFG_read_config("default.cfg", 2, list);
- CFG_read_config("doom2d.cfg", 2, list);
+ const cfg_t *list[] = { cfg, R_conf(), S_conf(), MUS_conf() };
+ CFG_read_config("default.cfg", 4, list);
+ CFG_read_config("doom2d.cfg", 4, list);
}
static void CFG_save (void) {
- const cfg_t *list[] = { cfg, R_conf() };
- CFG_update_config("doom2d.cfg", "doom2d.cfg", 2, list, "generated by doom2d, do not modify");
+ const cfg_t *list[] = { cfg, R_conf(), S_conf(), MUS_conf() };
+ CFG_update_config("doom2d.cfg", "doom2d.cfg", 4, list, "generated by doom2d, do not modify");
}
/* --- error.h --- */
void ERR_fatal (char *s, ...) {
va_list ap;
R_done();
+ MUS_done();
S_done();
- S_donemusic();
M_shutdown();
SDL_Quit();
puts("\nКРИТИЧЕСКАЯ ОШИБКА:");
static void step (void) {
poll_events();
- S_updatemusic();
+ MUS_update();
Uint32 t = SDL_GetTicks();
if (t - ticks > DELAY) {
ticks = t;
M_startup();
F_allocres();
S_init();
- S_initmusic();
+ MUS_init();
R_init();
G_init();
ticks = SDL_GetTicks();
#endif
CFG_save();
R_done();
- S_donemusic();
+ MUS_done();
S_done();
M_shutdown();
SDL_Quit();
diff --git a/src/sdlmixer/sound.c b/src/sdlmixer/sound.c
index f8ef47efa7f1f7b41737091c62deb0fdb46860e4..ddacddf2497ff55556609a01a2303242de686649 100644 (file)
--- a/src/sdlmixer/sound.c
+++ b/src/sdlmixer/sound.c
Mix_Chunk *c;
} sdlmixer_snd;
-short snd_vol; // public 0..128
+static short snd_vol;
static int devfreq = MIX_DEFAULT_FREQUENCY;
static Uint32 devformat = AUDIO_S16SYS; // MIX_DEFAULT_FORMAT
/* music */
-short mus_vol;
-char music_random;
-int music_time;
-int music_fade;
+const cfg_t *MUS_args (void) {
+ return NULL;
+}
+
+const cfg_t *MUS_conf (void) {
+ return NULL;
+}
+
+const menu_t *MUS_menu (void) {
+ return NULL;
+}
-void S_initmusic (void) {
+void MUS_init (void) {
}
-void S_donemusic (void) {
+void MUS_done (void) {
}
-void S_startmusic (int time) {
+void MUS_start (int time) {
}
-void S_stopmusic (void) {
+void MUS_stop (void) {
}
-void S_volumemusic (int v) {
+void MUS_volume (int v) {
}
-void F_loadmus (char n[8]) {
+void MUS_load (char n[8]) {
}
-void F_freemus (void) {
+void MUS_free (void) {
}
-void S_updatemusic (void) {
+void MUS_update (void) {
}
/* Sound */
+static int sound_menu_handler (menu_msg_t *msg, const menu_t *m, void *data, int i) {
+ static int cur;
+ enum { VOLUME, __NUM__ };
+ static const simple_menu_t sm = {
+ GM_BIG, "Sound", NULL,
+ {
+ { "Volume", NULL },
+ }
+ };
+ if (i == VOLUME) {
+ switch (msg->type) {
+ case GM_GETENTRY: return GM_init_int0(msg, GM_SCROLLER, 0, 0, 0);
+ case GM_GETINT: return GM_init_int(msg, snd_vol, 0, 128, 8);
+ case GM_SETINT: S_volume(msg->integer.i); return 1;
+ }
+ }
+ return simple_menu_handler(msg, i, __NUM__, &sm, &cur);
+}
+
+const menu_t *S_menu (void) {
+ static const menu_t m = {
+ NULL, &sound_menu_handler
+ };
+ return &m;
+}
+
+const cfg_t *S_args (void) {
+ static const cfg_t args[] = {
+ { "sndvol", &snd_vol, Y_WORD },
+ { NULL, NULL, 0 }
+ };
+ return args;
+}
+
+const cfg_t *S_conf (void) {
+ static const cfg_t conf[] = {
+ { "sound_volume", &snd_vol, Y_WORD },
+ { NULL, NULL, 0 }
+ };
+ return conf;
+}
+
void S_init (void) {
assert(devinit == 0);
logo("S_init: initialize sound\n");
diff --git a/src/sound.h b/src/sound.h
index 8851b8513320a4d6870faeebee0b6b24473edda1..81c7dca486257c37c983a8194bbc68d8710f22de 100644 (file)
--- a/src/sound.h
+++ b/src/sound.h
#ifndef SOUND_H_INCLUDED
#define SOUND_H_INCLUDED
+#include "menu.h"
+#include "system.h"
+
typedef struct {
int tag;
} snd_t;
-// Sound volume 0..128
-extern short snd_vol;
+const cfg_t *S_args (void);
+const cfg_t *S_conf (void);
+const menu_t *S_menu (void);
// Get sound handle for resource <id>
snd_t *S_get (int id);
diff --git a/src/stubsnd/sound.c b/src/stubsnd/sound.c
index 58435f177f03fa4a7bc348a74eeb24a192c3e52a..b47ba0c3473950d7577f650237ccdadcd941d1eb 100644 (file)
--- a/src/stubsnd/sound.c
+++ b/src/stubsnd/sound.c
#include "sound.h"
#include "music.h"
-short snd_vol;
+/* Music */
-short mus_vol;
-char music_random;
-int music_time;
-int music_fade;
+const cfg_t *MUS_args (void) {
+ return NULL;
+}
-/* Music */
+const cfg_t *MUS_conf (void) {
+ return NULL;
+}
+
+const menu_t *MUS_menu (void) {
+ return NULL;
+}
-void S_initmusic (void) {
+void MUS_init (void) {
}
-void S_donemusic (void) {
+void MUS_done (void) {
}
-void S_startmusic (int time) {
+void MUS_start (int time) {
}
-void S_stopmusic (void) {
+void MUS_stop (void) {
}
-void S_volumemusic (int v) {
+void MUS_volume (int v) {
}
-void F_loadmus (char n[8]) {
+void MUS_load (char n[8]) {
}
-void F_freemus (void) {
+void MUS_free (void) {
}
-void S_updatemusic (void) {
+void MUS_update (void) {
}
/* Sound */
+const cfg_t *S_args (void) {
+ return NULL;
+}
+
+const cfg_t *S_conf (void) {
+ return NULL;
+}
+
+const menu_t *S_menu (void) {
+ return NULL;
+}
+
snd_t *S_get (int id) {
return NULL;
}