Diff for /np2/sound/vermouth/midimod.c between versions 1.7 and 1.8

version 1.7, 2005/03/29 06:50:38 version 1.8, 2006/12/10 11:14:31
Line 3 Line 3
 #include        "dosio.h"  #include        "dosio.h"
 #include        "textfile.h"  #include        "textfile.h"
 #include        "midiout.h"  #include        "midiout.h"
   #if defined(SUPPORT_ARC)
   #include        "arc.h"
   #endif
   
   
 #define CFG_MAXAMP              400  #define CFG_MAXAMP              400
Line 36  static const OEMCHAR str_env[] = OEMTEXT Line 39  static const OEMCHAR str_env[] = OEMTEXT
 static const OEMCHAR str_loop[] = OEMTEXT("loop");  static const OEMCHAR str_loop[] = OEMTEXT("loop");
 static const OEMCHAR str_tail[] = OEMTEXT("tail");  static const OEMCHAR str_tail[] = OEMTEXT("tail");
 static const OEMCHAR file_timiditycfg[] = OEMTEXT("timidity.cfg");  static const OEMCHAR file_timiditycfg[] = OEMTEXT("timidity.cfg");
   static const OEMCHAR str_basedir[] = OEMTEXT("${basedir}");
   
   
 static void pathadd(MIDIMOD mod, const OEMCHAR *path) {  static void pathadd(MIDIMOD mod, const OEMCHAR *path) {
Line 49  static void pathadd(MIDIMOD mod, const O Line 53  static void pathadd(MIDIMOD mod, const O
                 // separator change!                  // separator change!
                 file_catname(pl.path, path, NELEMENTS(pl.path));                  file_catname(pl.path, path, NELEMENTS(pl.path));
                 if (path[0]) {                  if (path[0]) {
                         file_setseparator(pl.path, NELEMENTS(pl.path));  #if defined(SUPPORT_ARC)
                           if (milstr_chr(pl.path, '#') == NULL)
   #endif
                                   file_setseparator(pl.path, NELEMENTS(pl.path));
                 }                  }
         }          }
   
Line 71  static void pathaddex(MIDIMOD mod, const Line 78  static void pathaddex(MIDIMOD mod, const
   
         OEMCHAR _path[MAX_PATH];          OEMCHAR _path[MAX_PATH];
   
         if (milstr_memcmp(path, OEMTEXT("${basedir}"))) {          if (milstr_memcmp(path, str_basedir)) {
                 pathadd(mod, path);                  pathadd(mod, path);
         }          }
         else {          else {
Line 339  BRESULT cfgfile_getfile(MIDIMOD mod, con Line 346  BRESULT cfgfile_getfile(MIDIMOD mod, con
         while(p) {          while(p) {
                 file_cpyname(path, p->path, size);                  file_cpyname(path, p->path, size);
                 file_catname(path, filename, size);                  file_catname(path, filename, size);
   #if defined(SUPPORT_ARC)
                   attr = arcex_attr(path);
   #else
                 attr = file_attr(path);                  attr = file_attr(path);
   #endif
                 if (attr != -1) {                  if (attr != -1) {
                         return(SUCCESS);                          return(SUCCESS);
                 }                  }
Line 429  cfl_err: Line 440  cfl_err:
   
 // ----  // ----
   
 MIDIMOD midimod_create(UINT samprate) {  VEXTERN MIDIMOD VEXPORT midimod_create(UINT samprate) {
   
         UINT    size;          UINT    size;
         MIDIMOD ret;          MIDIMOD ret;
Line 472  mmcre_err1: Line 483  mmcre_err1:
         return(NULL);          return(NULL);
 }  }
   
 void midimod_destroy(MIDIMOD hdl) {  VEXTERN void VEXPORT midimod_destroy(MIDIMOD hdl) {
   
         UINT    r;          UINT    r;
         TONECFG bank;          TONECFG bank;
Line 495  void midimod_destroy(MIDIMOD hdl) { Line 506  void midimod_destroy(MIDIMOD hdl) {
         }          }
 }  }
   
 void midimod_loadprogram(MIDIMOD hdl, UINT num) {  VEXTERN void VEXPORT midimod_loadprogram(MIDIMOD hdl, UINT num) {
   
         UINT    bank;          UINT    bank;
   
Line 508  void midimod_loadprogram(MIDIMOD hdl, UI Line 519  void midimod_loadprogram(MIDIMOD hdl, UI
         }          }
 }  }
   
 void midimod_loadrhythm(MIDIMOD hdl, UINT num) {  VEXTERN void VEXPORT midimod_loadrhythm(MIDIMOD hdl, UINT num) {
   
         UINT    bank;          UINT    bank;
   
Line 521  void midimod_loadrhythm(MIDIMOD hdl, UIN Line 532  void midimod_loadrhythm(MIDIMOD hdl, UIN
         }          }
 }  }
   
 void midimod_loadgm(MIDIMOD hdl) {  VEXTERN void VEXPORT midimod_loadgm(MIDIMOD hdl) {
   
         if (hdl) {          if (hdl) {
                 inst_bankload(hdl, 0);                  inst_bankload(hdl, 0);
Line 529  void midimod_loadgm(MIDIMOD hdl) { Line 540  void midimod_loadgm(MIDIMOD hdl) {
         }          }
 }  }
   
 void midimod_loadall(MIDIMOD hdl) {  VEXTERN void VEXPORT midimod_loadall(MIDIMOD hdl) {
   
         UINT    b;          UINT    b;
   
Line 540  void midimod_loadall(MIDIMOD hdl) { Line 551  void midimod_loadall(MIDIMOD hdl) {
         }          }
 }  }
   
   
   VEXTERN void VEXPORT midimod_loadallex(MIDIMOD hdl, FNMIDIOUTLAEXCB cb, void *userdata) {
   
           MIDIOUTLAEXPARAM param;
           UINT    b;
   
           if (hdl) {
                   ZeroMemory(&param, sizeof(param));
                   param.userdata = userdata;
                   for (b=0; b<(MIDI_BANKS*2); b++) {
                           param.totaltones += inst_gettones(hdl, b);
                   }
                   for (b=0; b<(MIDI_BANKS*2); b++) {
                           param.bank = b;
                           inst_bankloadex(hdl, b, cb, &param);
                   }
           }
   }
   

Removed from v.1.7  
changed lines
  Added in v.1.8


RetroPC.NET-CVS <cvs@retropc.net>