Reintroduce LOG_CHANNEL

Groundwork for further improvements
This commit is contained in:
Nekotekina 2018-08-25 15:39:00 +03:00
parent 57f394e156
commit 363811981d
128 changed files with 266 additions and 268 deletions

View File

@ -7,8 +7,6 @@
namespace cfg namespace cfg
{ {
logs::channel cfg("CFG");
_base::_base(type _type) _base::_base(type _type)
: m_type(_type) : m_type(_type)
{ {
@ -67,19 +65,19 @@ bool cfg::try_to_int64(s64* out, const std::string& value, s64 min, s64 max)
} }
catch (const std::exception& e) catch (const std::exception& e)
{ {
if (out) cfg.error("cfg::try_to_int('%s'): exception: %s", value, e.what()); if (out) LOG_ERROR(GENERAL, "cfg::try_to_int('%s'): exception: %s", value, e.what());
return false; return false;
} }
if (pos != value.size()) if (pos != value.size())
{ {
if (out) cfg.error("cfg::try_to_int('%s'): unexpected characters (pos=%zu)", value, pos); if (out) LOG_ERROR(GENERAL, "cfg::try_to_int('%s'): unexpected characters (pos=%zu)", value, pos);
return false; return false;
} }
if (result < min || result > max) if (result < min || result > max)
{ {
if (out) cfg.error("cfg::try_to_int('%s'): out of bounds (%lld..%lld)", value, min, max); if (out) LOG_ERROR(GENERAL, "cfg::try_to_int('%s'): out of bounds (%lld..%lld)", value, min, max);
return false; return false;
} }
@ -119,13 +117,13 @@ bool cfg::try_to_enum_value(u64* out, decltype(&fmt_class_string<int>::format) f
if (pos != value.size()) if (pos != value.size())
{ {
if (out) cfg.error("cfg::try_to_enum_value('%s'): unexpected characters (pos=%zu)", value, pos); if (out) LOG_ERROR(GENERAL, "cfg::try_to_enum_value('%s'): unexpected characters (pos=%zu)", value, pos);
return false; return false;
} }
if (val > max) if (val > max)
{ {
if (out) cfg.error("cfg::try_to_enum_value('%s'): out of bounds(0..%u)", value, max); if (out) LOG_ERROR(GENERAL, "cfg::try_to_enum_value('%s'): out of bounds(0..%u)", value, max);
return false; return false;
} }
@ -134,7 +132,7 @@ bool cfg::try_to_enum_value(u64* out, decltype(&fmt_class_string<int>::format) f
} }
catch (const std::exception& e) catch (const std::exception& e)
{ {
if (out) cfg.error("cfg::try_to_enum_value('%s'): invalid enum value: %s", value, e.what()); if (out) LOG_ERROR(GENERAL, "cfg::try_to_enum_value('%s'): invalid enum value: %s", value, e.what());
return false; return false;
} }
} }
@ -300,7 +298,7 @@ bool cfg::node::from_string(const std::string& value) try
} }
catch (const std::exception& e) catch (const std::exception& e)
{ {
cfg.fatal("%s thrown: %s", typeid(e).name(), e.what()); LOG_FATAL(GENERAL, "%s thrown: %s", typeid(e).name(), e.what());
return false; return false;
} }

View File

@ -19,7 +19,7 @@
extern void ppu_set_breakpoint(u32 addr); extern void ppu_set_breakpoint(u32 addr);
extern void ppu_remove_breakpoint(u32 addr); extern void ppu_remove_breakpoint(u32 addr);
logs::channel gdbDebugServer("gdbDebugServer"); LOG_CHANNEL(gdbDebugServer);
int sock_init(void) int sock_init(void)
{ {

View File

@ -113,6 +113,8 @@ namespace logs
void set_level(const std::string&, level); void set_level(const std::string&, level);
} }
#define LOG_CHANNEL(ch, ...) ::logs::channel ch(#ch, ##__VA_ARGS__);
// Legacy: // Legacy:
#define LOG_SUCCESS(ch, fmt, ...) logs::ch.success("" fmt, ##__VA_ARGS__) #define LOG_SUCCESS(ch, fmt, ...) logs::ch.success("" fmt, ##__VA_ARGS__)

View File

@ -21,7 +21,7 @@ extern "C"
extern std::mutex g_mutex_avcodec_open2; extern std::mutex g_mutex_avcodec_open2;
logs::channel cellAdec("cellAdec"); LOG_CHANNEL(cellAdec);
class AudioDecoder : public ppu_thread class AudioDecoder : public ppu_thread
{ {
@ -252,7 +252,7 @@ public:
if (just_started && just_finished) if (just_started && just_finished)
{ {
avcodec_flush_buffers(ctx); avcodec_flush_buffers(ctx);
reader.init = true; // wrong reader.init = true; // wrong
just_finished = false; just_finished = false;
just_started = false; just_started = false;
@ -531,7 +531,7 @@ bool adecCheckType(s32 type)
cellAdec.todo("Unimplemented audio codec type (%d)", type); cellAdec.todo("Unimplemented audio codec type (%d)", type);
Emu.Pause(); Emu.Pause();
break; break;
} }
default: return false; default: return false;
} }

View File

@ -4,7 +4,7 @@
#include "cellAtrac.h" #include "cellAtrac.h"
logs::channel cellAtrac("cellAtrac"); LOG_CHANNEL(cellAtrac);
s32 cellAtracSetDataAndGetMemSize(vm::ptr<CellAtracHandle> pHandle, vm::ptr<u8> pucBufferAddr, u32 uiReadByte, u32 uiBufferByte, vm::ptr<u32> puiWorkMemByte) s32 cellAtracSetDataAndGetMemSize(vm::ptr<CellAtracHandle> pHandle, vm::ptr<u8> pucBufferAddr, u32 uiReadByte, u32 uiBufferByte, vm::ptr<u32> puiWorkMemByte)
{ {

View File

@ -4,7 +4,7 @@
#include "cellAtracMulti.h" #include "cellAtracMulti.h"
logs::channel cellAtracMulti("cellAtracMulti"); LOG_CHANNEL(cellAtracMulti);
s32 cellAtracMultiSetDataAndGetMemSize(vm::ptr<CellAtracMultiHandle> pHandle, vm::ptr<u8> pucBufferAddr, u32 uiReadByte, u32 uiBufferByte, u32 uiOutputChNum, vm::ptr<s32> piTrackArray, vm::ptr<u32> puiWorkMemByte) s32 cellAtracMultiSetDataAndGetMemSize(vm::ptr<CellAtracMultiHandle> pHandle, vm::ptr<u8> pucBufferAddr, u32 uiReadByte, u32 uiBufferByte, u32 uiOutputChNum, vm::ptr<s32> piTrackArray, vm::ptr<u32> puiWorkMemByte)
{ {

View File

@ -10,7 +10,7 @@
#include <thread> #include <thread>
logs::channel cellAudio("cellAudio"); LOG_CHANNEL(cellAudio);
template <> template <>
void fmt_class_string<CellAudioError>::format(std::string& out, u64 arg) void fmt_class_string<CellAudioError>::format(std::string& out, u64 arg)
@ -326,7 +326,7 @@ void audio_config::on_task()
{ {
if (auto queue = lv2_event_queue::find(key)) if (auto queue = lv2_event_queue::find(key))
{ {
queue->send(0, 0, 0, 0); // TODO: check arguments queue->send(0, 0, 0, 0); // TODO: check arguments
} }
} }
} }
@ -790,7 +790,7 @@ error_code cellAudioRemoveNotifyEventQueue(u64 key)
if (*i == key) if (*i == key)
{ {
g_audio->keys.erase(i); g_audio->keys.erase(i);
return CELL_OK; return CELL_OK;
} }
} }

View File

@ -9,7 +9,7 @@
#include "cellVideoOut.h" #include "cellVideoOut.h"
#include "cellSysutil.h" #include "cellSysutil.h"
logs::channel cellAvconfExt("cellAvconfExt"); LOG_CHANNEL(cellAvconfExt);
s32 cellAudioOutUnregisterDevice(u32 deviceNumber) s32 cellAudioOutUnregisterDevice(u32 deviceNumber)
{ {

View File

@ -6,7 +6,7 @@
logs::channel cellBGDL("cellBGDL"); LOG_CHANNEL(cellBGDL);
s32 cellBGDLGetInfo(vm::cptr<char> content_id, vm::ptr<CellBGDLInfo> info, s32 num) s32 cellBGDLGetInfo(vm::cptr<char> content_id, vm::ptr<CellBGDLInfo> info, s32 num)
{ {

View File

@ -9,7 +9,7 @@
#include <thread> #include <thread>
logs::channel cellCamera("cellCamera"); LOG_CHANNEL(cellCamera);
// ************** // **************
// * Prototypes * // * Prototypes *
@ -392,7 +392,7 @@ s32 cellCameraOpenEx(s32 dev_num, vm::ptr<CellCameraInfoEx> info)
{ {
return CELL_CAMERA_ERROR_DEVICE_NOT_FOUND; return CELL_CAMERA_ERROR_DEVICE_NOT_FOUND;
} }
s32 status; s32 status;
if ((status = cellCameraSetAttribute(dev_num, CELL_CAMERA_READMODE, info->read_mode, 0)) != CELL_OK) if ((status = cellCameraSetAttribute(dev_num, CELL_CAMERA_READMODE, info->read_mode, 0)) != CELL_OK)
{ {

View File

@ -4,7 +4,7 @@
#include "cellCelp8Enc.h" #include "cellCelp8Enc.h"
logs::channel cellCelp8Enc("cellCelp8Enc"); LOG_CHANNEL(cellCelp8Enc);
s32 cellCelp8EncQueryAttr() s32 cellCelp8EncQueryAttr()

View File

@ -4,7 +4,7 @@
#include "cellCelpEnc.h" #include "cellCelpEnc.h"
logs::channel cellCelpEnc("cellCelpEnc"); LOG_CHANNEL(cellCelpEnc);
s32 cellCelpEncQueryAttr() s32 cellCelpEncQueryAttr()

View File

@ -5,7 +5,7 @@
logs::channel cellCrossController("cellCrossController"); LOG_CHANNEL(cellCrossController);
enum enum
{ {

View File

@ -3,7 +3,7 @@
#include "cellDaisy.h" #include "cellDaisy.h"
logs::channel cellDaisy("cellDaisy"); LOG_CHANNEL(cellDaisy);
using LFQueue2 = struct CellDaisyLFQueue2; using LFQueue2 = struct CellDaisyLFQueue2;
using Lock = struct CellDaisyLock; using Lock = struct CellDaisyLock;
@ -138,7 +138,7 @@ DECLARE(ppu_module_manager::cellDaisy)("cellDaisy", []()
REG_FNID(cellDaisy, "_QN4cell5Daisy29LFQueue2HasUnfinishedConsumerEPNS0_8LFQueue2Ej", cellDaisyLFQueue2HasUnfinishedConsumer); REG_FNID(cellDaisy, "_QN4cell5Daisy29LFQueue2HasUnfinishedConsumerEPNS0_8LFQueue2Ej", cellDaisyLFQueue2HasUnfinishedConsumer);
REG_FNID(cellDaisy, "_ZN4cell5Daisy16LFQueue2PushOpenEPNS0_8LFQueue2E", cellDaisyLFQueue2PushOpen); REG_FNID(cellDaisy, "_ZN4cell5Daisy16LFQueue2PushOpenEPNS0_8LFQueue2E", cellDaisyLFQueue2PushOpen);
REG_FNID(cellDaisy, "_QN4cell5Daisy16LFQueue2PushOpenEPNS0_8LFQueue2E", cellDaisyLFQueue2PushOpen); REG_FNID(cellDaisy, "_QN4cell5Daisy16LFQueue2PushOpenEPNS0_8LFQueue2E", cellDaisyLFQueue2PushOpen);
REG_FNID(cellDaisy, "_ZN4cell5Daisy16LFQueue2PopCloseEPNS0_8LFQueue2EPFiPvjE", cellDaisyLFQueue2PopClose); REG_FNID(cellDaisy, "_ZN4cell5Daisy16LFQueue2PopCloseEPNS0_8LFQueue2EPFiPvjE", cellDaisyLFQueue2PopClose);
REG_FNID(cellDaisy, "_QN4cell5Daisy16LFQueue2PopCloseEPNS0_8LFQueue2EPFiPvjE", cellDaisyLFQueue2PopClose); REG_FNID(cellDaisy, "_QN4cell5Daisy16LFQueue2PopCloseEPNS0_8LFQueue2EPFiPvjE", cellDaisyLFQueue2PopClose);
REG_FNID(cellDaisy, "_ZN4cell5Daisy15LFQueue2PopOpenEPNS0_8LFQueue2E", cellDaisyLFQueue2PopOpen); REG_FNID(cellDaisy, "_ZN4cell5Daisy15LFQueue2PopOpenEPNS0_8LFQueue2E", cellDaisyLFQueue2PopOpen);
REG_FNID(cellDaisy, "_QN4cell5Daisy15LFQueue2PopOpenEPNS0_8LFQueue2E", cellDaisyLFQueue2PopOpen); REG_FNID(cellDaisy, "_QN4cell5Daisy15LFQueue2PopOpenEPNS0_8LFQueue2E", cellDaisyLFQueue2PopOpen);

View File

@ -9,7 +9,7 @@
#include <thread> #include <thread>
logs::channel cellDmux("cellDmux"); LOG_CHANNEL(cellDmux);
/* Demuxer Thread Classes */ /* Demuxer Thread Classes */
@ -68,9 +68,9 @@ struct DemuxerStream
u64 get_ts(u8 c) u64 get_ts(u8 c)
{ {
u8 v[4]; get((u32&)v); u8 v[4]; get((u32&)v);
return return
(((u64)c & 0x0e) << 29) | (((u64)c & 0x0e) << 29) |
(((u64)v[0]) << 21) | (((u64)v[0]) << 21) |
(((u64)v[1] & 0x7e) << 15) | (((u64)v[1] & 0x7e) << 15) |
(((u64)v[2]) << 7) | ((u64)v[3] >> 1); (((u64)v[2]) << 7) | ((u64)v[3] >> 1);
@ -226,14 +226,14 @@ public:
{ {
break; break;
} }
if (!job.try_peek(task) && is_running && stream.addr) if (!job.try_peek(task) && is_running && stream.addr)
{ {
// default task (demuxing) (if there is no other work) // default task (demuxing) (if there is no other work)
be_t<u32> code; be_t<u32> code;
be_t<u16> len; be_t<u16> len;
if (!stream.peek(code)) if (!stream.peek(code))
{ {
// demuxing finished // demuxing finished
is_running = false; is_running = false;
@ -248,10 +248,10 @@ public:
is_working = false; is_working = false;
stream = {}; stream = {};
continue; continue;
} }
switch (code) switch (code)
{ {
case PACK_START_CODE: case PACK_START_CODE:
@ -338,7 +338,7 @@ public:
fmt::throw_exception("End of block (PRIVATE_STREAM_1, PesHeader + fid_minor, len=%d)" HERE, len); fmt::throw_exception("End of block (PRIVATE_STREAM_1, PesHeader + fid_minor, len=%d)" HERE, len);
} }
len -= pes.size + 4; len -= pes.size + 4;
u8 fid_minor; u8 fid_minor;
if (!stream.get(fid_minor)) if (!stream.get(fid_minor))
{ {
@ -388,7 +388,7 @@ public:
if (size < frame_size + 8) break; // skip non-complete AU if (size < frame_size + 8) break; // skip non-complete AU
if (es.isfull(frame_size + 8)) break; // skip if cannot push AU if (es.isfull(frame_size + 8)) break; // skip if cannot push AU
es.push_au(frame_size + 8, es.last_dts, es.last_pts, stream.userdata, false /* TODO: set correct value */, 0); es.push_au(frame_size + 8, es.last_dts, es.last_pts, stream.userdata, false /* TODO: set correct value */, 0);
//cellDmux.notice("ATX AU pushed (ats=0x%llx, frame_size=%d)", *(be_t<u64>*)data, frame_size); //cellDmux.notice("ATX AU pushed (ats=0x%llx, frame_size=%d)", *(be_t<u64>*)data, frame_size);
@ -465,7 +465,7 @@ public:
es.cbFunc(*this, id, es.id, esMsg, es.cbArg); es.cbFunc(*this, id, es.id, esMsg, es.cbArg);
lv2_obj::sleep(*this); lv2_obj::sleep(*this);
} }
if (pes.has_ts) if (pes.has_ts)
{ {
// preserve dts/pts for next AU // preserve dts/pts for next AU
@ -631,7 +631,7 @@ public:
es.cbFunc(*this, id, es.id, esMsg, es.cbArg); es.cbFunc(*this, id, es.id, esMsg, es.cbArg);
lv2_obj::sleep(*this); lv2_obj::sleep(*this);
} }
if (es.raw_data.size()) if (es.raw_data.size())
{ {
cellDmux.error("dmuxFlushEs: 0x%x bytes lost (es_id=%d)", (u32)es.raw_data.size(), es.id); cellDmux.error("dmuxFlushEs: 0x%x bytes lost (es_id=%d)", (u32)es.raw_data.size(), es.id);
@ -651,7 +651,7 @@ public:
task.es.es_ptr->reset(); task.es.es_ptr->reset();
break; break;
} }
case dmuxClose: case dmuxClose:
{ {
break; break;
@ -660,7 +660,7 @@ public:
default: default:
{ {
fmt::throw_exception("Demuxer thread error: unknown task (0x%x)" HERE, (u32)task.type); fmt::throw_exception("Demuxer thread error: unknown task (0x%x)" HERE, (u32)task.type);
} }
} }
} }
@ -689,7 +689,7 @@ PesHeader::PesHeader(DemuxerStream& stream)
{ {
fmt::throw_exception("End of stream (size=%d)" HERE, size); fmt::throw_exception("End of stream (size=%d)" HERE, size);
} }
u8 pos = 0; u8 pos = 0;
while (pos++ < size) while (pos++ < size)
{ {

View File

@ -4,7 +4,7 @@
#include "cellFiber.h" #include "cellFiber.h"
logs::channel cellFiber("cellFiber"); LOG_CHANNEL(cellFiber);
template <> template <>
void fmt_class_string<CellFiberError>::format(std::string& out, u64 arg) void fmt_class_string<CellFiberError>::format(std::string& out, u64 arg)

View File

@ -8,13 +8,13 @@
#include "cellFont.h" #include "cellFont.h"
logs::channel cellFont("cellFont"); LOG_CHANNEL(cellFont);
// Functions // Functions
s32 cellFontInitializeWithRevision(u64 revisionFlags, vm::ptr<CellFontConfig> config) s32 cellFontInitializeWithRevision(u64 revisionFlags, vm::ptr<CellFontConfig> config)
{ {
cellFont.warning("cellFontInitializeWithRevision(revisionFlags=0x%llx, config=*0x%x)", revisionFlags, config); cellFont.warning("cellFontInitializeWithRevision(revisionFlags=0x%llx, config=*0x%x)", revisionFlags, config);
if (config->fc_size < 24) if (config->fc_size < 24)
{ {
return CELL_FONT_ERROR_INVALID_PARAMETER; return CELL_FONT_ERROR_INVALID_PARAMETER;
@ -90,7 +90,7 @@ s32 cellFontOpenFontset(ppu_thread& ppu, vm::ptr<CellFontLibrary> library, vm::p
{ {
cellFont.warning("cellFontOpenFontset: Only Unicode is supported"); cellFont.warning("cellFontOpenFontset: Only Unicode is supported");
} }
std::string file; std::string file;
switch((u32)fontType->type) switch((u32)fontType->type)
{ {
@ -186,7 +186,7 @@ s32 cellFontSetFontOpenMode(u32 openMode)
s32 cellFontCreateRenderer(vm::ptr<CellFontLibrary> library, vm::ptr<CellFontRendererConfig> config, vm::ptr<CellFontRenderer> Renderer) s32 cellFontCreateRenderer(vm::ptr<CellFontLibrary> library, vm::ptr<CellFontRendererConfig> config, vm::ptr<CellFontRenderer> Renderer)
{ {
cellFont.todo("cellFontCreateRenderer(library=*0x%x, config=*0x%x, Renderer=*0x%x)", library, config, Renderer); cellFont.todo("cellFontCreateRenderer(library=*0x%x, config=*0x%x, Renderer=*0x%x)", library, config, Renderer);
//Write data in Renderer //Write data in Renderer
return CELL_OK; return CELL_OK;
@ -255,7 +255,7 @@ s32 cellFontBindRenderer(vm::ptr<CellFont> font, vm::ptr<CellFontRenderer> rende
s32 cellFontUnbindRenderer(vm::ptr<CellFont> font) s32 cellFontUnbindRenderer(vm::ptr<CellFont> font)
{ {
cellFont.warning("cellFontBindRenderer(font=*0x%x)", font); cellFont.warning("cellFontBindRenderer(font=*0x%x)", font);
if (!font->renderer_addr) if (!font->renderer_addr)
{ {
return CELL_FONT_ERROR_RENDERER_UNBIND; return CELL_FONT_ERROR_RENDERER_UNBIND;
@ -403,7 +403,7 @@ s32 cellFontGetCharGlyphMetrics(vm::ptr<CellFont> font, u32 code, vm::ptr<CellFo
float scale = stbtt_ScaleForPixelHeight(font->stbfont, font->scale_y); float scale = stbtt_ScaleForPixelHeight(font->stbfont, font->scale_y);
stbtt_GetCodepointBox(font->stbfont, code, &x0, &y0, &x1, &y1); stbtt_GetCodepointBox(font->stbfont, code, &x0, &y0, &x1, &y1);
stbtt_GetCodepointHMetrics(font->stbfont, code, &advanceWidth, &leftSideBearing); stbtt_GetCodepointHMetrics(font->stbfont, code, &advanceWidth, &leftSideBearing);
// TODO: Add the rest of the information // TODO: Add the rest of the information
metrics->width = (x1-x0) * scale; metrics->width = (x1-x0) * scale;
metrics->height = (y1-y0) * scale; metrics->height = (y1-y0) * scale;

View File

@ -3,7 +3,7 @@
#include "cellFontFT.h" #include "cellFontFT.h"
logs::channel cellFontFT("cellFontFT"); LOG_CHANNEL(cellFontFT);
s32 cellFontInitLibraryFreeTypeWithRevision(u64 revisionFlags, vm::ptr<CellFontLibraryConfigFT> config, vm::pptr<CellFontLibrary> lib) s32 cellFontInitLibraryFreeTypeWithRevision(u64 revisionFlags, vm::ptr<CellFontLibraryConfigFT> config, vm::pptr<CellFontLibrary> lib)
{ {

View File

@ -13,7 +13,7 @@
logs::channel cellFs("cellFs"); LOG_CHANNEL(cellFs);
error_code cellFsGetPath(u32 fd, vm::ptr<char> out_path) error_code cellFsGetPath(u32 fd, vm::ptr<char> out_path)
{ {

View File

@ -12,7 +12,7 @@
#include <thread> #include <thread>
logs::channel cellGame("cellGame"); LOG_CHANNEL(cellGame);
template<> template<>
void fmt_class_string<CellGameError>::format(std::string& out, u64 arg) void fmt_class_string<CellGameError>::format(std::string& out, u64 arg)

View File

@ -3,7 +3,7 @@
#include "cellGame.h" #include "cellGame.h"
logs::channel cellGameExec("cellGameExec"); LOG_CHANNEL(cellGameExec);
s32 cellGameSetExitParam(u32 execdata) s32 cellGameSetExitParam(u32 execdata)
{ {

View File

@ -10,7 +10,7 @@
#include <thread> #include <thread>
logs::channel cellGcmSys("cellGcmSys"); LOG_CHANNEL(cellGcmSys);
extern s32 cellGcmCallback(ppu_thread& ppu, vm::ptr<CellGcmContextData> context, u32 count); extern s32 cellGcmCallback(ppu_thread& ppu, vm::ptr<CellGcmContextData> context, u32 count);

View File

@ -8,7 +8,7 @@
#include "pad_thread.h" #include "pad_thread.h"
#include "Utilities/Timer.h" #include "Utilities/Timer.h"
logs::channel cellGem("cellGem"); LOG_CHANNEL(cellGem);
// ********************** // **********************
// * HLE helper structs * // * HLE helper structs *

View File

@ -9,7 +9,7 @@
#include "Emu/Cell/lv2/sys_fs.h" #include "Emu/Cell/lv2/sys_fs.h"
#include "cellGifDec.h" #include "cellGifDec.h"
logs::channel cellGifDec("cellGifDec"); LOG_CHANNEL(cellGifDec);
// cellGifDec aliases (only for cellGifDec.cpp) // cellGifDec aliases (only for cellGifDec.cpp)
using PPMainHandle = vm::pptr<GifDecoder>; using PPMainHandle = vm::pptr<GifDecoder>;
@ -85,7 +85,7 @@ s32 cellGifDecReadHeader(PMainHandle mainHandle, PSubHandle subHandle, PInfo inf
const u32& fd = subHandle->fd; const u32& fd = subHandle->fd;
const u64& fileSize = subHandle->fileSize; const u64& fileSize = subHandle->fileSize;
CellGifDecInfo& current_info = subHandle->info; CellGifDecInfo& current_info = subHandle->info;
// Write the header to buffer // Write the header to buffer
u8 buffer[13]; u8 buffer[13];
@ -121,7 +121,7 @@ s32 cellGifDecReadHeader(PMainHandle mainHandle, PSubHandle subHandle, PInfo inf
current_info.SPixelAspectRatio = buffer[12]; current_info.SPixelAspectRatio = buffer[12];
*info = current_info; *info = current_info;
return CELL_OK; return CELL_OK;
} }
@ -168,7 +168,7 @@ s32 cellGifDecDecodeData(PMainHandle mainHandle, PSubHandle subHandle, vm::ptr<u
const u32& fd = subHandle->fd; const u32& fd = subHandle->fd;
const u64& fileSize = subHandle->fileSize; const u64& fileSize = subHandle->fileSize;
const CellGifDecOutParam& current_outParam = subHandle->outParam; const CellGifDecOutParam& current_outParam = subHandle->outParam;
//Copy the GIF file to a buffer //Copy the GIF file to a buffer
std::unique_ptr<u8[]> gif(new u8[fileSize]); std::unique_ptr<u8[]> gif(new u8[fileSize]);
@ -251,14 +251,14 @@ s32 cellGifDecDecodeData(PMainHandle mainHandle, PSubHandle subHandle, vm::ptr<u
uint* img = (uint*)new char[image_size]; uint* img = (uint*)new char[image_size];
uint* source_current = (uint*)&(image.get()[0]); uint* source_current = (uint*)&(image.get()[0]);
uint* dest_current = img; uint* dest_current = img;
for (uint i = 0; i < image_size / nComponents; i++) for (uint i = 0; i < image_size / nComponents; i++)
{ {
uint val = *source_current; uint val = *source_current;
*dest_current = (val >> 24) | (val << 8); // set alpha (A8) as leftmost byte *dest_current = (val >> 24) | (val << 8); // set alpha (A8) as leftmost byte
source_current++; source_current++;
dest_current++; dest_current++;
} }
memcpy(data.get_ptr(), img, image_size); memcpy(data.get_ptr(), img, image_size);
delete[] img; delete[] img;
} }
} }
@ -306,7 +306,7 @@ DECLARE(ppu_module_manager::cellGifDec)("cellGifDec", []()
REG_FUNC(cellGifDec, cellGifDecDecodeData); REG_FUNC(cellGifDec, cellGifDecDecodeData);
REG_FUNC(cellGifDec, cellGifDecClose); REG_FUNC(cellGifDec, cellGifDecClose);
REG_FUNC(cellGifDec, cellGifDecDestroy); REG_FUNC(cellGifDec, cellGifDecDestroy);
REG_FUNC(cellGifDec, cellGifDecExtOpen); REG_FUNC(cellGifDec, cellGifDecExtOpen);
REG_FUNC(cellGifDec, cellGifDecExtReadHeader); REG_FUNC(cellGifDec, cellGifDecExtReadHeader);
REG_FUNC(cellGifDec, cellGifDecExtSetParameter); REG_FUNC(cellGifDec, cellGifDecExtSetParameter);

View File

@ -3,7 +3,7 @@
#include "cellHttp.h" #include "cellHttp.h"
logs::channel cellHttp("cellHttp"); LOG_CHANNEL(cellHttp);
s32 cellHttpAuthCacheExport() s32 cellHttpAuthCacheExport()
{ {

View File

@ -11,7 +11,7 @@
#pragma comment(lib, "Winhttp.lib") #pragma comment(lib, "Winhttp.lib")
#endif #endif
logs::channel cellHttpUtil("cellHttpUtil"); LOG_CHANNEL(cellHttpUtil);
s32 cellHttpUtilParseUri(vm::ptr<CellHttpUri> uri, vm::cptr<char> str, vm::ptr<void> pool, u32 size, vm::ptr<u32> required) s32 cellHttpUtilParseUri(vm::ptr<CellHttpUri> uri, vm::cptr<char> str, vm::ptr<void> pool, u32 size, vm::ptr<u32> required)
{ {

View File

@ -2,7 +2,7 @@
#include "Emu/Cell/PPUModule.h" #include "Emu/Cell/PPUModule.h"
#include "cellImeJp.h" #include "cellImeJp.h"
logs::channel cellImeJp("cellImeJp"); LOG_CHANNEL(cellImeJp);
// Return Codes // Return Codes
enum enum

View File

@ -9,7 +9,7 @@
#include "Emu/Cell/lv2/sys_fs.h" #include "Emu/Cell/lv2/sys_fs.h"
#include "cellJpgDec.h" #include "cellJpgDec.h"
logs::channel cellJpgDec("cellJpgDec"); LOG_CHANNEL(cellJpgDec);
s32 cellJpgDecCreate(u32 mainHandle, u32 threadInParam, u32 threadOutParam) s32 cellJpgDecCreate(u32 mainHandle, u32 threadInParam, u32 threadOutParam)
{ {
@ -120,11 +120,11 @@ s32 cellJpgDecReadHeader(u32 mainHandle, u32 subHandle, vm::ptr<CellJpgDecInfo>
if ((le_t<u32>&)(buffer[0]) != 0xE0FFD8FF || // Error: Not a valid SOI header if ((le_t<u32>&)(buffer[0]) != 0xE0FFD8FF || // Error: Not a valid SOI header
(le_t<u32>&)(buffer[6]) != 0x4649464A) // Error: Not a valid JFIF string (le_t<u32>&)(buffer[6]) != 0x4649464A) // Error: Not a valid JFIF string
{ {
return CELL_JPGDEC_ERROR_HEADER; return CELL_JPGDEC_ERROR_HEADER;
} }
u32 i = 4; u32 i = 4;
if(i >= fileSize) if(i >= fileSize)
return CELL_JPGDEC_ERROR_HEADER; return CELL_JPGDEC_ERROR_HEADER;
@ -176,7 +176,7 @@ s32 cellJpgDecDecodeData(u32 mainHandle, u32 subHandle, vm::ptr<u8> data, vm::cp
const u32& fd = subHandle_data->fd; const u32& fd = subHandle_data->fd;
const u64& fileSize = subHandle_data->fileSize; const u64& fileSize = subHandle_data->fileSize;
const CellJpgDecOutParam& current_outParam = subHandle_data->outParam; const CellJpgDecOutParam& current_outParam = subHandle_data->outParam;
//Copy the JPG file to a buffer //Copy the JPG file to a buffer
std::unique_ptr<u8[]> jpg(new u8[fileSize]); std::unique_ptr<u8[]> jpg(new u8[fileSize]);
@ -264,14 +264,14 @@ s32 cellJpgDecDecodeData(u32 mainHandle, u32 subHandle, vm::ptr<u8> data, vm::cp
uint* img = (uint*)new char[image_size]; uint* img = (uint*)new char[image_size];
uint* source_current = (uint*)&(image.get()[0]); uint* source_current = (uint*)&(image.get()[0]);
uint* dest_current = img; uint* dest_current = img;
for (uint i = 0; i < image_size / nComponents; i++) for (uint i = 0; i < image_size / nComponents; i++)
{ {
uint val = *source_current; uint val = *source_current;
*dest_current = (val >> 24) | (val << 8); // set alpha (A8) as leftmost byte *dest_current = (val >> 24) | (val << 8); // set alpha (A8) as leftmost byte
source_current++; source_current++;
dest_current++; dest_current++;
} }
memcpy(data.get_ptr(), img, image_size); memcpy(data.get_ptr(), img, image_size);
delete[] img; delete[] img;
} }
} }

View File

@ -3,7 +3,7 @@
#include "cellJpgEnc.h" #include "cellJpgEnc.h"
logs::channel cellJpgEnc("cellJpgEnc"); LOG_CHANNEL(cellJpgEnc);
s32 cellJpgEncQueryAttr() s32 cellJpgEncQueryAttr()

View File

@ -3,7 +3,7 @@
logs::channel cellKey2char("cellKey2char"); LOG_CHANNEL(cellKey2char);
// Return Codes // Return Codes
enum CellKey2CharError : u32 enum CellKey2CharError : u32

View File

@ -15,7 +15,7 @@ typedef const char *HostCode;
#include "cellL10n.h" #include "cellL10n.h"
logs::channel cellL10n("cellL10n"); LOG_CHANNEL(cellL10n);
// Translate code id to code name. some codepage may has another name. // Translate code id to code name. some codepage may has another name.
// If this makes your compilation fail, try replace the string code with one in "iconv -l" // If this makes your compilation fail, try replace the string code with one in "iconv -l"
@ -53,8 +53,8 @@ bool _L10nCodeParse(s32 code, HostCode& retCode)
case L10N_CODEPAGE_866: retCode = 866; return true; case L10N_CODEPAGE_866: retCode = 866; return true;
case L10N_CODEPAGE_932: retCode = 932; return true; case L10N_CODEPAGE_932: retCode = 932; return true;
case L10N_CODEPAGE_936: retCode = 936; return true; // GBK case L10N_CODEPAGE_936: retCode = 936; return true; // GBK
case L10N_GBK: retCode = 936; return true; case L10N_GBK: retCode = 936; return true;
case L10N_CODEPAGE_949: retCode = 949; return true; // UHC case L10N_CODEPAGE_949: retCode = 949; return true; // UHC
case L10N_UHC: retCode = 949; return true; // UHC case L10N_UHC: retCode = 949; return true; // UHC
case L10N_CODEPAGE_950: retCode = 950; return true; case L10N_CODEPAGE_950: retCode = 950; return true;
case L10N_CODEPAGE_1251: retCode = 1251; return true; // CYRL case L10N_CODEPAGE_1251: retCode = 1251; return true; // CYRL
@ -409,7 +409,7 @@ s32 jis2sjis()
s32 jstrnchk(vm::cptr<u8> src, s32 src_len) s32 jstrnchk(vm::cptr<u8> src, s32 src_len)
{ {
u8 r = 0; u8 r = 0;
for (u32 len = 0; len < src_len; len++) for (u32 len = 0; len < src_len; len++)
{ {
if (src != vm::null) if (src != vm::null)
@ -418,14 +418,14 @@ s32 jstrnchk(vm::cptr<u8> src, s32 src_len)
{ {
cellL10n.warning("jstrnchk: EUCJP (src=*0x%x, src_len=*0x%x)", src, src_len); cellL10n.warning("jstrnchk: EUCJP (src=*0x%x, src_len=*0x%x)", src, src_len);
r |= L10N_STR_EUCJP; r |= L10N_STR_EUCJP;
} }
else if( ((*src >= 0x81 && *src <= 0x9f) || (*src >= 0xe0 && *src <= 0xfc)) || (*src >= 0x40 && *src <= 0xfc && *src != 0x7f) ) else if( ((*src >= 0x81 && *src <= 0x9f) || (*src >= 0xe0 && *src <= 0xfc)) || (*src >= 0x40 && *src <= 0xfc && *src != 0x7f) )
{ {
cellL10n.warning("jstrnchk: SJIS (src=*0x%x, src_len=*0x%x)", src, src_len); cellL10n.warning("jstrnchk: SJIS (src=*0x%x, src_len=*0x%x)", src, src_len);
r |= L10N_STR_SJIS; r |= L10N_STR_SJIS;
} }
// ISO-2022-JP. (JIS X 0202) That's an inaccurate general range which (contains ASCII and UTF-8 characters?). // ISO-2022-JP. (JIS X 0202) That's an inaccurate general range which (contains ASCII and UTF-8 characters?).
else if (*src >= 0x21 && *src <= 0x7e) else if (*src >= 0x21 && *src <= 0x7e)
{ {
cellL10n.warning("jstrnchk: JIS (src=*0x%x, src_len=*0x%x)", src, src_len); cellL10n.warning("jstrnchk: JIS (src=*0x%x, src_len=*0x%x)", src, src_len);
r |= L10N_STR_JIS; r |= L10N_STR_JIS;
@ -437,7 +437,7 @@ s32 jstrnchk(vm::cptr<u8> src, s32 src_len)
// TODO: // TODO:
// L10N_STR_ASCII // L10N_STR_ASCII
// L10N_STR_UTF8 // L10N_STR_UTF8
// L10N_STR_UNKNOWN // L10N_STR_UNKNOWN
// L10N_STR_ILLEGAL // L10N_STR_ILLEGAL
// L10N_STR_ERROR // L10N_STR_ERROR
@ -683,7 +683,7 @@ s32 EUCKRtoUHC()
s32 UCS2toSJIS(u16 ch, vm::ptr<void> dst) s32 UCS2toSJIS(u16 ch, vm::ptr<void> dst)
{ {
cellL10n.todo("UCS2toSJIS(ch=%d, dst=*0x%x)", ch, dst); cellL10n.todo("UCS2toSJIS(ch=%d, dst=*0x%x)", ch, dst);
// Should be L10N_UCS2 (16bit) not L10N_UTF8 (8bit) and L10N_SHIFT_JIS // Should be L10N_UCS2 (16bit) not L10N_UTF8 (8bit) and L10N_SHIFT_JIS
// return _L10nConvertCharNoResult(L10N_UTF8, &ch, sizeof(ch), L10N_CODEPAGE_932, dst); // return _L10nConvertCharNoResult(L10N_UTF8, &ch, sizeof(ch), L10N_CODEPAGE_932, dst);
return 0; return 0;
} }

View File

@ -1,7 +1,7 @@
#include "stdafx.h" #include "stdafx.h"
#include "Emu/Cell/PPUModule.h" #include "Emu/Cell/PPUModule.h"
logs::channel cellLibprof("cellLibprof"); LOG_CHANNEL(cellLibprof);
s32 cellUserTraceInit() s32 cellUserTraceInit()
{ {

View File

@ -4,7 +4,7 @@
#include "cellMic.h" #include "cellMic.h"
logs::channel cellMic("cellMic"); LOG_CHANNEL(cellMic);
s32 cellMicInit() s32 cellMicInit()
{ {

View File

@ -11,7 +11,7 @@
#include "cellMusic.h" #include "cellMusic.h"
logs::channel cellMusic("cellMusic"); LOG_CHANNEL(cellMusic);
struct music_t struct music_t
{ {

View File

@ -10,7 +10,7 @@
logs::channel cellMusicDecode("cellMusicDecode"); LOG_CHANNEL(cellMusicDecode);
// Return Codes // Return Codes
enum enum

View File

@ -4,7 +4,7 @@
logs::channel cellMusicExport("cellMusicExport"); LOG_CHANNEL(cellMusicExport);
// Return Codes // Return Codes
enum enum

View File

@ -8,7 +8,7 @@
#include "Utilities/StrUtil.h" #include "Utilities/StrUtil.h"
logs::channel cellNetCtl("cellNetCtl"); LOG_CHANNEL(cellNetCtl);
template <> template <>
void fmt_class_string<CellNetCtlError>::format(std::string& out, u64 arg) void fmt_class_string<CellNetCtlError>::format(std::string& out, u64 arg)

View File

@ -6,7 +6,7 @@
#include "cellOskDialog.h" #include "cellOskDialog.h"
#include "cellMsgDialog.h" #include "cellMsgDialog.h"
logs::channel cellOskDialog("cellOskDialog"); LOG_CHANNEL(cellOskDialog);
static char16_t s_osk_text[CELL_OSKDIALOG_STRING_SIZE]; static char16_t s_osk_text[CELL_OSKDIALOG_STRING_SIZE];
@ -133,7 +133,7 @@ s32 cellOskDialogSetLayoutMode(s32 layoutMode)
s32 cellOskDialogGetInputText(vm::ptr<CellOskDialogCallbackReturnParam> OutputInfo) s32 cellOskDialogGetInputText(vm::ptr<CellOskDialogCallbackReturnParam> OutputInfo)
{ {
cellOskDialog.warning("cellOskDialogGetInputText(OutputInfo=*0x%x)", OutputInfo); cellOskDialog.warning("cellOskDialogGetInputText(OutputInfo=*0x%x)", OutputInfo);
return cellOskDialogUnloadAsync(OutputInfo); //Same but for use with cellOskDialogSetSeparateWindowOption(). TODO. return cellOskDialogUnloadAsync(OutputInfo); //Same but for use with cellOskDialogSetSeparateWindowOption(). TODO.
} }
s32 cellOskDialogExtInputDeviceUnlock() s32 cellOskDialogExtInputDeviceUnlock()

View File

@ -4,7 +4,7 @@
logs::channel cellOvis("cellOvis"); LOG_CHANNEL(cellOvis);
// Return Codes // Return Codes
enum enum

View File

@ -12,7 +12,7 @@ bool squeue_test_exit()
return Emu.IsStopped(); return Emu.IsStopped();
} }
logs::channel cellPamf("cellPamf"); LOG_CHANNEL(cellPamf);
s32 pamfStreamTypeToEsFilterId(u8 type, u8 ch, CellCodecEsFilterId& pEsFilterId) s32 pamfStreamTypeToEsFilterId(u8 type, u8 ch, CellCodecEsFilterId& pEsFilterId)
{ {
@ -20,7 +20,7 @@ s32 pamfStreamTypeToEsFilterId(u8 type, u8 ch, CellCodecEsFilterId& pEsFilterId)
verify(HERE), (ch < 16); verify(HERE), (ch < 16);
pEsFilterId.supplementalInfo1 = type == CELL_PAMF_STREAM_TYPE_AVC; pEsFilterId.supplementalInfo1 = type == CELL_PAMF_STREAM_TYPE_AVC;
pEsFilterId.supplementalInfo2 = 0; pEsFilterId.supplementalInfo2 = 0;
switch (type) switch (type)
{ {
case CELL_PAMF_STREAM_TYPE_AVC: case CELL_PAMF_STREAM_TYPE_AVC:
@ -38,7 +38,7 @@ s32 pamfStreamTypeToEsFilterId(u8 type, u8 ch, CellCodecEsFilterId& pEsFilterId)
pEsFilterId.filterIdMinor = 0; pEsFilterId.filterIdMinor = 0;
break; break;
} }
case CELL_PAMF_STREAM_TYPE_ATRAC3PLUS: case CELL_PAMF_STREAM_TYPE_ATRAC3PLUS:
{ {
// code = 0xdc // code = 0xdc
@ -46,7 +46,7 @@ s32 pamfStreamTypeToEsFilterId(u8 type, u8 ch, CellCodecEsFilterId& pEsFilterId)
pEsFilterId.filterIdMinor = ch; pEsFilterId.filterIdMinor = ch;
break; break;
} }
case CELL_PAMF_STREAM_TYPE_PAMF_LPCM: case CELL_PAMF_STREAM_TYPE_PAMF_LPCM:
{ {
// code = 0x80 // code = 0x80
@ -62,7 +62,7 @@ s32 pamfStreamTypeToEsFilterId(u8 type, u8 ch, CellCodecEsFilterId& pEsFilterId)
pEsFilterId.filterIdMinor = 0x30 | ch; pEsFilterId.filterIdMinor = 0x30 | ch;
break; break;
} }
case CELL_PAMF_STREAM_TYPE_USER_DATA: case CELL_PAMF_STREAM_TYPE_USER_DATA:
{ {
// code = 0xdd // code = 0xdd
@ -102,7 +102,7 @@ s32 pamfStreamTypeToEsFilterId(u8 type, u8 ch, CellCodecEsFilterId& pEsFilterId)
pEsFilterId.filterIdMinor = 0x20 | ch; pEsFilterId.filterIdMinor = 0x20 | ch;
break; break;
} }
default: default:
{ {
cellPamf.error("pamfStreamTypeToEsFilterId(): unknown type (%d, ch=%d)", type, ch); cellPamf.error("pamfStreamTypeToEsFilterId(): unknown type (%d, ch=%d)", type, ch);
@ -149,13 +149,13 @@ u8 pamfGetStreamChannel(vm::ptr<CellPamfReader> pSelf, u32 stream)
verify(HERE), (header.fid_major & 0xf0) == 0xe0, header.fid_minor == 0; verify(HERE), (header.fid_major & 0xf0) == 0xe0, header.fid_minor == 0;
return header.fid_major % 16; return header.fid_major % 16;
} }
case 0xdc: // ATRAC3PLUS case 0xdc: // ATRAC3PLUS
{ {
verify(HERE), header.fid_major == 0xbd, (header.fid_minor & 0xf0) == 0; verify(HERE), header.fid_major == 0xbd, (header.fid_minor & 0xf0) == 0;
return header.fid_minor % 16; return header.fid_minor % 16;
} }
case 0x80: // LPCM case 0x80: // LPCM
{ {
verify(HERE), header.fid_major == 0xbd, (header.fid_minor & 0xf0) == 0x40; verify(HERE), header.fid_major == 0xbd, (header.fid_minor & 0xf0) == 0x40;
@ -224,7 +224,7 @@ s32 cellPamfVerify(vm::ptr<PamfHeader> pAddr, u64 fileSize)
s32 cellPamfReaderInitialize(vm::ptr<CellPamfReader> pSelf, vm::cptr<PamfHeader> pAddr, u64 fileSize, u32 attribute) s32 cellPamfReaderInitialize(vm::ptr<CellPamfReader> pSelf, vm::cptr<PamfHeader> pAddr, u64 fileSize, u32 attribute)
{ {
cellPamf.warning("cellPamfReaderInitialize(pSelf=*0x%x, pAddr=*0x%x, fileSize=0x%llx, attribute=0x%x)", pSelf, pAddr, fileSize, attribute); cellPamf.warning("cellPamfReaderInitialize(pSelf=*0x%x, pAddr=*0x%x, fileSize=0x%llx, attribute=0x%x)", pSelf, pAddr, fileSize, attribute);
if (fileSize) if (fileSize)
{ {
pSelf->fileSize = fileSize; pSelf->fileSize = fileSize;
@ -286,7 +286,7 @@ u8 cellPamfReaderGetNumberOfStreams(vm::ptr<CellPamfReader> pSelf)
u8 cellPamfReaderGetNumberOfSpecificStreams(vm::ptr<CellPamfReader> pSelf, u8 streamType) u8 cellPamfReaderGetNumberOfSpecificStreams(vm::ptr<CellPamfReader> pSelf, u8 streamType)
{ {
cellPamf.warning("cellPamfReaderGetNumberOfSpecificStreams(pSelf=*0x%x, streamType=%d)", pSelf, streamType); cellPamf.warning("cellPamfReaderGetNumberOfSpecificStreams(pSelf=*0x%x, streamType=%d)", pSelf, streamType);
// cannot return error code // cannot return error code
u8 counts[256] = {}; u8 counts[256] = {};
@ -307,12 +307,12 @@ u8 cellPamfReaderGetNumberOfSpecificStreams(vm::ptr<CellPamfReader> pSelf, u8 st
{ {
return counts[streamType]; return counts[streamType];
} }
case CELL_PAMF_STREAM_TYPE_VIDEO: case CELL_PAMF_STREAM_TYPE_VIDEO:
{ {
return counts[CELL_PAMF_STREAM_TYPE_AVC] + counts[CELL_PAMF_STREAM_TYPE_M2V]; return counts[CELL_PAMF_STREAM_TYPE_AVC] + counts[CELL_PAMF_STREAM_TYPE_M2V];
} }
case CELL_PAMF_STREAM_TYPE_AUDIO: case CELL_PAMF_STREAM_TYPE_AUDIO:
{ {
return counts[CELL_PAMF_STREAM_TYPE_ATRAC3PLUS] + counts[CELL_PAMF_STREAM_TYPE_PAMF_LPCM] + counts[CELL_PAMF_STREAM_TYPE_AC3]; return counts[CELL_PAMF_STREAM_TYPE_ATRAC3PLUS] + counts[CELL_PAMF_STREAM_TYPE_PAMF_LPCM] + counts[CELL_PAMF_STREAM_TYPE_AC3];
@ -351,7 +351,7 @@ s32 cellPamfReaderSetStreamWithTypeAndChannel(vm::ptr<CellPamfReader> pSelf, u8
for (u8 i = 0; i < pSelf->pAddr->stream_count; i++) for (u8 i = 0; i < pSelf->pAddr->stream_count; i++)
{ {
if (pamfGetStreamType(pSelf, i) == streamType) if (pamfGetStreamType(pSelf, i) == streamType)
{ {
if (pamfGetStreamChannel(pSelf, i) == ch) if (pamfGetStreamChannel(pSelf, i) == ch)
{ {
@ -388,7 +388,7 @@ s32 cellPamfReaderSetStreamWithTypeAndIndex(vm::ptr<CellPamfReader> pSelf, u8 st
} }
break; break;
} }
case CELL_PAMF_STREAM_TYPE_AUDIO: case CELL_PAMF_STREAM_TYPE_AUDIO:
{ {
if (type == CELL_PAMF_STREAM_TYPE_ATRAC3PLUS || type == CELL_PAMF_STREAM_TYPE_AC3 || type == CELL_PAMF_STREAM_TYPE_PAMF_LPCM) if (type == CELL_PAMF_STREAM_TYPE_ATRAC3PLUS || type == CELL_PAMF_STREAM_TYPE_AC3 || type == CELL_PAMF_STREAM_TYPE_PAMF_LPCM)
@ -397,7 +397,7 @@ s32 cellPamfReaderSetStreamWithTypeAndIndex(vm::ptr<CellPamfReader> pSelf, u8 st
} }
break; break;
} }
default: default:
{ {
if (streamType > 5) if (streamType > 5)
@ -425,7 +425,7 @@ s32 cellPamfStreamTypeToEsFilterId(u8 type, u8 ch, vm::ptr<CellCodecEsFilterId>
{ {
return CELL_PAMF_ERROR_INVALID_ARG; return CELL_PAMF_ERROR_INVALID_ARG;
} }
return pamfStreamTypeToEsFilterId(type, ch, *pEsFilterId); return pamfStreamTypeToEsFilterId(type, ch, *pEsFilterId);
} }
@ -524,7 +524,7 @@ s32 cellPamfReaderGetStreamInfo(vm::ptr<CellPamfReader> pSelf, vm::ptr<void> pIn
info->transferCharacteristics = 0; info->transferCharacteristics = 0;
info->matrixCoefficients = 0; info->matrixCoefficients = 0;
} }
info->entropyCodingModeFlag = (header.AVC.x18 & 0x80) >> 7; info->entropyCodingModeFlag = (header.AVC.x18 & 0x80) >> 7;
info->deblockingFilterFlag = (header.AVC.x18 & 0x40) >> 6; info->deblockingFilterFlag = (header.AVC.x18 & 0x40) >> 6;
info->minNumSlicePerPictureIdc = (header.AVC.x18 & 0x30) >> 4; info->minNumSlicePerPictureIdc = (header.AVC.x18 & 0x30) >> 4;
@ -534,7 +534,7 @@ s32 cellPamfReaderGetStreamInfo(vm::ptr<CellPamfReader> pSelf, vm::ptr<void> pIn
cellPamf.notice("cellPamfReaderGetStreamInfo(): CELL_PAMF_STREAM_TYPE_AVC"); cellPamf.notice("cellPamfReaderGetStreamInfo(): CELL_PAMF_STREAM_TYPE_AVC");
break; break;
} }
case CELL_PAMF_STREAM_TYPE_M2V: case CELL_PAMF_STREAM_TYPE_M2V:
{ {
if (size < sizeof(CellPamfM2vInfo)) if (size < sizeof(CellPamfM2vInfo))
@ -592,8 +592,8 @@ s32 cellPamfReaderGetStreamInfo(vm::ptr<CellPamfReader> pSelf, vm::ptr<void> pIn
cellPamf.notice("cellPamfReaderGetStreamInfo(): CELL_PAMF_STREAM_TYPE_M2V"); cellPamf.notice("cellPamfReaderGetStreamInfo(): CELL_PAMF_STREAM_TYPE_M2V");
break; break;
} }
case CELL_PAMF_STREAM_TYPE_ATRAC3PLUS: case CELL_PAMF_STREAM_TYPE_ATRAC3PLUS:
{ {
if (size < sizeof(CellPamfAtrac3plusInfo)) if (size < sizeof(CellPamfAtrac3plusInfo))
{ {
@ -694,7 +694,7 @@ s32 cellPamfReaderGetStreamInfo(vm::ptr<CellPamfReader> pSelf, vm::ptr<void> pIn
return CELL_PAMF_ERROR_INVALID_PAMF; return CELL_PAMF_ERROR_INVALID_PAMF;
} }
} }
return CELL_OK; return CELL_OK;
} }

View File

@ -4,7 +4,7 @@
logs::channel cellPhotoDecode("cellPhotoDecode"); LOG_CHANNEL(cellPhotoDecode);
// Return Codes // Return Codes
enum enum

View File

@ -4,7 +4,7 @@
logs::channel cellPhotoExport("cellPhotoExport"); LOG_CHANNEL(cellPhotoExport);
// Return Codes // Return Codes
enum enum

View File

@ -5,7 +5,7 @@
logs::channel cellPhotoImportUtil("cellPhotoImportUtil"); LOG_CHANNEL(cellPhotoImportUtil);
// Return Codes // Return Codes
enum enum
@ -46,15 +46,15 @@ enum CellPhotoImportTexRot
}; };
struct CellPhotoImportFileDataSub struct CellPhotoImportFileDataSub
{ {
be_t<s32> width; be_t<s32> width;
be_t<s32> height; be_t<s32> height;
be_t<CellPhotoImportFormatType> format; be_t<CellPhotoImportFormatType> format;
be_t<CellPhotoImportTexRot> rotate; be_t<CellPhotoImportTexRot> rotate;
}; };
struct CellPhotoImportFileData struct CellPhotoImportFileData
{ {
char dstFileName[CELL_FS_MAX_FS_FILE_NAME_LENGTH]; char dstFileName[CELL_FS_MAX_FS_FILE_NAME_LENGTH];
char photo_title[CELL_PHOTO_IMPORT_PHOTO_TITLE_MAX_LENGTH * 3]; char photo_title[CELL_PHOTO_IMPORT_PHOTO_TITLE_MAX_LENGTH * 3];
char game_title[CELL_PHOTO_IMPORT_GAME_TITLE_MAX_SIZE]; char game_title[CELL_PHOTO_IMPORT_GAME_TITLE_MAX_SIZE];
@ -65,7 +65,7 @@ struct CellPhotoImportFileData
}; };
struct CellPhotoImportSetParam struct CellPhotoImportSetParam
{ {
be_t<u32> fileSizeMax; be_t<u32> fileSizeMax;
vm::bptr<void> reserved1; vm::bptr<void> reserved1;
vm::bptr<void> reserved2; vm::bptr<void> reserved2;

View File

@ -19,7 +19,7 @@ typedef png_bytep iCCP_profile_type;
typedef png_charp iCCP_profile_type; typedef png_charp iCCP_profile_type;
#endif #endif
logs::channel cellPngDec("cellPngDec"); LOG_CHANNEL(cellPngDec);
// cellPngDec aliases to improve readability // cellPngDec aliases to improve readability
using PPHandle = vm::pptr<PngHandle>; using PPHandle = vm::pptr<PngHandle>;
@ -86,7 +86,7 @@ void pngDecReadBuffer(png_structp png_ptr, png_bytep out, png_size_t length)
void pngDecRowCallback(png_structp png_ptr, png_bytep new_row, png_uint_32 row_num, int pass) void pngDecRowCallback(png_structp png_ptr, png_bytep new_row, png_uint_32 row_num, int pass)
{ {
PngStream* stream = (PngStream*)png_get_progressive_ptr(png_ptr); PngStream* stream = (PngStream*)png_get_progressive_ptr(png_ptr);
if (!stream) if (!stream)
{ {
cellPngDec.error("Failed to obtain streamPtr in rowCallback."); cellPngDec.error("Failed to obtain streamPtr in rowCallback.");
return; return;
@ -98,9 +98,9 @@ void pngDecRowCallback(png_structp png_ptr, png_bytep new_row, png_uint_32 row_n
if (stream->ppuContext && (stream->nextRow == row_num || pass > 0)) if (stream->ppuContext && (stream->nextRow == row_num || pass > 0))
{ {
if (pass > 0 ) if (pass > 0 )
{ {
stream->cbDispInfo->scanPassCount = pass; stream->cbDispInfo->scanPassCount = pass;
stream->cbDispInfo->nextOutputStartY = row_num; stream->cbDispInfo->nextOutputStartY = row_num;
} }
else { else {
@ -113,7 +113,7 @@ void pngDecRowCallback(png_structp png_ptr, png_bytep new_row, png_uint_32 row_n
stream->cbDispInfo->outputStartY = row_num; stream->cbDispInfo->outputStartY = row_num;
} }
u8* data; u8* data;
if (pass > 0) if (pass > 0)
data = static_cast<u8*>(stream->cbDispParam->nextOutputImage.get_ptr()); data = static_cast<u8*>(stream->cbDispParam->nextOutputImage.get_ptr());
else else
data = static_cast<u8*>(stream->cbDispParam->nextOutputImage.get_ptr()) + ((row_num - stream->cbDispInfo->outputStartY) * stream->cbDispInfo->outputFrameWidthByte); data = static_cast<u8*>(stream->cbDispParam->nextOutputImage.get_ptr()) + ((row_num - stream->cbDispInfo->outputStartY) * stream->cbDispInfo->outputFrameWidthByte);
@ -121,10 +121,10 @@ void pngDecRowCallback(png_structp png_ptr, png_bytep new_row, png_uint_32 row_n
png_progressive_combine_row(png_ptr, data, new_row); png_progressive_combine_row(png_ptr, data, new_row);
} }
void pngDecInfoCallback(png_structp png_ptr, png_infop info) void pngDecInfoCallback(png_structp png_ptr, png_infop info)
{ {
PngStream* stream = (PngStream*)png_get_progressive_ptr(png_ptr); PngStream* stream = (PngStream*)png_get_progressive_ptr(png_ptr);
if (!stream) if (!stream)
{ {
cellPngDec.error("Failed to obtain streamPtr in rowCallback."); cellPngDec.error("Failed to obtain streamPtr in rowCallback.");
return; return;
@ -137,7 +137,7 @@ void pngDecInfoCallback(png_structp png_ptr, png_infop info)
void pngDecEndCallback(png_structp png_ptr, png_infop info) void pngDecEndCallback(png_structp png_ptr, png_infop info)
{ {
PngStream* stream = (PngStream*)png_get_progressive_ptr(png_ptr); PngStream* stream = (PngStream*)png_get_progressive_ptr(png_ptr);
if (!stream) if (!stream)
{ {
cellPngDec.error("Failed to obtain streamPtr in endCallback."); cellPngDec.error("Failed to obtain streamPtr in endCallback.");
return; return;
@ -411,7 +411,7 @@ s32 pngDecOpen(ppu_thread& ppu, PHandle handle, PPStream png_stream, PSrc source
{ {
// Open a file stream // Open a file stream
fs::file file_stream(vfs::get(stream->source.fileName.get_ptr())); fs::file file_stream(vfs::get(stream->source.fileName.get_ptr()));
// Check if opening of the PNG file failed // Check if opening of the PNG file failed
if (!file_stream) if (!file_stream)
{ {
@ -475,7 +475,7 @@ s32 pngDecOpen(ppu_thread& ppu, PHandle handle, PPStream png_stream, PSrc source
} }
// Set the custom read function for decoding // Set the custom read function for decoding
if (control_stream) if (control_stream)
{ {
if (open_param && open_param->selectChunk != 0) if (open_param && open_param->selectChunk != 0)
fmt::throw_exception("Partial Decoding with selectChunk not supported yet."); fmt::throw_exception("Partial Decoding with selectChunk not supported yet.");
@ -486,7 +486,7 @@ s32 pngDecOpen(ppu_thread& ppu, PHandle handle, PPStream png_stream, PSrc source
png_set_progressive_read_fn(stream->png_ptr, (void *)stream.get_ptr(), pngDecInfoCallback, pngDecRowCallback, pngDecEndCallback); png_set_progressive_read_fn(stream->png_ptr, (void *)stream.get_ptr(), pngDecInfoCallback, pngDecRowCallback, pngDecEndCallback);
// push header tag to libpng to keep us in sync // push header tag to libpng to keep us in sync
try try
{ {
png_process_data(stream->png_ptr, stream->info_ptr, header, 8); png_process_data(stream->png_ptr, stream->info_ptr, header, 8);
} }
@ -495,7 +495,7 @@ s32 pngDecOpen(ppu_thread& ppu, PHandle handle, PPStream png_stream, PSrc source
return CELL_PNGDEC_ERROR_HEADER; return CELL_PNGDEC_ERROR_HEADER;
} }
} }
else else
{ {
png_set_read_fn(stream->png_ptr, buffer.get_ptr(), pngDecReadBuffer); png_set_read_fn(stream->png_ptr, buffer.get_ptr(), pngDecReadBuffer);
@ -559,7 +559,7 @@ s32 pngDecSetParameter(PStream stream, PInParam in_param, POutParam out_param, P
png_set_keep_unknown_chunks(stream->png_ptr, PNG_HANDLE_CHUNK_IF_SAFE, 0, 0); png_set_keep_unknown_chunks(stream->png_ptr, PNG_HANDLE_CHUNK_IF_SAFE, 0, 0);
// Scale 16 bit depth down to 8 bit depth. // Scale 16 bit depth down to 8 bit depth.
if (stream->info.bitDepth == 16 && in_param->outputBitDepth == 8) if (stream->info.bitDepth == 16 && in_param->outputBitDepth == 8)
{ {
// PS3 uses png_set_strip_16, since png_set_scale_16 wasn't available back then. // PS3 uses png_set_strip_16, since png_set_scale_16 wasn't available back then.
png_set_strip_16(stream->png_ptr); png_set_strip_16(stream->png_ptr);
@ -570,24 +570,24 @@ s32 pngDecSetParameter(PStream stream, PInParam in_param, POutParam out_param, P
cellPngDec.error("Output depth of 16 with non input depth of 16 specified!"); cellPngDec.error("Output depth of 16 with non input depth of 16 specified!");
if (in_param->commandPtr != vm::null) if (in_param->commandPtr != vm::null)
cellPngDec.warning("Ignoring CommandPtr."); cellPngDec.warning("Ignoring CommandPtr.");
if (stream->info.colorSpace != in_param->outputColorSpace) if (stream->info.colorSpace != in_param->outputColorSpace)
{ {
// check if we need to set alpha // check if we need to set alpha
const bool inputHasAlpha = cellPngColorSpaceHasAlpha(stream->info.colorSpace); const bool inputHasAlpha = cellPngColorSpaceHasAlpha(stream->info.colorSpace);
const bool outputWantsAlpha = cellPngColorSpaceHasAlpha(in_param->outputColorSpace); const bool outputWantsAlpha = cellPngColorSpaceHasAlpha(in_param->outputColorSpace);
if (outputWantsAlpha && !inputHasAlpha) if (outputWantsAlpha && !inputHasAlpha)
{ {
if (in_param->outputAlphaSelect == CELL_PNGDEC_FIX_ALPHA) if (in_param->outputAlphaSelect == CELL_PNGDEC_FIX_ALPHA)
png_set_add_alpha(stream->png_ptr, in_param->outputColorAlpha, in_param->outputColorSpace == CELL_PNGDEC_ARGB ? PNG_FILLER_BEFORE : PNG_FILLER_AFTER); png_set_add_alpha(stream->png_ptr, in_param->outputColorAlpha, in_param->outputColorSpace == CELL_PNGDEC_ARGB ? PNG_FILLER_BEFORE : PNG_FILLER_AFTER);
else else
{ {
// Check if we can steal the alpha from a trns block // Check if we can steal the alpha from a trns block
if (png_get_valid(stream->png_ptr, stream->info_ptr, PNG_INFO_tRNS)) if (png_get_valid(stream->png_ptr, stream->info_ptr, PNG_INFO_tRNS))
png_set_tRNS_to_alpha(stream->png_ptr); png_set_tRNS_to_alpha(stream->png_ptr);
// if not, just set default of 0xff // if not, just set default of 0xff
else else
png_set_add_alpha(stream->png_ptr, 0xff, in_param->outputColorSpace == CELL_PNGDEC_ARGB ? PNG_FILLER_BEFORE : PNG_FILLER_AFTER); png_set_add_alpha(stream->png_ptr, 0xff, in_param->outputColorSpace == CELL_PNGDEC_ARGB ? PNG_FILLER_BEFORE : PNG_FILLER_AFTER);
} }
} }
@ -606,21 +606,21 @@ s32 pngDecSetParameter(PStream stream, PInParam in_param, POutParam out_param, P
if (stream->info.colorSpace == CELL_PNGDEC_PALETTE) if (stream->info.colorSpace == CELL_PNGDEC_PALETTE)
png_set_palette_to_rgb(stream->png_ptr); png_set_palette_to_rgb(stream->png_ptr);
if ((stream->info.colorSpace == CELL_PNGDEC_GRAYSCALE || stream->info.colorSpace == CELL_PNGDEC_GRAYSCALE_ALPHA) if ((stream->info.colorSpace == CELL_PNGDEC_GRAYSCALE || stream->info.colorSpace == CELL_PNGDEC_GRAYSCALE_ALPHA)
&& stream->info.bitDepth < 8) && stream->info.bitDepth < 8)
png_set_expand_gray_1_2_4_to_8(stream->png_ptr); png_set_expand_gray_1_2_4_to_8(stream->png_ptr);
} }
// grayscale output // grayscale output
else else
{ {
if (stream->info.colorSpace == CELL_PNGDEC_ARGB if (stream->info.colorSpace == CELL_PNGDEC_ARGB
|| stream->info.colorSpace == CELL_PNGDEC_RGBA || stream->info.colorSpace == CELL_PNGDEC_RGBA
|| stream->info.colorSpace == CELL_PNGDEC_RGB) || stream->info.colorSpace == CELL_PNGDEC_RGB)
{ {
png_set_rgb_to_gray(stream->png_ptr, PNG_ERROR_ACTION_NONE, PNG_RGB_TO_GRAY_DEFAULT, PNG_RGB_TO_GRAY_DEFAULT); png_set_rgb_to_gray(stream->png_ptr, PNG_ERROR_ACTION_NONE, PNG_RGB_TO_GRAY_DEFAULT, PNG_RGB_TO_GRAY_DEFAULT);
} }
else { else {
// not sure what to do here // not sure what to do here
cellPngDec.error("Grayscale / Palette to Grayscale / Palette conversion currently unsupported."); cellPngDec.error("Grayscale / Palette to Grayscale / Palette conversion currently unsupported.");
} }
} }
@ -645,7 +645,7 @@ s32 pngDecSetParameter(PStream stream, PInParam in_param, POutParam out_param, P
// Set the memory usage. We currently don't actually allocate memory for libpng through the callbacks, due to libpng needing a lot more memory compared to PS3 variant. // Set the memory usage. We currently don't actually allocate memory for libpng through the callbacks, due to libpng needing a lot more memory compared to PS3 variant.
stream->out_param.useMemorySpace = 0; stream->out_param.useMemorySpace = 0;
if (extra_in_param) if (extra_in_param)
{ {
if (extra_in_param->bufferMode != CELL_PNGDEC_LINE_MODE) if (extra_in_param->bufferMode != CELL_PNGDEC_LINE_MODE)
{ {
@ -664,14 +664,14 @@ s32 pngDecSetParameter(PStream stream, PInParam in_param, POutParam out_param, P
{ {
if (stream->outputCounts == 0) if (stream->outputCounts == 0)
extra_out_param->outputHeight = stream->out_param.outputHeight; extra_out_param->outputHeight = stream->out_param.outputHeight;
else else
extra_out_param->outputHeight = std::min(stream->outputCounts, stream->out_param.outputHeight.value()); extra_out_param->outputHeight = std::min(stream->outputCounts, stream->out_param.outputHeight.value());
extra_out_param->outputWidthByte = stream->out_param.outputWidthByte; extra_out_param->outputWidthByte = stream->out_param.outputWidthByte;
} }
} }
*out_param = stream->out_param; *out_param = stream->out_param;
return CELL_OK; return CELL_OK;
} }
@ -729,7 +729,7 @@ s32 pngDecodeData(ppu_thread& ppu, PHandle handle, PStream stream, vm::ptr<u8> d
if (stream->buffer->length > stream->buffer->cursor) if (stream->buffer->length > stream->buffer->cursor)
{ {
u8* data = static_cast<u8*>(stream->buffer->data.get_ptr()) + stream->buffer->cursor; u8* data = static_cast<u8*>(stream->buffer->data.get_ptr()) + stream->buffer->cursor;
try try
{ {
png_process_data(stream->png_ptr, stream->info_ptr, data, stream->buffer->length - stream->buffer->cursor); png_process_data(stream->png_ptr, stream->info_ptr, data, stream->buffer->length - stream->buffer->cursor);
} }
@ -747,7 +747,7 @@ s32 pngDecodeData(ppu_thread& ppu, PHandle handle, PStream stream, vm::ptr<u8> d
{ {
stream->cbCtrlStream.cbCtrlStrmFunc(ppu, streamInfo, streamParam, stream->cbCtrlStream.cbCtrlStrmArg); stream->cbCtrlStream.cbCtrlStrmFunc(ppu, streamInfo, streamParam, stream->cbCtrlStream.cbCtrlStrmArg);
streamInfo->decodedStrmSize += streamParam->strmSize; streamInfo->decodedStrmSize += streamParam->strmSize;
try try
{ {
png_process_data(stream->png_ptr, stream->info_ptr, static_cast<u8*>(streamParam->strmPtr.get_ptr()), streamParam->strmSize); png_process_data(stream->png_ptr, stream->info_ptr, static_cast<u8*>(streamParam->strmPtr.get_ptr()), streamParam->strmSize);
} }
@ -767,7 +767,7 @@ s32 pngDecodeData(ppu_thread& ppu, PHandle handle, PStream stream, vm::ptr<u8> d
// Decode the image // Decode the image
// todo: commandptr // todo: commandptr
try try
{ {
for (int j = 0; j < stream->passes; j++) for (int j = 0; j < stream->passes; j++)
{ {
@ -862,7 +862,7 @@ s32 cellPngDecExtReadHeader(PHandle handle, PStream stream, PInfo info, PExtInfo
// lets push what we have so far // lets push what we have so far
u8* data = static_cast<u8*>(stream->buffer->data.get_ptr()) + stream->buffer->cursor; u8* data = static_cast<u8*>(stream->buffer->data.get_ptr()) + stream->buffer->cursor;
try try
{ {
png_process_data(stream->png_ptr, stream->info_ptr, data, stream->buffer->length); png_process_data(stream->png_ptr, stream->info_ptr, data, stream->buffer->length);
} }

View File

@ -1,7 +1,7 @@
#include "stdafx.h" #include "stdafx.h"
#include "Emu/Cell/PPUModule.h" #include "Emu/Cell/PPUModule.h"
logs::channel cellPngEnc("cellPngEnc"); LOG_CHANNEL(cellPngEnc);
// Error Codes // Error Codes
enum enum

View File

@ -4,7 +4,7 @@
#include "Emu/Cell/PPUModule.h" #include "Emu/Cell/PPUModule.h"
#include "cellSysutil.h" #include "cellSysutil.h"
logs::channel cellPrint("cellPrint"); LOG_CHANNEL(cellPrint);
// Error Codes // Error Codes
enum enum

View File

@ -5,7 +5,7 @@
logs::channel cellRec("cellRec"); LOG_CHANNEL(cellRec);
enum enum
{ {

View File

@ -1,7 +1,7 @@
#include "stdafx.h" #include "stdafx.h"
#include "Emu/Cell/PPUModule.h" #include "Emu/Cell/PPUModule.h"
logs::channel cellRemotePlay("cellRemotePlay"); LOG_CHANNEL(cellRemotePlay);
s32 cellRemotePlayGetStatus() s32 cellRemotePlayGetStatus()
{ {

View File

@ -6,7 +6,7 @@
#include "Emu/RSX/GCM.h" #include "Emu/RSX/GCM.h"
#include "cellResc.h" #include "cellResc.h"
logs::channel cellResc("cellResc"); LOG_CHANNEL(cellResc);
s32 cellRescInit(vm::ptr<CellRescInitConfig> initConfig) s32 cellRescInit(vm::ptr<CellRescInitConfig> initConfig)
{ {

View File

@ -3,11 +3,11 @@
#include "cellRtc.h" #include "cellRtc.h"
logs::channel cellRtc("cellRtc"); LOG_CHANNEL(cellRtc);
s64 convertToUNIXTime(u16 seconds, u16 minutes, u16 hours, u16 days, s32 years) s64 convertToUNIXTime(u16 seconds, u16 minutes, u16 hours, u16 days, s32 years)
{ {
return (s64)seconds + (s64)minutes * 60 + (s64)hours * 3600 + (s64)days * 86400 + return (s64)seconds + (s64)minutes * 60 + (s64)hours * 3600 + (s64)days * 86400 +
(s64)(years - 70) * 31536000 + (s64)((years - 69) / 4) * 86400 - (s64)(years - 70) * 31536000 + (s64)((years - 69) / 4) * 86400 -
(s64)((years - 1) / 100) * 86400 + (s64)((years + 299) / 400) * 86400; (s64)((years - 1) / 100) * 86400 + (s64)((years + 299) / 400) * 86400;
} }
@ -58,14 +58,14 @@ s32 cellRtcFormatRfc2822LocalTime(vm::ptr<char> pszDateTime, vm::ptr<CellRtcTick
s32 cellRtcFormatRfc3339(vm::ptr<char> pszDateTime, vm::ptr<CellRtcTick> pUtc, s32 iTimeZone) s32 cellRtcFormatRfc3339(vm::ptr<char> pszDateTime, vm::ptr<CellRtcTick> pUtc, s32 iTimeZone)
{ {
cellRtc.todo("cellRtcFormatRfc3339(pszDateTime=*0x%x, pUtc=*0x%x, iTimeZone=%d)", pszDateTime, pUtc, iTimeZone); cellRtc.todo("cellRtcFormatRfc3339(pszDateTime=*0x%x, pUtc=*0x%x, iTimeZone=%d)", pszDateTime, pUtc, iTimeZone);
return CELL_OK; return CELL_OK;
} }
s32 cellRtcFormatRfc3339LocalTime(vm::ptr<char> pszDateTime, vm::ptr<CellRtcTick> pUtc) s32 cellRtcFormatRfc3339LocalTime(vm::ptr<char> pszDateTime, vm::ptr<CellRtcTick> pUtc)
{ {
cellRtc.todo("cellRtcFormatRfc3339LocalTime(pszDateTime=*0x%x, pUtc=*0x%x)", pszDateTime, pUtc); cellRtc.todo("cellRtcFormatRfc3339LocalTime(pszDateTime=*0x%x, pUtc=*0x%x)", pszDateTime, pUtc);
return CELL_OK; return CELL_OK;
} }
@ -93,7 +93,7 @@ s32 cellRtcGetTick(vm::ptr<CellRtcDateTime> pTime, vm::ptr<CellRtcTick> pTick)
s32 cellRtcSetTick(vm::ptr<CellRtcDateTime> pTime, vm::ptr<CellRtcTick> pTick) s32 cellRtcSetTick(vm::ptr<CellRtcDateTime> pTime, vm::ptr<CellRtcTick> pTick)
{ {
cellRtc.todo("cellRtcSetTick(pTime=*0x%x, pTick=*0x%x)", pTime, pTick); cellRtc.todo("cellRtcSetTick(pTime=*0x%x, pTick=*0x%x)", pTime, pTick);
return CELL_OK; return CELL_OK;
} }
@ -107,7 +107,7 @@ s32 cellRtcTickAddTicks(vm::ptr<CellRtcTick> pTick0, vm::ptr<CellRtcTick> pTick1
s32 cellRtcTickAddMicroseconds(vm::ptr<CellRtcTick> pTick0, vm::ptr<CellRtcTick> pTick1, s64 lAdd) s32 cellRtcTickAddMicroseconds(vm::ptr<CellRtcTick> pTick0, vm::ptr<CellRtcTick> pTick1, s64 lAdd)
{ {
cellRtc.todo("cellRtcTickAddMicroseconds(pTick0=*0x%x, pTick1=*0x%x, lAdd=%lld)", pTick0, pTick1, lAdd); cellRtc.todo("cellRtcTickAddMicroseconds(pTick0=*0x%x, pTick1=*0x%x, lAdd=%lld)", pTick0, pTick1, lAdd);
return CELL_OK; return CELL_OK;
} }
@ -121,7 +121,7 @@ s32 cellRtcTickAddSeconds(vm::ptr<CellRtcTick> pTick0, vm::ptr<CellRtcTick> pTic
s32 cellRtcTickAddMinutes(vm::ptr<CellRtcTick> pTick0, vm::ptr<CellRtcTick> pTick1, s64 lAdd) s32 cellRtcTickAddMinutes(vm::ptr<CellRtcTick> pTick0, vm::ptr<CellRtcTick> pTick1, s64 lAdd)
{ {
cellRtc.todo("cellRtcTickAddMinutes(pTick0=*0x%x, pTick1=*0x%x, lAdd=%lld)", pTick0, pTick1, lAdd); cellRtc.todo("cellRtcTickAddMinutes(pTick0=*0x%x, pTick1=*0x%x, lAdd=%lld)", pTick0, pTick1, lAdd);
return CELL_OK; return CELL_OK;
} }

View File

@ -1,7 +1,7 @@
#include "stdafx.h" #include "stdafx.h"
#include "Emu/Cell/PPUModule.h" #include "Emu/Cell/PPUModule.h"
logs::channel cellRtcAlarm("cellRtcAlarm"); LOG_CHANNEL(cellRtcAlarm);
s32 cellRtcAlarmRegister() s32 cellRtcAlarmRegister()
{ {

View File

@ -5,7 +5,7 @@
#include "cellRudp.h" #include "cellRudp.h"
logs::channel cellRudp("cellRudp"); LOG_CHANNEL(cellRudp);
struct rudp_t struct rudp_t
{ {

View File

@ -5,7 +5,7 @@
#include "cellSail.h" #include "cellSail.h"
#include "cellPamf.h" #include "cellPamf.h"
logs::channel cellSail("cellSail"); LOG_CHANNEL(cellSail);
s32 cellSailMemAllocatorInitialize(vm::ptr<CellSailMemAllocator> pSelf, vm::ptr<CellSailMemAllocatorFuncs> pCallbacks) s32 cellSailMemAllocatorInitialize(vm::ptr<CellSailMemAllocator> pSelf, vm::ptr<CellSailMemAllocatorFuncs> pCallbacks)
{ {
@ -86,7 +86,7 @@ s32 cellSailDescriptorSetAutoSelection(vm::ptr<CellSailDescriptor> pSelf, b8 aut
s32 cellSailDescriptorIsAutoSelection(vm::ptr<CellSailDescriptor> pSelf) s32 cellSailDescriptorIsAutoSelection(vm::ptr<CellSailDescriptor> pSelf)
{ {
cellSail.warning("cellSailDescriptorIsAutoSelection(pSelf=*0x%x)", pSelf); cellSail.warning("cellSailDescriptorIsAutoSelection(pSelf=*0x%x)", pSelf);
if (pSelf) if (pSelf)
{ {
return pSelf->autoSelection; return pSelf->autoSelection;
@ -787,7 +787,7 @@ s32 cellSailPlayerAddDescriptor(vm::ptr<CellSailPlayer> pSelf, vm::ptr<CellSailD
s32 cellSailPlayerCreateDescriptor(vm::ptr<CellSailPlayer> pSelf, s32 streamType, vm::ptr<void> pMediaInfo, vm::cptr<char> pUri, vm::pptr<CellSailDescriptor> ppDesc) s32 cellSailPlayerCreateDescriptor(vm::ptr<CellSailPlayer> pSelf, s32 streamType, vm::ptr<void> pMediaInfo, vm::cptr<char> pUri, vm::pptr<CellSailDescriptor> ppDesc)
{ {
cellSail.todo("cellSailPlayerCreateDescriptor(pSelf=*0x%x, streamType=%d, pMediaInfo=*0x%x, pUri=%s, ppDesc=**0x%x)", pSelf, streamType, pMediaInfo, pUri, ppDesc); cellSail.todo("cellSailPlayerCreateDescriptor(pSelf=*0x%x, streamType=%d, pMediaInfo=*0x%x, pUri=%s, ppDesc=**0x%x)", pSelf, streamType, pMediaInfo, pUri, ppDesc);
u32 descriptorAddress = vm::alloc(sizeof(CellSailDescriptor), vm::main); u32 descriptorAddress = vm::alloc(sizeof(CellSailDescriptor), vm::main);
auto descriptor = vm::ptr<CellSailDescriptor>::make(descriptorAddress); auto descriptor = vm::ptr<CellSailDescriptor>::make(descriptorAddress);
*ppDesc = descriptor; *ppDesc = descriptor;

View File

@ -1,7 +1,7 @@
#include "stdafx.h" #include "stdafx.h"
#include "Emu/Cell/PPUModule.h" #include "Emu/Cell/PPUModule.h"
logs::channel cellSailRec("cellSailRec"); LOG_CHANNEL(cellSailRec);
// Error Codes // Error Codes
enum enum

View File

@ -11,7 +11,7 @@
#include <mutex> #include <mutex>
#include <algorithm> #include <algorithm>
logs::channel cellSaveData("cellSaveData"); LOG_CHANNEL(cellSaveData);
SaveDialogBase::~SaveDialogBase() SaveDialogBase::~SaveDialogBase()
{ {

View File

@ -6,7 +6,7 @@
logs::channel cellScreenshot("cellScreenshot"); LOG_CHANNEL(cellScreenshot);
s32 cellScreenShotSetParameter(vm::cptr<CellScreenShotSetParam> param) s32 cellScreenShotSetParameter(vm::cptr<CellScreenShotSetParam> param)
{ {

View File

@ -7,7 +7,7 @@
#include "cellSearch.h" #include "cellSearch.h"
logs::channel cellSearch("cellSearch"); LOG_CHANNEL(cellSearch);
template<> template<>
void fmt_class_string<CellSearchError>::format(std::string& out, u64 arg) void fmt_class_string<CellSearchError>::format(std::string& out, u64 arg)

View File

@ -1,7 +1,7 @@
#include "stdafx.h" #include "stdafx.h"
#include "Emu/Cell/PPUModule.h" #include "Emu/Cell/PPUModule.h"
logs::channel cellSheap("cellSheap"); LOG_CHANNEL(cellSheap);
// Return Codes // Return Codes
enum enum

View File

@ -5,7 +5,7 @@
logs::channel cellSpudll("cellSpudll"); LOG_CHANNEL(cellSpudll);
template<> template<>
void fmt_class_string<CellSpudllError>::format(std::string& out, u64 arg) void fmt_class_string<CellSpudllError>::format(std::string& out, u64 arg)

View File

@ -15,7 +15,7 @@
#include "sysPrxForUser.h" #include "sysPrxForUser.h"
#include "cellSpurs.h" #include "cellSpurs.h"
logs::channel cellSpurs("cellSpurs"); LOG_CHANNEL(cellSpurs);
error_code sys_spu_image_close(vm::ptr<sys_spu_image> img); error_code sys_spu_image_close(vm::ptr<sys_spu_image> img);
@ -234,7 +234,7 @@ namespace _spurs
{ {
// Create task // Create task
s32 create_task(vm::ptr<CellSpursTaskset> taskset, vm::ptr<u32> task_id, vm::cptr<void> elf, vm::cptr<void> context, u32 size, vm::ptr<CellSpursTaskLsPattern> ls_pattern, vm::ptr<CellSpursTaskArgument> arg); s32 create_task(vm::ptr<CellSpursTaskset> taskset, vm::ptr<u32> task_id, vm::cptr<void> elf, vm::cptr<void> context, u32 size, vm::ptr<CellSpursTaskLsPattern> ls_pattern, vm::ptr<CellSpursTaskArgument> arg);
// Start task // Start task
s32 task_start(ppu_thread& ppu, vm::ptr<CellSpursTaskset> taskset, u32 taskId); s32 task_start(ppu_thread& ppu, vm::ptr<CellSpursTaskset> taskset, u32 taskId);
} }
@ -1194,7 +1194,7 @@ s32 _spurs::initialize(ppu_thread& ppu, vm::ptr<CellSpurs> spurs, u32 revision,
} }
spurs->traceBuffer = vm::null; spurs->traceBuffer = vm::null;
// TODO: Register libprof for user trace // TODO: Register libprof for user trace
// Initialise the event port multiplexor // Initialise the event port multiplexor
_spurs::init_event_port_mux(spurs.ptr(&CellSpurs::eventPortMux), spurs->spuPort, spurs->eventPort, 3); _spurs::init_event_port_mux(spurs.ptr(&CellSpurs::eventPortMux), spurs->spuPort, spurs->eventPort, 3);
@ -1210,7 +1210,7 @@ s32 _spurs::initialize(ppu_thread& ppu, vm::ptr<CellSpurs> spurs, u32 revision,
return cellSpursWakeUp(ppu, spurs); return cellSpursWakeUp(ppu, spurs);
} }
return CELL_OK; return CELL_OK;
} }
/// Initialize SPURS /// Initialize SPURS
@ -2047,7 +2047,7 @@ s32 _cellSpursWorkloadAttributeInitialize(vm::ptr<CellSpursWorkloadAttribute> at
{ {
return CELL_SPURS_POLICY_MODULE_ERROR_INVAL; return CELL_SPURS_POLICY_MODULE_ERROR_INVAL;
} }
memset(attr.get_ptr(), 0, sizeof(CellSpursWorkloadAttribute)); memset(attr.get_ptr(), 0, sizeof(CellSpursWorkloadAttribute));
attr->revision = revision; attr->revision = revision;
attr->sdkVersion = sdkVersion; attr->sdkVersion = sdkVersion;
@ -2121,7 +2121,7 @@ s32 _spurs::add_workload(vm::ptr<CellSpurs> spurs, vm::ptr<u32> wid, vm::cptr<vo
{ {
return CELL_SPURS_POLICY_MODULE_ERROR_STAT; return CELL_SPURS_POLICY_MODULE_ERROR_STAT;
} }
u32 wnum; u32 wnum;
const u32 wmax = spurs->flags1 & SF1_32_WORKLOADS ? 0x20u : 0x10u; // TODO: check if can be changed const u32 wmax = spurs->flags1 & SF1_32_WORKLOADS ? 0x20u : 0x10u; // TODO: check if can be changed
spurs->wklEnabled.atomic_op([spurs, wmax, &wnum](be_t<u32>& value) spurs->wklEnabled.atomic_op([spurs, wmax, &wnum](be_t<u32>& value)
@ -2349,7 +2349,7 @@ s32 cellSpursWakeUp(ppu_thread& ppu, vm::ptr<CellSpurs> spurs)
{ {
_spurs::signal_to_handler_thread(ppu, spurs); _spurs::signal_to_handler_thread(ppu, spurs);
} }
return CELL_OK; return CELL_OK;
} }
@ -2763,7 +2763,7 @@ s32 cellSpursEventFlagSet(ppu_thread& ppu, vm::ptr<CellSpursEventFlag> eventFlag
// Unblock the waiting SPU task if either all the bits being waited by the task have been set or // Unblock the waiting SPU task if either all the bits being waited by the task have been set or
// if the wait mode of the task is OR and atleast one bit the thread is waiting on has been set // if the wait mode of the task is OR and atleast one bit the thread is waiting on has been set
if ((eventFlag->spuTaskWaitMask[i] & ~spuTaskRelevantEvents) == 0 || if ((eventFlag->spuTaskWaitMask[i] & ~spuTaskRelevantEvents) == 0 ||
(((eventFlag->spuTaskWaitMode >> j) & 0x0001) == CELL_SPURS_EVENT_FLAG_OR && spuTaskRelevantEvents != 0)) (((eventFlag->spuTaskWaitMode >> j) & 0x0001) == CELL_SPURS_EVENT_FLAG_OR && spuTaskRelevantEvents != 0))
{ {
eventsToClear |= spuTaskRelevantEvents; eventsToClear |= spuTaskRelevantEvents;
@ -3560,13 +3560,13 @@ s32 cellSpursCreateTask(ppu_thread& ppu, vm::ptr<CellSpursTaskset> taskset, vm::
} }
auto rc = _spurs::create_task(taskset, taskId, elf, context, size, lsPattern, argument); auto rc = _spurs::create_task(taskset, taskId, elf, context, size, lsPattern, argument);
if (rc != CELL_OK) if (rc != CELL_OK)
{ {
return rc; return rc;
} }
rc = _spurs::task_start(ppu, taskset, *taskId); rc = _spurs::task_start(ppu, taskset, *taskId);
if (rc != CELL_OK) if (rc != CELL_OK)
{ {
return rc; return rc;
} }
@ -4138,7 +4138,7 @@ s32 cellSpursSemaphoreGetTasksetAddress()
DECLARE(ppu_module_manager::cellSpurs)("cellSpurs", []() DECLARE(ppu_module_manager::cellSpurs)("cellSpurs", []()
{ {
// Core // Core
REG_FUNC(cellSpurs, cellSpursInitialize); REG_FUNC(cellSpurs, cellSpursInitialize);
REG_FUNC(cellSpurs, cellSpursInitializeWithAttribute); REG_FUNC(cellSpurs, cellSpursInitializeWithAttribute);
REG_FUNC(cellSpurs, cellSpursInitializeWithAttribute2); REG_FUNC(cellSpurs, cellSpursInitializeWithAttribute2);
@ -4235,7 +4235,7 @@ DECLARE(ppu_module_manager::cellSpurs)("cellSpurs", []()
REG_FUNC(cellSpurs, cellSpursJobGuardInitialize); REG_FUNC(cellSpurs, cellSpursJobGuardInitialize);
REG_FUNC(cellSpurs, cellSpursJobGuardNotify); REG_FUNC(cellSpurs, cellSpursJobGuardNotify);
REG_FUNC(cellSpurs, cellSpursJobGuardReset); REG_FUNC(cellSpurs, cellSpursJobGuardReset);
// LFQueue // LFQueue
REG_FUNC(cellSpurs, _cellSpursLFQueueInitialize); REG_FUNC(cellSpurs, _cellSpursLFQueueInitialize);
REG_FUNC(cellSpurs, _cellSpursLFQueuePushBody); REG_FUNC(cellSpurs, _cellSpursLFQueuePushBody);

View File

@ -8,7 +8,7 @@
#include "cellSpurs.h" #include "cellSpurs.h"
#include "cellSpursJq.h" #include "cellSpursJq.h"
logs::channel cellSpursJq("cellSpursJq"); LOG_CHANNEL(cellSpursJq);
s32 cellSpursJobQueueAttributeInitialize() s32 cellSpursJobQueueAttributeInitialize()
{ {

View File

@ -7,7 +7,7 @@
#include "Utilities/File.h" #include "Utilities/File.h"
#include "Emu/VFS.h" #include "Emu/VFS.h"
logs::channel cellSsl("cellSsl"); LOG_CHANNEL(cellSsl);

View File

@ -3,7 +3,7 @@
#include "cellSubDisplay.h" #include "cellSubDisplay.h"
logs::channel cellSubDisplay("cellSubDisplay"); LOG_CHANNEL(cellSubDisplay);
template<> template<>
void fmt_class_string<CellSubDisplayError>::format(std::string& out, u64 arg) void fmt_class_string<CellSubDisplayError>::format(std::string& out, u64 arg)

View File

@ -6,7 +6,7 @@
#include "Emu/Cell/lv2/sys_process.h" #include "Emu/Cell/lv2/sys_process.h"
#include "cellSync.h" #include "cellSync.h"
logs::channel cellSync("cellSync"); LOG_CHANNEL(cellSync);
template<> template<>
void fmt_class_string<CellSyncError>::format(std::string& out, u64 arg) void fmt_class_string<CellSyncError>::format(std::string& out, u64 arg)
@ -516,7 +516,7 @@ error_code cellSyncQueuePop(ppu_thread& ppu, vm::ptr<CellSyncQueue> queue, vm::p
} }
const u32 depth = queue->check_depth(); const u32 depth = queue->check_depth();
u32 position; u32 position;
while (!queue->ctrl.atomic_op(&CellSyncQueue::try_pop_begin, depth, &position)) while (!queue->ctrl.atomic_op(&CellSyncQueue::try_pop_begin, depth, &position))
@ -549,7 +549,7 @@ error_code cellSyncQueueTryPop(vm::ptr<CellSyncQueue> queue, vm::ptr<void> buffe
const u32 depth = queue->check_depth(); const u32 depth = queue->check_depth();
u32 position; u32 position;
if (!queue->ctrl.atomic_op(&CellSyncQueue::try_pop_begin, depth, &position)) if (!queue->ctrl.atomic_op(&CellSyncQueue::try_pop_begin, depth, &position))
{ {
return not_an_error(CELL_SYNC_ERROR_BUSY); return not_an_error(CELL_SYNC_ERROR_BUSY);

View File

@ -6,7 +6,7 @@
#include "Utilities/StrUtil.h" #include "Utilities/StrUtil.h"
logs::channel cellSync2("cellSync2"); LOG_CHANNEL(cellSync2);
vm::gvar<CellSync2CallerThreadType> gCellSync2CallerThreadTypePpuThread; vm::gvar<CellSync2CallerThreadType> gCellSync2CallerThreadTypePpuThread;
vm::gvar<CellSync2Notifier> gCellSync2NotifierPpuThread; vm::gvar<CellSync2Notifier> gCellSync2NotifierPpuThread;

View File

@ -4,7 +4,7 @@
#include "cellSysconf.h" #include "cellSysconf.h"
logs::channel cellSysconf("cellSysconf"); LOG_CHANNEL(cellSysconf);
s32 cellSysconfAbort() s32 cellSysconfAbort()
{ {

View File

@ -2,7 +2,7 @@
#include "Emu/System.h" #include "Emu/System.h"
#include "Emu/Cell/PPUModule.h" #include "Emu/Cell/PPUModule.h"
logs::channel cellSysmodule("cellSysmodule"); LOG_CHANNEL(cellSysmodule);
enum enum
{ {
@ -321,7 +321,7 @@ s32 cellSysmoduleUnloadModule(u16 id)
// m->Unload(); // m->Unload();
//} //}
return CELL_OK; return CELL_OK;
} }

View File

@ -10,7 +10,7 @@
#include <mutex> #include <mutex>
#include <queue> #include <queue>
logs::channel cellSysutil("cellSysutil"); LOG_CHANNEL(cellSysutil);
struct sysutil_cb_manager struct sysutil_cb_manager
{ {

View File

@ -3,7 +3,7 @@
logs::channel cellSysutilAp("cellSysutilAp"); LOG_CHANNEL(cellSysutilAp);
// Return Codes // Return Codes
enum enum

View File

@ -1,7 +1,7 @@
#include "stdafx.h" #include "stdafx.h"
#include "Emu/Cell/PPUModule.h" #include "Emu/Cell/PPUModule.h"
logs::channel cellSysutilAvc("cellSysutilAvc"); LOG_CHANNEL(cellSysutilAvc);
s32 cellSysutilAvcByeRequest() s32 cellSysutilAvcByeRequest()
{ {

View File

@ -5,7 +5,7 @@
#include "sceNp2.h" #include "sceNp2.h"
#include "cellSysutilAvc2.h" #include "cellSysutilAvc2.h"
logs::channel cellSysutilAvc2("cellSysutilAvc2"); LOG_CHANNEL(cellSysutilAvc2);
template<> template<>
void fmt_class_string<CellSysutilAvc2Error>::format(std::string& out, u64 arg) void fmt_class_string<CellSysutilAvc2Error>::format(std::string& out, u64 arg)

View File

@ -2,7 +2,7 @@
#include "Emu/System.h" #include "Emu/System.h"
#include "Emu/Cell/PPUModule.h" #include "Emu/Cell/PPUModule.h"
logs::channel cellSysutilMisc("cellSysutilMisc"); LOG_CHANNEL(cellSysutilMisc);
// License areas // License areas
enum enum

View File

@ -2,7 +2,7 @@
#include "Emu/System.h" #include "Emu/System.h"
#include "Emu/Cell/PPUModule.h" #include "Emu/Cell/PPUModule.h"
logs::channel cellSysutilNpEula("cellSysutilNpEula"); LOG_CHANNEL(cellSysutilNpEula);
s32 cellSysutilNpEula_59D1629A() // Resistance 3, Uncharted 2 s32 cellSysutilNpEula_59D1629A() // Resistance 3, Uncharted 2
{ {

View File

@ -3,7 +3,7 @@
#include "Emu/Cell/PPUModule.h" #include "Emu/Cell/PPUModule.h"
#include "cellUsbd.h" #include "cellUsbd.h"
logs::channel cellUsbd("cellUsbd"); LOG_CHANNEL(cellUsbd);
s32 cellUsbdInit() s32 cellUsbdInit()
{ {

View File

@ -1,7 +1,7 @@
#include "stdafx.h" #include "stdafx.h"
#include "Emu/Cell/PPUModule.h" #include "Emu/Cell/PPUModule.h"
logs::channel cellUsbPspcm("cellUsbPspcm"); LOG_CHANNEL(cellUsbPspcm);
// Return Codes // Return Codes
enum enum

View File

@ -7,7 +7,7 @@
#include "Utilities/StrUtil.h" #include "Utilities/StrUtil.h"
#include "cellSysutil.h" #include "cellSysutil.h"
logs::channel cellUserInfo("cellUserInfo"); LOG_CHANNEL(cellUserInfo);
template<> template<>
void fmt_class_string<CellUserInfoError>::format(std::string& out, u64 arg) void fmt_class_string<CellUserInfoError>::format(std::string& out, u64 arg)

View File

@ -22,7 +22,7 @@ extern "C"
std::mutex g_mutex_avcodec_open2; std::mutex g_mutex_avcodec_open2;
logs::channel cellVdec("cellVdec"); LOG_CHANNEL(cellVdec);
vm::gvar<s32> _cell_vdec_prx_ver; // ??? vm::gvar<s32> _cell_vdec_prx_ver; // ???
@ -345,7 +345,7 @@ struct vdec_thread : ppu_thread
// Hack // Hack
cellVdec.error("Unsupported time_base.num (%d/%d, tpf=%d)", ctx->time_base.den, ctx->time_base.num, ctx->ticks_per_frame); cellVdec.error("Unsupported time_base.num (%d/%d, tpf=%d)", ctx->time_base.den, ctx->time_base.num, ctx->ticks_per_frame);
amend = u64{90000} / 30; amend = u64{90000} / 30;
frame.frc = CELL_VDEC_FRC_30; frame.frc = CELL_VDEC_FRC_30;
} }
next_pts += amend; next_pts += amend;

View File

@ -5,7 +5,7 @@
logs::channel cellVideoExport("cellVideoExport"); LOG_CHANNEL(cellVideoExport);
struct CellVideoExportSetParam struct CellVideoExportSetParam
{ {

View File

@ -4,7 +4,7 @@
#include "cellVideoUpload.h" #include "cellVideoUpload.h"
#include "cellSysutil.h" #include "cellSysutil.h"
logs::channel cellVideoUpload("cellVideoUpload"); LOG_CHANNEL(cellVideoUpload);
error_code cellVideoUploadInitialize(vm::cptr<CellVideoUploadParam> pParam, vm::ptr<CellVideoUploadCallback> cb, vm::ptr<void> userdata) error_code cellVideoUploadInitialize(vm::cptr<CellVideoUploadParam> pParam, vm::ptr<CellVideoUploadCallback> cb, vm::ptr<void> userdata)
{ {

View File

@ -4,7 +4,7 @@
#include "cellVoice.h" #include "cellVoice.h"
logs::channel cellVoice("cellVoice"); LOG_CHANNEL(cellVoice);
s32 cellVoiceConnectIPortToOPort() s32 cellVoiceConnectIPortToOPort()

View File

@ -10,7 +10,7 @@ extern "C"
#include "cellVpost.h" #include "cellVpost.h"
logs::channel cellVpost("cellVpost"); LOG_CHANNEL(cellVpost);
s32 cellVpostQueryAttr(vm::cptr<CellVpostCfgParam> cfgParam, vm::ptr<CellVpostAttr> attr) s32 cellVpostQueryAttr(vm::cptr<CellVpostCfgParam> cfgParam, vm::ptr<CellVpostAttr> attr)
{ {

View File

@ -2,7 +2,7 @@
#include "Emu/System.h" #include "Emu/System.h"
#include "Emu/Cell/PPUModule.h" #include "Emu/Cell/PPUModule.h"
logs::channel cell_FreeType2("cell_FreeType2"); LOG_CHANNEL(cell_FreeType2);
// Functions // Functions
s32 cellFreeType2Ex() s32 cellFreeType2Ex()

View File

@ -2,7 +2,7 @@
#include "Emu/System.h" #include "Emu/System.h"
#include "Emu/Cell/PPUModule.h" #include "Emu/Cell/PPUModule.h"
logs::channel libmedi("libmedi"); LOG_CHANNEL(libmedi);
s32 cellMediatorCloseContext() s32 cellMediatorCloseContext()
{ {

View File

@ -11,7 +11,7 @@
#include <thread> #include <thread>
#include <mutex> #include <mutex>
logs::channel libmixer("libmixer"); LOG_CHANNEL(libmixer);
struct SurMixerConfig struct SurMixerConfig
{ {
@ -91,7 +91,7 @@ s32 cellAANAddData(u32 aan_handle, u32 aan_port, u32 offset, vm::ptr<float> addr
const float center = addr[i]; const float center = addr[i];
g_surmx.mixdata[i * 8 + 0] += center; g_surmx.mixdata[i * 8 + 0] += center;
g_surmx.mixdata[i * 8 + 1] += center; g_surmx.mixdata[i * 8 + 1] += center;
} }
} }
else if (type == CELL_SURMIXER_CHSTRIP_TYPE2A) else if (type == CELL_SURMIXER_CHSTRIP_TYPE2A)
{ {
@ -132,7 +132,7 @@ s32 cellAANAddData(u32 aan_handle, u32 aan_port, u32 offset, vm::ptr<float> addr
} }
} }
return CELL_OK; return CELL_OK;
} }
s32 cellAANConnect(u32 receive, u32 receivePortNo, u32 source, u32 sourcePortNo) s32 cellAANConnect(u32 receive, u32 receivePortNo, u32 source, u32 sourcePortNo)
@ -170,7 +170,7 @@ s32 cellAANDisconnect(u32 receive, u32 receivePortNo, u32 source, u32 sourcePort
return CELL_OK; return CELL_OK;
} }
s32 cellSSPlayerCreate(vm::ptr<u32> handle, vm::ptr<CellSSPlayerConfig> config) s32 cellSSPlayerCreate(vm::ptr<u32> handle, vm::ptr<CellSSPlayerConfig> config)
{ {
libmixer.warning("cellSSPlayerCreate(handle=*0x%x, config=*0x%x)", handle, config); libmixer.warning("cellSSPlayerCreate(handle=*0x%x, config=*0x%x)", handle, config);
@ -188,7 +188,7 @@ s32 cellSSPlayerCreate(vm::ptr<u32> handle, vm::ptr<CellSSPlayerConfig> config)
p.m_connected = false; p.m_connected = false;
p.m_active = false; p.m_active = false;
p.m_channels = config->channels; p.m_channels = config->channels;
g_ssp.push_back(p); g_ssp.push_back(p);
*handle = (u32)g_ssp.size() - 1; *handle = (u32)g_ssp.size() - 1;
return CELL_OK; return CELL_OK;
@ -292,7 +292,7 @@ s32 cellSSPlayerSetParam(u32 handle, vm::ptr<CellSSPlayerRuntimeInfo> info)
} }
// TODO: check parameters // TODO: check parameters
g_ssp[handle].m_level = info->level; g_ssp[handle].m_level = info->level;
g_ssp[handle].m_speed = info->speed; g_ssp[handle].m_speed = info->speed;
g_ssp[handle].m_x = info->position.x; g_ssp[handle].m_x = info->position.x;
@ -301,7 +301,7 @@ s32 cellSSPlayerSetParam(u32 handle, vm::ptr<CellSSPlayerRuntimeInfo> info)
return CELL_OK; return CELL_OK;
} }
s32 cellSSPlayerGetState(u32 handle) s32 cellSSPlayerGetState(u32 handle)
{ {
libmixer.warning("cellSSPlayerGetState(handle=0x%x)", handle); libmixer.warning("cellSSPlayerGetState(handle=0x%x)", handle);

View File

@ -3,7 +3,7 @@
#include "libsnd3.h" #include "libsnd3.h"
logs::channel libsnd3("libsnd3"); LOG_CHANNEL(libsnd3);
s32 cellSnd3Init(u32 maxVoice, u32 samples, vm::ptr<CellSnd3RequestQueueCtx> queue) s32 cellSnd3Init(u32 maxVoice, u32 samples, vm::ptr<CellSnd3RequestQueueCtx> queue)
{ {

View File

@ -5,7 +5,7 @@
logs::channel libsynth2("libsynth2"); LOG_CHANNEL(libsynth2);
s32 cellSoundSynth2Config(s16 param, s32 value) s32 cellSoundSynth2Config(s16 param, s32 value)
{ {

View File

@ -10,7 +10,7 @@
#include "sceNp.h" #include "sceNp.h"
#include "cellSysutil.h" #include "cellSysutil.h"
logs::channel sceNp("sceNp"); LOG_CHANNEL(sceNp);
s32 g_psn_connection_status = SCE_NP_MANAGER_STATUS_OFFLINE; s32 g_psn_connection_status = SCE_NP_MANAGER_STATUS_OFFLINE;
@ -89,7 +89,7 @@ s32 npDrmIsAvailable(vm::cptr<u8> k_licensee_addr, vm::cptr<char> drm_path)
sceNp.error("npDrmIsAvailable(): Failed to verify sce file %s", enc_drm_path); sceNp.error("npDrmIsAvailable(): Failed to verify sce file %s", enc_drm_path);
return SCE_NP_DRM_ERROR_NO_ENTITLEMENT; return SCE_NP_DRM_ERROR_NO_ENTITLEMENT;
} }
} }
else if (magic == "NPD\0"_u32) else if (magic == "NPD\0"_u32)
{ {
@ -204,7 +204,7 @@ s32 sceNpDrmProcessExitSpawn(ppu_thread& ppu, vm::cptr<u8> klicensee, vm::cptr<c
s32 sceNpDrmProcessExitSpawn2(ppu_thread& ppu, vm::cptr<u8> klicensee, vm::cptr<char> path, vm::cpptr<char> argv, vm::cpptr<char> envp, u32 data, u32 data_size, s32 prio, u64 flags) s32 sceNpDrmProcessExitSpawn2(ppu_thread& ppu, vm::cptr<u8> klicensee, vm::cptr<char> path, vm::cpptr<char> argv, vm::cpptr<char> envp, u32 data, u32 data_size, s32 prio, u64 flags)
{ {
sceNp.warning("sceNpDrmProcessExitSpawn2(klicensee=*0x%x, path=%s, argv=**0x%x, envp=**0x%x, data=*0x%x, data_size=0x%x, prio=%d, flags=0x%x)", klicensee, path, argv, envp, data, data_size, prio, flags); sceNp.warning("sceNpDrmProcessExitSpawn2(klicensee=*0x%x, path=%s, argv=**0x%x, envp=**0x%x, data=*0x%x, data_size=0x%x, prio=%d, flags=0x%x)", klicensee, path, argv, envp, data, data_size, prio, flags);
if (s32 error = npDrmIsAvailable(klicensee, path)) if (s32 error = npDrmIsAvailable(klicensee, path))
{ {
return error; return error;
@ -1190,12 +1190,12 @@ s32 sceNpManagerRequestTicket()
s32 sceNpManagerRequestTicket2() s32 sceNpManagerRequestTicket2()
{ {
UNIMPLEMENTED_FUNC(sceNp); UNIMPLEMENTED_FUNC(sceNp);
if (g_psn_connection_status == SCE_NP_MANAGER_STATUS_OFFLINE) if (g_psn_connection_status == SCE_NP_MANAGER_STATUS_OFFLINE)
{ {
return SCE_NP_ERROR_OFFLINE; return SCE_NP_ERROR_OFFLINE;
} }
return CELL_OK; return CELL_OK;
} }

View File

@ -4,7 +4,7 @@
#include "sceNp.h" #include "sceNp.h"
#include "sceNp2.h" #include "sceNp2.h"
logs::channel sceNp2("sceNp2"); LOG_CHANNEL(sceNp2);
s32 sceNp2Init(u32 poolsize, vm::ptr<void> poolptr) s32 sceNp2Init(u32 poolsize, vm::ptr<void> poolptr)
{ {

View File

@ -5,7 +5,7 @@
#include "sceNp.h" #include "sceNp.h"
#include "sceNpClans.h" #include "sceNpClans.h"
logs::channel sceNpClans("sceNpClans"); LOG_CHANNEL(sceNpClans);
s32 sceNpClansInit(vm::ptr<SceNpCommunicationId> commId, vm::ptr<SceNpCommunicationPassphrase> passphrase, vm::ptr<void> pool, vm::ptr<u32> poolSize, u32 flags) s32 sceNpClansInit(vm::ptr<SceNpCommunicationId> commId, vm::ptr<SceNpCommunicationPassphrase> passphrase, vm::ptr<void> pool, vm::ptr<u32> poolSize, u32 flags)
{ {

View File

@ -3,7 +3,7 @@
#include "sceNpCommerce2.h" #include "sceNpCommerce2.h"
logs::channel sceNpCommerce2("sceNpCommerce2"); LOG_CHANNEL(sceNpCommerce2);
s32 sceNpCommerce2ExecuteStoreBrowse() s32 sceNpCommerce2ExecuteStoreBrowse()
{ {

View File

@ -4,7 +4,7 @@
logs::channel sceNpMatchingInt("sceNpMatchingInt"); LOG_CHANNEL(sceNpMatchingInt);
s32 sceNpMatchingGetRoomMemberList() s32 sceNpMatchingGetRoomMemberList()
{ {

View File

@ -4,7 +4,7 @@
#include "sceNpSns.h" #include "sceNpSns.h"
logs::channel sceNpSns("sceNpSns"); LOG_CHANNEL(sceNpSns);
template<> template<>
void fmt_class_string<sceNpSnsError>::format(std::string& out, u64 arg) void fmt_class_string<sceNpSnsError>::format(std::string& out, u64 arg)

View File

@ -14,7 +14,7 @@
#include "Utilities/StrUtil.h" #include "Utilities/StrUtil.h"
logs::channel sceNpTrophy("sceNpTrophy"); LOG_CHANNEL(sceNpTrophy);
TrophyNotificationBase::~TrophyNotificationBase() TrophyNotificationBase::~TrophyNotificationBase()
{ {

View File

@ -4,7 +4,7 @@
#include "sceNp.h" #include "sceNp.h"
#include "sceNpTus.h" #include "sceNpTus.h"
logs::channel sceNpTus("sceNpTus"); LOG_CHANNEL(sceNpTus);
s32 sceNpTusInit() s32 sceNpTusInit()
{ {

View File

@ -4,7 +4,7 @@
#include "sceNp.h" #include "sceNp.h"
#include "sceNpUtil.h" #include "sceNpUtil.h"
logs::channel sceNpUtil("sceNpUtil"); LOG_CHANNEL(sceNpUtil);
s32 sceNpUtilBandwidthTestInitStart(u32 prio, size_t stack) s32 sceNpUtilBandwidthTestInitStart(u32 prio, size_t stack)
{ {

View File

@ -9,7 +9,7 @@
#include "Emu/Cell/lv2/sys_tty.h" #include "Emu/Cell/lv2/sys_tty.h"
#include "sysPrxForUser.h" #include "sysPrxForUser.h"
logs::channel sysPrxForUser("sysPrxForUser"); LOG_CHANNEL(sysPrxForUser);
extern u64 get_system_time(); extern u64 get_system_time();

View File

@ -1,7 +1,7 @@
#include "stdafx.h" #include "stdafx.h"
#include "Emu/Cell/PPUModule.h" #include "Emu/Cell/PPUModule.h"
logs::channel sys_io("sys_io"); LOG_CHANNEL(sys_io);
extern void cellPad_init(); extern void cellPad_init();
extern void cellKb_init(); extern void cellKb_init();

View File

@ -5,7 +5,7 @@
logs::channel sys_libc("sys_libc"); LOG_CHANNEL(sys_libc);
void sys_libc_memcpy(vm::ptr<void> dst, vm::cptr<void> src, u32 size) void sys_libc_memcpy(vm::ptr<void> dst, vm::cptr<void> src, u32 size)
{ {

View File

@ -5,7 +5,7 @@
#include "sys_lv2dbg.h" #include "sys_lv2dbg.h"
logs::channel sys_lv2dbg("sys_lv2dbg"); LOG_CHANNEL(sys_lv2dbg);
template <> template <>
void fmt_class_string<CellLv2DbgError>::format(std::string& out, u64 arg) void fmt_class_string<CellLv2DbgError>::format(std::string& out, u64 arg)

View File

@ -6,7 +6,7 @@
logs::channel libnet("libnet"); LOG_CHANNEL(libnet);
struct sys_net_tls_data struct sys_net_tls_data
{ {

Some files were not shown because too many files have changed in this diff Show More