#include "stdafx.h" #include "Emu/System.h" #include "Emu/Cell/PPUModule.h" logs::channel cellSysutilMisc("cellSysutilMisc"); // License areas enum { CELL_SYSUTIL_LICENSE_AREA_J = 0, CELL_SYSUTIL_LICENSE_AREA_A = 1, CELL_SYSUTIL_LICENSE_AREA_E = 2, CELL_SYSUTIL_LICENSE_AREA_H = 3, CELL_SYSUTIL_LICENSE_AREA_K = 4, CELL_SYSUTIL_LICENSE_AREA_C = 5, CELL_SYSUTIL_LICENSE_AREA_OTHER = 100, }; s32 cellSysutilGetLicenseArea() { cellSysutilMisc.warning("cellSysutilGetLicenseArea()"); switch (const char region = Emu.GetTitleID().at(2)) { case 'J': return CELL_SYSUTIL_LICENSE_AREA_J; case 'U': return CELL_SYSUTIL_LICENSE_AREA_A; case 'E': return CELL_SYSUTIL_LICENSE_AREA_E; case 'H': return CELL_SYSUTIL_LICENSE_AREA_H; case 'K': return CELL_SYSUTIL_LICENSE_AREA_K; case 'A': return CELL_SYSUTIL_LICENSE_AREA_C; default: cellSysutilMisc.todo("Unknown license area: %s", Emu.GetTitleID().c_str()); return CELL_SYSUTIL_LICENSE_AREA_OTHER; } } DECLARE(ppu_module_manager::cellSysutilMisc)("cellSysutilMisc", []() { REG_FUNC(cellSysutilMisc, cellSysutilGetLicenseArea); });