Ignore:
Timestamp:
Mar 24, 2001, 4:40:04 PM (24 years ago)
Author:
sandervl
Message:

Enabled DirectAudio wave playback interface (if present)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/winmm/initterm.cpp

    r5356 r5366  
    2626#define  INCL_DOSMODULEMGR
    2727#define  INCL_DOSPROCESS
    28 #include <os2wrap.h>    //Odin32 OS/2 api wrappers
     28#include <os2wrap.h>    //Odin32 OS/2 api wrappers
    2929#include <stdlib.h>
    3030#include <stdio.h>
     
    3939#include "auxiliary.h"
    4040
    41 #define DBG_LOCALLOG    DBG_initterm
     41#define DBG_LOCALLOG    DBG_initterm
    4242#include "dbglocal.h"
    4343
     
    5858BOOL WINAPI OdinLibMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID fImpLoad)
    5959{
    60   static BOOL                   bInitDone = FALSE;
    61  
     60  static BOOL           bInitDone = FALSE;
     61
    6262  switch (fdwReason)
    6363    {
    6464    case DLL_PROCESS_ATTACH:
    65       if (!MULTIMEDIA_CreateIData(hinstDLL))
    66         return FALSE;
    67      
    68       if (!bInitDone) { /* to be done only once */
    69             if (!MULTIMEDIA_MciInit() /*|| !MMDRV_Init() */ ) {
    70           MULTIMEDIA_DeleteIData();
    71           return FALSE;
    72             }
    73         bInitDone = TRUE;       
    74       }
    75      
    76         return TRUE;
     65        if (!MULTIMEDIA_CreateIData(hinstDLL))
     66            return FALSE;
     67
     68        if (!bInitDone) { /* to be done only once */
     69            if (!MULTIMEDIA_MciInit() /*|| !MMDRV_Init() */ ) {
     70                MULTIMEDIA_DeleteIData();
     71                return FALSE;
     72            }
     73            bInitDone = TRUE;
     74        }
     75        return TRUE;
    7776
    7877   case DLL_THREAD_ATTACH:
    7978   case DLL_THREAD_DETACH:
    80         return TRUE;
     79        return TRUE;
    8180
    8281   case DLL_PROCESS_DETACH:
    8382        MULTIMEDIA_DeleteIData();
    8483        auxOS2Close(); /* SvL: Close aux device if necessary */
    85         IRTMidiShutdown;  /* JT: Shutdown RT Midi subsystem, if running. */
    86         ctordtorTerm();
    87         return TRUE;
     84        IRTMidiShutdown;  /* JT: Shutdown RT Midi subsystem, if running. */
     85        ctordtorTerm();
     86        return TRUE;
    8887   }
    8988   return FALSE;
     
    9998ULONG DLLENTRYPOINT_CCONV DLLENTRYPOINT_NAME(ULONG hModule, ULONG ulFlag)
    10099{
    101    size_t i;
    102    APIRET rc;
     100    /*-------------------------------------------------------------------------*/
     101    /* If ulFlag is zero then the DLL is being loaded so initialization should */
     102    /* be performed.  If ulFlag is 1 then the DLL is being freed so            */
     103    /* termination should be performed.                                        */
     104    /*-------------------------------------------------------------------------*/
    103105
    104    /*-------------------------------------------------------------------------*/
    105    /* If ulFlag is zero then the DLL is being loaded so initialization should */
    106    /* be performed.  If ulFlag is 1 then the DLL is being freed so            */
    107    /* termination should be performed.                                        */
    108    /*-------------------------------------------------------------------------*/
     106    switch (ulFlag)
     107    {
     108    case 0 :
     109        ctordtorInit();
    109110
    110    switch (ulFlag) {
    111       case 0 :
    112          ctordtorInit();
     111        ParseLogStatus();
    113112
    114          ParseLogStatus();
     113        CheckVersionFromHMOD(PE2LX_VERSION, hModule); /*PLF Wed  98-03-18 05:28:48*/
     114        dllHandle = RegisterLxDll(hModule, OdinLibMain, (PVOID)&_Resource_PEResTab);
     115        if(dllHandle == 0)
     116            return 0UL;/* Error */
    115117
    116          CheckVersionFromHMOD(PE2LX_VERSION, hModule); /*PLF Wed  98-03-18 05:28:48*/
     118        dprintf(("winmm init %s %s (%x)", __DATE__, __TIME__, DLLENTRYPOINT_NAME));
     119        break;
     120    case 1 :
     121        auxOS2Close(); /* SvL: Close aux device if necessary */
     122        if(dllHandle) {
     123            UnregisterLxDll(dllHandle);
     124        }
     125        break;
     126    default  :
     127        return 0UL;
     128    }
    117129
    118          dllHandle = RegisterLxDll(hModule, OdinLibMain, (PVOID)&_Resource_PEResTab);
    119          if(dllHandle == 0)
    120            return 0UL;/* Error */
    121 
    122          dprintf(("winmm init %s %s (%x)", __DATE__, __TIME__, DLLENTRYPOINT_NAME));
    123 
    124          break;
    125       case 1 :
    126          auxOS2Close(); /* SvL: Close aux device if necessary */
    127          if(dllHandle) {
    128                 UnregisterLxDll(dllHandle);
    129          }
    130          break;
    131       default  :
    132          return 0UL;
    133    }
    134 
    135    /***********************************************************/
    136    /* A non-zero value must be returned to indicate success.  */
    137    /***********************************************************/
    138    return 1UL;
     130    /***********************************************************/
     131    /* A non-zero value must be returned to indicate success.  */
     132    /***********************************************************/
     133    return 1UL;
    139134}
    140135//******************************************************************************
Note: See TracChangeset for help on using the changeset viewer.