DVD subsystem.
More...
Go to the source code of this file.
|
void | DVD_Init () |
| Initializes the DVD subsystem. More...
|
|
void | DVD_Pause () |
|
void | DVD_Reset (u32 reset_mode) |
| Performs a reset of the drive and FW respectively. More...
|
|
s32 | DVD_Mount () |
| Mounts the DVD drive. More...
|
|
s32 | DVD_GetDriveStatus () |
|
s32 | DVD_MountAsync (dvdcmdblk *block, dvdcbcallback cb) |
| Mounts the DVD drive. More...
|
|
s32 | DVD_ControlDrive (dvdcmdblk *block, u32 cmd) |
| Controls the drive's motor and behavior. More...
|
|
s32 | DVD_ControlDriveAsync (dvdcmdblk *block, u32 cmd, dvdcbcallback cb) |
| Controls the drive's motor and behavior. More...
|
|
s32 | DVD_SetGCMOffset (dvdcmdblk *block, s64 offset) |
|
s32 | DVD_SetGCMOffsetAsync (dvdcmdblk *block, s64 offset, dvdcbcallback cb) |
|
s32 | DVD_GetCmdBlockStatus (dvdcmdblk *block) |
|
s32 | DVD_SpinUpDrive (dvdcmdblk *block) |
|
s32 | DVD_SpinUpDriveAsync (dvdcmdblk *block, dvdcbcallback cb) |
|
s32 | DVD_Inquiry (dvdcmdblk *block, dvddrvinfo *info) |
|
s32 | DVD_InquiryAsync (dvdcmdblk *block, dvddrvinfo *info, dvdcbcallback cb) |
|
s32 | DVD_ReadPrio (dvdcmdblk *block, void *buf, u32 len, s64 offset, s32 prio) |
|
s32 | DVD_ReadAbsAsyncPrio (dvdcmdblk *block, void *buf, u32 len, s64 offset, dvdcbcallback cb, s32 prio) |
|
s32 | DVD_ReadAbsAsyncForBS (dvdcmdblk *block, void *buf, u32 len, s64 offset, dvdcbcallback cb) |
|
s32 | DVD_SeekPrio (dvdcmdblk *block, s64 offset, s32 prio) |
|
s32 | DVD_SeekAbsAsyncPrio (dvdcmdblk *block, s64 offset, dvdcbcallback cb, s32 prio) |
|
s32 | DVD_CancelAllAsync (dvdcbcallback cb) |
|
s32 | DVD_StopStreamAtEndAsync (dvdcmdblk *block, dvdcbcallback cb) |
|
s32 | DVD_StopStreamAtEnd (dvdcmdblk *block) |
|
s32 | DVD_ReadDiskID (dvdcmdblk *block, dvddiskid *id, dvdcbcallback cb) |
|
u32 | DVD_SetAutoInvalidation (u32 auto_inv) |
|
dvddiskid * | DVD_GetCurrentDiskID () |
|
dvddrvinfo * | DVD_GetDriveInfo () |
|
◆ DEVICE_TYPE_GAMECUBE_DVD
#define DEVICE_TYPE_GAMECUBE_DVD (('G'<<24)|('D'<<16)|('V'<<8)|'D') |
◆ DVD_GetUserData
#define DVD_GetUserData |
( |
|
block | ) |
((block)->usrdata) |
◆ DVD_SetUserData
◆ dvdcallback
function pointer typedef for the user's DVD operation callback
- Parameters
-
[in] | result | error code of last operation |
[in] | info | pointer to user's file info strucutre |
◆ dvdcbcallback
function pointer typedef for the user's operations callback
◆ dvdcmdblk
forward typedef for struct _dvdcmdblk
This structure is used internally to control the requested operation.
◆ dvddiskid
forward typedef for struct _dvddiskid
This structure holds the game vendors copyright informations.<br>
Additionally it holds certain parameters for audiocontrol and<br>
multidisc support.
- Parameters
-
gamename[4] | vendors game key |
company[2] | vendors company key |
disknum | number of disc when multidisc support is used. |
gamever | version of game |
streaming | flag to control audio streaming |
streambufsize | size of buffer used for audio streaming |
pad[22] | padding |
◆ dvddrvinfo
forward typedef for struct _dvddrvinfo
This structure structure holds the drive version infromation.<br>
Use DVD_Inquiry() to retrieve this information.
- Parameters
-
rev_leve | revision level |
dev_code | device code |
rel_date | release date |
pad[24] | padding |
◆ dvdfileinfo
forward typedef for struct _dvdfileinfo
This structure is used internally to control the requested file operation.
◆ DVD_CancelAllAsync()
◆ DVD_ControlDrive()
Controls the drive's motor and behavior.
This is a synchronous version of DVD_ControlDriveAsync().
- Parameters
-
[in] | block | pointer to a dvdcmdblk structure used to process the operation |
[in] | cmd | command to control the drive. |
- Returns
- none
◆ DVD_ControlDriveAsync()
Controls the drive's motor and behavior.
- Parameters
-
[in] | block | pointer to a dvdcmdblk structure used to process the operation |
[in] | cmd | command to control the drive. |
[in] | cb | callback to be invoked upon completion of operation. |
- Returns
- none
◆ DVD_GetCmdBlockStatus()
◆ DVD_GetCurrentDiskID()
◆ DVD_GetDriveInfo()
◆ DVD_GetDriveStatus()
s32 DVD_GetDriveStatus |
( |
| ) |
|
◆ DVD_Init()
Initializes the DVD subsystem.
You must call this function before calling any other DVD function
- Returns
- none
◆ DVD_Inquiry()
◆ DVD_InquiryAsync()
◆ DVD_Mount()
Mounts the DVD drive.
This is a synchronous version of DVD_MountAsync().
- Returns
- none
◆ DVD_MountAsync()
Mounts the DVD drive.
You <b>must</b> call this function in order to access the DVD.
Following tasks are performed:
- Issue a hard reset to the drive.
- Turn on drive's debug mode.
- Patch drive's FW.
- Enable extensions.
- Read disc ID
The patch code and procedure was taken from the gc-linux DVD device driver.
- Parameters
-
[in] | block | pointer to a dvdcmdblk structure used to process the operation |
[in] | cb | callback to be invoked upon completion of operation |
- Returns
- none
◆ DVD_Pause()
◆ DVD_ReadAbsAsyncForBS()
◆ DVD_ReadAbsAsyncPrio()
◆ DVD_ReadDiskID()
◆ DVD_ReadPrio()
◆ DVD_Reset()
Performs a reset of the drive and FW respectively.
- Parameters
-
[in] | reset_mode | type of reset |
- Returns
- none
◆ DVD_SeekAbsAsyncPrio()
◆ DVD_SeekPrio()
◆ DVD_SetAutoInvalidation()
u32 DVD_SetAutoInvalidation |
( |
u32 |
auto_inv | ) |
|
◆ DVD_SetGCMOffset()
◆ DVD_SetGCMOffsetAsync()
◆ DVD_SpinUpDrive()
◆ DVD_SpinUpDriveAsync()
◆ DVD_StopStreamAtEnd()
◆ DVD_StopStreamAtEndAsync()
◆ __io_gcdvd