Small fix

This commit is contained in:
Nekotekina 2014-08-26 20:45:43 +04:00
parent 5d3a612003
commit d7fd8e3ca6
6 changed files with 26 additions and 14 deletions

View file

@ -48,6 +48,7 @@ extern Module *cellSail;
extern void cellSpurs_init(); extern void cellSpurs_init();
extern Module *cellSpurs; extern Module *cellSpurs;
extern void cellSync_init(); extern void cellSync_init();
extern void cellSync_load();
extern Module *cellSync; extern Module *cellSync;
extern void cellSysmodule_init(); extern void cellSysmodule_init();
extern Module *cellSysmodule; extern Module *cellSysmodule;
@ -81,8 +82,10 @@ extern void sceNpTus_unload();
extern void sceNpTus_init(); extern void sceNpTus_init();
extern Module *sceNpTus; extern Module *sceNpTus;
extern void sysPrxForUser_init(); extern void sysPrxForUser_init();
extern void sysPrxForUser_load();
extern Module *sysPrxForUser; extern Module *sysPrxForUser;
extern void sys_fs_init(); extern void sys_fs_init();
extern void sys_fs_load();
extern Module *sys_fs; extern Module *sys_fs;
extern void sys_io_init(); extern void sys_io_init();
extern Module *sys_io; extern Module *sys_io;
@ -250,7 +253,7 @@ void ModuleManager::init()
cellSpurs = static_cast <Module*>(&(m_mod_init.back())) + 1; cellSpurs = static_cast <Module*>(&(m_mod_init.back())) + 1;
m_mod_init.emplace_back(0x000a, cellSpurs_init); m_mod_init.emplace_back(0x000a, cellSpurs_init);
cellSync = static_cast <Module*>(&(m_mod_init.back())) + 1; cellSync = static_cast <Module*>(&(m_mod_init.back())) + 1;
m_mod_init.emplace_back("cellSync", cellSync_init); m_mod_init.emplace_back("cellSync", cellSync_init, cellSync_load, nullptr);
cellSysutil = static_cast <Module*>(&(m_mod_init.back())) + 1; cellSysutil = static_cast <Module*>(&(m_mod_init.back())) + 1;
m_mod_init.emplace_back(0x0015, cellSysutil_init); m_mod_init.emplace_back(0x0015, cellSysutil_init);
cellSysutilAp = static_cast <Module*>(&(m_mod_init.back())) + 1; cellSysutilAp = static_cast <Module*>(&(m_mod_init.back())) + 1;
@ -278,9 +281,9 @@ void ModuleManager::init()
sceNpTus = static_cast <Module*>(&(m_mod_init.back())) + 1; sceNpTus = static_cast <Module*>(&(m_mod_init.back())) + 1;
m_mod_init.emplace_back(0x0045, sceNpTus_init, nullptr, sceNpTus_unload); m_mod_init.emplace_back(0x0045, sceNpTus_init, nullptr, sceNpTus_unload);
sysPrxForUser = static_cast <Module*>(&(m_mod_init.back())) + 1; sysPrxForUser = static_cast <Module*>(&(m_mod_init.back())) + 1;
m_mod_init.emplace_back("sysPrxForUser", sysPrxForUser_init); m_mod_init.emplace_back("sysPrxForUser", sysPrxForUser_init, sysPrxForUser_load, nullptr);
sys_fs = static_cast <Module*>(&(m_mod_init.back())) + 1; sys_fs = static_cast <Module*>(&(m_mod_init.back())) + 1;
m_mod_init.emplace_back(0x000e, sys_fs_init); m_mod_init.emplace_back(0x000e, sys_fs_init, sys_fs_load, nullptr);
sys_io = static_cast <Module*>(&(m_mod_init.back())) + 1; sys_io = static_cast <Module*>(&(m_mod_init.back())) + 1;
m_mod_init.emplace_back(0x0017, sys_io_init); m_mod_init.emplace_back(0x0017, sys_io_init);
sys_net = static_cast <Module*>(&(m_mod_init.back())) + 1; sys_net = static_cast <Module*>(&(m_mod_init.back())) + 1;

View file

@ -35,6 +35,9 @@ AudioDecoder::AudioDecoder(AudioCodecType type, u32 addr, u32 size, u32 func, u3
, ctx(nullptr) , ctx(nullptr)
, fmt(nullptr) , fmt(nullptr)
{ {
av_register_all();
avcodec_register_all();
AVCodec* codec = avcodec_find_decoder(AV_CODEC_ID_ATRAC3P); AVCodec* codec = avcodec_find_decoder(AV_CODEC_ID_ATRAC3P);
if (!codec) if (!codec)
{ {
@ -824,7 +827,4 @@ void cellAdec_init()
REG_FUNC(cellAdec, cellAdecDecodeAu); REG_FUNC(cellAdec, cellAdecDecodeAu);
REG_FUNC(cellAdec, cellAdecGetPcm); REG_FUNC(cellAdec, cellAdecGetPcm);
REG_FUNC(cellAdec, cellAdecGetPcmItem); REG_FUNC(cellAdec, cellAdecGetPcmItem);
av_register_all();
avcodec_register_all();
} }

View file

@ -2217,7 +2217,10 @@ void cellSync_init()
cellSync->AddFunc(0xe1bc7add, _cellSyncLFQueuePopBody); cellSync->AddFunc(0xe1bc7add, _cellSyncLFQueuePopBody);
cellSync->AddFunc(0xe9bf2110, _cellSyncLFQueueGetPushPointer); cellSync->AddFunc(0xe9bf2110, _cellSyncLFQueueGetPushPointer);
cellSync->AddFunc(0xfe74e8e7, _cellSyncLFQueueCompletePopPointer); cellSync->AddFunc(0xfe74e8e7, _cellSyncLFQueueCompletePopPointer);
}
void cellSync_load()
{
#ifdef PRX_DEBUG #ifdef PRX_DEBUG
CallAfter([]() CallAfter([]()
{ {

View file

@ -35,6 +35,9 @@ VideoDecoder::VideoDecoder(CellVdecCodecType type, u32 profile, u32 addr, u32 si
, ctx(nullptr) , ctx(nullptr)
, vdecCb(nullptr) , vdecCb(nullptr)
{ {
av_register_all();
avcodec_register_all();
AVCodec* codec = avcodec_find_decoder(AV_CODEC_ID_H264); AVCodec* codec = avcodec_find_decoder(AV_CODEC_ID_H264);
if (!codec) if (!codec)
{ {
@ -808,7 +811,4 @@ void cellVdec_init()
cellVdec->AddFunc(0x807c861a, cellVdecGetPicture); cellVdec->AddFunc(0x807c861a, cellVdecGetPicture);
cellVdec->AddFunc(0x17c702b9, cellVdecGetPicItem); cellVdec->AddFunc(0x17c702b9, cellVdecGetPicItem);
cellVdec->AddFunc(0xe13ef6fc, cellVdecSetFrameRate); cellVdec->AddFunc(0xe13ef6fc, cellVdecSetFrameRate);
av_register_all();
avcodec_register_all();
} }

View file

@ -397,11 +397,6 @@ void sysPrxForUser_init()
REG_FUNC(sysPrxForUser, _sys_strncpy); REG_FUNC(sysPrxForUser, _sys_strncpy);
sysPrxForUser->AddFunc(0xe75c40f2, _unnamed_E75C40F2); // real name is unknown sysPrxForUser->AddFunc(0xe75c40f2, _unnamed_E75C40F2); // real name is unknown
spu_printf_agcb = 0;
spu_printf_dgcb = 0;
spu_printf_atcb = 0;
spu_printf_dtcb = 0;
REG_FUNC(sysPrxForUser, _sys_spu_printf_initialize); REG_FUNC(sysPrxForUser, _sys_spu_printf_initialize);
REG_FUNC(sysPrxForUser, _sys_spu_printf_finalize); REG_FUNC(sysPrxForUser, _sys_spu_printf_finalize);
REG_FUNC(sysPrxForUser, _sys_spu_printf_attach_group); REG_FUNC(sysPrxForUser, _sys_spu_printf_attach_group);
@ -411,3 +406,11 @@ void sysPrxForUser_init()
REG_FUNC(sysPrxForUser, _sys_printf); REG_FUNC(sysPrxForUser, _sys_printf);
} }
void sysPrxForUser_load()
{
spu_printf_agcb = 0;
spu_printf_dgcb = 0;
spu_printf_atcb = 0;
spu_printf_dtcb = 0;
}

View file

@ -314,6 +314,9 @@ void sys_fs_init()
sys_fs->AddFunc(0x81f33783, cellFsStReadPutCurrentAddr); sys_fs->AddFunc(0x81f33783, cellFsStReadPutCurrentAddr);
sys_fs->AddFunc(0x8f71c5b2, cellFsStReadWait); sys_fs->AddFunc(0x8f71c5b2, cellFsStReadWait);
sys_fs->AddFunc(0x866f6aec, cellFsStReadWaitCallback); sys_fs->AddFunc(0x866f6aec, cellFsStReadWaitCallback);
}
void sys_fs_load()
{
aio_init = false; aio_init = false;
} }