mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-07-16 03:38:38 +12:00
99 lines
2.3 KiB
C++
99 lines
2.3 KiB
C++
#include "stdafx.h"
|
|
#include "Emu/Cell/PPUModule.h"
|
|
|
|
|
|
|
|
LOG_CHANNEL(cellSysutilAp);
|
|
|
|
// Return Codes
|
|
enum CellSysutilApError : u32
|
|
{
|
|
CELL_SYSUTIL_AP_ERROR_OUT_OF_MEMORY = 0x8002cd00,
|
|
CELL_SYSUTIL_AP_ERROR_FATAL = 0x8002cd01,
|
|
CELL_SYSUTIL_AP_ERROR_INVALID_VALUE = 0x8002cd02,
|
|
CELL_SYSUTIL_AP_ERROR_NOT_INITIALIZED = 0x8002cd03,
|
|
CELL_SYSUTIL_AP_ERROR_ZERO_REGISTERED = 0x8002cd13,
|
|
CELL_SYSUTIL_AP_ERROR_NETIF_DISABLED = 0x8002cd14,
|
|
CELL_SYSUTIL_AP_ERROR_NETIF_NO_CABLE = 0x8002cd15,
|
|
CELL_SYSUTIL_AP_ERROR_NETIF_CANNOT_CONNECT = 0x8002cd16,
|
|
};
|
|
|
|
template<>
|
|
void fmt_class_string<CellSysutilApError>::format(std::string& out, u64 arg)
|
|
{
|
|
format_enum(out, arg, [](auto error)
|
|
{
|
|
switch (error)
|
|
{
|
|
STR_CASE(CELL_SYSUTIL_AP_ERROR_OUT_OF_MEMORY);
|
|
STR_CASE(CELL_SYSUTIL_AP_ERROR_FATAL);
|
|
STR_CASE(CELL_SYSUTIL_AP_ERROR_INVALID_VALUE);
|
|
STR_CASE(CELL_SYSUTIL_AP_ERROR_NOT_INITIALIZED);
|
|
STR_CASE(CELL_SYSUTIL_AP_ERROR_ZERO_REGISTERED);
|
|
STR_CASE(CELL_SYSUTIL_AP_ERROR_NETIF_DISABLED);
|
|
STR_CASE(CELL_SYSUTIL_AP_ERROR_NETIF_NO_CABLE);
|
|
STR_CASE(CELL_SYSUTIL_AP_ERROR_NETIF_CANNOT_CONNECT);
|
|
}
|
|
|
|
return unknown;
|
|
});
|
|
}
|
|
|
|
enum
|
|
{
|
|
CELL_SYSUTIL_AP_TITLE_ID_LEN = 9,
|
|
CELL_SYSUTIL_AP_SSID_LEN = 32,
|
|
CELL_SYSUTIL_AP_WPA_KEY_LEN = 64
|
|
};
|
|
|
|
struct CellSysutilApTitleId
|
|
{
|
|
char data[CELL_SYSUTIL_AP_TITLE_ID_LEN];
|
|
char padding[3];
|
|
};
|
|
|
|
struct CellSysutilApSsid
|
|
{
|
|
char data[CELL_SYSUTIL_AP_SSID_LEN + 1];
|
|
char padding[3];
|
|
};
|
|
|
|
struct CellSysutilApWpaKey
|
|
{
|
|
char data[CELL_SYSUTIL_AP_WPA_KEY_LEN + 1];
|
|
char padding[3];
|
|
};
|
|
|
|
struct CellSysutilApParam
|
|
{
|
|
be_t<s32> type;
|
|
be_t<s32> wlanFlag;
|
|
CellSysutilApTitleId titleId;
|
|
CellSysutilApSsid ssid;
|
|
CellSysutilApWpaKey wpakey;
|
|
};
|
|
|
|
s32 cellSysutilApGetRequiredMemSize()
|
|
{
|
|
cellSysutilAp.trace("cellSysutilApGetRequiredMemSize()");
|
|
return 1024*1024; // Return 1 MB as required size
|
|
}
|
|
|
|
error_code cellSysutilApOn(vm::ptr<CellSysutilApParam> pParam, u32 container)
|
|
{
|
|
cellSysutilAp.todo("cellSysutilApOn(pParam=*0x%x, container=0x%x)", pParam, container);
|
|
return CELL_OK;
|
|
}
|
|
|
|
error_code cellSysutilApOff()
|
|
{
|
|
cellSysutilAp.todo("cellSysutilApOff()");
|
|
return CELL_OK;
|
|
}
|
|
|
|
DECLARE(ppu_module_manager::cellSysutilAp)("cellSysutilAp", []()
|
|
{
|
|
REG_FUNC(cellSysutilAp, cellSysutilApGetRequiredMemSize);
|
|
REG_FUNC(cellSysutilAp, cellSysutilApOn);
|
|
REG_FUNC(cellSysutilAp, cellSysutilApOff);
|
|
});
|