2015-01-29 18:48:05 +03:00
|
|
|
#include "stdafx.h"
|
|
|
|
|
#include "Emu/System.h"
|
2016-05-13 13:17:26 +03:00
|
|
|
#include "Emu/PSP2/ARMv7Module.h"
|
2015-01-29 18:48:05 +03:00
|
|
|
|
2015-06-21 02:04:01 +03:00
|
|
|
#include "sceJpegEnc.h"
|
2015-01-30 02:58:53 +03:00
|
|
|
|
2016-05-13 13:17:26 +03:00
|
|
|
logs::channel sceJpegEnc("sceJpegEnc", logs::level::notice);
|
2016-02-02 00:53:16 +03:00
|
|
|
|
2015-01-30 02:58:53 +03:00
|
|
|
s32 sceJpegEncoderGetContextSize()
|
|
|
|
|
{
|
2016-08-08 19:01:06 +03:00
|
|
|
fmt::throw_exception("Unimplemented" HERE);
|
2015-01-30 02:58:53 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
s32 sceJpegEncoderInit(
|
|
|
|
|
SceJpegEncoderContext context,
|
|
|
|
|
s32 iFrameWidth,
|
|
|
|
|
s32 iFrameHeight,
|
|
|
|
|
s32 pixelFormat,
|
2015-06-21 02:04:01 +03:00
|
|
|
vm::ptr<void> pJpeg,
|
2015-01-30 02:58:53 +03:00
|
|
|
u32 oJpegbufSize)
|
|
|
|
|
{
|
2016-08-08 19:01:06 +03:00
|
|
|
fmt::throw_exception("Unimplemented" HERE);
|
2015-01-30 02:58:53 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
s32 sceJpegEncoderEncode(
|
|
|
|
|
SceJpegEncoderContext context,
|
2015-06-22 01:27:58 +03:00
|
|
|
vm::cptr<void> pYCbCr)
|
2015-01-30 02:58:53 +03:00
|
|
|
{
|
2016-08-08 19:01:06 +03:00
|
|
|
fmt::throw_exception("Unimplemented" HERE);
|
2015-01-30 02:58:53 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
s32 sceJpegEncoderEnd(SceJpegEncoderContext context)
|
|
|
|
|
{
|
2016-08-08 19:01:06 +03:00
|
|
|
fmt::throw_exception("Unimplemented" HERE);
|
2015-01-30 02:58:53 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
s32 sceJpegEncoderSetValidRegion(
|
|
|
|
|
SceJpegEncoderContext context,
|
|
|
|
|
s32 iFrameWidth,
|
|
|
|
|
s32 iFrameHeight)
|
|
|
|
|
{
|
2016-08-08 19:01:06 +03:00
|
|
|
fmt::throw_exception("Unimplemented" HERE);
|
2015-01-30 02:58:53 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
s32 sceJpegEncoderSetCompressionRatio(
|
|
|
|
|
SceJpegEncoderContext context,
|
|
|
|
|
s32 compratio)
|
|
|
|
|
{
|
2016-08-08 19:01:06 +03:00
|
|
|
fmt::throw_exception("Unimplemented" HERE);
|
2015-01-30 02:58:53 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
s32 sceJpegEncoderSetHeaderMode(
|
|
|
|
|
SceJpegEncoderContext context,
|
|
|
|
|
s32 headerMode)
|
|
|
|
|
{
|
2016-08-08 19:01:06 +03:00
|
|
|
fmt::throw_exception("Unimplemented" HERE);
|
2015-01-30 02:58:53 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
s32 sceJpegEncoderSetOutputAddr(
|
|
|
|
|
SceJpegEncoderContext context,
|
2015-06-21 02:04:01 +03:00
|
|
|
vm::ptr<void> pJpeg,
|
2015-01-30 02:58:53 +03:00
|
|
|
u32 oJpegbufSize)
|
|
|
|
|
{
|
2016-08-08 19:01:06 +03:00
|
|
|
fmt::throw_exception("Unimplemented" HERE);
|
2015-01-30 02:58:53 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
s32 sceJpegEncoderCsc(
|
|
|
|
|
SceJpegEncoderContext context,
|
2015-06-21 02:04:01 +03:00
|
|
|
vm::ptr<void> pYCbCr,
|
2015-06-22 01:27:58 +03:00
|
|
|
vm::cptr<void> pRGBA,
|
2015-01-30 02:58:53 +03:00
|
|
|
s32 iFrameWidth,
|
|
|
|
|
s32 inputPixelFormat)
|
|
|
|
|
{
|
2016-08-08 19:01:06 +03:00
|
|
|
fmt::throw_exception("Unimplemented" HERE);
|
2015-01-30 02:58:53 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
2016-02-02 00:53:16 +03:00
|
|
|
#define REG_FUNC(nid, name) REG_FNID(SceJpegEncUser, nid, name)
|
2015-01-29 18:48:05 +03:00
|
|
|
|
2016-02-02 00:53:16 +03:00
|
|
|
DECLARE(arm_module_manager::SceJpegEnc)("SceJpegEncUser", []()
|
2015-01-29 18:48:05 +03:00
|
|
|
{
|
2015-01-30 02:58:53 +03:00
|
|
|
REG_FUNC(0x2B55844D, sceJpegEncoderGetContextSize);
|
|
|
|
|
REG_FUNC(0x88DA92B4, sceJpegEncoderInit);
|
|
|
|
|
REG_FUNC(0xC60DE94C, sceJpegEncoderEncode);
|
|
|
|
|
REG_FUNC(0xC87AA849, sceJpegEncoderEnd);
|
|
|
|
|
REG_FUNC(0x9511F3BC, sceJpegEncoderSetValidRegion);
|
|
|
|
|
REG_FUNC(0xB2B828EC, sceJpegEncoderSetCompressionRatio);
|
|
|
|
|
REG_FUNC(0x2F58B12C, sceJpegEncoderSetHeaderMode);
|
|
|
|
|
REG_FUNC(0x25D52D97, sceJpegEncoderSetOutputAddr);
|
|
|
|
|
REG_FUNC(0x824A7D4F, sceJpegEncoderCsc);
|
2015-01-29 18:48:05 +03:00
|
|
|
});
|