nas.c 2.57 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
/* -*- tab-width: 8; c-basic-offset: 4 -*- */
/*
 *
 * Wine Driver for NAS Network Audio System
 *   http://radscan.com/nas.html
 *
 * Copyright 2002 Nicolas Escuder <n.escuder@alineanet.com>
 *
 * Code massively copied from Eric Pouech's OSS driver
 * and Chris Morgan aRts driver
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
24
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
25 26 27 28
 */

#include "config.h"

29 30
#include <stdarg.h>

31 32 33 34 35 36 37 38 39 40 41 42
#include "windef.h"
#include "winbase.h"
#include "wingdi.h"
#include "winuser.h"
#include "mmddk.h"
#include "nas.h"

#ifdef HAVE_NAS

/**************************************************************************
 * 				NAS_drvOpen			[internal]
 */
43
static LRESULT NAS_drvOpen(LPSTR str)
44 45 46 47 48 49 50
{
    return 1;
}

/**************************************************************************
 * 				NAS_drvClose			[internal]
 */
51
static LRESULT NAS_drvClose(DWORD_PTR dwDevID)
52
{
53
    return 1;
54 55 56 57 58 59 60
}
#endif /* #ifdef HAVE_NAS */


/**************************************************************************
 * 				DriverProc (WINENAS.@)
 */
61 62
LRESULT CALLBACK NAS_DriverProc(DWORD_PTR dwDevID, HDRVR hDriv, UINT wMsg,
                                LPARAM dwParam1, LPARAM dwParam2)
63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
{
/* EPP     TRACE("(%08lX, %04X, %08lX, %08lX, %08lX)\n",  */
/* EPP 	  dwDevID, hDriv, wMsg, dwParam1, dwParam2); */

    switch(wMsg) {
#ifdef HAVE_NAS
    case DRV_LOAD:		NAS_WaveInit();
/*    				NAS_MidiInit(); FIXME: no midi */
				return 1;
    case DRV_FREE:	        return NAS_WaveClose();
    case DRV_OPEN:		return NAS_drvOpen((LPSTR)dwParam1);
    case DRV_CLOSE:		return NAS_drvClose(dwDevID);
    case DRV_ENABLE:		return 1;
    case DRV_DISABLE:		return 1;
    case DRV_QUERYCONFIGURE:	return 1;
    case DRV_CONFIGURE:		MessageBoxA(0, "NAS MultiMedia Driver !", "NAS Driver", MB_OK);	return 1;
    case DRV_INSTALL:		return DRVCNF_RESTART;
    case DRV_REMOVE:		return DRVCNF_RESTART;
#endif
    default:
	return DefDriverProc(dwDevID, hDriv, wMsg, dwParam1, dwParam2);
    }
}