Jump to content

MMPM/2 Device Driver Reference: Difference between revisions

From EDM2
No edit summary
Ak120 (talk | contribs)
mNo edit summary
 
(10 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{| style="float: right; background: #F5F5F5;"
{{MMPM2DDRef}}
|- style="background: silver; text-align:center;"
{{IBM-Reprint}}
| '''MMPM/2 Device Driver Reference'''
 
|-
===EDM/2 preamble===
|1. [[Adding Support for Audio and Video Adapters]]
This is the ''MMPM/2 Device Driver Reference for OS/2'' as last published by IBM in 2004, but with content unchanged from 1997. It is republished here with explicit permission from IBM (Copyright Permission #21953) and you should keep in mind that it is an intellectual property of International Business Machines Corp. that cannot be changed or reused without their permission and is not governed by the [[Attribution-Share Alike 3.0]] licence like the rest of the EDM/2 Wiki.
|-
 
|2. [[Audio Physical Device Driver Template]]
The content of the documentation is unchanged apart from the following:
|-
* The original document was an INF file split into thousands of different small sections, these have been consolidated into chapters, and restructured to fit [[HTML]] formatting, mimicking the original [[GML]] format as much as possible.
|3. [[Audio Virtual Device Driver Template]]
* Sales, technical help, download and contact information has been removed. The MMPM/2 DDR and the related SDK's are no longer for sale, nor is support available from IBM. Some of the INF viewer related help has been removed as well as it is superfluous after the format change and might be misleading, and the Glossary and Notices section was merged with other DDK/SDK glossary sections as they are all identical.
|-
* Miniscule changes have been made to the text, spelling errors, formatting errors and possible copy and paste errors have been fixed and/or noted, an unfinished sentence or two have been finished to the best of our ability.
|4. [[MAD16 PDD and VDD Sample Device Drivers]]
 
|-
Outside of formatting changes, adding Wikilinks and graphic improvements, the document shall be left as it is. It should be noted that the some of the driver models and data formats described in the documentation are have been replaced or extended by both IBM and third parties, but that does not mean that this document should be changed, but it is acceptable that a link is created to an internal or external article that explains the newer models and formats.
|5. [[PDD Sample for Video Capture Adapters]]
|-
|6. [[PDD Sample for MPEG Video Playback Devices]]
|-
|7. [[Audio Sample for Vendor-Specific Drivers]]
|-
|8. [[Using the High-Resolution Timer]]
|-
|9. [[Real-Time MIDI Subsystem]]
|-
|10. [[Audio Device Driver Exerciser (PMADDE) Tool]]
|-
|11. [[AP2/P2STRING Tool]]
|-
|12. [[Ultimotion Data Stream Specification]]
|-
|13. [[DDCMD Messages]]
|-
|14. [[SHD Messages]]
|-
|15. [[Vendor-Specific Driver Commands]]
|-
|16. [[MMPM/2 Device Driver Reference:IOCtl Functions|IOCtl Functions]]
|-
|17. [[MMPM/2 Device Driver Reference:Data Types|Data Types]]
|-
|18. [[Types of MIDI Messages]]
|-
|19. [[MMPM/2 Device Driver Reference:Notices|Notices]]
|-
|19. [[MMPM/2 Device Driver Reference:Notices|Notices]]
|-
|20. [[MMPM/2 Device Driver Reference:Glossary|Glossary]]
|}
''By [[IBM]]''


== MMPM/2 Device Driver Reference ==
==About This Book==
'''Reprint Courtesy of International Business Machines Corporation, © International Business Machines Corporation'''
=== About This Book ===
The ''MMPM/2 Device Driver Reference for OS/2'' is for subsystem developers who want to write their own physical device drivers (and associated virtual device drivers) to support audio and video adapters in the Multimedia Presentation Manager/2 system.
The ''MMPM/2 Device Driver Reference for OS/2'' is for subsystem developers who want to write their own physical device drivers (and associated virtual device drivers) to support audio and video adapters in the Multimedia Presentation Manager/2 system.


Line 59: Line 22:
You should be familiar with the IBM Developer's Toolkit for OS/2. Related OS/2 and OS/2 multimedia technical information includes:
You should be familiar with the IBM Developer's Toolkit for OS/2. Related OS/2 and OS/2 multimedia technical information includes:


''OS/2 Physical Device Driver Reference'' Defines what a physical device driver is, and how it operates. It also describes the types of physical device drivers, their interfaces, and available system services.
;[[Physical Device Driver Reference|OS/2 Physical Device Driver Reference]] :Defines what a physical device driver is, and how it operates. It also describes the types of physical device drivers, their interfaces, and available system services.


An online version of this book is provided in this package.
:An online version of this book is provided in this package.


''OS/2 Virtual Device Driver Reference'' Defines what a virtual device driver is, how it operates, and when to use one. It also describes the types of virtual device drivers, their interfaces, and available kernel services.
;[[Virtual Device Driver Reference for OS/2|OS/2 Virtual Device Driver Reference]] :Defines what a virtual device driver is, how it operates, and when to use one. It also describes the types of virtual device drivers, their interfaces, and available kernel services.


An online version of this book is provided in this package.
:An online version of this book is provided in this package.


''OS/2 Multimedia Technical Library''
;OS/2 Multimedia Technical Library


Online versions of the following books are provided with the OS/2 Developer's Toolkit.
Online versions of the following books are provided with the OS/2 Developer's Toolkit.


''OS/2 Multimedia Subsystem Programming Guide'' Provides guidelines for developing multimedia subsystems. Each subsystem component is described in detail in individual chapters. Models are used to complement the information provided by component sample program templates.
:;OS/2 Multimedia Subsystem Programming Guide:Provides guidelines for developing multimedia subsystems. Each subsystem component is described in detail in individual chapters. Models are used to complement the information provided by component sample program templates.


''OS/2 Multimedia Application Programming Guide'' Provides advisory information on application interfaces to help you select and implement functions for your OS/2 multimedia applications. Code examples from fully documented sample programs accompany the descriptions of the functions.
:;OS/2 Multimedia Application Programming Guide:Provides advisory information on application interfaces to help you select and implement functions for your OS/2 multimedia applications. Code examples from fully documented sample programs accompany the descriptions of the functions.


''OS/2 Multimedia Programming Reference'' Provides detailed information on multimedia functions, messages, and data structures to enable you to write code for your multimedia application programs and subsystems.
:;OS/2 Multimedia Programming Reference:Provides detailed information on multimedia functions, messages, and data structures to enable you to write code for your multimedia application programs and subsystems.


=== Using the Online Reference ===
==Chapters==
Before you begin to use this reference, it would be helpful to understand how you can:
#[[Adding Support for Audio and Video Adapters]]
* Expand the Contents window to see all available topics
#[[Audio Physical Device Driver Template]]
* Obtain additional information for a highlighted word or phrase
#[[Audio Virtual Device Driver Template]]
* Use action bar choices
#[[MAD16 PDD and VDD Sample Device Drivers]]
#[[PDD Sample for Video Capture Adapters]]
#[[PDD Sample for MPEG Video Playback Devices]]
#[[Audio Sample for Vendor-Specific Drivers]]
#[[Using the High-Resolution Timer]]
#[[Real-Time MIDI Subsystem]]
#[[Audio Device Driver Exerciser (PMADDE) Tool]]
#[[AP2/P2STRING Tool]]
#[[Ultimotion Data Stream Specification]]
#[[DDCMD Messages]]
#[[SHD Messages]]
#[[Vendor-Specific Driver Commands]]
#[[MMPM/2 Device Driver Reference:IOCtl Functions|IOCtl Functions]]
#[[MMPM/2 Device Driver Reference:Data Types|Data Types]]
#[[Types of MIDI Messages]]


====How to Use the Contents====
===Addendums===
When the Contents window first appears, some topics have a plus (+) sign beside them. The plus sign (+) indicates that additional topics are available.
====19. OS/2 Version Compatibility Considerations====
 
To expand the Contents if you are using a mouse, click on the plus sign. If you are using a keyboard, use the Up or Down Arrow key to highlight the topic, and press the plus key (+).
 
To view a topic, double-click on the topic (or press the Up or Down Arrow key to highlight the topic, and then press Enter).
 
====How to Obtain Additional Information====
After you select a topic, the information for that topic appears in a window. Highlighted words or phrases indicate that additional information is available. You will notice that certain words in the following paragraph are highlighted in green letters. These are called "hypertext terms". If you are using a mouse, double-click on the highlighted word. If you are using a keyboard, press the Tab key to move to the highlighted word and then press Enter. Additional information will appear in a window.
 
To return to the window you were viewing before you selected a hypertext term, press Esc.
 
====How to Use Action Bar Choices====
Several choices are available for managing information presented in the online MMPM/2 Device Driver Reference. There are three pull-down menus on the action bar: the '''Services''' menu, the '''Options''' menu, and the '''Help''' menu.
 
The actions that are selectable from the '''Services''' menu operate in the active window currently displayed on the screen. These actions include the following:
 
Bookmark Sets a place holder so you can retrieve information of interest to you.
 
When you place a bookmark on a topic, it is added to a list of bookmarks you have previously set. You can view the list, and you can remove one or all bookmarks from the list. If you have not set any bookmarks, the list is empty.
 
To set a bookmark, do the following:
#Select a topic from the Contents.
#When that topic appears, choose the '''Bookmark''' option from the '''Services''' menu.
#If you want to change the name used for the bookmark, type the new name in the field.
#Select the '''Place''' radio button (or press the Up or Down Arrow key to select it).
#Select '''OK'''. The bookmark is then added to the bookmark list.
 
Search Finds occurrences of a word or phrase in the current topic, selected topics, or all topics.
 
You can specify a word or phrase to be searched. You can also limit the search to a set of topics by first marking the topics in the Contents list.
 
To search for a word or phrase in all topics, do the following:
#Choose the '''Search''' option from the '''Services''' pull-down.
#Type the word or words to be searched.
#Select '''All sections'''.
#Select '''Search''' to begin the search.
#The list of topics where the word or phrase appears is displayed.
 
;Print
:Prints one or more topics. You can also print a set of topics by first marking the topics in the Contents list.
 
You can print one or more topics. You can also print a set of topics by first marking the topics on the Contents list.
 
To print the document Contents list, do the following:
#Select '''Print''' from the '''Services''' menu.
#Select '''Contents'''.
#Select '''Print'''.
#The Contents list is printed on your printer.
 
;Copy
:Copies a topic you are viewing to a file you can edit.
 
You can copy a topic you are viewing into a temporary file named "TEXT.TMP". You can later edit that file by using an editor such as the System Editor.
 
To copy a topic, do the following:
#Expand the Contents list and select a topic.
#When the topic appears, select '''Copy to file''' from the '''Services''' menu.
 
The system copies the text pertaining to that topic into the temporary TEXT.TMP file.
 
For information on any of the other choices in the '''Services''' menu, highlight the choice and press the F1 key.
 
;Options
:Changes the way the Contents list is displayed.
 
You can control the appearance of the Contents list.
 
To expand the Contents and show all levels for all topics, select '''Expand all''' from the '''Options''' menu.
 
For information on any of the other choices in the '''Options''' menu, highlight the choice and press the F1 key.
 
=== What's New ===
* Discussion of and pointers to the PAS16 audio sample have been removed.
* Pointers to the new object-oriented audio driver sample, TROPEZ.SYS have been included.
* References to the AUDIOVDD.SYS virtual driver have been removed. The VBSAUDIO.SYS driver serves as its replacement.
 
For information on any items discussed in this reference that have been added to OS/2 (beginning with Warp) and their compatibility with different versions of OS/2, see ''OS/2 Version Compatibility Considerations''.
 
=== Assistance ===
There is no technical support for device driver development provided by IBM
 
=== Ordering Information ===
In addition to the actual tools and source code available on The IBM Developer Connection Device Driver Kit for OS/2, it also includes the following DDK reference books in online format.
 
*The Physical Device Driver Reference
*The Storage Device Driver Reference
*The Input/Output Device Driver Reference
*The Pen for OS/2 Device Driver Reference
*The Virtual Device Driver Reference
*The Presentation Device Driver Reference
*The Display Device Driver Reference
*The Printer Device Driver Reference
*The Graphics Adapter Device Driver Reference
*The MMPM/2 Device Driver Reference (Multimedia)
 
[[MMPM/2 Device Driver Reference:Adding Support for Audio and Video Adapters]]
 
[[MMPM/2 Device Driver Reference:Audio Physical Device Driver Template]]
 
[[MMPM/2 Device Driver Reference:Audio Virtual Device Driver Template]]
 
[[MMPM/2 Device Driver Reference:MAD16 PDD and VDD Sample Device Drivers]]
 
[[MMPM/2 Device Driver Reference:PDD Sample for Video Capture Adapters]]
 
[[MMPM/2 Device Driver Reference:PDD Sample for MPEG Video Playback Devices]]
 
[[MMPM/2 Device Driver Reference:Audio Sample for Vendor-Specific Drivers]]
 
[[MMPM/2 Device Driver Reference:Using the High-Resolution Timer]]
 
[[MMPM/2 Device Driver Reference:Real-Time MIDI Subsystem]]
 
[[MMPM/2 Device Driver Reference:Audio Device Driver Exerciser (PMADDE) Tool]]
 
[[MMPM/2 Device Driver Reference:AP2/P2STRING Tool]]
 
[[MMPM/2 Device Driver Reference:Ultimotion Data Stream Specification]]
 
[[MMPM/2 Device Driver Reference:DDCMD Messages]]
 
[[MMPM/2 Device Driver Reference:SHD Messages]]
 
[[MMPM/2 Device Driver Reference:Vendor-Specific Driver Commands]]
 
[[MMPM/2 Device Driver Reference:IOCtl Functions]]
 
[[MMPM/2 Device Driver Reference:Data Types]]
 
[[MMPM/2 Device Driver Reference:Types of MIDI Messages]]
 
==Addendums==
=== OS/2 Version Compatibility Considerations ===
The following table lists items discussed in this reference that have been added to OS/2 since OS/2 Warp Version 3.0 and discusses their compatibility with different versions of OS/2.
The following table lists items discussed in this reference that have been added to OS/2 since OS/2 Warp Version 3.0 and discusses their compatibility with different versions of OS/2.


Line 229: Line 74:
|}
|}


[[MMPM/2 Device Driver Reference:Notices]]
:20. [[IBM SDK/DDK Notices|Notices]]
 
:21. [[IBM SDK/DDK Glossary|Glossary]]
[[MMPM/2 Device Driver Reference:Glossary]]
 
'''Reprint Courtesy of International Business Machines Corporation, © International Business Machines Corporation'''


[[Category:Driver Articles]]
[[Category:Device Driver Reference]]
[[Category:MMPM/2]]
[[Category:Multimedia]]
[[Category:MIDI]]

Latest revision as of 17:57, 14 March 2017

MMPM/2 Device Driver Reference
  1. Adding Support for Audio and Video Adapters
  2. Audio Physical Device Driver Template
  3. Audio Virtual Device Driver Template
  4. MAD16 PDD and VDD Sample Device Drivers
  5. PDD Sample for Video Capture Adapters
  6. PDD Sample for MPEG Video Playback Devices
  7. Audio Sample for Vendor-Specific Drivers
  8. Using the High-Resolution Timer
  9. Real-Time MIDI Subsystem
  10. Audio Device Driver Exerciser (PMADDE) Tool
  11. AP2/P2STRING Tool
  12. Ultimotion Data Stream Specification
  13. DDCMD Messages
  14. SHD Messages
  15. Vendor-Specific Driver Commands
  16. IOCtl Functions
  17. Data Types
  18. Types of MIDI Messages
  19. Notices
  20. Glossary

Reprint Courtesy of International Business Machines Corporation, © International Business Machines Corporation

EDM/2 preamble

This is the MMPM/2 Device Driver Reference for OS/2 as last published by IBM in 2004, but with content unchanged from 1997. It is republished here with explicit permission from IBM (Copyright Permission #21953) and you should keep in mind that it is an intellectual property of International Business Machines Corp. that cannot be changed or reused without their permission and is not governed by the Attribution-Share Alike 3.0 licence like the rest of the EDM/2 Wiki.

The content of the documentation is unchanged apart from the following:

  • The original document was an INF file split into thousands of different small sections, these have been consolidated into chapters, and restructured to fit HTML formatting, mimicking the original GML format as much as possible.
  • Sales, technical help, download and contact information has been removed. The MMPM/2 DDR and the related SDK's are no longer for sale, nor is support available from IBM. Some of the INF viewer related help has been removed as well as it is superfluous after the format change and might be misleading, and the Glossary and Notices section was merged with other DDK/SDK glossary sections as they are all identical.
  • Miniscule changes have been made to the text, spelling errors, formatting errors and possible copy and paste errors have been fixed and/or noted, an unfinished sentence or two have been finished to the best of our ability.

Outside of formatting changes, adding Wikilinks and graphic improvements, the document shall be left as it is. It should be noted that the some of the driver models and data formats described in the documentation are have been replaced or extended by both IBM and third parties, but that does not mean that this document should be changed, but it is acceptable that a link is created to an internal or external article that explains the newer models and formats.

About This Book

The MMPM/2 Device Driver Reference for OS/2 is for subsystem developers who want to write their own physical device drivers (and associated virtual device drivers) to support audio and video adapters in the Multimedia Presentation Manager/2 system.

Note: Multimedia Presentation Manager/2 (MMPM/2) is also referred to as "OS/2 Multimedia".

The IBM Developer Connection Device Driver Kit for OS/2 (DDK) provides PDD and VDD source code that serves as a template that can be modified easily to meet your hardware requirements. Tools to test your device drivers are also available.

Related Information

You should be familiar with the IBM Developer's Toolkit for OS/2. Related OS/2 and OS/2 multimedia technical information includes:

OS/2 Physical Device Driver Reference
Defines what a physical device driver is, and how it operates. It also describes the types of physical device drivers, their interfaces, and available system services.
An online version of this book is provided in this package.
OS/2 Virtual Device Driver Reference
Defines what a virtual device driver is, how it operates, and when to use one. It also describes the types of virtual device drivers, their interfaces, and available kernel services.
An online version of this book is provided in this package.
OS/2 Multimedia Technical Library

Online versions of the following books are provided with the OS/2 Developer's Toolkit.

OS/2 Multimedia Subsystem Programming Guide
Provides guidelines for developing multimedia subsystems. Each subsystem component is described in detail in individual chapters. Models are used to complement the information provided by component sample program templates.
OS/2 Multimedia Application Programming Guide
Provides advisory information on application interfaces to help you select and implement functions for your OS/2 multimedia applications. Code examples from fully documented sample programs accompany the descriptions of the functions.
OS/2 Multimedia Programming Reference
Provides detailed information on multimedia functions, messages, and data structures to enable you to write code for your multimedia application programs and subsystems.

Chapters

  1. Adding Support for Audio and Video Adapters
  2. Audio Physical Device Driver Template
  3. Audio Virtual Device Driver Template
  4. MAD16 PDD and VDD Sample Device Drivers
  5. PDD Sample for Video Capture Adapters
  6. PDD Sample for MPEG Video Playback Devices
  7. Audio Sample for Vendor-Specific Drivers
  8. Using the High-Resolution Timer
  9. Real-Time MIDI Subsystem
  10. Audio Device Driver Exerciser (PMADDE) Tool
  11. AP2/P2STRING Tool
  12. Ultimotion Data Stream Specification
  13. DDCMD Messages
  14. SHD Messages
  15. Vendor-Specific Driver Commands
  16. IOCtl Functions
  17. Data Types
  18. Types of MIDI Messages

Addendums

19. OS/2 Version Compatibility Considerations

The following table lists items discussed in this reference that have been added to OS/2 since OS/2 Warp Version 3.0 and discusses their compatibility with different versions of OS/2.

Item Added or Changed Date Item Added or Changed Compatibility of Addition or Change
MIDI Driver November 1995 OS/2 Warp, Version 3.0 and Later
Timer Device Driver November 1995 OS/2 Warp, Version 3.0 and Later
VSD Updates November 1995 OS/2 Warp, Version 3.0 and Later
20. Notices
21. Glossary