Ignore:
Timestamp:
Feb 10, 2017, 2:50:49 AM (9 years ago)
Author:
David Azarewicz
Message:

Build system cleanup

File:
1 edited

Legend:

Unmodified
Added
Removed
  • GPL/branches/uniaud32-2.1.x/drv32/init.c

    r571 r588  
    3131#include <devhelp.h>
    3232#include <devtype.h>
    33 #include <devrp.h>
     33//DAZ #include <devrp.h>
     34#include <strategy.h>
    3435#include "devown.h"
    3536#include <version.h>
     
    5556
    5657//const char szCopyRight1[]= "Copyright 2000-2002 InnoTek Systemberatung GmbH\r\n";
    57 const char szCopyRight2[]= "Copyright 2000-2012 The ALSA Project\r\n\r\n";
    58 const char szCopyRight3[]= "Copyright 2005-2012 Netlabs http://www.netlabs.org\r\n";
     58const char szCopyRight2[]= "Copyright 2000-2010 The ALSA Project\r\n\r\n";
     59const char szCopyRight3[]= "Copyright 2005-2010 Netlabs http://www.netlabs.org\r\n";
    5960
    6061const char szCodeStartEnd[] = "Code 0x%0x - 0x%0x\r\n\r\n";
     
    6768} MSG_TABLE;
    6869
    69 extern "C" FARPTR16 MSG_TABLE32;
    70 extern "C" char szLastALSAError1[];
    71 extern "C" char szLastALSAError2[];
    72 extern "C" int sprintf (char *buffer, const char *format, ...);
    73 
    74 extern "C" APIRET APIENTRY DOS16OPEN(PSZ pszFileName, PHFILE phf, PULONG pulAction, ULONG cbFile, ULONG ulAttribute, ULONG fsOpenFlags, ULONG fsOpenMode, PEAOP2 peaop2 );
    75 extern "C" APIRET APIENTRY DOS16CLOSE(HFILE hFile);
    76 extern "C" APIRET APIENTRY DOS16WRITE(HFILE hFile, PVOID pBuffer, ULONG cbWrite, PULONG pcbActual);
    77 extern "C" void SaveBuffer(void);
     70extern FARPTR16 MSG_TABLE32;
     71extern char szLastALSAError1[];
     72extern char szLastALSAError2[];
     73extern int sprintf (char *buffer, const char *format, ...);
     74
     75extern APIRET APIENTRY DOS16OPEN(PSZ pszFileName, PHFILE phf, PULONG pulAction, ULONG cbFile, ULONG ulAttribute, ULONG fsOpenFlags, ULONG fsOpenMode, PEAOP2 peaop2 );
     76extern APIRET APIENTRY DOS16CLOSE(HFILE hFile);
     77extern APIRET APIENTRY DOS16WRITE(HFILE hFile, PVOID pBuffer, ULONG cbWrite, PULONG pcbActual);
     78extern void SaveBuffer(void);
    7879
    7980#define VMDHA_FIXED             0x0002
    8081
    81 extern "C" APIRET VMAlloc(ULONG size, ULONG flags, char NEAR* *pAddr);
     82extern APIRET VMAlloc(ULONG size, ULONG flags, char NEAR* *pAddr);
    8283
    8384//Print messages with DosWrite when init is done or has failed (see startup.asm)
     
    8990
    9091  for(i=0;i<length;i++) {
    91         str16[msg->MsgLength + i] = str[i];
     92  str16[msg->MsgLength + i] = str[i];
    9293  }
    9394  str16[msg->MsgLength + length] = 0;
     
    116117    segsize = OffsetFinalDS32 - ((OffsetBeginDS32) & ~0xFFF);
    117118    if(segsize & 0xFFF) {
    118             segsize += PAGE_SIZE;
     119      segsize += PAGE_SIZE;
    119120    }
    120121    segsize &= ~0xFFF;
     
    134135                   (LINEAR)&PgCount)) {
    135136#endif
    136             return(1);
     137      return(1);
    137138    }
    138139    /*
     
    141142    segsize = OffsetFinalCS32 - ((OffsetBeginCS32) & ~0xFFF);
    142143    if(segsize & 0xFFF) {
    143             segsize += PAGE_SIZE;
     144      segsize += PAGE_SIZE;
    144145    }
    145146    segsize &= ~0xFFF;
     
    159160                 (LINEAR)&PgCount)) {
    160161#endif
    161             return(1);
     162      return(1);
    162163    }
    163164    return 0;
     
    195196#endif
    196197// Initialize device driver
    197 WORD32 DiscardableInit(RPInit __far* rp)
    198 {
    199     char        debugmsg[64];
    200     char FAR48 *args;
    201 
    202 #ifdef KEE
    203     GetTKSSBase();
    204 #endif
    205 
    206     if(LockSegments()) {
    207         WriteString(ERR_ERROR, sizeof(ERR_ERROR)-1);
    208         WriteString(ERR_LOCK, sizeof(ERR_LOCK)-1);
    209         return RPDONE | RPERR_COMMAND;
    210     }
    211 
    212         DebugLevel = 1;
    213     rp->Out.FinalCS = 0;
    214     rp->Out.FinalDS = 0;
    215 
    216         if ( szprintBuf == 0 ) {
    217                 VMAlloc( DBG_MAX_BUF_SIZE, VMDHA_FIXED, &szprintBuf );
    218                 if (szprintBuf) {
    219                         memset( szprintBuf, 0, DBG_MAX_BUF_SIZE );
    220                         wrOffset= 0;
    221                 }
    222         }
    223         if (!HeapInit(HEAP_SIZE)) {
    224                 rprintf(("HeapInit failed!"));
    225         }
    226 
    227     args = MAKE_FARPTR32(rp->In.Args);
    228     GetParms(args);
    229 
    230 #ifdef DEBUG
    231         rprintf(("Uniaud32 version %s-DEBUG",UNIAUD_VERSION));
    232 #else
    233         rprintf(("Uniaud32 version %s",UNIAUD_VERSION));
    234 #endif
    235 
    236     if(fVerbose) {
    237         WriteString(szALSA, sizeof(szALSA)-1);
    238         WriteString(szCopyRight3, sizeof(szCopyRight3)-1);
    239         WriteString(szCopyRight2, sizeof(szCopyRight2)-1);
    240     }
    241 
    242 
    243     if(fDebug) {
    244         sprintf(debugmsg, szCodeStartEnd, OffsetBeginCS32, OffsetFinalCS32);
    245         WriteString(debugmsg, strlen(debugmsg));
    246     }
    247 
    248     //get the current time (to force retrieval of GIS pointer)
    249     os2gettimemsec();
    250 
    251     char szMixerName[64];
    252     char szDeviceName[128];
    253 
    254     if(OSS32_Initialize() != OSSERR_SUCCESS)
    255     {
    256         WriteString(ERR_ERROR, sizeof(ERR_ERROR)-1);
    257         WriteString(ERR_INIT, sizeof(ERR_INIT)-1);
    258         if(szLastALSAError1[0]) {
    259             WriteString(szLastALSAError1, strlen(szLastALSAError1));
    260         }
    261         if(szLastALSAError2[0]) {
    262             WriteString(szLastALSAError2, strlen(szLastALSAError2));
    263         }
    264         // !! dont exit when error !! return RPDONE | RPERR_COMMAND;
    265     } else if (OSS32_QueryNames(OSS32_DEFAULT_DEVICE, szDeviceName,
    266                                 sizeof(szDeviceName),szMixerName,
    267                                 sizeof(szMixerName), TRUE) != OSSERR_SUCCESS)
    268     {
    269         WriteString(ERR_ERROR, sizeof(ERR_ERROR)-1);
    270         WriteString(ERR_NAMES, sizeof(ERR_INIT)-1);
    271         if(szLastALSAError1[0]) {
    272             WriteString(szLastALSAError1, strlen(szLastALSAError1));
    273         }
    274         if(szLastALSAError2[0]) {
    275             WriteString(szLastALSAError2, strlen(szLastALSAError2));
    276         }
    277 
    278         // !! dont exit when error !! return RPDONE | RPERR_COMMAND;
    279     }
    280     else
    281     if(fVerbose) {
     198WORD32 DiscardableInit(REQPACKET __far* rp)
     199{
     200  char debugmsg[64];
     201  char FAR48 *args;
     202
     203#ifdef KEE
     204  GetTKSSBase();
     205#endif
     206
     207  if(LockSegments())
     208  {
     209    WriteString(ERR_ERROR, sizeof(ERR_ERROR)-1);
     210    WriteString(ERR_LOCK, sizeof(ERR_LOCK)-1);
     211    return RPDONE | RPERR_BADCOMMAND;
     212  }
     213
     214  DebugLevel = 1;
     215  rp->init_out.usCodeEnd = 0;
     216  rp->init_out.usDataEnd = 0;
     217
     218  if ( szprintBuf == 0 )
     219  {
     220    VMAlloc( DBG_MAX_BUF_SIZE, VMDHA_FIXED, &szprintBuf );
     221    if (szprintBuf)
     222    {
     223      memset( szprintBuf, 0, DBG_MAX_BUF_SIZE );
     224      wrOffset= 0;
     225    }
     226  }
     227  if (!HeapInit(HEAP_SIZE))
     228  {
     229    rprintf(("HeapInit failed!"));
     230  }
     231
     232  args = MAKE_FARPTR32(rp->init_in.szArgs);
     233  GetParms(args);
     234
     235  #ifdef DEBUG
     236  rprintf(("Uniaud32 version %s-DEBUG",UNIAUD_VERSION));
     237  #else
     238  rprintf(("Uniaud32 version %s",UNIAUD_VERSION));
     239  #endif
     240
     241  if(fVerbose)
     242  {
     243    WriteString(szALSA, sizeof(szALSA)-1);
     244    WriteString(szCopyRight3, sizeof(szCopyRight3)-1);
     245    WriteString(szCopyRight2, sizeof(szCopyRight2)-1);
     246  }
     247
     248  if(fDebug)
     249  {
     250    sprintf(debugmsg, szCodeStartEnd, OffsetBeginCS32, OffsetFinalCS32);
     251    WriteString(debugmsg, strlen(debugmsg));
     252  }
     253
     254  //get the current time (to force retrieval of GIS pointer)
     255  os2gettimemsec();
     256
     257  char szMixerName[64];
     258  char szDeviceName[128];
     259
     260  if(OSS32_Initialize() != OSSERR_SUCCESS)
     261  {
     262    WriteString(ERR_ERROR, sizeof(ERR_ERROR)-1);
     263    WriteString(ERR_INIT, sizeof(ERR_INIT)-1);
     264      if(szLastALSAError1[0])
     265      {
     266        WriteString(szLastALSAError1, strlen(szLastALSAError1));
     267      }
     268      if(szLastALSAError2[0])
     269      {
     270        WriteString(szLastALSAError2, strlen(szLastALSAError2));
     271      }
     272    // !! dont exit when error !! return RPDONE | RPERR_COMMAND;
     273  }
     274  else if (OSS32_QueryNames(OSS32_DEFAULT_DEVICE, szDeviceName,
     275                              sizeof(szDeviceName),szMixerName,
     276                              sizeof(szMixerName), TRUE) != OSSERR_SUCCESS)
     277  {
     278    WriteString(ERR_ERROR, sizeof(ERR_ERROR)-1);
     279    WriteString(ERR_NAMES, sizeof(ERR_INIT)-1);
     280    if(szLastALSAError1[0])
     281    {
     282      WriteString(szLastALSAError1, strlen(szLastALSAError1));
     283    }
     284    if(szLastALSAError2[0])
     285    {
     286      WriteString(szLastALSAError2, strlen(szLastALSAError2));
     287    }
     288
     289    // !! dont exit when error !! return RPDONE | RPERR_COMMAND;
     290  }
     291  else
     292  if(fVerbose)
     293  {
     294    WriteString(szDeviceName, strlen(szDeviceName));
     295    WriteString(szEOL, sizeof(szEOL)-1);
     296    WriteString(szMixerFound, sizeof(szMixerFound)-1);
     297    WriteString(szMixerName, strlen(szMixerName));
     298    WriteString(szEOL, sizeof(szEOL)-1);
     299
     300    #if 0
     301    for(int i=1;i<OSS32_MAX_AUDIOCARDS;i++)
     302    {
     303      if(OSS32_QueryNames(i, szDeviceName, sizeof(szDeviceName), szMixerName, sizeof(szMixerName)) == OSSERR_SUCCESS)
     304      {
    282305        WriteString(szDeviceName, strlen(szDeviceName));
    283306        WriteString(szEOL, sizeof(szEOL)-1);
     
    285308        WriteString(szMixerName, strlen(szMixerName));
    286309        WriteString(szEOL, sizeof(szEOL)-1);
    287 
    288 #if 0
    289         for(int i=1;i<OSS32_MAX_AUDIOCARDS;i++) {
    290             if(OSS32_QueryNames(i, szDeviceName, sizeof(szDeviceName), szMixerName, sizeof(szMixerName)) == OSSERR_SUCCESS)
    291             {
    292                 WriteString(szDeviceName, strlen(szDeviceName));
    293                 WriteString(szEOL, sizeof(szEOL)-1);
    294                 WriteString(szMixerFound, sizeof(szMixerFound)-1);
    295                 WriteString(szMixerName, strlen(szMixerName));
    296                 WriteString(szEOL, sizeof(szEOL)-1);
    297             }
    298             else break;
    299         }
    300 #endif
    301         WriteString(szEOL, sizeof(szEOL)-1);
    302     }
    303     // Complete the installation
    304     rp->Out.FinalCS = _OffsetFinalCS16;
    305     rp->Out.FinalDS = _OffsetFinalDS16;
    306 
    307         //SaveBuffer();
    308 
    309     // Confirm a successful installation
    310     return RPDONE;
    311 }
    312 
     310      }
     311      else break;
     312    }
     313    #endif
     314    WriteString(szEOL, sizeof(szEOL)-1);
     315  }
     316  // Complete the installation
     317  rp->init_out.usCodeEnd = _OffsetFinalCS16;
     318  rp->init_out.usDataEnd = _OffsetFinalDS16;
     319
     320  //SaveBuffer();
     321
     322  // Confirm a successful installation
     323  return RPDONE;
     324}
     325
Note: See TracChangeset for help on using the changeset viewer.