6 static void update_callback(void);
9 static int initialized;
14 md_dmabufsize = 20000;
15 md_mode = DMODE_STEREO | DMODE_16BITS | DMODE_INTERP;
18 ML_RegisterLoader(&load_m15);
19 ML_RegisterLoader(&load_mod);
20 ML_RegisterLoader(&load_mtm);
21 ML_RegisterLoader(&load_s3m);
22 ML_RegisterLoader(&load_stm);
23 ML_RegisterLoader(&load_ult);
24 ML_RegisterLoader(&load_uni);
25 ML_RegisterLoader(&load_xm);
27 MD_RegisterDriver(&drv_nos);
28 MD_RegisterDriver(&drv_ss);
29 MD_RegisterDriver(&drv_sb);
30 MD_RegisterDriver(&drv_gus);
32 MD_RegisterPlayer(update_callback);
35 printlog("mikmod init failed: %s\n", myerr);
38 printlog("using mikmod driver %s\n", md_driver->Name);
39 printlog(" %d bits, %s, %s mixing at %d Hz\n", md_mode & DMODE_16BITS ? 16 : 8,
40 md_mode & DMODE_STEREO ? "stereo" : "mono",
41 md_mode & DMODE_INTERP ? "interpolated" : "normal",
48 int music_open(const char *fname)
57 if(!(mod = ML_LoadFN((const signed char*)fname))) {
58 printlog("failed to load music: %s: %s\n", fname, myerr);
63 md_numchn = mod->numchn;
64 printlog("opened module %s (%d channels)\n", fname, md_numchn);
68 void music_close(void)
71 printlog("shutting down music playback\n");
88 void music_update(void)
93 static void update_callback(void)