Jump to content

Using Your DDK: Difference between revisions

From EDM2
Ak120 (talk | contribs)
mNo edit summary
Ak120 (talk | contribs)
No edit summary
Line 1: Line 1:
{{IBM-Reprint}}
{{IBM-Reprint}}
==DDK Roadmap==
This section provides a directory structure overview of the DDK.
Device Driver Build Instructions contains build information and directory roadmaps for the OS/2 device drivers.
Certification Test Suites Structure contains information about a set of tools and test cases designed to assist you in testing OS/2 device drivers.
Miscellaneous/Other Tools Structure contains information about various kernel debuggers, released levels of OS/2 debug kernels, and other useful utilities.
===Device Driver Build Instructions===
;DDK Components
:Display Device Drivers and Test Tools
:DBCS Device Drivers
:Printer Device Drivers and Test Tools
:CD-ROM Device Drivers
:DASD Device Drivers
:Device Driver Test Tool
:Input/Output Device Drivers and Test Tools
:Multimedia Device Drivers and Test Tools
====Display Device Drivers and Test Tools====
;Display Device Drivers
:32-Bit Display Test Tool
:32-Bit PM (VGA, SVGA 256 and ISO Fonts)
:32-Bit PMVIDEO (Merged XGA/8514/S3 Drivers)
:S3GRADD Driver
:Base Video Screen Device Drivers(Screen01 and Screen02)
:BBS Display Installation
:16-Bit SVGA Base Video Handler
:Filter GRADD
:Generic and OEM PMI Samples
:GENGRADD Driver
:SVGA Utility
:DSPINSTL Action Routine Sample
:VGA/8514 Base Video Handler
:Virtual XGA Video Device Driver
:Virtual Video Display Driver
:Palette Display Test Tool
=====32-Bit Display Test Tool=====
;Tool Description:The 32-Bit Display Test Tool is a Presentation Manager application that enables the user to select one or more tests and execute them. A script interface also is provided, which permits the DTT to run predefined test-case scripts automatically.
The 32-Bit Display Test Tool is also listed as executables, under Certification Test Suites. When you select this tool as a Certification Test Suite, the build instructions are not applicable.
;Compilers/Assemblers Required:IBM VisualAge C++ V3.0
:OS/2 Toolkit for OS/2 2.1 or later
;Build Instructions:
#Ensure the necessary compilers and assemblers are installed.
#Run the SETCMPLR.CMD REXX command file located in the DDK\TOOLS directory. This command initializes environment variables to be used during the build.
#:e.g., SETCMPLR <MSCpath> <VACpath> <CSETpath> <DDKpath>
#:Where
#:<MSCpath> represents the Microsoft C 6.0 install directory
#:<VACpath> represents the IBM Visual Age C++ install directory
#:<CSETpath> represents the IBM C Set ++ install directory
#:<DDKpath> represents the DDK install directory
#:'''Note:''' A period (.) may be substituted for a compiler directory that is not used during the build.
#Change the directory to DDK\VIDEO\SRC\VIDEO\TESTTOOL\DTT.
#To build the retail version, invoke NMAKE with target RETOS2C on the resident makefile.
#To build the debug version, invoke NMAKE with target DBGOS2C on the resident makefile.
 
:Build Notes:The DDK provides the executables of DTT32, which are located in the DDK\TESTCERT\DISPLAY\FUNCTION\DTT32 directory. If you have modified and rebuilt this test tool, you need to update these executables by copying the files from the DDK\VIDEO\REL\OS2C\RETAIL\BASE\TEST\VIDEO directory.
;Files Created by Successful Build:Retail Version:
:Directory: \DDK\VIDEO\REL\OS2C\RETAIL\BASE\TEST\VIDEO
:*DTT.EXE
:Directory: \DDK\VIDEO\REL\OS2C\RETAIL\BASE\TEST\VIDEO
:*GREARC.DLL
:*GREATT2.DLL
:*GREATTR.DLL
:*GREBIT2.DLL
:*GREBNDS.DLL
:*GREBTMP.DLL
:*GRECLIP.DLL
:*GRECOLR.DLL
:*GREDVCON.DLL
:*GREESC.DLL
:*GREGEN2.DLL
:*GREGENFC.DLL
:*GRELINE.DLL
:*GREMARK.DLL
:*GREMDEV.DLL
:*GREQURY.DLL
:*GRETXTST.DLL
:Debug Version:
:Directory: \DDK\VIDEO\REL\OS2C\DEBUG\BASE\TEST\VIDEO
:*DTT.EXE
:*GREARC.DLL
:*GREATT2.DLL
:*GREATTR.DLL
:*GREBIT2.DLL
:*GREBNDS.DLL
:*GREBTMP.DLL
:*GRECLIP.DLL
:*GRECOLR.DLL
:*GREDVCON.DLL
:*GREESC.DLL
:*GREGEN2.DLL
:*GREGENFC.DLL
:*GRELINE.DLL
:*GREMARK.DLL
:*GREMDEV.DLL
:*GREQURY.DLL
:*GRETXTS.DLL
=====32-Bit PM (VGA) Display Driver=====
;Driver Description:The 32-Bit PM (VGA) Display Driver consists of two DLLs:  IBMVGA32.DLL and IBMDEV32.DLL. IBMVGA32.DLL contains the device-independent functions of the driver; IBMDEV32.DLL contains all the device-specific functions of the driver. IBMDEV32.DLL needs to be modified in order to port the driver to other video cards. This display driver can be used to support SVGA displays by replacing IBMDEV32.DLL with the corresponding SVGA DLL.
;Compilers/Assemblers Required:Microsoft MASM 6.0
;Build Instructions:
#Set the environment variables so the correct tools are picked up during the build.
#:e.g., SET PATH=<drive>:\DDK\TOOLS;<drive>:\DDK\VIDEO\TOOLS;%PATH%
#:Where <drive> represents your DDK installed drive and DDK represents the DDK installed directory. On the CD-ROM, the TOOLS directory path is DDK\TOOLS.
#Before the FIRST build is attempted, run (only once) the COPYASM6.CMD REXX command file in the DDK\TOOLS directory. This command copies the set of needed files from your copy of the Microsoft MASM 6.0 assembler to the proper directories under the DDK base directory.
#:e.g., COPYASM6 <MASMdrive>:\'MASM60' <drive>:\DDK
#:Where <MASMdrive> represents the Microsoft MASM 6.0 installed drive and 'MASM60' represents the Microsoft MASM 6.0 installed directory, <drive> represents your DDK installed drive and DDK represents the DDK installed directory.
#:To build IBMVGA32.DLL:
#Change the directory to DDK\VIDEO\SRC\VIDEO\VGA32\IBMVGA32.
#To build the retail version, invoke NMAKE with target RETOS2C on the resident makefile.
#To build the debug version, invoke NMAKE with target DBGOS2C on the resident makefile.
#:To build IBMDEV32.DLL:
#Change the directory to DDK\VIDEO\SRC\VIDEO\VGA32\IBMDEV32.
#To build the retail version, invoke NMAKE with target RETOS2C on the resident makefile.
#To build the debug version, invoke NMAKE with target DBGOS2C on the resident makefile.
;Build Notes:
#IBMVGA32.DLL and IBMDEV32.DLL must be built as a pair. That is, for any changes you make to either one, you must build and use BOTH DLLs.
#If the following error message is found during the compile:
fatal error: A1017: out of near memory
remove unnecessary settings from your environment variables and run NMAKE again.
 
;Files Created by Successful Build:
32-Bit VGA/SVGA Common
:Retail Version:
:Directory: \DDK\VIDEO\REL\OS2C\RETAIL\BASE\OS2\DLL
*IBMVGA32.DLL
:Debug Version:
:Directory: \DDK\VIDEO\REL\OS2C\DEBUG\BASE\OS2\DLL
*IBMVGA32.DLL
32-Bit VGA Display Driver
:Retail Version:
:Directory: \DDK\VIDEO\REL\OS2C\RETAIL\BASE\OS2\DLL
*IBMDEV32.DLL
:Debug Version:
:Directory: \DDK\VIDEO\REL\OS2C\DEBUG\BASE\OS2\DLL
*IBMDEV32.DLL
===Certification Test Suites Structure===
===Miscellaneous/Other Tools Structure===


==Joystick Virtual Device Driver and Applications==
==Joystick Virtual Device Driver and Applications==

Revision as of 01:28, 28 December 2017

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

DDK Roadmap

This section provides a directory structure overview of the DDK.

Device Driver Build Instructions contains build information and directory roadmaps for the OS/2 device drivers.

Certification Test Suites Structure contains information about a set of tools and test cases designed to assist you in testing OS/2 device drivers.

Miscellaneous/Other Tools Structure contains information about various kernel debuggers, released levels of OS/2 debug kernels, and other useful utilities.

Device Driver Build Instructions

DDK Components
Display Device Drivers and Test Tools
DBCS Device Drivers
Printer Device Drivers and Test Tools
CD-ROM Device Drivers
DASD Device Drivers
Device Driver Test Tool
Input/Output Device Drivers and Test Tools
Multimedia Device Drivers and Test Tools

Display Device Drivers and Test Tools

Display Device Drivers
32-Bit Display Test Tool
32-Bit PM (VGA, SVGA 256 and ISO Fonts)
32-Bit PMVIDEO (Merged XGA/8514/S3 Drivers)
S3GRADD Driver
Base Video Screen Device Drivers(Screen01 and Screen02)
BBS Display Installation
16-Bit SVGA Base Video Handler
Filter GRADD
Generic and OEM PMI Samples
GENGRADD Driver
SVGA Utility
DSPINSTL Action Routine Sample
VGA/8514 Base Video Handler
Virtual XGA Video Device Driver
Virtual Video Display Driver
Palette Display Test Tool
32-Bit Display Test Tool
Tool Description
The 32-Bit Display Test Tool is a Presentation Manager application that enables the user to select one or more tests and execute them. A script interface also is provided, which permits the DTT to run predefined test-case scripts automatically.

The 32-Bit Display Test Tool is also listed as executables, under Certification Test Suites. When you select this tool as a Certification Test Suite, the build instructions are not applicable.

Compilers/Assemblers Required
IBM VisualAge C++ V3.0
OS/2 Toolkit for OS/2 2.1 or later
Build Instructions
  1. Ensure the necessary compilers and assemblers are installed.
  2. Run the SETCMPLR.CMD REXX command file located in the DDK\TOOLS directory. This command initializes environment variables to be used during the build.
    e.g., SETCMPLR <MSCpath> <VACpath> <CSETpath> <DDKpath>
    Where
    <MSCpath> represents the Microsoft C 6.0 install directory
    <VACpath> represents the IBM Visual Age C++ install directory
    <CSETpath> represents the IBM C Set ++ install directory
    <DDKpath> represents the DDK install directory
    Note: A period (.) may be substituted for a compiler directory that is not used during the build.
  3. Change the directory to DDK\VIDEO\SRC\VIDEO\TESTTOOL\DTT.
  4. To build the retail version, invoke NMAKE with target RETOS2C on the resident makefile.
  5. To build the debug version, invoke NMAKE with target DBGOS2C on the resident makefile.
Build Notes:The DDK provides the executables of DTT32, which are located in the DDK\TESTCERT\DISPLAY\FUNCTION\DTT32 directory. If you have modified and rebuilt this test tool, you need to update these executables by copying the files from the DDK\VIDEO\REL\OS2C\RETAIL\BASE\TEST\VIDEO directory.
Files Created by Successful Build
Retail Version:
Directory: \DDK\VIDEO\REL\OS2C\RETAIL\BASE\TEST\VIDEO
  • DTT.EXE
Directory: \DDK\VIDEO\REL\OS2C\RETAIL\BASE\TEST\VIDEO
  • GREARC.DLL
  • GREATT2.DLL
  • GREATTR.DLL
  • GREBIT2.DLL
  • GREBNDS.DLL
  • GREBTMP.DLL
  • GRECLIP.DLL
  • GRECOLR.DLL
  • GREDVCON.DLL
  • GREESC.DLL
  • GREGEN2.DLL
  • GREGENFC.DLL
  • GRELINE.DLL
  • GREMARK.DLL
  • GREMDEV.DLL
  • GREQURY.DLL
  • GRETXTST.DLL
Debug Version:
Directory: \DDK\VIDEO\REL\OS2C\DEBUG\BASE\TEST\VIDEO
  • DTT.EXE
  • GREARC.DLL
  • GREATT2.DLL
  • GREATTR.DLL
  • GREBIT2.DLL
  • GREBNDS.DLL
  • GREBTMP.DLL
  • GRECLIP.DLL
  • GRECOLR.DLL
  • GREDVCON.DLL
  • GREESC.DLL
  • GREGEN2.DLL
  • GREGENFC.DLL
  • GRELINE.DLL
  • GREMARK.DLL
  • GREMDEV.DLL
  • GREQURY.DLL
  • GRETXTS.DLL
32-Bit PM (VGA) Display Driver
Driver Description
The 32-Bit PM (VGA) Display Driver consists of two DLLs: IBMVGA32.DLL and IBMDEV32.DLL. IBMVGA32.DLL contains the device-independent functions of the driver; IBMDEV32.DLL contains all the device-specific functions of the driver. IBMDEV32.DLL needs to be modified in order to port the driver to other video cards. This display driver can be used to support SVGA displays by replacing IBMDEV32.DLL with the corresponding SVGA DLL.
Compilers/Assemblers Required
Microsoft MASM 6.0
Build Instructions
  1. Set the environment variables so the correct tools are picked up during the build.
    e.g., SET PATH=<drive>:\DDK\TOOLS;<drive>:\DDK\VIDEO\TOOLS;%PATH%
    Where <drive> represents your DDK installed drive and DDK represents the DDK installed directory. On the CD-ROM, the TOOLS directory path is DDK\TOOLS.
  2. Before the FIRST build is attempted, run (only once) the COPYASM6.CMD REXX command file in the DDK\TOOLS directory. This command copies the set of needed files from your copy of the Microsoft MASM 6.0 assembler to the proper directories under the DDK base directory.
    e.g., COPYASM6 <MASMdrive>:\'MASM60' <drive>:\DDK
    Where <MASMdrive> represents the Microsoft MASM 6.0 installed drive and 'MASM60' represents the Microsoft MASM 6.0 installed directory, <drive> represents your DDK installed drive and DDK represents the DDK installed directory.
    To build IBMVGA32.DLL:
  3. Change the directory to DDK\VIDEO\SRC\VIDEO\VGA32\IBMVGA32.
  4. To build the retail version, invoke NMAKE with target RETOS2C on the resident makefile.
  5. To build the debug version, invoke NMAKE with target DBGOS2C on the resident makefile.
    To build IBMDEV32.DLL:
  6. Change the directory to DDK\VIDEO\SRC\VIDEO\VGA32\IBMDEV32.
  7. To build the retail version, invoke NMAKE with target RETOS2C on the resident makefile.
  8. To build the debug version, invoke NMAKE with target DBGOS2C on the resident makefile.
Build Notes
  1. IBMVGA32.DLL and IBMDEV32.DLL must be built as a pair. That is, for any changes you make to either one, you must build and use BOTH DLLs.
  2. If the following error message is found during the compile:
fatal error: A1017: out of near memory

remove unnecessary settings from your environment variables and run NMAKE again.

Files Created by Successful Build

32-Bit VGA/SVGA Common

Retail Version:
Directory: \DDK\VIDEO\REL\OS2C\RETAIL\BASE\OS2\DLL
  • IBMVGA32.DLL
Debug Version:
Directory: \DDK\VIDEO\REL\OS2C\DEBUG\BASE\OS2\DLL
  • IBMVGA32.DLL

32-Bit VGA Display Driver

Retail Version:
Directory: \DDK\VIDEO\REL\OS2C\RETAIL\BASE\OS2\DLL
  • IBMDEV32.DLL
Debug Version:
Directory: \DDK\VIDEO\REL\OS2C\DEBUG\BASE\OS2\DLL
  • IBMDEV32.DLL

Certification Test Suites Structure

Miscellaneous/Other Tools Structure

Joystick Virtual Device Driver and Applications

Driver Description
The IBM PC game port adapter provides a simple interface to joysticks and other similar analog devices. This component includes the OS/2 device driver source code for the PDD/VDD pair and OS/2 source code for the JOYTUNE and JOYTEST applications.
Compilers/assemblers Required
  • Microsoft Assembler 5.0
  • IBM C Set ++ V2.01
Build Instructions
  1. Set the environment variables so the correct tools are picked up during the build.
    e.g., SET PATH=<drive>:\DDK\TOOLS;%PATH%
    Where <drive> represents your DDK installed drive and DDK represents the DDK installed directory. On the CD-ROM, the TOOLS directory path is DDK\ TOOLS.
  2. Before the FIRST build is attempted, run (only once) the COPYCSET.CMD REXX command file in the DDK\TOOLS directory. This command copies the set of needed files from your copy of the IBM C Set ++ V2.01 compiler to the proper directories under the DDK base directory.
    e.g., COPYCSET <IBMCdrive>:\'IBMC' <drive>:\DDK
    Where <IBMCdrive> represents the IBM C Set ++ V2.01 installed drive and 'IBMC' represents the IBM C Set ++ V2.01 installed directory, <drive> represents your DDK installed drive and DDK represents the DDK installed directory.
  3. Change the directory to \DDK\BASE\SRC\VDEV\MME\VJOY.
  4. Invoke NMAKE on the resident makefile.
  5. Invoke NMAKE DEBUG to build the debug version.
Files Created By Successful Build
Directory: \DDK\BASE\SRC\VDEV\MME\VJOY
Retail Version:
  • GAMEVDD.SYS
  • JOYTEST.EXE
  • JOYTUNE.EXE
Debug Version:
  • DGAMEVDD.SYS

Joystick Physical Device Driver

Driver Description
The IBM PC game port adapter provides a simple interface to joysticks and other similar analog devices. This component includes the OS/2 device driver source code for the PDD/VDD pair and OS/2 source code for the JOYTUNE and JOYTEST applications.
Compilers/assemblers Required
  • Microsoft Assembler 5.0
  • Microsoft C 6.0
Build Instructions
  1. Set the environment variables so the correct tools are picked up during the build.
    e.g., SET PATH=<drive>:\DDK\TOOLS;%PATH%
    Where <drive> represents your DDK installed drive and DDK represents the DDK installed directory. On the CD-ROM, the TOOLS directory path is DDK\ TOOLS.
  2. Before the FIRST build is attempted, run (only once) the COPYC60.CMD REXX command file in the DDK\TOOLS directory. This command copies the set of needed files from your copy of the Microsoft C 6.0 compiler to the proper directories under the DDK base directory.
    e.g., COPYC60 <MSCdrive>:\'C600' <drive>:\DDK
    Where <MSCdrive> represents the Microsoft C installed drive and 'C600' represents the Microsoft C installed directory, <drive> represents your DDK installed drive and DDK represents the DDK installed directory.
  3. Change the directory to DDK\BASE\SRC\DEV\MME\JOY.
  4. Invoke NMAKE on the resident makefile.
  5. Invoke NMAKE DEBUG to build the debug version.
Files Created By Successful Build
Directory: \DDK\BASE\SRC\DEV\MME\JOY
Retail Version:
  • GAMEDD.SYS
Debug Version:
  • DGAMEDD.SYS

USB Device Driver Sample

Driver Description
The Universal Serial Bus (USB) device driver sample contains source code for USB device drivers and installation protocols. The code includes the base USB device driver stack and the following drivers:
  • Keyboard
  • Mouse
  • Modem
  • Digital audio
Compilers/Assemblers Required
  • Microsoft MASM 5.1 (supplied with the DDK)
  • Microsoft C 6.0
Build Instructions
  1. Set the environment variables so the correct tools are picked up during the build.
    e.g., SET PATH=<drive>:\DDK\TOOLS;%PATH%
    Where <drive> represents your DDK installed drive and DDK represents the DDK installed directory. On the CD-ROM, the TOOLS directory path is \DDK\TOOLS.
  2. Before the FIRST build is attempted, run (only once) the COPYC60.CMD REXX command file in the \DDK\TOOLS directory. This command copies the set of needed files from your copy of the Microsoft C 6.0 compiler to the proper directories under the DDK base directory.
    e.g., COPYC60 <MSCdrive>:\'MSC60' <drive>:\DDK
    Where <MSCdrive> represents the Microsoft C installed drive and "MSC60" represents the Microsoft C installed directory, <drive> represents your DDK installed drive and DDK represents the DDK installed directory.
  3. To ensure the device driver gets created properly on a FAT file system, type SET LANG=US at an OS/2 command prompt before invoking NMAKE.

To build all the USB device drivers:

  1. Change the directory to \DDK\BASE\SRC\DEV\USB.
  2. Invoke NMAKE on the resident makefile.

To build an individual USB device driver:

  1. Change the directory to \DDK\BASE\SRC\DEV\MOUSE\USB.
  2. Change to the directory of the desired USB device driver.
  3. Invoke NMAKE on the resident makefile.
Files Created by Successful Build
Directory: \DDK\BASE\SRC\DEV\USB\USBD
  • USBD.SYS
Directory: \DDK\BASE\SRC\DEV\USB\UHCI
  • USBUHCD.SYS
  • USBUHCD2.SYS
Directory: \DDK\BASE\SRC\DEV\USB\HID
  • USBHID.SYS
Directory: \DDK\BASE\SRC\DEV\USB\USBMOUSE
  • USBMOUSE.SYS
Directory: \DDK\BASE\SRC\DEV\USB\USBKBD
  • USBKBD.SYS
Directory: \DDK\BASE\SRC\DEV\USB\USBAUDIO
  • USBAUDIO.SYS
Directory: \DDK\BASE\SRC\DEV\USB\USBCOM
  • USBCOM.SYS