home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / cdrom.zip / DDK / BASE / SRC / DEV / DASD / CDROM / OS2CDROM / cdproto.h < prev    next >
C/C++ Source or Header  |  1996-06-18  |  6KB  |  161 lines

  1. /**************************************************************************
  2.  *
  3.  * SOURCE FILE NAME = CDPROTO.H
  4.  *
  5.  * DESCRIPTIVE NAME = C function prototypes for OS/2 CD-ROM Device Mgr
  6.  *
  7.  * Copyright : COPYRIGHT IBM CORPORATION, 1991, 1992
  8.  *             LICENSED MATERIAL - PROGRAM PROPERTY OF IBM
  9.  *             REFER TO COPYRIGHT INSTRUCTION FORM#G120-2083
  10.  *             RESTRICTED MATERIALS OF IBM
  11.  *             IBM CONFIDENTIAL
  12.  *
  13.  * VERSION = V2.0
  14.  *
  15.  * DATE
  16.  *
  17.  * DESCRIPTION
  18.  *
  19.  *
  20.  * FUNCTIONS
  21.  *
  22.  * ENTRY POINTS:
  23.  *
  24.  * DEPENDENCIES:
  25.  *
  26.  * NOTES
  27.  *
  28.  *
  29.  * STRUCTURES
  30.  *
  31.  * EXTERNAL REFERENCES
  32.  *
  33.  * EXTERNAL FUNCTIONS
  34.  *
  35.  * CHANGE ACTIVITY =
  36.  *  DATE      FLAG        APAR   CHANGE DESCRIPTION
  37.  *  --------  ----------  -----  --------------------------------------
  38.  *  05/28/96  @V156096           Sam Detweiler - HP update
  39.  ****************************************************************************/
  40.  
  41. /*---------------------------------------*
  42.  * Function declarations - Static Code   *
  43.  *---------------------------------------*/
  44. USHORT NEAR CD_DriveInit (PRPINITIN, NPUNITCB);
  45. VOID   NEAR CD_Strat1 (PRPH);
  46. VOID   NEAR CD_Strat1b (void);
  47. USHORT NEAR CD_DriveInit (PRPINITIN, NPUNITCB);
  48. USHORT NEAR CD_MediaCheck (PRP_MEDIACHECK, NPUNITCB);
  49. USHORT NEAR CD_BuildBPB (PRP_BUILDBPB, NPUNITCB);
  50. USHORT NEAR CD_Read (PRP_RWV, NPUNITCB);
  51. USHORT NEAR RemovableMedia (PRPH, NPUNITCB);
  52. USHORT NEAR DriveGenIOCTL (PRP_GENIOCTL, NPUNITCB);
  53. USHORT NEAR f_CD_DriveGenIOCTL (PRP_GENIOCTL, NPUNITCB);
  54. USHORT NEAR ResetMedia (PRPH, NPUNITCB);
  55. USHORT NEAR GetLogDriveMap (PRPH, NPUNITCB);
  56. USHORT NEAR SetLogDriveMap (PRPH, NPUNITCB);
  57. USHORT NEAR PartFixedDisks (PRP_PARTFIXEDDISKS, NPUNITCB);
  58. USHORT NEAR GetUnitMap (PRP_GETUNITMAP, NPUNITCB);
  59. USHORT NEAR DiskIO (PBYTE, NPUNITCB);
  60. USHORT NEAR DiskIO_Wait (PBYTE, NPUNITCB);
  61. USHORT NEAR GetVolumeSize (NPUNITCB, ULONG FAR *);
  62. USHORT NEAR ClearCheckCondition (NPUNITCB);
  63. USHORT NEAR GetPlayStatus (NPUNITCB, BOOL FAR *);
  64. USHORT NEAR Tosh_GetDensityCode(NPUNITCB, USHORT FAR *);
  65. USHORT NEAR GetSectorMode(NPUNITCB, USHORT FAR *);
  66. USHORT NEAR Get_UnitCB_Addr (UCHAR, NPUNITCB FAR *);
  67. BOOL   NEAR Strncmp (UCHAR *, UCHAR *, USHORT);
  68. USHORT NEAR Check_MultiSession_Mounted (NPUNITCB, ULONG);
  69. VOID   NEAR SubmitRequestsToADD(NPUNITCB);
  70. USHORT NEAR CmdErr (PRPH, NPUNITCB);
  71. USHORT NEAR WriteErr (PRPH, NPUNITCB);
  72. USHORT NEAR WriteVErr (PRPH, NPUNITCB);
  73. USHORT NEAR StatusDevReady (PRPH, NPUNITCB);
  74. USHORT NEAR StatusComplete (PRPH, NPUNITCB);
  75. USHORT NEAR Submit_ModeSelect (NPUNITCB, USHORT, USHORT);
  76. USHORT NEAR StatusError (PRPH, USHORT);
  77. USHORT NEAR ChainModeSelectRead (NPUNITCB, ULONG, USHORT, ULONG,
  78.                                                   USHORT, USHORT);
  79. USHORT NEAR ReadSector (NPUNITCB, ULONG, USHORT, ULONG, USHORT);
  80. USHORT NEAR CD_Read_2352 (NPUNITCB, ULONG, USHORT, ULONG);
  81. USHORT NEAR ATAPI_Read_2352 (NPUNITCB, ULONG, USHORT, ULONG);
  82. USHORT NEAR Tosh_Read_2048 (NPUNITCB, ULONG, USHORT, ULONG);
  83. USHORT NEAR Tosh_Read_2352 (NPUNITCB, ULONG, USHORT, ULONG);
  84. USHORT NEAR Sony_Read_2048 (NPUNITCB, ULONG, USHORT, ULONG);
  85. USHORT NEAR Sony_Read_2352 (NPUNITCB, ULONG, USHORT, ULONG);
  86.  
  87. USHORT ReadTOC_Leadout (NPUNITCB, NPIORB_CDB);
  88.  
  89. /*
  90. ** cdiorb.c prologs
  91. */
  92. USHORT AllocIORB (NPUNITCB, NPIORB FAR *);
  93. VOID   AllocIORB_Wait (NPUNITCB, NPIORB FAR *);
  94. VOID   FreeIORB (NPUNITCB, NPIORB_CDB);
  95. VOID   BuildIORB_DeviceControl (NPUNITCB, USHORT, NPIORB FAR *);
  96. VOID   BuildIORB_PassthruCDB (NPUNITCB, ULONG, ULONG, NPIORB_CDB FAR *);
  97. VOID   BuildCDB_TestUnitReady(NPUNITCB, NPIORB_CDB FAR *);
  98. VOID   BuildCDB_RezeroUnit(NPUNITCB, NPIORB_CDB FAR *);
  99. VOID   BuildCDB_RequestSense(NPUNITCB, NPIORB_CDB FAR *);
  100. VOID   BuildCDB_Read_6(NPUNITCB, ULONG, USHORT, USHORT,
  101.                                          ULONG, NPIORB_CDB FAR *);
  102. VOID   BuildCDB_Read_10(NPUNITCB, ULONG, USHORT, USHORT,
  103.                                          ULONG, NPIORB_CDB FAR *);
  104. VOID   BuildCDB_Seek_6(NPUNITCB, ULONG, NPIORB_CDB FAR *);
  105. VOID   BuildCDB_Seek_10(NPUNITCB, ULONG, NPIORB_CDB FAR *);
  106. VOID   BuildCDB_Inquiry(NPUNITCB, NPIORB_CDB FAR *);
  107. VOID   BuildCDB_ModeSelect(NPUNITCB, USHORT, USHORT, NPIORB_CDB FAR *);
  108. VOID   BuildCDB_AudioCOntrol(NPUNITCB, NPIORB_CDB FAR *);
  109. VOID   BuildCDB_PreventAllowRemoval(NPUNITCB, USHORT, NPIORB_CDB FAR *);
  110. VOID   BuildCDB_ReadCapacity(NPUNITCB, NPIORB_CDB FAR *);
  111. VOID   BuildCDB_ReadSubChannel(NPUNITCB, USHORT, NPIORB_CDB FAR *);
  112. VOID   BuildCDB_ReadTOC (NPUNITCB, USHORT, USHORT, NPIORB_CDB FAR *);
  113. VOID   BuildCDB_ReadHeader (NPUNITCB, ULONG, NPIORB_CDB FAR *);
  114. VOID   BuildCDB_PauseResume (NPUNITCB, USHORT, NPIORB_CDB FAR *);
  115. VOID   BuildCDB_StartStopUnit (NPUNITCB, USHORT, NPIORB_CDB FAR *);
  116. VOID   BuildCDB_PlayAudio_MSF (NPUNITCB, union AddressType,
  117.                                          union AddressType, NPIORB_CDB FAR *);
  118.  
  119. VOID   _loadds FAR  NotifyDoneIORB(PIORB);
  120. VOID  FAR  InitPost(PIORB);
  121.  
  122. /*-----------------------------------------------*
  123.  * Function declarations for CDBLDCDB  routines  *
  124.  *-----------------------------------------------*/
  125. VOID BuildCBD_ReadCapacity (NPUNITCB, NPIORB FAR *);
  126.  
  127. /*                                                                    @V156096
  128. ** cdhp.c prologs                                                     @V156096
  129. */                                                                  /*@V156096*/
  130. USHORT HP_GetLastSessionAddr( NPUNITCB, ULONG FAR * );              /*@V156096*/
  131.  
  132. /*-------------------------------------------------------*
  133.  * Function declarations for CDASUBR assembler routines  *
  134.  *-------------------------------------------------------*/
  135. VOID   FAR  f_ZeroCB (PBYTE, USHORT);
  136. VOID   FAR  f_BlockCopy (PBYTE, PBYTE, USHORT);
  137. ULONG  FAR  f_add32(ULONG, ULONG);
  138. VOID   FAR  f_SWait (PVOID);
  139. VOID   NEAR SWait (PVOID);
  140. VOID   FAR  f_SSig (PVOID);
  141. VOID   NEAR SSig (PVOID);
  142. VOID   NEAR ZeroFSGS (VOID);
  143. VOID   NEAR PadRaw2340 (UCHAR FAR *, USHORT);
  144.  
  145. ULONG   HSGtoRedBook (ULONG);
  146. ULONG   RedBookToHSG (ULONG);
  147. UCHAR   BCDtoBinary (UCHAR);
  148. UCHAR   BinaryToBCD (UCHAR);
  149.  
  150.  
  151. /*-----------------------------------*
  152.  * Pragma declarations - DevHelps    *
  153.  *-----------------------------------*/
  154. #pragma alloc_text(Code, DevHelp_VMUnLock)
  155. #pragma alloc_text(Code, DevHelp_VMLock)
  156. #pragma alloc_text(Code, DevHelp_VirtToLin)
  157. #pragma alloc_text(Code, DevHelp_AllocReqPacket)
  158. #pragma alloc_text(Code, DevHelp_FreeReqPacket)
  159.  
  160.  
  161.