PSXSDK
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros
Macros | Functions | Variables
cdrom.c File Reference
#include <stdio.h>
#include <stdarg.h>
#include <psx.h>

Macros

#define CDREG(x)   *((unsigned char*)(0x1f801800+x))
 
#define IMASK   *((unsigned int*)0x1f801074)
 

Functions

void _internal_cdrom_handler ()
 
void CdSendCommand (int cmd, int num,...)
 
int CdReadResults (unsigned char *out, int max)
 Reads the results of a low-level CDROM command.
 
void _internal_cdromlib_callback ()
 
void _internal_cdromlib_init ()
 
int CdGetStatus ()
 Gets CDROM drive status.
 
int CdPlayTrack (unsigned int track)
 Play an Audio CD track.
 
unsigned char CdRamRead (unsigned short addr)
 

Variables

void(* cdrom_handler_callback )()
 
volatile int cdrom_command_direct = 0
 
volatile int cdrom_command_done = 0
 
volatile int cdrom_direct_cmd
 
volatile int cdrom_command_dpos = 0
 
volatile unsigned char cdrom_last_command
 
volatile unsigned char cdrom_command_stat [2]
 
unsigned int cdrom_queue_buf [4]
 

Macro Definition Documentation

#define CDREG (   x)    *((unsigned char*)(0x1f801800+x))
#define IMASK   *((unsigned int*)0x1f801074)

Function Documentation

void _internal_cdrom_handler ( )
void _internal_cdromlib_callback ( )
void _internal_cdromlib_init ( void  )
int CdGetStatus ( void  )

Gets CDROM drive status.

Returns
CDROM drive status bitmask
int CdPlayTrack ( unsigned int  track)

Play an Audio CD track.

Returns
1 on success, 0 on failure
unsigned char CdRamRead ( unsigned short  addr)
int CdReadResults ( unsigned char *  out,
int  max 
)

Reads the results of a low-level CDROM command.

Parameters
outPointer to array of chars where the output will be stored
maxMaximum number of bytes to store

Return value: number of results.

void CdSendCommand ( int  cmd,
int  num,
  ... 
)

Variable Documentation

volatile int cdrom_command_direct = 0
volatile int cdrom_command_done = 0
volatile int cdrom_command_dpos = 0
volatile unsigned char cdrom_command_stat[2]
volatile int cdrom_direct_cmd
void(* cdrom_handler_callback)()
volatile unsigned char cdrom_last_command
unsigned int cdrom_queue_buf[4]
Initial value:
= {0x0,
0x0,
(unsigned int)_internal_cdrom_handler,
0x0,
}