nds/ipc.h File Reference

#include <nds/jtypes.h>

Data Structures

struct  sTransferSoundData
struct  sTransferSound
struct  sTransferRegion

Defines

#define IPC   getIPC()
#define IPC_PEN_DOWN   BIT(6)
#define IPC_X   BIT(0)
#define IPC_Y   BIT(1)
#define IPC_LID_CLOSED   BIT(7)
#define REG_IPC_SYNC   (*(vuint16*)0x04000180)
#define REG_IPC_FIFO_TX   (*(vu32*)0x4000188)
#define REG_IPC_FIFO_RX   (*(vu32*)0x4100000)
#define REG_IPC_FIFO_CR   (*(vu16*)0x4000184)

Typedefs

typedef struct sTransferSoundData TransferSoundData
typedef struct sTransferSoundDatapTransferSoundData
typedef struct sTransferSound TransferSound
typedef struct sTransferSoundpTransferSound
typedef struct sTransferRegion TransferRegion
typedef struct sTransferRegionpTransferRegion

Enumerations

enum  IPC_SYNC_BITS { IPC_SYNC_IRQ_ENABLE = BIT(14), IPC_SYNC_IRQ_REQUEST = BIT(13) }
enum  IPC_CONTROL_BITS {
  IPC_FIFO_SEND_EMPTY = (1<<0), IPC_FIFO_SEND_FULL = (1<<1), IPC_FIFO_SEND_IRQ = (1<<2), IPC_FIFO_SEND_CLEAR = (1<<3),
  IPC_FIFO_RECV_EMPTY = (1<<8), IPC_FIFO_RECV_FULL = (1<<9), IPC_FIFO_RECV_IRQ = (1<<10), IPC_FIFO_ERROR = (1<<14),
  IPC_FIFO_ENABLE = (1<<15)
}

Functions

static TransferRegion volatile * getIPC ()
static void IPC_SendSync (unsigned int sync)
static int IPC_GetSync ()

Define Documentation

#define IPC   getIPC()

#define IPC_LID_CLOSED   BIT(7)

#define IPC_PEN_DOWN   BIT(6)

#define IPC_X   BIT(0)

#define IPC_Y   BIT(1)

#define REG_IPC_FIFO_CR   (*(vu16*)0x4000184)

#define REG_IPC_FIFO_RX   (*(vu32*)0x4100000)

#define REG_IPC_FIFO_TX   (*(vu32*)0x4000188)

#define REG_IPC_SYNC   (*(vuint16*)0x04000180)


Typedef Documentation

typedef struct sTransferRegion * pTransferRegion

typedef struct sTransferSound * pTransferSound

typedef struct sTransferSoundData * pTransferSoundData

typedef struct sTransferRegion TransferRegion

typedef struct sTransferSound TransferSound

typedef struct sTransferSoundData TransferSoundData


Enumeration Type Documentation

enum IPC_CONTROL_BITS

Enumerator:
IPC_FIFO_SEND_EMPTY 
IPC_FIFO_SEND_FULL 
IPC_FIFO_SEND_IRQ 
IPC_FIFO_SEND_CLEAR 
IPC_FIFO_RECV_EMPTY 
IPC_FIFO_RECV_FULL 
IPC_FIFO_RECV_IRQ 
IPC_FIFO_ERROR 
IPC_FIFO_ENABLE 
00143                       {
00144         IPC_FIFO_SEND_EMPTY     =       (1<<0),
00145         IPC_FIFO_SEND_FULL      =       (1<<1),
00146         IPC_FIFO_SEND_IRQ       =       (1<<2),
00147         IPC_FIFO_SEND_CLEAR     =       (1<<3),
00148         IPC_FIFO_RECV_EMPTY     =       (1<<8),
00149         IPC_FIFO_RECV_FULL      =       (1<<9),
00150         IPC_FIFO_RECV_IRQ       =       (1<<10),
00151         IPC_FIFO_ERROR          =       (1<<14),
00152         IPC_FIFO_ENABLE         =       (1<<15)
00153 };

enum IPC_SYNC_BITS

Enumerator:
IPC_SYNC_IRQ_ENABLE 
IPC_SYNC_IRQ_REQUEST 
00119                    {
00120         IPC_SYNC_IRQ_ENABLE             =       BIT(14),
00121         IPC_SYNC_IRQ_REQUEST    =       BIT(13)
00122 };


Function Documentation

static TransferRegion volatile * getIPC (  )  [inline, static]

00103                                    {
00104         return (TransferRegion volatile *)(0x027FF000);
00105 }

static int IPC_GetSync (  )  [inline, static]

00131                                 {
00132 //---------------------------------------------------------------------------------
00133         return REG_IPC_SYNC & 0x0f;
00134 }

static void IPC_SendSync ( unsigned int  sync  )  [inline, static]

00125                                                    {
00126 //---------------------------------------------------------------------------------
00127         REG_IPC_SYNC = (REG_IPC_SYNC & 0xf0ff) | (((sync) & 0x0f) << 8) | IPC_SYNC_IRQ_REQUEST;
00128 }


Generated on Tue Jan 22 15:48:57 2008 for libnds(ARM9) by  doxygen 1.5.4