Minor improved cellAudio module. More dummy modules created. Some modules are not included to the project. If you want to implement a function of any of these modules, add the corresponding file to the project first.

This commit is contained in:
O1L 2013-09-30 20:35:28 +04:00
parent 784fc571b3
commit 23ece01a0b
6 changed files with 905 additions and 180 deletions

View File

@ -61,40 +61,29 @@ CELL_SOUND_SYNTH2_ERROR_INVALID_PARAMETER = 0x80310202,
CELL_SOUND_SYNTH2_ERROR_ALREADY_INITIALIZED = 0x80310203,
};
#define __CSTD
typedef __CSTD uint32_t sys_timer_t;
typedef __CSTD int64_t system_time_t;
typedef __CSTD uint64_t usecond_t;
typedef __CSTD uint32_t second_t;
typedef __CSTD uint32_t sys_event_queue_t;
typedef __CSTD uint32_t sys_event_port_t;
typedef __CSTD uint32_t sys_event_type_t;
typedef __CSTD uint64_t sys_ipc_key_t;
typedef __CSTD uintptr_t lparaddr_t;
typedef __CSTD uintptr_t sys_addr_t;
typedef __CSTD uint32_t sys_memory_t;
typedef __CSTD uint32_t sys_memory_container_t;
#undef __CSTD
//libaudio datatyps
struct CellAudioPortParam
{
uint64_t nChannel;
uint64_t nBlock;
uint64_t attr;
u64 nChannel;
u64 nBlock;
u64 attr;
float level;
};
struct CellAudioPortConfig
{
sys_addr_t readIndexAddr;
uint32_t status;
uint64_t nChannel;
uint64_t nBlock;
uint32_t portSize;
sys_addr_t portAddr;
u32 readIndexAddr;
u32 status;
u64 nChannel;
u64 nBlock;
u32 portSize;
u32 portAddr;
};
CellAudioPortParam current_AudioPortParam;
CellAudioPortConfig current_AudioPortConfig;
//libmixer datatypes
typedef void * CellAANHandle;
@ -102,23 +91,25 @@ typedef void * CellAANHandle;
struct CellSSPlayerConfig
{
uint32_t channels;
uint32_t outputMode;
u32 channels;
u32 outputMode;
};
struct CellSSPlayerWaveParam
{
void *addr;
int format;
uint32_t samples;
uint32_t loopStartOffset;
uint32_t startOffset;
u32 samples;
u32 loopStartOffset;
u32 startOffset;
};
CellSSPlayerWaveParam current_SSPlayerWaveParam;
struct CellSSPlayerCommonParam
{
uint32_t loopMode;
uint32_t attackMode;
u32 loopMode;
u32 attackMode;
};
struct CellSurMixerPosition
@ -137,16 +128,16 @@ CellSurMixerPosition position;
struct CellSurMixerConfig
{
int32_t priority;
uint32_t chStrips1;
uint32_t chStrips2;
uint32_t chStrips6;
uint32_t chStrips8;
s32 priority;
u32 chStrips1;
u32 chStrips2;
u32 chStrips6;
u32 chStrips8;
};
struct CellSurMixerChStripParam
{
uint32_t param;
u32 param;
void *attribute;
int dBSwitch;
float floatVal;
@ -158,105 +149,120 @@ int intVal;
struct CellSnd3DataCtx
{
int8_t system; //[CELL_SND3_DATA_CTX_SIZE], unknown identifier
s8 system; //[CELL_SND3_DATA_CTX_SIZE], unknown identifier
};
struct CellSnd3SmfCtx
{
int8_t system; //[CELL_SND3_SMF_CTX_SIZE], unknown identifier
s8 system; //[CELL_SND3_SMF_CTX_SIZE], unknown identifier
};
struct CellSnd3KeyOnParam
{
uint8_t vel;
uint8_t pan;
uint8_t panEx;
int32_t addPitch;
u8 vel;
u8 pan;
u8 panEx;
s32 addPitch;
};
struct CellSnd3VoiceBitCtx
{
uint32_t core; //[CELL_SND3_MAX_CORE], unknown identifier
u32 core; //[CELL_SND3_MAX_CORE], unknown identifier
};
struct CellSnd3RequestQueueCtx
{
void *frontQueue;
uint32_t frontQueueSize;
u32 frontQueueSize;
void *rearQueue;
uint32_t rearQueueSize;
u32 rearQueueSize;
};
//libsynt2 datatypes
struct CellSoundSynth2EffectAttr
{
uint16_t core;
uint16_t mode;
int16_t depth_L;
int16_t depth_R;
uint16_t delay;
uint16_t feedback;
u16 core;
u16 mode;
s16 depth_L;
s16 depth_R;
u16 delay;
u16 feedback;
};
//*libaudio functions*//
bool g_is_audio_initialized = false;
int cellAudioInit (void)
{
UNIMPLEMENTED_FUNC(cellAudio);
if(g_is_audio_initialized) return CELL_AUDIO_ERROR_ALREADY_INIT;
g_is_audio_initialized = true;
return CELL_OK;
}
int32_t cellAudioQuit(void)
s32 cellAudioQuit(void)
{
UNIMPLEMENTED_FUNC(cellAudio);
if (g_is_audio_initialized) return CELL_AUDIO_ERROR_NOT_INIT;
g_is_audio_initialized = false;
return CELL_OK;
}
// Audio Ports Setting/Operation Functions
int cellAudioPortOpen () //CellAudioPortParam *audioParam, uint32_t *portNum
bool g_is_audio_port_open = false;
int cellAudioPortOpen () //CellAudioPortParam *audioParam, u32 *portNum
{
UNIMPLEMENTED_FUNC(cellAudio);
if(g_is_audio_port_open) return CELL_AUDIO_ERROR_PORT_OPEN;
g_is_audio_port_open = true;
return CELL_OK;
}
int cellAudioPortClose (u32 portNum)
{
UNIMPLEMENTED_FUNC(cellAudio);
if(g_is_audio_port_open) return CELL_AUDIO_ERROR_PORT_NOT_OPEN;
g_is_audio_port_open = false;
return CELL_OK;
}
bool g_is_audio_port_start = false;
int cellAudioPortStart (u32 portNum)
{
UNIMPLEMENTED_FUNC(cellAudio);
if(g_is_audio_port_start) return CELL_AUDIO_ERROR_PORT_ALREADY_RUN;
g_is_audio_port_start = true;
return CELL_OK;
}
int cellAudioPortStop (u32 portNum)
{
UNIMPLEMENTED_FUNC(cellAudio);
if(g_is_audio_port_start) return CELL_AUDIO_ERROR_PORT_NOT_RUN;
g_is_audio_port_start = false;
return CELL_OK;
}
int cellAudioGetPortTimestamp () //u32 portNum, u64 tag, u64 *stamp
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int cellAudioPortStart (uint32_t portNum)
int cellAudioGetPortConfig () //u32 portNum, CellAudioPortConfig *portConfig
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int cellAudioPortClose (uint32_t portNum)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int cellAudioPortStop (uint32_t portNum)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int cellAudioGetPortConfig () //uint32_t portNum, CellAudioPortConfig *portConfig
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int cellAudioGetPortBlockTag () //uint32_t portNum, uint64_t blockNo, uint64_t *tag
int cellAudioGetPortBlockTag () //u32 portNum, u64 blockNo, u64 *tag
{
UNIMPLEMENTED_FUNC (cellAudio);
return CELL_OK;
}
int cellAudioGetPortTimestamp () //uint32_t portNum, uint64_t tag, usecond_t *stamp
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int cellAudioSetPortLevel (uint32_t portNum, float level)
int cellAudioSetPortLevel (u32 portNum, float level)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
@ -264,61 +270,61 @@ int cellAudioSetPortLevel (uint32_t portNum, float level)
// Utility Functions
int cellAudioCreateNotifyEventQueue () //sys_event_queue_t *id, sys_ipc_key_t *key
int cellAudioCreateNotifyEventQueue () //u32 *id, u64 *key
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int cellAudioCreateNotifyEventQueueEx (sys_event_queue_t *id, sys_ipc_key_t *key, uint32_t iFlags)
int cellAudioCreateNotifyEventQueueEx (u32 *id, u64 *key, u32 iFlags)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int cellAudioSetNotifyEventQueue (sys_ipc_key_t key)
int cellAudioSetNotifyEventQueue (u64 key)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int cellAudioSetNotifyEventQueueEx (sys_ipc_key_t key, uint32_t iFlags)
int cellAudioSetNotifyEventQueueEx (u64 key, u32 iFlags)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int cellAudioRemoveNotifyEventQueue (sys_ipc_key_t key)
int cellAudioRemoveNotifyEventQueue (u64 key)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int cellAudioRemoveNotifyEventQueueEx (sys_ipc_key_t key, uint32_t iFlags)
int cellAudioRemoveNotifyEventQueueEx (u64 key, u32 iFlags)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int cellAudioAddData () //uint32_t portNum, float *src, unsigned int samples, float volume
int cellAudioAddData () //u32 portNum, float *src, unsigned int samples, float volume
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int cellAudioAdd2chData () //uint32_t portNum, float *src, unsigned int samples, float volume
int cellAudioAdd2chData () //u32 portNum, float *src, unsigned int samples, float volume
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int cellAudioMiscSetAccessoryVolume (uint32_t devNum, float volume)
int cellAudioMiscSetAccessoryVolume (u32 devNum, float volume)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int cellAudioSendAck (uint64_t data3)
int cellAudioSendAck (u64 data3)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
@ -336,32 +342,33 @@ int cellAudioUnsetPersonalDevice (int iPersonalStream)
return CELL_OK;
}
int cellAudioAdd6chData (uint32_t portNum, float *src, float volume)
int cellAudioAdd6chData (u32 portNum, float *src, float volume)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
//Callback Functions
typedef int (*CellSurMixerNotifyCallbackFunction)(void *arg, uint32_t counter, uint32_t samples); //Currently unused.
typedef int (*CellSurMixerNotifyCallbackFunction)(void *arg, u32 counter, u32 samples); //Currently unused.
//*libmixer Functions, NON active in this moment*//
int cellAANConnect (CellAANHandle receive, uint32_t receivePortNo, CellAANHandle source, uint32_t sourcePortNo)
int cellAANConnect (CellAANHandle receive, u32 receivePortNo, CellAANHandle source, u32 sourcePortNo)
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
int cellAANDisconnect (CellAANHandle receive, uint32_t receivePortNo, CellAANHandle source, uint32_t sourcePortNo)
int cellAANDisconnect (CellAANHandle receive, u32 receivePortNo, CellAANHandle source, u32 sourcePortNo)
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
int cellAANAddData (CellAANHandle handle, uint32_t port, uint32_t offset, float *addr, uint32_t samples)
int cellAANAddData (CellAANHandle handle, u32 port, u32 offset, float *addr, u32 samples)
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
@ -379,61 +386,61 @@ int cellSSPlayerRemove (CellAANHandle handle)
return 0;
}
int cellSSPlayerSetWave (CellAANHandle handle, CellSSPlayerWaveParam *waveInfo, CellSSPlayerCommonParam *commonInfo)
int cellSSPlayerSetWave () //CellAANHandle handle, CellSSPlayerWaveParam *waveInfo, CellSSPlayerCommonParam *commonInfo //mem_class_t waveInfo
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
int cellSSPlayerPlay (CellAANHandle handle, CellSSPlayerRuntimeInfo *info)
int cellSSPlayerPlay () //CellAANHandle handle, CellSSPlayerRuntimeInfo *info
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
int cellSSPlayerStop (CellAANHandle handle, uint32_t mode)
int cellSSPlayerStop () //CellAANHandle handle, u32 mode
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
int cellSSPlayerSetParam (CellAANHandle handle, CellSSPlayerRuntimeInfo *info)
int cellSSPlayerSetParam () //CellAANHandle handle, CellSSPlayerRuntimeInfo *info
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
int32_t cellSSPlayerGetState (CellAANHandle handle)
s32 cellSSPlayerGetState () //CellAANHandle handle
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
int cellSurMixerCreate (const CellSurMixerConfig *config)
int cellSurMixerCreate () //const CellSurMixerConfig *config
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
int cellSurMixerGetAANHandle (CellAANHandle *handle)
int cellSurMixerGetAANHandle () //CellAANHandle *handle
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
int cellSurMixerChStripGetAANPortNo (uint32_t *port, uint32_t type, uint32_t index)
int cellSurMixerChStripGetAANPortNo () //u32 *port, u32 type, u32 index
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
int cellSurMixerSetNotifyCallback (CellSurMixerNotifyCallbackFunction callback, void *arg)
int cellSurMixerSetNotifyCallback () //CellSurMixerNotifyCallbackFunction callback, void *arg
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
int cellSurMixerRemoveNotifyCallback (CellSurMixerNotifyCallbackFunction callback)
int cellSurMixerRemoveNotifyCallback () //CellSurMixerNotifyCallbackFunction callback
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
@ -445,43 +452,43 @@ int cellSurMixerStart(void)
return 0;
}
int cellSurMixerSurBusAddData (uint32_t busNo, uint32_t offset, float *addr, uint32_t samples)
int cellSurMixerSurBusAddData () //u32 busNo, u32 offset, float *addr, u32 samples
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
int cellSurMixerSetParameter (uint32_t param, float value)
int cellSurMixerSetParameter () //u32 param, float value
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
int cellSurMixerChStripSetParameter (uint32_t type, uint32_t index, CellSurMixerChStripParam *param)
int cellSurMixerChStripSetParameter () //u32 type, u32 index, CellSurMixerChStripParam *param
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
int cellSurMixerPause() //uint32_t switch
int cellSurMixerPause() //u32 switch
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
int cellSurMixerGetCurrentBlockTag (uint64_t *tag)
int cellSurMixerGetCurrentBlockTag () //u64 *tag
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
int cellSurMixerGetTimestamp (uint64_t tag, usecond_t *stamp)
int cellSurMixerGetTimestamp () //u64 tag, u64 *stamp
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
void cellSurMixerBeep (void *arg);
void cellSurMixerBeep (); //void *arg
float cellSurMixerUtilGetLevelFromDB () //float dB
{
@ -509,315 +516,315 @@ int cellSurMixerFinalize(void); //Currently unused. Returns 0 (in the current re
//*libsnd3 Functions, NON active in this moment*//
int32_t cellSnd3Init (uint32_t maxVoice, uint32_t samples, CellSnd3RequestQueueCtx *queue)
s32 cellSnd3Init () //u32 maxVoice, u32 samples, CellSnd3RequestQueueCtx *queue
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3Exit (void)
s32 cellSnd3Exit (void)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3SetOutputMode (uint32_t mode)
s32 cellSnd3SetOutputMode () //u32 mode
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3Synthesis (float *pOutL, float *pOutR)
s32 cellSnd3Synthesis () //float *pOutL, float *pOutR
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3SynthesisEx (float *pOutL, float *pOutR, float *pOutRL, float *pOutRR)
s32 cellSnd3SynthesisEx () //float *pOutL, float *pOutR, float *pOutRL, float *pOutRR
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3VoiceSetReserveMode (uint32_t voiceNum, uint32_t reserveMode)
s32 cellSnd3VoiceSetReserveMode () //u32 voiceNum, u32 reserveMode
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3BindSoundData (CellSnd3DataCtx *snd3Ctx, void *hd3, uint32_t synthMemOffset)
s32 cellSnd3BindSoundData () //CellSnd3DataCtx *snd3Ctx, void *hd3, u32 synthMemOffset
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3UnbindSoundData (uint32_t hd3ID)
s32 cellSnd3UnbindSoundData (u32 hd3ID)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3NoteOnByTone () //uint32_t hd3ID, uint32_t toneIndex, uint32_t note, uint32_t keyOnID, CellSnd3KeyOnParam *keyOnParam
s32 cellSnd3NoteOnByTone () //u32 hd3ID, u32 toneIndex, u32 note, u32 keyOnID, CellSnd3KeyOnParam *keyOnParam
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK; //it's NOT real value
//TODO
}
int32_t cellSnd3KeyOnByTone () //uint32_t hd3ID, uint32_t toneIndex, uint32_t pitch,uint32_t keyOnID,CellSnd3KeyOnParam *keyOnParam
s32 cellSnd3KeyOnByTone () //u32 hd3ID, u32 toneIndex, u32 pitch,u32 keyOnID,CellSnd3KeyOnParam *keyOnParam
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK; //it's NOT real value
//TODO
}
int32_t cellSnd3VoiceNoteOnByTone () //uint32_t hd3ID, uint32_t voiceNum, uint32_t toneIndex, uint32_t note, uint32_t keyOnID, CellSnd3KeyOnParam *keyOnParam
s32 cellSnd3VoiceNoteOnByTone () //u32 hd3ID, u32 voiceNum, u32 toneIndex, u32 note, u32 keyOnID, CellSnd3KeyOnParam *keyOnParam
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK; //it's NOT real value
//TODO
}
int32_t cellSnd3VoiceKeyOnByTone () //uint32_t hd3ID, uint32_t voiceNum, uint32_t toneIndex, uint32_t pitch, uint32_t keyOnID, CellSnd3KeyOnParam *keyOnParam
s32 cellSnd3VoiceKeyOnByTone () //u32 hd3ID, u32 voiceNum, u32 toneIndex, u32 pitch, u32 keyOnID, CellSnd3KeyOnParam *keyOnParam
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK; //it's NOT real value
//TODO
}
int32_t cellSnd3VoiceSetSustainHold (uint32_t voiceNum, uint32_t sustainHold)
s32 cellSnd3VoiceSetSustainHold (u32 voiceNum, u32 sustainHold)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3VoiceKeyOff (uint32_t voiceNum)
s32 cellSnd3VoiceKeyOff (u32 voiceNum)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3VoiceSetPitch(uint32_t voiceNum, int32_t addPitch)
s32 cellSnd3VoiceSetPitch(u32 voiceNum, s32 addPitch)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3VoiceSetVelocity (uint32_t voiceNum, uint32_t velocity)
s32 cellSnd3VoiceSetVelocity (u32 voiceNum, u32 velocity)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3VoiceSetPanpot (uint32_t voiceNum, uint32_t panpot)
s32 cellSnd3VoiceSetPanpot (u32 voiceNum, u32 panpot)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3VoiceSetPanpotEx (uint32_t voiceNum, uint32_t panpotEx)
s32 cellSnd3VoiceSetPanpotEx (u32 voiceNum, u32 panpotEx)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3VoiceSetPitchBend (uint32_t voiceNum, uint32_t bendValue)
s32 cellSnd3VoiceSetPitchBend (u32 voiceNum, u32 bendValue)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3VoiceAllKeyOff (void)
s32 cellSnd3VoiceAllKeyOff (void)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3VoiceGetEnvelope (uint32_t voiceNum)
s32 cellSnd3VoiceGetEnvelope (u32 voiceNum)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3VoiceGetStatus () //uint32_t voiceNum
s32 cellSnd3VoiceGetStatus () //u32 voiceNum
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK; //it's NOT real value
//TODO
}
uint32_t cellSnd3KeyOffByID (uint32_t keyOnID)
u32 cellSnd3KeyOffByID (u32 keyOnID)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3GetVoice (uint32_t midiChannel, uint32_t keyOnID, CellSnd3VoiceBitCtx *voiceBit)
s32 cellSnd3GetVoice () //u32 midiChannel, u32 keyOnID, CellSnd3VoiceBitCtx *voiceBit
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3GetVoiceByID (uint32_t keyOnID, CellSnd3VoiceBitCtx *voiceBit)
s32 cellSnd3GetVoiceByID () //u32 keyOnID, CellSnd3VoiceBitCtx *voiceBit
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3NoteOn (uint32_t hd3ID, uint32_t midiChannel, uint32_t midiProgram, uint32_t midiNote, uint32_t sustain,CellSnd3KeyOnParam *keyOnParam, uint32_t keyOnID)
s32 cellSnd3NoteOn () //u32 hd3ID, u32 midiChannel, u32 midiProgram, u32 midiNote, u32 sustain,CellSnd3KeyOnParam *keyOnParam, u32 keyOnID
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3NoteOff (uint32_t midiChannel, uint32_t midiNote, uint32_t keyOnID)
s32 cellSnd3NoteOff (u32 midiChannel, u32 midiNote, u32 keyOnID)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3SetSustainHold (uint32_t midiChannel, uint32_t sustainHold, uint32_t ID)
s32 cellSnd3SetSustainHold (u32 midiChannel, u32 sustainHold, u32 ID)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3SetEffectType (uint16_t effectType, int16_t returnVol, uint16_t delay, uint16_t feedback)
s32 cellSnd3SetEffectType (u16 effectType, s16 returnVol, u16 delay, u16 feedback)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
uint16_t cellSnd3Note2Pitch () //uint16_t center_note, uint16_t center_fine, uint16_t note, int16_t fine
u16 cellSnd3Note2Pitch () //u16 center_note, u16 center_fine, u16 note, s16 fine
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK; //it's NOT real value
//TODO
}
uint16_t cellSnd3Pitch2Note () //uint16_t center_note, uint16_t center_fine, uint16_t pitch
u16 cellSnd3Pitch2Note () //u16 center_note, u16 center_fine, u16 pitch
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK; //it's NOT real value
//TODO
}
int32_t cellSnd3SMFBind () //CellSnd3SmfCtx *smfCtx, void *smf, uint32_t hd3ID
s32 cellSnd3SMFBind () //CellSnd3SmfCtx *smfCtx, void *smf, u32 hd3ID
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK; //it's NOT real value
//TODO
}
int32_t cellSnd3SMFUnbind () //uint32_t smfID
s32 cellSnd3SMFUnbind () //u32 smfID
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK; //it's NOT real value
//TODO
}
int32_t cellSnd3SMFPlay (uint32_t smfID, uint32_t playVelocity, uint32_t playPan, uint32_t playCount)
s32 cellSnd3SMFPlay (u32 smfID, u32 playVelocity, u32 playPan, u32 playCount)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3SMFPlayEx (uint32_t smfID, uint32_t playVelocity, uint32_t playPan, uint32_t playPanEx, uint32_t playCount)
s32 cellSnd3SMFPlayEx (u32 smfID, u32 playVelocity, u32 playPan, u32 playPanEx, u32 playCount)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3SMFPause (uint32_t smfID)
s32 cellSnd3SMFPause (u32 smfID)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3SMFResume (uint32_t smfID)
s32 cellSnd3SMFResume (u32 smfID)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3SMFStop (uint32_t smfID)
s32 cellSnd3SMFStop (u32 smfID)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3SMFAddTempo (uint32_t smfID, int32_t addTempo)
s32 cellSnd3SMFAddTempo (u32 smfID, s32 addTempo)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3SMFGetTempo () //uint32_t smfID
s32 cellSnd3SMFGetTempo () //u32 smfID
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK; //it's NOT real value
//TODO
}
int32_t cellSnd3SMFSetPlayVelocity (uint32_t smfID, uint32_t playVelocity)
s32 cellSnd3SMFSetPlayVelocity (u32 smfID, u32 playVelocity)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3SMFGetPlayVelocity () //uint32_t smfID
s32 cellSnd3SMFGetPlayVelocity () //u32 smfID
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK; //it's NOT real value
//TODO
}
int32_t cellSnd3SMFSetPlayPanpot (uint32_t smfID, uint32_t playPanpot)
s32 cellSnd3SMFSetPlayPanpot (u32 smfID, u32 playPanpot)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3SMFSetPlayPanpotEx (uint32_t smfID, uint32_t playPanpotEx)
s32 cellSnd3SMFSetPlayPanpotEx (u32 smfID, u32 playPanpotEx)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3SMFGetPlayPanpot () //uint32_t smfID
s32 cellSnd3SMFGetPlayPanpot () //u32 smfID
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK; //it's NOT real value
//TODO
}
int32_t cellSnd3SMFGetPlayPanpotEx () //uint32_t smfID
s32 cellSnd3SMFGetPlayPanpotEx () //u32 smfID
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK; //it's NOT real value
//TODO
}
int32_t cellSnd3SMFGetPlayStatus () //uint32_t smfID
s32 cellSnd3SMFGetPlayStatus () //u32 smfID
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK; //it's NOT real value
//TODO
}
int32_t cellSnd3SMFSetPlayChannel (uint32_t smfID, uint32_t playChannelBit)
s32 cellSnd3SMFSetPlayChannel (u32 smfID, u32 playChannelBit)
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3SMFGetPlayChannel (uint32_t smfID, uint32_t *playChannelBit)
s32 cellSnd3SMFGetPlayChannel () //u32 smfID, u32 *playChannelBit
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
}
int32_t cellSnd3SMFGetKeyOnID (uint32_t smfID, uint32_t midiChannel, uint32_t *keyOnID)
s32 cellSnd3SMFGetKeyOnID () //u32 smfID, u32 midiChannel, u32 *keyOnID
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK;
@ -825,101 +832,101 @@ int32_t cellSnd3SMFGetKeyOnID (uint32_t smfID, uint32_t midiChannel, uint32_t *k
//*libsynth2 Functions, NON active in this moment*//
int32_t cellSoundSynth2Config (int16_t param, int32_t value)
s32 cellSoundSynth2Config (s16 param, s32 value)
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
int32_t cellSoundSynth2Init( int16_t flag)
s32 cellSoundSynth2Init( s16 flag)
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
int32_t cellSoundSynth2Exit(void)
s32 cellSoundSynth2Exit(void)
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
void cellSoundSynth2SetParam (uint16_t register, uint16_t value)
void cellSoundSynth2SetParam (u16 register, u16 value)
{
UNIMPLEMENTED_FUNC(cellAudio);
//TODO
}
uint16_t cellSoundSynth2GetParam () //uint16_t register
u16 cellSoundSynth2GetParam () //u16 register
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK; //it's NOT real value
//TODO
}
void cellSoundSynth2SetSwitch (uint16_t register, uint32_t value)
void cellSoundSynth2SetSwitch (u16 register, u32 value)
{
UNIMPLEMENTED_FUNC(cellAudio);
//TODO
}
uint32_t cellSoundSynth2GetSwitch () //uint16_t register
u32 cellSoundSynth2GetSwitch () //u16 register
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK; //it's NOT real value
//TODO
}
uint32_t cellSoundSynth2SetAddr (uint16_t register, uint32_t value)
u32 cellSoundSynth2SetAddr (u16 register, u32 value)
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
uint32_t cellSoundSynth2GetAddr () //uint16_t register
u32 cellSoundSynth2GetAddr () //u16 register
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK; //it's NOT real value
//TODO
}
int32_t cellSoundSynth2SetEffectAttr (int16_t bus, CellSoundSynth2EffectAttr *attr)
s32 cellSoundSynth2SetEffectAttr () //s16 bus, CellSoundSynth2EffectAttr *attr
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
int32_t cellSoundSynth2SetEffectMode (int16_t bus, CellSoundSynth2EffectAttr *attr)
s32 cellSoundSynth2SetEffectMode () //s16 bus, CellSoundSynth2EffectAttr *attr
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
void cellSoundSynth2SetCoreAttr (uint16_t entry, uint16_t value)
void cellSoundSynth2SetCoreAttr (u16 entry, u16 value)
{
UNIMPLEMENTED_FUNC(cellAudio);
//TODO
}
int32_t cellSoundSynth2Generate (uint16_t samples, float *left_buffer, float *right_buffer, float *left_rear, float *right_rear)
s32 cellSoundSynth2Generate () //u16 samples, float *left_buffer, float *right_buffer, float *left_rear, float *right_rear
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
int32_t cellSoundSynth2VoiceTrans () //int16_t channel, uint16_t mode, uint8_t *m_addr, uint32_t s_addr, uint32_t size
s32 cellSoundSynth2VoiceTrans () //s16 channel, u16 mode, u8 *m_addr, u32 s_addr, u32 size
{
UNIMPLEMENTED_FUNC(cellAudio);
return 0;
}
uint16_t cellSoundSynth2Note2Pitch () //uint16_t center_note, uint16_t center_fine, uint16_t note, int16_t fine
u16 cellSoundSynth2Note2Pitch () //u16 center_note, u16 center_fine, u16 note, s16 fine
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK; //it's NOT real value
//TODO
}
uint16_t cellSoundSynth2Pitch2Note () //uint16_t center_note, uint16_t center_fine, uint16_t pitch
u16 cellSoundSynth2Pitch2Note () //u16 center_note, u16 center_fine, u16 pitch
{
UNIMPLEMENTED_FUNC(cellAudio);
return CELL_OK; //it's NOT real value
@ -927,7 +934,6 @@ uint16_t cellSoundSynth2Pitch2Note () //uint16_t center_note, uint16_t center_fi
}
void cellAudio_init ()
{
cellAudio.AddFunc (0x0b168f92, cellAudioInit);

View File

@ -0,0 +1,72 @@
#include "stdafx.h"
#include "Emu/SysCalls/SysCalls.h"
#include "Emu/SysCalls/SC_FUNC.h"
void cellPhotoDecodeUtil_init ();
Module cellPhotoDecodeUtil ("cellPhotoDecodeUtil", cellPhotoDecodeUtil_init);
//Error codes
enum
{
CELL_PHOTO_DECODE_RET_OK = 0,
CELL_PHOTO_DECODE_RET_CANCEL = 1,
CELL_PHOTO_DECODE_ERROR_BUSY = 0x8002c901,
CELL_PHOTO_DECODE_ERROR_INTERNAL = 0x8002c902,
CELL_PHOTO_DECODE_ERROR_PARAM = 0x8002c903,
CELL_PHOTO_DECODE_ERROR_ACCESS_ERROR = 0x8002c904,
CELL_PHOTO_DECODE_ERROR_INITIALIZE = 0x8002c905,
CELL_PHOTO_DECODE_ERROR_DECODE = 0x8002c906,
};
//datatypes
struct CellPhotoDecodeSetParam
{
void *dstBuffer;
u16 width;
u16 height;
void *reserved1;
void *reserved2;
};
struct CellPhotoDecodeReturnParam
{
u16 width;
u16 height;
void *reserved1;
void *reserved2;
};
int cellPhotoDecodeInitialize () //unsigned int version, sys_memory_container_t container1, sys_memory_container_t container2, CellPhotoDecodeFinishCallback funcFinish, void *userdata
{
UNIMPLEMENTED_FUNC(cellPhotoDecodeUtil);
return CELL_PHOTO_DECODE_RET_OK;
}
int cellPhotoDecodeInitialize2 () //unsigned int version, sys_memory_container_t container2, CellPhotoDecodeFinishCallback funcFinish, void *userdata
{
UNIMPLEMENTED_FUNC(cellPhotoDecodeUtil);
return CELL_PHOTO_DECODE_RET_OK;
}
int cellPhotoDecodeFinalize () //CellPhotoDecodeFinishCallback funcFinish, void *userdata
{
UNIMPLEMENTED_FUNC(cellPhotoDecodeUtil);
return CELL_PHOTO_DECODE_RET_OK;
}
int cellPhotoDecodeFromFile () //const char *srcHddDir, const char *srcHddFile, CellPhotoDecodeSetParam *set_param, CellPhotoDecodeReturnParam *return_param
{
UNIMPLEMENTED_FUNC(cellPhotoDecodeUtil);
return CELL_PHOTO_DECODE_RET_OK;
}
void ( *CellPhotoDecodeFinishCallback) (); //int result, void *userdata
void cellPhotoDecodeUtil_init ()
{
cellPhotoDecodeUtil.AddFunc (0x0f424ecb, cellPhotoDecodeInitialize2);
cellPhotoDecodeUtil.AddFunc (0x28b22e44, cellPhotoDecodeFromFile);
cellPhotoDecodeUtil.AddFunc (0x596f0a56, cellPhotoDecodeInitialize);
cellPhotoDecodeUtil.AddFunc (0xad7d8f38, cellPhotoDecodeFinalize);
}

View File

@ -0,0 +1,68 @@
#include "stdafx.h"
#include "Emu/SysCalls/SysCalls.h"
#include "Emu/SysCalls/SC_FUNC.h"
void cellPhotoImportUtil_init ();
Module cellPhotoImportUtil ("cellPhotoImportUtil", cellPhotoImportUtil_init);
//Error codes
enum
{
CELL_PHOTO_IMPORT_RET_OK = 0,
CELL_PHOTO_IMPORT_RET_CANCEL = 1,
CELL_PHOTO_IMPORT_ERROR_BUSY = 0x8002c701,
CELL_PHOTO_IMPORT_ERROR_INTERNAL = 0x8002c702,
CELL_PHOTO_IMPORT_ERROR_PARAM = 0x8002c703,
CELL_PHOTO_IMPORT_ERROR_ACCESS_ERROR = 0x8002c704,
CELL_PHOTO_IMPORT_ERROR_COPY = 0x8002c705,
CELL_PHOTO_IMPORT_ERROR_INITIALIZE = 0x8002c706,
};
//datatyps
struct CellPhotoImportFileDataSub
{
int width;
int height;
//CellPhotoImportFormatType format;
//CellPhotoImportTexRot rotate;
};
struct CellPhotoImportFileData
{
char dstFileName; //[CELL_FS_MAX_FS_FILE_NAME_LENGTH];
char photo_title; //[CELL_PHOTO_IMPORT_PHOTO_TITLE_MAX_LENGTH*3];
char game_title; //[CELL_PHOTO_IMPORT_GAME_TITLE_MAX_SIZE];
char game_comment; //[CELL_PHOTO_IMPORT_GAME_COMMENT_MAX_SIZE];
CellPhotoImportFileDataSub* data_sub;
void *reserved;
};
struct CellPhotoImportSetParam
{
unsigned int fileSizeMax;
void *reserved1;
void *reserved2;
};
//import API
int cellPhotoImport () //unsigned int version, const char *dstHddPath, CellPhotoImportSetParam *param, sys_memory_container_t container, CellPhotoImportFinishCallback funcFinish, void *userdata
{
UNIMPLEMENTED_FUNC(cellPhotoImportUtil);
return CELL_PHOTO_IMPORT_RET_OK;
}
int cellPhotoImport2 () //unsigned int version, const char *dstHddPath, CellPhotoImportSetParam *param, CellPhotoImportFinishCallback funcFinish, void *userdata
{
UNIMPLEMENTED_FUNC(cellPhotoImportUtil);
return CELL_PHOTO_IMPORT_RET_OK;
}
void cellPhotoImportUtil_init ()
{
cellPhotoImportUtil.AddFunc (0x0783bce0, cellPhotoImport);
cellPhotoImportUtil.AddFunc (0x1ab8df55, cellPhotoImport2);
}

View File

@ -0,0 +1,90 @@
#include "stdafx.h"
#include "Emu/SysCalls/SysCalls.h"
#include "Emu/SysCalls/SC_FUNC.h"
void cellPhotoUtility_init ();
Module cellPhotoUtility ("cellPhotoUtility", cellPhotoUtility_init);
//Error codes
enum
{
CELL_PHOTO_EXPORT_UTIL_RET_OK = 0,
CELL_PHOTO_EXPORT_UTIL_RET_CANCEL = 1,
CELL_PHOTO_EXPORT_UTIL_ERROR_BUSY = 0x8002c201,
CELL_PHOTO_EXPORT_UTIL_ERROR_INTERNAL = 0x8002c202,
CELL_PHOTO_EXPORT_UTIL_ERROR_PARAM = 0x8002c203,
CELL_PHOTO_EXPORT_UTIL_ERROR_ACCESS_ERROR = 0x8002c204,
CELL_PHOTO_EXPORT_UTIL_ERROR_DB_INTERNAL = 0x8002c205,
CELL_PHOTO_EXPORT_UTIL_ERROR_DB_REGIST = 0x8002c206,
CELL_PHOTO_EXPORT_UTIL_ERROR_SET_META = 0x8002c207,
CELL_PHOTO_EXPORT_UTIL_ERROR_FLUSH_META = 0x8002c208,
CELL_PHOTO_EXPORT_UTIL_ERROR_MOVE = 0x8002c209,
CELL_PHOTO_EXPORT_UTIL_ERROR_INITIALIZE = 0x8002c20a,
};
//datatyps
struct CellPhotoExportSetParam
{
char *photo_title;
char *game_title;
char *game_comment;
void *reserved;
};
//export API
int cellPhotoExportInitialize ()
{
UNIMPLEMENTED_FUNC(cellPhotoUtility);
return CELL_PHOTO_EXPORT_UTIL_RET_OK;
}
int cellPhotoExportInitialize2() //unsigned int version, CellPhotoExportUtilFinishCallback func, void *userdata
{
UNIMPLEMENTED_FUNC(cellPhotoUtility);
return CELL_PHOTO_EXPORT_UTIL_RET_OK;
}
int cellPhotoExportFinalize () //CellPhotoExportUtilFinishCallback func, void *userdata
{
UNIMPLEMENTED_FUNC(cellPhotoUtility);
return CELL_PHOTO_EXPORT_UTIL_RET_OK;
}
int cellPhotoExportFromFile () //const char *srcHddDir, const char *srcHddFile, CellPhotoExportSetParam *param, CellPhotoExportUtilFinishCallback func,void *userdata
{
UNIMPLEMENTED_FUNC(cellPhotoUtility);
return CELL_PHOTO_EXPORT_UTIL_RET_OK;
}
int cellPhotoExportFromFileWithCopy () //const char *srcHddDir, const char *srcHddFile, CellPhotoExportSetParam *param, CellPhotoExportUtilFinishCallback func, void *userdata
{
UNIMPLEMENTED_FUNC(cellPhotoUtility);
return CELL_PHOTO_EXPORT_UTIL_RET_OK;
}
int cellPhotoExportProgress () //CellPhotoExportUtilFinishCallback func, void *userdata
{
UNIMPLEMENTED_FUNC(cellPhotoUtility);
return CELL_PHOTO_EXPORT_UTIL_RET_OK;
}
void ( * CellPhotoExportUtilFinishCallback ) (); //int result, void *userdata
void ( * CellPhotoImportFinishCallback ) (); //int result, CellPhotoImportFileData *filedata, void *userdata
void cellPhotoUtility_init ()
{
cellPhotoUtility.AddFunc (0x08cbd8e1, cellPhotoExportInitialize2);
cellPhotoUtility.AddFunc (0x09ce84ac, cellPhotoExportFromFile);
//cellPhotoUtility.AddFunc (0x3f7fc0af, cellPhotoFinalize); //TODO
//cellPhotoUtility.AddFunc (0x42a32983, cellPhotoRegistFromFile); //TODO
cellPhotoUtility.AddFunc (0x4357c77f, cellPhotoExportInitialize); //TODO
//cellPhotoUtility.AddFunc (0x55c70783, cellPhotoInitialize); //TODO
cellPhotoUtility.AddFunc (0xde509ead, cellPhotoExportProgress);
cellPhotoUtility.AddFunc (0xed4a0148, cellPhotoExportFinalize);
}

View File

@ -0,0 +1,430 @@
#include "stdafx.h"
#include "Emu/SysCalls/SysCalls.h"
#include "Emu/SysCalls/SC_FUNC.h"
void cellSaveData_init ();
Module cellSaveData ("cellSaveData", cellSaveData_init);
//Error codes
enum
{
CELL_SAVEDATA_RET_OK = 0,
CELL_SAVEDATA_RET_CANCEL = 1,
CELL_SAVEDATA_ERROR_CBRESULT,
CELL_SAVEDATA_ERROR_ACCESS_ERROR,
CELL_SAVEDATA_ERROR_INTERNAL,
CELL_SAVEDATA_ERROR_PARAM,
CELL_SAVEDATA_ERROR_NOSPACE,
CELL_SAVEDATA_ERROR_BROKEN,
CELL_SAVEDATA_ERROR_FAILURE,
CELL_SAVEDATA_ERROR_BUSY,
CELL_SAVEDATA_ERROR_NOUSER,
};
//datatyps
struct CellSaveDataSetList
{
unsigned int sortType;
unsigned int sortOrder;
char *dirNamePrefix;
void *reserved;
};
struct CellSaveDataSetBuf
{
unsigned int dirListMax;
unsigned int fileListMax;
unsigned int reserved[6];
unsigned int bufSize;
void *buf;
};
struct CellSaveDataNewDataIcon
{
char *title;
unsigned int iconBufSize;
void *iconBuf;
void *reserved;
};
struct CellSaveDataListNewData
{
unsigned int iconPosition;
char *dirName;
CellSaveDataNewDataIcon *icon;
void *reserved;
};
struct CellSaveDataDirList
{
char dirName; //[CELL_SAVEDATA_DIRNAME_SIZE];
char listParam; //[CELL_SAVEDATA_SYSP_LPARAM_SIZE];
char reserved[8];
};
struct CellSaveDataListGet
{
unsigned int dirNum;
unsigned int dirListNum;
CellSaveDataDirList *dirList;
char reserved[64];
};
struct CellSaveDataListSet
{
unsigned int focusPosition;
char *focusDirName;
unsigned int fixedListNum;
CellSaveDataDirList *fixedList;
CellSaveDataListNewData *newData;
void *reserved;
};
struct CellSaveDataFixedSet
{
char *dirName;
CellSaveDataNewDataIcon *newIcon;
unsigned int option;
};
struct CellSaveDataSystemFileParam
{
char title; //[CELL_SAVEDATA_SYSP_TITLE_SIZE];
char subTitle; //[CELL_SAVEDATA_SYSP_SUBTITLE_SIZE];
char detail; //[CELL_SAVEDATA_SYSP_DETAIL_SIZE];
unsigned int attribute;
char reserved2[4];
char listParam; //[CELL_SAVEDATA_SYSP_LPARAM_SIZE];
char reserved[256];
};
struct CellSaveDataDirStat
{
s64 st_atime;
s64 st_mtime;
s64 st_ctime;
char dirName; //[CELL_SAVEDATA_DIRNAME_SIZE];
};
struct CellSaveDataFileStat
{
unsigned int fileType;
char reserved1[4];
u64 st_size;
s64 st_atime;
s64 st_mtime;
s64 st_ctime;
char fileName; //[CELL_SAVEDATA_FILENAME_SIZE];
char reserved2[3];
};
struct CellSaveDataStatGet
{
int hddFreeSizeKB;
unsigned int isNewData;
CellSaveDataDirStat dir;
CellSaveDataSystemFileParam getParam;
unsigned int bind;
int sizeKB;
int sysSizeKB;
unsigned int fileNum;
unsigned int fileListNum;
CellSaveDataFileStat *fileList;
char reserved[64];
};
struct CellSaveDataAutoIndicator
{
unsigned int dispPosition;
unsigned int dispMode;
char *dispMsg;
unsigned int picBufSize;
void *picBuf;
void *reserved;
};
struct CellSaveDataStatSet
{
CellSaveDataSystemFileParam *setParam;
unsigned int reCreateMode;
CellSaveDataAutoIndicator *indicator;
};
struct CellSaveDataFileGet
{
unsigned int excSize;
char reserved[64];
};
struct CellSaveDataFileSet
{
unsigned int fileOperation;
void *reserved;
unsigned int fileType;
unsigned char secureFileId; //[CELL_SAVEDATA_SECUREFILEID_SIZE];
char *fileName;
unsigned int fileOffset;
unsigned int fileSize;
unsigned int fileBufSize;
void *fileBuf;
};
struct CellSaveDataCBResult
{
int result;
unsigned int progressBarInc;
int errNeedSizeKB;
char *invalidMsg;
void *userdata;
};
struct CellSaveDataDoneGet
{
int excResult;
char dirName; //[CELL_SAVEDATA_DIRNAME_SIZE];
int sizeKB;
int hddFreeSizeKB;
char reserved[64];
};
//functions
int cellSaveDataListSave2 () //unsigned int version, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataListCallback funcList, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataListLoad2 () //unsigned int version, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataListCallback funcList, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataFixedSave2 () //unsigned int version, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile,sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataFixedLoad2 () //unsigned int version, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataAutoSave2 () //unsigned int version, const char *dirName, unsigned int errDialog, CellSaveDataSetBuf *setBuf, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataAutoLoad2 () //unsigned int version, const char *dirName, unsigned int errDialog, CellSaveDataSetBuf *setBuf, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataListAutoSave () //unsigned int version, unsigned int errDialog, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile,sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataListAutoLoad () //unsigned int version, unsigned int errDialog, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataDelete2 () //sys_memory_container_t container
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_CANCEL;
}
int cellSaveDataFixedDelete () //CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataUserListSave () //unsigned int version, CellSysutilUserId userId, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataListCallback funcList, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataUserListLoad () //unsigned int version, CellSysutilUserId userId, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataListCallback funcList, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataUserFixedSave () //unsigned int version, CellSysutilUserId userId, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataUserFixedLoad () //unsigned int version, CellSysutilUserId userId, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataUserAutoSave () //unsigned int version, CellSysutilUserId userId, const char *dirName, unsigned int errDialog, CellSaveDataSetBuf *setBuf, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataUserAutoLoad () //unsigned int version, CellSysutilUserId userId, const char *dirName, unsigned int errDialog, CellSaveDataSetBuf *setBuf, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataUserListAutoSave () //unsigned int version, CellSysutilUserId userId, unsigned int errDialog, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataUserListAutoLoad () //unsigned int version, CellSysutilUserId userId, unsigned int errDialog, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataStatCallback funcStat, CellSaveDataFileCallback funcFile, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataUserFixedDelete () //CellSysutilUserId userId, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataFixedCallback funcFixed, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
//void cellSaveDataEnableOverlay (); //int enable
//Functions (Extensions)
int cellSaveDataListDelete () //CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataListCallback funcList, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataListImport () //CellSaveDataSetList *setList, unsigned int maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataListExport () //CellSaveDataSetList *setList, unsigned int maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataFixedImport () //const char *dirName, unsigned int maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataFixedExport () //const char *dirName, unsigned int maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataGetListItem () //const char *dirName, CellSaveDataDirStat *dir, CellSaveDataSystemFileParam *sysFileParam, unsigned int *bind, int *sizeKB
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataUserListDelete () //CellSysutilUserId userId, CellSaveDataSetList *setList, CellSaveDataSetBuf *setBuf, CellSaveDataListCallback funcList, CellSaveDataDoneCallback funcDone,sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataUserListImport () //CellSysutilUserId userId, CellSaveDataSetList *setList, unsigned int maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataUserListExport () //CellSysutilUserId userId, CellSaveDataSetList *setList, unsigned int maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataUserFixedImport () //CellSysutilUserId userId, const char *dirName, unsigned int maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataUserFixedExport () //CellSysutilUserId userId, const char *dirName, unsigned int maxSizeKB, CellSaveDataDoneCallback funcDone, sys_memory_container_t container, void *userdata
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
int cellSaveDataUserGetListItem () //CellSysutilUserId userId, const char *dirName, CellSaveDataDirStat *dir, CellSaveDataSystemFileParam *sysFileParam, unsigned int *bind, int *sizeKB
{
UNIMPLEMENTED_FUNC(cellSaveData);
return CELL_SAVEDATA_RET_OK;
}
//Callback Functions
void (*CellSaveDataFixedCallback) (); //CellSaveDataCBResult *cbResult, CellSaveDataListGet *get, CellSaveDataFixedSet *set
void (*CellSaveDataListCallback) (); //CellSaveDataCBResult *cbResult, CellSaveDataListGet *get, CellSaveDataListSet *set
void (*CellSaveDataStatCallback) (); //CellSaveDataCBResult *cbResult, CellSaveDataStatGet *get, CellSaveDataStatSet *set
void (*CellSaveDataFileCallback) (); //CellSaveDataCBResult *cbResult, CellSaveDataFileGet *get, CellSaveDataFileSet *set
void (*CellSaveDataDoneCallback) (); //CellSaveDataCBResult *cbResult, CellSaveDataDoneGet *get
void cellSaveData_init ()
{
cellSaveData.AddFunc (0x04c06fc2, cellSaveDataGetListItem);
cellSaveData.AddFunc (0x273d116a, cellSaveDataUserListExport);
cellSaveData.AddFunc (0x27cb8bc2, cellSaveDataListDelete);
cellSaveData.AddFunc (0x39d6ee43, cellSaveDataUserListImport);
cellSaveData.AddFunc (0x46a2d878, cellSaveDataFixedExport);
cellSaveData.AddFunc (0x491cc554, cellSaveDataListExport);
cellSaveData.AddFunc (0x52541151, cellSaveDataFixedImport);
cellSaveData.AddFunc (0x529231b0, cellSaveDataUserFixedImport);
cellSaveData.AddFunc (0x6b4e0de6, cellSaveDataListImport);
cellSaveData.AddFunc (0x7048a9ba, cellSaveDataUserListDelete);
cellSaveData.AddFunc (0x95ae2cde, cellSaveDataUserFixedExport);
cellSaveData.AddFunc (0xf6482036, cellSaveDataUserGetListItem);
cellSaveData.AddFunc (0x2de0d663, cellSaveDataListSave2);
cellSaveData.AddFunc (0x1dfbfdd6, cellSaveDataListLoad2);
cellSaveData.AddFunc (0x2aae9ef5, cellSaveDataFixedSave2);
cellSaveData.AddFunc (0x2a8eada2, cellSaveDataFixedLoad2);
cellSaveData.AddFunc (0x8b7ed64b, cellSaveDataAutoSave2);
cellSaveData.AddFunc (0xfbd5c856, cellSaveDataAutoLoad2);
cellSaveData.AddFunc (0x4dd03a4e, cellSaveDataListAutoSave);
cellSaveData.AddFunc (0x21425307, cellSaveDataListAutoLoad);
cellSaveData.AddFunc (0xedadd797, cellSaveDataDelete2);
cellSaveData.AddFunc (0x0f03cfb0, cellSaveDataUserListSave);
cellSaveData.AddFunc (0x39dd8425, cellSaveDataUserListLoad);
cellSaveData.AddFunc (0x40b34847, cellSaveDataUserFixedSave);
cellSaveData.AddFunc (0x6e7264ed, cellSaveDataUserFixedLoad);
cellSaveData.AddFunc (0x52aac4fa, cellSaveDataUserAutoSave);
cellSaveData.AddFunc (0xcdc6aefd, cellSaveDataUserAutoLoad);
cellSaveData.AddFunc (0x0e091c36, cellSaveDataUserListAutoSave);
//cellSaveData.AddFunc (0xe7fa820b, cellSaveDataEnableOverlay);
}

View File

@ -0,0 +1,59 @@
#include "stdafx.h"
#include "Emu/SysCalls/SysCalls.h"
#include "Emu/SysCalls/SC_FUNC.h"
void cellScreenShotUtility_init ();
Module cellScreenShotUtility ("cellScreenShotUtility", cellScreenShotUtility_init);
//Error codes
enum
{
CELL_SCREENSHOT_OK = 0x0,
CELL_SCREENSHOT_ERROR_INTERNAL = 0x8002d101,
CELL_SCREENSHOT_ERROR_PARAM = 0x8002d102,
CELL_SCREENSHOT_ERROR_DECODE = 0x8002d103,
CELL_SCREENSHOT_ERROR_NOSPACE = 0x8002d104,
CELL_SCREENSHOT_ERROR_UNSUPPORTED_COLOR_FORMAT = 0x8002d105,
};
//datatyps
struct CellScreenShotSetParam
{
const char *photo_title;
const char *game_title;
const char *game_comment;
void* reserved;
};
int cellScreenShotSetParameter () //const CellScreenShotSetParam *param
{
UNIMPLEMENTED_FUNC(cellScreenShotUtility);
return CELL_SCREENSHOT_OK;
}
int cellScreenShotSetOverlayImage() //const char *srcDir, const char *srcFile, s32 offset_x, s32 offset_y
{
UNIMPLEMENTED_FUNC(cellScreenShotUtility);
return CELL_SCREENSHOT_OK;
}
int cellScreenShotEnable (void)
{
UNIMPLEMENTED_FUNC(cellScreenShotUtility);
return CELL_SCREENSHOT_OK;
}
int cellScreenShotDisable (void)
{
UNIMPLEMENTED_FUNC(cellScreenShotUtility);
return CELL_SCREENSHOT_OK;
}
void cellScreenShotUtility_init ()
{
cellScreenShotUtility.AddFunc (0x9e33ab8f, cellScreenShotEnable);
cellScreenShotUtility.AddFunc (0xd3ad63e4, cellScreenShotSetParameter);
cellScreenShotUtility.AddFunc (0xfc6f4e74, cellScreenShotDisable);
cellScreenShotUtility.AddFunc (0x7a9c2243, cellScreenShotSetOverlayImage);
}