📄 dvd_interface.h
字号:
/*
* +-------------------------------------------------------------------+
* | Copyright (c) 1995,1996,1997 by Philips Semiconductors. |
* | |
* | This software is furnished under a license and may only be used |
* | and copied in accordance with the terms and conditions of such a |
* | license and with the inclusion of this copyright notice. This |
* | software or any other copies of this software may not be provided |
* | or otherwise made available to any other person. The ownership |
* | and title of this software is not transferred. |
* | |
* | The information in this software is subject to change without |
* | any prior notice and should not be construed as a commitment by |
* | Philips Semiconductors. |
* | |
* | This code and information is provided "as is" without any |
* | warranty of any kind, either expressed or implied, including but |
* | not limited to the implied warranties of merchantability and/or |
* | fitness for any particular purpose. |
* +-------------------------------------------------------------------+
*
*
* Module name : DVD_Interface.h 1.1
*
* Last update : 11:47:15 - 98/11/06
*
* Description : (Authentication) Interface to DVD
*
*/
#ifndef _DVDD_INT_H_
#define _DVDD_INT_H_
/*----------------------------- includes ------------------------------------*/
#if defined(__cplusplus)
extern "C" {
#endif
#include <tmtypes.h>
/*------------------------- functions ----------------------------------------*/
/*
* Open problem: how do we get handles to drives and titles??
*/
typedef Int dvdIntDrive;
typedef Int dvdIntTitle;
#ifdef __TCS__
#define DLLIMPORT
#define KK
#else
#define DLLIMPORT __declspec(dllimport)
#define KK _stdcall
#endif
#define NOERROR 0x0
#define ERROR_NOAUTHREQUIRE 0x1
#define ERROR_NODVDDISK 0x2
#define ERROR_DRIVEOPEN 0x4
#define ERROR_UNSUPPORTED_DRIVE 0x8
#define ERROR_NO_KERNEL_DRIVER 0x10
#define ERROR_UNKNOWN 0x80
/*------------------------- functions ----------------------------------------*/
/*
* Function : Open a drive, and return a handle
* Parameters : ??? How do we specify a drive?
* Function Result : resulting error condition
*/
extern DLLIMPORT Int KK dvdIntOpenDrive(dvdIntDrive *drive);
/*
* Function : Close a drive
* Parameters : drive (I) drive to close
* Function Result : resulting error condition
*/
extern DLLIMPORT void KK dvdIntCloseDrive( dvdIntDrive drive );
/*
* Function : Put a challenge to specified drive
* Parameters : drive (I) drive to put challenge to
* challenge (I) challenge to put
* Function Result : resulting error condition
*/
extern DLLIMPORT Int KK dvdIntPutDrvChallenge( dvdIntDrive drive, Byte challenge[10] );
/*
* Function : Get response on challenge from specified drive
* Parameters : drive (I) drive to get response from
* response (O) response to get.
* Function Result : resulting error condition
*/
extern DLLIMPORT Int KK dvdIntGetDrvResponse( dvdIntDrive drive, Byte response[5] );
/*
* Function : Get challenge from specified drive
* Parameters : drive (I) drive to get challenge from
* challenge (O) challenge to get.
* Function Result : resulting error condition
*/
extern DLLIMPORT Int KK dvdIntGetDecChallenge( dvdIntDrive drive, Byte challenge[10] );
/*
* Function : Put response on previously obtained challenge
* to specified drive
* Parameters : drive (I) drive to put response to
* response (O) response to get
* Function Result : resulting error condition
*/
extern DLLIMPORT Int KK dvdIntPutDecResponse( dvdIntDrive drive, Byte response[5] );
/*
* Function : Get bus encoded disc key from specified drive
* Parameters : drive (I) drive to get key from
* bedk (O) key to get
* Function Result : resulting error condition
*/
extern DLLIMPORT Int KK dvdIntGetEncDiscKey( dvdIntDrive drive, Byte bedk[2045] );
/*
* Function : Get bus encoded title key from specified drive and title
* Parameters : drive (I) drive to get key from
* title (I) title to get key from
* betk (O) key to get
* Function Result : resulting error condition
*/
extern DLLIMPORT Int KK dvdIntGetEncTitleKey( dvdIntDrive drive, /* dvdIntTitle title, */ Byte betk[5] );
#endif /* _DVDD_INT_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -