drv_nos.c
上传用户:wstnjxml
上传日期:2014-04-03
资源大小:7248k
文件大小:2k
源码类别:

Windows CE

开发平台:

C/C++

  1. /* MikMod sound library
  2. (c) 1998, 1999, 2000 Miodrag Vallat and others - see file AUTHORS for
  3. complete list.
  4. This library is free software; you can redistribute it and/or modify
  5. it under the terms of the GNU Library General Public License as
  6. published by the Free Software Foundation; either version 2 of
  7. the License, or (at your option) any later version.
  8.  
  9. This program is distributed in the hope that it will be useful,
  10. but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  12. GNU Library General Public License for more details.
  13.  
  14. You should have received a copy of the GNU Library General Public
  15. License along with this library; if not, write to the Free Software
  16. Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
  17. 02111-1307, USA.
  18. */
  19. /*==============================================================================
  20.   $Id: drv_nos.c,v 1.3 2004/01/31 22:39:40 raph Exp $
  21.   Driver for no output
  22. ==============================================================================*/
  23. /*
  24. Written by Jean-Paul Mikkers <mikmak@via.nl>
  25. */
  26. #ifdef HAVE_CONFIG_H
  27. #include "config.h"
  28. #endif
  29. #ifdef HAVE_UNISTD_H
  30. #include <unistd.h>
  31. #endif
  32. #include "mikmod_internals.h"
  33. #define ZEROLEN 32768
  34. static SBYTE *zerobuf=NULL;
  35. static BOOL NS_IsThere(void)
  36. {
  37. return 1;
  38. }
  39. static BOOL NS_Init(void)
  40. {
  41. zerobuf=(SBYTE*)_mm_malloc(ZEROLEN);
  42. return VC_Init();
  43. }
  44. static void NS_Exit(void)
  45. {
  46. VC_Exit();
  47. _mm_free(zerobuf);
  48. }
  49. static void NS_Update(void)
  50. {
  51. if (zerobuf)
  52. VC_WriteBytes(zerobuf,ZEROLEN);
  53. }
  54. MIKMODAPI MDRIVER drv_nos={
  55. NULL,
  56. "No Sound",
  57. "Nosound Driver v3.0",
  58. 255,255,
  59. "nosound",
  60. NULL,
  61. NULL,
  62. NS_IsThere,
  63. VC_SampleLoad,
  64. VC_SampleUnload,
  65. VC_SampleSpace,
  66. VC_SampleLength,
  67. NS_Init,
  68. NS_Exit,
  69. NULL,
  70. VC_SetNumVoices,
  71. VC_PlayStart,
  72. VC_PlayStop,
  73. NS_Update,
  74. NULL,
  75. VC_VoiceSetVolume,
  76. VC_VoiceGetVolume,
  77. VC_VoiceSetFrequency,
  78. VC_VoiceGetFrequency,
  79. VC_VoiceSetPanning,
  80. VC_VoiceGetPanning,
  81. VC_VoicePlay,
  82. VC_VoiceStop,
  83. VC_VoiceStopped,
  84. VC_VoiceGetPosition,
  85. VC_VoiceRealVolume
  86. };
  87. /* ex:set ts=4: */