SSBM Decomp
Loading...
Searching...
No Matches
mcc.c File Reference
#include <dolphin.h>
#include <dolphin/mcc.h>

Functions

static MCC_ChannelInfo gChannelInfo[16] ATTRIBUTE_ALIGN (32)
static void mccDebugPrint (char *str)
static void callbackEventStream (enum MCC_CHANNEL chID, u32 event, u32 value)
static int SetUsbAdapterMode (u8 mode)
static u8 GetUsbAdapterMode (void)
static int InitializeCodeClear (void)
static int InitializeCodeSet (void)
static int InitializeCodeCheck (void)
static void AsyncResourceClearState (void)
static void AsyncResourceSetState (u16 state)
static void AsyncResourceStateBusy (u8 channel, u16 mode)
static void AsyncResourceStateDone (void)
static u16 AsyncResourceGetStat (void)
static u16 AsyncResourceGetMode (void)
static u8 AsyncResourceGetChannel (void)
static int AsyncResourceIsBusy (void)
static int LoadChannelInfo (MCC_ChannelInfo *info)
static int FlushChannelInfo (MCC_ChannelInfo *info)
static void SetChannelInfoDirty (int dirty)
static void ClearChannelInfo (int i)
static void MakeMemoryMap (u8 *map)
static int IsChannelOpened (enum MCC_CHANNEL chID)
static u8 SearchFreeBlocks (enum MCC_MODE mode, u8 *index)
static int NotifyCompulsorily (enum MCC_CHANNEL chID, u32 notify, u32 timeout)
static int NotifyInit (void)
static int NotifyInitDone (void)
static int NotifyChannelEvent (enum MCC_CHANNEL chID, u32 notify)
static int WaitAMinute (int timeout, volatile int *flag, int value)
static void MailboxCheck (void)
static void MCCExiCallback (void)
static void MCCTxCallback (void)
static void MCCRxCallback (void)
static int mccInitializeCheck (u8 timeout)
int MCCStreamOpen (enum MCC_CHANNEL chID, u8 blockSize)
int MCCStreamClose (enum MCC_CHANNEL chID)
int MCCStreamWrite (enum MCC_CHANNEL chID, void *data, u32 dataBlockSize)
u32 MCCStreamRead (enum MCC_CHANNEL chID, void *data)
int MCCInit (enum MCC_EXI exiChannel, u8 timeout, MCC_CBSysEvent callbackSysEvent)
void MCCExit (void)
int MCCPing (void)
int MCCEnumDevices (MCC_CBEnumDevices callbackEnumDevices)
u8 MCCGetFreeBlocks (enum MCC_MODE mode)
u8 MCCGetLastError (void)
int MCCGetChannelInfo (enum MCC_CHANNEL chID, MCC_Info *info)
int MCCGetConnectionStatus (enum MCC_CHANNEL chID, enum MCC_CONNECT *connect)
int MCCNotify (enum MCC_CHANNEL chID, u32 notify)
u32 MCCSetChannelEventMask (enum MCC_CHANNEL chID, u32 event)
int MCCOpen (enum MCC_CHANNEL chID, u8 blockSize, MCC_CBEvent callbackEvent)
int MCCClose (enum MCC_CHANNEL chID)
int MCCLock (enum MCC_CHANNEL chID)
int MCCUnlock (enum MCC_CHANNEL chID)
int MCCRead (enum MCC_CHANNEL chID, u32 offset, void *data, long size, enum MCC_SYNC_STATE async)
int MCCWrite (enum MCC_CHANNEL chID, u32 offset, void *data, long size, enum MCC_SYNC_STATE async)
int MCCCheckAsyncDone ()

Variables

static volatile int gIsChannelinfoDirty = 1
static void(*volatile gCallbackSysEvent )(enum MCC_SYSEVENTMCC_SYSEVENT)
static int gOtherSideInitDone
static volatile unsigned char gLastError
static int gMccInitialized
static int gMccSession
static volatile int gPingFlag
static volatile unsigned short gAsyncResourceStatus

Function Documentation

◆ ATTRIBUTE_ALIGN()

MCC_ChannelInfo gChannelInfo[16] ATTRIBUTE_ALIGN ( 32 )
static

◆ mccDebugPrint()

void mccDebugPrint ( char * str)
static

◆ callbackEventStream()

void callbackEventStream ( enum MCC_CHANNEL chID,
u32 event,
u32 value )
static

◆ SetUsbAdapterMode()

int SetUsbAdapterMode ( u8 mode)
static

◆ GetUsbAdapterMode()

u8 GetUsbAdapterMode ( void )
static

◆ InitializeCodeClear()

int InitializeCodeClear ( void )
static

◆ InitializeCodeSet()

int InitializeCodeSet ( void )
static

◆ InitializeCodeCheck()

int InitializeCodeCheck ( void )
static

◆ AsyncResourceClearState()

void AsyncResourceClearState ( void )
static

◆ AsyncResourceSetState()

void AsyncResourceSetState ( u16 state)
static

◆ AsyncResourceStateBusy()

void AsyncResourceStateBusy ( u8 channel,
u16 mode )
static

◆ AsyncResourceStateDone()

void AsyncResourceStateDone ( void )
static

◆ AsyncResourceGetStat()

u16 AsyncResourceGetStat ( void )
static

◆ AsyncResourceGetMode()

u16 AsyncResourceGetMode ( void )
static

◆ AsyncResourceGetChannel()

u8 AsyncResourceGetChannel ( void )
static

◆ AsyncResourceIsBusy()

int AsyncResourceIsBusy ( void )
static

◆ LoadChannelInfo()

int LoadChannelInfo ( MCC_ChannelInfo * info)
static

◆ FlushChannelInfo()

int FlushChannelInfo ( MCC_ChannelInfo * info)
static

◆ SetChannelInfoDirty()

void SetChannelInfoDirty ( int dirty)
static

◆ ClearChannelInfo()

void ClearChannelInfo ( int i)
static

isStreamConnection isnt cleared. Intentional?

◆ MakeMemoryMap()

void MakeMemoryMap ( u8 * map)
static

◆ IsChannelOpened()

int IsChannelOpened ( enum MCC_CHANNEL chID)
static

◆ SearchFreeBlocks()

u8 SearchFreeBlocks ( enum MCC_MODE mode,
u8 * index )
static
Bug
I think this will read OOB of the map array by 1.

◆ NotifyCompulsorily()

int NotifyCompulsorily ( enum MCC_CHANNEL chID,
u32 notify,
u32 timeout )
static

◆ NotifyInit()

int NotifyInit ( void )
static

◆ NotifyInitDone()

int NotifyInitDone ( void )
static

◆ NotifyChannelEvent()

int NotifyChannelEvent ( enum MCC_CHANNEL chID,
u32 notify )
static

◆ WaitAMinute()

int WaitAMinute ( int timeout,
volatile int * flag,
int value )
static

◆ MailboxCheck()

void MailboxCheck ( void )
static

◆ MCCExiCallback()

void MCCExiCallback ( void )
static

◆ MCCTxCallback()

void MCCTxCallback ( void )
static

◆ MCCRxCallback()

void MCCRxCallback ( void )
static

◆ mccInitializeCheck()

int mccInitializeCheck ( u8 timeout)
static

◆ MCCStreamOpen()

int MCCStreamOpen ( enum MCC_CHANNEL chID,
u8 blockSize )

◆ MCCStreamClose()

int MCCStreamClose ( enum MCC_CHANNEL chID)

◆ MCCStreamWrite()

int MCCStreamWrite ( enum MCC_CHANNEL chID,
void * data,
u32 dataBlockSize )

◆ MCCStreamRead()

u32 MCCStreamRead ( enum MCC_CHANNEL chID,
void * data )

◆ MCCInit()

int MCCInit ( enum MCC_EXI exiChannel,
u8 timeout,
MCC_CBSysEvent callbackSysEvent )

◆ MCCExit()

void MCCExit ( void )

◆ MCCPing()

int MCCPing ( void )

◆ MCCEnumDevices()

int MCCEnumDevices ( MCC_CBEnumDevices callbackEnumDevices)

◆ MCCGetFreeBlocks()

u8 MCCGetFreeBlocks ( enum MCC_MODE mode)

◆ MCCGetLastError()

u8 MCCGetLastError ( void )

wrong print?

◆ MCCGetChannelInfo()

int MCCGetChannelInfo ( enum MCC_CHANNEL chID,
MCC_Info * info )

◆ MCCGetConnectionStatus()

int MCCGetConnectionStatus ( enum MCC_CHANNEL chID,
enum MCC_CONNECT * connect )

◆ MCCNotify()

int MCCNotify ( enum MCC_CHANNEL chID,
u32 notify )

◆ MCCSetChannelEventMask()

u32 MCCSetChannelEventMask ( enum MCC_CHANNEL chID,
u32 event )

◆ MCCOpen()

int MCCOpen ( enum MCC_CHANNEL chID,
u8 blockSize,
MCC_CBEvent callbackEvent )

◆ MCCClose()

int MCCClose ( enum MCC_CHANNEL chID)

◆ MCCLock()

int MCCLock ( enum MCC_CHANNEL chID)

◆ MCCUnlock()

int MCCUnlock ( enum MCC_CHANNEL chID)

◆ MCCRead()

int MCCRead ( enum MCC_CHANNEL chID,
u32 offset,
void * data,
long size,
enum MCC_SYNC_STATE async )

◆ MCCWrite()

int MCCWrite ( enum MCC_CHANNEL chID,
u32 offset,
void * data,
long size,
enum MCC_SYNC_STATE async )

◆ MCCCheckAsyncDone()

int MCCCheckAsyncDone ( )

Variable Documentation

◆ gIsChannelinfoDirty

volatile int gIsChannelinfoDirty = 1
static

◆ gCallbackSysEvent

void(*volatile gCallbackSysEvent) (enum MCC_SYSEVENT) ( enum MCC_SYSEVENT)
static

◆ gOtherSideInitDone

int gOtherSideInitDone
static

◆ gLastError

volatile unsigned char gLastError
static

◆ gMccInitialized

int gMccInitialized
static

◆ gMccSession

int gMccSession
static

◆ gPingFlag

volatile int gPingFlag
static

◆ gAsyncResourceStatus

volatile unsigned short gAsyncResourceStatus
static