|
sdk-core v2026.11.05
PS2 SDK - core tier (build-critical EE/IOP modules)
|
#include <stdio.h>#include <kernel.h>#include <sifrpc.h>#include <libcdvd.h>#include <libcdvd-rpc.h>#include <string.h>#include <iopcontrol.h>#include "internal.h"Go to the source code of this file.
Classes | |
| union | nCmdSendParams_t |
| struct | _cdvd_read_data_1400 |
| struct | _cdvd_read_data_1300 |
Macros | |
| #define | CD_SERVER_NCMD 0x80000595 |
Enumerations | |
| enum | CdvdStCmd_t { CDVD_ST_CMD_START = 1 , CDVD_ST_CMD_READ , CDVD_ST_CMD_STOP , CDVD_ST_CMD_SEEK , CDVD_ST_CMD_INIT , CDVD_ST_CMD_STAT , CDVD_ST_CMD_PAUSE , CDVD_ST_CMD_RESUME , CDVD_ST_CMD_SEEKF } |
| enum | CD_NCMD_CMDS { CD_NCMD_READ = 0x01 , CD_NCMD_CDDAREAD , CD_NCMD_DVDREAD , CD_NCMD_GETTOC , CD_NCMD_SEEK , CD_NCMD_STANDBY , CD_NCMD_STOP , CD_NCMD_PAUSE , CD_NCMD_STREAM , CD_NCMD_CDDASTREAM , CD_NCMD_READ_KEY , CD_NCMD_NCMD , CD_NCMD_READIOPMEM , CD_NCMD_DISKREADY , CD_NCMD_READCHAIN } |
Functions | |
| int | sceCdStream (u32 lbn, u32 nsectors, void *buf, CdvdStCmd_t cmd, sceCdRMode *rm) |
| int | sceCdCddaStream (u32 lbn, u32 nsectors, void *buf, CdvdStCmd_t cmd, sceCdRMode *rm) |
| int | _CdCheckNCmd (int cmd) |
| SifRpcClientData_t clientNCmd | __attribute__ ((aligned(64))) |
| u32 cdda_st_buf[64/sizeof(u32)] | ALIGNED (64) |
| int | sceCdNCmdDiskReady (void) |
| void | _CdAlignReadBuffer (void *data) |
| int | sceCdRead (u32 lbn, u32 sectors, void *buf, sceCdRMode *mode) |
| int | sceCdReadDVDV (u32 lbn, u32 nsectors, void *buf, sceCdRMode *rm) |
| int | sceCdReadCDDA (u32 lbn, u32 nsectors, void *buf, sceCdRMode *rm) |
| int | sceCdGetToc (u8 *toc) |
| int | sceCdSeek (u32 lbn) |
| int | sceCdStandby (void) |
| int | sceCdStop (void) |
| int | sceCdPause (void) |
| int | sceCdApplyNCmd (u8 cmdNum, const void *inBuff, u16 inBuffSize) |
| int | sceCdReadIOPMem (u32 lbn, u32 sectors, void *buf, sceCdRMode *mode) |
| int | sceCdReadChain (sceCdRChain *readChain, sceCdRMode *mode) |
| u32 | sceCdGetReadPos (void) |
| int | sceCdStStart (u32 lbn, sceCdRMode *mode) |
| int | sceCdStRead (u32 sectorType, u32 *buffer, u32 mode, u32 *error) |
| int | sceCdStStop (void) |
| int | sceCdStSeek (u32 lbn) |
| int | sceCdStInit (u32 buffSize, u32 numBuffers, void *buf) |
| int | sceCdStStat (void) |
| int | sceCdStPause (void) |
| int | sceCdStResume (void) |
| int | sceCdSync (int mode) |
| int | sceCdReadKey (unsigned char arg1, unsigned char arg2, unsigned int command, unsigned char *key) |
Variables | |
| int | nCmdSemaId |
| int | nCmdNum = 0 |
| int | streamStatus = 0 |
| sceCdRMode | dummyMode |
| int | initVersionCdvdfsv |
| SifRpcClientData_t | clientNCmd |
| u32 | readStreamData [5] |
| u32 | readData [6] |
| sceCdRChain | readChainData [66] |
| u32 | getTocSendBuff [3] |
| u32 | _rd_intr_data [64] |
| u32 | curReadPos |
| u8 | tocBuff [2064] |
| u8 | nCmdRecvBuff [48] |
| nCmdSendParams_t | nCmdSendBuff |
| u32 | seekSector |
| u32 | cdda_st_buf [64/sizeof(u32)] |
Function definitions for libsceCdvd (EE side calls to the iop module sceCdvdfsv).
NOTE: These functions will work with the CDVDMAN/CDVDFSV or XCDVDMAN/XCDVDFSV modules stored in rom0.
NOTE: not all functions work with each set of modules!
Definition in file ncmd.c.
| #define CD_SERVER_NCMD 0x80000595 |
| enum CD_NCMD_CMDS |
| enum CdvdStCmd_t |
| SifRpcClientData_t clientNCmd __attribute__ | ( | (aligned(64)) | ) |
|
extern |
| int _CdCheckNCmd | ( | int | cmd | ) |
| int sceCdApplyNCmd | ( | u8 | cmdNum, |
| const void * | inBuff, | ||
| u16 | inBuffSize ) |
| int sceCdCddaStream | ( | u32 | lbn, |
| u32 | nsectors, | ||
| void * | buf, | ||
| CdvdStCmd_t | cmd, | ||
| sceCdRMode * | rm ) |
| u32 sceCdGetReadPos | ( | void | ) |
| int sceCdGetToc | ( | u8 * | toc | ) |
| int sceCdNCmdDiskReady | ( | void | ) |
| int sceCdPause | ( | void | ) |
pauses ps2 sceCd drive non-blocking, requires sceCdSync() call
| int sceCdRead | ( | u32 | lbn, |
| u32 | sectors, | ||
| void * | buffer, | ||
| sceCdRMode * | mode ) |
read data from disc non-blocking, requires sceCdSync() call
| lbn | sector location to start reading from |
| sectors | number of sectors to read |
| buffer | buffer to read to |
| mode | mode to read as |
| int sceCdReadCDDA | ( | u32 | lbn, |
| u32 | nsectors, | ||
| void * | buf, | ||
| sceCdRMode * | rm ) |
| int sceCdReadChain | ( | sceCdRChain * | tag, |
| sceCdRMode * | mode ) |
do a 'chain' of reads with one command last chain value must be all 0xFFFFFFFF (max of 64 reads can be set at once) non-blocking, requires sceCdSync() call
SUPPORTED IN XCDVDMAN/XCDVDFSV ONLY
| tag | pointer to an array of read chain data |
| mode | read mode |
| int sceCdReadDVDV | ( | u32 | lbn, |
| u32 | nsectors, | ||
| void * | buf, | ||
| sceCdRMode * | rm ) |
| int sceCdReadIOPMem | ( | u32 | lbn, |
| u32 | sectors, | ||
| void * | buf, | ||
| sceCdRMode * | mode ) |
| int sceCdReadKey | ( | unsigned char | arg1, |
| unsigned char | arg2, | ||
| unsigned int | command, | ||
| unsigned char * | key ) |
| int sceCdSeek | ( | u32 | lbn | ) |
seek to given sector on disc non-blocking, requires sceCdSync() call
| lbn | sector to seek to on disc |
| int sceCdStandby | ( | void | ) |
puts ps2 sceCd drive into standby mode non-blocking, requires sceCdSync() call
| int sceCdStInit | ( | u32 | bufmax, |
| u32 | bankmax, | ||
| void * | buffer ) |
| int sceCdStop | ( | void | ) |
stops ps2 sceCd drive from spinning non-blocking, requires sceCdSync() call
| int sceCdStPause | ( | void | ) |
| int sceCdStRead | ( | u32 | sectors, |
| u32 * | buffer, | ||
| u32 | mode, | ||
| u32 * | error ) |
| int sceCdStream | ( | u32 | lbn, |
| u32 | nsectors, | ||
| void * | buf, | ||
| CdvdStCmd_t | cmd, | ||
| sceCdRMode * | rm ) |
| int sceCdStResume | ( | void | ) |
| int sceCdStSeek | ( | u32 | lbn | ) |
| int sceCdStStart | ( | u32 | lbn, |
| sceCdRMode * | mode ) |
| int sceCdStStat | ( | void | ) |
| int sceCdStStop | ( | void | ) |
| int sceCdSync | ( | int | mode | ) |
| sceCdRMode dummyMode |
|
extern |
get toc
|
extern |
toc buffer (for sceCdGetToc())