mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-07-15 11:18:36 +12:00
initial start to eliminate static func init, not compilable atm
move module initialization into a module manager, still has some issues like stopping not working and debug crashing add #idef 0 to modules that aren't in the windows project don't double initialize and don't de-initialize for now, since many modules don't expect it and it leads to many errors remove duplicate module lists for empty modules and implemented ones, make Module non-copyable but movable add secondary project, no real use for it now add some memleak config to the emucore and add asmjit path to rpcs3 small rebase error fixed to get it to compile again add filters for emucore re-add the module manager and static file WIP commit, linker errors abound some more abstraction layer stuff fix the remaining linker errors, re-enable platform specific mouse, pad and keyboard handlers rebasing fix memset undefined and re() usage of se_t before declaration Add wxGUI define by default for cmake builds fix copy constructors of Datetime header fix copy constructors of other wx interface classes remove static declarations of global variables make wxGLCanvas constructor non-ambiguous even with wx2.8. compat mode, fix wrong std::exception constructor calls remove duplicate definition for FromUTF8 and ToUTF8 temp changes
This commit is contained in:
parent
c4e3ec825e
commit
c37905e465
156 changed files with 6567 additions and 4611 deletions
|
@ -8,10 +8,11 @@
|
|||
#include "Emu/SysCalls/SysCalls.h"
|
||||
#include "Emu/GS/GCM.h"
|
||||
|
||||
void cellGcmSys_init();
|
||||
void cellGcmSys_load();
|
||||
void cellGcmSys_unload();
|
||||
Module cellGcmSys(0x0010, cellGcmSys_init, cellGcmSys_load, cellGcmSys_unload);
|
||||
//void cellGcmSys_init();
|
||||
//void cellGcmSys_load();
|
||||
//void cellGcmSys_unload();
|
||||
//Module cellGcmSys(0x0010, cellGcmSys_init, cellGcmSys_load, cellGcmSys_unload);
|
||||
extern Module *cellGcmSys = nullptr;
|
||||
|
||||
u32 local_size = 0;
|
||||
u32 local_addr = 0;
|
||||
|
@ -67,17 +68,17 @@ u32 map_offset_pos = 0;
|
|||
|
||||
u32 cellGcmGetLabelAddress(u8 index)
|
||||
{
|
||||
cellGcmSys.Log("cellGcmGetLabelAddress(index=%d)", index);
|
||||
cellGcmSys->Log("cellGcmGetLabelAddress(index=%d)", index);
|
||||
return Memory.RSXCMDMem.GetStartAddr() + 0x10 * index;
|
||||
}
|
||||
|
||||
u32 cellGcmGetReportDataAddressLocation(u32 index, u32 location)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmGetReportDataAddressLocation(index=%d, location=%d)", index, location);
|
||||
cellGcmSys->Warning("cellGcmGetReportDataAddressLocation(index=%d, location=%d)", index, location);
|
||||
|
||||
if (location == CELL_GCM_LOCATION_LOCAL) {
|
||||
if (index >= 2048) {
|
||||
cellGcmSys.Error("cellGcmGetReportDataAddressLocation: Wrong local index (%d)", index);
|
||||
cellGcmSys->Error("cellGcmGetReportDataAddressLocation: Wrong local index (%d)", index);
|
||||
return 0;
|
||||
}
|
||||
return Memory.RSXFBMem.GetStartAddr() + index * 0x10;
|
||||
|
@ -85,23 +86,23 @@ u32 cellGcmGetReportDataAddressLocation(u32 index, u32 location)
|
|||
|
||||
if (location == CELL_GCM_LOCATION_MAIN) {
|
||||
if (index >= 1024*1024) {
|
||||
cellGcmSys.Error("cellGcmGetReportDataAddressLocation: Wrong main index (%d)", index);
|
||||
cellGcmSys->Error("cellGcmGetReportDataAddressLocation: Wrong main index (%d)", index);
|
||||
return 0;
|
||||
}
|
||||
// TODO: It seems m_report_main_addr is not initialized
|
||||
return Emu.GetGSManager().GetRender().m_report_main_addr + index * 0x10;
|
||||
}
|
||||
|
||||
cellGcmSys.Error("cellGcmGetReportDataAddressLocation: Wrong location (%d)", location);
|
||||
cellGcmSys->Error("cellGcmGetReportDataAddressLocation: Wrong location (%d)", location);
|
||||
return 0;
|
||||
}
|
||||
|
||||
u64 cellGcmGetTimeStamp(u32 index)
|
||||
{
|
||||
cellGcmSys.Log("cellGcmGetTimeStamp(index=%d)", index);
|
||||
cellGcmSys->Log("cellGcmGetTimeStamp(index=%d)", index);
|
||||
|
||||
if (index >= 2048) {
|
||||
cellGcmSys.Error("cellGcmGetTimeStamp: Wrong local index (%d)", index);
|
||||
cellGcmSys->Error("cellGcmGetTimeStamp: Wrong local index (%d)", index);
|
||||
return 0;
|
||||
}
|
||||
return Memory.Read64(Memory.RSXFBMem.GetStartAddr() + index * 0x10);
|
||||
|
@ -121,10 +122,10 @@ int cellGcmGetNotifyDataAddress()
|
|||
|
||||
u32 cellGcmGetReport(u32 type, u32 index)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmGetReport(type=%d, index=%d)", type, index);
|
||||
cellGcmSys->Warning("cellGcmGetReport(type=%d, index=%d)", type, index);
|
||||
|
||||
if (index >= 2048) {
|
||||
cellGcmSys.Error("cellGcmGetReport: Wrong local index (%d)", index);
|
||||
cellGcmSys->Error("cellGcmGetReport: Wrong local index (%d)", index);
|
||||
return 0;
|
||||
}
|
||||
// TODO: What does the argument type do?
|
||||
|
@ -133,10 +134,10 @@ u32 cellGcmGetReport(u32 type, u32 index)
|
|||
|
||||
u32 cellGcmGetReportDataAddress(u32 index)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmGetReportDataAddress(index=%d)", index);
|
||||
cellGcmSys->Warning("cellGcmGetReportDataAddress(index=%d)", index);
|
||||
|
||||
if (index >= 2048) {
|
||||
cellGcmSys.Error("cellGcmGetReportDataAddress: Wrong local index (%d)", index);
|
||||
cellGcmSys->Error("cellGcmGetReportDataAddress: Wrong local index (%d)", index);
|
||||
return 0;
|
||||
}
|
||||
return Memory.RSXFBMem.GetStartAddr() + index * 0x10;
|
||||
|
@ -144,11 +145,11 @@ u32 cellGcmGetReportDataAddress(u32 index)
|
|||
|
||||
u32 cellGcmGetReportDataLocation(u32 index, u32 location)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmGetReportDataLocation(index=%d, location=%d)", index, location);
|
||||
cellGcmSys->Warning("cellGcmGetReportDataLocation(index=%d, location=%d)", index, location);
|
||||
|
||||
if (location == CELL_GCM_LOCATION_LOCAL) {
|
||||
if (index >= 2048) {
|
||||
cellGcmSys.Error("cellGcmGetReportDataLocation: Wrong local index (%d)", index);
|
||||
cellGcmSys->Error("cellGcmGetReportDataLocation: Wrong local index (%d)", index);
|
||||
return 0;
|
||||
}
|
||||
return Memory.Read32(Memory.RSXFBMem.GetStartAddr() + index * 0x10 + 0x8);
|
||||
|
@ -156,24 +157,24 @@ u32 cellGcmGetReportDataLocation(u32 index, u32 location)
|
|||
|
||||
if (location == CELL_GCM_LOCATION_MAIN) {
|
||||
if (index >= 1024*1024) {
|
||||
cellGcmSys.Error("cellGcmGetReportDataLocation: Wrong main index (%d)", index);
|
||||
cellGcmSys->Error("cellGcmGetReportDataLocation: Wrong main index (%d)", index);
|
||||
return 0;
|
||||
}
|
||||
// TODO: It seems m_report_main_addr is not initialized
|
||||
return Memory.Read32(Emu.GetGSManager().GetRender().m_report_main_addr + index * 0x10 + 0x8);
|
||||
}
|
||||
|
||||
cellGcmSys.Error("cellGcmGetReportDataLocation: Wrong location (%d)", location);
|
||||
cellGcmSys->Error("cellGcmGetReportDataLocation: Wrong location (%d)", location);
|
||||
return 0;
|
||||
}
|
||||
|
||||
u64 cellGcmGetTimeStampLocation(u32 index, u32 location)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmGetTimeStampLocation(index=%d, location=%d)", index, location);
|
||||
cellGcmSys->Warning("cellGcmGetTimeStampLocation(index=%d, location=%d)", index, location);
|
||||
|
||||
if (location == CELL_GCM_LOCATION_LOCAL) {
|
||||
if (index >= 2048) {
|
||||
cellGcmSys.Error("cellGcmGetTimeStampLocation: Wrong local index (%d)", index);
|
||||
cellGcmSys->Error("cellGcmGetTimeStampLocation: Wrong local index (%d)", index);
|
||||
return 0;
|
||||
}
|
||||
return Memory.Read64(Memory.RSXFBMem.GetStartAddr() + index * 0x10);
|
||||
|
@ -181,14 +182,14 @@ u64 cellGcmGetTimeStampLocation(u32 index, u32 location)
|
|||
|
||||
if (location == CELL_GCM_LOCATION_MAIN) {
|
||||
if (index >= 1024*1024) {
|
||||
cellGcmSys.Error("cellGcmGetTimeStampLocation: Wrong main index (%d)", index);
|
||||
cellGcmSys->Error("cellGcmGetTimeStampLocation: Wrong main index (%d)", index);
|
||||
return 0;
|
||||
}
|
||||
// TODO: It seems m_report_main_addr is not initialized
|
||||
return Memory.Read64(Emu.GetGSManager().GetRender().m_report_main_addr + index * 0x10);
|
||||
}
|
||||
|
||||
cellGcmSys.Error("cellGcmGetTimeStampLocation: Wrong location (%d)", location);
|
||||
cellGcmSys->Error("cellGcmGetTimeStampLocation: Wrong location (%d)", location);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -198,32 +199,32 @@ u64 cellGcmGetTimeStampLocation(u32 index, u32 location)
|
|||
|
||||
u32 cellGcmGetControlRegister()
|
||||
{
|
||||
cellGcmSys.Log("cellGcmGetControlRegister()");
|
||||
cellGcmSys->Log("cellGcmGetControlRegister()");
|
||||
|
||||
return gcm_info.control_addr;
|
||||
}
|
||||
|
||||
u32 cellGcmGetDefaultCommandWordSize()
|
||||
{
|
||||
cellGcmSys.Log("cellGcmGetDefaultCommandWordSize()");
|
||||
cellGcmSys->Log("cellGcmGetDefaultCommandWordSize()");
|
||||
return 0x400;
|
||||
}
|
||||
|
||||
u32 cellGcmGetDefaultSegmentWordSize()
|
||||
{
|
||||
cellGcmSys.Log("cellGcmGetDefaultSegmentWordSize()");
|
||||
cellGcmSys->Log("cellGcmGetDefaultSegmentWordSize()");
|
||||
return 0x100;
|
||||
}
|
||||
|
||||
int cellGcmInitDefaultFifoMode(s32 mode)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmInitDefaultFifoMode(mode=%d)", mode);
|
||||
cellGcmSys->Warning("cellGcmInitDefaultFifoMode(mode=%d)", mode);
|
||||
return CELL_OK;
|
||||
}
|
||||
|
||||
int cellGcmSetDefaultFifoSize(u32 bufferSize, u32 segmentSize)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmSetDefaultFifoSize(bufferSize=0x%x, segmentSize=0x%x)", bufferSize, segmentSize);
|
||||
cellGcmSys->Warning("cellGcmSetDefaultFifoSize(bufferSize=0x%x, segmentSize=0x%x)", bufferSize, segmentSize);
|
||||
return CELL_OK;
|
||||
}
|
||||
|
||||
|
@ -233,11 +234,11 @@ int cellGcmSetDefaultFifoSize(u32 bufferSize, u32 segmentSize)
|
|||
|
||||
int cellGcmBindTile(u8 index)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmBindTile(index=%d)", index);
|
||||
cellGcmSys->Warning("cellGcmBindTile(index=%d)", index);
|
||||
|
||||
if (index >= RSXThread::m_tiles_count)
|
||||
{
|
||||
cellGcmSys.Error("cellGcmBindTile : CELL_GCM_ERROR_INVALID_VALUE");
|
||||
cellGcmSys->Error("cellGcmBindTile : CELL_GCM_ERROR_INVALID_VALUE");
|
||||
return CELL_GCM_ERROR_INVALID_VALUE;
|
||||
}
|
||||
|
||||
|
@ -249,11 +250,11 @@ int cellGcmBindTile(u8 index)
|
|||
|
||||
int cellGcmBindZcull(u8 index)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmBindZcull(index=%d)", index);
|
||||
cellGcmSys->Warning("cellGcmBindZcull(index=%d)", index);
|
||||
|
||||
if (index >= RSXThread::m_zculls_count)
|
||||
{
|
||||
cellGcmSys.Error("cellGcmBindZcull : CELL_GCM_ERROR_INVALID_VALUE");
|
||||
cellGcmSys->Error("cellGcmBindZcull : CELL_GCM_ERROR_INVALID_VALUE");
|
||||
return CELL_GCM_ERROR_INVALID_VALUE;
|
||||
}
|
||||
|
||||
|
@ -265,11 +266,11 @@ int cellGcmBindZcull(u8 index)
|
|||
|
||||
int cellGcmGetConfiguration(mem_ptr_t<CellGcmConfig> config)
|
||||
{
|
||||
cellGcmSys.Log("cellGcmGetConfiguration(config_addr=0x%x)", config.GetAddr());
|
||||
cellGcmSys->Log("cellGcmGetConfiguration(config_addr=0x%x)", config.GetAddr());
|
||||
|
||||
if (!config.IsGood())
|
||||
{
|
||||
cellGcmSys.Error("cellGcmGetConfiguration : CELL_EFAULT");
|
||||
cellGcmSys->Error("cellGcmGetConfiguration : CELL_EFAULT");
|
||||
return CELL_EFAULT;
|
||||
}
|
||||
|
||||
|
@ -280,15 +281,14 @@ int cellGcmGetConfiguration(mem_ptr_t<CellGcmConfig> config)
|
|||
|
||||
int cellGcmGetFlipStatus()
|
||||
{
|
||||
cellGcmSys.Log("cellGcmGetFlipStatus()");
|
||||
cellGcmSys->Log("cellGcmGetFlipStatus()");
|
||||
|
||||
return Emu.GetGSManager().GetRender().m_flip_status;
|
||||
}
|
||||
|
||||
u32 cellGcmGetTiledPitchSize(u32 size)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmGetTiledPitchSize(size=%d)", size);
|
||||
|
||||
cellGcmSys->Warning("cellGcmGetTiledPitchSize(size=%d)", size);
|
||||
// TODO:
|
||||
|
||||
return size;
|
||||
|
@ -296,10 +296,10 @@ u32 cellGcmGetTiledPitchSize(u32 size)
|
|||
|
||||
int cellGcmInit(u32 context_addr, u32 cmdSize, u32 ioSize, u32 ioAddress)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmInit(context_addr=0x%x,cmdSize=0x%x,ioSize=0x%x,ioAddress=0x%x)", context_addr, cmdSize, ioSize, ioAddress);
|
||||
cellGcmSys->Warning("cellGcmInit(context_addr=0x%x,cmdSize=0x%x,ioSize=0x%x,ioAddress=0x%x)", context_addr, cmdSize, ioSize, ioAddress);
|
||||
|
||||
if(!cellGcmSys.IsLoaded())
|
||||
cellGcmSys.Load();
|
||||
if(!cellGcmSys->IsLoaded())
|
||||
cellGcmSys->Load();
|
||||
|
||||
if(!local_size && !local_addr)
|
||||
{
|
||||
|
@ -308,14 +308,14 @@ int cellGcmInit(u32 context_addr, u32 cmdSize, u32 ioSize, u32 ioAddress)
|
|||
Memory.RSXFBMem.AllocAlign(local_size);
|
||||
}
|
||||
|
||||
cellGcmSys.Warning("*** local memory(addr=0x%x, size=0x%x)", local_addr, local_size);
|
||||
cellGcmSys->Warning("*** local memory(addr=0x%x, size=0x%x)", local_addr, local_size);
|
||||
|
||||
InitOffsetTable();
|
||||
Memory.MemoryBlocks.push_back(Memory.RSXIOMem.SetRange(0x50000000, 0x10000000/*256MB*/));//TODO: implement allocateAdressSpace in memoryBase
|
||||
if(cellGcmMapEaIoAddress(ioAddress, 0, ioSize) != CELL_OK)
|
||||
{
|
||||
Memory.MemoryBlocks.pop_back();
|
||||
cellGcmSys.Error("cellGcmInit : CELL_GCM_ERROR_FAILURE");
|
||||
cellGcmSys->Error("cellGcmInit : CELL_GCM_ERROR_FAILURE");
|
||||
return CELL_GCM_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
|
@ -363,7 +363,7 @@ int cellGcmInit(u32 context_addr, u32 cmdSize, u32 ioSize, u32 ioAddress)
|
|||
|
||||
int cellGcmResetFlipStatus()
|
||||
{
|
||||
cellGcmSys.Log("cellGcmResetFlipStatus()");
|
||||
cellGcmSys->Log("cellGcmResetFlipStatus()");
|
||||
|
||||
Emu.GetGSManager().GetRender().m_flip_status = CELL_GCM_DISPLAY_FLIP_STATUS_WAITING;
|
||||
|
||||
|
@ -372,7 +372,7 @@ int cellGcmResetFlipStatus()
|
|||
|
||||
int cellGcmSetDebugOutputLevel(int level)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmSetDebugOutputLevel(level=%d)", level);
|
||||
cellGcmSys->Warning("cellGcmSetDebugOutputLevel(level=%d)", level);
|
||||
|
||||
switch (level)
|
||||
{
|
||||
|
@ -390,11 +390,11 @@ int cellGcmSetDebugOutputLevel(int level)
|
|||
|
||||
int cellGcmSetDisplayBuffer(u32 id, u32 offset, u32 pitch, u32 width, u32 height)
|
||||
{
|
||||
cellGcmSys.Log("cellGcmSetDisplayBuffer(id=0x%x,offset=0x%x,pitch=%d,width=%d,height=%d)", id, offset, width ? pitch / width : pitch, width, height);
|
||||
cellGcmSys->Log("cellGcmSetDisplayBuffer(id=0x%x,offset=0x%x,pitch=%d,width=%d,height=%d)", id, offset, width ? pitch / width : pitch, width, height);
|
||||
|
||||
if (id > 7)
|
||||
{
|
||||
cellGcmSys.Error("cellGcmSetDisplayBuffer : CELL_EINVAL");
|
||||
cellGcmSys->Error("cellGcmSetDisplayBuffer : CELL_EINVAL");
|
||||
return CELL_EINVAL;
|
||||
}
|
||||
|
||||
|
@ -415,7 +415,7 @@ int cellGcmSetDisplayBuffer(u32 id, u32 offset, u32 pitch, u32 width, u32 height
|
|||
|
||||
int cellGcmSetFlip(mem_ptr_t<CellGcmContextData> ctxt, u32 id)
|
||||
{
|
||||
cellGcmSys.Log("cellGcmSetFlip(ctx=0x%x, id=0x%x)", ctxt.GetAddr(), id);
|
||||
cellGcmSys->Log("cellGcmSetFlip(ctx=0x%x, id=0x%x)", ctxt.GetAddr(), id);
|
||||
|
||||
int res = cellGcmSetPrepareFlip(ctxt, id);
|
||||
return res < 0 ? CELL_GCM_ERROR_FAILURE : CELL_OK;
|
||||
|
@ -423,11 +423,11 @@ int cellGcmSetFlip(mem_ptr_t<CellGcmContextData> ctxt, u32 id)
|
|||
|
||||
int cellGcmSetFlipHandler(u32 handler_addr)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmSetFlipHandler(handler_addr=%d)", handler_addr);
|
||||
cellGcmSys->Warning("cellGcmSetFlipHandler(handler_addr=%d)", handler_addr);
|
||||
|
||||
if (handler_addr != 0 && !Memory.IsGoodAddr(handler_addr))
|
||||
{
|
||||
cellGcmSys.Error("cellGcmSetFlipHandler : CELL_EFAULT");
|
||||
cellGcmSys->Error("cellGcmSetFlipHandler : CELL_EFAULT");
|
||||
return CELL_EFAULT;
|
||||
}
|
||||
|
||||
|
@ -437,7 +437,7 @@ int cellGcmSetFlipHandler(u32 handler_addr)
|
|||
|
||||
int cellGcmSetFlipMode(u32 mode)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmSetFlipMode(mode=%d)", mode);
|
||||
cellGcmSys->Warning("cellGcmSetFlipMode(mode=%d)", mode);
|
||||
|
||||
switch (mode)
|
||||
{
|
||||
|
@ -456,18 +456,18 @@ int cellGcmSetFlipMode(u32 mode)
|
|||
|
||||
void cellGcmSetFlipStatus()
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmSetFlipStatus()");
|
||||
cellGcmSys->Warning("cellGcmSetFlipStatus()");
|
||||
|
||||
Emu.GetGSManager().GetRender().m_flip_status = 0;
|
||||
}
|
||||
|
||||
int cellGcmSetPrepareFlip(mem_ptr_t<CellGcmContextData> ctxt, u32 id)
|
||||
{
|
||||
cellGcmSys.Log("cellGcmSetPrepareFlip(ctx=0x%x, id=0x%x)", ctxt.GetAddr(), id);
|
||||
cellGcmSys->Log("cellGcmSetPrepareFlip(ctx=0x%x, id=0x%x)", ctxt.GetAddr(), id);
|
||||
|
||||
if(id >= 8)
|
||||
{
|
||||
cellGcmSys.Error("cellGcmSetPrepareFlip : CELL_GCM_ERROR_FAILURE");
|
||||
cellGcmSys->Error("cellGcmSetPrepareFlip : CELL_GCM_ERROR_FAILURE");
|
||||
return CELL_GCM_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
|
@ -508,7 +508,7 @@ int cellGcmSetPrepareFlip(mem_ptr_t<CellGcmContextData> ctxt, u32 id)
|
|||
|
||||
int cellGcmSetSecondVFrequency(u32 freq)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmSetSecondVFrequency(level=%d)", freq);
|
||||
cellGcmSys->Warning("cellGcmSetSecondVFrequency(level=%d)", freq);
|
||||
|
||||
switch (freq)
|
||||
{
|
||||
|
@ -526,30 +526,30 @@ int cellGcmSetSecondVFrequency(u32 freq)
|
|||
|
||||
int cellGcmSetTileInfo(u8 index, u8 location, u32 offset, u32 size, u32 pitch, u8 comp, u16 base, u8 bank)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmSetTileInfo(index=%d, location=%d, offset=%d, size=%d, pitch=%d, comp=%d, base=%d, bank=%d)",
|
||||
cellGcmSys->Warning("cellGcmSetTileInfo(index=%d, location=%d, offset=%d, size=%d, pitch=%d, comp=%d, base=%d, bank=%d)",
|
||||
index, location, offset, size, pitch, comp, base, bank);
|
||||
|
||||
if (index >= RSXThread::m_tiles_count || base >= 800 || bank >= 4)
|
||||
{
|
||||
cellGcmSys.Error("cellGcmSetTileInfo : CELL_GCM_ERROR_INVALID_VALUE");
|
||||
cellGcmSys->Error("cellGcmSetTileInfo : CELL_GCM_ERROR_INVALID_VALUE");
|
||||
return CELL_GCM_ERROR_INVALID_VALUE;
|
||||
}
|
||||
|
||||
if (offset & 0xffff || size & 0xffff || pitch & 0xf)
|
||||
{
|
||||
cellGcmSys.Error("cellGcmSetTileInfo : CELL_GCM_ERROR_INVALID_ALIGNMENT");
|
||||
cellGcmSys->Error("cellGcmSetTileInfo : CELL_GCM_ERROR_INVALID_ALIGNMENT");
|
||||
return CELL_GCM_ERROR_INVALID_ALIGNMENT;
|
||||
}
|
||||
|
||||
if (location >= 2 || (comp != 0 && (comp < 7 || comp > 12)))
|
||||
{
|
||||
cellGcmSys.Error("cellGcmSetTileInfo : CELL_GCM_ERROR_INVALID_ALIGNMENT");
|
||||
cellGcmSys->Error("cellGcmSetTileInfo : CELL_GCM_ERROR_INVALID_ALIGNMENT");
|
||||
return CELL_GCM_ERROR_INVALID_ENUM;
|
||||
}
|
||||
|
||||
if (comp)
|
||||
{
|
||||
cellGcmSys.Error("cellGcmSetTileInfo: bad compression mode! (%d)", comp);
|
||||
cellGcmSys->Error("cellGcmSetTileInfo: bad compression mode! (%d)", comp);
|
||||
}
|
||||
|
||||
auto& tile = Emu.GetGSManager().GetRender().m_tiles[index];
|
||||
|
@ -567,7 +567,7 @@ int cellGcmSetTileInfo(u8 index, u8 location, u32 offset, u32 size, u32 pitch, u
|
|||
|
||||
u32 cellGcmSetUserHandler(u32 handler)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmSetUserHandler(handler=0x%x)", handler);
|
||||
cellGcmSys->Warning("cellGcmSetUserHandler(handler=0x%x)", handler);
|
||||
return handler;
|
||||
}
|
||||
|
||||
|
@ -579,7 +579,7 @@ int cellGcmSetVBlankHandler()
|
|||
|
||||
int cellGcmSetWaitFlip(mem_ptr_t<CellGcmContextData> ctxt)
|
||||
{
|
||||
cellGcmSys.Log("cellGcmSetWaitFlip(ctx=0x%x)", ctxt.GetAddr());
|
||||
cellGcmSys->Log("cellGcmSetWaitFlip(ctx=0x%x)", ctxt.GetAddr());
|
||||
|
||||
GSLockCurrent lock(GS_LOCK_WAIT_FLIP);
|
||||
return CELL_OK;
|
||||
|
@ -587,12 +587,12 @@ int cellGcmSetWaitFlip(mem_ptr_t<CellGcmContextData> ctxt)
|
|||
|
||||
int cellGcmSetZcull(u8 index, u32 offset, u32 width, u32 height, u32 cullStart, u32 zFormat, u32 aaFormat, u32 zCullDir, u32 zCullFormat, u32 sFunc, u32 sRef, u32 sMask)
|
||||
{
|
||||
cellGcmSys.Warning("TODO: cellGcmSetZcull(index=%d, offset=0x%x, width=%d, height=%d, cullStart=0x%x, zFormat=0x%x, aaFormat=0x%x, zCullDir=0x%x, zCullFormat=0x%x, sFunc=0x%x, sRef=0x%x, sMask=0x%x)",
|
||||
cellGcmSys->Warning("TODO: cellGcmSetZcull(index=%d, offset=0x%x, width=%d, height=%d, cullStart=0x%x, zFormat=0x%x, aaFormat=0x%x, zCullDir=0x%x, zCullFormat=0x%x, sFunc=0x%x, sRef=0x%x, sMask=0x%x)",
|
||||
index, offset, width, height, cullStart, zFormat, aaFormat, zCullDir, zCullFormat, sFunc, sRef, sMask);
|
||||
|
||||
if (index >= RSXThread::m_zculls_count)
|
||||
{
|
||||
cellGcmSys.Error("cellGcmSetZcull : CELL_GCM_ERROR_INVALID_VALUE");
|
||||
cellGcmSys->Error("cellGcmSetZcull : CELL_GCM_ERROR_INVALID_VALUE");
|
||||
return CELL_GCM_ERROR_INVALID_VALUE;
|
||||
}
|
||||
|
||||
|
@ -616,11 +616,11 @@ int cellGcmSetZcull(u8 index, u32 offset, u32 width, u32 height, u32 cullStart,
|
|||
|
||||
int cellGcmUnbindTile(u8 index)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmUnbindTile(index=%d)", index);
|
||||
cellGcmSys->Warning("cellGcmUnbindTile(index=%d)", index);
|
||||
|
||||
if (index >= RSXThread::m_tiles_count)
|
||||
{
|
||||
cellGcmSys.Error("cellGcmUnbindTile : CELL_GCM_ERROR_INVALID_VALUE");
|
||||
cellGcmSys->Error("cellGcmUnbindTile : CELL_GCM_ERROR_INVALID_VALUE");
|
||||
return CELL_GCM_ERROR_INVALID_VALUE;
|
||||
}
|
||||
|
||||
|
@ -632,11 +632,11 @@ int cellGcmUnbindTile(u8 index)
|
|||
|
||||
int cellGcmUnbindZcull(u8 index)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmUnbindZcull(index=%d)", index);
|
||||
cellGcmSys->Warning("cellGcmUnbindZcull(index=%d)", index);
|
||||
|
||||
if (index >= 8)
|
||||
{
|
||||
cellGcmSys.Error("cellGcmUnbindZcull : CELL_EINVAL");
|
||||
cellGcmSys->Error("cellGcmUnbindZcull : CELL_EINVAL");
|
||||
return CELL_EINVAL;
|
||||
}
|
||||
|
||||
|
@ -648,29 +648,29 @@ int cellGcmUnbindZcull(u8 index)
|
|||
|
||||
u32 cellGcmGetTileInfo()
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmGetTileInfo()");
|
||||
cellGcmSys->Warning("cellGcmGetTileInfo()");
|
||||
return Emu.GetGSManager().GetRender().m_tiles_addr;
|
||||
}
|
||||
|
||||
u32 cellGcmGetZcullInfo()
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmGetZcullInfo()");
|
||||
cellGcmSys->Warning("cellGcmGetZcullInfo()");
|
||||
return Emu.GetGSManager().GetRender().m_zculls_addr;
|
||||
}
|
||||
|
||||
u32 cellGcmGetDisplayInfo()
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmGetDisplayInfo() = 0x%x", Emu.GetGSManager().GetRender().m_gcm_buffers_addr);
|
||||
cellGcmSys->Warning("cellGcmGetDisplayInfo() = 0x%x", Emu.GetGSManager().GetRender().m_gcm_buffers_addr);
|
||||
return Emu.GetGSManager().GetRender().m_gcm_buffers_addr;
|
||||
}
|
||||
|
||||
int cellGcmGetCurrentDisplayBufferId(u32 id_addr)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmGetCurrentDisplayBufferId(id_addr=0x%x)", id_addr);
|
||||
cellGcmSys->Warning("cellGcmGetCurrentDisplayBufferId(id_addr=0x%x)", id_addr);
|
||||
|
||||
if (!Memory.IsGoodAddr(id_addr))
|
||||
{
|
||||
cellGcmSys.Error("cellGcmGetCurrentDisplayBufferId : CELL_EFAULT");
|
||||
cellGcmSys->Error("cellGcmGetCurrentDisplayBufferId : CELL_EFAULT");
|
||||
return CELL_EFAULT;
|
||||
}
|
||||
|
||||
|
@ -780,7 +780,7 @@ void InitOffsetTable()
|
|||
|
||||
int32_t cellGcmAddressToOffset(u64 address, mem32_t offset)
|
||||
{
|
||||
cellGcmSys.Log("cellGcmAddressToOffset(address=0x%x,offset_addr=0x%x)", address, offset.GetAddr());
|
||||
cellGcmSys->Log("cellGcmAddressToOffset(address=0x%x,offset_addr=0x%x)", address, offset.GetAddr());
|
||||
|
||||
if (address >= 0xD0000000/*not on main memory or local*/)
|
||||
return CELL_GCM_ERROR_FAILURE;
|
||||
|
@ -838,7 +838,7 @@ int32_t cellGcmIoOffsetToAddress(u32 ioOffset, u64 address)
|
|||
|
||||
int32_t cellGcmMapEaIoAddress(const u32 ea, const u32 io, const u32 size)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmMapEaIoAddress(ea=0x%x, io=0x%x, size=0x%x)", ea, io, size);
|
||||
cellGcmSys->Warning("cellGcmMapEaIoAddress(ea=0x%x, io=0x%x, size=0x%x)", ea, io, size);
|
||||
|
||||
if ((ea & 0xFFFFF) || (io & 0xFFFFF) || (size & 0xFFFFF)) return CELL_GCM_ERROR_FAILURE;
|
||||
|
||||
|
@ -854,7 +854,7 @@ int32_t cellGcmMapEaIoAddress(const u32 ea, const u32 io, const u32 size)
|
|||
}
|
||||
else
|
||||
{
|
||||
cellGcmSys.Error("cellGcmMapEaIoAddress : CELL_GCM_ERROR_FAILURE");
|
||||
cellGcmSys->Error("cellGcmMapEaIoAddress : CELL_GCM_ERROR_FAILURE");
|
||||
return CELL_GCM_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
|
@ -863,7 +863,7 @@ int32_t cellGcmMapEaIoAddress(const u32 ea, const u32 io, const u32 size)
|
|||
|
||||
int32_t cellGcmMapEaIoAddressWithFlags(const u32 ea, const u32 io, const u32 size, const u32 flags)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmMapEaIoAddressWithFlags(ea=0x%x, io=0x%x, size=0x%x, flags=0x%x)", ea, io, size, flags);
|
||||
cellGcmSys->Warning("cellGcmMapEaIoAddressWithFlags(ea=0x%x, io=0x%x, size=0x%x, flags=0x%x)", ea, io, size, flags);
|
||||
return cellGcmMapEaIoAddress(ea, io, size); // TODO: strict ordering
|
||||
}
|
||||
|
||||
|
@ -879,7 +879,7 @@ int32_t cellGcmMapLocalMemory(u64 address, u64 size)
|
|||
}
|
||||
else
|
||||
{
|
||||
cellGcmSys.Error("RSX local memory already mapped");
|
||||
cellGcmSys->Error("RSX local memory already mapped");
|
||||
return CELL_GCM_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
|
@ -888,7 +888,7 @@ int32_t cellGcmMapLocalMemory(u64 address, u64 size)
|
|||
|
||||
int32_t cellGcmMapMainMemory(u64 ea, u32 size, mem32_t offset)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmMapMainMemory(ea=0x%x,size=0x%x,offset_addr=0x%x)", ea, size, offset.GetAddr());
|
||||
cellGcmSys->Warning("cellGcmMapMainMemory(ea=0x%x,size=0x%x,offset_addr=0x%x)", ea, size, offset.GetAddr());
|
||||
|
||||
u64 io;
|
||||
|
||||
|
@ -911,7 +911,7 @@ int32_t cellGcmMapMainMemory(u64 ea, u32 size, mem32_t offset)
|
|||
}
|
||||
else
|
||||
{
|
||||
cellGcmSys.Error("cellGcmMapMainMemory : CELL_GCM_ERROR_NO_IO_PAGE_TABLE");
|
||||
cellGcmSys->Error("cellGcmMapMainMemory : CELL_GCM_ERROR_NO_IO_PAGE_TABLE");
|
||||
return CELL_GCM_ERROR_NO_IO_PAGE_TABLE;
|
||||
}
|
||||
|
||||
|
@ -924,13 +924,13 @@ int32_t cellGcmReserveIoMapSize(const u32 size)
|
|||
{
|
||||
if (size & 0xFFFFF)
|
||||
{
|
||||
cellGcmSys.Error("cellGcmReserveIoMapSize : CELL_GCM_ERROR_INVALID_ALIGNMENT");
|
||||
cellGcmSys->Error("cellGcmReserveIoMapSize : CELL_GCM_ERROR_INVALID_ALIGNMENT");
|
||||
return CELL_GCM_ERROR_INVALID_ALIGNMENT;
|
||||
}
|
||||
|
||||
if (size > cellGcmGetMaxIoMapSize())
|
||||
{
|
||||
cellGcmSys.Error("cellGcmReserveIoMapSize : CELL_GCM_ERROR_INVALID_VALUE");
|
||||
cellGcmSys->Error("cellGcmReserveIoMapSize : CELL_GCM_ERROR_INVALID_VALUE");
|
||||
return CELL_GCM_ERROR_INVALID_VALUE;
|
||||
}
|
||||
|
||||
|
@ -955,7 +955,7 @@ int32_t cellGcmUnmapEaIoAddress(u64 ea)
|
|||
}
|
||||
else
|
||||
{
|
||||
cellGcmSys.Error("cellGcmUnmapEaIoAddress : CELL_GCM_ERROR_FAILURE");
|
||||
cellGcmSys->Error("cellGcmUnmapEaIoAddress : CELL_GCM_ERROR_FAILURE");
|
||||
return CELL_GCM_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
|
@ -979,7 +979,7 @@ int32_t cellGcmUnmapIoAddress(u64 io)
|
|||
}
|
||||
else
|
||||
{
|
||||
cellGcmSys.Error("cellGcmUnmapIoAddress : CELL_GCM_ERROR_FAILURE");
|
||||
cellGcmSys->Error("cellGcmUnmapIoAddress : CELL_GCM_ERROR_FAILURE");
|
||||
return CELL_GCM_ERROR_FAILURE;
|
||||
}
|
||||
|
||||
|
@ -991,13 +991,13 @@ int32_t cellGcmUnreserveIoMapSize(u32 size)
|
|||
|
||||
if (size & 0xFFFFF)
|
||||
{
|
||||
cellGcmSys.Error("cellGcmReserveIoMapSize : CELL_GCM_ERROR_INVALID_ALIGNMENT");
|
||||
cellGcmSys->Error("cellGcmReserveIoMapSize : CELL_GCM_ERROR_INVALID_ALIGNMENT");
|
||||
return CELL_GCM_ERROR_INVALID_ALIGNMENT;
|
||||
}
|
||||
|
||||
if (size > Memory.RSXIOMem.GetReservedAmount())
|
||||
{
|
||||
cellGcmSys.Error("cellGcmReserveIoMapSize : CELL_GCM_ERROR_INVALID_VALUE");
|
||||
cellGcmSys->Error("cellGcmReserveIoMapSize : CELL_GCM_ERROR_INVALID_VALUE");
|
||||
return CELL_GCM_ERROR_INVALID_VALUE;
|
||||
}
|
||||
|
||||
|
@ -1051,7 +1051,7 @@ int cellGcmSetCursorImageOffset(u32 offset)
|
|||
|
||||
void cellGcmSetDefaultCommandBuffer()
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmSetDefaultCommandBuffer()");
|
||||
cellGcmSys->Warning("cellGcmSetDefaultCommandBuffer()");
|
||||
Memory.Write32(Emu.GetGSManager().GetRender().m_ctxt_addr, gcm_info.context_addr);
|
||||
}
|
||||
|
||||
|
@ -1066,7 +1066,7 @@ int cellGcmSetFlipCommand(u32 ctx, u32 id)
|
|||
|
||||
s64 cellGcmFunc15()
|
||||
{
|
||||
cellGcmSys.Error("cellGcmFunc15()");
|
||||
cellGcmSys->Error("cellGcmFunc15()");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -1079,31 +1079,31 @@ int cellGcmSetFlipCommandWithWaitLabel(u32 ctx, u32 id, u32 label_index, u32 lab
|
|||
|
||||
int cellGcmSetTile(u8 index, u8 location, u32 offset, u32 size, u32 pitch, u8 comp, u16 base, u8 bank)
|
||||
{
|
||||
cellGcmSys.Warning("cellGcmSetTile(index=%d, location=%d, offset=%d, size=%d, pitch=%d, comp=%d, base=%d, bank=%d)",
|
||||
cellGcmSys->Warning("cellGcmSetTile(index=%d, location=%d, offset=%d, size=%d, pitch=%d, comp=%d, base=%d, bank=%d)",
|
||||
index, location, offset, size, pitch, comp, base, bank);
|
||||
|
||||
// Copied form cellGcmSetTileInfo
|
||||
if(index >= RSXThread::m_tiles_count || base >= 800 || bank >= 4)
|
||||
{
|
||||
cellGcmSys.Error("cellGcmSetTile : CELL_GCM_ERROR_INVALID_VALUE");
|
||||
cellGcmSys->Error("cellGcmSetTile : CELL_GCM_ERROR_INVALID_VALUE");
|
||||
return CELL_GCM_ERROR_INVALID_VALUE;
|
||||
}
|
||||
|
||||
if(offset & 0xffff || size & 0xffff || pitch & 0xf)
|
||||
{
|
||||
cellGcmSys.Error("cellGcmSetTile : CELL_GCM_ERROR_INVALID_ALIGNMENT");
|
||||
cellGcmSys->Error("cellGcmSetTile : CELL_GCM_ERROR_INVALID_ALIGNMENT");
|
||||
return CELL_GCM_ERROR_INVALID_ALIGNMENT;
|
||||
}
|
||||
|
||||
if(location >= 2 || (comp != 0 && (comp < 7 || comp > 12)))
|
||||
{
|
||||
cellGcmSys.Error("cellGcmSetTile : CELL_GCM_ERROR_INVALID_ENUM");
|
||||
cellGcmSys->Error("cellGcmSetTile : CELL_GCM_ERROR_INVALID_ENUM");
|
||||
return CELL_GCM_ERROR_INVALID_ENUM;
|
||||
}
|
||||
|
||||
if(comp)
|
||||
{
|
||||
cellGcmSys.Error("cellGcmSetTile: bad comp! (%d)", comp);
|
||||
cellGcmSys->Error("cellGcmSetTile: bad comp! (%d)", comp);
|
||||
}
|
||||
|
||||
auto& tile = Emu.GetGSManager().GetRender().m_tiles[index];
|
||||
|
@ -1124,105 +1124,105 @@ int cellGcmSetTile(u8 index, u8 location, u32 offset, u32 size, u32 pitch, u8 co
|
|||
void cellGcmSys_init()
|
||||
{
|
||||
// Data Retrieval
|
||||
cellGcmSys.AddFunc(0xc8f3bd09, cellGcmGetCurrentField);
|
||||
cellGcmSys.AddFunc(0xf80196c1, cellGcmGetLabelAddress);
|
||||
cellGcmSys.AddFunc(0x21cee035, cellGcmGetNotifyDataAddress);
|
||||
cellGcmSys.AddFunc(0x99d397ac, cellGcmGetReport);
|
||||
cellGcmSys.AddFunc(0x9a0159af, cellGcmGetReportDataAddress);
|
||||
cellGcmSys.AddFunc(0x8572bce2, cellGcmGetReportDataAddressLocation);
|
||||
cellGcmSys.AddFunc(0xa6b180ac, cellGcmGetReportDataLocation);
|
||||
cellGcmSys.AddFunc(0x5a41c10f, cellGcmGetTimeStamp);
|
||||
cellGcmSys.AddFunc(0x2ad4951b, cellGcmGetTimeStampLocation);
|
||||
cellGcmSys->AddFunc(0xc8f3bd09, cellGcmGetCurrentField);
|
||||
cellGcmSys->AddFunc(0xf80196c1, cellGcmGetLabelAddress);
|
||||
cellGcmSys->AddFunc(0x21cee035, cellGcmGetNotifyDataAddress);
|
||||
cellGcmSys->AddFunc(0x99d397ac, cellGcmGetReport);
|
||||
cellGcmSys->AddFunc(0x9a0159af, cellGcmGetReportDataAddress);
|
||||
cellGcmSys->AddFunc(0x8572bce2, cellGcmGetReportDataAddressLocation);
|
||||
cellGcmSys->AddFunc(0xa6b180ac, cellGcmGetReportDataLocation);
|
||||
cellGcmSys->AddFunc(0x5a41c10f, cellGcmGetTimeStamp);
|
||||
cellGcmSys->AddFunc(0x2ad4951b, cellGcmGetTimeStampLocation);
|
||||
|
||||
// Command Buffer Control
|
||||
cellGcmSys.AddFunc(0xa547adde, cellGcmGetControlRegister);
|
||||
cellGcmSys.AddFunc(0x5e2ee0f0, cellGcmGetDefaultCommandWordSize);
|
||||
cellGcmSys.AddFunc(0x8cdf8c70, cellGcmGetDefaultSegmentWordSize);
|
||||
cellGcmSys.AddFunc(0xcaabd992, cellGcmInitDefaultFifoMode);
|
||||
cellGcmSys.AddFunc(0x9ba451e4, cellGcmSetDefaultFifoSize);
|
||||
//cellGcmSys.AddFunc(, cellGcmReserveMethodSize);
|
||||
//cellGcmSys.AddFunc(, cellGcmResetDefaultCommandBuffer);
|
||||
//cellGcmSys.AddFunc(, cellGcmSetupContextData);
|
||||
//cellGcmSys.AddFunc(, cellGcmCallbackForSnc);
|
||||
//cellGcmSys.AddFunc(, cellGcmFinish);
|
||||
//cellGcmSys.AddFunc(, cellGcmFlush);
|
||||
cellGcmSys->AddFunc(0xa547adde, cellGcmGetControlRegister);
|
||||
cellGcmSys->AddFunc(0x5e2ee0f0, cellGcmGetDefaultCommandWordSize);
|
||||
cellGcmSys->AddFunc(0x8cdf8c70, cellGcmGetDefaultSegmentWordSize);
|
||||
cellGcmSys->AddFunc(0xcaabd992, cellGcmInitDefaultFifoMode);
|
||||
cellGcmSys->AddFunc(0x9ba451e4, cellGcmSetDefaultFifoSize);
|
||||
//cellGcmSys->AddFunc(, cellGcmReserveMethodSize);
|
||||
//cellGcmSys->AddFunc(, cellGcmResetDefaultCommandBuffer);
|
||||
//cellGcmSys->AddFunc(, cellGcmSetupContextData);
|
||||
//cellGcmSys->AddFunc(, cellGcmCallbackForSnc);
|
||||
//cellGcmSys->AddFunc(, cellGcmFinish);
|
||||
//cellGcmSys->AddFunc(, cellGcmFlush);
|
||||
|
||||
// Hardware Resource Management
|
||||
cellGcmSys.AddFunc(0x4524cccd, cellGcmBindTile);
|
||||
cellGcmSys.AddFunc(0x9dc04436, cellGcmBindZcull);
|
||||
cellGcmSys.AddFunc(0x1f61b3ff, cellGcmDumpGraphicsError);
|
||||
cellGcmSys.AddFunc(0xe315a0b2, cellGcmGetConfiguration);
|
||||
cellGcmSys.AddFunc(0x371674cf, cellGcmGetDisplayBufferByFlipIndex);
|
||||
cellGcmSys.AddFunc(0x72a577ce, cellGcmGetFlipStatus);
|
||||
cellGcmSys.AddFunc(0x63387071, cellGcmgetLastFlipTime);
|
||||
cellGcmSys.AddFunc(0x23ae55a3, cellGcmGetLastSecondVTime);
|
||||
cellGcmSys.AddFunc(0x055bd74d, cellGcmGetTiledPitchSize);
|
||||
cellGcmSys.AddFunc(0x723bbc7e, cellGcmGetVBlankCount);
|
||||
cellGcmSys.AddFunc(0x15bae46b, cellGcmInit);
|
||||
cellGcmSys.AddFunc(0xfce9e764, cellGcmInitSystemMode);
|
||||
cellGcmSys.AddFunc(0xb2e761d4, cellGcmResetFlipStatus);
|
||||
cellGcmSys.AddFunc(0x51c9d62b, cellGcmSetDebugOutputLevel);
|
||||
cellGcmSys.AddFunc(0xa53d12ae, cellGcmSetDisplayBuffer);
|
||||
cellGcmSys.AddFunc(0xdc09357e, cellGcmSetFlip);
|
||||
cellGcmSys.AddFunc(0xa41ef7e8, cellGcmSetFlipHandler);
|
||||
cellGcmSys.AddFunc(0xacee8542, cellGcmSetFlipImmediate);
|
||||
cellGcmSys.AddFunc(0x4ae8d215, cellGcmSetFlipMode);
|
||||
cellGcmSys.AddFunc(0xa47c09ff, cellGcmSetFlipStatus);
|
||||
cellGcmSys.AddFunc(0xd01b570d, cellGcmSetGraphicsHandler);
|
||||
cellGcmSys.AddFunc(0x0b4b62d5, cellGcmSetPrepareFlip);
|
||||
cellGcmSys.AddFunc(0x0a862772, cellGcmSetQueueHandler);
|
||||
cellGcmSys.AddFunc(0x4d7ce993, cellGcmSetSecondVFrequency);
|
||||
cellGcmSys.AddFunc(0xdc494430, cellGcmSetSecondVHandler);
|
||||
cellGcmSys.AddFunc(0xbd100dbc, cellGcmSetTileInfo);
|
||||
cellGcmSys.AddFunc(0x06edea9e, cellGcmSetUserHandler);
|
||||
cellGcmSys.AddFunc(0xffe0160e, cellGcmSetVBlankFrequency);
|
||||
cellGcmSys.AddFunc(0xa91b0402, cellGcmSetVBlankHandler);
|
||||
cellGcmSys.AddFunc(0x983fb9aa, cellGcmSetWaitFlip);
|
||||
cellGcmSys.AddFunc(0xd34a420d, cellGcmSetZcull);
|
||||
cellGcmSys.AddFunc(0x25b40ab4, cellGcmSortRemapEaIoAddress);
|
||||
cellGcmSys.AddFunc(0xd9b7653e, cellGcmUnbindTile);
|
||||
cellGcmSys.AddFunc(0xa75640e8, cellGcmUnbindZcull);
|
||||
cellGcmSys.AddFunc(0x657571f7, cellGcmGetTileInfo);
|
||||
cellGcmSys.AddFunc(0xd9a0a879, cellGcmGetZcullInfo);
|
||||
cellGcmSys.AddFunc(0x0e6b0dae, cellGcmGetDisplayInfo);
|
||||
cellGcmSys.AddFunc(0x93806525, cellGcmGetCurrentDisplayBufferId);
|
||||
cellGcmSys.AddFunc(0xbd6d60d9, cellGcmSetInvalidateTile);
|
||||
//cellGcmSys.AddFunc(, cellGcmSetFlipWithWaitLabel);
|
||||
cellGcmSys->AddFunc(0x4524cccd, cellGcmBindTile);
|
||||
cellGcmSys->AddFunc(0x9dc04436, cellGcmBindZcull);
|
||||
cellGcmSys->AddFunc(0x1f61b3ff, cellGcmDumpGraphicsError);
|
||||
cellGcmSys->AddFunc(0xe315a0b2, cellGcmGetConfiguration);
|
||||
cellGcmSys->AddFunc(0x371674cf, cellGcmGetDisplayBufferByFlipIndex);
|
||||
cellGcmSys->AddFunc(0x72a577ce, cellGcmGetFlipStatus);
|
||||
cellGcmSys->AddFunc(0x63387071, cellGcmgetLastFlipTime);
|
||||
cellGcmSys->AddFunc(0x23ae55a3, cellGcmGetLastSecondVTime);
|
||||
cellGcmSys->AddFunc(0x055bd74d, cellGcmGetTiledPitchSize);
|
||||
cellGcmSys->AddFunc(0x723bbc7e, cellGcmGetVBlankCount);
|
||||
cellGcmSys->AddFunc(0x15bae46b, cellGcmInit);
|
||||
cellGcmSys->AddFunc(0xfce9e764, cellGcmInitSystemMode);
|
||||
cellGcmSys->AddFunc(0xb2e761d4, cellGcmResetFlipStatus);
|
||||
cellGcmSys->AddFunc(0x51c9d62b, cellGcmSetDebugOutputLevel);
|
||||
cellGcmSys->AddFunc(0xa53d12ae, cellGcmSetDisplayBuffer);
|
||||
cellGcmSys->AddFunc(0xdc09357e, cellGcmSetFlip);
|
||||
cellGcmSys->AddFunc(0xa41ef7e8, cellGcmSetFlipHandler);
|
||||
cellGcmSys->AddFunc(0xacee8542, cellGcmSetFlipImmediate);
|
||||
cellGcmSys->AddFunc(0x4ae8d215, cellGcmSetFlipMode);
|
||||
cellGcmSys->AddFunc(0xa47c09ff, cellGcmSetFlipStatus);
|
||||
cellGcmSys->AddFunc(0xd01b570d, cellGcmSetGraphicsHandler);
|
||||
cellGcmSys->AddFunc(0x0b4b62d5, cellGcmSetPrepareFlip);
|
||||
cellGcmSys->AddFunc(0x0a862772, cellGcmSetQueueHandler);
|
||||
cellGcmSys->AddFunc(0x4d7ce993, cellGcmSetSecondVFrequency);
|
||||
cellGcmSys->AddFunc(0xdc494430, cellGcmSetSecondVHandler);
|
||||
cellGcmSys->AddFunc(0xbd100dbc, cellGcmSetTileInfo);
|
||||
cellGcmSys->AddFunc(0x06edea9e, cellGcmSetUserHandler);
|
||||
cellGcmSys->AddFunc(0xffe0160e, cellGcmSetVBlankFrequency);
|
||||
cellGcmSys->AddFunc(0xa91b0402, cellGcmSetVBlankHandler);
|
||||
cellGcmSys->AddFunc(0x983fb9aa, cellGcmSetWaitFlip);
|
||||
cellGcmSys->AddFunc(0xd34a420d, cellGcmSetZcull);
|
||||
cellGcmSys->AddFunc(0x25b40ab4, cellGcmSortRemapEaIoAddress);
|
||||
cellGcmSys->AddFunc(0xd9b7653e, cellGcmUnbindTile);
|
||||
cellGcmSys->AddFunc(0xa75640e8, cellGcmUnbindZcull);
|
||||
cellGcmSys->AddFunc(0x657571f7, cellGcmGetTileInfo);
|
||||
cellGcmSys->AddFunc(0xd9a0a879, cellGcmGetZcullInfo);
|
||||
cellGcmSys->AddFunc(0x0e6b0dae, cellGcmGetDisplayInfo);
|
||||
cellGcmSys->AddFunc(0x93806525, cellGcmGetCurrentDisplayBufferId);
|
||||
cellGcmSys->AddFunc(0xbd6d60d9, cellGcmSetInvalidateTile);
|
||||
//cellGcmSys->AddFunc(, cellGcmSetFlipWithWaitLabel);
|
||||
|
||||
// Memory Mapping
|
||||
cellGcmSys.AddFunc(0x21ac3697, cellGcmAddressToOffset);
|
||||
cellGcmSys.AddFunc(0xfb81c03e, cellGcmGetMaxIoMapSize);
|
||||
cellGcmSys.AddFunc(0x2922aed0, cellGcmGetOffsetTable);
|
||||
cellGcmSys.AddFunc(0x2a6fba9c, cellGcmIoOffsetToAddress);
|
||||
cellGcmSys.AddFunc(0x63441cb4, cellGcmMapEaIoAddress);
|
||||
cellGcmSys.AddFunc(0x626e8518, cellGcmMapEaIoAddressWithFlags);
|
||||
cellGcmSys.AddFunc(0xdb769b32, cellGcmMapLocalMemory);
|
||||
cellGcmSys.AddFunc(0xa114ec67, cellGcmMapMainMemory);
|
||||
cellGcmSys.AddFunc(0xa7ede268, cellGcmReserveIoMapSize);
|
||||
cellGcmSys.AddFunc(0xefd00f54, cellGcmUnmapEaIoAddress);
|
||||
cellGcmSys.AddFunc(0xdb23e867, cellGcmUnmapIoAddress);
|
||||
cellGcmSys.AddFunc(0x3b9bd5bd, cellGcmUnreserveIoMapSize);
|
||||
cellGcmSys->AddFunc(0x21ac3697, cellGcmAddressToOffset);
|
||||
cellGcmSys->AddFunc(0xfb81c03e, cellGcmGetMaxIoMapSize);
|
||||
cellGcmSys->AddFunc(0x2922aed0, cellGcmGetOffsetTable);
|
||||
cellGcmSys->AddFunc(0x2a6fba9c, cellGcmIoOffsetToAddress);
|
||||
cellGcmSys->AddFunc(0x63441cb4, cellGcmMapEaIoAddress);
|
||||
cellGcmSys->AddFunc(0x626e8518, cellGcmMapEaIoAddressWithFlags);
|
||||
cellGcmSys->AddFunc(0xdb769b32, cellGcmMapLocalMemory);
|
||||
cellGcmSys->AddFunc(0xa114ec67, cellGcmMapMainMemory);
|
||||
cellGcmSys->AddFunc(0xa7ede268, cellGcmReserveIoMapSize);
|
||||
cellGcmSys->AddFunc(0xefd00f54, cellGcmUnmapEaIoAddress);
|
||||
cellGcmSys->AddFunc(0xdb23e867, cellGcmUnmapIoAddress);
|
||||
cellGcmSys->AddFunc(0x3b9bd5bd, cellGcmUnreserveIoMapSize);
|
||||
|
||||
// Cursor
|
||||
cellGcmSys.AddFunc(0x107bf3a1, cellGcmInitCursor);
|
||||
cellGcmSys.AddFunc(0xc47d0812, cellGcmSetCursorEnable);
|
||||
cellGcmSys.AddFunc(0x69c6cc82, cellGcmSetCursorDisable);
|
||||
cellGcmSys.AddFunc(0xf9bfdc72, cellGcmSetCursorImageOffset);
|
||||
cellGcmSys.AddFunc(0x1a0de550, cellGcmSetCursorPosition);
|
||||
cellGcmSys.AddFunc(0xbd2fa0a7, cellGcmUpdateCursor);
|
||||
cellGcmSys->AddFunc(0x107bf3a1, cellGcmInitCursor);
|
||||
cellGcmSys->AddFunc(0xc47d0812, cellGcmSetCursorEnable);
|
||||
cellGcmSys->AddFunc(0x69c6cc82, cellGcmSetCursorDisable);
|
||||
cellGcmSys->AddFunc(0xf9bfdc72, cellGcmSetCursorImageOffset);
|
||||
cellGcmSys->AddFunc(0x1a0de550, cellGcmSetCursorPosition);
|
||||
cellGcmSys->AddFunc(0xbd2fa0a7, cellGcmUpdateCursor);
|
||||
|
||||
// Functions for Maintaining Compatibility
|
||||
cellGcmSys.AddFunc(0xbc982946, cellGcmSetDefaultCommandBuffer);
|
||||
//cellGcmSys.AddFunc(, cellGcmGetCurrentBuffer);
|
||||
//cellGcmSys.AddFunc(, cellGcmSetCurrentBuffer);
|
||||
//cellGcmSys.AddFunc(, cellGcmSetDefaultCommandBufferAndSegmentWordSize);
|
||||
//cellGcmSys.AddFunc(, cellGcmSetUserCallback);
|
||||
cellGcmSys->AddFunc(0xbc982946, cellGcmSetDefaultCommandBuffer);
|
||||
//cellGcmSys->AddFunc(, cellGcmGetCurrentBuffer);
|
||||
//cellGcmSys->AddFunc(, cellGcmSetCurrentBuffer);
|
||||
//cellGcmSys->AddFunc(, cellGcmSetDefaultCommandBufferAndSegmentWordSize);
|
||||
//cellGcmSys->AddFunc(, cellGcmSetUserCallback);
|
||||
|
||||
// Other
|
||||
cellGcmSys.AddFunc(0x21397818, cellGcmSetFlipCommand);
|
||||
cellGcmSys.AddFunc(0x3a33c1fd, cellGcmFunc15);
|
||||
cellGcmSys.AddFunc(0xd8f88e1a, cellGcmSetFlipCommandWithWaitLabel);
|
||||
cellGcmSys.AddFunc(0xd0b1d189, cellGcmSetTile);
|
||||
cellGcmSys->AddFunc(0x21397818, cellGcmSetFlipCommand);
|
||||
cellGcmSys->AddFunc(0x3a33c1fd, cellGcmFunc15);
|
||||
cellGcmSys->AddFunc(0xd8f88e1a, cellGcmSetFlipCommandWithWaitLabel);
|
||||
cellGcmSys->AddFunc(0xd0b1d189, cellGcmSetTile);
|
||||
}
|
||||
|
||||
void cellGcmSys_load()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue