home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Professional Developers Kit 1992 November / Disc01 / Disc01.mdf / runnable / mmos2 / mmtoolkt / samples / audiodd / readme < prev    next >
Encoding:
Text File  |  1992-05-06  |  3.5 KB  |  145 lines

  1. README
  2.  
  3.                 AUDIODD Sample Template
  4.  
  5.  
  6. GENERAL:       - AudioDD is a sample physical audio device driver that
  7.          outlines how an OEM will plug their audio device driver
  8.          into the MMPM/2 environment.  This sample template does not
  9.          communicate with an audio adapter, thus execution of such to
  10.          produce sound is not possible.  However, the physical device
  11.          driver will install into OS/2 2.0 and initialize itself
  12.          AUDIO1$.
  13.  
  14.          Using this template as a guideline, one can insert the
  15.          necessary code to communicate with a specific audio adapter
  16.          and the driver will now execute in MMPM/2.
  17.  
  18.  
  19. FEATURES:      - Uses the Standard IOCTL interface and its five Audio IOCTLs.
  20.  
  21.            - Uses MMPM/2 APIs to communicate with the Sync/Stream Manager.
  22.  
  23.  
  24. CAPABILITIES:  - Demostrates the IDC (Inter-device Driver Communication) entry
  25.          point to the Audio Stream Handler thru the use of the MMPM/2
  26.          API SHDEntryPoint().
  27.  
  28.            - Demostrates the IDC (Inter-device Driver Communication) entry
  29.          point from the Audio Stream Handler thru the use of the
  30.          MMPM/2 API DDCMDEntryPoint().
  31.  
  32.            - Demostrates the protocol of getting an receiving data buffers
  33.          from the Sync/Stream Manager.
  34.  
  35. NOTE:           - This device driver will not compile in the OS/2 2.0 Toolkit
  36.          environment because it is a 16 bit device driver.  It is
  37.          included in the MMPM/2 Toolkit to illustrate how a device
  38.          driver plugs into the MMPM/2 audio subsystem.
  39.          If you wish to compile this device driver, you must use the
  40.          Microsoft C6 compiler, and the 6.0 Microsoft Macro Assembler.
  41.          If you wish to compile this component using the above tools,
  42.          following is an example of the makefile that would be needed.
  43.  
  44. ===============================================================================
  45.  
  46. # **************************************************************************
  47. # *
  48. # * Make file for AUDIODD - IBM C language OS/2 audio device driver
  49. # *
  50. # *  Generates:
  51. # *      audiodd.sys
  52. # *
  53. # **************************************************************************
  54.  
  55. .SUFFIXES:
  56. .SUFFIXES:     .com .sys .exe .obj .mbj .asm .inc .def .lrf .crf .ref \
  57.                .lst .sym .map .c .h .lib .msg .pro .txt
  58.  
  59. NAMESYS   = audiodd
  60.  
  61. #
  62. # Definitions for assembler
  63. # ML == Microsoft MASM 6.0
  64. #
  65. ASM=ML
  66. AFLAGS=-c -Cx -Sn
  67.  
  68. #
  69. # Definitions for C compiler
  70. #
  71. CCOMP=cl
  72. CFLAGS= /c /Zp /Zl /G2s /Asnw /W3 /O
  73.  
  74. #
  75. # Definitions for linker
  76. #
  77. LINK=link
  78. LFLAGS= /B
  79. LIBS286=DOSCALLS+SLIBC7P+os2286
  80.  
  81.  
  82. #
  83. # Inference rules
  84. #
  85. .c.obj:
  86.      $(CCOMP) $(CFLAGS) /Fo$(<B).obj $(C_LST) $(<B).c
  87.  
  88. .asm.obj:
  89.      $(ASM) $(AFLAGS) $(ASM_LST) $(<B).asm
  90.  
  91. #
  92. # Object file list
  93. # AudioDD.obj must be last object file listed so
  94. # PDD Init code can be droped from code and data segments.
  95. #
  96. SYSOBJS=startup.obj    \
  97.         audiodat.obj    \
  98.         mmddcmds.obj    \
  99.         audintr.obj     \
  100.         audsubs.obj     \
  101.         cdevhlp.obj     \
  102.         audiodd.obj
  103.  
  104. #
  105. # Target descriptions
  106. #
  107.  
  108. all:sys
  109.  
  110. ##################################
  111. # audiodd.sys Target descriptions
  112. ##################################
  113.  
  114. sys: $(NAMESYS).sys
  115.  
  116. $(NAMESYS).sys:     $(SYSOBJS) makefile $(NAMESYS).lrf    \
  117.                     $(NAMESYS).def
  118.             $(LINK) $(LFLAGS) @$(NAMESYS).lrf
  119.  
  120. $(NAMESYS).def: makefile
  121.     @echo Creating file <<$(@B).def
  122. LIBRARY $(NAMESYS)
  123. PROTMODE
  124. CODE    PRELOAD
  125. DATA    PRELOAD
  126. <<keep
  127.  
  128. $(NAMESYS).lrf:  makefile
  129.     @echo Creating file <<$(@B).lrf
  130. $(SYSOBJS)
  131. $(NAMESYS).sys
  132. $(NAMESYS).map /map /nod
  133. $(LIBS286)
  134. $(NAMESYS).def;
  135. <<keep
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
  142.  
  143.  
  144.  
  145.