mirror of
https://github.com/RPCSX/rpcsx.git
synced 2026-01-20 23:50:46 +01:00
[rpcsx-os] dmem: 0xc0208016 ioctl: return address and size
This commit is contained in:
parent
6e6b8c0495
commit
e967c8cf80
|
|
@ -48,10 +48,22 @@ static orbis::ErrorCode dmem_ioctl(orbis::File *file, std::uint64_t request,
|
|||
*(std::uint64_t *)argp = dmemSize;
|
||||
return {};
|
||||
|
||||
case 0xc0208016: // get avaiable size
|
||||
ORBIS_LOG_ERROR("dmem getAvaiableSize", device->index, argp);
|
||||
*(std::uint64_t *)argp = dmemSize - device->nextOffset;
|
||||
case 0xc0208016: { // get available size
|
||||
struct Args {
|
||||
std::uint64_t searchStart;
|
||||
std::uint64_t searchEnd;
|
||||
std::uint64_t alignment;
|
||||
std::uint64_t size;
|
||||
};
|
||||
|
||||
auto args = reinterpret_cast<Args *>(argp);
|
||||
|
||||
ORBIS_LOG_ERROR("dmem getAvaiableSize", device->index, argp, dmemSize,
|
||||
device->nextOffset, dmemSize - device->nextOffset);
|
||||
args->searchStart = device->nextOffset;
|
||||
args->size = dmemSize - device->nextOffset;
|
||||
return {};
|
||||
}
|
||||
|
||||
case 0xc0288001: { // sceKernelAllocateDirectMemory
|
||||
auto args = reinterpret_cast<AllocateDirectMemoryArgs *>(argp);
|
||||
|
|
@ -86,19 +98,6 @@ static orbis::ErrorCode dmem_ioctl(orbis::File *file, std::uint64_t request,
|
|||
return {};
|
||||
}
|
||||
|
||||
case 0xc020a801: {
|
||||
struct Args {
|
||||
std::uint64_t len;
|
||||
std::uint64_t searchStart;
|
||||
std::uint64_t searchEnd;
|
||||
std::uint32_t alignment;
|
||||
};
|
||||
auto args = reinterpret_cast<Args *>(argp);
|
||||
ORBIS_LOG_TODO("dmem memory pool expand", device->index, args->len,
|
||||
args->searchStart, args->searchEnd, args->alignment);
|
||||
return {};
|
||||
}
|
||||
|
||||
case 0xc0288011: {
|
||||
auto args = reinterpret_cast<AllocateDirectMemoryArgs *>(argp);
|
||||
// TODO
|
||||
|
|
|
|||
Loading…
Reference in a new issue