From b952017a3aa81b632035ff5380850f059441db00 Mon Sep 17 00:00:00 2001 From: Nekotekina Date: Tue, 2 Sep 2014 05:05:13 +0400 Subject: [PATCH] mem_ptr_t replaced --- rpcs3/Emu/Cell/SPUThread.cpp | 2 +- rpcs3/Emu/Memory/Memory.h | 278 ------------------ rpcs3/Emu/Memory/vm_ptr.h | 5 + rpcs3/Emu/SysCalls/Modules/SC_Keyboard.cpp | 12 +- rpcs3/Emu/SysCalls/Modules/SC_Keyboard.h | 6 +- rpcs3/Emu/SysCalls/Modules/SC_Mouse.cpp | 16 +- rpcs3/Emu/SysCalls/Modules/SC_Mouse.h | 8 +- rpcs3/Emu/SysCalls/Modules/cellAdec.cpp | 26 +- rpcs3/Emu/SysCalls/Modules/cellAtrac.cpp | 92 +++--- rpcs3/Emu/SysCalls/Modules/cellAudio.cpp | 8 +- rpcs3/Emu/SysCalls/Modules/cellDmux.cpp | 138 ++++----- rpcs3/Emu/SysCalls/Modules/cellFiber.cpp | 4 +- rpcs3/Emu/SysCalls/Modules/cellFont.cpp | 92 +++--- rpcs3/Emu/SysCalls/Modules/cellFontFT.cpp | 4 +- rpcs3/Emu/SysCalls/Modules/cellGame.cpp | 16 +- rpcs3/Emu/SysCalls/Modules/cellGcmSys.cpp | 70 ++--- rpcs3/Emu/SysCalls/Modules/cellGcmSys.h | 4 +- rpcs3/Emu/SysCalls/Modules/cellGifDec.cpp | 18 +- rpcs3/Emu/SysCalls/Modules/cellJpgDec.cpp | 18 +- rpcs3/Emu/SysCalls/Modules/cellL10n.cpp | 6 +- rpcs3/Emu/SysCalls/Modules/cellNetCtl.cpp | 16 +- rpcs3/Emu/SysCalls/Modules/cellPamf.cpp | 144 ++++----- rpcs3/Emu/SysCalls/Modules/cellPamf.h | 2 +- rpcs3/Emu/SysCalls/Modules/cellPngDec.cpp | 40 +-- rpcs3/Emu/SysCalls/Modules/cellResc.cpp | 36 +-- rpcs3/Emu/SysCalls/Modules/cellResc.h | 2 +- rpcs3/Emu/SysCalls/Modules/cellRtc.cpp | 118 ++++---- rpcs3/Emu/SysCalls/Modules/cellSpurs.cpp | 164 +++++------ rpcs3/Emu/SysCalls/Modules/cellSpurs.h | 8 +- rpcs3/Emu/SysCalls/Modules/cellSysutil.cpp | 38 +-- .../SysCalls/Modules/cellSysutil_SaveData.cpp | 100 +++---- .../SysCalls/Modules/cellSysutil_SaveData.h | 16 +- rpcs3/Emu/SysCalls/Modules/cellUserInfo.cpp | 8 +- rpcs3/Emu/SysCalls/Modules/cellUserInfo.h | 2 +- rpcs3/Emu/SysCalls/Modules/cellVdec.cpp | 34 +-- rpcs3/Emu/SysCalls/Modules/cellVpost.cpp | 18 +- rpcs3/Emu/SysCalls/Modules/libmixer.cpp | 26 +- rpcs3/Emu/SysCalls/Modules/libsynth2.cpp | 8 +- rpcs3/Emu/SysCalls/Modules/sceNpTrophy.cpp | 16 +- rpcs3/Emu/SysCalls/Modules/sysPrxForUser.cpp | 16 +- rpcs3/Emu/SysCalls/Modules/sys_net.cpp | 36 +-- rpcs3/Emu/SysCalls/lv2/lv2Fs.cpp | 28 +- rpcs3/Emu/SysCalls/lv2/lv2Fs.h | 12 +- rpcs3/Emu/SysCalls/lv2/sys_cond.cpp | 4 +- rpcs3/Emu/SysCalls/lv2/sys_cond.h | 2 +- rpcs3/Emu/SysCalls/lv2/sys_event.cpp | 14 +- rpcs3/Emu/SysCalls/lv2/sys_event.h | 6 +- rpcs3/Emu/SysCalls/lv2/sys_event_flag.cpp | 4 +- rpcs3/Emu/SysCalls/lv2/sys_event_flag.h | 2 +- rpcs3/Emu/SysCalls/lv2/sys_lwcond.cpp | 34 +-- rpcs3/Emu/SysCalls/lv2/sys_lwcond.h | 12 +- rpcs3/Emu/SysCalls/lv2/sys_lwmutex.cpp | 24 +- rpcs3/Emu/SysCalls/lv2/sys_lwmutex.h | 10 +- rpcs3/Emu/SysCalls/lv2/sys_memory.cpp | 12 +- rpcs3/Emu/SysCalls/lv2/sys_memory.h | 6 +- rpcs3/Emu/SysCalls/lv2/sys_mutex.cpp | 4 +- rpcs3/Emu/SysCalls/lv2/sys_mutex.h | 2 +- rpcs3/Emu/SysCalls/lv2/sys_ppu_thread.cpp | 4 +- rpcs3/Emu/SysCalls/lv2/sys_ppu_thread.h | 2 +- rpcs3/Emu/SysCalls/lv2/sys_process.cpp | 26 +- rpcs3/Emu/SysCalls/lv2/sys_prx.cpp | 16 +- rpcs3/Emu/SysCalls/lv2/sys_prx.h | 8 +- rpcs3/Emu/SysCalls/lv2/sys_rwlock.cpp | 4 +- rpcs3/Emu/SysCalls/lv2/sys_rwlock.h | 2 +- rpcs3/Emu/SysCalls/lv2/sys_semaphore.cpp | 4 +- rpcs3/Emu/SysCalls/lv2/sys_semaphore.h | 2 +- rpcs3/Emu/SysCalls/lv2/sys_spinlock.cpp | 18 +- rpcs3/Emu/SysCalls/lv2/sys_spinlock.h | 8 +- rpcs3/Emu/SysCalls/lv2/sys_spu.cpp | 16 +- rpcs3/Emu/SysCalls/lv2/sys_spu.h | 8 +- rpcs3/Emu/SysCalls/lv2/sys_timer.cpp | 4 +- rpcs3/Emu/SysCalls/lv2/sys_timer.h | 2 +- rpcs3/Gui/RSXDebugger.cpp | 4 +- 73 files changed, 833 insertions(+), 1142 deletions(-) diff --git a/rpcs3/Emu/Cell/SPUThread.cpp b/rpcs3/Emu/Cell/SPUThread.cpp index a44f95fdb0..4017366e98 100644 --- a/rpcs3/Emu/Cell/SPUThread.cpp +++ b/rpcs3/Emu/Cell/SPUThread.cpp @@ -282,7 +282,7 @@ void SPUThread::ListCmd(u32 lsa, u64 ea, u16 tag, u16 size, u32 cmd, MFCReg& MFC for (u32 i = 0; i < list_size; i++) { - mem_ptr_t rec((u32)dmac.ls_offset + list_addr + i * 8); + auto rec = vm::ptr::make((u32)dmac.ls_offset + list_addr + i * 8); u32 size = rec->ts; if (size < 16 && size != 1 && size != 2 && size != 4 && size != 8) diff --git a/rpcs3/Emu/Memory/Memory.h b/rpcs3/Emu/Memory/Memory.h index fc1a989a87..b2af476441 100644 --- a/rpcs3/Emu/Memory/Memory.h +++ b/rpcs3/Emu/Memory/Memory.h @@ -408,283 +408,5 @@ public: extern MemoryBase Memory; -template -class mem_base_t -{ -protected: - AT m_addr; - -public: - mem_base_t(AT addr) : m_addr(addr) - { - } - - __forceinline AT GetAddr() const { return m_addr; } - - __forceinline void SetAddr(AT addr) { m_addr = addr; } - - __forceinline bool IsGood() const - { - return Memory.IsGoodAddr(m_addr, sizeof(T)); - } - - __forceinline operator bool() const - { - return m_addr != 0; - } - - __forceinline bool operator != (nullptr_t) const - { - return m_addr != 0; - } - - __forceinline bool operator == (nullptr_t) const - { - return m_addr == 0; - } - - bool operator == (const mem_base_t& right) const { return m_addr == right.m_addr; } - bool operator != (const mem_base_t& right) const { return m_addr != right.m_addr; } - bool operator > (const mem_base_t& right) const { return m_addr > right.m_addr; } - bool operator < (const mem_base_t& right) const { return m_addr < right.m_addr; } - bool operator >= (const mem_base_t& right) const { return m_addr >= right.m_addr; } - bool operator <= (const mem_base_t& right) const { return m_addr <= right.m_addr; } - - bool operator == (T* right) const { return (T*)&Memory[m_addr] == right; } - bool operator != (T* right) const { return (T*)&Memory[m_addr] != right; } - bool operator > (T* right) const { return (T*)&Memory[m_addr] > right; } - bool operator < (T* right) const { return (T*)&Memory[m_addr] < right; } - bool operator >= (T* right) const { return (T*)&Memory[m_addr] >= right; } - bool operator <= (T* right) const { return (T*)&Memory[m_addr] <= right; } -}; - -template -class mem_ptr_t : public mem_base_t -{ -public: - mem_ptr_t(AT addr) : mem_base_t(addr) - { - } - - template operator mem_ptr_t&() { return (mem_ptr_t&)*this; } - template operator const mem_ptr_t&() const { return (const mem_ptr_t&)*this; } - - mem_ptr_t operator++ (int) - { - mem_ptr_t ret(this->m_addr); - this->m_addr += sizeof(AT); - return ret; - } - - mem_ptr_t& operator++ () - { - this->m_addr += sizeof(AT); - return *this; - } - - mem_ptr_t operator-- (int) - { - mem_ptr_t ret(this->m_addr); - this->m_addr -= sizeof(AT); - return ret; - } - - mem_ptr_t& operator-- () - { - this->m_addr -= sizeof(AT); - return *this; - } - - mem_ptr_t& operator += (uint count) - { - this->m_addr += count * sizeof(AT); - return *this; - } - - mem_ptr_t& operator -= (uint count) - { - this->m_addr -= count * sizeof(AT); - return *this; - } - - mem_ptr_t operator + (uint count) const - { - return this->m_addr + count * sizeof(AT); - } - - mem_ptr_t operator - (uint count) const - { - return this->m_addr - count * sizeof(AT); - } - - __forceinline mem_ptr_t& operator *() - { - return (mem_ptr_t&)Memory[this->m_addr]; - } - - __forceinline const mem_ptr_t& operator *() const - { - return (const mem_ptr_t&)Memory[this->m_addr]; - } - - __forceinline mem_ptr_t& operator [](uint index) - { - return (mem_ptr_t&)Memory[this->m_addr + sizeof(AT) * index]; - } - - __forceinline const mem_ptr_t& operator [](uint index) const - { - return (const mem_ptr_t&)Memory[this->m_addr + sizeof(AT) * index]; - } - - bool IsGood() const - { - return (*this)->IsGood() && mem_base_t::IsGood(); - } - - __forceinline bool IsGoodAddr() const - { - return mem_base_t::IsGood(); - } -}; - -template -class mem_ptr_t : public mem_base_t -{ -public: - mem_ptr_t(AT addr) : mem_base_t(addr) - { - } - - template operator mem_ptr_t&() { return (mem_ptr_t&)*this; } - template operator const mem_ptr_t&() const { return (const mem_ptr_t&)*this; } - - __forceinline T* operator -> () - { - return (T*)&Memory[this->m_addr]; - } - - __forceinline const T* operator -> () const - { - return (const T*)&Memory[this->m_addr]; - } - - mem_ptr_t operator++ (int) - { - mem_ptr_t ret(this->m_addr); - this->m_addr += sizeof(T); - return ret; - } - - mem_ptr_t& operator++ () - { - this->m_addr += sizeof(T); - return *this; - } - - mem_ptr_t operator-- (int) - { - mem_ptr_t ret(this->m_addr); - this->m_addr -= sizeof(T); - return ret; - } - - mem_ptr_t& operator-- () - { - this->m_addr -= sizeof(T); - return *this; - } - - mem_ptr_t& operator += (uint count) - { - this->m_addr += count * sizeof(T); - return *this; - } - - mem_ptr_t& operator -= (uint count) - { - this->m_addr -= count * sizeof(T); - return *this; - } - - mem_ptr_t operator + (uint count) const - { - return this->m_addr + count * sizeof(T); - } - - mem_ptr_t operator - (uint count) const - { - return this->m_addr - count * sizeof(T); - } - - __forceinline T& operator *() - { - return (T&)Memory[this->m_addr]; - } - - __forceinline const T& operator *() const - { - return (T&)Memory[this->m_addr]; - } - - __forceinline T& operator [](uint index) - { - return (T&)Memory[this->m_addr + sizeof(T) * index]; - } - - __forceinline const T& operator [](uint index) const - { - return (const T&)Memory[this->m_addr + sizeof(T) * index]; - } -}; - -template -class mem_ptr_t : public mem_base_t -{ -public: - mem_ptr_t(AT addr) : mem_base_t(addr) - { - } - - template operator mem_ptr_t&() { return (mem_ptr_t&)*this; } - template operator const mem_ptr_t&() const { return (const mem_ptr_t&)*this; } -}; - -template class mem_t : public mem_base_t -{ -public: - mem_t(AT addr) : mem_base_t(addr) - { - } - - mem_t& operator = (T right) - { - (be_t&)Memory[this->m_addr] = right; - - return *this; - } - - __forceinline T GetValue() - { - return (be_t&)Memory[this->m_addr]; - } - - operator const T() const - { - return (be_t&)Memory[this->m_addr]; - } - - mem_t& operator += (T right) { return *this = (*this) + right; } - mem_t& operator -= (T right) { return *this = (*this) - right; } - mem_t& operator *= (T right) { return *this = (*this) * right; } - mem_t& operator /= (T right) { return *this = (*this) / right; } - mem_t& operator %= (T right) { return *this = (*this) % right; } - mem_t& operator &= (T right) { return *this = (*this) & right; } - mem_t& operator |= (T right) { return *this = (*this) | right; } - mem_t& operator ^= (T right) { return *this = (*this) ^ right; } - mem_t& operator <<= (T right) { return *this = (*this) << right; } - mem_t& operator >>= (T right) { return *this = (*this) >> right; } -}; - #include "vm.h" diff --git a/rpcs3/Emu/Memory/vm_ptr.h b/rpcs3/Emu/Memory/vm_ptr.h index b62d78f61d..b13675b55f 100644 --- a/rpcs3/Emu/Memory/vm_ptr.h +++ b/rpcs3/Emu/Memory/vm_ptr.h @@ -448,6 +448,11 @@ namespace vm return (bptr&)addr; } + operator ptr() const + { + return ptr::make(addr()); + } + using bptrb::operator=; }; } diff --git a/rpcs3/Emu/SysCalls/Modules/SC_Keyboard.cpp b/rpcs3/Emu/SysCalls/Modules/SC_Keyboard.cpp index d93739c596..e605b8cda0 100644 --- a/rpcs3/Emu/SysCalls/Modules/SC_Keyboard.cpp +++ b/rpcs3/Emu/SysCalls/Modules/SC_Keyboard.cpp @@ -85,9 +85,9 @@ u16 cellKbCnvRawCode(u32 arrange, u32 mkey, u32 led, u16 rawcode) return 0x0000; } -int cellKbGetInfo(mem_ptr_t info) +int cellKbGetInfo(vm::ptr info) { - sys_io->Log("cellKbGetInfo(info_addr=0x%x)", info.GetAddr()); + sys_io->Log("cellKbGetInfo(info_addr=0x%x)", info.addr()); if(!Emu.GetKeyboardManager().IsInited()) return CELL_KB_ERROR_UNINITIALIZED; const KbInfo& current_info = Emu.GetKeyboardManager().GetInfo(); @@ -102,9 +102,9 @@ int cellKbGetInfo(mem_ptr_t info) return CELL_OK; } -int cellKbRead(u32 port_no, mem_ptr_t data) +int cellKbRead(u32 port_no, vm::ptr data) { - sys_io->Log("cellKbRead(port_no=%d,info_addr=0x%x)", port_no, data.GetAddr()); + sys_io->Log("cellKbRead(port_no=%d,info_addr=0x%x)", port_no, data.addr()); const std::vector& keyboards = Emu.GetKeyboardManager().GetKeyboards(); if(!Emu.GetKeyboardManager().IsInited()) return CELL_KB_ERROR_UNINITIALIZED; @@ -151,9 +151,9 @@ int cellKbSetReadMode(u32 port_no, u32 rmode) return CELL_OK; } -int cellKbGetConfiguration(u32 port_no, mem_ptr_t config) +int cellKbGetConfiguration(u32 port_no, vm::ptr config) { - sys_io->Log("cellKbGetConfiguration(port_no=%d,config_addr=0x%x)", port_no, config.GetAddr()); + sys_io->Log("cellKbGetConfiguration(port_no=%d,config_addr=0x%x)", port_no, config.addr()); if(!Emu.GetKeyboardManager().IsInited()) return CELL_KB_ERROR_UNINITIALIZED; const KbConfig& current_config = Emu.GetKeyboardManager().GetConfig(port_no); diff --git a/rpcs3/Emu/SysCalls/Modules/SC_Keyboard.h b/rpcs3/Emu/SysCalls/Modules/SC_Keyboard.h index ca77078e17..af23ce6226 100644 --- a/rpcs3/Emu/SysCalls/Modules/SC_Keyboard.h +++ b/rpcs3/Emu/SysCalls/Modules/SC_Keyboard.h @@ -43,9 +43,9 @@ int cellKbInit(u32 max_connect); int cellKbEnd(); int cellKbClearBuf(u32 port_no); u16 cellKbCnvRawCode(u32 arrange, u32 mkey, u32 led, u16 rawcode); -int cellKbGetInfo(mem_ptr_t info); -int cellKbRead(u32 port_no, mem_ptr_t data); +int cellKbGetInfo(vm::ptr info); +int cellKbRead(u32 port_no, vm::ptr data); int cellKbSetCodeType(u32 port_no, u32 type); int cellKbSetLEDStatus(u32 port_no, u8 led); int cellKbSetReadMode(u32 port_no, u32 rmode); -int cellKbGetConfiguration(u32 port_no, mem_ptr_t config); \ No newline at end of file +int cellKbGetConfiguration(u32 port_no, vm::ptr config); diff --git a/rpcs3/Emu/SysCalls/Modules/SC_Mouse.cpp b/rpcs3/Emu/SysCalls/Modules/SC_Mouse.cpp index 210bcbbb94..b2ddbf63a6 100644 --- a/rpcs3/Emu/SysCalls/Modules/SC_Mouse.cpp +++ b/rpcs3/Emu/SysCalls/Modules/SC_Mouse.cpp @@ -38,9 +38,9 @@ int cellMouseEnd() return CELL_OK; } -int cellMouseGetInfo(mem_ptr_t info) +int cellMouseGetInfo(vm::ptr info) { - sys_io->Log("cellMouseGetInfo(info_addr=0x%x)", info.GetAddr()); + sys_io->Log("cellMouseGetInfo(info_addr=0x%x)", info.addr()); if(!Emu.GetMouseManager().IsInited()) return CELL_MOUSE_ERROR_UNINITIALIZED; const MouseInfo& current_info = Emu.GetMouseManager().GetInfo(); @@ -54,9 +54,9 @@ int cellMouseGetInfo(mem_ptr_t info) return CELL_OK; } -int cellMouseInfoTabletMode(u32 port_no, mem_ptr_t info) +int cellMouseInfoTabletMode(u32 port_no, vm::ptr info) { - sys_io->Log("cellMouseInfoTabletMode(port_no=%d,info_addr=0x%x)", port_no, info.GetAddr()); + sys_io->Log("cellMouseInfoTabletMode(port_no=%d,info_addr=0x%x)", port_no, info.addr()); if(!Emu.GetMouseManager().IsInited()) return CELL_MOUSE_ERROR_UNINITIALIZED; if(port_no >= Emu.GetMouseManager().GetMice().size()) return CELL_MOUSE_ERROR_INVALID_PARAMETER; @@ -66,9 +66,9 @@ int cellMouseInfoTabletMode(u32 port_no, mem_ptr_t info) return CELL_OK; } -int cellMouseGetData(u32 port_no, mem_ptr_t data) +int cellMouseGetData(u32 port_no, vm::ptr data) { - sys_io->Log("cellMouseGetData(port_no=%d,data_addr=0x%x)", port_no, data.GetAddr()); + sys_io->Log("cellMouseGetData(port_no=%d,data_addr=0x%x)", port_no, data.addr()); if(!Emu.GetMouseManager().IsInited()) return CELL_MOUSE_ERROR_UNINITIALIZED; if(port_no >= Emu.GetMouseManager().GetMice().size()) return CELL_MOUSE_ERROR_NO_DEVICE; @@ -88,7 +88,7 @@ int cellMouseGetData(u32 port_no, mem_ptr_t data) return CELL_OK; } -int cellMouseGetDataList(u32 port_no, mem_ptr_t data) +int cellMouseGetDataList(u32 port_no, vm::ptr data) { UNIMPLEMENTED_FUNC(sys_io); @@ -113,7 +113,7 @@ int cellMouseGetRawData(u32 port_no, u32 data_addr) { UNIMPLEMENTED_FUNC(sys_io); - /*sys_io->Log("cellMouseGetRawData(port_no=%d,data_addr=0x%x)", port_no, data.GetAddr()); + /*sys_io->Log("cellMouseGetRawData(port_no=%d,data_addr=0x%x)", port_no, data.addr()); if(!Emu.GetMouseManager().IsInited()) return CELL_MOUSE_ERROR_UNINITIALIZED; if(port_no >= Emu.GetMouseManager().GetMice().size()) return CELL_MOUSE_ERROR_NO_DEVICE; diff --git a/rpcs3/Emu/SysCalls/Modules/SC_Mouse.h b/rpcs3/Emu/SysCalls/Modules/SC_Mouse.h index 02915c7ab3..123de6076e 100644 --- a/rpcs3/Emu/SysCalls/Modules/SC_Mouse.h +++ b/rpcs3/Emu/SysCalls/Modules/SC_Mouse.h @@ -53,10 +53,10 @@ static const u32 CELL_MOUSE_MAX_CODES = 64; int cellMouseInit(u32 max_connect); int cellMouseClearBuf(u32 port_no); int cellMouseEnd(); -int cellMouseGetInfo(mem_ptr_t info); -int cellMouseInfoTabletMode(u32 port_no, mem_ptr_t info); -int cellMouseGetData(u32 port_no, mem_ptr_t data); -int cellMouseGetDataList(u32 port_no, mem_ptr_t data); +int cellMouseGetInfo(vm::ptr info); +int cellMouseInfoTabletMode(u32 port_no, vm::ptr info); +int cellMouseGetData(u32 port_no, vm::ptr data); +int cellMouseGetDataList(u32 port_no, vm::ptr data); int cellMouseSetTabletMode(u32 port_no, u32 mode); int cellMouseGetTabletDataList(u32 port_no, u32 data_addr); int cellMouseGetRawData(u32 port_no, u32 data_addr); diff --git a/rpcs3/Emu/SysCalls/Modules/cellAdec.cpp b/rpcs3/Emu/SysCalls/Modules/cellAdec.cpp index 7bc8d42a23..0c288d07ae 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellAdec.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellAdec.cpp @@ -600,9 +600,9 @@ bool adecCheckType(AudioCodecType type) return true; } -int cellAdecQueryAttr(mem_ptr_t type, mem_ptr_t attr) +int cellAdecQueryAttr(vm::ptr type, vm::ptr attr) { - cellAdec->Warning("cellAdecQueryAttr(type_addr=0x%x, attr_addr=0x%x)", type.GetAddr(), attr.GetAddr()); + cellAdec->Warning("cellAdecQueryAttr(type_addr=0x%x, attr_addr=0x%x)", type.addr(), attr.addr()); if (!adecCheckType(type->audioCodecType)) return CELL_ADEC_ERROR_ARG; @@ -614,10 +614,10 @@ int cellAdecQueryAttr(mem_ptr_t type, mem_ptr_t attr return CELL_OK; } -int cellAdecOpen(mem_ptr_t type, mem_ptr_t res, mem_ptr_t cb, vm::ptr> handle) +int cellAdecOpen(vm::ptr type, vm::ptr res, vm::ptr cb, vm::ptr> handle) { cellAdec->Warning("cellAdecOpen(type_addr=0x%x, res_addr=0x%x, cb_addr=0x%x, handle_addr=0x%x)", - type.GetAddr(), res.GetAddr(), cb.GetAddr(), handle.addr()); + type.addr(), res.addr(), cb.addr(), handle.addr()); if (!adecCheckType(type->audioCodecType)) return CELL_ADEC_ERROR_ARG; @@ -626,10 +626,10 @@ int cellAdecOpen(mem_ptr_t type, mem_ptr_t res, return CELL_OK; } -int cellAdecOpenEx(mem_ptr_t type, mem_ptr_t res, mem_ptr_t cb, vm::ptr> handle) +int cellAdecOpenEx(vm::ptr type, vm::ptr res, vm::ptr cb, vm::ptr> handle) { cellAdec->Warning("cellAdecOpenEx(type_addr=0x%x, res_addr=0x%x, cb_addr=0x%x, handle_addr=0x%x)", - type.GetAddr(), res.GetAddr(), cb.GetAddr(), handle.addr()); + type.addr(), res.addr(), cb.addr(), handle.addr()); if (!adecCheckType(type->audioCodecType)) return CELL_ADEC_ERROR_ARG; @@ -703,9 +703,9 @@ int cellAdecEndSeq(u32 handle) return CELL_OK; } -int cellAdecDecodeAu(u32 handle, mem_ptr_t auInfo) +int cellAdecDecodeAu(u32 handle, vm::ptr auInfo) { - cellAdec->Log("cellAdecDecodeAu(handle=%d, auInfo_addr=0x%x)", handle, auInfo.GetAddr()); + cellAdec->Log("cellAdecDecodeAu(handle=%d, auInfo_addr=0x%x)", handle, auInfo.addr()); AudioDecoder* adec; if (!Emu.GetIdManager().GetIDData(handle, adec)) @@ -714,7 +714,7 @@ int cellAdecDecodeAu(u32 handle, mem_ptr_t auInfo) } AdecTask task(adecDecodeAu); - task.au.auInfo_addr = auInfo.GetAddr(); + task.au.auInfo_addr = auInfo.addr(); task.au.addr = auInfo->startAddr; task.au.size = auInfo->size; task.au.pts = ((u64)auInfo->pts.upper << 32) | (u64)auInfo->pts.lower; @@ -787,7 +787,7 @@ int cellAdecGetPcmItem(u32 handle, vm::ptr> pcmItem_ptr) AVFrame* frame = af.data; - mem_ptr_t pcm(adec->memAddr + adec->memBias); + auto pcm = vm::ptr::make(adec->memAddr + adec->memBias); adec->memBias += 512; if (adec->memBias + 512 > adec->memSize) @@ -796,7 +796,7 @@ int cellAdecGetPcmItem(u32 handle, vm::ptr> pcmItem_ptr) } pcm->pcmHandle = 0; // ??? - pcm->pcmAttr.bsiInfo_addr = pcm.GetAddr() + sizeof(CellAdecPcmItem); + pcm->pcmAttr.bsiInfo_addr = pcm.addr() + sizeof(CellAdecPcmItem); pcm->startAddr = 0x00000312; // invalid address (no output) pcm->size = af.size; pcm->status = CELL_OK; @@ -806,12 +806,12 @@ int cellAdecGetPcmItem(u32 handle, vm::ptr> pcmItem_ptr) pcm->auInfo.startAddr = af.auAddr; pcm->auInfo.userData = af.userdata; - mem_ptr_t atx(pcm.GetAddr() + sizeof(CellAdecPcmItem)); + auto atx = vm::ptr::make(pcm.addr() + sizeof(CellAdecPcmItem)); atx->samplingFreq = frame->sample_rate; // ??? atx->nbytes = frame->nb_samples * frame->channels * sizeof(float); // ??? atx->channelConfigIndex = CELL_ADEC_CH_STEREO; // ??? - *pcmItem_ptr = pcm.GetAddr(); + *pcmItem_ptr = pcm.addr(); return CELL_OK; } diff --git a/rpcs3/Emu/SysCalls/Modules/cellAtrac.cpp b/rpcs3/Emu/SysCalls/Modules/cellAtrac.cpp index 5346e740f1..14227915a2 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellAtrac.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellAtrac.cpp @@ -6,43 +6,43 @@ Module *cellAtrac = nullptr; #include "cellAtrac.h" -int cellAtracSetDataAndGetMemSize(mem_ptr_t pHandle, u32 pucBufferAddr, u32 uiReadByte, u32 uiBufferByte, vm::ptr> puiWorkMemByte) +int cellAtracSetDataAndGetMemSize(vm::ptr pHandle, u32 pucBufferAddr, u32 uiReadByte, u32 uiBufferByte, vm::ptr> puiWorkMemByte) { cellAtrac->Todo("cellAtracSetDataAndGetMemSize(pHandle=0x%x, pucBufferAddr=0x%x, uiReadByte=0x%x, uiBufferByte=0x%x, puiWorkMemByte_addr=0x%x)", - pHandle.GetAddr(), pucBufferAddr, uiReadByte, uiBufferByte, puiWorkMemByte.addr()); + pHandle.addr(), pucBufferAddr, uiReadByte, uiBufferByte, puiWorkMemByte.addr()); *puiWorkMemByte = 0x1000; // unproved return CELL_OK; } -int cellAtracCreateDecoder(mem_ptr_t pHandle, u32 pucWorkMem_addr, u32 uiPpuThreadPriority, u32 uiSpuThreadPriority) +int cellAtracCreateDecoder(vm::ptr pHandle, u32 pucWorkMem_addr, u32 uiPpuThreadPriority, u32 uiSpuThreadPriority) { cellAtrac->Todo("cellAtracCreateDecoder(pHandle=0x%x, pucWorkMem_addr=0x%x, uiPpuThreadPriority=%d, uiSpuThreadPriority=%d)", - pHandle.GetAddr(), pucWorkMem_addr, uiPpuThreadPriority, uiSpuThreadPriority); + pHandle.addr(), pucWorkMem_addr, uiPpuThreadPriority, uiSpuThreadPriority); pHandle->data.pucWorkMem_addr = pucWorkMem_addr; return CELL_OK; } -int cellAtracCreateDecoderExt(mem_ptr_t pHandle, u32 pucWorkMem_addr, u32 uiPpuThreadPriority, mem_ptr_t pExtRes) +int cellAtracCreateDecoderExt(vm::ptr pHandle, u32 pucWorkMem_addr, u32 uiPpuThreadPriority, vm::ptr pExtRes) { cellAtrac->Todo("cellAtracCreateDecoderExt(pHandle=0x%x, pucWorkMem_addr=0x%x, uiPpuThreadPriority=%d, pExtRes_addr=0x%x)", - pHandle.GetAddr(), pucWorkMem_addr, uiPpuThreadPriority, pExtRes.GetAddr()); + pHandle.addr(), pucWorkMem_addr, uiPpuThreadPriority, pExtRes.addr()); pHandle->data.pucWorkMem_addr = pucWorkMem_addr; return CELL_OK; } -int cellAtracDeleteDecoder(mem_ptr_t pHandle) +int cellAtracDeleteDecoder(vm::ptr pHandle) { - cellAtrac->Todo("cellAtracDeleteDecoder(pHandle=0x%x)", pHandle.GetAddr()); + cellAtrac->Todo("cellAtracDeleteDecoder(pHandle=0x%x)", pHandle.addr()); return CELL_OK; } -int cellAtracDecode(mem_ptr_t pHandle, u32 pfOutAddr, vm::ptr> puiSamples, vm::ptr> puiFinishflag, vm::ptr> piRemainFrame) +int cellAtracDecode(vm::ptr pHandle, u32 pfOutAddr, vm::ptr> puiSamples, vm::ptr> puiFinishflag, vm::ptr> piRemainFrame) { cellAtrac->Todo("cellAtracDecode(pHandle=0x%x, pfOutAddr=0x%x, puiSamples_addr=0x%x, puiFinishFlag_addr=0x%x, piRemainFrame_addr=0x%x)", - pHandle.GetAddr(), pfOutAddr, puiSamples.addr(), puiFinishflag.addr(), piRemainFrame.addr()); + pHandle.addr(), pfOutAddr, puiSamples.addr(), puiFinishflag.addr(), piRemainFrame.addr()); *puiSamples = 0; *puiFinishflag = 1; @@ -50,10 +50,10 @@ int cellAtracDecode(mem_ptr_t pHandle, u32 pfOutAddr, vm::ptr pHandle, vm::ptr> ppucWritePointer, vm::ptr> puiWritableByte, vm::ptr> puiReadPosition) +int cellAtracGetStreamDataInfo(vm::ptr pHandle, vm::ptr> ppucWritePointer, vm::ptr> puiWritableByte, vm::ptr> puiReadPosition) { cellAtrac->Todo("cellAtracGetStreamDataInfo(pHandle=0x%x, ppucWritePointer_addr=0x%x, puiWritableByte_addr=0x%x, puiReadPosition_addr=0x%x)", - pHandle.GetAddr(), ppucWritePointer.addr(), puiWritableByte.addr(), puiReadPosition.addr()); + pHandle.addr(), ppucWritePointer.addr(), puiWritableByte.addr(), puiReadPosition.addr()); *ppucWritePointer = pHandle->data.pucWorkMem_addr; *puiWritableByte = 0x1000; @@ -61,79 +61,79 @@ int cellAtracGetStreamDataInfo(mem_ptr_t pHandle, vm::ptr pHandle, u32 uiAddByte) +int cellAtracAddStreamData(vm::ptr pHandle, u32 uiAddByte) { - cellAtrac->Todo("cellAtracAddStreamData(pHandle=0x%x, uiAddByte=0x%x)", pHandle.GetAddr(), uiAddByte); + cellAtrac->Todo("cellAtracAddStreamData(pHandle=0x%x, uiAddByte=0x%x)", pHandle.addr(), uiAddByte); return CELL_OK; } -int cellAtracGetRemainFrame(mem_ptr_t pHandle, vm::ptr> piRemainFrame) +int cellAtracGetRemainFrame(vm::ptr pHandle, vm::ptr> piRemainFrame) { - cellAtrac->Todo("cellAtracGetRemainFrame(pHandle=0x%x, piRemainFrame_addr=0x%x)", pHandle.GetAddr(), piRemainFrame.addr()); + cellAtrac->Todo("cellAtracGetRemainFrame(pHandle=0x%x, piRemainFrame_addr=0x%x)", pHandle.addr(), piRemainFrame.addr()); *piRemainFrame = CELL_ATRAC_ALLDATA_IS_ON_MEMORY; return CELL_OK; } -int cellAtracGetVacantSize(mem_ptr_t pHandle, vm::ptr> puiVacantSize) +int cellAtracGetVacantSize(vm::ptr pHandle, vm::ptr> puiVacantSize) { - cellAtrac->Todo("cellAtracGetVacantSize(pHandle=0x%x, puiVacantSize_addr=0x%x)", pHandle.GetAddr(), puiVacantSize.addr()); + cellAtrac->Todo("cellAtracGetVacantSize(pHandle=0x%x, puiVacantSize_addr=0x%x)", pHandle.addr(), puiVacantSize.addr()); *puiVacantSize = 0x1000; return CELL_OK; } -int cellAtracIsSecondBufferNeeded(mem_ptr_t pHandle) +int cellAtracIsSecondBufferNeeded(vm::ptr pHandle) { - cellAtrac->Todo("cellAtracIsSecondBufferNeeded(pHandle=0x%x)", pHandle.GetAddr()); + cellAtrac->Todo("cellAtracIsSecondBufferNeeded(pHandle=0x%x)", pHandle.addr()); return CELL_OK; } -int cellAtracGetSecondBufferInfo(mem_ptr_t pHandle, vm::ptr> puiReadPosition, vm::ptr> puiDataByte) +int cellAtracGetSecondBufferInfo(vm::ptr pHandle, vm::ptr> puiReadPosition, vm::ptr> puiDataByte) { cellAtrac->Todo("cellAtracGetSecondBufferInfo(pHandle=0x%x, puiReadPosition_addr=0x%x, puiDataByte_addr=0x%x)", - pHandle.GetAddr(), puiReadPosition.addr(), puiDataByte.addr()); + pHandle.addr(), puiReadPosition.addr(), puiDataByte.addr()); *puiReadPosition = 0; *puiDataByte = 0; // write to null block will occur return CELL_OK; } -int cellAtracSetSecondBuffer(mem_ptr_t pHandle, u32 pucSecondBufferAddr, u32 uiSecondBufferByte) +int cellAtracSetSecondBuffer(vm::ptr pHandle, u32 pucSecondBufferAddr, u32 uiSecondBufferByte) { cellAtrac->Todo("cellAtracSetSecondBuffer(pHandle=0x%x, pucSecondBufferAddr=0x%x, uiSecondBufferByte=0x%x)", - pHandle.GetAddr(), pucSecondBufferAddr, uiSecondBufferByte); + pHandle.addr(), pucSecondBufferAddr, uiSecondBufferByte); return CELL_OK; } -int cellAtracGetChannel(mem_ptr_t pHandle, vm::ptr> puiChannel) +int cellAtracGetChannel(vm::ptr pHandle, vm::ptr> puiChannel) { - cellAtrac->Todo("cellAtracGetChannel(pHandle=0x%x, puiChannel_addr=0x%x)", pHandle.GetAddr(), puiChannel.addr()); + cellAtrac->Todo("cellAtracGetChannel(pHandle=0x%x, puiChannel_addr=0x%x)", pHandle.addr(), puiChannel.addr()); *puiChannel = 2; return CELL_OK; } -int cellAtracGetMaxSample(mem_ptr_t pHandle, vm::ptr> puiMaxSample) +int cellAtracGetMaxSample(vm::ptr pHandle, vm::ptr> puiMaxSample) { - cellAtrac->Todo("cellAtracGetMaxSample(pHandle=0x%x, puiMaxSample_addr=0x%x)", pHandle.GetAddr(), puiMaxSample.addr()); + cellAtrac->Todo("cellAtracGetMaxSample(pHandle=0x%x, puiMaxSample_addr=0x%x)", pHandle.addr(), puiMaxSample.addr()); *puiMaxSample = 512; return CELL_OK; } -int cellAtracGetNextSample(mem_ptr_t pHandle, vm::ptr> puiNextSample) +int cellAtracGetNextSample(vm::ptr pHandle, vm::ptr> puiNextSample) { - cellAtrac->Todo("cellAtracGetNextSample(pHandle=0x%x, puiNextSample_addr=0x%x)", pHandle.GetAddr(), puiNextSample.addr()); + cellAtrac->Todo("cellAtracGetNextSample(pHandle=0x%x, puiNextSample_addr=0x%x)", pHandle.addr(), puiNextSample.addr()); *puiNextSample = 0; return CELL_OK; } -int cellAtracGetSoundInfo(mem_ptr_t pHandle, vm::ptr> piEndSample, vm::ptr> piLoopStartSample, vm::ptr> piLoopEndSample) +int cellAtracGetSoundInfo(vm::ptr pHandle, vm::ptr> piEndSample, vm::ptr> piLoopStartSample, vm::ptr> piLoopEndSample) { cellAtrac->Todo("cellAtracGetSoundInfo(pHandle=0x%x, piEndSample_addr=0x%x, piLoopStartSample_addr=0x%x, piLoopEndSample_addr=0x%x)", - pHandle.GetAddr(), piEndSample.addr(), piLoopStartSample.addr(), piLoopEndSample.addr()); + pHandle.addr(), piEndSample.addr(), piLoopStartSample.addr(), piLoopEndSample.addr()); *piEndSample = 0; *piLoopStartSample = 0; @@ -141,44 +141,44 @@ int cellAtracGetSoundInfo(mem_ptr_t pHandle, vm::ptr> return CELL_OK; } -int cellAtracGetNextDecodePosition(mem_ptr_t pHandle, vm::ptr> puiSamplePosition) +int cellAtracGetNextDecodePosition(vm::ptr pHandle, vm::ptr> puiSamplePosition) { cellAtrac->Todo("cellAtracGetNextDecodePosition(pHandle=0x%x, puiSamplePosition_addr=0x%x)", - pHandle.GetAddr(), puiSamplePosition.addr()); + pHandle.addr(), puiSamplePosition.addr()); *puiSamplePosition = 0; return CELL_ATRAC_ERROR_ALLDATA_WAS_DECODED; } -int cellAtracGetBitrate(mem_ptr_t pHandle, vm::ptr> puiBitrate) +int cellAtracGetBitrate(vm::ptr pHandle, vm::ptr> puiBitrate) { cellAtrac->Todo("cellAtracGetBitrate(pHandle=0x%x, puiBitrate_addr=0x%x)", - pHandle.GetAddr(), puiBitrate.addr()); + pHandle.addr(), puiBitrate.addr()); *puiBitrate = 128; return CELL_OK; } -int cellAtracGetLoopInfo(mem_ptr_t pHandle, vm::ptr> piLoopNum, vm::ptr> puiLoopStatus) +int cellAtracGetLoopInfo(vm::ptr pHandle, vm::ptr> piLoopNum, vm::ptr> puiLoopStatus) { cellAtrac->Todo("cellAtracGetLoopInfo(pHandle=0x%x, piLoopNum_addr=0x%x, puiLoopStatus_addr=0x%x)", - pHandle.GetAddr(), piLoopNum.addr(), puiLoopStatus.addr()); + pHandle.addr(), piLoopNum.addr(), puiLoopStatus.addr()); *piLoopNum = 0; *puiLoopStatus = 0; return CELL_OK; } -int cellAtracSetLoopNum(mem_ptr_t pHandle, int iLoopNum) +int cellAtracSetLoopNum(vm::ptr pHandle, int iLoopNum) { - cellAtrac->Todo("cellAtracSetLoopNum(pHandle=0x%x, iLoopNum=0x%x)", pHandle.GetAddr(), iLoopNum); + cellAtrac->Todo("cellAtracSetLoopNum(pHandle=0x%x, iLoopNum=0x%x)", pHandle.addr(), iLoopNum); return CELL_OK; } -int cellAtracGetBufferInfoForResetting(mem_ptr_t pHandle, u32 uiSample, mem_ptr_t pBufferInfo) +int cellAtracGetBufferInfoForResetting(vm::ptr pHandle, u32 uiSample, vm::ptr pBufferInfo) { cellAtrac->Todo("cellAtracGetBufferInfoForResetting(pHandle=0x%x, uiSample=0x%x, pBufferInfo_addr=0x%x)", - pHandle.GetAddr(), uiSample, pBufferInfo.GetAddr()); + pHandle.addr(), uiSample, pBufferInfo.addr()); pBufferInfo->pucWriteAddr = pHandle->data.pucWorkMem_addr; pBufferInfo->uiWritableByte = 0x1000; @@ -187,17 +187,17 @@ int cellAtracGetBufferInfoForResetting(mem_ptr_t pHandle, u32 u return CELL_OK; } -int cellAtracResetPlayPosition(mem_ptr_t pHandle, u32 uiSample, u32 uiWriteByte) +int cellAtracResetPlayPosition(vm::ptr pHandle, u32 uiSample, u32 uiWriteByte) { cellAtrac->Todo("cellAtracResetPlayPosition(pHandle=0x%x, uiSample=0x%x, uiWriteByte=0x%x)", - pHandle.GetAddr(), uiSample, uiWriteByte); + pHandle.addr(), uiSample, uiWriteByte); return CELL_OK; } -int cellAtracGetInternalErrorInfo(mem_ptr_t pHandle, vm::ptr> piResult) +int cellAtracGetInternalErrorInfo(vm::ptr pHandle, vm::ptr> piResult) { cellAtrac->Todo("cellAtracGetInternalErrorInfo(pHandle=0x%x, piResult_addr=0x%x)", - pHandle.GetAddr(), piResult.addr()); + pHandle.addr(), piResult.addr()); *piResult = 0; return CELL_OK; diff --git a/rpcs3/Emu/SysCalls/Modules/cellAudio.cpp b/rpcs3/Emu/SysCalls/Modules/cellAudio.cpp index 5bc9dd349f..2f873ea426 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellAudio.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellAudio.cpp @@ -507,9 +507,9 @@ int cellAudioQuit() return CELL_OK; } -int cellAudioPortOpen(mem_ptr_t audioParam, vm::ptr> portNum) +int cellAudioPortOpen(vm::ptr audioParam, vm::ptr> portNum) { - cellAudio->Warning("cellAudioPortOpen(audioParam_addr=0x%x, portNum_addr=0x%x)", audioParam.GetAddr(), portNum.addr()); + cellAudio->Warning("cellAudioPortOpen(audioParam_addr=0x%x, portNum_addr=0x%x)", audioParam.addr(), portNum.addr()); if (audioParam->nChannel > 8 || audioParam->nBlock > 16) { @@ -555,9 +555,9 @@ int cellAudioPortOpen(mem_ptr_t audioParam, vm::ptr portConfig) +int cellAudioGetPortConfig(u32 portNum, vm::ptr portConfig) { - cellAudio->Warning("cellAudioGetPortConfig(portNum=0x%x, portConfig_addr=0x%x)", portNum, portConfig.GetAddr()); + cellAudio->Warning("cellAudioGetPortConfig(portNum=0x%x, portConfig_addr=0x%x)", portNum, portConfig.addr()); if (portNum >= m_config.AUDIO_PORT_COUNT) { diff --git a/rpcs3/Emu/SysCalls/Modules/cellDmux.cpp b/rpcs3/Emu/SysCalls/Modules/cellDmux.cpp index 1e8c5a5f78..46761b0dc5 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellDmux.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellDmux.cpp @@ -114,7 +114,7 @@ bool ElementaryStream::isfull() return is_full(); } -void ElementaryStream::finish(DemuxerStream& stream) // not multithread-safe +void ElementaryStream::finish(DemuxerStream& stream) // not multithread-safe (or safe?) { u32 addr; { @@ -122,16 +122,8 @@ void ElementaryStream::finish(DemuxerStream& stream) // not multithread-safe //if (fidMajor != 0xbd) LOG_NOTICE(HLE, ">>> es::finish(): peek=0x%x, first=0x%x, put=0x%x, size=0x%x", peek, first, put, size); addr = put; - /*if (!first) - { - first = put; - } - if (!peek) - { - peek = put; - }*/ - mem_ptr_t info(put); + auto info = vm::ptr::make(put); //if (fidMajor != 0xbd) LOG_WARNING(HLE, "es::finish(): (%s) size = 0x%x, info_addr=0x%x, pts = 0x%x", //wxString(fidMajor == 0xbd ? "ATRAC3P Audio" : "Video AVC").wx_str(), //(u32)info->auSize, put, (u32)info->ptsLower); @@ -167,7 +159,7 @@ void ElementaryStream::push(DemuxerStream& stream, u32 sz, PesHeader& pes) memcpy(Memory + data_addr, Memory + stream.addr, sz); stream.skip(sz); - mem_ptr_t info(put); + auto info = vm::ptr::make(put); info->auAddr = put + 128; info->auSize = size; if (pes.new_au) @@ -181,10 +173,10 @@ void ElementaryStream::push(DemuxerStream& stream, u32 sz, PesHeader& pes) info->userData = stream.userdata; } - mem_ptr_t tail(put + sizeof(CellDmuxAuInfoEx)); + auto tail = vm::ptr::make(put + sizeof(CellDmuxAuInfoEx)); tail->reserved1 = 0; - mem_ptr_t inf(put + 64); + auto inf = vm::ptr::make(put + 64); inf->auAddr = put + 128; inf->auSize = size; if (pes.new_au) @@ -210,7 +202,7 @@ bool ElementaryStream::release() u32 addr = entries.Peek(); - mem_ptr_t info(addr); + auto info = vm::ptr::make(addr); //if (fidMajor != 0xbd) LOG_WARNING(HLE, "es::release(): (%s) size = 0x%x, info = 0x%x, pts = 0x%x", //wxString(fidMajor == 0xbd ? "ATRAC3P Audio" : "Video AVC").wx_str(), (u32)info->auSize, first, (u32)info->ptsLower); @@ -220,21 +212,6 @@ bool ElementaryStream::release() return false; } - /*u32 new_addr = a128(info.GetAddr() + 128 + info->auSize); - - if (new_addr == put) - { - first = 0; - } - else if ((new_addr + GetMaxAU()) > (memAddr + memSize)) - { - first = memAddr; - } - else - { - first = new_addr; - }*/ - released++; if (!entries.Pop(addr)) { @@ -260,7 +237,7 @@ bool ElementaryStream::peek(u32& out_data, bool no_ex, u32& out_spec, bool updat } u32 addr = entries.Peek(peek_count - released); - mem_ptr_t info(addr); + auto info = vm::ptr::make(addr); //if (fidMajor != 0xbd) LOG_WARNING(HLE, "es::peek(%sAu(Ex)): (%s) size = 0x%x, info = 0x%x, pts = 0x%x", //wxString(update_index ? "Get" : "Peek").wx_str(), //wxString(fidMajor == 0xbd ? "ATRAC3P Audio" : "Video AVC").wx_str(), (u32)info->auSize, peek, (u32)info->ptsLower); @@ -271,19 +248,6 @@ bool ElementaryStream::peek(u32& out_data, bool no_ex, u32& out_spec, bool updat if (update_index) { - /*u32 new_addr = a128(peek + 128 + info->auSize); - if (new_addr == put) - { - peek = 0; - } - else if ((new_addr + GetMaxAU()) > (memAddr + memSize)) - { - peek = memAddr; - } - else - { - peek = new_addr; - }*/ peek_count++; } @@ -305,15 +269,15 @@ void ElementaryStream::reset() peek_count = 0; } -void dmuxQueryAttr(u32 info_addr /* may be 0 */, mem_ptr_t attr) +void dmuxQueryAttr(u32 info_addr /* may be 0 */, vm::ptr attr) { attr->demuxerVerLower = 0x280000; // TODO: check values attr->demuxerVerUpper = 0x260000; attr->memSize = 0x10000; // 0x3e8e6 from ps3 } -void dmuxQueryEsAttr(u32 info_addr /* may be 0 */, const mem_ptr_t esFilterId, - const u32 esSpecificInfo_addr, mem_ptr_t attr) +void dmuxQueryEsAttr(u32 info_addr /* may be 0 */, const vm::ptr esFilterId, + const u32 esSpecificInfo_addr, vm::ptr attr) { if (esFilterId->filterIdMajor >= 0xe0) attr->memSize = 0x500000; // 0x45fa49 from ps3 @@ -373,14 +337,14 @@ u32 dmuxOpen(Demuxer* data) { dmux.is_running = false; // demuxing finished - mem_ptr_t dmuxMsg(a128(dmux.memAddr) + (cb_add ^= 16)); + auto dmuxMsg = vm::ptr::make(a128(dmux.memAddr) + (cb_add ^= 16)); dmuxMsg->msgType = CELL_DMUX_MSG_TYPE_DEMUX_DONE; dmuxMsg->supplementalInfo = stream.userdata; /*Callback cb; cb.SetAddr(dmux.cbFunc); - cb.Handle(dmux.id, dmuxMsg.GetAddr(), dmux.cbArg); + cb.Handle(dmux.id, dmuxMsg.addr(), dmux.cbArg); cb.Branch(task.type == dmuxResetStreamAndWaitDone);*/ - dmux.dmuxCb->ExecAsCallback(dmux.cbFunc, true, dmux.id, dmuxMsg.GetAddr(), dmux.cbArg); + dmux.dmuxCb->ExecAsCallback(dmux.cbFunc, true, dmux.id, dmuxMsg.addr(), dmux.cbArg); updates_signaled++; } else switch (code.ToLE()) @@ -457,14 +421,14 @@ u32 dmuxOpen(Demuxer* data) es.finish(stream); //LOG_NOTICE(HLE, "*** AT3+ AU sent (len=0x%x, pts=0x%llx)", len - pes.size - 3, pes.pts); - mem_ptr_t esMsg(a128(dmux.memAddr) + (cb_add ^= 16)); + auto esMsg = vm::ptr::make(a128(dmux.memAddr) + (cb_add ^= 16)); esMsg->msgType = CELL_DMUX_ES_MSG_TYPE_AU_FOUND; esMsg->supplementalInfo = stream.userdata; /*Callback cb; cb.SetAddr(es.cbFunc); - cb.Handle(dmux.id, es.id, esMsg.GetAddr(), es.cbArg); + cb.Handle(dmux.id, es.id, esMsg.addr(), es.cbArg); cb.Branch(false);*/ - dmux.dmuxCb->ExecAsCallback(es.cbFunc, false, dmux.id, es.id, esMsg.GetAddr(), es.cbArg); + dmux.dmuxCb->ExecAsCallback(es.cbFunc, false, dmux.id, es.id, esMsg.addr(), es.cbArg); } else { @@ -510,14 +474,14 @@ u32 dmuxOpen(Demuxer* data) }*/ es.finish(stream); // callback - mem_ptr_t esMsg(a128(dmux.memAddr) + (cb_add ^= 16)); + auto esMsg = vm::ptr::make(a128(dmux.memAddr) + (cb_add ^= 16)); esMsg->msgType = CELL_DMUX_ES_MSG_TYPE_AU_FOUND; esMsg->supplementalInfo = stream.userdata; /*Callback cb; cb.SetAddr(es.cbFunc); - cb.Handle(dmux.id, es.id, esMsg.GetAddr(), es.cbArg); + cb.Handle(dmux.id, es.id, esMsg.addr(), es.cbArg); cb.Branch(false);*/ - dmux.dmuxCb->ExecAsCallback(es.cbFunc, false, dmux.id, es.id, esMsg.GetAddr(), es.cbArg); + dmux.dmuxCb->ExecAsCallback(es.cbFunc, false, dmux.id, es.id, esMsg.addr(), es.cbArg); } if (pes.new_au) @@ -622,15 +586,15 @@ u32 dmuxOpen(Demuxer* data) case dmuxResetStream: case dmuxResetStreamAndWaitDone: { - mem_ptr_t dmuxMsg(a128(dmux.memAddr) + (cb_add ^= 16)); + auto dmuxMsg = vm::ptr::make(a128(dmux.memAddr) + (cb_add ^= 16)); dmuxMsg->msgType = CELL_DMUX_MSG_TYPE_DEMUX_DONE; dmuxMsg->supplementalInfo = stream.userdata; /*Callback cb; cb.SetAddr(dmux.cbFunc); - cb.Handle(dmux.id, dmuxMsg.GetAddr(), dmux.cbArg); + cb.Handle(dmux.id, dmuxMsg.addr(), dmux.cbArg); cb.Branch(task.type == dmuxResetStreamAndWaitDone);*/ dmux.dmuxCb->ExecAsCallback(dmux.cbFunc, task.type == dmuxResetStreamAndWaitDone, - dmux.id, dmuxMsg.GetAddr(), dmux.cbArg); + dmux.id, dmuxMsg.addr(), dmux.cbArg); updates_signaled++; dmux.is_running = false; @@ -708,25 +672,25 @@ u32 dmuxOpen(Demuxer* data) { es.finish(stream); // callback - mem_ptr_t esMsg(a128(dmux.memAddr) + (cb_add ^= 16)); + auto esMsg = vm::ptr::make(a128(dmux.memAddr) + (cb_add ^= 16)); esMsg->msgType = CELL_DMUX_ES_MSG_TYPE_AU_FOUND; esMsg->supplementalInfo = stream.userdata; /*Callback cb; cb.SetAddr(es.cbFunc); - cb.Handle(dmux.id, es.id, esMsg.GetAddr(), es.cbArg); + cb.Handle(dmux.id, es.id, esMsg.addr(), es.cbArg); cb.Branch(false);*/ - dmux.dmuxCb->ExecAsCallback(es.cbFunc, false, dmux.id, es.id, esMsg.GetAddr(), es.cbArg); + dmux.dmuxCb->ExecAsCallback(es.cbFunc, false, dmux.id, es.id, esMsg.addr(), es.cbArg); } // callback - mem_ptr_t esMsg(a128(dmux.memAddr) + (cb_add ^= 16)); + auto esMsg = vm::ptr::make(a128(dmux.memAddr) + (cb_add ^= 16)); esMsg->msgType = CELL_DMUX_ES_MSG_TYPE_FLUSH_DONE; esMsg->supplementalInfo = stream.userdata; /*Callback cb; cb.SetAddr(es.cbFunc); - cb.Handle(dmux.id, es.id, esMsg.GetAddr(), es.cbArg); + cb.Handle(dmux.id, es.id, esMsg.addr(), es.cbArg); cb.Branch(false);*/ - dmux.dmuxCb->ExecAsCallback(es.cbFunc, false, dmux.id, es.id, esMsg.GetAddr(), es.cbArg); + dmux.dmuxCb->ExecAsCallback(es.cbFunc, false, dmux.id, es.id, esMsg.addr(), es.cbArg); } break; @@ -749,9 +713,9 @@ u32 dmuxOpen(Demuxer* data) return dmux_id; } -int cellDmuxQueryAttr(const mem_ptr_t demuxerType, mem_ptr_t demuxerAttr) +int cellDmuxQueryAttr(const vm::ptr demuxerType, vm::ptr demuxerAttr) { - cellDmux->Warning("cellDmuxQueryAttr(demuxerType_addr=0x%x, demuxerAttr_addr=0x%x)", demuxerType.GetAddr(), demuxerAttr.GetAddr()); + cellDmux->Warning("cellDmuxQueryAttr(demuxerType_addr=0x%x, demuxerAttr_addr=0x%x)", demuxerType.addr(), demuxerAttr.addr()); if (demuxerType->streamType != CELL_DMUX_STREAM_TYPE_PAMF) { @@ -762,9 +726,9 @@ int cellDmuxQueryAttr(const mem_ptr_t demuxerType, mem_ptr_t demuxerType2, mem_ptr_t demuxerAttr) +int cellDmuxQueryAttr2(const vm::ptr demuxerType2, vm::ptr demuxerAttr) { - cellDmux->Warning("cellDmuxQueryAttr2(demuxerType2_addr=0x%x, demuxerAttr_addr=0x%x)", demuxerType2.GetAddr(), demuxerAttr.GetAddr()); + cellDmux->Warning("cellDmuxQueryAttr2(demuxerType2_addr=0x%x, demuxerAttr_addr=0x%x)", demuxerType2.addr(), demuxerAttr.addr()); if (demuxerType2->streamType != CELL_DMUX_STREAM_TYPE_PAMF) { @@ -775,11 +739,11 @@ int cellDmuxQueryAttr2(const mem_ptr_t demuxerType2, mem_ptr_t demuxerType, const mem_ptr_t demuxerResource, - const mem_ptr_t demuxerCb, vm::ptr> demuxerHandle) +int cellDmuxOpen(const vm::ptr demuxerType, const vm::ptr demuxerResource, + const vm::ptr demuxerCb, vm::ptr> demuxerHandle) { cellDmux->Warning("cellDmuxOpen(demuxerType_addr=0x%x, demuxerResource_addr=0x%x, demuxerCb_addr=0x%x, demuxerHandle_addr=0x%x)", - demuxerType.GetAddr(), demuxerResource.GetAddr(), demuxerCb.GetAddr(), demuxerHandle.addr()); + demuxerType.addr(), demuxerResource.addr(), demuxerCb.addr(), demuxerHandle.addr()); if (demuxerType->streamType != CELL_DMUX_STREAM_TYPE_PAMF) { @@ -793,11 +757,11 @@ int cellDmuxOpen(const mem_ptr_t demuxerType, const mem_ptr_t demuxerType, const mem_ptr_t demuxerResourceEx, - const mem_ptr_t demuxerCb, vm::ptr> demuxerHandle) +int cellDmuxOpenEx(const vm::ptr demuxerType, const vm::ptr demuxerResourceEx, + const vm::ptr demuxerCb, vm::ptr> demuxerHandle) { cellDmux->Warning("cellDmuxOpenEx(demuxerType_addr=0x%x, demuxerResourceEx_addr=0x%x, demuxerCb_addr=0x%x, demuxerHandle_addr=0x%x)", - demuxerType.GetAddr(), demuxerResourceEx.GetAddr(), demuxerCb.GetAddr(), demuxerHandle.addr()); + demuxerType.addr(), demuxerResourceEx.addr(), demuxerCb.addr(), demuxerHandle.addr()); if (demuxerType->streamType != CELL_DMUX_STREAM_TYPE_PAMF) { @@ -811,11 +775,11 @@ int cellDmuxOpenEx(const mem_ptr_t demuxerType, const mem_ptr_t demuxerType2, const mem_ptr_t demuxerResource2, - const mem_ptr_t demuxerCb, vm::ptr> demuxerHandle) +int cellDmuxOpen2(const vm::ptr demuxerType2, const vm::ptr demuxerResource2, + const vm::ptr demuxerCb, vm::ptr> demuxerHandle) { cellDmux->Warning("cellDmuxOpen2(demuxerType2_addr=0x%x, demuxerResource2_addr=0x%x, demuxerCb_addr=0x%x, demuxerHandle_addr=0x%x)", - demuxerType2.GetAddr(), demuxerResource2.GetAddr(), demuxerCb.GetAddr(), demuxerHandle.addr()); + demuxerType2.addr(), demuxerResource2.addr(), demuxerCb.addr(), demuxerHandle.addr()); if (demuxerType2->streamType != CELL_DMUX_STREAM_TYPE_PAMF) { @@ -943,11 +907,11 @@ int cellDmuxResetStreamAndWaitDone(u32 demuxerHandle) return CELL_OK; } -int cellDmuxQueryEsAttr(const mem_ptr_t demuxerType, const mem_ptr_t esFilterId, - const u32 esSpecificInfo_addr, mem_ptr_t esAttr) +int cellDmuxQueryEsAttr(const vm::ptr demuxerType, const vm::ptr esFilterId, + const u32 esSpecificInfo_addr, vm::ptr esAttr) { cellDmux->Warning("cellDmuxQueryEsAttr(demuxerType_addr=0x%x, esFilterId_addr=0x%x, esSpecificInfo_addr=0x%x, esAttr_addr=0x%x)", - demuxerType.GetAddr(), esFilterId.GetAddr(), esSpecificInfo_addr, esAttr.GetAddr()); + demuxerType.addr(), esFilterId.addr(), esSpecificInfo_addr, esAttr.addr()); if (demuxerType->streamType != CELL_DMUX_STREAM_TYPE_PAMF) { @@ -960,11 +924,11 @@ int cellDmuxQueryEsAttr(const mem_ptr_t demuxerType, const mem_ptr return CELL_OK; } -int cellDmuxQueryEsAttr2(const mem_ptr_t demuxerType2, const mem_ptr_t esFilterId, - const u32 esSpecificInfo_addr, mem_ptr_t esAttr) +int cellDmuxQueryEsAttr2(const vm::ptr demuxerType2, const vm::ptr esFilterId, + const u32 esSpecificInfo_addr, vm::ptr esAttr) { cellDmux->Warning("cellDmuxQueryEsAttr2(demuxerType2_addr=0x%x, esFilterId_addr=0x%x, esSpecificInfo_addr=0x%x, esAttr_addr=0x%x)", - demuxerType2.GetAddr(), esFilterId.GetAddr(), esSpecificInfo_addr, esAttr.GetAddr()); + demuxerType2.addr(), esFilterId.addr(), esSpecificInfo_addr, esAttr.addr()); if (demuxerType2->streamType != CELL_DMUX_STREAM_TYPE_PAMF) { @@ -977,13 +941,13 @@ int cellDmuxQueryEsAttr2(const mem_ptr_t demuxerType2, const mem_ return CELL_OK; } -int cellDmuxEnableEs(u32 demuxerHandle, const mem_ptr_t esFilterId, - const mem_ptr_t esResourceInfo, const mem_ptr_t esCb, +int cellDmuxEnableEs(u32 demuxerHandle, const vm::ptr esFilterId, + const vm::ptr esResourceInfo, const vm::ptr esCb, const u32 esSpecificInfo_addr, vm::ptr> esHandle) { cellDmux->Warning("cellDmuxEnableEs(demuxerHandle=%d, esFilterId_addr=0x%x, esResourceInfo_addr=0x%x, esCb_addr=0x%x, " - "esSpecificInfo_addr=0x%x, esHandle_addr=0x%x)", demuxerHandle, esFilterId.GetAddr(), esResourceInfo.GetAddr(), - esCb.GetAddr(), esSpecificInfo_addr, esHandle.addr()); + "esSpecificInfo_addr=0x%x, esHandle_addr=0x%x)", demuxerHandle, esFilterId.addr(), esResourceInfo.addr(), + esCb.addr(), esSpecificInfo_addr, esHandle.addr()); Demuxer* dmux; if (!Emu.GetIdManager().GetIDData(demuxerHandle, dmux)) diff --git a/rpcs3/Emu/SysCalls/Modules/cellFiber.cpp b/rpcs3/Emu/SysCalls/Modules/cellFiber.cpp index 7a5dec9d14..c52891d005 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellFiber.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellFiber.cpp @@ -81,12 +81,12 @@ int cellFiberPpuJoinFiber() return CELL_OK; } -u32 cellFiberPpuSelf() +vm::ptr cellFiberPpuSelf() { cellFiber->Log("cellFiberPpuSelf() -> nullptr"); // TODO // returns fiber structure (zero for simple PPU thread) - return 0; + return vm::ptr::make(0); } int cellFiberPpuSendSignal() diff --git a/rpcs3/Emu/SysCalls/Modules/cellFont.cpp b/rpcs3/Emu/SysCalls/Modules/cellFont.cpp index b4b6510801..5d4d9aac44 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellFont.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellFont.cpp @@ -15,9 +15,9 @@ Module *cellFont = nullptr; CCellFontInternal* s_fontInternalInstance = nullptr; // Functions -int cellFontInitializeWithRevision(u64 revisionFlags, mem_ptr_t config) +int cellFontInitializeWithRevision(u64 revisionFlags, vm::ptr config) { - cellFont->Warning("cellFontInitializeWithRevision(revisionFlags=0x%llx, config=0x%x)", revisionFlags, config.GetAddr()); + cellFont->Warning("cellFontInitializeWithRevision(revisionFlags=0x%llx, config=0x%x)", revisionFlags, config.addr()); if (s_fontInternalInstance->m_bInitialized) return CELL_FONT_ERROR_ALREADY_INITIALIZED; @@ -40,14 +40,14 @@ int cellFontGetRevisionFlags(vm::ptr> revisionFlags) return CELL_FONT_OK; } -int cellFontInit(mem_ptr_t config) +int cellFontInit(vm::ptr config) { - cellFont->Log("cellFontInit(config=0x%x)", config.GetAddr()); + cellFont->Log("cellFontInit(config=0x%x)", config.addr()); vm::var> revisionFlags; revisionFlags.value() = 0; cellFontGetRevisionFlags(revisionFlags); - return cellFontInitializeWithRevision(revisionFlags.value(), config.GetAddr()); + return cellFontInitializeWithRevision(revisionFlags.value(), config); } int cellFontEnd() @@ -68,10 +68,10 @@ s32 cellFontSetFontsetOpenMode(u32 openMode) return CELL_FONT_OK; } -int cellFontOpenFontMemory(mem_ptr_t library, u32 fontAddr, u32 fontSize, u32 subNum, u32 uniqueId, mem_ptr_t font) +int cellFontOpenFontMemory(vm::ptr library, u32 fontAddr, u32 fontSize, u32 subNum, u32 uniqueId, vm::ptr font) { cellFont->Warning("cellFontOpenFontMemory(library_addr=0x%x, fontAddr=0x%x, fontSize=%d, subNum=%d, uniqueId=%d, font_addr=0x%x)", - library.GetAddr(), fontAddr, fontSize, subNum, uniqueId, font.GetAddr()); + library.addr(), fontAddr, fontSize, subNum, uniqueId, font.addr()); if (!s_fontInternalInstance->m_bInitialized) return CELL_FONT_ERROR_UNINITIALIZED; @@ -87,11 +87,11 @@ int cellFontOpenFontMemory(mem_ptr_t library, u32 fontAddr, u32 return CELL_FONT_OK; } -int cellFontOpenFontFile(mem_ptr_t library, vm::ptr fontPath, u32 subNum, s32 uniqueId, mem_ptr_t font) +int cellFontOpenFontFile(vm::ptr library, vm::ptr fontPath, u32 subNum, s32 uniqueId, vm::ptr font) { std::string fp(fontPath.get_ptr()); cellFont->Warning("cellFontOpenFontFile(library_addr=0x%x, fontPath=\"%s\", subNum=%d, uniqueId=%d, font_addr=0x%x)", - library.GetAddr(), fp.c_str(), subNum, uniqueId, font.GetAddr()); + library.addr(), fp.c_str(), subNum, uniqueId, font.addr()); vfsFile f(fp); if (!f.IsOpened()) @@ -100,15 +100,15 @@ int cellFontOpenFontFile(mem_ptr_t library, vm::ptr u32 fileSize = (u32)f.GetSize(); u32 bufferAddr = (u32)Memory.Alloc(fileSize, 1); // Freed in cellFontCloseFont f.Read(Memory.VirtualToRealAddr(bufferAddr), fileSize); - int ret = cellFontOpenFontMemory(library.GetAddr(), bufferAddr, fileSize, subNum, uniqueId, font.GetAddr()); + int ret = cellFontOpenFontMemory(library, bufferAddr, fileSize, subNum, uniqueId, font); font->origin = CELL_FONT_OPEN_FONT_FILE; return ret; } -int cellFontOpenFontset(mem_ptr_t library, mem_ptr_t fontType, mem_ptr_t font) +int cellFontOpenFontset(vm::ptr library, vm::ptr fontType, vm::ptr font) { cellFont->Log("cellFontOpenFontset(library_addr=0x%x, fontType_addr=0x%x, font_addr=0x%x)", - library.GetAddr(), fontType.GetAddr(), font.GetAddr()); + library.addr(), fontType.addr(), font.addr()); if (!s_fontInternalInstance->m_bInitialized) return CELL_FONT_ERROR_UNINITIALIZED; @@ -183,14 +183,14 @@ int cellFontOpenFontset(mem_ptr_t library, mem_ptr_t f((u32)file.length() + 1, 1); Memory.WriteString(f.addr(), file); - int ret = cellFontOpenFontFile(library.GetAddr(), f, 0, 0, font.GetAddr()); //TODO: Find the correct values of subNum, uniqueId + int ret = cellFontOpenFontFile(library, f, 0, 0, font); //TODO: Find the correct values of subNum, uniqueId font->origin = CELL_FONT_OPEN_FONTSET; return ret; } -int cellFontOpenFontInstance(mem_ptr_t openedFont, mem_ptr_t font) +int cellFontOpenFontInstance(vm::ptr openedFont, vm::ptr font) { - cellFont->Warning("cellFontOpenFontInstance(openedFont=0x%x, font=0x%x)", openedFont.GetAddr(), font.GetAddr()); + cellFont->Warning("cellFontOpenFontInstance(openedFont=0x%x, font=0x%x)", openedFont.addr(), font.addr()); font->renderer_addr = openedFont->renderer_addr; font->scale_x = openedFont->scale_x; @@ -209,10 +209,10 @@ s32 cellFontSetFontOpenMode(u32 openMode) return CELL_FONT_OK; } -int cellFontCreateRenderer(mem_ptr_t library, mem_ptr_t config, mem_ptr_t Renderer) +int cellFontCreateRenderer(vm::ptr library, vm::ptr config, vm::ptr Renderer) { cellFont->Warning("cellFontCreateRenderer(library_addr=0x%x, config_addr=0x%x, Renderer_addr=0x%x)", - library.GetAddr(), config.GetAddr(), Renderer.GetAddr()); + library.addr(), config.addr(), Renderer.addr()); if (!s_fontInternalInstance->m_bInitialized) return CELL_FONT_ERROR_UNINITIALIZED; @@ -222,10 +222,10 @@ int cellFontCreateRenderer(mem_ptr_t library, mem_ptr_t surface, u32 buffer_addr, s32 bufferWidthByte, s32 pixelSizeByte, s32 w, s32 h) +void cellFontRenderSurfaceInit(vm::ptr surface, u32 buffer_addr, s32 bufferWidthByte, s32 pixelSizeByte, s32 w, s32 h) { cellFont->Warning("cellFontRenderSurfaceInit(surface_addr=0x%x, buffer_addr=0x%x, bufferWidthByte=%d, pixelSizeByte=%d, w=%d, h=%d)", - surface.GetAddr(), buffer_addr, bufferWidthByte, pixelSizeByte, w, h); + surface.addr(), buffer_addr, bufferWidthByte, pixelSizeByte, w, h); surface->buffer_addr = buffer_addr; surface->widthByte = bufferWidthByte; @@ -237,10 +237,10 @@ void cellFontRenderSurfaceInit(mem_ptr_t surface, u32 buf surface->buffer_addr = (u32)Memory.Alloc(bufferWidthByte * h, 1); // TODO: Huge memory leak } -void cellFontRenderSurfaceSetScissor(mem_ptr_t surface, s32 x0, s32 y0, s32 w, s32 h) +void cellFontRenderSurfaceSetScissor(vm::ptr surface, s32 x0, s32 y0, s32 w, s32 h) { cellFont->Warning("cellFontRenderSurfaceSetScissor(surface_addr=0x%x, x0=%d, y0=%d, w=%d, h=%d)", - surface.GetAddr(), x0, y0, w, h); + surface.addr(), x0, y0, w, h); surface->Scissor.x0 = x0; surface->Scissor.y0 = y0; @@ -248,19 +248,19 @@ void cellFontRenderSurfaceSetScissor(mem_ptr_t surface, s surface->Scissor.y1 = h; } -int cellFontSetScalePixel(mem_ptr_t font, float w, float h) +int cellFontSetScalePixel(vm::ptr font, float w, float h) { - cellFont->Log("cellFontSetScalePixel(font_addr=0x%x, w=%f, h=%f)", font.GetAddr(), w, h); + cellFont->Log("cellFontSetScalePixel(font_addr=0x%x, w=%f, h=%f)", font.addr(), w, h); font->scale_x = w; font->scale_y = h; return CELL_FONT_OK; } -int cellFontGetHorizontalLayout(mem_ptr_t font, mem_ptr_t layout) +int cellFontGetHorizontalLayout(vm::ptr font, vm::ptr layout) { cellFont->Log("cellFontGetHorizontalLayout(font_addr=0x%x, layout_addr=0x%x)", - font.GetAddr(), layout.GetAddr()); + font.addr(), layout.addr()); int ascent, descent, lineGap; float scale = stbtt_ScaleForPixelHeight(font->stbfont, font->scale_y); @@ -272,21 +272,21 @@ int cellFontGetHorizontalLayout(mem_ptr_t font, mem_ptr_t font, mem_ptr_t renderer) +int cellFontBindRenderer(vm::ptr font, vm::ptr renderer) { cellFont->Warning("cellFontBindRenderer(font_addr=0x%x, renderer_addr=0x%x)", - font.GetAddr(), renderer.GetAddr()); + font.addr(), renderer.addr()); if (font->renderer_addr) return CELL_FONT_ERROR_RENDERER_ALREADY_BIND; - font->renderer_addr = renderer.GetAddr(); + font->renderer_addr = renderer.addr(); return CELL_FONT_OK; } -int cellFontUnbindRenderer(mem_ptr_t font) +int cellFontUnbindRenderer(vm::ptr font) { - cellFont->Warning("cellFontBindRenderer(font_addr=0x%x)", font.GetAddr()); + cellFont->Warning("cellFontBindRenderer(font_addr=0x%x)", font.addr()); if (!font->renderer_addr) return CELL_FONT_ERROR_RENDERER_UNBIND; @@ -301,9 +301,9 @@ int cellFontDestroyRenderer() return CELL_FONT_OK; } -int cellFontSetupRenderScalePixel(mem_ptr_t font, float w, float h) +int cellFontSetupRenderScalePixel(vm::ptr font, float w, float h) { - cellFont->Log("cellFontSetupRenderScalePixel(font_addr=0x%x, w=%f, h=%f)", font.GetAddr(), w, h); + cellFont->Log("cellFontSetupRenderScalePixel(font_addr=0x%x, w=%f, h=%f)", font.addr(), w, h); if (!font->renderer_addr) return CELL_FONT_ERROR_RENDERER_UNBIND; @@ -312,10 +312,10 @@ int cellFontSetupRenderScalePixel(mem_ptr_t font, float w, float h) return CELL_FONT_OK; } -int cellFontGetRenderCharGlyphMetrics(mem_ptr_t font, u32 code, mem_ptr_t metrics) +int cellFontGetRenderCharGlyphMetrics(vm::ptr font, u32 code, vm::ptr metrics) { cellFont->Log("cellFontGetRenderCharGlyphMetrics(font_addr=0x%x, code=0x%x, metrics_addr=0x%x)", - font.GetAddr(), code, metrics.GetAddr()); + font.addr(), code, metrics.addr()); if (!font->renderer_addr) return CELL_FONT_ERROR_RENDERER_UNBIND; @@ -324,10 +324,10 @@ int cellFontGetRenderCharGlyphMetrics(mem_ptr_t font, u32 code, mem_pt return CELL_FONT_OK; } -int cellFontRenderCharGlyphImage(mem_ptr_t font, u32 code, mem_ptr_t surface, float x, float y, mem_ptr_t metrics, mem_ptr_t transInfo) +int cellFontRenderCharGlyphImage(vm::ptr font, u32 code, vm::ptr surface, float x, float y, vm::ptr metrics, vm::ptr transInfo) { cellFont->Log("cellFontRenderCharGlyphImage(font_addr=0x%x, code=0x%x, surface_addr=0x%x, x=%f, y=%f, metrics_addr=0x%x, trans_addr=0x%x)", - font.GetAddr(), code, surface.GetAddr(), x, y, metrics.GetAddr(), transInfo.GetAddr()); + font.addr(), code, surface.addr(), x, y, metrics.addr(), transInfo.addr()); if (!font->renderer_addr) return CELL_FONT_ERROR_RENDERER_UNBIND; @@ -368,9 +368,9 @@ int cellFontEndLibrary() return CELL_FONT_OK; } -int cellFontSetEffectSlant(mem_ptr_t font, float slantParam) +int cellFontSetEffectSlant(vm::ptr font, float slantParam) { - cellFont->Log("cellFontSetEffectSlant(font_addr=0x%x, slantParam=%f)", font.GetAddr(), slantParam); + cellFont->Log("cellFontSetEffectSlant(font_addr=0x%x, slantParam=%f)", font.addr(), slantParam); if (slantParam < -1.0 || slantParam > 1.0) return CELL_FONT_ERROR_INVALID_PARAMETER; @@ -379,26 +379,26 @@ int cellFontSetEffectSlant(mem_ptr_t font, float slantParam) return CELL_FONT_OK; } -int cellFontGetEffectSlant(mem_ptr_t font, mem_ptr_t> slantParam) +int cellFontGetEffectSlant(vm::ptr font, vm::ptr> slantParam) { - cellFont->Warning("cellFontSetEffectSlant(font_addr=0x%x, slantParam_addr=0x%x)", font.GetAddr(), slantParam.GetAddr()); + cellFont->Warning("cellFontSetEffectSlant(font_addr=0x%x, slantParam_addr=0x%x)", font.addr(), slantParam.addr()); *slantParam = font->slant; return CELL_FONT_OK; } -int cellFontGetFontIdCode(mem_ptr_t font, u32 code, vm::ptr> fontId, vm::ptr> fontCode) +int cellFontGetFontIdCode(vm::ptr font, u32 code, vm::ptr> fontId, vm::ptr> fontCode) { cellFont->Todo("cellFontGetFontIdCode(font_addr=0x%x, code=0x%x, fontId_addr=0x%x, fontCode_addr=0x%x", - font.GetAddr(), code, fontId.addr(), fontCode.addr()); + font.addr(), code, fontId.addr(), fontCode.addr()); // TODO: ? return CELL_FONT_OK; } -int cellFontCloseFont(mem_ptr_t font) +int cellFontCloseFont(vm::ptr font) { - cellFont->Warning("cellFontCloseFont(font_addr=0x%x)", font.GetAddr()); + cellFont->Warning("cellFontCloseFont(font_addr=0x%x)", font.addr()); if (font->origin == CELL_FONT_OPEN_FONTSET || font->origin == CELL_FONT_OPEN_FONT_FILE || @@ -408,10 +408,10 @@ int cellFontCloseFont(mem_ptr_t font) return CELL_FONT_OK; } -int cellFontGetCharGlyphMetrics(mem_ptr_t font, u32 code, mem_ptr_t metrics) +int cellFontGetCharGlyphMetrics(vm::ptr font, u32 code, vm::ptr metrics) { cellFont->Log("cellFontGetCharGlyphMetrics(font_addr=0x%x, code=0x%x, metrics_addr=0x%x", - font.GetAddr(), code, metrics.GetAddr()); + font.addr(), code, metrics.addr()); int x0, y0, x1, y1; int advanceWidth, leftSideBearing; diff --git a/rpcs3/Emu/SysCalls/Modules/cellFontFT.cpp b/rpcs3/Emu/SysCalls/Modules/cellFontFT.cpp index ce0185c697..4d141542e0 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellFontFT.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellFontFT.cpp @@ -13,10 +13,10 @@ Module *cellFontFT = nullptr; CCellFontFTInternal* s_fontFtInternalInstance = nullptr; -int cellFontInitLibraryFreeTypeWithRevision(u64 revisionFlags, mem_ptr_t config, u32 lib_addr_addr) +int cellFontInitLibraryFreeTypeWithRevision(u64 revisionFlags, vm::ptr config, u32 lib_addr_addr) { cellFontFT->Warning("cellFontInitLibraryFreeTypeWithRevision(revisionFlags=0x%llx, config_addr=0x%x, lib_addr_addr=0x%x", - revisionFlags, config.GetAddr(), lib_addr_addr); + revisionFlags, config.addr(), lib_addr_addr); //if (s_fontInternalInstance->m_bInitialized) //return CELL_FONT_ERROR_UNINITIALIZED; diff --git a/rpcs3/Emu/SysCalls/Modules/cellGame.cpp b/rpcs3/Emu/SysCalls/Modules/cellGame.cpp index 20ac617af6..de8aa0eb35 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellGame.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellGame.cpp @@ -16,10 +16,10 @@ Module *cellGame = nullptr; std::string contentInfo = ""; std::string usrdir = ""; -int cellGameBootCheck(vm::ptr> type, vm::ptr> attributes, mem_ptr_t size, vm::ptr dirName) +int cellGameBootCheck(vm::ptr> type, vm::ptr> attributes, vm::ptr size, vm::ptr dirName) { cellGame->Warning("cellGameBootCheck(type_addr=0x%x, attributes_addr=0x%x, size_addr=0x%x, dirName_addr=0x%x)", - type.addr(), attributes.addr(), size.GetAddr(), dirName.addr()); + type.addr(), attributes.addr(), size.addr(), dirName.addr()); if (size) { @@ -81,9 +81,9 @@ int cellGameBootCheck(vm::ptr> type, vm::ptr> attributes, me return CELL_GAME_RET_OK; } -int cellGamePatchCheck(mem_ptr_t size, u32 reserved_addr) +int cellGamePatchCheck(vm::ptr size, u32 reserved_addr) { - cellGame->Warning("cellGamePatchCheck(size_addr=0x%x, reserved_addr=0x%x)", size.GetAddr(), reserved_addr); + cellGame->Warning("cellGamePatchCheck(size_addr=0x%x, reserved_addr=0x%x)", size.addr(), reserved_addr); if (reserved_addr != 0) { @@ -129,9 +129,9 @@ int cellGamePatchCheck(mem_ptr_t size, u32 reserved_addr) return CELL_GAME_RET_OK; } -int cellGameDataCheck(u32 type, vm::ptr dirName, mem_ptr_t size) +int cellGameDataCheck(u32 type, vm::ptr dirName, vm::ptr size) { - cellGame->Warning("cellGameDataCheck(type=0x%x, dirName_addr=0x%x, size_addr=0x%x)", type, dirName.addr(), size.GetAddr()); + cellGame->Warning("cellGameDataCheck(type=0x%x, dirName_addr=0x%x, size_addr=0x%x)", type, dirName.addr(), size.addr()); if ((type - 1) >= 3) { @@ -311,10 +311,10 @@ int cellGameDataCheckCreate(u32 version, vm::ptr dirName, u32 errDia return cellGameDataCheckCreate2(version, dirName, errDialog, funcStat, container); } -int cellGameCreateGameData(mem_ptr_t init, vm::ptr tmp_contentInfoPath, vm::ptr tmp_usrdirPath) +int cellGameCreateGameData(vm::ptr init, vm::ptr tmp_contentInfoPath, vm::ptr tmp_usrdirPath) { cellGame->Todo("cellGameCreateGameData(init_addr=0x%x, tmp_contentInfoPath_addr=0x%x, tmp_usrdirPath_addr=0x%x)", - init.GetAddr(), tmp_contentInfoPath.addr(), tmp_usrdirPath.addr()); + init.addr(), tmp_contentInfoPath.addr(), tmp_usrdirPath.addr()); // TODO: create temporary game directory, set initial PARAM.SFO parameters // cellGameContentPermit should then move files in non-temporary location and return their non-temporary displacement diff --git a/rpcs3/Emu/SysCalls/Modules/cellGcmSys.cpp b/rpcs3/Emu/SysCalls/Modules/cellGcmSys.cpp index d335acea33..58e44afef0 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellGcmSys.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellGcmSys.cpp @@ -82,29 +82,29 @@ u32 cellGcmGetLabelAddress(u8 index) return (u32)Memory.RSXCMDMem.GetStartAddr() + 0x10 * index; } -u32 cellGcmGetReportDataAddressLocation(u32 index, u32 location) +vm::ptr cellGcmGetReportDataAddressLocation(u32 index, u32 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); - return 0; + return vm::ptr::make(0); } - return (u32)Memory.RSXFBMem.GetStartAddr() + index * 0x10; + return vm::ptr::make((u32)Memory.RSXFBMem.GetStartAddr() + index * 0x10); } if (location == CELL_GCM_LOCATION_MAIN) { if (index >= 1024*1024) { cellGcmSys->Error("cellGcmGetReportDataAddressLocation: Wrong main index (%d)", index); - return 0; + return vm::ptr::make(0); } // TODO: It seems m_report_main_addr is not initialized - return Emu.GetGSManager().GetRender().m_report_main_addr + index * 0x10; + return vm::ptr::make(Emu.GetGSManager().GetRender().m_report_main_addr + index * 0x10); } cellGcmSys->Error("cellGcmGetReportDataAddressLocation: Wrong location (%d)", location); - return 0; + return vm::ptr::make(0); } u64 cellGcmGetTimeStamp(u32 index) @@ -130,10 +130,10 @@ u32 cellGcmGetNotifyDataAddress(u32 index) // Get address of 'IO table' and 'EA table' vm::var table; - cellGcmGetOffsetTable(table.addr()); + cellGcmGetOffsetTable(table); // If entry not in use, return NULL - u16 entry = mem_ptr_t(table->eaAddress)[241]; + u16 entry = Memory.Read16(table->eaAddress + 241 * sizeof(u16)); if (entry == 0xFFFF) { return 0; } @@ -144,9 +144,9 @@ u32 cellGcmGetNotifyDataAddress(u32 index) /* * Get base address of local report data area */ -u32 _cellGcmFunc12() +vm::ptr _cellGcmFunc12() { - return (u32)Memory.RSXFBMem.GetStartAddr(); // TODO + return vm::ptr::make(Memory.RSXFBMem.GetStartAddr()); // TODO } u32 cellGcmGetReport(u32 type, u32 index) @@ -162,7 +162,7 @@ u32 cellGcmGetReport(u32 type, u32 index) return -1; } - mem_ptr_t local_reports = _cellGcmFunc12(); + vm::ptr local_reports = _cellGcmFunc12(); return local_reports[index].value; } @@ -181,7 +181,7 @@ u32 cellGcmGetReportDataLocation(u32 index, u32 location) { cellGcmSys->Warning("cellGcmGetReportDataLocation(index=%d, location=%d)", index, location); - mem_ptr_t report = cellGcmGetReportDataAddressLocation(index, location); + vm::ptr report = cellGcmGetReportDataAddressLocation(index, location); return report->value; } @@ -281,9 +281,9 @@ int cellGcmBindZcull(u8 index) return CELL_OK; } -int cellGcmGetConfiguration(mem_ptr_t config) +int cellGcmGetConfiguration(vm::ptr config) { - cellGcmSys->Log("cellGcmGetConfiguration(config_addr=0x%x)", config.GetAddr()); + cellGcmSys->Log("cellGcmGetConfiguration(config_addr=0x%x)", config.addr()); *config = current_config; @@ -315,16 +315,16 @@ void _cellGcmFunc1() return; } -void _cellGcmFunc15(mem_ptr_t context) +void _cellGcmFunc15(vm::ptr context) { - cellGcmSys->Todo("_cellGcmFunc15(context_addr=0x%x)", context.GetAddr()); + cellGcmSys->Todo("_cellGcmFunc15(context_addr=0x%x)", context.addr()); return; } // Called by cellGcmInit -s32 _cellGcmInitBody(mem_ptr_t context, u32 cmdSize, u32 ioSize, u32 ioAddress) +s32 _cellGcmInitBody(vm::ptr context, u32 cmdSize, u32 ioSize, u32 ioAddress) { - cellGcmSys->Warning("_cellGcmInitBody(context_addr=0x%x, cmdSize=0x%x, ioSize=0x%x, ioAddress=0x%x)", context.GetAddr(), cmdSize, ioSize, ioAddress); + cellGcmSys->Warning("_cellGcmInitBody(context_addr=0x%x, cmdSize=0x%x, ioSize=0x%x, ioAddress=0x%x)", context.addr(), cmdSize, ioSize, ioAddress); if(!cellGcmSys->IsLoaded()) cellGcmSys->Load(); @@ -378,7 +378,7 @@ s32 _cellGcmInitBody(mem_ptr_t context, u32 cmdSize, u32 ioS gcm_info.control_addr = gcm_info.context_addr + 0x40; Memory.WriteData(gcm_info.context_addr, current_context); - Memory.Write32(context.GetAddr(), gcm_info.context_addr); + Memory.Write32(context.addr(), gcm_info.context_addr); CellGcmControl& ctrl = (CellGcmControl&)Memory[gcm_info.control_addr]; ctrl.put = 0; @@ -386,7 +386,7 @@ s32 _cellGcmInitBody(mem_ptr_t context, u32 cmdSize, u32 ioS ctrl.ref = -1; auto& render = Emu.GetGSManager().GetRender(); - render.m_ctxt_addr = context.GetAddr(); + render.m_ctxt_addr = context.addr(); render.m_gcm_buffers_addr = (u32)Memory.Alloc(sizeof(CellGcmDisplayInfo) * 8, sizeof(CellGcmDisplayInfo)); render.m_zculls_addr = (u32)Memory.Alloc(sizeof(CellGcmZcullInfo) * 8, sizeof(CellGcmZcullInfo)); render.m_tiles_addr = (u32)Memory.Alloc(sizeof(CellGcmTileInfo) * 15, sizeof(CellGcmTileInfo)); @@ -448,9 +448,9 @@ int cellGcmSetDisplayBuffer(u32 id, u32 offset, u32 pitch, u32 width, u32 height return CELL_OK; } -int cellGcmSetFlip(mem_ptr_t ctxt, u32 id) +int cellGcmSetFlip(vm::ptr 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.addr(), id); int res = cellGcmSetPrepareFlip(ctxt, id); return res < 0 ? CELL_GCM_ERROR_FAILURE : CELL_OK; @@ -489,9 +489,9 @@ void cellGcmSetFlipStatus() Emu.GetGSManager().GetRender().m_flip_status = 0; } -s32 cellGcmSetPrepareFlip(mem_ptr_t ctxt, u32 id) +s32 cellGcmSetPrepareFlip(vm::ptr 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.addr(), id); if(id > 7) { @@ -507,7 +507,7 @@ s32 cellGcmSetPrepareFlip(mem_ptr_t ctxt, u32 id) if(current + 8 >= end) { cellGcmSys->Error("bad flip!"); - //cellGcmCallback(ctxt.GetAddr(), current + 8 - end); + //cellGcmCallback(ctxt.addr(), current + 8 - end); //copied: CellGcmControl& ctrl = (CellGcmControl&)Memory[gcm_info.control_addr]; @@ -528,7 +528,7 @@ s32 cellGcmSetPrepareFlip(mem_ptr_t ctxt, u32 id) Memory.Write32(current + 4, id); ctxt->current += 8; - if(ctxt.GetAddr() == gcm_info.context_addr) + if(ctxt.addr() == gcm_info.context_addr) { CellGcmControl& ctrl = (CellGcmControl&)Memory[gcm_info.control_addr]; ctrl.put += 8; @@ -610,9 +610,9 @@ void cellGcmSetVBlankHandler(u32 handler_addr) Emu.GetGSManager().GetRender().m_vblank_handler.SetAddr(handler_addr); } -int cellGcmSetWaitFlip(mem_ptr_t ctxt) +int cellGcmSetWaitFlip(vm::ptr ctxt) { - cellGcmSys->Log("cellGcmSetWaitFlip(ctx=0x%x)", ctxt.GetAddr()); + cellGcmSys->Log("cellGcmSetWaitFlip(ctx=0x%x)", ctxt.addr()); GSLockCurrent lock(GS_LOCK_WAIT_FLIP); return CELL_OK; @@ -841,9 +841,9 @@ u32 cellGcmGetMaxIoMapSize() return (u32)(Memory.RSXIOMem.GetEndAddr() - Memory.RSXIOMem.GetStartAddr() - Memory.RSXIOMem.GetReservedAmount()); } -void cellGcmGetOffsetTable(mem_ptr_t table) +void cellGcmGetOffsetTable(vm::ptr table) { - cellGcmSys->Log("cellGcmGetOffsetTable(table_addr=0x%x)", table.GetAddr()); + cellGcmSys->Log("cellGcmGetOffsetTable(table_addr=0x%x)", table.addr()); table->ioAddress = offsetTable.ioAddress; table->eaAddress = offsetTable.eaAddress; @@ -1095,17 +1095,17 @@ void cellGcmSetDefaultCommandBuffer() // Other //------------------------------------------------------------------------ -int cellGcmSetFlipCommand(u32 ctx, u32 id) +int cellGcmSetFlipCommand(vm::ptr ctx, u32 id) { - cellGcmSys->Log("cellGcmSetFlipCommand(ctx=0x%x, id=0x%x)", ctx, id); + cellGcmSys->Log("cellGcmSetFlipCommand(ctx_addr=0x%x, id=0x%x)", ctx.addr(), id); return cellGcmSetPrepareFlip(ctx, id); } -int cellGcmSetFlipCommandWithWaitLabel(u32 ctx, u32 id, u32 label_index, u32 label_value) +int cellGcmSetFlipCommandWithWaitLabel(vm::ptr ctx, u32 id, u32 label_index, u32 label_value) { - cellGcmSys->Log("cellGcmSetFlipCommandWithWaitLabel(ctx=0x%x, id=0x%x, label_index=0x%x, label_value=0x%x)", - ctx, id, label_index, label_value); + cellGcmSys->Log("cellGcmSetFlipCommandWithWaitLabel(ctx_addr=0x%x, id=0x%x, label_index=0x%x, label_value=0x%x)", + ctx.addr(), id, label_index, label_value); int res = cellGcmSetPrepareFlip(ctx, id); Memory.Write32(Memory.RSXCMDMem.GetStartAddr() + 0x10 * label_index, label_value); diff --git a/rpcs3/Emu/SysCalls/Modules/cellGcmSys.h b/rpcs3/Emu/SysCalls/Modules/cellGcmSys.h index f2c25a726b..5c80727595 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellGcmSys.h +++ b/rpcs3/Emu/SysCalls/Modules/cellGcmSys.h @@ -22,11 +22,11 @@ u32 gcmGetLocalMemorySize(); // SysCalls -s32 cellGcmSetPrepareFlip(mem_ptr_t ctxt, u32 id); +s32 cellGcmSetPrepareFlip(vm::ptr ctxt, u32 id); s32 cellGcmAddressToOffset(u64 address, vm::ptr> offset); u32 cellGcmGetMaxIoMapSize(); -void cellGcmGetOffsetTable(mem_ptr_t table); +void cellGcmGetOffsetTable(vm::ptr table); s32 cellGcmIoOffsetToAddress(u32 ioOffset, u64 address); s32 cellGcmMapEaIoAddress(u32 ea, u32 io, u32 size); s32 cellGcmMapEaIoAddressWithFlags(u32 ea, u32 io, u32 size, u32 flags); diff --git a/rpcs3/Emu/SysCalls/Modules/cellGifDec.cpp b/rpcs3/Emu/SysCalls/Modules/cellGifDec.cpp index 5b5b028b79..9282d9d01a 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellGifDec.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellGifDec.cpp @@ -23,10 +23,10 @@ int cellGifDecExtCreate(u32 mainHandle, u32 threadInParam, u32 threadOutParam, u return CELL_OK; } -int cellGifDecOpen(u32 mainHandle, vm::ptr> subHandle, const mem_ptr_t src, mem_ptr_t openInfo) +int cellGifDecOpen(u32 mainHandle, vm::ptr> subHandle, const vm::ptr src, vm::ptr openInfo) { cellGifDec->Warning("cellGifDecOpen(mainHandle=0x%x, subHandle_addr=0x%x, src_addr=0x%x, openInfo_addr=0x%x)", - mainHandle, subHandle.addr(), src.GetAddr(), openInfo.GetAddr()); + mainHandle, subHandle.addr(), src.addr(), openInfo.addr()); CellGifDecSubHandle *current_subHandle = new CellGifDecSubHandle; current_subHandle->fd = 0; @@ -47,7 +47,7 @@ int cellGifDecOpen(u32 mainHandle, vm::ptr> subHandle, const mem_ptr_t // Get size of file vm::var sb; // Alloc a CellFsStat struct - ret = cellFsFstat(current_subHandle->fd, sb.addr()); + ret = cellFsFstat(current_subHandle->fd, sb); if (ret != CELL_OK) return ret; current_subHandle->fileSize = sb->st_size; // Get CellFsStat.st_size break; @@ -59,10 +59,10 @@ int cellGifDecOpen(u32 mainHandle, vm::ptr> subHandle, const mem_ptr_t return CELL_OK; } -int cellGifDecReadHeader(u32 mainHandle, u32 subHandle, mem_ptr_t info) +int cellGifDecReadHeader(u32 mainHandle, u32 subHandle, vm::ptr info) { cellGifDec->Warning("cellGifDecReadHeader(mainHandle=0x%x, subHandle=0x%x, info_addr=0x%x)", - mainHandle, subHandle, info.GetAddr()); + mainHandle, subHandle, info.addr()); CellGifDecSubHandle* subHandle_data; if(!cellGifDec->CheckId(subHandle, subHandle_data)) @@ -109,10 +109,10 @@ int cellGifDecReadHeader(u32 mainHandle, u32 subHandle, mem_ptr_t inParam, mem_ptr_t outParam) +int cellGifDecSetParameter(u32 mainHandle, u32 subHandle, const vm::ptr inParam, vm::ptr outParam) { cellGifDec->Warning("cellGifDecSetParameter(mainHandle=0x%x, subHandle=0x%x, inParam_addr=0x%x, outParam_addr=0x%x)", - mainHandle, subHandle, inParam.GetAddr(), outParam.GetAddr()); + mainHandle, subHandle, inParam.addr(), outParam.addr()); CellGifDecSubHandle* subHandle_data; if(!cellGifDec->CheckId(subHandle, subHandle_data)) @@ -139,10 +139,10 @@ int cellGifDecSetParameter(u32 mainHandle, u32 subHandle, const mem_ptr_t data, const mem_ptr_t dataCtrlParam, mem_ptr_t dataOutInfo) +int cellGifDecDecodeData(u32 mainHandle, u32 subHandle, vm::ptr data, const vm::ptr dataCtrlParam, vm::ptr dataOutInfo) { cellGifDec->Warning("cellGifDecDecodeData(mainHandle=0x%x, subHandle=0x%x, data_addr=0x%x, dataCtrlParam_addr=0x%x, dataOutInfo_addr=0x%x)", - mainHandle, subHandle, data.addr(), dataCtrlParam.GetAddr(), dataOutInfo.GetAddr()); + mainHandle, subHandle, data.addr(), dataCtrlParam.addr(), dataOutInfo.addr()); dataOutInfo->status = CELL_GIFDEC_DEC_STATUS_STOP; diff --git a/rpcs3/Emu/SysCalls/Modules/cellJpgDec.cpp b/rpcs3/Emu/SysCalls/Modules/cellJpgDec.cpp index 80495f7802..87d96da750 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellJpgDec.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellJpgDec.cpp @@ -28,10 +28,10 @@ int cellJpgDecDestroy(u32 mainHandle) return CELL_OK; } -int cellJpgDecOpen(u32 mainHandle, vm::ptr> subHandle, mem_ptr_t src, mem_ptr_t openInfo) +int cellJpgDecOpen(u32 mainHandle, vm::ptr> subHandle, vm::ptr src, vm::ptr openInfo) { cellJpgDec->Warning("cellJpgDecOpen(mainHandle=0x%x, subHandle_addr=0x%x, src_addr=0x%x, openInfo_addr=0x%x)", - mainHandle, subHandle.addr(), src.GetAddr(), openInfo.GetAddr()); + mainHandle, subHandle.addr(), src.addr(), openInfo.addr()); CellJpgDecSubHandle *current_subHandle = new CellJpgDecSubHandle; @@ -53,7 +53,7 @@ int cellJpgDecOpen(u32 mainHandle, vm::ptr> subHandle, mem_ptr_t sb; // Alloc a CellFsStat struct - ret = cellFsFstat(current_subHandle->fd, sb.addr()); + ret = cellFsFstat(current_subHandle->fd, sb); if (ret != CELL_OK) return ret; current_subHandle->fileSize = sb->st_size; // Get CellFsStat.st_size break; @@ -80,9 +80,9 @@ int cellJpgDecClose(u32 mainHandle, u32 subHandle) return CELL_OK; } -int cellJpgDecReadHeader(u32 mainHandle, u32 subHandle, mem_ptr_t info) +int cellJpgDecReadHeader(u32 mainHandle, u32 subHandle, vm::ptr info) { - cellJpgDec->Log("cellJpgDecReadHeader(mainHandle=0x%x, subHandle=0x%x, info_addr=0x%x)", mainHandle, subHandle, info.GetAddr()); + cellJpgDec->Log("cellJpgDecReadHeader(mainHandle=0x%x, subHandle=0x%x, info_addr=0x%x)", mainHandle, subHandle, info.addr()); CellJpgDecSubHandle* subHandle_data; if(!cellJpgDec->CheckId(subHandle, subHandle_data)) @@ -147,10 +147,10 @@ int cellJpgDecReadHeader(u32 mainHandle, u32 subHandle, mem_ptr_t data, const mem_ptr_t dataCtrlParam, mem_ptr_t dataOutInfo) +int cellJpgDecDecodeData(u32 mainHandle, u32 subHandle, vm::ptr data, const vm::ptr dataCtrlParam, vm::ptr dataOutInfo) { cellJpgDec->Log("cellJpgDecDecodeData(mainHandle=0x%x, subHandle=0x%x, data_addr=0x%x, dataCtrlParam_addr=0x%x, dataOutInfo_addr=0x%x)", - mainHandle, subHandle, data.addr(), dataCtrlParam.GetAddr(), dataOutInfo.GetAddr()); + mainHandle, subHandle, data.addr(), dataCtrlParam.addr(), dataOutInfo.addr()); dataOutInfo->status = CELL_JPGDEC_DEC_STATUS_STOP; CellJpgDecSubHandle* subHandle_data; @@ -278,10 +278,10 @@ int cellJpgDecDecodeData(u32 mainHandle, u32 subHandle, vm::ptr data, const return CELL_OK; } -int cellJpgDecSetParameter(u32 mainHandle, u32 subHandle, const mem_ptr_t inParam, mem_ptr_t outParam) +int cellJpgDecSetParameter(u32 mainHandle, u32 subHandle, const vm::ptr inParam, vm::ptr outParam) { cellJpgDec->Log("cellJpgDecSetParameter(mainHandle=0x%x, subHandle=0x%x, inParam_addr=0x%x, outParam_addr=0x%x)", - mainHandle, subHandle, inParam.GetAddr(), outParam.GetAddr()); + mainHandle, subHandle, inParam.addr(), outParam.addr()); CellJpgDecSubHandle* subHandle_data; if(!cellJpgDec->CheckId(subHandle, subHandle_data)) diff --git a/rpcs3/Emu/SysCalls/Modules/cellL10n.cpp b/rpcs3/Emu/SysCalls/Modules/cellL10n.cpp index db75833d76..f0d754e2e7 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellL10n.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellL10n.cpp @@ -240,7 +240,7 @@ int _L10nConvertStr(int src_code, const void *src, size_t * src_len, int dst_cod return ConverterUnknown; if (strnlen_s((char*)src, *src_len) != *src_len) return SRCIllegal; - //std::string wrapped_source = (char*)Memory.VirtualToRealAddr(src.GetAddr()); + //std::string wrapped_source = (char*)Memory.VirtualToRealAddr(src.addr()); std::string wrapped_source((char*)src); //if (wrapped_source.length != src_len.GetValue()) return SRCIllegal; std::string target = _OemToOem(srcCode, dstCode, wrapped_source); @@ -260,8 +260,8 @@ int _L10nConvertStr(int src_code, const void* src, size_t * src_len, int dst_cod if ((_L10nCodeParse(src_code, srcCode)) && (_L10nCodeParse(dst_code, dstCode))) { iconv_t ict = iconv_open(srcCode.c_str(), dstCode.c_str()); - //char *srcBuf = (char*)Memory.VirtualToRealAddr(src.GetAddr()); - //char *dstBuf = (char*)Memory.VirtualToRealAddr(dst.GetAddr()); + //char *srcBuf = (char*)Memory.VirtualToRealAddr(src.addr()); + //char *dstBuf = (char*)Memory.VirtualToRealAddr(dst.addr()); char *srcBuf = (char*)src, *dstBuf = (char*)dst; size_t srcLen = *src_len, dstLen = *dst_len; size_t ictd = iconv(ict, &srcBuf, &srcLen, &dstBuf, &dstLen); diff --git a/rpcs3/Emu/SysCalls/Modules/cellNetCtl.cpp b/rpcs3/Emu/SysCalls/Modules/cellNetCtl.cpp index e3b992bd0c..61e3da0a88 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellNetCtl.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellNetCtl.cpp @@ -43,16 +43,16 @@ int cellNetCtlDelHandler(s32 hid) return CELL_OK; } -int cellNetCtlGetInfo(s32 code, mem_ptr_t info) +int cellNetCtlGetInfo(s32 code, vm::ptr info) { - cellNetCtl->Todo("cellNetCtlGetInfo(code=%x, info_addr=0x%x)", code, info.GetAddr()); + cellNetCtl->Todo("cellNetCtlGetInfo(code=%x, info_addr=0x%x)", code, info.addr()); return CELL_OK; } -int cellNetCtlNetStartDialogLoadAsync(mem_ptr_t param) +int cellNetCtlNetStartDialogLoadAsync(vm::ptr param) { - cellNetCtl->Todo("cellNetCtlNetStartDialogLoadAsync(param_addr=0x%x)", param.GetAddr()); + cellNetCtl->Todo("cellNetCtlNetStartDialogLoadAsync(param_addr=0x%x)", param.addr()); return CELL_OK; } @@ -64,16 +64,16 @@ int cellNetCtlNetStartDialogAbortAsync() return CELL_OK; } -int cellNetCtlNetStartDialogUnloadAsync(mem_ptr_t result) +int cellNetCtlNetStartDialogUnloadAsync(vm::ptr result) { - cellNetCtl->Todo("cellNetCtlNetStartDialogUnloadAsync(result_addr=0x%x)", result.GetAddr()); + cellNetCtl->Todo("cellNetCtlNetStartDialogUnloadAsync(result_addr=0x%x)", result.addr()); return CELL_OK; } -int cellNetCtlGetNatInfo(mem_ptr_t natInfo) +int cellNetCtlGetNatInfo(vm::ptr natInfo) { - cellNetCtl->Todo("cellNetCtlGetNatInfo(natInfo_addr=0x%x)", natInfo.GetAddr()); + cellNetCtl->Todo("cellNetCtlGetNatInfo(natInfo_addr=0x%x)", natInfo.addr()); if (natInfo->size == 0) { diff --git a/rpcs3/Emu/SysCalls/Modules/cellPamf.cpp b/rpcs3/Emu/SysCalls/Modules/cellPamf.cpp index d479ea8dde..361768451b 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellPamf.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellPamf.cpp @@ -6,7 +6,7 @@ Module *cellPamf = nullptr; -int pamfStreamTypeToEsFilterId(u8 type, u8 ch, mem_ptr_t pEsFilterId) +int pamfStreamTypeToEsFilterId(u8 type, u8 ch, vm::ptr pEsFilterId) { //TODO: convert type and ch to EsFilterId pEsFilterId->filterIdMajor = 0; @@ -74,10 +74,10 @@ int pamfStreamTypeToEsFilterId(u8 type, u8 ch, mem_ptr_t pE return CELL_OK; } -u8 pamfGetStreamType(mem_ptr_t pSelf, u8 stream) +u8 pamfGetStreamType(vm::ptr pSelf, u8 stream) { //TODO: get stream type correctly - const mem_ptr_t pAddr(pSelf->pAddr); + const vm::ptr pAddr(pSelf->pAddr); switch (pAddr->stream_headers[stream].type) { @@ -91,10 +91,10 @@ u8 pamfGetStreamType(mem_ptr_t pSelf, u8 stream) } } -u8 pamfGetStreamChannel(mem_ptr_t pSelf, u8 stream) +u8 pamfGetStreamChannel(vm::ptr pSelf, u8 stream) { //TODO: get stream channel correctly - const mem_ptr_t pAddr(pSelf->pAddr); + const vm::ptr pAddr(pSelf->pAddr); switch (pAddr->stream_headers[stream].type) { @@ -124,9 +124,9 @@ u8 pamfGetStreamChannel(mem_ptr_t pSelf, u8 stream) } -int cellPamfGetHeaderSize(mem_ptr_t pAddr, u64 fileSize, vm::ptr> pSize) +int cellPamfGetHeaderSize(vm::ptr pAddr, u64 fileSize, vm::ptr> pSize) { - cellPamf->Warning("cellPamfGetHeaderSize(pAddr=0x%x, fileSize=%d, pSize_addr=0x%x)", pAddr.GetAddr(), fileSize, pSize.addr()); + cellPamf->Warning("cellPamfGetHeaderSize(pAddr=0x%x, fileSize=%d, pSize_addr=0x%x)", pAddr.addr(), fileSize, pSize.addr()); //if ((u32)pAddr->magic != 0x464d4150) //return CELL_PAMF_ERROR_UNKNOWN_TYPE; @@ -136,9 +136,9 @@ int cellPamfGetHeaderSize(mem_ptr_t pAddr, u64 fileSize, vm::ptr pAddr, u64 fileSize, u32 attribute, vm::ptr> pSize) +int cellPamfGetHeaderSize2(vm::ptr pAddr, u64 fileSize, u32 attribute, vm::ptr> pSize) { - cellPamf->Warning("cellPamfGetHeaderSize2(pAddr=0x%x, fileSize=%d, attribute=0x%x, pSize_addr=0x%x)", pAddr.GetAddr(), fileSize, attribute, pSize.addr()); + cellPamf->Warning("cellPamfGetHeaderSize2(pAddr=0x%x, fileSize=%d, attribute=0x%x, pSize_addr=0x%x)", pAddr.addr(), fileSize, attribute, pSize.addr()); //if ((u32)pAddr->magic != 0x464d4150) //return CELL_PAMF_ERROR_UNKNOWN_TYPE; @@ -148,9 +148,9 @@ int cellPamfGetHeaderSize2(mem_ptr_t pAddr, u64 fileSize, u32 attrib return CELL_OK; } -int cellPamfGetStreamOffsetAndSize(mem_ptr_t pAddr, u64 fileSize, vm::ptr> pOffset, vm::ptr> pSize) +int cellPamfGetStreamOffsetAndSize(vm::ptr pAddr, u64 fileSize, vm::ptr> pOffset, vm::ptr> pSize) { - cellPamf->Warning("cellPamfGetStreamOffsetAndSize(pAddr=0x%x, fileSize=%d, pOffset_addr=0x%x, pSize_addr=0x%x)", pAddr.GetAddr(), fileSize, pOffset.addr(), pSize.addr()); + cellPamf->Warning("cellPamfGetStreamOffsetAndSize(pAddr=0x%x, fileSize=%d, pOffset_addr=0x%x, pSize_addr=0x%x)", pAddr.addr(), fileSize, pOffset.addr(), pSize.addr()); //if ((u32)pAddr->magic != 0x464d4150) //return CELL_PAMF_ERROR_UNKNOWN_TYPE; @@ -162,16 +162,16 @@ int cellPamfGetStreamOffsetAndSize(mem_ptr_t pAddr, u64 fileSize, vm return CELL_OK; } -int cellPamfVerify(mem_ptr_t pAddr, u64 fileSize) +int cellPamfVerify(vm::ptr pAddr, u64 fileSize) { - cellPamf->Warning("cellPamfVerify(pAddr=0x%x, fileSize=%d)", pAddr.GetAddr(), fileSize); + cellPamf->Warning("cellPamfVerify(pAddr=0x%x, fileSize=%d)", pAddr.addr(), fileSize); return CELL_OK; } -int cellPamfReaderInitialize(mem_ptr_t pSelf, mem_ptr_t pAddr, u64 fileSize, u32 attribute) +int cellPamfReaderInitialize(vm::ptr pSelf, vm::ptr pAddr, u64 fileSize, u32 attribute) { - cellPamf->Warning("cellPamfReaderInitialize(pSelf=0x%x, pAddr=0x%x, fileSize=%d, attribute=0x%x)", pSelf.GetAddr(), pAddr.GetAddr(), fileSize, attribute); + cellPamf->Warning("cellPamfReaderInitialize(pSelf=0x%x, pAddr=0x%x, fileSize=%d, attribute=0x%x)", pSelf.addr(), pAddr.addr(), fileSize, attribute); if (fileSize) { @@ -181,7 +181,7 @@ int cellPamfReaderInitialize(mem_ptr_t pSelf, mem_ptr_tfileSize = ((u64)pAddr->data_offset << 11) + ((u64)pAddr->data_size << 11); } - pSelf->pAddr = pAddr.GetAddr(); + pSelf->pAddr = vm::ptr::make(pAddr.addr()); if (attribute & CELL_PAMF_ATTRIBUTE_VERIFY_ON) { @@ -192,49 +192,49 @@ int cellPamfReaderInitialize(mem_ptr_t pSelf, mem_ptr_t pSelf, mem_ptr_t pTimeStamp) +int cellPamfReaderGetPresentationStartTime(vm::ptr pSelf, vm::ptr pTimeStamp) { - cellPamf->Warning("cellPamfReaderGetPresentationStartTime(pSelf=0x%x, pTimeStamp_addr=0x%x)", pSelf.GetAddr(), pTimeStamp.GetAddr()); + cellPamf->Warning("cellPamfReaderGetPresentationStartTime(pSelf=0x%x, pTimeStamp_addr=0x%x)", pSelf.addr(), pTimeStamp.addr()); - const mem_ptr_t pAddr(pSelf->pAddr); + const vm::ptr pAddr(pSelf->pAddr); const u32 upper = (u16)pAddr->start_pts_high; pTimeStamp->upper = upper; pTimeStamp->lower = pAddr->start_pts_low; return CELL_OK; } -int cellPamfReaderGetPresentationEndTime(mem_ptr_t pSelf, mem_ptr_t pTimeStamp) +int cellPamfReaderGetPresentationEndTime(vm::ptr pSelf, vm::ptr pTimeStamp) { - cellPamf->Warning("cellPamfReaderGetPresentationEndTime(pSelf=0x%x, pTimeStamp_addr=0x%x)", pSelf.GetAddr(), pTimeStamp.GetAddr()); + cellPamf->Warning("cellPamfReaderGetPresentationEndTime(pSelf=0x%x, pTimeStamp_addr=0x%x)", pSelf.addr(), pTimeStamp.addr()); - const mem_ptr_t pAddr(pSelf->pAddr); + const vm::ptr pAddr(pSelf->pAddr); const u32 upper = (u16)pAddr->end_pts_high; pTimeStamp->upper = upper; pTimeStamp->lower = pAddr->end_pts_low; return CELL_OK; } -int cellPamfReaderGetMuxRateBound(mem_ptr_t pSelf) +int cellPamfReaderGetMuxRateBound(vm::ptr pSelf) { - cellPamf->Warning("cellPamfReaderGetMuxRateBound(pSelf=0x%x)", pSelf.GetAddr()); + cellPamf->Warning("cellPamfReaderGetMuxRateBound(pSelf=0x%x)", pSelf.addr()); - const mem_ptr_t pAddr(pSelf->pAddr); + const vm::ptr pAddr(pSelf->pAddr); return pAddr->mux_rate_max; } -int cellPamfReaderGetNumberOfStreams(mem_ptr_t pSelf) +int cellPamfReaderGetNumberOfStreams(vm::ptr pSelf) { - cellPamf->Warning("cellPamfReaderGetNumberOfStreams(pSelf=0x%x)", pSelf.GetAddr()); + cellPamf->Warning("cellPamfReaderGetNumberOfStreams(pSelf=0x%x)", pSelf.addr()); - const mem_ptr_t pAddr(pSelf->pAddr); + const vm::ptr pAddr(pSelf->pAddr); return pAddr->stream_count; } -int cellPamfReaderGetNumberOfSpecificStreams(mem_ptr_t pSelf, u8 streamType) +int cellPamfReaderGetNumberOfSpecificStreams(vm::ptr pSelf, u8 streamType) { - cellPamf->Warning("cellPamfReaderGetNumberOfSpecificStreams(pSelf=0x%x, streamType=%d)", pSelf.GetAddr(), streamType); + cellPamf->Warning("cellPamfReaderGetNumberOfSpecificStreams(pSelf=0x%x, streamType=%d)", pSelf.addr(), streamType); - const mem_ptr_t pAddr(pSelf->pAddr); + const vm::ptr pAddr(pSelf->pAddr); int counts[6] = {0, 0, 0, 0, 0, 0}; @@ -261,11 +261,11 @@ int cellPamfReaderGetNumberOfSpecificStreams(mem_ptr_t pSelf, u8 } } -int cellPamfReaderSetStreamWithIndex(mem_ptr_t pSelf, u8 streamIndex) +int cellPamfReaderSetStreamWithIndex(vm::ptr pSelf, u8 streamIndex) { - cellPamf->Warning("cellPamfReaderSetStreamWithIndex(pSelf=0x%x, streamIndex=%d)", pSelf.GetAddr(), streamIndex); + cellPamf->Warning("cellPamfReaderSetStreamWithIndex(pSelf=0x%x, streamIndex=%d)", pSelf.addr(), streamIndex); - const mem_ptr_t pAddr(pSelf->pAddr); + const vm::ptr pAddr(pSelf->pAddr); if (streamIndex < pAddr->stream_count) { @@ -279,11 +279,11 @@ int cellPamfReaderSetStreamWithIndex(mem_ptr_t pSelf, u8 streamI } } -int cellPamfReaderSetStreamWithTypeAndChannel(mem_ptr_t pSelf, u8 streamType, u8 ch) +int cellPamfReaderSetStreamWithTypeAndChannel(vm::ptr pSelf, u8 streamType, u8 ch) { - cellPamf->Warning("cellPamfReaderSetStreamWithTypeAndChannel(pSelf=0x%x, streamType=%d, ch=%d)", pSelf.GetAddr(), streamType, ch); + cellPamf->Warning("cellPamfReaderSetStreamWithTypeAndChannel(pSelf=0x%x, streamType=%d, ch=%d)", pSelf.addr(), streamType, ch); - const mem_ptr_t pAddr(pSelf->pAddr); + const vm::ptr pAddr(pSelf->pAddr); if (streamType > 5) { @@ -307,11 +307,11 @@ int cellPamfReaderSetStreamWithTypeAndChannel(mem_ptr_t pSelf, u return CELL_PAMF_ERROR_STREAM_NOT_FOUND; } -int cellPamfReaderSetStreamWithTypeAndIndex(mem_ptr_t pSelf, u8 streamType, u8 streamIndex) +int cellPamfReaderSetStreamWithTypeAndIndex(vm::ptr pSelf, u8 streamType, u8 streamIndex) { - cellPamf->Warning("cellPamfReaderSetStreamWithTypeAndIndex(pSelf=0x%x, streamType=%d, streamIndex=%d)", pSelf.GetAddr(), streamType, streamIndex); + cellPamf->Warning("cellPamfReaderSetStreamWithTypeAndIndex(pSelf=0x%x, streamType=%d, streamIndex=%d)", pSelf.addr(), streamType, streamIndex); - const mem_ptr_t pAddr(pSelf->pAddr); + const vm::ptr pAddr(pSelf->pAddr); u32 found = 0; @@ -354,43 +354,43 @@ int cellPamfReaderSetStreamWithTypeAndIndex(mem_ptr_t pSelf, u8 return CELL_PAMF_ERROR_STREAM_NOT_FOUND; } -int cellPamfStreamTypeToEsFilterId(u8 type, u8 ch, mem_ptr_t pEsFilterId) +int cellPamfStreamTypeToEsFilterId(u8 type, u8 ch, vm::ptr pEsFilterId) { - cellPamf->Warning("cellPamfStreamTypeToEsFilterId(type=%d, ch=%d, pEsFilterId_addr=0x%x)", type, ch, pEsFilterId.GetAddr()); + cellPamf->Warning("cellPamfStreamTypeToEsFilterId(type=%d, ch=%d, pEsFilterId_addr=0x%x)", type, ch, pEsFilterId.addr()); return pamfStreamTypeToEsFilterId(type, ch, pEsFilterId); } -int cellPamfReaderGetStreamIndex(mem_ptr_t pSelf) +int cellPamfReaderGetStreamIndex(vm::ptr pSelf) { - cellPamf->Log("cellPamfReaderGetStreamIndex(pSelf=0x%x)", pSelf.GetAddr()); + cellPamf->Log("cellPamfReaderGetStreamIndex(pSelf=0x%x)", pSelf.addr()); return pSelf->stream; } -int cellPamfReaderGetStreamTypeAndChannel(mem_ptr_t pSelf, vm::ptr pType, vm::ptr pCh) +int cellPamfReaderGetStreamTypeAndChannel(vm::ptr pSelf, vm::ptr pType, vm::ptr pCh) { cellPamf->Warning("cellPamfReaderGetStreamTypeAndChannel(pSelf=0x%x (stream=%d), pType_addr=0x%x, pCh_addr=0x%x", - pSelf.GetAddr(), pSelf->stream, pType.addr(), pCh.addr()); + pSelf.addr(), pSelf->stream, pType.addr(), pCh.addr()); *pType = pamfGetStreamType(pSelf, pSelf->stream); *pCh = pamfGetStreamChannel(pSelf, pSelf->stream); return CELL_OK; } -int cellPamfReaderGetEsFilterId(mem_ptr_t pSelf, mem_ptr_t pEsFilterId) +int cellPamfReaderGetEsFilterId(vm::ptr pSelf, vm::ptr pEsFilterId) { - cellPamf->Warning("cellPamfReaderGetEsFilterId(pSelf=0x%x (stream=%d), pEsFilterId_addr=0x%x)", pSelf.GetAddr(), pSelf->stream, pEsFilterId.GetAddr()); + cellPamf->Warning("cellPamfReaderGetEsFilterId(pSelf=0x%x (stream=%d), pEsFilterId_addr=0x%x)", pSelf.addr(), pSelf->stream, pEsFilterId.addr()); return pamfStreamTypeToEsFilterId(pamfGetStreamType(pSelf, pSelf->stream), pamfGetStreamChannel(pSelf, pSelf->stream), pEsFilterId); } -int cellPamfReaderGetStreamInfo(mem_ptr_t pSelf, u32 pInfo_addr, u32 size) +int cellPamfReaderGetStreamInfo(vm::ptr pSelf, u32 pInfo_addr, u32 size) { - cellPamf->Warning("cellPamfReaderGetStreamInfo(pSelf=0x%x, stream=%d, pInfo_addr=0x%x, size=%d)", pSelf.GetAddr(), pSelf->stream, pInfo_addr, size); + cellPamf->Warning("cellPamfReaderGetStreamInfo(pSelf=0x%x, stream=%d, pInfo_addr=0x%x, size=%d)", pSelf.addr(), pSelf->stream, pInfo_addr, size); - const mem_ptr_t pAddr(pSelf->pAddr); + const vm::ptr pAddr(pSelf->pAddr); memset(Memory + pInfo_addr, 0, size); @@ -398,8 +398,8 @@ int cellPamfReaderGetStreamInfo(mem_ptr_t pSelf, u32 pInfo_addr, { case CELL_PAMF_STREAM_TYPE_AVC: { - mem_ptr_t pInfo(pInfo_addr); - mem_ptr_t pAVC(pSelf->pAddr + 0x98 + pSelf->stream * 0x30); + auto pInfo = vm::ptr::make(pInfo_addr); + auto pAVC = vm::ptr::make(pSelf->pAddr.addr() + 0x98 + pSelf->stream * 0x30); if (size != sizeof(CellPamfAvcInfo)) { @@ -434,8 +434,8 @@ int cellPamfReaderGetStreamInfo(mem_ptr_t pSelf, u32 pInfo_addr, break; case CELL_PAMF_STREAM_TYPE_ATRAC3PLUS: { - mem_ptr_t pInfo(pInfo_addr); - mem_ptr_t pAudio(pSelf->pAddr + 0x98 + pSelf->stream * 0x30); + auto pInfo = vm::ptr::make(pInfo_addr); + auto pAudio = vm::ptr::make(pSelf->pAddr.addr() + 0x98 + pSelf->stream * 0x30); if (size != sizeof(CellPamfAtrac3plusInfo)) { @@ -449,8 +449,8 @@ int cellPamfReaderGetStreamInfo(mem_ptr_t pSelf, u32 pInfo_addr, break; case CELL_PAMF_STREAM_TYPE_AC3: { - mem_ptr_t pInfo(pInfo_addr); - mem_ptr_t pAudio(pSelf->pAddr + 0x98 + pSelf->stream * 0x30); + auto pInfo = vm::ptr::make(pInfo_addr); + auto pAudio = vm::ptr::make(pSelf->pAddr + 0x98 + pSelf->stream * 0x30); if (size != sizeof(CellPamfAc3Info)) { @@ -464,8 +464,8 @@ int cellPamfReaderGetStreamInfo(mem_ptr_t pSelf, u32 pInfo_addr, break; case CELL_PAMF_STREAM_TYPE_PAMF_LPCM: { - mem_ptr_t pInfo(pInfo_addr); - mem_ptr_t pAudio(pSelf->pAddr + 0x98 + pSelf->stream * 0x30); + auto pInfo = vm::ptr::make(pInfo_addr); + auto pAudio = vm::ptr::make(pSelf->pAddr + 0x98 + pSelf->stream * 0x30); if (size != sizeof(CellPamfLpcmInfo)) { @@ -493,46 +493,46 @@ int cellPamfReaderGetStreamInfo(mem_ptr_t pSelf, u32 pInfo_addr, return CELL_OK; } -int cellPamfReaderGetNumberOfEp(mem_ptr_t pSelf) +int cellPamfReaderGetNumberOfEp(vm::ptr pSelf) { - cellPamf->Warning("cellPamfReaderGetNumberOfEp(pSelf=0x%x, stream=%d)", pSelf.GetAddr(), pSelf->stream); + cellPamf->Warning("cellPamfReaderGetNumberOfEp(pSelf=0x%x, stream=%d)", pSelf.addr(), pSelf->stream); - const mem_ptr_t pAddr(pSelf->pAddr); + const vm::ptr pAddr(pSelf->pAddr); return pAddr->stream_headers[pSelf->stream].ep_num; } -int cellPamfReaderGetEpIteratorWithIndex(mem_ptr_t pSelf, u32 epIndex, mem_ptr_t pIt) +int cellPamfReaderGetEpIteratorWithIndex(vm::ptr pSelf, u32 epIndex, vm::ptr pIt) { - cellPamf->Todo("cellPamfReaderGetEpIteratorWithIndex(pSelf=0x%x, stream=%d, epIndex=%d, pIt_addr=0x%x)", pSelf.GetAddr(), pSelf->stream, epIndex, pIt.GetAddr()); + cellPamf->Todo("cellPamfReaderGetEpIteratorWithIndex(pSelf=0x%x, stream=%d, epIndex=%d, pIt_addr=0x%x)", pSelf.addr(), pSelf->stream, epIndex, pIt.addr()); - const mem_ptr_t pAddr(pSelf->pAddr); + const vm::ptr pAddr(pSelf->pAddr); //TODO: return CELL_OK; } -int cellPamfReaderGetEpIteratorWithTimeStamp(mem_ptr_t pSelf, mem_ptr_t pTimeStamp, mem_ptr_t pIt) +int cellPamfReaderGetEpIteratorWithTimeStamp(vm::ptr pSelf, vm::ptr pTimeStamp, vm::ptr pIt) { - cellPamf->Todo("cellPamfReaderGetEpIteratorWithTimeStamp(pSelf=0x%x, pTimeStamp_addr=0x%x, pIt_addr=0x%x)", pSelf.GetAddr(), pTimeStamp.GetAddr(), pIt.GetAddr()); + cellPamf->Todo("cellPamfReaderGetEpIteratorWithTimeStamp(pSelf=0x%x, pTimeStamp_addr=0x%x, pIt_addr=0x%x)", pSelf.addr(), pTimeStamp.addr(), pIt.addr()); - const mem_ptr_t pAddr(pSelf->pAddr); + const vm::ptr pAddr(pSelf->pAddr); //TODO: return CELL_OK; } -int cellPamfEpIteratorGetEp(mem_ptr_t pIt, mem_ptr_t pEp) +int cellPamfEpIteratorGetEp(vm::ptr pIt, vm::ptr pEp) { - cellPamf->Todo("cellPamfEpIteratorGetEp(pIt_addr=0x%x, pEp_addr=0x%x)", pIt.GetAddr(), pEp.GetAddr()); + cellPamf->Todo("cellPamfEpIteratorGetEp(pIt_addr=0x%x, pEp_addr=0x%x)", pIt.addr(), pEp.addr()); //TODO: return CELL_OK; } -int cellPamfEpIteratorMove(mem_ptr_t pIt, s32 steps, mem_ptr_t pEp) +int cellPamfEpIteratorMove(vm::ptr pIt, s32 steps, vm::ptr pEp) { - cellPamf->Todo("cellPamfEpIteratorMove(pIt_addr=0x%x, steps=%d, pEp_addr=0x%x)", pIt.GetAddr(), steps, pEp.GetAddr()); + cellPamf->Todo("cellPamfEpIteratorMove(pIt_addr=0x%x, steps=%d, pEp_addr=0x%x)", pIt.addr(), steps, pEp.addr()); //TODO: diff --git a/rpcs3/Emu/SysCalls/Modules/cellPamf.h b/rpcs3/Emu/SysCalls/Modules/cellPamf.h index fd1b9a6a7e..468d735ed9 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellPamf.h +++ b/rpcs3/Emu/SysCalls/Modules/cellPamf.h @@ -330,7 +330,7 @@ struct CellPamfReader { //this struct can be used in any way, if it is not accessed directly by virtual CPU //be_t internalData[16]; - u32 pAddr; + vm::ptr pAddr; int stream; u64 fileSize; u32 internalData[28]; diff --git a/rpcs3/Emu/SysCalls/Modules/cellPngDec.cpp b/rpcs3/Emu/SysCalls/Modules/cellPngDec.cpp index daf21dded9..1342119fe2 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellPngDec.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellPngDec.cpp @@ -51,10 +51,10 @@ int cellPngDecDestroy(u32 mainHandle) return CELL_OK; } -int cellPngDecOpen(u32 mainHandle, vm::ptr> subHandle, mem_ptr_t src, u32 openInfo) +int cellPngDecOpen(u32 mainHandle, vm::ptr> subHandle, vm::ptr src, u32 openInfo) { cellPngDec->Warning("cellPngDecOpen(mainHandle=0x%x, subHandle=0x%x, src_addr=0x%x, openInfo=0x%x)", - mainHandle, subHandle.addr(), src.GetAddr(), openInfo); + mainHandle, subHandle.addr(), src.addr(), openInfo); CellPngDecSubHandle *current_subHandle = new CellPngDecSubHandle; current_subHandle->fd = 0; @@ -75,7 +75,7 @@ int cellPngDecOpen(u32 mainHandle, vm::ptr> subHandle, mem_ptr_t sb; // Alloc a CellFsStat struct - ret = cellFsFstat(current_subHandle->fd, sb.addr()); + ret = cellFsFstat(current_subHandle->fd, sb); if(ret != CELL_OK) return ret; current_subHandle->fileSize = sb->st_size; // Get CellFsStat.st_size break; @@ -87,10 +87,10 @@ int cellPngDecOpen(u32 mainHandle, vm::ptr> subHandle, mem_ptr_t> subHandle, mem_ptr_t src, u32 openInfo, mem_ptr_t cbCtrlStrm, mem_ptr_t opnParam) +int cellPngDecExtOpen(u32 mainHandle, vm::ptr> subHandle, vm::ptr src, u32 openInfo, vm::ptr cbCtrlStrm, vm::ptr opnParam) { cellPngDec->Warning("cellPngDecExtOpen(mainHandle=0x%x, subHandle=0x%x, src_addr=0x%x, openInfo=0x%x, cbCtrlStrm_addr=0x%x, opnParam=0x%x)", - mainHandle, subHandle.addr(), src.GetAddr(), openInfo, cbCtrlStrm.GetAddr(), opnParam.GetAddr()); + mainHandle, subHandle.addr(), src.addr(), openInfo, cbCtrlStrm.addr(), opnParam.addr()); cellPngDec->Warning("*** cbCtrlStrm->cbCtrlStrmFunc_addr=0x%x", cbCtrlStrm->cbCtrlStrmFunc.addr()); @@ -118,9 +118,9 @@ int cellPngDecClose(u32 mainHandle, u32 subHandle) return CELL_OK; } -int cellPngDecReadHeader(u32 mainHandle, u32 subHandle, mem_ptr_t info) +int cellPngDecReadHeader(u32 mainHandle, u32 subHandle, vm::ptr info) { - cellPngDec->Warning("cellPngDecReadHeader(mainHandle=0x%x, subHandle=0x%x, info_addr=0x%x)", mainHandle, subHandle, info.GetAddr()); + cellPngDec->Warning("cellPngDecReadHeader(mainHandle=0x%x, subHandle=0x%x, info_addr=0x%x)", mainHandle, subHandle, info.addr()); CellPngDecSubHandle* subHandle_data; if(!cellPngDec->CheckId(subHandle, subHandle_data)) return CELL_PNGDEC_ERROR_FATAL; @@ -176,18 +176,18 @@ int cellPngDecReadHeader(u32 mainHandle, u32 subHandle, mem_ptr_t info, mem_ptr_t extInfo) +int cellPngDecExtReadHeader(u32 mainHandle, u32 subHandle, vm::ptr info, vm::ptr extInfo) { cellPngDec->Warning("cellPngDecExtReadHeader(mainHandle=0x%x, subHandle=0x%x, info_addr=0x%x, extInfo_addr=0x%x)", - mainHandle, subHandle, info.GetAddr(), extInfo.GetAddr()); + mainHandle, subHandle, info.addr(), extInfo.addr()); return cellPngDecReadHeader(mainHandle, subHandle, info); } -int cellPngDecDecodeData(u32 mainHandle, u32 subHandle, vm::ptr data, const mem_ptr_t dataCtrlParam, mem_ptr_t dataOutInfo) +int cellPngDecDecodeData(u32 mainHandle, u32 subHandle, vm::ptr data, const vm::ptr dataCtrlParam, vm::ptr dataOutInfo) { cellPngDec->Warning("cellPngDecDecodeData(mainHandle=0x%x, subHandle=0x%x, data_addr=0x%x, dataCtrlParam_addr=0x%x, dataOutInfo_addr=0x%x)", - mainHandle, subHandle, data.addr(), dataCtrlParam.GetAddr(), dataOutInfo.GetAddr()); + mainHandle, subHandle, data.addr(), dataCtrlParam.addr(), dataOutInfo.addr()); dataOutInfo->status = CELL_PNGDEC_DEC_STATUS_STOP; CellPngDecSubHandle* subHandle_data; @@ -308,21 +308,21 @@ int cellPngDecDecodeData(u32 mainHandle, u32 subHandle, vm::ptr data, const return CELL_OK; } -int cellPngDecExtDecodeData(u32 mainHandle, u32 subHandle, vm::ptr data, const mem_ptr_t dataCtrlParam, - mem_ptr_t dataOutInfo, mem_ptr_t cbCtrlDisp, mem_ptr_t dispParam) +int cellPngDecExtDecodeData(u32 mainHandle, u32 subHandle, vm::ptr data, const vm::ptr dataCtrlParam, + vm::ptr dataOutInfo, vm::ptr cbCtrlDisp, vm::ptr dispParam) { cellPngDec->Warning("cellPngDecExtDecodeData(mainHandle=0x%x, subHandle=0x%x, data_addr=0x%x, dataCtrlParam_addr=0x%x, dataOutInfo_addr=0x%x, cbCtrlDisp_addr=0x%x, dispParam=0x%x)", - mainHandle, subHandle, data.addr(), dataCtrlParam.GetAddr(), dataOutInfo.GetAddr(), cbCtrlDisp.GetAddr(), dispParam.GetAddr()); + mainHandle, subHandle, data.addr(), dataCtrlParam.addr(), dataOutInfo.addr(), cbCtrlDisp.addr(), dispParam.addr()); - if (cbCtrlDisp.GetAddr()) cellPngDec->Warning("*** cbCtrlDisp->cbCtrlDispFunc_addr=0x%x", (u32)cbCtrlDisp->cbCtrlDispFunc_addr); + if (cbCtrlDisp) cellPngDec->Warning("*** cbCtrlDisp->cbCtrlDispFunc_addr=0x%x", (u32)cbCtrlDisp->cbCtrlDispFunc_addr); return cellPngDecDecodeData(mainHandle, subHandle, data, dataCtrlParam, dataOutInfo); } -int cellPngDecSetParameter(u32 mainHandle, u32 subHandle, const mem_ptr_t inParam, mem_ptr_t outParam) +int cellPngDecSetParameter(u32 mainHandle, u32 subHandle, const vm::ptr inParam, vm::ptr outParam) { cellPngDec->Warning("cellPngDecSetParameter(mainHandle=0x%x, subHandle=0x%x, inParam_addr=0x%x, outParam_addr=0x%x)", - mainHandle, subHandle, inParam.GetAddr(), outParam.GetAddr()); + mainHandle, subHandle, inParam.addr(), outParam.addr()); CellPngDecSubHandle* subHandle_data; if(!cellPngDec->CheckId(subHandle, subHandle_data)) @@ -360,11 +360,11 @@ int cellPngDecSetParameter(u32 mainHandle, u32 subHandle, const mem_ptr_t inParam, mem_ptr_t outParam, - mem_ptr_t extInParam, mem_ptr_t extOutParam) +int cellPngDecExtSetParameter(u32 mainHandle, u32 subHandle, const vm::ptr inParam, vm::ptr outParam, + vm::ptr extInParam, vm::ptr extOutParam) { cellPngDec->Warning("cellPngDecExtSetParameter(mainHandle=0x%x, subHandle=0x%x, inParam_addr=0x%x, outParam_addr=0x%x, extInParam=0x%x, extOutParam=0x%x", - mainHandle, subHandle, inParam.GetAddr(), outParam.GetAddr(), extInParam.GetAddr(), extOutParam.GetAddr()); + mainHandle, subHandle, inParam.addr(), outParam.addr(), extInParam.addr(), extOutParam.addr()); return cellPngDecSetParameter(mainHandle, subHandle, inParam, outParam); } diff --git a/rpcs3/Emu/SysCalls/Modules/cellResc.cpp b/rpcs3/Emu/SysCalls/Modules/cellResc.cpp index c780234cb8..4759d3eeba 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellResc.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellResc.cpp @@ -37,7 +37,7 @@ void BuildupVertexBufferNR() float U_PS0 = UV_CENTER - U_PS; float U_PS1 = UV_CENTER + U_PS; - mem_ptr_t vv(s_rescInternalInstance->m_vertexArrayEA); + auto vv = vm::ptr::make(s_rescInternalInstance->m_vertexArrayEA); if (s_rescInternalInstance->m_dstMode == CELL_RESC_720x480 || s_rescInternalInstance->m_dstMode == CELL_RESC_720x576) { @@ -127,7 +127,7 @@ void BuildupVertexBufferUN(s32 srcIdx) float U2_FS1 = (float)s_rescInternalInstance->m_dstWidth; float V2_FS1 = (float)s_rescInternalInstance->m_dstHeight; - mem_ptr_t vv(s_rescInternalInstance->m_vertexArrayEA); + auto vv = vm::ptr::make(s_rescInternalInstance->m_vertexArrayEA); if (s_rescInternalInstance->m_dstMode == CELL_RESC_720x480 || s_rescInternalInstance->m_dstMode == CELL_RESC_720x576) { @@ -171,7 +171,7 @@ UN_PANSCAN: return; } -inline int InternalVersion(mem_ptr_t conf) +inline int InternalVersion(vm::ptr conf) { switch ((u32)conf->size) { @@ -323,7 +323,7 @@ int CalculateMaxColorBuffersSize() return maxBufSize; } -bool CheckInitConfig(mem_ptr_t initConfig) +bool CheckInitConfig(vm::ptr initConfig) { if ((initConfig->resourcePolicy & ~((u32)0x3)) || (initConfig->supportModes & 0xF) == 0 || (initConfig->ratioMode > 2) || (initConfig->palTemporalMode > 5)) { @@ -426,7 +426,7 @@ void InitMembers() } } -void SetupRsxRenderingStates(mem_ptr_t& cntxt) +void SetupRsxRenderingStates(vm::ptr& cntxt) { //TODO: use cntxt GSLockCurrent lock(GS_LOCK_WAIT_FLUSH); @@ -473,7 +473,7 @@ void SetupRsxRenderingStates(mem_ptr_t& cntxt) } } -void SetupVertexArrays(mem_ptr_t& cntxt) +void SetupVertexArrays(vm::ptr& cntxt) { GSLockCurrent lock(GS_LOCK_WAIT_FLUSH); GSRender& r = Emu.GetGSManager().GetRender(); @@ -481,7 +481,7 @@ void SetupVertexArrays(mem_ptr_t& cntxt) //TODO } -void SetupSurfaces(mem_ptr_t& cntxt) +void SetupSurfaces(vm::ptr& cntxt) { bool isMrt; u32 dstOffset0, dstOffset1; @@ -529,9 +529,9 @@ void SetupSurfaces(mem_ptr_t& cntxt) } // Module Functions -int cellRescInit(mem_ptr_t initConfig) +int cellRescInit(vm::ptr initConfig) { - cellResc->Warning("cellRescInit(initConfig_addr=0x%x)", initConfig.GetAddr()); + cellResc->Warning("cellRescInit(initConfig_addr=0x%x)", initConfig.addr()); if (s_rescInternalInstance->m_bInitialized) { @@ -539,7 +539,7 @@ int cellRescInit(mem_ptr_t initConfig) return CELL_RESC_ERROR_REINITIALIZED; } - if (InternalVersion(initConfig.GetAddr()) == -1 || !CheckInitConfig(initConfig)) + if (InternalVersion(initConfig) == -1 || !CheckInitConfig(initConfig)) { cellResc->Error("cellRescInit : CELL_RESC_ERROR_BAD_ARGUMENT"); return CELL_RESC_ERROR_BAD_ARGUMENT; @@ -608,9 +608,9 @@ int cellRescVideoOutResolutionId2RescBufferMode(u32 resolutionId, vm::ptr dsts) +int cellRescSetDsts(u32 dstsMode, vm::ptr dsts) { - cellResc->Log("cellRescSetDsts(dstsMode=%d, CellRescDsts_addr=0x%x)", dstsMode, dsts.GetAddr()); + cellResc->Log("cellRescSetDsts(dstsMode=%d, CellRescDsts_addr=0x%x)", dstsMode, dsts.addr()); if (!s_rescInternalInstance->m_bInitialized) { @@ -885,9 +885,9 @@ int cellRescGetNumColorBuffers(u32 dstMode, u32 palTemporalMode, u32 reserved) : 2; } -int cellRescGcmSurface2RescSrc(mem_ptr_t gcmSurface, mem_ptr_t rescSrc) +int cellRescGcmSurface2RescSrc(vm::ptr gcmSurface, vm::ptr rescSrc) { - cellResc->Log("cellRescGcmSurface2RescSrc(gcmSurface_addr=0x%x, rescSrc_addr=0x%x)", gcmSurface.GetAddr(), rescSrc.GetAddr()); + cellResc->Log("cellRescGcmSurface2RescSrc(gcmSurface_addr=0x%x, rescSrc_addr=0x%x)", gcmSurface.addr(), rescSrc.addr()); u8 textureFormat = GcmSurfaceFormat2GcmTextureFormat(gcmSurface->colorFormat, gcmSurface->type); s32 xW = 1, xH = 1; @@ -916,9 +916,9 @@ int cellRescGcmSurface2RescSrc(mem_ptr_t gcmSurface, mem_ptr_t src) +int cellRescSetSrc(s32 idx, vm::ptr src) { - cellResc->Log("cellRescSetSrc(idx=0x%x, src_addr=0x%x)", idx, src.GetAddr()); + cellResc->Log("cellRescSetSrc(idx=0x%x, src_addr=0x%x)", idx, src.addr()); if(!s_rescInternalInstance->m_bInitialized) { @@ -951,9 +951,9 @@ int cellRescSetSrc(s32 idx, mem_ptr_t src) return 0; } -int cellRescSetConvertAndFlip(mem_ptr_t cntxt, s32 idx) +int cellRescSetConvertAndFlip(vm::ptr cntxt, s32 idx) { - cellResc->Log("cellRescSetConvertAndFlip(cntxt_addr=0x%x, indx=0x%x)", cntxt.GetAddr(), idx); + cellResc->Log("cellRescSetConvertAndFlip(cntxt_addr=0x%x, indx=0x%x)", cntxt.addr(), idx); if(!s_rescInternalInstance->m_bInitialized) { diff --git a/rpcs3/Emu/SysCalls/Modules/cellResc.h b/rpcs3/Emu/SysCalls/Modules/cellResc.h index 5ad753e197..9e3d2fa16e 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellResc.h +++ b/rpcs3/Emu/SysCalls/Modules/cellResc.h @@ -155,7 +155,7 @@ extern void cellGcmSetFlipHandler(u32 handler_addr); extern void cellGcmSetVBlankHandler(u32 handler_addr); extern int cellGcmAddressToOffset(u64 address, vm::ptr> offset); extern int cellGcmSetDisplayBuffer(u32 id, u32 offset, u32 pitch, u32 width, u32 height); -extern int cellGcmSetPrepareFlip(mem_ptr_t ctx, u32 id); +extern int cellGcmSetPrepareFlip(vm::ptr ctx, u32 id); extern int cellGcmSetSecondVFrequency(u32 freq); extern u32 cellGcmGetLabelAddress(u8 index); extern u32 cellGcmGetTiledPitchSize(u32 size); diff --git a/rpcs3/Emu/SysCalls/Modules/cellRtc.cpp b/rpcs3/Emu/SysCalls/Modules/cellRtc.cpp index 6449393eba..d6dd962c2b 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellRtc.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellRtc.cpp @@ -24,18 +24,18 @@ u64 convertToWin32FILETIME(u16 seconds, u16 minutes, u16 hours, u16 days, int ye return win32filetime; } -int cellRtcGetCurrentTick(mem_ptr_t pTick) +int cellRtcGetCurrentTick(vm::ptr pTick) { - cellRtc->Log("cellRtcGetCurrentTick(pTick=0x%x)", pTick.GetAddr()); + cellRtc->Log("cellRtcGetCurrentTick(pTick=0x%x)", pTick.addr()); rDateTime unow = rDateTime::UNow(); pTick->tick = unow.GetTicks(); return CELL_OK; } -int cellRtcGetCurrentClock(mem_ptr_t pClock, s32 iTimeZone) +int cellRtcGetCurrentClock(vm::ptr pClock, s32 iTimeZone) { - cellRtc->Log("cellRtcGetCurrentClock(pClock=0x%x, time_zone=%d)", pClock.GetAddr(), iTimeZone); + cellRtc->Log("cellRtcGetCurrentClock(pClock=0x%x, time_zone=%d)", pClock.addr(), iTimeZone); rDateTime unow = rDateTime::UNow(); @@ -54,9 +54,9 @@ int cellRtcGetCurrentClock(mem_ptr_t pClock, s32 iTimeZone) return CELL_OK; } -int cellRtcGetCurrentClockLocalTime(mem_ptr_t pClock) +int cellRtcGetCurrentClockLocalTime(vm::ptr pClock) { - cellRtc->Log("cellRtcGetCurrentClockLocalTime(pClock=0x%x)", pClock.GetAddr()); + cellRtc->Log("cellRtcGetCurrentClockLocalTime(pClock=0x%x)", pClock.addr()); rDateTime unow = rDateTime::UNow(); @@ -71,9 +71,9 @@ int cellRtcGetCurrentClockLocalTime(mem_ptr_t pClock) return CELL_OK; } -int cellRtcFormatRfc2822(u32 pszDateTime_addr, mem_ptr_t pUtc, s32 iTimeZone) +int cellRtcFormatRfc2822(u32 pszDateTime_addr, vm::ptr pUtc, s32 iTimeZone) { - cellRtc->Log("cellRtcFormatRfc2822(pszDateTime_addr=0x%x, pUtc=0x%x, time_zone=%d)", pszDateTime_addr, pUtc.GetAddr(), iTimeZone); + cellRtc->Log("cellRtcFormatRfc2822(pszDateTime_addr=0x%x, pUtc=0x%x, time_zone=%d)", pszDateTime_addr, pUtc.addr(), iTimeZone); // Add time_zone as offset in minutes. rTimeSpan tz = rTimeSpan(0, (long) iTimeZone, 0, 0); @@ -89,9 +89,9 @@ int cellRtcFormatRfc2822(u32 pszDateTime_addr, mem_ptr_t pUtc, s32 return CELL_OK; } -int cellRtcFormatRfc2822LocalTime(u32 pszDateTime_addr, mem_ptr_t pUtc) +int cellRtcFormatRfc2822LocalTime(u32 pszDateTime_addr, vm::ptr pUtc) { - cellRtc->Log("cellRtcFormatRfc2822LocalTime(pszDateTime_addr=0x%x, pUtc=0x%x)", pszDateTime_addr, pUtc.GetAddr()); + cellRtc->Log("cellRtcFormatRfc2822LocalTime(pszDateTime_addr=0x%x, pUtc=0x%x)", pszDateTime_addr, pUtc.addr()); // Get date from ticks. rDateTime date = rDateTime((time_t)pUtc->tick); @@ -103,9 +103,9 @@ int cellRtcFormatRfc2822LocalTime(u32 pszDateTime_addr, mem_ptr_t p return CELL_OK; } -int cellRtcFormatRfc3339(u32 pszDateTime_addr, mem_ptr_t pUtc, s32 iTimeZone) +int cellRtcFormatRfc3339(u32 pszDateTime_addr, vm::ptr pUtc, s32 iTimeZone) { - cellRtc->Log("cellRtcFormatRfc3339(pszDateTime_addr=0x%x, pUtc=0x%x, iTimeZone=%d)", pszDateTime_addr, pUtc.GetAddr(), iTimeZone); + cellRtc->Log("cellRtcFormatRfc3339(pszDateTime_addr=0x%x, pUtc=0x%x, iTimeZone=%d)", pszDateTime_addr, pUtc.addr(), iTimeZone); // Add time_zone as offset in minutes. rTimeSpan tz = rTimeSpan(0, (long) iTimeZone, 0, 0); @@ -121,9 +121,9 @@ int cellRtcFormatRfc3339(u32 pszDateTime_addr, mem_ptr_t pUtc, s32 return CELL_OK; } -int cellRtcFormatRfc3339LocalTime(u32 pszDateTime_addr, mem_ptr_t pUtc) +int cellRtcFormatRfc3339LocalTime(u32 pszDateTime_addr, vm::ptr pUtc) { - cellRtc->Log("cellRtcFormatRfc3339LocalTime(pszDateTime_addr=0x%x, pUtc=0x%x)", pszDateTime_addr, pUtc.GetAddr()); + cellRtc->Log("cellRtcFormatRfc3339LocalTime(pszDateTime_addr=0x%x, pUtc=0x%x)", pszDateTime_addr, pUtc.addr()); // Get date from ticks. rDateTime date = rDateTime((time_t) pUtc->tick); @@ -135,9 +135,9 @@ int cellRtcFormatRfc3339LocalTime(u32 pszDateTime_addr, mem_ptr_t p return CELL_OK; } -int cellRtcParseDateTime(mem_ptr_t pUtc, u32 pszDateTime_addr) +int cellRtcParseDateTime(vm::ptr pUtc, u32 pszDateTime_addr) { - cellRtc->Log("cellRtcParseDateTime(pUtc=0x%x, pszDateTime_addr=0x%x)", pUtc.GetAddr(), pszDateTime_addr); + cellRtc->Log("cellRtcParseDateTime(pUtc=0x%x, pszDateTime_addr=0x%x)", pUtc.addr(), pszDateTime_addr); // Get date from formatted string. rDateTime date; @@ -149,9 +149,9 @@ int cellRtcParseDateTime(mem_ptr_t pUtc, u32 pszDateTime_addr) return CELL_OK; } -int cellRtcParseRfc3339(mem_ptr_t pUtc, u32 pszDateTime_addr) +int cellRtcParseRfc3339(vm::ptr pUtc, u32 pszDateTime_addr) { - cellRtc->Log("cellRtcParseRfc3339(pUtc=0x%x, pszDateTime_addr=0x%x)", pUtc.GetAddr(), pszDateTime_addr); + cellRtc->Log("cellRtcParseRfc3339(pUtc=0x%x, pszDateTime_addr=0x%x)", pUtc.addr(), pszDateTime_addr); // Get date from RFC3339 formatted string. rDateTime date; @@ -163,9 +163,9 @@ int cellRtcParseRfc3339(mem_ptr_t pUtc, u32 pszDateTime_addr) return CELL_OK; } -int cellRtcGetTick(mem_ptr_t pTime, mem_ptr_t pTick) +int cellRtcGetTick(vm::ptr pTime, vm::ptr pTick) { - cellRtc->Log("cellRtcGetTick(pTime=0x%x, pTick=0x%x)", pTime.GetAddr(), pTick.GetAddr()); + cellRtc->Log("cellRtcGetTick(pTime=0x%x, pTick=0x%x)", pTime.addr(), pTick.addr()); rDateTime datetime = rDateTime(pTime->day, (rDateTime::Month)pTime->month.ToLE(), pTime->year, pTime->hour, pTime->minute, pTime->second, (pTime->microsecond / 1000)); pTick->tick = datetime.GetTicks(); @@ -173,9 +173,9 @@ int cellRtcGetTick(mem_ptr_t pTime, mem_ptr_t pTic return CELL_OK; } -int cellRtcSetTick(mem_ptr_t pTime, mem_ptr_t pTick) +int cellRtcSetTick(vm::ptr pTime, vm::ptr pTick) { - cellRtc->Log("cellRtcSetTick(pTime=0x%x, pTick=0x%x)", pTime.GetAddr(), pTick.GetAddr()); + cellRtc->Log("cellRtcSetTick(pTime=0x%x, pTick=0x%x)", pTime.addr(), pTick.addr()); rDateTime date = rDateTime((time_t)pTick->tick); @@ -190,17 +190,17 @@ int cellRtcSetTick(mem_ptr_t pTime, mem_ptr_t pTic return CELL_OK; } -int cellRtcTickAddTicks(mem_ptr_t pTick0, mem_ptr_t pTick1, s64 lAdd) +int cellRtcTickAddTicks(vm::ptr pTick0, vm::ptr pTick1, s64 lAdd) { - cellRtc->Log("cellRtcTickAddTicks(pTick0=0x%x, pTick1=0x%x, lAdd=%lld)", pTick0.GetAddr(), pTick1.GetAddr(), lAdd); + cellRtc->Log("cellRtcTickAddTicks(pTick0=0x%x, pTick1=0x%x, lAdd=%lld)", pTick0.addr(), pTick1.addr(), lAdd); pTick0->tick = pTick1->tick + lAdd; return CELL_OK; } -int cellRtcTickAddMicroseconds(mem_ptr_t pTick0, mem_ptr_t pTick1, s64 lAdd) +int cellRtcTickAddMicroseconds(vm::ptr pTick0, vm::ptr pTick1, s64 lAdd) { - cellRtc->Log("cellRtcTickAddMicroseconds(pTick0=0x%x, pTick1=0x%x, lAdd=%lld)", pTick0.GetAddr(), pTick1.GetAddr(), lAdd); + cellRtc->Log("cellRtcTickAddMicroseconds(pTick0=0x%x, pTick1=0x%x, lAdd=%lld)", pTick0.addr(), pTick1.addr(), lAdd); rDateTime date = rDateTime((time_t)pTick1->tick); rTimeSpan microseconds = rTimeSpan(0, 0, 0, lAdd / 1000); @@ -210,9 +210,9 @@ int cellRtcTickAddMicroseconds(mem_ptr_t pTick0, mem_ptr_t pTick0, mem_ptr_t pTick1, s64 lAdd) +int cellRtcTickAddSeconds(vm::ptr pTick0, vm::ptr pTick1, s64 lAdd) { - cellRtc->Log("cellRtcTickAddSeconds(pTick0=0x%x, pTick1=0x%x, lAdd=%lld)", pTick0.GetAddr(), pTick1.GetAddr(), lAdd); + cellRtc->Log("cellRtcTickAddSeconds(pTick0=0x%x, pTick1=0x%x, lAdd=%lld)", pTick0.addr(), pTick1.addr(), lAdd); rDateTime date = rDateTime((time_t)pTick1->tick); rTimeSpan seconds = rTimeSpan(0, 0, lAdd, 0); @@ -222,9 +222,9 @@ int cellRtcTickAddSeconds(mem_ptr_t pTick0, mem_ptr_t return CELL_OK; } -int cellRtcTickAddMinutes(mem_ptr_t pTick0, mem_ptr_t pTick1, s64 lAdd) +int cellRtcTickAddMinutes(vm::ptr pTick0, vm::ptr pTick1, s64 lAdd) { - cellRtc->Log("cellRtcTickAddMinutes(pTick0=0x%x, pTick1=0x%x, lAdd=%lld)", pTick0.GetAddr(), pTick1.GetAddr(), lAdd); + cellRtc->Log("cellRtcTickAddMinutes(pTick0=0x%x, pTick1=0x%x, lAdd=%lld)", pTick0.addr(), pTick1.addr(), lAdd); rDateTime date = rDateTime((time_t)pTick1->tick); rTimeSpan minutes = rTimeSpan(0, lAdd, 0, 0); // ??? @@ -234,9 +234,9 @@ int cellRtcTickAddMinutes(mem_ptr_t pTick0, mem_ptr_t return CELL_OK; } -int cellRtcTickAddHours(mem_ptr_t pTick0, mem_ptr_t pTick1, s32 iAdd) +int cellRtcTickAddHours(vm::ptr pTick0, vm::ptr pTick1, s32 iAdd) { - cellRtc->Log("cellRtcTickAddHours(pTick0=0x%x, pTick1=0x%x, iAdd=%d)", pTick0.GetAddr(), pTick1.GetAddr(), iAdd); + cellRtc->Log("cellRtcTickAddHours(pTick0=0x%x, pTick1=0x%x, iAdd=%d)", pTick0.addr(), pTick1.addr(), iAdd); rDateTime date = rDateTime((time_t)pTick1->tick); rTimeSpan hours = rTimeSpan(iAdd, 0, 0, 0); // ??? @@ -246,9 +246,9 @@ int cellRtcTickAddHours(mem_ptr_t pTick0, mem_ptr_t pT return CELL_OK; } -int cellRtcTickAddDays(mem_ptr_t pTick0, mem_ptr_t pTick1, s32 iAdd) +int cellRtcTickAddDays(vm::ptr pTick0, vm::ptr pTick1, s32 iAdd) { - cellRtc->Log("cellRtcTickAddDays(pTick0=0x%x, pTick1=0x%x, iAdd=%d)", pTick0.GetAddr(), pTick1.GetAddr(), iAdd); + cellRtc->Log("cellRtcTickAddDays(pTick0=0x%x, pTick1=0x%x, iAdd=%d)", pTick0.addr(), pTick1.addr(), iAdd); rDateTime date = rDateTime((time_t)pTick1->tick); rDateSpan days = rDateSpan(0, 0, 0, iAdd); // ??? @@ -258,9 +258,9 @@ int cellRtcTickAddDays(mem_ptr_t pTick0, mem_ptr_t pTi return CELL_OK; } -int cellRtcTickAddWeeks(mem_ptr_t pTick0, mem_ptr_t pTick1, s32 iAdd) +int cellRtcTickAddWeeks(vm::ptr pTick0, vm::ptr pTick1, s32 iAdd) { - cellRtc->Log("cellRtcTickAddWeeks(pTick0=0x%x, pTick1=0x%x, iAdd=%d)", pTick0.GetAddr(), pTick1.GetAddr(), iAdd); + cellRtc->Log("cellRtcTickAddWeeks(pTick0=0x%x, pTick1=0x%x, iAdd=%d)", pTick0.addr(), pTick1.addr(), iAdd); rDateTime date = rDateTime((time_t)pTick1->tick); rDateSpan weeks = rDateSpan(0, 0, iAdd, 0); @@ -270,9 +270,9 @@ int cellRtcTickAddWeeks(mem_ptr_t pTick0, mem_ptr_t pT return CELL_OK; } -int cellRtcTickAddMonths(mem_ptr_t pTick0, mem_ptr_t pTick1, s32 iAdd) +int cellRtcTickAddMonths(vm::ptr pTick0, vm::ptr pTick1, s32 iAdd) { - cellRtc->Log("cellRtcTickAddMonths(pTick0=0x%x, pTick1=0x%x, iAdd=%d)", pTick0.GetAddr(), pTick1.GetAddr(), iAdd); + cellRtc->Log("cellRtcTickAddMonths(pTick0=0x%x, pTick1=0x%x, iAdd=%d)", pTick0.addr(), pTick1.addr(), iAdd); rDateTime date = rDateTime((time_t)pTick1->tick); rDateSpan months = rDateSpan(0, iAdd, 0, 0); @@ -282,9 +282,9 @@ int cellRtcTickAddMonths(mem_ptr_t pTick0, mem_ptr_t p return CELL_OK; } -int cellRtcTickAddYears(mem_ptr_t pTick0, mem_ptr_t pTick1, s32 iAdd) +int cellRtcTickAddYears(vm::ptr pTick0, vm::ptr pTick1, s32 iAdd) { - cellRtc->Log("cellRtcTickAddYears(pTick0=0x%x, pTick1=0x%x, iAdd=%d)", pTick0.GetAddr(), pTick1.GetAddr(), iAdd); + cellRtc->Log("cellRtcTickAddYears(pTick0=0x%x, pTick1=0x%x, iAdd=%d)", pTick0.addr(), pTick1.addr(), iAdd); rDateTime date = rDateTime((time_t)pTick1->tick); rDateSpan years = rDateSpan(iAdd, 0, 0, 0); @@ -294,9 +294,9 @@ int cellRtcTickAddYears(mem_ptr_t pTick0, mem_ptr_t pT return CELL_OK; } -int cellRtcConvertUtcToLocalTime(mem_ptr_t pUtc, mem_ptr_t pLocalTime) +int cellRtcConvertUtcToLocalTime(vm::ptr pUtc, vm::ptr pLocalTime) { - cellRtc->Log("cellRtcConvertUtcToLocalTime(pUtc=0x%x, pLocalTime=0x%x)", pUtc.GetAddr(), pLocalTime.GetAddr()); + cellRtc->Log("cellRtcConvertUtcToLocalTime(pUtc=0x%x, pLocalTime=0x%x)", pUtc.addr(), pLocalTime.addr()); rDateTime time = rDateTime((time_t)pUtc->tick); rDateTime local_time = time.FromUTC(false); @@ -304,9 +304,9 @@ int cellRtcConvertUtcToLocalTime(mem_ptr_t pUtc, mem_ptr_t pLocalTime, mem_ptr_t pUtc) +int cellRtcConvertLocalTimeToUtc(vm::ptr pLocalTime, vm::ptr pUtc) { - cellRtc->Log("cellRtcConvertLocalTimeToUtc(pLocalTime=0x%x, pUtc=0x%x)", pLocalTime.GetAddr(), pUtc.GetAddr()); + cellRtc->Log("cellRtcConvertLocalTimeToUtc(pLocalTime=0x%x, pUtc=0x%x)", pLocalTime.addr(), pUtc.addr()); rDateTime time = rDateTime((time_t)pLocalTime->tick); rDateTime utc_time = time.ToUTC(false); @@ -314,9 +314,9 @@ int cellRtcConvertLocalTimeToUtc(mem_ptr_t pLocalTime, mem_ptr_t pDateTime, vm::ptr> puiDosTime) +int cellRtcGetDosTime(vm::ptr pDateTime, vm::ptr> puiDosTime) { - cellRtc->Log("cellRtcGetDosTime(pDateTime=0x%x, puiDosTime=0x%x)", pDateTime.GetAddr(), puiDosTime.addr()); + cellRtc->Log("cellRtcGetDosTime(pDateTime=0x%x, puiDosTime=0x%x)", pDateTime.addr(), puiDosTime.addr()); // Convert to DOS time. rDateTime date_time = rDateTime(pDateTime->day, (rDateTime::Month)pDateTime->month.ToLE(), pDateTime->year, pDateTime->hour, pDateTime->minute, pDateTime->second, (pDateTime->microsecond / 1000)); @@ -325,9 +325,9 @@ int cellRtcGetDosTime(mem_ptr_t pDateTime, vm::ptr> p return CELL_OK; } -int cellRtcGetTime_t(mem_ptr_t pDateTime, vm::ptr> piTime) +int cellRtcGetTime_t(vm::ptr pDateTime, vm::ptr> piTime) { - cellRtc->Log("cellRtcGetTime_t(pDateTime=0x%x, piTime=0x%x)", pDateTime.GetAddr(), piTime.addr()); + cellRtc->Log("cellRtcGetTime_t(pDateTime=0x%x, piTime=0x%x)", pDateTime.addr(), piTime.addr()); // Convert to POSIX time_t. rDateTime date_time = rDateTime(pDateTime->day, (rDateTime::Month)pDateTime->month.ToLE(), pDateTime->year, pDateTime->hour, pDateTime->minute, pDateTime->second, (pDateTime->microsecond / 1000)); @@ -337,9 +337,9 @@ int cellRtcGetTime_t(mem_ptr_t pDateTime, vm::ptr> pi return CELL_OK; } -int cellRtcGetWin32FileTime(mem_ptr_t pDateTime, vm::ptr> pulWin32FileTime) +int cellRtcGetWin32FileTime(vm::ptr pDateTime, vm::ptr> pulWin32FileTime) { - cellRtc->Log("cellRtcGetWin32FileTime(pDateTime=0x%x, pulWin32FileTime=0x%x)", pDateTime.GetAddr(), pulWin32FileTime.addr()); + cellRtc->Log("cellRtcGetWin32FileTime(pDateTime=0x%x, pulWin32FileTime=0x%x)", pDateTime.addr(), pulWin32FileTime.addr()); // Convert to WIN32 FILETIME. rDateTime date_time = rDateTime(pDateTime->day, (rDateTime::Month)pDateTime->month.ToLE(), pDateTime->year, pDateTime->hour, pDateTime->minute, pDateTime->second, (pDateTime->microsecond / 1000)); @@ -349,9 +349,9 @@ int cellRtcGetWin32FileTime(mem_ptr_t pDateTime, vm::ptr pDateTime, u32 uiDosTime) +int cellRtcSetDosTime(vm::ptr pDateTime, u32 uiDosTime) { - cellRtc->Log("cellRtcSetDosTime(pDateTime=0x%x, uiDosTime=0x%x)", pDateTime.GetAddr(), uiDosTime); + cellRtc->Log("cellRtcSetDosTime(pDateTime=0x%x, uiDosTime=0x%x)", pDateTime.addr(), uiDosTime); rDateTime date_time; rDateTime dos_time = date_time.SetFromDOS(uiDosTime); @@ -367,9 +367,9 @@ int cellRtcSetDosTime(mem_ptr_t pDateTime, u32 uiDosTime) return CELL_OK; } -int cellRtcSetTime_t(mem_ptr_t pDateTime, u64 iTime) +int cellRtcSetTime_t(vm::ptr pDateTime, u64 iTime) { - cellRtc->Log("cellRtcSetTime_t(pDateTime=0x%x, iTime=0x%llx)", pDateTime.GetAddr(), iTime); + cellRtc->Log("cellRtcSetTime_t(pDateTime=0x%x, iTime=0x%llx)", pDateTime.addr(), iTime); rDateTime date_time = rDateTime((time_t)iTime); @@ -384,7 +384,7 @@ int cellRtcSetTime_t(mem_ptr_t pDateTime, u64 iTime) return CELL_OK; } -int cellRtcSetWin32FileTime(mem_ptr_t pDateTime, u64 ulWin32FileTime) +int cellRtcSetWin32FileTime(vm::ptr pDateTime, u64 ulWin32FileTime) { cellRtc->Log("cellRtcSetWin32FileTime(pDateTime=0x%x, ulWin32FileTime=0x%llx)", pDateTime, ulWin32FileTime); @@ -426,9 +426,9 @@ int cellRtcGetDayOfWeek(s32 year, s32 month, s32 day) return datetime.GetWeekDay(); } -int cellRtcCheckValid(mem_ptr_t pTime) +int cellRtcCheckValid(vm::ptr pTime) { - cellRtc->Log("cellRtcCheckValid(pTime=0x%x)", pTime.GetAddr()); + cellRtc->Log("cellRtcCheckValid(pTime=0x%x)", pTime.addr()); if ((pTime->year < 1) || (pTime->year > 9999)) return CELL_RTC_ERROR_INVALID_YEAR; else if ((pTime->month < 1) || (pTime->month > 12)) return CELL_RTC_ERROR_INVALID_MONTH; @@ -440,9 +440,9 @@ int cellRtcCheckValid(mem_ptr_t pTime) else return CELL_OK; } -int cellRtcCompareTick(mem_ptr_t pTick0, mem_ptr_t pTick1) +int cellRtcCompareTick(vm::ptr pTick0, vm::ptr pTick1) { - cellRtc->Log("cellRtcCompareTick(pTick0=0x%x, pTick1=0x%x)", pTick0.GetAddr(), pTick1.GetAddr()); + cellRtc->Log("cellRtcCompareTick(pTick0=0x%x, pTick1=0x%x)", pTick0.addr(), pTick1.addr()); if (pTick0->tick < pTick1->tick) return -1; else if (pTick0->tick > pTick1->tick) return 1; diff --git a/rpcs3/Emu/SysCalls/Modules/cellSpurs.cpp b/rpcs3/Emu/SysCalls/Modules/cellSpurs.cpp index 8a606fadc0..c73b008f6c 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellSpurs.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellSpurs.cpp @@ -14,9 +14,9 @@ extern u32 libsre; extern u32 libsre_rtoc; #endif -s64 cellSpursInitialize(mem_ptr_t spurs, s32 nSpus, s32 spuPriority, s32 ppuPriority, bool exitIfNoWork) +s64 cellSpursInitialize(vm::ptr spurs, s32 nSpus, s32 spuPriority, s32 ppuPriority, bool exitIfNoWork) { - cellSpurs->Warning("cellSpursInitialize(spurs_addr=0x%x, nSpus=%d, spuPriority=%d, ppuPriority=%d, exitIfNoWork=%d)", spurs.GetAddr(), nSpus, spuPriority, ppuPriority, exitIfNoWork); + cellSpurs->Warning("cellSpursInitialize(spurs_addr=0x%x, nSpus=%d, spuPriority=%d, ppuPriority=%d, exitIfNoWork=%d)", spurs.addr(), nSpus, spuPriority, ppuPriority, exitIfNoWork); #ifdef PRX_DEBUG return GetCurrentPPUThread().FastCall2(libsre + 0x8480, libsre_rtoc); @@ -28,9 +28,9 @@ s64 cellSpursInitialize(mem_ptr_t spurs, s32 nSpus, s32 spuPriority, #endif } -s64 cellSpursFinalize(mem_ptr_t spurs) +s64 cellSpursFinalize(vm::ptr spurs) { - cellSpurs->Warning("cellSpursFinalize(spurs_addr=0x%x)", spurs.GetAddr()); + cellSpurs->Warning("cellSpursFinalize(spurs_addr=0x%x)", spurs.addr()); #ifdef PRX_DEBUG return GetCurrentPPUThread().FastCall2(libsre + 0x8568, libsre_rtoc); @@ -41,9 +41,9 @@ s64 cellSpursFinalize(mem_ptr_t spurs) #endif } -s64 cellSpursInitializeWithAttribute(mem_ptr_t spurs, const mem_ptr_t attr) +s64 cellSpursInitializeWithAttribute(vm::ptr spurs, const vm::ptr attr) { - cellSpurs->Warning("cellSpursInitializeWithAttribute(spurs_addr=0x%x, spurs_addr=0x%x)", spurs.GetAddr(), attr.GetAddr()); + cellSpurs->Warning("cellSpursInitializeWithAttribute(spurs_addr=0x%x, spurs_addr=0x%x)", spurs.addr(), attr.addr()); #ifdef PRX_DEBUG return GetCurrentPPUThread().FastCall2(libsre + 0x839C, libsre_rtoc); @@ -54,9 +54,9 @@ s64 cellSpursInitializeWithAttribute(mem_ptr_t spurs, const mem_ptr_t #endif } -s64 cellSpursInitializeWithAttribute2(mem_ptr_t spurs, const mem_ptr_t attr) +s64 cellSpursInitializeWithAttribute2(vm::ptr spurs, const vm::ptr attr) { - cellSpurs->Warning("cellSpursInitializeWithAttribute2(spurs_addr=0x%x, spurs_addr=0x%x)", spurs.GetAddr(), attr.GetAddr()); + cellSpurs->Warning("cellSpursInitializeWithAttribute2(spurs_addr=0x%x, spurs_addr=0x%x)", spurs.addr(), attr.addr()); #ifdef PRX_DEBUG return GetCurrentPPUThread().FastCall2(libsre + 0x82B4, libsre_rtoc); @@ -67,10 +67,10 @@ s64 cellSpursInitializeWithAttribute2(mem_ptr_t spurs, const mem_ptr #endif } -s64 _cellSpursAttributeInitialize(mem_ptr_t attr, s32 nSpus, s32 spuPriority, s32 ppuPriority, bool exitIfNoWork) +s64 _cellSpursAttributeInitialize(vm::ptr attr, s32 nSpus, s32 spuPriority, s32 ppuPriority, bool exitIfNoWork) { cellSpurs->Warning("_cellSpursAttributeInitialize(attr_addr=0x%x, nSpus=%d, spuPriority=%d, ppuPriority=%d, exitIfNoWork=%d)", - attr.GetAddr(), nSpus, spuPriority, ppuPriority, exitIfNoWork); + attr.addr(), nSpus, spuPriority, ppuPriority, exitIfNoWork); #ifdef PRX_DEBUG return GetCurrentPPUThread().FastCall2(libsre + 0x72CC, libsre_rtoc); @@ -81,9 +81,9 @@ s64 _cellSpursAttributeInitialize(mem_ptr_t attr, s32 nSpus, #endif } -s64 cellSpursAttributeSetMemoryContainerForSpuThread(mem_ptr_t attr, u32 container) +s64 cellSpursAttributeSetMemoryContainerForSpuThread(vm::ptr attr, u32 container) { - cellSpurs->Warning("cellSpursAttributeSetMemoryContainerForSpuThread(attr_addr=0x%x, container=0x%x)", attr.GetAddr(), container); + cellSpurs->Warning("cellSpursAttributeSetMemoryContainerForSpuThread(attr_addr=0x%x, container=0x%x)", attr.addr(), container); #ifdef PRX_DEBUG return GetCurrentPPUThread().FastCall2(libsre + 0x6FF8, libsre_rtoc); @@ -94,9 +94,9 @@ s64 cellSpursAttributeSetMemoryContainerForSpuThread(mem_ptr_t attr, vm::ptr prefix, u32 size) +s64 cellSpursAttributeSetNamePrefix(vm::ptr attr, vm::ptr prefix, u32 size) { - cellSpurs->Warning("cellSpursAttributeSetNamePrefix(attr_addr=0x%x, prefix_addr=0x%x, size=0x%x)", attr.GetAddr(), prefix.addr(), size); + cellSpurs->Warning("cellSpursAttributeSetNamePrefix(attr_addr=0x%x, prefix_addr=0x%x, size=0x%x)", attr.addr(), prefix.addr(), size); #ifdef PRX_DEBUG return GetCurrentPPUThread().FastCall2(libsre + 0x7234, libsre_rtoc); @@ -113,10 +113,10 @@ s64 cellSpursAttributeSetNamePrefix(mem_ptr_t attr, vm::ptr< #endif } -s64 cellSpursAttributeEnableSpuPrintfIfAvailable(mem_ptr_t attr) +s64 cellSpursAttributeEnableSpuPrintfIfAvailable(vm::ptr attr) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursAttributeEnableSpuPrintfIfAvailable(attr_addr=0x%x)", attr.GetAddr()); + cellSpurs->Warning("cellSpursAttributeEnableSpuPrintfIfAvailable(attr_addr=0x%x)", attr.addr()); return GetCurrentPPUThread().FastCall2(libsre + 0x7150, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -124,9 +124,9 @@ s64 cellSpursAttributeEnableSpuPrintfIfAvailable(mem_ptr_t a #endif } -s64 cellSpursAttributeSetSpuThreadGroupType(mem_ptr_t attr, s32 type) +s64 cellSpursAttributeSetSpuThreadGroupType(vm::ptr attr, s32 type) { - cellSpurs->Warning("cellSpursAttributeSetSpuThreadGroupType(attr_addr=0x%x, type=%d)", attr.GetAddr(), type); + cellSpurs->Warning("cellSpursAttributeSetSpuThreadGroupType(attr_addr=0x%x, type=%d)", attr.addr(), type); #ifdef PRX_DEBUG return GetCurrentPPUThread().FastCall2(libsre + 0x70C8, libsre_rtoc); @@ -137,10 +137,10 @@ s64 cellSpursAttributeSetSpuThreadGroupType(mem_ptr_t attr, #endif } -s64 cellSpursAttributeEnableSystemWorkload(mem_ptr_t attr, vm::ptr priority, u32 maxSpu, vm::ptr isPreemptible) +s64 cellSpursAttributeEnableSystemWorkload(vm::ptr attr, vm::ptr priority, u32 maxSpu, vm::ptr isPreemptible) { cellSpurs->Warning("cellSpursAttributeEnableSystemWorkload(attr_addr=0x%x, priority_addr=0x%x, maxSpu=%d, isPreemptible_addr=0x%x)", - attr.GetAddr(), priority.addr(), maxSpu, isPreemptible.addr()); + attr.addr(), priority.addr(), maxSpu, isPreemptible.addr()); #ifdef PRX_DEBUG return GetCurrentPPUThread().FastCall2(libsre + 0xF410, libsre_rtoc); @@ -157,10 +157,10 @@ s64 cellSpursAttributeEnableSystemWorkload(mem_ptr_t attr, v #endif } -s64 cellSpursGetSpuThreadGroupId(mem_ptr_t spurs, vm::ptr> group) +s64 cellSpursGetSpuThreadGroupId(vm::ptr spurs, vm::ptr> group) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursGetSpuThreadGroupId(spurs_addr=0x%x, group_addr=0x%x)", spurs.GetAddr(), group.addr()); + cellSpurs->Warning("cellSpursGetSpuThreadGroupId(spurs_addr=0x%x, group_addr=0x%x)", spurs.addr(), group.addr()); return GetCurrentPPUThread().FastCall2(libsre + 0x8B30, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -168,10 +168,10 @@ s64 cellSpursGetSpuThreadGroupId(mem_ptr_t spurs, vm::ptr> #endif } -s64 cellSpursGetNumSpuThread(mem_ptr_t spurs, vm::ptr> nThreads) +s64 cellSpursGetNumSpuThread(vm::ptr spurs, vm::ptr> nThreads) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursGetNumSpuThread(spurs_addr=0x%x, nThreads_addr=0x%x)", spurs.GetAddr(), nThreads.addr()); + cellSpurs->Warning("cellSpursGetNumSpuThread(spurs_addr=0x%x, nThreads_addr=0x%x)", spurs.addr(), nThreads.addr()); return GetCurrentPPUThread().FastCall2(libsre + 0x8B78, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -179,10 +179,10 @@ s64 cellSpursGetNumSpuThread(mem_ptr_t spurs, vm::ptr> nThr #endif } -s64 cellSpursGetSpuThreadId(mem_ptr_t spurs, vm::ptr> thread, vm::ptr> nThreads) +s64 cellSpursGetSpuThreadId(vm::ptr spurs, vm::ptr> thread, vm::ptr> nThreads) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursGetSpuThreadId(spurs_addr=0x%x, thread_addr=0x%x, nThreads_addr=0x%x)", spurs.GetAddr(), thread.addr(), nThreads.addr()); + cellSpurs->Warning("cellSpursGetSpuThreadId(spurs_addr=0x%x, thread_addr=0x%x, nThreads_addr=0x%x)", spurs.addr(), thread.addr(), nThreads.addr()); return GetCurrentPPUThread().FastCall2(libsre + 0x8A98, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -190,10 +190,10 @@ s64 cellSpursGetSpuThreadId(mem_ptr_t spurs, vm::ptr> threa #endif } -s64 cellSpursSetMaxContention(mem_ptr_t spurs, u32 workloadId, u32 maxContention) +s64 cellSpursSetMaxContention(vm::ptr spurs, u32 workloadId, u32 maxContention) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursSetMaxContention(spurs_addr=0x%x, workloadId=%d, maxContention=%d)", spurs.GetAddr(), workloadId, maxContention); + cellSpurs->Warning("cellSpursSetMaxContention(spurs_addr=0x%x, workloadId=%d, maxContention=%d)", spurs.addr(), workloadId, maxContention); return GetCurrentPPUThread().FastCall2(libsre + 0x8E90, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -201,10 +201,10 @@ s64 cellSpursSetMaxContention(mem_ptr_t spurs, u32 workloadId, u32 ma #endif } -s64 cellSpursSetPriorities(mem_ptr_t spurs, u32 workloadId, vm::ptr priorities) +s64 cellSpursSetPriorities(vm::ptr spurs, u32 workloadId, vm::ptr priorities) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursSetPriorities(spurs_addr=0x%x, workloadId=%d, priorities_addr=0x%x)", spurs.GetAddr(), workloadId, priorities.addr()); + cellSpurs->Warning("cellSpursSetPriorities(spurs_addr=0x%x, workloadId=%d, priorities_addr=0x%x)", spurs.addr(), workloadId, priorities.addr()); return GetCurrentPPUThread().FastCall2(libsre + 0x8BC0, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -212,10 +212,10 @@ s64 cellSpursSetPriorities(mem_ptr_t spurs, u32 workloadId, vm::ptr spurs, vm::ptr isPreemptible) +s64 cellSpursSetPreemptionVictimHints(vm::ptr spurs, vm::ptr isPreemptible) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursSetPreemptionVictimHints(spurs_addr=0x%x, isPreemptible_addr=0x%x)", spurs.GetAddr(), isPreemptible.addr()); + cellSpurs->Warning("cellSpursSetPreemptionVictimHints(spurs_addr=0x%x, isPreemptible_addr=0x%x)", spurs.addr(), isPreemptible.addr()); return GetCurrentPPUThread().FastCall2(libsre + 0xF5A4, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -223,11 +223,11 @@ s64 cellSpursSetPreemptionVictimHints(mem_ptr_t spurs, vm::ptr spurs, u32 queue, vm::ptr port, s32 isDynamic) +s64 cellSpursAttachLv2EventQueue(vm::ptr spurs, u32 queue, vm::ptr port, s32 isDynamic) { #ifdef PRX_DEBUG cellSpurs->Warning("cellSpursAttachLv2EventQueue(spurs_addr=0x%x, queue=%d, port_addr=0x%x, isDynamic=%d)", - spurs.GetAddr(), queue, port.addr(), isDynamic); + spurs.addr(), queue, port.addr(), isDynamic); return GetCurrentPPUThread().FastCall2(libsre + 0xAFE0, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -235,10 +235,10 @@ s64 cellSpursAttachLv2EventQueue(mem_ptr_t spurs, u32 queue, vm::ptr< #endif } -s64 cellSpursDetachLv2EventQueue(mem_ptr_t spurs, u8 port) +s64 cellSpursDetachLv2EventQueue(vm::ptr spurs, u8 port) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursDetachLv2EventQueue(spurs_addr=0x%x, port=0x%x)", spurs.GetAddr(), port); + cellSpurs->Warning("cellSpursDetachLv2EventQueue(spurs_addr=0x%x, port=0x%x)", spurs.addr(), port); return GetCurrentPPUThread().FastCall2(libsre + 0xB144, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -246,10 +246,10 @@ s64 cellSpursDetachLv2EventQueue(mem_ptr_t spurs, u8 port) #endif } -s64 cellSpursEnableExceptionEventHandler(mem_ptr_t spurs, bool flag) +s64 cellSpursEnableExceptionEventHandler(vm::ptr spurs, bool flag) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursEnableExceptionEventHandler(spurs_addr=0x%x, flag=%d)", spurs.GetAddr(), flag); + cellSpurs->Warning("cellSpursEnableExceptionEventHandler(spurs_addr=0x%x, flag=%d)", spurs.addr(), flag); return GetCurrentPPUThread().FastCall2(libsre + 0xDCC0, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -257,11 +257,11 @@ s64 cellSpursEnableExceptionEventHandler(mem_ptr_t spurs, bool flag) #endif } -s64 cellSpursSetGlobalExceptionEventHandler(mem_ptr_t spurs, u32 eaHandler_addr, u32 arg_addr) +s64 cellSpursSetGlobalExceptionEventHandler(vm::ptr spurs, u32 eaHandler_addr, u32 arg_addr) { #ifdef PRX_DEBUG cellSpurs->Warning("cellSpursSetGlobalExceptionEventHandler(spurs_addr=0x%x, eaHandler_addr=0x%x, arg_addr=0x%x)", - spurs.GetAddr(), eaHandler_addr, arg_addr); + spurs.addr(), eaHandler_addr, arg_addr); return GetCurrentPPUThread().FastCall2(libsre + 0xD6D0, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -269,10 +269,10 @@ s64 cellSpursSetGlobalExceptionEventHandler(mem_ptr_t spurs, u32 eaHa #endif } -s64 cellSpursUnsetGlobalExceptionEventHandler(mem_ptr_t spurs) +s64 cellSpursUnsetGlobalExceptionEventHandler(vm::ptr spurs) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursUnsetGlobalExceptionEventHandler(spurs_addr=0x%x)", spurs.GetAddr()); + cellSpurs->Warning("cellSpursUnsetGlobalExceptionEventHandler(spurs_addr=0x%x)", spurs.addr()); return GetCurrentPPUThread().FastCall2(libsre + 0xD674, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -280,10 +280,10 @@ s64 cellSpursUnsetGlobalExceptionEventHandler(mem_ptr_t spurs) #endif } -s64 cellSpursGetInfo(mem_ptr_t spurs, mem_ptr_t info) +s64 cellSpursGetInfo(vm::ptr spurs, vm::ptr info) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursGetInfo(spurs_addr=0x%x, info_addr=0x%x)", spurs.GetAddr(), info.GetAddr()); + cellSpurs->Warning("cellSpursGetInfo(spurs_addr=0x%x, info_addr=0x%x)", spurs.addr(), info.addr()); return GetCurrentPPUThread().FastCall2(libsre + 0xE540, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -291,11 +291,11 @@ s64 cellSpursGetInfo(mem_ptr_t spurs, mem_ptr_t info) #endif } -s64 _cellSpursEventFlagInitialize(mem_ptr_t spurs, mem_ptr_t taskset, mem_ptr_t eventFlag, u32 flagClearMode, u32 flagDirection) +s64 _cellSpursEventFlagInitialize(vm::ptr spurs, vm::ptr taskset, vm::ptr eventFlag, u32 flagClearMode, u32 flagDirection) { #ifdef PRX_DEBUG cellSpurs->Warning("_cellSpursEventFlagInitialize(spurs_addr=0x%x, taskset_addr=0x%x, eventFlag_addr=0x%x, flagClearMode=%d, flagDirection=%d)", - spurs.GetAddr(), taskset.GetAddr(), eventFlag.GetAddr(), flagClearMode, flagDirection); + spurs.addr(), taskset.addr(), eventFlag.addr(), flagClearMode, flagDirection); return GetCurrentPPUThread().FastCall2(libsre + 0x1564C, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -303,10 +303,10 @@ s64 _cellSpursEventFlagInitialize(mem_ptr_t spurs, mem_ptr_t eventFlag) +s64 cellSpursEventFlagAttachLv2EventQueue(vm::ptr eventFlag) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursEventFlagAttachLv2EventQueue(eventFlag_addr=0x%x)", eventFlag.GetAddr()); + cellSpurs->Warning("cellSpursEventFlagAttachLv2EventQueue(eventFlag_addr=0x%x)", eventFlag.addr()); return GetCurrentPPUThread().FastCall2(libsre + 0x157B8, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -314,10 +314,10 @@ s64 cellSpursEventFlagAttachLv2EventQueue(mem_ptr_t eventFla #endif } -s64 cellSpursEventFlagDetachLv2EventQueue(mem_ptr_t eventFlag) +s64 cellSpursEventFlagDetachLv2EventQueue(vm::ptr eventFlag) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursEventFlagDetachLv2EventQueue(eventFlag_addr=0x%x)", eventFlag.GetAddr()); + cellSpurs->Warning("cellSpursEventFlagDetachLv2EventQueue(eventFlag_addr=0x%x)", eventFlag.addr()); return GetCurrentPPUThread().FastCall2(libsre + 0x15998, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -325,10 +325,10 @@ s64 cellSpursEventFlagDetachLv2EventQueue(mem_ptr_t eventFla #endif } -s64 cellSpursEventFlagWait(mem_ptr_t eventFlag, vm::ptr> mask, u32 mode) +s64 cellSpursEventFlagWait(vm::ptr eventFlag, vm::ptr> mask, u32 mode) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursEventFlagWait(eventFlag_addr=0x%x, mask_addr=0x%x, mode=%d)", eventFlag.GetAddr(), mask.addr(), mode); + cellSpurs->Warning("cellSpursEventFlagWait(eventFlag_addr=0x%x, mask_addr=0x%x, mode=%d)", eventFlag.addr(), mask.addr(), mode); return GetCurrentPPUThread().FastCall2(libsre + 0x15E68, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -336,10 +336,10 @@ s64 cellSpursEventFlagWait(mem_ptr_t eventFlag, vm::ptr eventFlag, u16 bits) +s64 cellSpursEventFlagClear(vm::ptr eventFlag, u16 bits) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursEventFlagClear(eventFlag_addr=0x%x, bits=0x%x)", eventFlag.GetAddr(), bits); + cellSpurs->Warning("cellSpursEventFlagClear(eventFlag_addr=0x%x, bits=0x%x)", eventFlag.addr(), bits); return GetCurrentPPUThread().FastCall2(libsre + 0x15E9C, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -347,10 +347,10 @@ s64 cellSpursEventFlagClear(mem_ptr_t eventFlag, u16 bits) #endif } -s64 cellSpursEventFlagSet(mem_ptr_t eventFlag, u16 bits) +s64 cellSpursEventFlagSet(vm::ptr eventFlag, u16 bits) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursEventFlagSet(eventFlag_addr=0x%x, bits=0x%x)", eventFlag.GetAddr(), bits); + cellSpurs->Warning("cellSpursEventFlagSet(eventFlag_addr=0x%x, bits=0x%x)", eventFlag.addr(), bits); return GetCurrentPPUThread().FastCall2(libsre + 0x15F04, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -358,10 +358,10 @@ s64 cellSpursEventFlagSet(mem_ptr_t eventFlag, u16 bits) #endif } -s64 cellSpursEventFlagTryWait(mem_ptr_t eventFlag, vm::ptr> mask, u32 mode) +s64 cellSpursEventFlagTryWait(vm::ptr eventFlag, vm::ptr> mask, u32 mode) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursEventFlagTryWait(eventFlag_addr=0x%x, mask_addr=0x%x, mode=0x%x)", eventFlag.GetAddr(), mask.addr(), mode); + cellSpurs->Warning("cellSpursEventFlagTryWait(eventFlag_addr=0x%x, mask_addr=0x%x, mode=0x%x)", eventFlag.addr(), mask.addr(), mode); return GetCurrentPPUThread().FastCall2(libsre + 0x15E70, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -369,10 +369,10 @@ s64 cellSpursEventFlagTryWait(mem_ptr_t eventFlag, vm::ptr eventFlag, vm::ptr> direction) +s64 cellSpursEventFlagGetDirection(vm::ptr eventFlag, vm::ptr> direction) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursEventFlagGetDirection(eventFlag_addr=0x%x, direction_addr=0x%x)", eventFlag.GetAddr(), direction.addr()); + cellSpurs->Warning("cellSpursEventFlagGetDirection(eventFlag_addr=0x%x, direction_addr=0x%x)", eventFlag.addr(), direction.addr()); return GetCurrentPPUThread().FastCall2(libsre + 0x162C4, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -380,10 +380,10 @@ s64 cellSpursEventFlagGetDirection(mem_ptr_t eventFlag, vm:: #endif } -s64 cellSpursEventFlagGetClearMode(mem_ptr_t eventFlag, vm::ptr> clear_mode) +s64 cellSpursEventFlagGetClearMode(vm::ptr eventFlag, vm::ptr> clear_mode) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursEventFlagGetClearMode(eventFlag_addr=0x%x, clear_mode_addr=0x%x)", eventFlag.GetAddr(), clear_mode.addr()); + cellSpurs->Warning("cellSpursEventFlagGetClearMode(eventFlag_addr=0x%x, clear_mode_addr=0x%x)", eventFlag.addr(), clear_mode.addr()); return GetCurrentPPUThread().FastCall2(libsre + 0x16310, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -391,10 +391,10 @@ s64 cellSpursEventFlagGetClearMode(mem_ptr_t eventFlag, vm:: #endif } -s64 cellSpursEventFlagGetTasksetAddress(mem_ptr_t eventFlag, mem_ptr_t taskset) +s64 cellSpursEventFlagGetTasksetAddress(vm::ptr eventFlag, vm::ptr taskset) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursEventFlagGetTasksetAddress(eventFlag_addr=0x%x, taskset_addr=0x%x)", eventFlag.GetAddr(), taskset.GetAddr()); + cellSpurs->Warning("cellSpursEventFlagGetTasksetAddress(eventFlag_addr=0x%x, taskset_addr=0x%x)", eventFlag.addr(), taskset.addr()); return GetCurrentPPUThread().FastCall2(libsre + 0x1635C, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -710,25 +710,25 @@ s64 cellSpursCreateTasksetWithAttribute() #endif } -s64 cellSpursCreateTaskset(mem_ptr_t spurs, mem_ptr_t taskset, u64 args, vm::ptr priority, u32 maxContention) +s64 cellSpursCreateTaskset(vm::ptr spurs, vm::ptr taskset, u64 args, vm::ptr priority, u32 maxContention) { cellSpurs->Warning("cellSpursCreateTaskset(spurs_addr=0x%x, taskset_addr=0x%x, args=0x%llx, priority_addr=0x%x, maxContention=%d)", - spurs.GetAddr(), taskset.GetAddr(), args, priority.addr(), maxContention); + spurs.addr(), taskset.addr(), args, priority.addr(), maxContention); #ifdef PRX_DEBUG return GetCurrentPPUThread().FastCall2(libsre + 0x14CB8, libsre_rtoc); #else SPURSManagerTasksetAttribute *tattr = new SPURSManagerTasksetAttribute(args, priority, maxContention); - taskset->taskset = new SPURSManagerTaskset(taskset.GetAddr(), tattr); + taskset->taskset = new SPURSManagerTaskset(taskset.addr(), tattr); return CELL_OK; #endif } -s64 cellSpursJoinTaskset(mem_ptr_t taskset) +s64 cellSpursJoinTaskset(vm::ptr taskset) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursJoinTaskset(taskset_addr=0x%x)", taskset.GetAddr()); + cellSpurs->Warning("cellSpursJoinTaskset(taskset_addr=0x%x)", taskset.addr()); return GetCurrentPPUThread().FastCall2(libsre + 0x152F8, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -736,10 +736,10 @@ s64 cellSpursJoinTaskset(mem_ptr_t taskset) #endif } -s64 cellSpursGetTasksetId(mem_ptr_t taskset, vm::ptr> workloadId) +s64 cellSpursGetTasksetId(vm::ptr taskset, vm::ptr> workloadId) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursGetTasksetId(taskset_addr=0x%x, workloadId_addr=0x%x)", taskset.GetAddr(), workloadId.addr()); + cellSpurs->Warning("cellSpursGetTasksetId(taskset_addr=0x%x, workloadId_addr=0x%x)", taskset.addr(), workloadId.addr()); return GetCurrentPPUThread().FastCall2(libsre + 0x14EA0, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -747,10 +747,10 @@ s64 cellSpursGetTasksetId(mem_ptr_t taskset, vm::ptr #endif } -s64 cellSpursShutdownTaskset(mem_ptr_t taskset) +s64 cellSpursShutdownTaskset(vm::ptr taskset) { #ifdef PRX_DEBUG - cellSpurs->Warning("cellSpursShutdownTaskset(taskset_addr=0x%x)", taskset.GetAddr()); + cellSpurs->Warning("cellSpursShutdownTaskset(taskset_addr=0x%x)", taskset.addr()); return GetCurrentPPUThread().FastCall2(libsre + 0x14868, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -758,12 +758,12 @@ s64 cellSpursShutdownTaskset(mem_ptr_t taskset) #endif } -s64 cellSpursCreateTask(mem_ptr_t taskset, vm::ptr> taskID, u32 elf_addr, u32 context_addr, u32 context_size, mem_ptr_t lsPattern, - mem_ptr_t argument) +s64 cellSpursCreateTask(vm::ptr taskset, vm::ptr> taskID, u32 elf_addr, u32 context_addr, u32 context_size, vm::ptr lsPattern, + vm::ptr argument) { #ifdef PRX_DEBUG cellSpurs->Warning("cellSpursCreateTask(taskset_addr=0x%x, taskID_addr=0x%x, elf_addr_addr=0x%x, context_addr_addr=0x%x, context_size=%d, lsPattern_addr=0x%x, argument_addr=0x%x)", - taskset.GetAddr(), taskID.addr(), elf_addr, context_addr, context_size, lsPattern.GetAddr(), argument.GetAddr()); + taskset.addr(), taskID.addr(), elf_addr, context_addr, context_size, lsPattern.addr(), argument.addr()); return GetCurrentPPUThread().FastCall2(libsre + 0x12414, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -771,10 +771,10 @@ s64 cellSpursCreateTask(mem_ptr_t taskset, vm::ptr> #endif } -s64 _cellSpursSendSignal(mem_ptr_t taskset, u32 taskID) +s64 _cellSpursSendSignal(vm::ptr taskset, u32 taskID) { #ifdef PRX_DEBUG - cellSpurs->Warning("_cellSpursSendSignal(taskset_addr=0x%x, taskID=%d)", taskset.GetAddr(), taskID); + cellSpurs->Warning("_cellSpursSendSignal(taskset_addr=0x%x, taskID=%d)", taskset.addr(), taskID); return GetCurrentPPUThread().FastCall2(libsre + 0x124CC, libsre_rtoc); #else UNIMPLEMENTED_FUNC(cellSpurs); @@ -826,9 +826,9 @@ s64 cellSpursTasksetAttributeEnableClearLS() #endif } -s64 _cellSpursTasksetAttribute2Initialize(mem_ptr_t attribute, u32 revision) +s64 _cellSpursTasksetAttribute2Initialize(vm::ptr attribute, u32 revision) { - cellSpurs->Warning("_cellSpursTasksetAttribute2Initialize(attribute_addr=0x%x, revision=%d)", attribute.GetAddr(), revision); + cellSpurs->Warning("_cellSpursTasksetAttribute2Initialize(attribute_addr=0x%x, revision=%d)", attribute.addr(), revision); #ifdef PRX_DEBUG return GetCurrentPPUThread().FastCall2(libsre + 0x1474C, libsre_rtoc); @@ -938,9 +938,9 @@ s64 cellSpursTaskAttributeSetExitCodeContainer() #endif } -s64 _cellSpursTaskAttribute2Initialize(mem_ptr_t attribute, u32 revision) +s64 _cellSpursTaskAttribute2Initialize(vm::ptr attribute, u32 revision) { - cellSpurs->Warning("_cellSpursTaskAttribute2Initialize(attribute_addr=0x%x, revision=%d)", attribute.GetAddr(), revision); + cellSpurs->Warning("_cellSpursTaskAttribute2Initialize(attribute_addr=0x%x, revision=%d)", attribute.addr(), revision); #ifdef PRX_DEBUG return GetCurrentPPUThread().FastCall2(libsre + 0x10B00, libsre_rtoc); diff --git a/rpcs3/Emu/SysCalls/Modules/cellSpurs.h b/rpcs3/Emu/SysCalls/Modules/cellSpurs.h index b23fea8496..d17a93eac0 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellSpurs.h +++ b/rpcs3/Emu/SysCalls/Modules/cellSpurs.h @@ -194,11 +194,11 @@ struct CellSpursTracePacket }; // Exception handlers. -//typedef void (*CellSpursGlobalExceptionEventHandler)(mem_ptr_t spurs, const mem_ptr_t info, -// u32 id, mem_ptr_t arg); +//typedef void (*CellSpursGlobalExceptionEventHandler)(vm::ptr spurs, const vm::ptr info, +// u32 id, vm::ptr arg); // -//typedef void (*CellSpursTasksetExceptionEventHandler)(mem_ptr_t spurs, mem_ptr_t taskset, -// u32 idTask, const mem_ptr_t info, mem_ptr_t arg); +//typedef void (*CellSpursTasksetExceptionEventHandler)(vm::ptr spurs, vm::ptr taskset, +// u32 idTask, const vm::ptr info, vm::ptr arg); struct CellSpursTasksetInfo { diff --git a/rpcs3/Emu/SysCalls/Modules/cellSysutil.cpp b/rpcs3/Emu/SysCalls/Modules/cellSysutil.cpp index aa13463ecb..879d2d41ab 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellSysutil.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellSysutil.cpp @@ -174,10 +174,10 @@ int cellVideoOutGetState(u32 videoOut, u32 deviceIndex, u32 state_addr) return CELL_VIDEO_OUT_ERROR_UNSUPPORTED_VIDEO_OUT; } -int cellVideoOutGetResolution(u32 resolutionId, mem_ptr_t resolution) +int cellVideoOutGetResolution(u32 resolutionId, vm::ptr resolution) { cellSysutil->Log("cellVideoOutGetResolution(resolutionId=%d, resolution_addr=0x%x)", - resolutionId, resolution.GetAddr()); + resolutionId, resolution.addr()); u32 num = ResolutionIdToNum(resolutionId); if(!num) @@ -253,10 +253,10 @@ int cellVideoOutGetConfiguration(u32 videoOut, u32 config_addr, u32 option_addr) return CELL_VIDEO_OUT_ERROR_UNSUPPORTED_VIDEO_OUT; } -int cellVideoOutGetDeviceInfo(u32 videoOut, u32 deviceIndex, mem_ptr_t info) +int cellVideoOutGetDeviceInfo(u32 videoOut, u32 deviceIndex, vm::ptr info) { cellSysutil->Warning("cellVideoOutGetDeviceInfo(videoOut=%u, deviceIndex=%u, info_addr=0x%x)", - videoOut, deviceIndex, info.GetAddr()); + videoOut, deviceIndex, info.addr()); if(deviceIndex) return CELL_VIDEO_OUT_ERROR_DEVICE_NOT_FOUND; @@ -482,10 +482,10 @@ int cellAudioOutGetState(u32 audioOut, u32 deviceIndex, u32 state_addr) return CELL_AUDIO_OUT_ERROR_UNSUPPORTED_AUDIO_OUT; } -int cellAudioOutConfigure(u32 audioOut, mem_ptr_t config, mem_ptr_t option, u32 waitForEvent) +int cellAudioOutConfigure(u32 audioOut, vm::ptr config, vm::ptr option, u32 waitForEvent) { cellSysutil->Warning("cellAudioOutConfigure(audioOut=%d, config_addr=0x%x, option_addr=0x%x, (!)waitForEvent=%d)", - audioOut, config.GetAddr(), option.GetAddr(), waitForEvent); + audioOut, config.addr(), option.addr(), waitForEvent); switch(audioOut) { @@ -551,10 +551,10 @@ int cellAudioOutGetNumberOfDevice(u32 audioOut) return CELL_AUDIO_OUT_ERROR_UNSUPPORTED_AUDIO_OUT; } -int cellAudioOutGetDeviceInfo(u32 audioOut, u32 deviceIndex, mem_ptr_t info) +int cellAudioOutGetDeviceInfo(u32 audioOut, u32 deviceIndex, vm::ptr info) { cellSysutil->Todo("cellAudioOutGetDeviceInfo(audioOut=%u, deviceIndex=%u, info_addr=0x%x)", - audioOut, deviceIndex, info.GetAddr()); + audioOut, deviceIndex, info.addr()); if(deviceIndex) return CELL_AUDIO_OUT_ERROR_DEVICE_NOT_FOUND; @@ -602,7 +602,7 @@ int cellAudioOutSetCopyControl(u32 audioOut, u32 control) typedef struct{ char cacheId[CELL_SYSCACHE_ID_SIZE]; char getCachePath[CELL_SYSCACHE_PATH_MAX]; - mem_ptr_t reserved; + vm::ptr reserved; } CellSysCacheParam; @@ -658,9 +658,9 @@ int cellSysCacheClear(void) return CELL_SYSCACHE_RET_OK_CLEARED; } -int cellSysCacheMount(mem_ptr_t param) +int cellSysCacheMount(vm::ptr param) { - cellSysutil->Warning("cellSysCacheMount(param_addr=0x%x)", param.GetAddr()); + cellSysutil->Warning("cellSysCacheMount(param_addr=0x%x)", param.addr()); //TODO: implement char id[CELL_SYSCACHE_ID_SIZE]; @@ -752,9 +752,9 @@ int cellSysutilEnableBgmPlayback() return CELL_OK; } -int cellSysutilEnableBgmPlaybackEx(mem_ptr_t param) +int cellSysutilEnableBgmPlaybackEx(vm::ptr param) { - cellSysutil->Warning("cellSysutilEnableBgmPlaybackEx(param_addr=0x%x)", param.GetAddr()); + cellSysutil->Warning("cellSysutilEnableBgmPlaybackEx(param_addr=0x%x)", param.addr()); // TODO bgm_playback_enabled = true; @@ -772,9 +772,9 @@ int cellSysutilDisableBgmPlayback() return CELL_OK; } -int cellSysutilDisableBgmPlaybackEx(mem_ptr_t param) +int cellSysutilDisableBgmPlaybackEx(vm::ptr param) { - cellSysutil->Warning("cellSysutilDisableBgmPlaybackEx(param_addr=0x%x)", param.GetAddr()); + cellSysutil->Warning("cellSysutilDisableBgmPlaybackEx(param_addr=0x%x)", param.addr()); // TODO bgm_playback_enabled = false; @@ -782,9 +782,9 @@ int cellSysutilDisableBgmPlaybackEx(mem_ptr_t return CELL_OK; } -int cellSysutilGetBgmPlaybackStatus(mem_ptr_t status) +int cellSysutilGetBgmPlaybackStatus(vm::ptr status) { - cellSysutil->Log("cellSysutilGetBgmPlaybackStatus(status_addr=0x%x)", status.GetAddr()); + cellSysutil->Log("cellSysutilGetBgmPlaybackStatus(status_addr=0x%x)", status.addr()); // TODO status->playerState = CELL_SYSUTIL_BGMPLAYBACK_STATUS_STOP; @@ -796,9 +796,9 @@ int cellSysutilGetBgmPlaybackStatus(mem_ptr_t stat return CELL_OK; } -int cellSysutilGetBgmPlaybackStatus2(mem_ptr_t status2) +int cellSysutilGetBgmPlaybackStatus2(vm::ptr status2) { - cellSysutil->Log("cellSysutilGetBgmPlaybackStatus2(status2_addr=0x%x)", status2.GetAddr()); + cellSysutil->Log("cellSysutilGetBgmPlaybackStatus2(status2_addr=0x%x)", status2.addr()); // TODO status2->playerState = CELL_SYSUTIL_BGMPLAYBACK_STATUS_STOP; diff --git a/rpcs3/Emu/SysCalls/Modules/cellSysutil_SaveData.cpp b/rpcs3/Emu/SysCalls/Modules/cellSysutil_SaveData.cpp index 8b2d444f4b..eff78cff85 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellSysutil_SaveData.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellSysutil_SaveData.cpp @@ -85,7 +85,7 @@ void addSaveDataEntry(std::vector& saveEntries, const std::string saveEntries.push_back(saveEntry); } -void addNewSaveDataEntry(std::vector& saveEntries, mem_ptr_t newData) +void addNewSaveDataEntry(std::vector& saveEntries, vm::ptr newData) { SaveDataEntry saveEntry; saveEntry.dirName = (char*)Memory.VirtualToRealAddr(newData->dirName_addr); @@ -105,7 +105,7 @@ u32 focusSaveDataEntry(const std::vector& saveEntries, u32 focusP return 0; } -void setSaveDataList(std::vector& saveEntries, mem_ptr_t fixedList, u32 fixedListNum) +void setSaveDataList(std::vector& saveEntries, vm::ptr fixedList, u32 fixedListNum) { std::vector::iterator entry = saveEntries.begin(); while (entry != saveEntries.end()) @@ -126,7 +126,7 @@ void setSaveDataList(std::vector& saveEntries, mem_ptr_t& saveEntries, mem_ptr_t fixedSet) +void setSaveDataFixed(std::vector& saveEntries, vm::ptr fixedSet) { std::vector::iterator entry = saveEntries.begin(); while (entry != saveEntries.end()) @@ -154,7 +154,7 @@ void setSaveDataFixed(std::vector& saveEntries, mem_ptr_t statGet) +void getSaveDataStat(SaveDataEntry entry, vm::ptr statGet) { if (entry.isNew) statGet->isNewData = CELL_SAVEDATA_ISNEWDATA_YES; @@ -287,12 +287,12 @@ s32 modifySaveDataFiles(vm::ptr funcFile, vm::ptr setList, mem_ptr_t setBuf, +int cellSaveDataListSave2(u32 version, vm::ptr setList, vm::ptr setBuf, vm::ptr funcList, vm::ptr funcStat, vm::ptr funcFile, u32 container, u32 userdata_addr) { cellSysutil->Warning("cellSaveDataListSave2(version=%d, setList_addr=0x%x, setBuf_addr=0x%x, funcList_addr=0x%x, funcStat_addr=0x%x, funcFile_addr=0x%x, container=0x%x, userdata_addr=0x%x)", - version, setList.GetAddr(), setBuf.GetAddr(), funcList.addr(), funcStat.addr(), funcFile.addr(), container, userdata_addr); + version, setList.addr(), setBuf.addr(), funcList.addr(), funcStat.addr(), funcFile.addr(), container, userdata_addr); vm::var result; vm::var listGet; @@ -340,9 +340,9 @@ int cellSaveDataListSave2(u32 version, mem_ptr_t setList, m return CELL_SAVEDATA_ERROR_CBRESULT; } - setSaveDataList(saveEntries, (u32)listSet->fixedList.addr(), listSet->fixedListNum); + setSaveDataList(saveEntries, listSet->fixedList, listSet->fixedListNum); if (listSet->newData) - addNewSaveDataEntry(saveEntries, (u32)listSet->newData.addr()); + addNewSaveDataEntry(saveEntries, listSet->newData); if (saveEntries.size() == 0) { cellSysutil->Warning("cellSaveDataListSave2: No save entries found!"); // TODO: Find a better way to handle this error return CELL_SAVEDATA_RET_OK; @@ -351,7 +351,7 @@ int cellSaveDataListSave2(u32 version, mem_ptr_t setList, m u32 focusIndex = focusSaveDataEntry(saveEntries, listSet->focusPosition); // TODO: Display the dialog here u32 selectedIndex = focusIndex; // TODO: Until the dialog is implemented, select always the focused entry - getSaveDataStat(saveEntries[selectedIndex], statGet.addr()); + getSaveDataStat(saveEntries[selectedIndex], statGet); result->userdata_addr = userdata_addr; funcStat(result, statGet, statSet); @@ -361,8 +361,8 @@ int cellSaveDataListSave2(u32 version, mem_ptr_t setList, m return CELL_SAVEDATA_ERROR_CBRESULT; } - /*if (statSet->setParam.GetAddr()) - addNewSaveDataEntry(saveEntries, (u32)listSet->newData.GetAddr()); // TODO: This *is* wrong + /*if (statSet->setParam) + addNewSaveDataEntry(saveEntries, (u32)listSet->newData.addr()); // TODO: This *is* wrong */ // Enter the loop where the save files are read/created/deleted. @@ -371,12 +371,12 @@ int cellSaveDataListSave2(u32 version, mem_ptr_t setList, m return ret; } -int cellSaveDataListLoad2(u32 version, mem_ptr_t setList, mem_ptr_t setBuf, +int cellSaveDataListLoad2(u32 version, vm::ptr setList, vm::ptr setBuf, vm::ptr funcList, vm::ptr funcStat, vm::ptr funcFile, u32 container, u32 userdata_addr) { cellSysutil->Warning("cellSaveDataListLoad2(version=%d, setList_addr=0x%x, setBuf_addr=0x%x, funcList_addr=0x%x, funcStat_addr=0x%x, funcFile_addr=0x%x, container=0x%x, userdata_addr=0x%x)", - version, setList.GetAddr(), setBuf.GetAddr(), funcList.addr(), funcStat.addr(), funcFile.addr(), container, userdata_addr); + version, setList.addr(), setBuf.addr(), funcList.addr(), funcStat.addr(), funcFile.addr(), container, userdata_addr); vm::var result; vm::var listGet; @@ -425,9 +425,9 @@ int cellSaveDataListLoad2(u32 version, mem_ptr_t setList, m return CELL_SAVEDATA_ERROR_CBRESULT; } - setSaveDataList(saveEntries, (u32)listSet->fixedList.addr(), listSet->fixedListNum); + setSaveDataList(saveEntries, listSet->fixedList, listSet->fixedListNum); if (listSet->newData) - addNewSaveDataEntry(saveEntries, (u32)listSet->newData.addr()); + addNewSaveDataEntry(saveEntries, listSet->newData); if (saveEntries.size() == 0) { cellSysutil->Warning("cellSaveDataListLoad2: No save entries found!"); // TODO: Find a better way to handle this error return CELL_SAVEDATA_RET_OK; @@ -436,7 +436,7 @@ int cellSaveDataListLoad2(u32 version, mem_ptr_t setList, m u32 focusIndex = focusSaveDataEntry(saveEntries, listSet->focusPosition); // TODO: Display the dialog here u32 selectedIndex = focusIndex; // TODO: Until the dialog is implemented, select always the focused entry - getSaveDataStat(saveEntries[selectedIndex], statGet.addr()); + getSaveDataStat(saveEntries[selectedIndex], statGet); result->userdata_addr = userdata_addr; funcStat(result, statGet, statSet); @@ -446,7 +446,7 @@ int cellSaveDataListLoad2(u32 version, mem_ptr_t setList, m return CELL_SAVEDATA_ERROR_CBRESULT; } - /*if (statSet->setParam.GetAddr()) + /*if (statSet->setParam) // TODO: Write PARAM.SFO file */ @@ -456,12 +456,12 @@ int cellSaveDataListLoad2(u32 version, mem_ptr_t setList, m return ret; } -int cellSaveDataFixedSave2(u32 version, mem_ptr_t setList, mem_ptr_t setBuf, +int cellSaveDataFixedSave2(u32 version, vm::ptr setList, vm::ptr setBuf, vm::ptr funcFixed, vm::ptr funcStat, vm::ptr funcFile, u32 container, u32 userdata_addr) { cellSysutil->Warning("cellSaveDataFixedSave2(version=%d, setList_addr=0x%x, setBuf_addr=0x%x, funcFixed_addr=0x%x, funcStat_addr=0x%x, funcFile_addr=0x%x, container=0x%x, userdata_addr=0x%x)", - version, setList.GetAddr(), setBuf.GetAddr(), funcFixed.addr(), funcStat.addr(), funcFile.addr(), container, userdata_addr); + version, setList.addr(), setBuf.addr(), funcFixed.addr(), funcStat.addr(), funcFile.addr(), container, userdata_addr); vm::var result; vm::var listGet; @@ -504,8 +504,8 @@ int cellSaveDataFixedSave2(u32 version, mem_ptr_t setList, cellSysutil->Error("cellSaveDataFixedSave2: CellSaveDataFixedCallback failed."); // TODO: Once we verify that the entire SysCall is working, delete this debug error message. return CELL_SAVEDATA_ERROR_CBRESULT; } - setSaveDataFixed(saveEntries, fixedSet.addr()); - getSaveDataStat(saveEntries[0], statGet.addr()); // There should be only one element in this list + setSaveDataFixed(saveEntries, fixedSet); + getSaveDataStat(saveEntries[0], statGet); // There should be only one element in this list // TODO: Display the Yes|No dialog here result->userdata_addr = userdata_addr; @@ -515,7 +515,7 @@ int cellSaveDataFixedSave2(u32 version, mem_ptr_t setList, cellSysutil->Error("cellSaveDataFixedSave2: CellSaveDataStatCallback failed."); // TODO: Once we verify that the entire SysCall is working, delete this debug error message. return CELL_SAVEDATA_ERROR_CBRESULT; } - /*if (statSet->setParam.GetAddr()) + /*if (statSet->setParam) // TODO: Write PARAM.SFO file */ @@ -525,12 +525,12 @@ int cellSaveDataFixedSave2(u32 version, mem_ptr_t setList, return ret; } -int cellSaveDataFixedLoad2(u32 version, mem_ptr_t setList, mem_ptr_t setBuf, +int cellSaveDataFixedLoad2(u32 version, vm::ptr setList, vm::ptr setBuf, vm::ptr funcFixed, vm::ptr funcStat, vm::ptr funcFile, u32 container, u32 userdata_addr) { cellSysutil->Warning("cellSaveDataFixedLoad2(version=%d, setList_addr=0x%x, setBuf=0x%x, funcList=0x%x, funcStat=0x%x, funcFile=0x%x, container=0x%x, userdata_addr=0x%x)", - version, setList.GetAddr(), setBuf.GetAddr(), funcFixed.addr(), funcStat.addr(), funcFile.addr(), container, userdata_addr); + version, setList.addr(), setBuf.addr(), funcFixed.addr(), funcStat.addr(), funcFile.addr(), container, userdata_addr); vm::var result; vm::var listGet; @@ -573,8 +573,8 @@ int cellSaveDataFixedLoad2(u32 version, mem_ptr_t setList, cellSysutil->Error("cellSaveDataFixedLoad2: CellSaveDataFixedCallback failed."); // TODO: Once we verify that the entire SysCall is working, delete this debug error message. return CELL_SAVEDATA_ERROR_CBRESULT; } - setSaveDataFixed(saveEntries, fixedSet.addr()); - getSaveDataStat(saveEntries[0], statGet.addr()); // There should be only one element in this list + setSaveDataFixed(saveEntries, fixedSet); + getSaveDataStat(saveEntries[0], statGet); // There should be only one element in this list // TODO: Display the Yes|No dialog here result->userdata_addr = userdata_addr; @@ -584,7 +584,7 @@ int cellSaveDataFixedLoad2(u32 version, mem_ptr_t setList, cellSysutil->Error("cellSaveDataFixedLoad2: CellSaveDataStatCallback failed."); // TODO: Once we verify that the entire SysCall is working, delete this debug error message. return CELL_SAVEDATA_ERROR_CBRESULT; } - /*if (statSet->setParam.GetAddr()) + /*if (statSet->setParam) // TODO: Write PARAM.SFO file */ @@ -594,12 +594,12 @@ int cellSaveDataFixedLoad2(u32 version, mem_ptr_t setList, return ret; } -int cellSaveDataAutoSave2(u32 version, u32 dirName_addr, u32 errDialog, mem_ptr_t setBuf, +int cellSaveDataAutoSave2(u32 version, u32 dirName_addr, u32 errDialog, vm::ptr setBuf, vm::ptr funcStat, vm::ptr funcFile, u32 container, u32 userdata_addr) { cellSysutil->Warning("cellSaveDataAutoSave2(version=%d, dirName_addr=0x%x, errDialog=%d, setBuf=0x%x, funcList=0x%x, funcStat=0x%x, funcFile=0x%x, container=0x%x, userdata_addr=0x%x)", - version, dirName_addr, errDialog, setBuf.GetAddr(), funcStat.addr(), funcFile.addr(), container, userdata_addr); + version, dirName_addr, errDialog, setBuf.addr(), funcStat.addr(), funcFile.addr(), container, userdata_addr); vm::var result; vm::var statGet; @@ -628,7 +628,7 @@ int cellSaveDataAutoSave2(u32 version, u32 dirName_addr, u32 errDialog, mem_ptr_ saveEntries.push_back(entry); } - getSaveDataStat(saveEntries[0], statGet.addr()); // There should be only one element in this list + getSaveDataStat(saveEntries[0], statGet); // There should be only one element in this list result->userdata_addr = userdata_addr; funcStat(result, statGet, statSet); @@ -637,7 +637,7 @@ int cellSaveDataAutoSave2(u32 version, u32 dirName_addr, u32 errDialog, mem_ptr_ cellSysutil->Error("cellSaveDataAutoSave2: CellSaveDataStatCallback failed."); // TODO: Once we verify that the entire SysCall is working, delete this debug error message. return CELL_SAVEDATA_ERROR_CBRESULT; } - /*if (statSet->setParam.GetAddr()) + /*if (statSet->setParam) // TODO: Write PARAM.SFO file */ @@ -647,12 +647,12 @@ int cellSaveDataAutoSave2(u32 version, u32 dirName_addr, u32 errDialog, mem_ptr_ return CELL_SAVEDATA_RET_OK; } -int cellSaveDataAutoLoad2(u32 version, u32 dirName_addr, u32 errDialog, mem_ptr_t setBuf, +int cellSaveDataAutoLoad2(u32 version, u32 dirName_addr, u32 errDialog, vm::ptr setBuf, vm::ptr funcStat, vm::ptr funcFile, u32 container, u32 userdata_addr) { cellSysutil->Warning("cellSaveDataAutoLoad2(version=%d, dirName_addr=0x%x, errDialog=%d, setBuf=0x%x, funcList=0x%x, funcStat=0x%x, funcFile=0x%x, container=0x%x, userdata_addr=0x%x)", - version, dirName_addr, errDialog, setBuf.GetAddr(), funcStat.addr(), funcFile.addr(), container, userdata_addr); + version, dirName_addr, errDialog, setBuf.addr(), funcStat.addr(), funcFile.addr(), container, userdata_addr); vm::var result; vm::var statGet; @@ -678,7 +678,7 @@ int cellSaveDataAutoLoad2(u32 version, u32 dirName_addr, u32 errDialog, mem_ptr_ return CELL_OK; // TODO: Can anyone check the actual behaviour of a PS3 when saves are not found? } - getSaveDataStat(saveEntries[0], statGet.addr()); // There should be only one element in this list + getSaveDataStat(saveEntries[0], statGet); // There should be only one element in this list result->userdata_addr = userdata_addr; funcStat(result, statGet, statSet); @@ -687,7 +687,7 @@ int cellSaveDataAutoLoad2(u32 version, u32 dirName_addr, u32 errDialog, mem_ptr_ cellSysutil->Error("cellSaveDataAutoLoad2: CellSaveDataStatCallback failed."); // TODO: Once we verify that the entire SysCall is working, delete this debug error message. return CELL_SAVEDATA_ERROR_CBRESULT; } - /*if (statSet->setParam.GetAddr()) + /*if (statSet->setParam) // TODO: Write PARAM.SFO file */ @@ -697,11 +697,11 @@ int cellSaveDataAutoLoad2(u32 version, u32 dirName_addr, u32 errDialog, mem_ptr_ return CELL_SAVEDATA_RET_OK; } -int cellSaveDataListAutoSave(u32 version, u32 errDialog, mem_ptr_t setList, mem_ptr_t setBuf, vm::ptr funcFixed, +int cellSaveDataListAutoSave(u32 version, u32 errDialog, vm::ptr setList, vm::ptr setBuf, vm::ptr funcFixed, vm::ptr funcStat, vm::ptr funcFile, u32 container, u32 userdata_addr) { cellSysutil->Warning("cellSaveDataListAutoSave(version=%d, errDialog=%d, setBuf=0x%x, funcFixed=0x%x, funcStat=0x%x, funcFile=0x%x, container=0x%x, userdata_addr=0x%x)", - version, errDialog, setList.GetAddr(), setBuf.GetAddr(), funcFixed.addr(), funcStat.addr(), funcFile.addr(), container, userdata_addr); + version, errDialog, setList.addr(), setBuf.addr(), funcFixed.addr(), funcStat.addr(), funcFile.addr(), container, userdata_addr); vm::var result; vm::var listGet; @@ -751,9 +751,9 @@ int cellSaveDataListAutoSave(u32 version, u32 errDialog, mem_ptr_tfixedList.GetAddr(), listSet->fixedListNum); - if (listSet->newData.GetAddr()) - addNewSaveDataEntry(saveEntries, (u32)listSet->newData.GetAddr()); + /*setSaveDataList(saveEntries, (u32)listSet->fixedList.addr(), listSet->fixedListNum); + if (listSet->newData) + addNewSaveDataEntry(saveEntries, (u32)listSet->newData.addr()); if (saveEntries.size() == 0) { cellSysutil->Warning("cellSaveDataListAutoSave: No save entries found!"); // TODO: Find a better way to handle this error return CELL_SAVEDATA_RET_OK; @@ -766,14 +766,14 @@ int cellSaveDataListAutoSave(u32 version, u32 errDialog, mem_ptr_tuserdata_addr = userdata_addr; funcStat(result, statGet, statSet); - Memory.Free(statGet->fileList.GetAddr()); + Memory.Free(statGet->fileList.addr()); if (result->result < 0) { cellSysutil->Error("cellSaveDataListAutoSave: CellSaveDataStatCallback failed."); // TODO: Once we verify that the entire SysCall is working, delete this debug error message. return CELL_SAVEDATA_ERROR_CBRESULT; }*/ - /*if (statSet->setParam.GetAddr()) - addNewSaveDataEntry(saveEntries, (u32)listSet->newData.GetAddr()); // TODO: This *is* wrong + /*if (statSet->setParam) + addNewSaveDataEntry(saveEntries, (u32)listSet->newData.addr()); // TODO: This *is* wrong */ // Enter the loop where the save files are read/created/deleted. @@ -782,11 +782,11 @@ int cellSaveDataListAutoSave(u32 version, u32 errDialog, mem_ptr_t setList, mem_ptr_t setBuf, vm::ptr funcFixed, +int cellSaveDataListAutoLoad(u32 version, u32 errDialog, vm::ptr setList, vm::ptr setBuf, vm::ptr funcFixed, vm::ptr funcStat, vm::ptr funcFile, u32 container, u32 userdata_addr) { cellSysutil->Warning("cellSaveDataListAutoLoad(version=%d, errDialog=%d, setBuf=0x%x, funcFixed=0x%x, funcStat=0x%x, funcFile=0x%x, container=0x%x, userdata_addr=0x%x)", - version, errDialog, setList.GetAddr(), setBuf.GetAddr(), funcFixed.addr(), funcStat.addr(), funcFile.addr(), container, userdata_addr); + version, errDialog, setList.addr(), setBuf.addr(), funcFixed.addr(), funcStat.addr(), funcFile.addr(), container, userdata_addr); vm::var result; vm::var listGet; @@ -836,9 +836,9 @@ int cellSaveDataListAutoLoad(u32 version, u32 errDialog, mem_ptr_tfixedList.GetAddr(), listSet->fixedListNum); - if (listSet->newData.GetAddr()) - addNewSaveDataEntry(saveEntries, (u32)listSet->newData.GetAddr()); + /*setSaveDataList(saveEntries, (u32)listSet->fixedList.addr(), listSet->fixedListNum); + if (listSet->newData) + addNewSaveDataEntry(saveEntries, (u32)listSet->newData.addr()); if (saveEntries.size() == 0) { cellSysutil->Warning("cellSaveDataListAutoLoad: No save entries found!"); // TODO: Find a better way to handle this error return CELL_SAVEDATA_RET_OK; @@ -851,14 +851,14 @@ int cellSaveDataListAutoLoad(u32 version, u32 errDialog, mem_ptr_tuserdata_addr = userdata_addr; funcStat(result.addr(), statGet.addr(), statSet.addr()); - Memory.Free(statGet->fileList.GetAddr()); + Memory.Free(statGet->fileList.addr()); if (result->result < 0) { cellSysutil->Error("cellSaveDataListAutoLoad: CellSaveDataStatCallback failed."); // TODO: Once we verify that the entire SysCall is working, delete this debug error message. return CELL_SAVEDATA_ERROR_CBRESULT; }*/ - /*if (statSet->setParam.GetAddr()) + /*if (statSet->setParam) // TODO: Write PARAM.SFO file */ diff --git a/rpcs3/Emu/SysCalls/Modules/cellSysutil_SaveData.h b/rpcs3/Emu/SysCalls/Modules/cellSysutil_SaveData.h index 1f0c92015e..b2ef5dbed7 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellSysutil_SaveData.h +++ b/rpcs3/Emu/SysCalls/Modules/cellSysutil_SaveData.h @@ -273,32 +273,32 @@ struct SaveDataEntry // Function declarations -int cellSaveDataListSave2(u32 version, mem_ptr_t setList, mem_ptr_t setBuf, +int cellSaveDataListSave2(u32 version, vm::ptr setList, vm::ptr setBuf, vm::ptr funcList, vm::ptr funcStat, vm::ptr funcFile, u32 container, u32 userdata_addr); -int cellSaveDataListLoad2(u32 version, mem_ptr_t setList, mem_ptr_t setBuf, +int cellSaveDataListLoad2(u32 version, vm::ptr setList, vm::ptr setBuf, vm::ptr funcList, vm::ptr funcStat, vm::ptr funcFile, u32 container, u32 userdata_addr); -int cellSaveDataFixedSave2(u32 version, mem_ptr_t setList, mem_ptr_t setBuf, +int cellSaveDataFixedSave2(u32 version, vm::ptr setList, vm::ptr setBuf, vm::ptr funcFixed, vm::ptr funcStat, vm::ptr funcFile, u32 container, u32 userdata_addr); -int cellSaveDataFixedLoad2(u32 version, mem_ptr_t setList, mem_ptr_t setBuf, +int cellSaveDataFixedLoad2(u32 version, vm::ptr setList, vm::ptr setBuf, vm::ptr funcFixed, vm::ptr funcStat, vm::ptr funcFile, u32 container, u32 userdata_addr); -int cellSaveDataAutoSave2(u32 version, u32 dirName_addr, u32 errDialog, mem_ptr_t setBuf, +int cellSaveDataAutoSave2(u32 version, u32 dirName_addr, u32 errDialog, vm::ptr setBuf, vm::ptr funcStat, vm::ptr funcFile, u32 container, u32 userdata_addr); -int cellSaveDataAutoLoad2(u32 version, u32 dirName_addr, u32 errDialog, mem_ptr_t setBuf, +int cellSaveDataAutoLoad2(u32 version, u32 dirName_addr, u32 errDialog, vm::ptr setBuf, vm::ptr funcStat, vm::ptr funcFile, u32 container, u32 userdata_addr); -int cellSaveDataListAutoSave(u32 version, u32 errDialog, mem_ptr_t setList, mem_ptr_t setBuf, vm::ptr funcFixed, +int cellSaveDataListAutoSave(u32 version, u32 errDialog, vm::ptr setList, vm::ptr setBuf, vm::ptr funcFixed, vm::ptr funcStat, vm::ptr funcFile, u32 container, u32 userdata_addr); -int cellSaveDataListAutoLoad(u32 version, u32 errDialog, mem_ptr_t setList, mem_ptr_t setBuf, vm::ptr funcFixed, +int cellSaveDataListAutoLoad(u32 version, u32 errDialog, vm::ptr setList, vm::ptr setBuf, vm::ptr funcFixed, vm::ptr funcStat, vm::ptr funcFile, u32 container, u32 userdata_addr); \ No newline at end of file diff --git a/rpcs3/Emu/SysCalls/Modules/cellUserInfo.cpp b/rpcs3/Emu/SysCalls/Modules/cellUserInfo.cpp index 3bf5a379af..162a32bc61 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellUserInfo.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellUserInfo.cpp @@ -11,9 +11,9 @@ //Module cellUserInfo(0x0032, cellUserInfo_init); Module *cellUserInfo = nullptr; -int cellUserInfoGetStat(u32 id, mem_ptr_t stat) +int cellUserInfoGetStat(u32 id, vm::ptr stat) { - cellUserInfo->Warning("cellUserInfoGetStat(id=%d, stat_addr=0x%x)", id, stat.GetAddr()); + cellUserInfo->Warning("cellUserInfoGetStat(id=%d, stat_addr=0x%x)", id, stat.addr()); if (id > CELL_USERINFO_USER_MAX) return CELL_USERINFO_ERROR_NOUSER; @@ -57,10 +57,10 @@ int cellUserInfoEnableOverlay() return CELL_OK; } -int cellUserInfoGetList(vm::ptr> listNum, mem_ptr_t listBuf, vm::ptr> currentUserId) +int cellUserInfoGetList(vm::ptr> listNum, vm::ptr listBuf, vm::ptr> currentUserId) { cellUserInfo->Warning("cellUserInfoGetList(listNum_addr=0x%x, listBuf_addr=0x%x, currentUserId_addr=0x%x)", - listNum.addr(), listBuf.GetAddr(), currentUserId.addr()); + listNum.addr(), listBuf.addr(), currentUserId.addr()); // If only listNum is NULL, an error will be returned if (listBuf && !listNum) diff --git a/rpcs3/Emu/SysCalls/Modules/cellUserInfo.h b/rpcs3/Emu/SysCalls/Modules/cellUserInfo.h index c48a2f9a2b..5edd525cb6 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellUserInfo.h +++ b/rpcs3/Emu/SysCalls/Modules/cellUserInfo.h @@ -42,7 +42,7 @@ struct CellUserInfoListSet be_t title_addr; // (char*) be_t focus; be_t fixedListNum; - mem_ptr_t fixedList; + vm::ptr fixedList; be_t reserved_addr; // (void*) }; diff --git a/rpcs3/Emu/SysCalls/Modules/cellVdec.cpp b/rpcs3/Emu/SysCalls/Modules/cellVdec.cpp index 7319219289..ebecbca4b8 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellVdec.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellVdec.cpp @@ -161,7 +161,7 @@ next: } } -u32 vdecQueryAttr(CellVdecCodecType type, u32 profile, u32 spec_addr /* may be 0 */, mem_ptr_t attr) +u32 vdecQueryAttr(CellVdecCodecType type, u32 profile, u32 spec_addr /* may be 0 */, vm::ptr attr) { switch (type) // TODO: check profile levels { @@ -482,34 +482,34 @@ u32 vdecOpen(VideoDecoder* data) return vdec_id; } -int cellVdecQueryAttr(const mem_ptr_t type, mem_ptr_t attr) +int cellVdecQueryAttr(const vm::ptr type, vm::ptr attr) { - cellVdec->Warning("cellVdecQueryAttr(type_addr=0x%x, attr_addr=0x%x)", type.GetAddr(), attr.GetAddr()); + cellVdec->Warning("cellVdecQueryAttr(type_addr=0x%x, attr_addr=0x%x)", type.addr(), attr.addr()); return vdecQueryAttr(type->codecType, type->profileLevel, 0, attr); } -int cellVdecQueryAttrEx(const mem_ptr_t type, mem_ptr_t attr) +int cellVdecQueryAttrEx(const vm::ptr type, vm::ptr attr) { - cellVdec->Warning("cellVdecQueryAttrEx(type_addr=0x%x, attr_addr=0x%x)", type.GetAddr(), attr.GetAddr()); + cellVdec->Warning("cellVdecQueryAttrEx(type_addr=0x%x, attr_addr=0x%x)", type.addr(), attr.addr()); return vdecQueryAttr(type->codecType, type->profileLevel, type->codecSpecificInfo_addr, attr); } -int cellVdecOpen(const mem_ptr_t type, const mem_ptr_t res, const mem_ptr_t cb, vm::ptr> handle) +int cellVdecOpen(const vm::ptr type, const vm::ptr res, const vm::ptr cb, vm::ptr> handle) { cellVdec->Warning("cellVdecOpen(type_addr=0x%x, res_addr=0x%x, cb_addr=0x%x, handle_addr=0x%x)", - type.GetAddr(), res.GetAddr(), cb.GetAddr(), handle.addr()); + type.addr(), res.addr(), cb.addr(), handle.addr()); *handle = vdecOpen(new VideoDecoder(type->codecType, type->profileLevel, res->memAddr, res->memSize, cb->cbFunc, cb->cbArg)); return CELL_OK; } -int cellVdecOpenEx(const mem_ptr_t type, const mem_ptr_t res, const mem_ptr_t cb, vm::ptr> handle) +int cellVdecOpenEx(const vm::ptr type, const vm::ptr res, const vm::ptr cb, vm::ptr> handle) { cellVdec->Warning("cellVdecOpenEx(type_addr=0x%x, res_addr=0x%x, cb_addr=0x%x, handle_addr=0x%x)", - type.GetAddr(), res.GetAddr(), cb.GetAddr(), handle.addr()); + type.addr(), res.addr(), cb.addr(), handle.addr()); *handle = vdecOpen(new VideoDecoder(type->codecType, type->profileLevel, res->memAddr, res->memSize, cb->cbFunc, cb->cbArg)); @@ -593,9 +593,9 @@ int cellVdecEndSeq(u32 handle) return CELL_OK; } -int cellVdecDecodeAu(u32 handle, CellVdecDecodeMode mode, const mem_ptr_t auInfo) +int cellVdecDecodeAu(u32 handle, CellVdecDecodeMode mode, const vm::ptr auInfo) { - cellVdec->Log("cellVdecDecodeAu(handle=%d, mode=0x%x, auInfo_addr=0x%x)", handle, mode, auInfo.GetAddr()); + cellVdec->Log("cellVdecDecodeAu(handle=%d, mode=0x%x, auInfo_addr=0x%x)", handle, mode, auInfo.addr()); VideoDecoder* vdec; if (!Emu.GetIdManager().GetIDData(handle, vdec)) @@ -617,9 +617,9 @@ int cellVdecDecodeAu(u32 handle, CellVdecDecodeMode mode, const mem_ptr_t format, u32 out_addr) +int cellVdecGetPicture(u32 handle, const vm::ptr format, u32 out_addr) { - cellVdec->Log("cellVdecGetPicture(handle=%d, format_addr=0x%x, out_addr=0x%x)", handle, format.GetAddr(), out_addr); + cellVdec->Log("cellVdecGetPicture(handle=%d, format_addr=0x%x, out_addr=0x%x)", handle, format.addr(), out_addr); VideoDecoder* vdec; if (!Emu.GetIdManager().GetIDData(handle, vdec)) @@ -690,7 +690,7 @@ int cellVdecGetPicItem(u32 handle, vm::ptr> picItem_ptr) AVFrame& frame = *vf.data; - mem_ptr_t info(vdec->memAddr + vdec->memBias); + auto info = vm::ptr::make(vdec->memAddr + vdec->memBias); vdec->memBias += 512; if (vdec->memBias + 512 > vdec->memSize) @@ -714,9 +714,9 @@ int cellVdecGetPicItem(u32 handle, vm::ptr> picItem_ptr) info->auUserData[1] = 0; info->status = CELL_OK; info->attr = CELL_VDEC_PICITEM_ATTR_NORMAL; - info->picInfo_addr = info.GetAddr() + sizeof(CellVdecPicItem); + info->picInfo_addr = info.addr() + sizeof(CellVdecPicItem); - mem_ptr_t avc(info.GetAddr() + sizeof(CellVdecPicItem)); + auto avc = vm::ptr::make(info.addr() + sizeof(CellVdecPicItem)); avc->horizontalSize = frame.width; avc->verticalSize = frame.height; @@ -775,7 +775,7 @@ int cellVdecGetPicItem(u32 handle, vm::ptr> picItem_ptr) avc->reserved[0] = 0; avc->reserved[1] = 0; - *picItem_ptr = info.GetAddr(); + *picItem_ptr = info.addr(); return CELL_OK; } diff --git a/rpcs3/Emu/SysCalls/Modules/cellVpost.cpp b/rpcs3/Emu/SysCalls/Modules/cellVpost.cpp index d35ead7ac9..8f0f800198 100644 --- a/rpcs3/Emu/SysCalls/Modules/cellVpost.cpp +++ b/rpcs3/Emu/SysCalls/Modules/cellVpost.cpp @@ -14,9 +14,9 @@ extern "C" //Module cellVpost(0x0008, cellVpost_init); Module *cellVpost = nullptr; -int cellVpostQueryAttr(const mem_ptr_t cfgParam, mem_ptr_t attr) +int cellVpostQueryAttr(const vm::ptr cfgParam, vm::ptr attr) { - cellVpost->Warning("cellVpostQueryAttr(cfgParam_addr=0x%x, attr_addr=0x%x)", cfgParam.GetAddr(), attr.GetAddr()); + cellVpost->Warning("cellVpostQueryAttr(cfgParam_addr=0x%x, attr_addr=0x%x)", cfgParam.addr(), attr.addr()); // TODO: check cfgParam and output values @@ -37,20 +37,20 @@ u32 vpostOpen(VpostInstance* data) return id; } -int cellVpostOpen(const mem_ptr_t cfgParam, const mem_ptr_t resource, vm::ptr> handle) +int cellVpostOpen(const vm::ptr cfgParam, const vm::ptr resource, vm::ptr> handle) { cellVpost->Warning("cellVpostOpen(cfgParam_addr=0x%x, resource_addr=0x%x, handle_addr=0x%x)", - cfgParam.GetAddr(), resource.GetAddr(), handle.addr()); + cfgParam.addr(), resource.addr(), handle.addr()); // TODO: check values *handle = vpostOpen(new VpostInstance(cfgParam->outPicFmt == CELL_VPOST_PIC_FMT_OUT_RGBA_ILV)); return CELL_OK; } -int cellVpostOpenEx(const mem_ptr_t cfgParam, const mem_ptr_t resource, vm::ptr> handle) +int cellVpostOpenEx(const vm::ptr cfgParam, const vm::ptr resource, vm::ptr> handle) { cellVpost->Warning("cellVpostOpenEx(cfgParam_addr=0x%x, resource_addr=0x%x, handle_addr=0x%x)", - cfgParam.GetAddr(), resource.GetAddr(), handle.addr()); + cfgParam.addr(), resource.addr(), handle.addr()); // TODO: check values *handle = vpostOpen(new VpostInstance(cfgParam->outPicFmt == CELL_VPOST_PIC_FMT_OUT_RGBA_ILV)); @@ -71,11 +71,11 @@ int cellVpostClose(u32 handle) return CELL_OK; } -int cellVpostExec(u32 handle, const u32 inPicBuff_addr, const mem_ptr_t ctrlParam, - u32 outPicBuff_addr, mem_ptr_t picInfo) +int cellVpostExec(u32 handle, const u32 inPicBuff_addr, const vm::ptr ctrlParam, + u32 outPicBuff_addr, vm::ptr picInfo) { cellVpost->Log("cellVpostExec(handle=0x%x, inPicBuff_addr=0x%x, ctrlParam_addr=0x%x, outPicBuff_addr=0x%x, picInfo_addr=0x%x)", - handle, inPicBuff_addr, ctrlParam.GetAddr(), outPicBuff_addr, picInfo.GetAddr()); + handle, inPicBuff_addr, ctrlParam.addr(), outPicBuff_addr, picInfo.addr()); VpostInstance* vpost; if (!Emu.GetIdManager().GetIDData(handle, vpost)) diff --git a/rpcs3/Emu/SysCalls/Modules/libmixer.cpp b/rpcs3/Emu/SysCalls/Modules/libmixer.cpp index 7fd2644af7..c41e29b132 100644 --- a/rpcs3/Emu/SysCalls/Modules/libmixer.cpp +++ b/rpcs3/Emu/SysCalls/Modules/libmixer.cpp @@ -141,10 +141,10 @@ int cellAANDisconnect(u32 receive, u32 receivePortNo, u32 source, u32 sourcePort return CELL_OK; } -int cellSSPlayerCreate(vm::ptr> handle, mem_ptr_t config) +int cellSSPlayerCreate(vm::ptr> handle, vm::ptr config) { libmixer->Warning("cellSSPlayerCreate(handle_addr=0x%x, config_addr=0x%x)", - handle.addr(), config.GetAddr()); + handle.addr(), config.addr()); if (config->outputMode != 0 || config->channels - 1 >= 2) { @@ -185,10 +185,10 @@ int cellSSPlayerRemove(u32 handle) return CELL_OK; } -int cellSSPlayerSetWave(u32 handle, mem_ptr_t waveInfo, mem_ptr_t commonInfo) +int cellSSPlayerSetWave(u32 handle, vm::ptr waveInfo, vm::ptr commonInfo) { libmixer->Warning("cellSSPlayerSetWave(handle=%d, waveInfo_addr=0x%x, commonInfo_addr=0x%x)", - handle, waveInfo.GetAddr(), commonInfo.GetAddr()); + handle, waveInfo.addr(), commonInfo.addr()); std::lock_guard lock(mixer_mutex); @@ -203,15 +203,15 @@ int cellSSPlayerSetWave(u32 handle, mem_ptr_t waveInfo, m ssp[handle].m_addr = waveInfo->addr; ssp[handle].m_samples = waveInfo->samples; ssp[handle].m_loop_start = waveInfo->loopStartOffset - 1; - ssp[handle].m_loop_mode = commonInfo.GetAddr() ? (u32)commonInfo->loopMode : CELL_SSPLAYER_ONESHOT; + ssp[handle].m_loop_mode = commonInfo ? (u32)commonInfo->loopMode : CELL_SSPLAYER_ONESHOT; ssp[handle].m_position = waveInfo->startOffset - 1; return CELL_OK; } -int cellSSPlayerPlay(u32 handle, mem_ptr_t info) +int cellSSPlayerPlay(u32 handle, vm::ptr info) { - libmixer->Warning("cellSSPlayerPlay(handle=%d, info_addr=0x%x)", handle, info.GetAddr()); + libmixer->Warning("cellSSPlayerPlay(handle=%d, info_addr=0x%x)", handle, info.addr()); std::lock_guard lock(mixer_mutex); @@ -252,9 +252,9 @@ int cellSSPlayerStop(u32 handle, u32 mode) return CELL_OK; } -int cellSSPlayerSetParam(u32 handle, mem_ptr_t info) +int cellSSPlayerSetParam(u32 handle, vm::ptr info) { - libmixer->Warning("cellSSPlayerSetParam(handle=%d, info_addr=0x%x)", handle, info.GetAddr()); + libmixer->Warning("cellSSPlayerSetParam(handle=%d, info_addr=0x%x)", handle, info.addr()); std::lock_guard lock(mixer_mutex); @@ -295,9 +295,9 @@ int cellSSPlayerGetState(u32 handle) return CELL_SSPLAYER_STATE_OFF; } -int cellSurMixerCreate(const mem_ptr_t config) +int cellSurMixerCreate(const vm::ptr config) { - libmixer->Warning("cellSurMixerCreate(config_addr=0x%x)", config.GetAddr()); + libmixer->Warning("cellSurMixerCreate(config_addr=0x%x)", config.addr()); surMixer = *config; @@ -554,9 +554,9 @@ int cellSurMixerSurBusAddData(u32 busNo, u32 offset, u32 addr, u32 samples) return CELL_OK; } -int cellSurMixerChStripSetParameter(u32 type, u32 index, mem_ptr_t param) +int cellSurMixerChStripSetParameter(u32 type, u32 index, vm::ptr param) { - libmixer->Todo("cellSurMixerChStripSetParameter(type=%d, index=%d, param_addr=0x%x)", type, index, param.GetAddr()); + libmixer->Todo("cellSurMixerChStripSetParameter(type=%d, index=%d, param_addr=0x%x)", type, index, param.addr()); return CELL_OK; } diff --git a/rpcs3/Emu/SysCalls/Modules/libsynth2.cpp b/rpcs3/Emu/SysCalls/Modules/libsynth2.cpp index 5f335b1e58..9cc4119865 100644 --- a/rpcs3/Emu/SysCalls/Modules/libsynth2.cpp +++ b/rpcs3/Emu/SysCalls/Modules/libsynth2.cpp @@ -58,15 +58,15 @@ u32 cellSoundSynth2GetAddr(u16 reg) return 0; } -int cellSoundSynth2SetEffectAttr(s16 bus, mem_ptr_t attr) +int cellSoundSynth2SetEffectAttr(s16 bus, vm::ptr attr) { - libsynth2.Todo("cellSoundSynth2SetEffectAttr(bus=%d, attr_addr=0x%x)", bus, attr.GetAddr()); + libsynth2.Todo("cellSoundSynth2SetEffectAttr(bus=%d, attr_addr=0x%x)", bus, attr.addr()); return CELL_OK; } -int cellSoundSynth2SetEffectMode(s16 bus, mem_ptr_t attr) +int cellSoundSynth2SetEffectMode(s16 bus, vm::ptr attr) { - libsynth2.Todo("cellSoundSynth2SetEffectMode(bus=%d, attr_addr=0x%x)", bus, attr.GetAddr()); + libsynth2.Todo("cellSoundSynth2SetEffectMode(bus=%d, attr_addr=0x%x)", bus, attr.addr()); return CELL_OK; } diff --git a/rpcs3/Emu/SysCalls/Modules/sceNpTrophy.cpp b/rpcs3/Emu/SysCalls/Modules/sceNpTrophy.cpp index 3969646ff9..76676966d0 100644 --- a/rpcs3/Emu/SysCalls/Modules/sceNpTrophy.cpp +++ b/rpcs3/Emu/SysCalls/Modules/sceNpTrophy.cpp @@ -85,10 +85,10 @@ int sceNpTrophyInit(u32 pool_addr, u32 poolSize, u32 containerId, u64 options) return CELL_OK; } -int sceNpTrophyCreateContext(vm::ptr> context, mem_ptr_t commID, mem_ptr_t commSign, u64 options) +int sceNpTrophyCreateContext(vm::ptr> context, vm::ptr commID, vm::ptr commSign, u64 options) { sceNpTrophy->Warning("sceNpTrophyCreateContext(context_addr=0x%x, commID_addr=0x%x, commSign_addr=0x%x, options=0x%llx)", - context.addr(), commID.GetAddr(), commSign.GetAddr(), options); + context.addr(), commID.addr(), commSign.addr(), options); if (!s_npTrophyInstance.m_bInitialized) return SCE_NP_TROPHY_ERROR_NOT_INITIALIZED; @@ -244,10 +244,10 @@ int sceNpTrophyAbortHandle() return CELL_OK; } -int sceNpTrophyGetGameInfo(u32 context, u32 handle, mem_ptr_t details, mem_ptr_t data) +int sceNpTrophyGetGameInfo(u32 context, u32 handle, vm::ptr details, vm::ptr data) { sceNpTrophy->Warning("sceNpTrophyGetGameInfo(context=%d, handle=%d, details_addr=0x%x, data_addr=0x%x)", - context, handle, details.GetAddr(), data.GetAddr()); + context, handle, details.addr(), data.addr()); if (!s_npTrophyInstance.m_bInitialized) return SCE_NP_TROPHY_ERROR_NOT_INITIALIZED; @@ -333,10 +333,10 @@ int sceNpTrophyTerm() return CELL_OK; } -int sceNpTrophyGetTrophyUnlockState(u32 context, u32 handle, mem_ptr_t flags, vm::ptr> count) +int sceNpTrophyGetTrophyUnlockState(u32 context, u32 handle, vm::ptr flags, vm::ptr> count) { sceNpTrophy->Warning("sceNpTrophyGetTrophyUnlockState(context=%d, handle=%d, flags_addr=0x%x, count_addr=0x%x)", - context, handle, flags.GetAddr(), count.addr()); + context, handle, flags.addr(), count.addr()); if (!s_npTrophyInstance.m_bInitialized) return SCE_NP_TROPHY_ERROR_NOT_INITIALIZED; @@ -365,10 +365,10 @@ int sceNpTrophyGetTrophyIcon() return CELL_OK; } -int sceNpTrophyGetTrophyInfo(u32 context, u32 handle, s32 trophyId, mem_ptr_t details, mem_ptr_t data) +int sceNpTrophyGetTrophyInfo(u32 context, u32 handle, s32 trophyId, vm::ptr details, vm::ptr data) { sceNpTrophy->Warning("sceNpTrophyGetTrophyInfo(context=%u, handle=%u, trophyId=%d, details_addr=0x%x, data_addr=0x%x)", - context, handle, trophyId, details.GetAddr(), data.GetAddr()); + context, handle, trophyId, details.addr(), data.addr()); if (!s_npTrophyInstance.m_bInitialized) return SCE_NP_TROPHY_ERROR_NOT_INITIALIZED; diff --git a/rpcs3/Emu/SysCalls/Modules/sysPrxForUser.cpp b/rpcs3/Emu/SysCalls/Modules/sysPrxForUser.cpp index 377cd87522..9187629fd3 100644 --- a/rpcs3/Emu/SysCalls/Modules/sysPrxForUser.cpp +++ b/rpcs3/Emu/SysCalls/Modules/sysPrxForUser.cpp @@ -89,15 +89,15 @@ int sys_spu_elf_get_information(u32 elf_img, vm::ptr> entry, vm::ptr segments, int nseg) +int sys_spu_elf_get_segments(u32 elf_img, vm::ptr segments, int nseg) { - sysPrxForUser->Todo("sys_spu_elf_get_segments(elf_img=0x%x, segments_addr=0x%x, nseg=0x%x)", elf_img, segments.GetAddr(), nseg); + sysPrxForUser->Todo("sys_spu_elf_get_segments(elf_img=0x%x, segments_addr=0x%x, nseg=0x%x)", elf_img, segments.addr(), nseg); return CELL_OK; } -int sys_spu_image_import(mem_ptr_t img, u32 src, u32 type) +int sys_spu_image_import(vm::ptr img, u32 src, u32 type) { - sysPrxForUser->Warning("sys_spu_image_import(img=0x%x, src=0x%x, type=0x%x)", img.GetAddr(), src, type); + sysPrxForUser->Warning("sys_spu_image_import(img=0x%x, src=0x%x, type=0x%x)", img.addr(), src, type); vfsStreamMemory f(src); u32 entry; @@ -111,9 +111,9 @@ int sys_spu_image_import(mem_ptr_t img, u32 src, u32 type) return CELL_OK; } -int sys_spu_image_close(mem_ptr_t img) +int sys_spu_image_close(vm::ptr img) { - sysPrxForUser->Warning("sys_spu_image_close(img=0x%x)", img.GetAddr()); + sysPrxForUser->Warning("sys_spu_image_close(img=0x%x)", img.addr()); return CELL_OK; } @@ -139,9 +139,9 @@ int sys_raw_spu_load(int id, u32 path_addr, vm::ptr> entry) return CELL_OK; } -int sys_raw_spu_image_load(int id, mem_ptr_t img) +int sys_raw_spu_image_load(int id, vm::ptr img) { - sysPrxForUser->Warning("sys_raw_spu_image_load(id=0x%x, img_addr=0x%x)", id, img.GetAddr()); + sysPrxForUser->Warning("sys_raw_spu_image_load(id=0x%x, img_addr=0x%x)", id, img.addr()); memcpy(Memory + (RAW_SPU_BASE_ADDR + RAW_SPU_OFFSET * id), Memory + (u32)img->segs_addr, 256 * 1024); Memory.Write32(RAW_SPU_BASE_ADDR + RAW_SPU_OFFSET * id + RAW_SPU_PROB_OFFSET + SPU_NPC_offs, (u32)img->entry_point); diff --git a/rpcs3/Emu/SysCalls/Modules/sys_net.cpp b/rpcs3/Emu/SysCalls/Modules/sys_net.cpp index fa20136f5c..770c7ffdf4 100644 --- a/rpcs3/Emu/SysCalls/Modules/sys_net.cpp +++ b/rpcs3/Emu/SysCalls/Modules/sys_net.cpp @@ -94,17 +94,17 @@ using pck_len_t = u32; #endif // Functions -int sys_net_accept(s32 s, mem_ptr_t addr, vm::ptr> paddrlen) +int sys_net_accept(s32 s, vm::ptr addr, vm::ptr> paddrlen) { - sys_net->Warning("accept(s=%d, family_addr=0x%x, paddrlen=0x%x)", s, addr.GetAddr(), paddrlen.addr()); - if (addr.GetAddr() == 0) { + sys_net->Warning("accept(s=%d, family_addr=0x%x, paddrlen=0x%x)", s, addr.addr(), paddrlen.addr()); + if (!addr) { int ret = accept(s, NULL, NULL); *g_lastError = getLastError(); return ret; } else { sockaddr _addr; - memcpy(&_addr, Memory.VirtualToRealAddr(addr.GetAddr()), sizeof(sockaddr)); + memcpy(&_addr, addr.get_ptr(), sizeof(sockaddr)); _addr.sa_family = addr->sa_family; pck_len_t *_paddrlen = (pck_len_t *)Memory.VirtualToRealAddr(paddrlen.addr()); int ret = accept(s, &_addr, _paddrlen); @@ -113,11 +113,11 @@ int sys_net_accept(s32 s, mem_ptr_t addr, vm::ptr> p } } -int sys_net_bind(s32 s, mem_ptr_t addr, u32 addrlen) +int sys_net_bind(s32 s, vm::ptr addr, u32 addrlen) { - sys_net->Warning("bind(s=%d, family_addr=0x%x, addrlen=%u)", s, addr.GetAddr(), addrlen); + sys_net->Warning("bind(s=%d, family_addr=0x%x, addrlen=%u)", s, addr.addr(), addrlen); sockaddr_in saddr; - memcpy(&saddr, Memory.VirtualToRealAddr(addr.GetAddr()), sizeof(sockaddr_in)); + memcpy(&saddr, addr.get_ptr(), sizeof(sockaddr_in)); saddr.sin_family = addr->sin_family; const char *ipaddr = inet_ntoa(saddr.sin_addr); sys_net->Warning("binding on %s to port %d", ipaddr, ntohs(saddr.sin_port)); @@ -126,11 +126,11 @@ int sys_net_bind(s32 s, mem_ptr_t addr, u32 addrlen) return ret; } -int sys_net_connect(s32 s, mem_ptr_t addr, u32 addrlen) +int sys_net_connect(s32 s, vm::ptr addr, u32 addrlen) { - sys_net->Warning("connect(s=%d, family_addr=0x%x, addrlen=%u)", s, addr.GetAddr(), addrlen); + sys_net->Warning("connect(s=%d, family_addr=0x%x, addrlen=%u)", s, addr.addr(), addrlen); sockaddr_in saddr; - memcpy(&saddr, Memory.VirtualToRealAddr(addr.GetAddr()), sizeof(sockaddr_in)); + memcpy(&saddr, addr.get_ptr(), sizeof(sockaddr_in)); saddr.sin_family = addr->sin_family; const char *ipaddr = inet_ntoa(saddr.sin_addr); sys_net->Warning("connecting on %s to port %d", ipaddr, ntohs(saddr.sin_port)); @@ -242,14 +242,14 @@ int sys_net_recv(s32 s, u32 buf_addr, u32 len, s32 flags) return ret; } -int sys_net_recvfrom(s32 s, u32 buf_addr, u32 len, s32 flags, mem_ptr_t addr, vm::ptr> paddrlen) +int sys_net_recvfrom(s32 s, u32 buf_addr, u32 len, s32 flags, vm::ptr addr, vm::ptr> paddrlen) { sys_net->Warning("recvfrom(s=%d, buf_addr=0x%x, len=%u, flags=0x%x, addr_addr=0x%x, paddrlen=0x%x)", - s, buf_addr, len, flags, addr.GetAddr(), paddrlen.addr()); + s, buf_addr, len, flags, addr.addr(), paddrlen.addr()); char *_buf_addr = (char *)Memory.VirtualToRealAddr(buf_addr); sockaddr _addr; - memcpy(&_addr, Memory.VirtualToRealAddr(addr.GetAddr()), sizeof(sockaddr)); + memcpy(&_addr, addr.get_ptr(), sizeof(sockaddr)); _addr.sa_family = addr->sa_family; pck_len_t *_paddrlen = (pck_len_t *) Memory.VirtualToRealAddr(paddrlen.addr()); int ret = recvfrom(s, _buf_addr, len, flags, &_addr, _paddrlen); @@ -278,14 +278,14 @@ int sendmsg() return CELL_OK; } -int sys_net_sendto(s32 s, u32 buf_addr, u32 len, s32 flags, mem_ptr_t addr, u32 addrlen) +int sys_net_sendto(s32 s, u32 buf_addr, u32 len, s32 flags, vm::ptr addr, u32 addrlen) { sys_net->Warning("sendto(s=%d, buf_addr=0x%x, len=%u, flags=0x%x, addr=0x%x, addrlen=%u)", - s, buf_addr, len, flags, addr.GetAddr(), addrlen); + s, buf_addr, len, flags, addr.addr(), addrlen); char *_buf_addr = (char *)Memory.VirtualToRealAddr(buf_addr); sockaddr _addr; - memcpy(&_addr, Memory.VirtualToRealAddr(addr.GetAddr()), sizeof(sockaddr)); + memcpy(&_addr, addr.get_ptr(), sizeof(sockaddr)); _addr.sa_family = addr->sa_family; int ret = sendto(s, _buf_addr, len, flags, &_addr, addrlen); *g_lastError = getLastError(); @@ -341,9 +341,9 @@ int socketselect() return CELL_OK; } -int sys_net_initialize_network_ex(mem_ptr_t param) +int sys_net_initialize_network_ex(vm::ptr param) { - sys_net->Warning("sys_net_initialize_network_ex(param_addr=0x%x)", param.GetAddr()); + sys_net->Warning("sys_net_initialize_network_ex(param_addr=0x%x)", param.addr()); g_lastError = vm::ptr>::make((u32)Memory.Alloc(4, 1)); #ifdef _WIN32 WSADATA wsaData; diff --git a/rpcs3/Emu/SysCalls/lv2/lv2Fs.cpp b/rpcs3/Emu/SysCalls/lv2/lv2Fs.cpp index 77470ce7f4..87bd66a694 100644 --- a/rpcs3/Emu/SysCalls/lv2/lv2Fs.cpp +++ b/rpcs3/Emu/SysCalls/lv2/lv2Fs.cpp @@ -178,9 +178,9 @@ s32 cellFsOpendir(u32 path_addr, vm::ptr> fd) return CELL_OK; } -s32 cellFsReaddir(u32 fd, mem_ptr_t dir, vm::ptr> nread) +s32 cellFsReaddir(u32 fd, vm::ptr dir, vm::ptr> nread) { - sys_fs->Log("cellFsReaddir(fd=%d, dir_addr=0x%x, nread_addr=0x%x)", fd, dir.GetAddr(), nread.addr()); + sys_fs->Log("cellFsReaddir(fd=%d, dir_addr=0x%x, nread_addr=0x%x)", fd, dir.addr(), nread.addr()); vfsDirBase* directory; if(!sys_fs->CheckId(fd, directory)) @@ -190,7 +190,7 @@ s32 cellFsReaddir(u32 fd, mem_ptr_t dir, vm::ptr> nread) if(info) { *nread = 1; - Memory.WriteString(dir.GetAddr()+2, info->name); + Memory.WriteString(dir.addr() + 2, info->name); dir->d_namlen = info->name.length(); dir->d_type = (info->flags & DirEntry_TypeFile) ? CELL_FS_TYPE_REGULAR : CELL_FS_TYPE_DIRECTORY; } @@ -212,10 +212,10 @@ s32 cellFsClosedir(u32 fd) return CELL_OK; } -s32 cellFsStat(const u32 path_addr, mem_ptr_t sb) +s32 cellFsStat(const u32 path_addr, vm::ptr sb) { const std::string& path = Memory.ReadString(path_addr); - sys_fs->Warning("cellFsStat(path=\"%s\", sb_addr: 0x%x)", path.c_str(), sb.GetAddr()); + sys_fs->Warning("cellFsStat(path=\"%s\", sb_addr: 0x%x)", path.c_str(), sb.addr()); sb->st_mode = CELL_FS_S_IRUSR | CELL_FS_S_IWUSR | CELL_FS_S_IXUSR | @@ -252,9 +252,9 @@ s32 cellFsStat(const u32 path_addr, mem_ptr_t sb) return CELL_ENOENT; } -s32 cellFsFstat(u32 fd, mem_ptr_t sb) +s32 cellFsFstat(u32 fd, vm::ptr sb) { - sys_fs->Log("cellFsFstat(fd=%d, sb_addr: 0x%x)", fd, sb.GetAddr()); + sys_fs->Log("cellFsFstat(fd=%d, sb_addr: 0x%x)", fd, sb.addr()); IDType type; vfsStream* file; @@ -503,10 +503,10 @@ s32 cellFsGetFreeSize(u32 path_addr, vm::ptr> block_size, vm::ptr entries, u32 entries_size, vm::ptr> data_count) +s32 cellFsGetDirectoryEntries(u32 fd, vm::ptr entries, u32 entries_size, vm::ptr> data_count) { sys_fs->Log("cellFsGetDirectoryEntries(fd=%d, entries_addr=0x%x, entries_size = 0x%x, data_count_addr=0x%x)", - fd, entries.GetAddr(), entries_size, data_count.addr()); + fd, entries.addr(), entries_size, data_count.addr()); vfsDirBase* directory; if(!sys_fs->CheckId(fd, directory)) @@ -516,7 +516,7 @@ s32 cellFsGetDirectoryEntries(u32 fd, mem_ptr_t entries, u if(info) { *data_count = 1; - Memory.WriteString(entries.GetAddr()+2, info->name); + Memory.WriteString(entries.addr()+2, info->name); entries->entry_name.d_namlen = info->name.length(); entries->entry_name.d_type = (info->flags & DirEntry_TypeFile) ? CELL_FS_TYPE_REGULAR : CELL_FS_TYPE_DIRECTORY; @@ -540,9 +540,9 @@ s32 cellFsGetDirectoryEntries(u32 fd, mem_ptr_t entries, u return CELL_OK; } -s32 cellFsStReadInit(u32 fd, mem_ptr_t ringbuf) +s32 cellFsStReadInit(u32 fd, vm::ptr ringbuf) { - sys_fs->Warning("cellFsStReadInit(fd=%d, ringbuf_addr=0x%x)", fd, ringbuf.GetAddr()); + sys_fs->Warning("cellFsStReadInit(fd=%d, ringbuf_addr=0x%x)", fd, ringbuf.addr()); vfsStream* file; if(!sys_fs->CheckId(fd, file)) return CELL_ESRCH; @@ -575,9 +575,9 @@ s32 cellFsStReadFinish(u32 fd) return CELL_OK; } -s32 cellFsStReadGetRingBuf(u32 fd, mem_ptr_t ringbuf) +s32 cellFsStReadGetRingBuf(u32 fd, vm::ptr ringbuf) { - sys_fs->Warning("cellFsStReadGetRingBuf(fd=%d, ringbuf_addr=0x%x)", fd, ringbuf.GetAddr()); + sys_fs->Warning("cellFsStReadGetRingBuf(fd=%d, ringbuf_addr=0x%x)", fd, ringbuf.addr()); vfsStream* file; if(!sys_fs->CheckId(fd, file)) return CELL_ESRCH; diff --git a/rpcs3/Emu/SysCalls/lv2/lv2Fs.h b/rpcs3/Emu/SysCalls/lv2/lv2Fs.h index df017a78d3..0c891ff452 100644 --- a/rpcs3/Emu/SysCalls/lv2/lv2Fs.h +++ b/rpcs3/Emu/SysCalls/lv2/lv2Fs.h @@ -129,10 +129,10 @@ s32 cellFsRead(u32 fd, u32 buf_addr, u64 nbytes, vm::ptr> nread); s32 cellFsWrite(u32 fd, u32 buf_addr, u64 nbytes, vm::ptr> nwrite); s32 cellFsClose(u32 fd); s32 cellFsOpendir(u32 path_addr, vm::ptr> fd); -s32 cellFsReaddir(u32 fd, mem_ptr_t dir, vm::ptr> nread); +s32 cellFsReaddir(u32 fd, vm::ptr dir, vm::ptr> nread); s32 cellFsClosedir(u32 fd); -s32 cellFsStat(u32 path_addr, mem_ptr_t sb); -s32 cellFsFstat(u32 fd, mem_ptr_t sb); +s32 cellFsStat(u32 path_addr, vm::ptr sb); +s32 cellFsFstat(u32 fd, vm::ptr sb); s32 cellFsMkdir(u32 path_addr, u32 mode); s32 cellFsRename(u32 from_addr, u32 to_addr); s32 cellFsChmod(u32 path_addr, u32 mode); @@ -145,10 +145,10 @@ s32 cellFsTruncate(u32 path_addr, u64 size); s32 cellFsFGetBlockSize(u32 fd, vm::ptr> sector_size, vm::ptr> block_size); s32 cellFsGetBlockSize(u32 path_addr, vm::ptr> sector_size, vm::ptr> block_size); s32 cellFsGetFreeSize(u32 path_addr, vm::ptr> block_size, vm::ptr> block_count); -s32 cellFsGetDirectoryEntries(u32 fd, mem_ptr_t entries, u32 entries_size, vm::ptr> data_count); -s32 cellFsStReadInit(u32 fd, mem_ptr_t ringbuf); +s32 cellFsGetDirectoryEntries(u32 fd, vm::ptr entries, u32 entries_size, vm::ptr> data_count); +s32 cellFsStReadInit(u32 fd, vm::ptr ringbuf); s32 cellFsStReadFinish(u32 fd); -s32 cellFsStReadGetRingBuf(u32 fd, mem_ptr_t ringbuf); +s32 cellFsStReadGetRingBuf(u32 fd, vm::ptr ringbuf); s32 cellFsStReadGetStatus(u32 fd, vm::ptr> status); s32 cellFsStReadGetRegid(u32 fd, vm::ptr> regid); s32 cellFsStReadStart(u32 fd, u64 offset, u64 size); diff --git a/rpcs3/Emu/SysCalls/lv2/sys_cond.cpp b/rpcs3/Emu/SysCalls/lv2/sys_cond.cpp index 7207268f88..8fdc6b6766 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_cond.cpp +++ b/rpcs3/Emu/SysCalls/lv2/sys_cond.cpp @@ -9,10 +9,10 @@ SysCallBase sys_cond("sys_cond"); -s32 sys_cond_create(vm::ptr> cond_id, u32 mutex_id, mem_ptr_t attr) +s32 sys_cond_create(vm::ptr> cond_id, u32 mutex_id, vm::ptr attr) { sys_cond.Log("sys_cond_create(cond_id_addr=0x%x, mutex_id=%d, attr_addr=0x%x)", - cond_id.addr(), mutex_id, attr.GetAddr()); + cond_id.addr(), mutex_id, attr.addr()); if (attr->pshared.ToBE() != se32(0x200)) { diff --git a/rpcs3/Emu/SysCalls/lv2/sys_cond.h b/rpcs3/Emu/SysCalls/lv2/sys_cond.h index 0ed9846980..3ed2c93eca 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_cond.h +++ b/rpcs3/Emu/SysCalls/lv2/sys_cond.h @@ -31,7 +31,7 @@ struct Cond }; // SysCalls -s32 sys_cond_create(vm::ptr> cond_id, u32 mutex_id, mem_ptr_t attr); +s32 sys_cond_create(vm::ptr> cond_id, u32 mutex_id, vm::ptr attr); s32 sys_cond_destroy(u32 cond_id); s32 sys_cond_wait(u32 cond_id, u64 timeout); s32 sys_cond_signal(u32 cond_id); diff --git a/rpcs3/Emu/SysCalls/lv2/sys_event.cpp b/rpcs3/Emu/SysCalls/lv2/sys_event.cpp index 7feff56bf5..bb6f0e5f89 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_event.cpp +++ b/rpcs3/Emu/SysCalls/lv2/sys_event.cpp @@ -10,10 +10,10 @@ SysCallBase sys_event("sys_event"); -s32 sys_event_queue_create(vm::ptr> equeue_id, mem_ptr_t attr, u64 event_queue_key, int size) +s32 sys_event_queue_create(vm::ptr> equeue_id, vm::ptr attr, u64 event_queue_key, int size) { sys_event.Warning("sys_event_queue_create(equeue_id_addr=0x%x, attr_addr=0x%x, event_queue_key=0x%llx, size=%d)", - equeue_id.addr(), attr.GetAddr(), event_queue_key, size); + equeue_id.addr(), attr.addr(), event_queue_key, size); if(size <= 0 || size > 127) { @@ -102,10 +102,10 @@ s32 sys_event_queue_destroy(u32 equeue_id, int mode) return CELL_OK; } -s32 sys_event_queue_tryreceive(u32 equeue_id, mem_ptr_t event_array, int size, vm::ptr> number) +s32 sys_event_queue_tryreceive(u32 equeue_id, vm::ptr event_array, int size, vm::ptr> number) { sys_event.Todo("sys_event_queue_tryreceive(equeue_id=%d, event_array_addr=0x%x, size=%d, number_addr=0x%x)", - equeue_id, event_array.GetAddr(), size, number.addr()); + equeue_id, event_array.addr(), size, number.addr()); EventQueue* eq; if (!Emu.GetIdManager().GetIDData(equeue_id, eq)) @@ -135,16 +135,16 @@ s32 sys_event_queue_tryreceive(u32 equeue_id, mem_ptr_t event_ar eq->sq.m_mutex.unlock(); return CELL_OK; } - *number = eq->events.pop_all((sys_event_data*)(Memory + event_array.GetAddr()), size); + *number = eq->events.pop_all((sys_event_data*)(Memory + event_array.addr()), size); eq->owner.unlock(tid); eq->sq.m_mutex.unlock(); return CELL_OK; } -s32 sys_event_queue_receive(u32 equeue_id, mem_ptr_t event, u64 timeout) +s32 sys_event_queue_receive(u32 equeue_id, vm::ptr event, u64 timeout) { sys_event.Log("sys_event_queue_receive(equeue_id=%d, event_addr=0x%x, timeout=%lld)", - equeue_id, event.GetAddr(), timeout); + equeue_id, event.addr(), timeout); EventQueue* eq; if (!Emu.GetIdManager().GetIDData(equeue_id, eq)) diff --git a/rpcs3/Emu/SysCalls/lv2/sys_event.h b/rpcs3/Emu/SysCalls/lv2/sys_event.h index 8926ed1591..c379370d45 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_event.h +++ b/rpcs3/Emu/SysCalls/lv2/sys_event.h @@ -216,10 +216,10 @@ struct EventQueue }; // SysCalls -s32 sys_event_queue_create(vm::ptr> equeue_id, mem_ptr_t attr, u64 event_queue_key, int size); +s32 sys_event_queue_create(vm::ptr> equeue_id, vm::ptr attr, u64 event_queue_key, int size); s32 sys_event_queue_destroy(u32 equeue_id, int mode); -s32 sys_event_queue_receive(u32 equeue_id, mem_ptr_t event, u64 timeout); -s32 sys_event_queue_tryreceive(u32 equeue_id, mem_ptr_t event_array, int size, vm::ptr> number); +s32 sys_event_queue_receive(u32 equeue_id, vm::ptr event, u64 timeout); +s32 sys_event_queue_tryreceive(u32 equeue_id, vm::ptr event_array, int size, vm::ptr> number); s32 sys_event_queue_drain(u32 event_queue_id); s32 sys_event_port_create(vm::ptr> eport_id, int port_type, u64 name); diff --git a/rpcs3/Emu/SysCalls/lv2/sys_event_flag.cpp b/rpcs3/Emu/SysCalls/lv2/sys_event_flag.cpp index 274924d9de..98a29d0643 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_event_flag.cpp +++ b/rpcs3/Emu/SysCalls/lv2/sys_event_flag.cpp @@ -37,10 +37,10 @@ u32 EventFlag::check() return target; } -s32 sys_event_flag_create(vm::ptr> eflag_id, mem_ptr_t attr, u64 init) +s32 sys_event_flag_create(vm::ptr> eflag_id, vm::ptr attr, u64 init) { sys_event_flag.Warning("sys_event_flag_create(eflag_id_addr=0x%x, attr_addr=0x%x, init=0x%llx)", - eflag_id.addr(), attr.GetAddr(), init); + eflag_id.addr(), attr.addr(), init); switch (attr->protocol.ToBE()) { diff --git a/rpcs3/Emu/SysCalls/lv2/sys_event_flag.h b/rpcs3/Emu/SysCalls/lv2/sys_event_flag.h index d6dd8ac4e5..90a4fc7a54 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_event_flag.h +++ b/rpcs3/Emu/SysCalls/lv2/sys_event_flag.h @@ -50,7 +50,7 @@ struct EventFlag u32 check(); }; -s32 sys_event_flag_create(vm::ptr> eflag_id, mem_ptr_t attr, u64 init); +s32 sys_event_flag_create(vm::ptr> eflag_id, vm::ptr attr, u64 init); s32 sys_event_flag_destroy(u32 eflag_id); s32 sys_event_flag_wait(u32 eflag_id, u64 bitptn, u32 mode, vm::ptr> result, u64 timeout); s32 sys_event_flag_trywait(u32 eflag_id, u64 bitptn, u32 mode, vm::ptr> result); diff --git a/rpcs3/Emu/SysCalls/lv2/sys_lwcond.cpp b/rpcs3/Emu/SysCalls/lv2/sys_lwcond.cpp index 79bb73ea62..56d1dbd4c9 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_lwcond.cpp +++ b/rpcs3/Emu/SysCalls/lv2/sys_lwcond.cpp @@ -9,24 +9,24 @@ SysCallBase sys_lwcond("sys_lwcond"); -s32 sys_lwcond_create(mem_ptr_t lwcond, mem_ptr_t lwmutex, mem_ptr_t attr) +s32 sys_lwcond_create(vm::ptr lwcond, vm::ptr lwmutex, vm::ptr attr) { sys_lwcond.Log("sys_lwcond_create(lwcond_addr=0x%x, lwmutex_addr=0x%x, attr_addr=0x%x)", - lwcond.GetAddr(), lwmutex.GetAddr(), attr.GetAddr()); + lwcond.addr(), lwmutex.addr(), attr.addr()); u32 id = sys_lwcond.GetNewId(new Lwcond(attr->name_u64), TYPE_LWCOND); - lwcond->lwmutex = lwmutex.GetAddr(); + lwcond->lwmutex = lwmutex.addr(); lwcond->lwcond_queue = id; sys_lwcond.Warning("*** lwcond created [%s] (lwmutex_addr=0x%x): id = %d", - std::string(attr->name, 8).c_str(), lwmutex.GetAddr(), (u32) lwcond->lwcond_queue); + std::string(attr->name, 8).c_str(), lwmutex.addr(), (u32) lwcond->lwcond_queue); return CELL_OK; } -s32 sys_lwcond_destroy(mem_ptr_t lwcond) +s32 sys_lwcond_destroy(vm::ptr lwcond) { - sys_lwcond.Warning("sys_lwcond_destroy(lwcond_addr=0x%x)", lwcond.GetAddr()); + sys_lwcond.Warning("sys_lwcond_destroy(lwcond_addr=0x%x)", lwcond.addr()); u32 id = lwcond->lwcond_queue; @@ -45,9 +45,9 @@ s32 sys_lwcond_destroy(mem_ptr_t lwcond) return CELL_OK; } -s32 sys_lwcond_signal(mem_ptr_t lwcond) +s32 sys_lwcond_signal(vm::ptr lwcond) { - sys_lwcond.Log("sys_lwcond_signal(lwcond_addr=0x%x)", lwcond.GetAddr()); + sys_lwcond.Log("sys_lwcond_signal(lwcond_addr=0x%x)", lwcond.addr()); Lwcond* lw; if (!Emu.GetIdManager().GetIDData((u32)lwcond->lwcond_queue, lw)) @@ -55,7 +55,7 @@ s32 sys_lwcond_signal(mem_ptr_t lwcond) return CELL_ESRCH; } - mem_ptr_t mutex(lwcond->lwmutex); + auto mutex = vm::ptr::make(lwcond->lwmutex); if (u32 target = (mutex->attribute.ToBE() == se32(SYS_SYNC_PRIORITY) ? lw->m_queue.pop_prio() : lw->m_queue.pop())) { @@ -71,9 +71,9 @@ s32 sys_lwcond_signal(mem_ptr_t lwcond) return CELL_OK; } -s32 sys_lwcond_signal_all(mem_ptr_t lwcond) +s32 sys_lwcond_signal_all(vm::ptr lwcond) { - sys_lwcond.Log("sys_lwcond_signal_all(lwcond_addr=0x%x)", lwcond.GetAddr()); + sys_lwcond.Log("sys_lwcond_signal_all(lwcond_addr=0x%x)", lwcond.addr()); Lwcond* lw; if (!Emu.GetIdManager().GetIDData((u32)lwcond->lwcond_queue, lw)) @@ -81,7 +81,7 @@ s32 sys_lwcond_signal_all(mem_ptr_t lwcond) return CELL_ESRCH; } - mem_ptr_t mutex(lwcond->lwmutex); + auto mutex = vm::ptr::make(lwcond->lwmutex); while (u32 target = (mutex->attribute.ToBE() == se32(SYS_SYNC_PRIORITY) ? lw->m_queue.pop_prio() : lw->m_queue.pop())) { @@ -97,9 +97,9 @@ s32 sys_lwcond_signal_all(mem_ptr_t lwcond) return CELL_OK; } -s32 sys_lwcond_signal_to(mem_ptr_t lwcond, u32 ppu_thread_id) +s32 sys_lwcond_signal_to(vm::ptr lwcond, u32 ppu_thread_id) { - sys_lwcond.Log("sys_lwcond_signal_to(lwcond_addr=0x%x, ppu_thread_id=%d)", lwcond.GetAddr(), ppu_thread_id); + sys_lwcond.Log("sys_lwcond_signal_to(lwcond_addr=0x%x, ppu_thread_id=%d)", lwcond.addr(), ppu_thread_id); Lwcond* lw; if (!Emu.GetIdManager().GetIDData((u32)lwcond->lwcond_queue, lw)) @@ -131,9 +131,9 @@ s32 sys_lwcond_signal_to(mem_ptr_t lwcond, u32 ppu_thread_id) return CELL_OK; } -s32 sys_lwcond_wait(mem_ptr_t lwcond, u64 timeout) +s32 sys_lwcond_wait(vm::ptr lwcond, u64 timeout) { - sys_lwcond.Log("sys_lwcond_wait(lwcond_addr=0x%x, timeout=%lld)", lwcond.GetAddr(), timeout); + sys_lwcond.Log("sys_lwcond_wait(lwcond_addr=0x%x, timeout=%lld)", lwcond.addr(), timeout); Lwcond* lw; if (!Emu.GetIdManager().GetIDData((u32)lwcond->lwcond_queue, lw)) @@ -141,7 +141,7 @@ s32 sys_lwcond_wait(mem_ptr_t lwcond, u64 timeout) return CELL_ESRCH; } - mem_ptr_t mutex(lwcond->lwmutex); + auto mutex = vm::ptr::make(lwcond->lwmutex); u32 tid_le = GetCurrentPPUThread().GetId(); be_t tid = be_t::MakeFromLE(tid_le); diff --git a/rpcs3/Emu/SysCalls/lv2/sys_lwcond.h b/rpcs3/Emu/SysCalls/lv2/sys_lwcond.h index 5d5584395a..8331fc00db 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_lwcond.h +++ b/rpcs3/Emu/SysCalls/lv2/sys_lwcond.h @@ -27,9 +27,9 @@ struct Lwcond }; // SysCalls -s32 sys_lwcond_create(mem_ptr_t lwcond, mem_ptr_t lwmutex, mem_ptr_t attr); -s32 sys_lwcond_destroy(mem_ptr_t lwcond); -s32 sys_lwcond_signal(mem_ptr_t lwcond); -s32 sys_lwcond_signal_all(mem_ptr_t lwcond); -s32 sys_lwcond_signal_to(mem_ptr_t lwcond, u32 ppu_thread_id); -s32 sys_lwcond_wait(mem_ptr_t lwcond, u64 timeout); +s32 sys_lwcond_create(vm::ptr lwcond, vm::ptr lwmutex, vm::ptr attr); +s32 sys_lwcond_destroy(vm::ptr lwcond); +s32 sys_lwcond_signal(vm::ptr lwcond); +s32 sys_lwcond_signal_all(vm::ptr lwcond); +s32 sys_lwcond_signal_to(vm::ptr lwcond, u32 ppu_thread_id); +s32 sys_lwcond_wait(vm::ptr lwcond, u64 timeout); diff --git a/rpcs3/Emu/SysCalls/lv2/sys_lwmutex.cpp b/rpcs3/Emu/SysCalls/lv2/sys_lwmutex.cpp index 24d7ea6b40..330a56ee0d 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_lwmutex.cpp +++ b/rpcs3/Emu/SysCalls/lv2/sys_lwmutex.cpp @@ -11,10 +11,10 @@ SysCallBase sys_lwmutex("sys_lwmutex"); // TODO: move SleepQueue somewhere -s32 sys_lwmutex_create(mem_ptr_t lwmutex, mem_ptr_t attr) +s32 sys_lwmutex_create(vm::ptr lwmutex, vm::ptr attr) { sys_lwmutex.Log("sys_lwmutex_create(lwmutex_addr=0x%x, lwmutex_attr_addr=0x%x)", - lwmutex.GetAddr(), attr.GetAddr()); + lwmutex.addr(), attr.addr()); switch (attr->attr_recursive.ToBE()) { @@ -48,9 +48,9 @@ s32 sys_lwmutex_create(mem_ptr_t lwmutex, mem_ptr_t lwmutex) +s32 sys_lwmutex_destroy(vm::ptr lwmutex) { - sys_lwmutex.Warning("sys_lwmutex_destroy(lwmutex_addr=0x%x)", lwmutex.GetAddr()); + sys_lwmutex.Warning("sys_lwmutex_destroy(lwmutex_addr=0x%x)", lwmutex.addr()); u32 sq_id = lwmutex->sleep_queue; if (!Emu.GetIdManager().CheckID(sq_id)) return CELL_ESRCH; @@ -67,29 +67,29 @@ s32 sys_lwmutex_destroy(mem_ptr_t lwmutex) } } -s32 sys_lwmutex_lock(mem_ptr_t lwmutex, u64 timeout) +s32 sys_lwmutex_lock(vm::ptr lwmutex, u64 timeout) { - sys_lwmutex.Log("sys_lwmutex_lock(lwmutex_addr=0x%x, timeout=%lld)", lwmutex.GetAddr(), timeout); + sys_lwmutex.Log("sys_lwmutex_lock(lwmutex_addr=0x%x, timeout=%lld)", lwmutex.addr(), timeout); //ConLog.Write("*** lock mutex (addr=0x%x, attr=0x%x, Nrec=%d, owner=%d, waiter=%d)", - //lwmutex.GetAddr(), (u32)lwmutex->attribute, (u32)lwmutex->recursive_count, lwmutex->vars.parts.owner.GetOwner(), (u32)lwmutex->waiter); + //lwmutex.addr(), (u32)lwmutex->attribute, (u32)lwmutex->recursive_count, lwmutex->vars.parts.owner.GetOwner(), (u32)lwmutex->waiter); return lwmutex->lock(be_t::MakeFromLE(GetCurrentPPUThread().GetId()), timeout ? ((timeout < 1000) ? 1 : (timeout / 1000)) : 0); } -s32 sys_lwmutex_trylock(mem_ptr_t lwmutex) +s32 sys_lwmutex_trylock(vm::ptr lwmutex) { - sys_lwmutex.Log("sys_lwmutex_trylock(lwmutex_addr=0x%x)", lwmutex.GetAddr()); + sys_lwmutex.Log("sys_lwmutex_trylock(lwmutex_addr=0x%x)", lwmutex.addr()); return lwmutex->trylock(be_t::MakeFromLE(GetCurrentPPUThread().GetId())); } -s32 sys_lwmutex_unlock(mem_ptr_t lwmutex) +s32 sys_lwmutex_unlock(vm::ptr lwmutex) { - sys_lwmutex.Log("sys_lwmutex_unlock(lwmutex_addr=0x%x)", lwmutex.GetAddr()); + sys_lwmutex.Log("sys_lwmutex_unlock(lwmutex_addr=0x%x)", lwmutex.addr()); //ConLog.Write("*** unlocking mutex (addr=0x%x, attr=0x%x, Nrec=%d, owner=%d, waiter=%d)", - //lwmutex.GetAddr(), (u32)lwmutex->attribute, (u32)lwmutex->recursive_count, (u32)lwmutex->vars.parts.owner.GetOwner(), (u32)lwmutex->waiter); + //lwmutex.addr(), (u32)lwmutex->attribute, (u32)lwmutex->recursive_count, (u32)lwmutex->vars.parts.owner.GetOwner(), (u32)lwmutex->waiter); return lwmutex->unlock(be_t::MakeFromLE(GetCurrentPPUThread().GetId())); } diff --git a/rpcs3/Emu/SysCalls/lv2/sys_lwmutex.h b/rpcs3/Emu/SysCalls/lv2/sys_lwmutex.h index ab02592b9f..067a317e1b 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_lwmutex.h +++ b/rpcs3/Emu/SysCalls/lv2/sys_lwmutex.h @@ -80,8 +80,8 @@ struct sys_lwmutex_t }; // SysCalls -s32 sys_lwmutex_create(mem_ptr_t lwmutex, mem_ptr_t attr); -s32 sys_lwmutex_destroy(mem_ptr_t lwmutex); -s32 sys_lwmutex_lock(mem_ptr_t lwmutex, u64 timeout); -s32 sys_lwmutex_trylock(mem_ptr_t lwmutex); -s32 sys_lwmutex_unlock(mem_ptr_t lwmutex); +s32 sys_lwmutex_create(vm::ptr lwmutex, vm::ptr attr); +s32 sys_lwmutex_destroy(vm::ptr lwmutex); +s32 sys_lwmutex_lock(vm::ptr lwmutex, u64 timeout); +s32 sys_lwmutex_trylock(vm::ptr lwmutex); +s32 sys_lwmutex_unlock(vm::ptr lwmutex); diff --git a/rpcs3/Emu/SysCalls/lv2/sys_memory.cpp b/rpcs3/Emu/SysCalls/lv2/sys_memory.cpp index d49e23ddc4..79958ed504 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_memory.cpp +++ b/rpcs3/Emu/SysCalls/lv2/sys_memory.cpp @@ -86,9 +86,9 @@ s32 sys_memory_free(u32 start_addr) return CELL_OK; } -s32 sys_memory_get_page_attribute(u32 addr, mem_ptr_t attr) +s32 sys_memory_get_page_attribute(u32 addr, vm::ptr attr) { - sys_memory.Warning("sys_memory_get_page_attribute(addr=0x%x, attr_addr=0x%x)", addr, attr.GetAddr()); + sys_memory.Warning("sys_memory_get_page_attribute(addr=0x%x, attr_addr=0x%x)", addr, attr.addr()); // TODO: Implement per thread page attribute setting. attr->attribute = 0x40000ull; // SYS_MEMORY_PROT_READ_WRITE @@ -98,9 +98,9 @@ s32 sys_memory_get_page_attribute(u32 addr, mem_ptr_t attr) return CELL_OK; } -s32 sys_memory_get_user_memory_size(mem_ptr_t mem_info) +s32 sys_memory_get_user_memory_size(vm::ptr mem_info) { - sys_memory.Warning("sys_memory_get_user_memory_size(mem_info_addr=0x%x)", mem_info.GetAddr()); + sys_memory.Warning("sys_memory_get_user_memory_size(mem_info_addr=0x%x)", mem_info.addr()); // Fetch the user memory available. mem_info->total_user_memory = Memory.GetUserMemTotalSize(); @@ -144,9 +144,9 @@ s32 sys_memory_container_destroy(u32 cid) return CELL_OK; } -s32 sys_memory_container_get_size(mem_ptr_t mem_info, u32 cid) +s32 sys_memory_container_get_size(vm::ptr mem_info, u32 cid) { - sys_memory.Warning("sys_memory_container_get_size(mem_info_addr=0x%x, cid=%d)", mem_info.GetAddr(), cid); + sys_memory.Warning("sys_memory_container_get_size(mem_info_addr=0x%x, cid=%d)", mem_info.addr(), cid); // Check if this container ID is valid. MemoryContainerInfo* ct; diff --git a/rpcs3/Emu/SysCalls/lv2/sys_memory.h b/rpcs3/Emu/SysCalls/lv2/sys_memory.h index 9eb3e12077..3941590e02 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_memory.h +++ b/rpcs3/Emu/SysCalls/lv2/sys_memory.h @@ -46,8 +46,8 @@ struct MemoryContainerInfo s32 sys_memory_allocate(u32 size, u32 flags, u32 alloc_addr_addr); s32 sys_memory_allocate_from_container(u32 size, u32 cid, u32 flags, u32 alloc_addr_addr); s32 sys_memory_free(u32 start_addr); -s32 sys_memory_get_page_attribute(u32 addr, mem_ptr_t attr); -s32 sys_memory_get_user_memory_size(mem_ptr_t mem_info); +s32 sys_memory_get_page_attribute(u32 addr, vm::ptr attr); +s32 sys_memory_get_user_memory_size(vm::ptr mem_info); s32 sys_memory_container_create(vm::ptr> cid, u32 yield_size); s32 sys_memory_container_destroy(u32 cid); -s32 sys_memory_container_get_size(mem_ptr_t mem_info, u32 cid); +s32 sys_memory_container_get_size(vm::ptr mem_info, u32 cid); diff --git a/rpcs3/Emu/SysCalls/lv2/sys_mutex.cpp b/rpcs3/Emu/SysCalls/lv2/sys_mutex.cpp index f1c7b1bb74..534496bbd4 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_mutex.cpp +++ b/rpcs3/Emu/SysCalls/lv2/sys_mutex.cpp @@ -26,9 +26,9 @@ Mutex::~Mutex() m_queue.m_mutex.unlock(); } -s32 sys_mutex_create(vm::ptr> mutex_id, mem_ptr_t attr) +s32 sys_mutex_create(vm::ptr> mutex_id, vm::ptr attr) { - sys_mutex.Log("sys_mutex_create(mutex_id_addr=0x%x, attr_addr=0x%x)", mutex_id.addr(), attr.GetAddr()); + sys_mutex.Log("sys_mutex_create(mutex_id_addr=0x%x, attr_addr=0x%x)", mutex_id.addr(), attr.addr()); switch (attr->protocol.ToBE()) { diff --git a/rpcs3/Emu/SysCalls/lv2/sys_mutex.h b/rpcs3/Emu/SysCalls/lv2/sys_mutex.h index 4ef1dea1b5..a94ce37eaf 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_mutex.h +++ b/rpcs3/Emu/SysCalls/lv2/sys_mutex.h @@ -40,7 +40,7 @@ struct Mutex }; // SysCalls -s32 sys_mutex_create(vm::ptr> mutex_id, mem_ptr_t attr); +s32 sys_mutex_create(vm::ptr> mutex_id, vm::ptr attr); s32 sys_mutex_destroy(u32 mutex_id); s32 sys_mutex_lock(u32 mutex_id, u64 timeout); s32 sys_mutex_trylock(u32 mutex_id); diff --git a/rpcs3/Emu/SysCalls/lv2/sys_ppu_thread.cpp b/rpcs3/Emu/SysCalls/lv2/sys_ppu_thread.cpp index bc9250180e..700d0f93a3 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_ppu_thread.cpp +++ b/rpcs3/Emu/SysCalls/lv2/sys_ppu_thread.cpp @@ -200,9 +200,9 @@ s32 sys_ppu_thread_create(vm::ptr> thread_id, u32 entry, u64 arg, s32 return CELL_OK; } -void sys_ppu_thread_once(mem_ptr_t>> once_ctrl, u32 entry) +void sys_ppu_thread_once(vm::ptr>> once_ctrl, u32 entry) { - sys_ppu_thread.Warning("sys_ppu_thread_once(once_ctrl_addr=0x%x, entry=0x%x)", once_ctrl.GetAddr(), entry); + sys_ppu_thread.Warning("sys_ppu_thread_once(once_ctrl_addr=0x%x, entry=0x%x)", once_ctrl.addr(), entry); be_t old = be_t::MakeFromBE(se32(SYS_PPU_THREAD_ONCE_INIT)); if (once_ctrl->compare_exchange_weak(old, be_t::MakeFromBE(se32(SYS_PPU_THREAD_DONE_INIT)))) diff --git a/rpcs3/Emu/SysCalls/lv2/sys_ppu_thread.h b/rpcs3/Emu/SysCalls/lv2/sys_ppu_thread.h index 162f627f41..4805dcff8a 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_ppu_thread.h +++ b/rpcs3/Emu/SysCalls/lv2/sys_ppu_thread.h @@ -25,6 +25,6 @@ s32 sys_ppu_thread_get_stack_information(u32 info_addr); s32 sys_ppu_thread_stop(u64 thread_id); s32 sys_ppu_thread_restart(u64 thread_id); s32 sys_ppu_thread_create(vm::ptr> thread_id, u32 entry, u64 arg, s32 prio, u32 stacksize, u64 flags, u32 threadname_addr); -void sys_ppu_thread_once(mem_ptr_t>> once_ctrl, u32 entry); +void sys_ppu_thread_once(vm::ptr>> once_ctrl, u32 entry); s32 sys_ppu_thread_get_id(vm::ptr> thread_id); s32 sys_ppu_thread_rename(u64 thread_id, u32 name_addr); diff --git a/rpcs3/Emu/SysCalls/lv2/sys_process.cpp b/rpcs3/Emu/SysCalls/lv2/sys_process.cpp index 38ef93b6fd..eaa84908f3 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_process.cpp +++ b/rpcs3/Emu/SysCalls/lv2/sys_process.cpp @@ -59,16 +59,16 @@ void sys_game_process_exitspawn( std::vector argv; std::vector env; - mem_ptr_t argvp(argv_addr); - while (argvp.GetAddr() && *argvp) + auto argvp = vm::ptr::make(argv_addr); + while (argvp && *argvp) { - argv.push_back(Memory.ReadString(Memory.Read32(argvp.GetAddr()))); + argv.push_back(Memory.ReadString(Memory.Read32(argvp.addr()))); argvp++; } - mem_ptr_t envp(envp_addr); - while (envp.GetAddr() && *envp) + auto envp = vm::ptr::make(envp_addr); + while (envp && *envp) { - env.push_back(Memory.ReadString(Memory.Read32(envp.GetAddr()))); + env.push_back(Memory.ReadString(Memory.Read32(envp.addr()))); envp++; } @@ -107,16 +107,16 @@ void sys_game_process_exitspawn2( std::vector argv; std::vector env; - mem_ptr_t argvp(argv_addr); - while (argvp.GetAddr() && *argvp) + auto argvp = vm::ptr::make(argv_addr); + while (argvp && *argvp) { - argv.push_back(Memory.ReadString(Memory.Read32(argvp.GetAddr()))); + argv.push_back(Memory.ReadString(Memory.Read32(argvp.addr()))); argvp++; } - mem_ptr_t envp(envp_addr); - while (envp.GetAddr() && *envp) + auto envp = vm::ptr::make(envp_addr); + while (envp && *envp) { - env.push_back(Memory.ReadString(Memory.Read32(envp.GetAddr()))); + env.push_back(Memory.ReadString(Memory.Read32(envp.addr()))); envp++; } @@ -225,7 +225,7 @@ s32 sys_process_get_paramsfo(vm::ptr buffer) MemoryAllocator> pos, nread; cellFsLseek(fd, 0, CELL_SEEK_SET, pos); //TODO: Move to the appropriate offset (probably 0x3F7) - cellFsRead(fd, buffer.GetAddr(), 40, nread); //WARNING: If offset==0x3F7: The file will end before the buffer (40 bytes) is filled! + cellFsRead(fd, buffer.addr(), 40, nread); //WARNING: If offset==0x3F7: The file will end before the buffer (40 bytes) is filled! cellFsClose(fd); return CELL_OK;*/ diff --git a/rpcs3/Emu/SysCalls/lv2/sys_prx.cpp b/rpcs3/Emu/SysCalls/lv2/sys_prx.cpp index 45bc944813..1027648447 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_prx.cpp +++ b/rpcs3/Emu/SysCalls/lv2/sys_prx.cpp @@ -10,10 +10,10 @@ SysCallBase sys_prx("sys_prx"); -s32 sys_prx_load_module(u32 path_addr, u64 flags, mem_ptr_t pOpt) +s32 sys_prx_load_module(u32 path_addr, u64 flags, vm::ptr pOpt) { std::string path = Memory.ReadString(path_addr); - sys_prx.Todo("sys_prx_load_module(path=\"%s\", flags=0x%llx, pOpt=0x%x)", path.c_str(), flags, pOpt.GetAddr()); + sys_prx.Todo("sys_prx_load_module(path=\"%s\", flags=0x%llx, pOpt=0x%x)", path.c_str(), flags, pOpt.addr()); // Check if the file is SPRX std::string local_path; @@ -61,10 +61,10 @@ s32 sys_prx_load_module_on_memcontainer_by_fd() return CELL_OK; } -s32 sys_prx_start_module(s32 id, u32 args, u32 argp_addr, vm::ptr> modres, u64 flags, mem_ptr_t pOpt) +s32 sys_prx_start_module(s32 id, u32 args, u32 argp_addr, vm::ptr> modres, u64 flags, vm::ptr pOpt) { sys_prx.Todo("sys_prx_start_module(id=%d, args=%d, argp_addr=0x%x, modres_addr=0x%x, flags=0x%llx, pOpt=0x%x)", - id, args, argp_addr, modres.addr(), flags, pOpt.GetAddr()); + id, args, argp_addr, modres.addr(), flags, pOpt.addr()); sys_prx_t* prx; if (!Emu.GetIdManager().GetIDData(id, prx)) @@ -76,10 +76,10 @@ s32 sys_prx_start_module(s32 id, u32 args, u32 argp_addr, vm::ptr> mod return CELL_OK; } -s32 sys_prx_stop_module(s32 id, u32 args, u32 argp_addr, vm::ptr> modres, u64 flags, mem_ptr_t pOpt) +s32 sys_prx_stop_module(s32 id, u32 args, u32 argp_addr, vm::ptr> modres, u64 flags, vm::ptr pOpt) { sys_prx.Todo("sys_prx_stop_module(id=%d, args=%d, argp_addr=0x%x, modres_addr=0x%x, flags=0x%llx, pOpt=0x%x)", - id, args, argp_addr, modres.addr(), flags, pOpt.GetAddr()); + id, args, argp_addr, modres.addr(), flags, pOpt.addr()); sys_prx_t* prx; if (!Emu.GetIdManager().GetIDData(id, prx)) @@ -91,9 +91,9 @@ s32 sys_prx_stop_module(s32 id, u32 args, u32 argp_addr, vm::ptr> modr return CELL_OK; } -s32 sys_prx_unload_module(s32 id, u64 flags, mem_ptr_t pOpt) +s32 sys_prx_unload_module(s32 id, u64 flags, vm::ptr pOpt) { - sys_prx.Todo("sys_prx_unload_module(id=%d, flags=0x%llx, pOpt=0x%x)", id, flags, pOpt.GetAddr()); + sys_prx.Todo("sys_prx_unload_module(id=%d, flags=0x%llx, pOpt=0x%x)", id, flags, pOpt.addr()); // Get the PRX, free the used memory and delete the object and its ID sys_prx_t* prx; diff --git a/rpcs3/Emu/SysCalls/lv2/sys_prx.h b/rpcs3/Emu/SysCalls/lv2/sys_prx.h index bb93b72617..be554db7bb 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_prx.h +++ b/rpcs3/Emu/SysCalls/lv2/sys_prx.h @@ -65,13 +65,13 @@ struct sys_prx_t }; // SysCalls -s32 sys_prx_load_module(u32 path_addr, u64 flags, mem_ptr_t pOpt); +s32 sys_prx_load_module(u32 path_addr, u64 flags, vm::ptr pOpt); s32 sys_prx_load_module_on_memcontainer(); s32 sys_prx_load_module_by_fd(); s32 sys_prx_load_module_on_memcontainer_by_fd(); -s32 sys_prx_start_module(s32 id, u32 args, u32 argp_addr, vm::ptr> modres, u64 flags, mem_ptr_t pOpt); -s32 sys_prx_stop_module(s32 id, u32 args, u32 argp_addr, vm::ptr> modres, u64 flags, mem_ptr_t pOpt); -s32 sys_prx_unload_module(s32 id, u64 flags, mem_ptr_t pOpt); +s32 sys_prx_start_module(s32 id, u32 args, u32 argp_addr, vm::ptr> modres, u64 flags, vm::ptr pOpt); +s32 sys_prx_stop_module(s32 id, u32 args, u32 argp_addr, vm::ptr> modres, u64 flags, vm::ptr pOpt); +s32 sys_prx_unload_module(s32 id, u64 flags, vm::ptr pOpt); s32 sys_prx_get_module_list(); s32 sys_prx_get_my_module_id(); s32 sys_prx_get_module_id_by_address(); diff --git a/rpcs3/Emu/SysCalls/lv2/sys_rwlock.cpp b/rpcs3/Emu/SysCalls/lv2/sys_rwlock.cpp index 09d979d671..8e4d323d18 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_rwlock.cpp +++ b/rpcs3/Emu/SysCalls/lv2/sys_rwlock.cpp @@ -9,9 +9,9 @@ SysCallBase sys_rwlock("sys_rwlock"); -s32 sys_rwlock_create(vm::ptr> rw_lock_id, mem_ptr_t attr) +s32 sys_rwlock_create(vm::ptr> rw_lock_id, vm::ptr attr) { - sys_rwlock.Warning("sys_rwlock_create(rw_lock_id_addr=0x%x, attr_addr=0x%x)", rw_lock_id.addr(), attr.GetAddr()); + sys_rwlock.Warning("sys_rwlock_create(rw_lock_id_addr=0x%x, attr_addr=0x%x)", rw_lock_id.addr(), attr.addr()); if (!attr) return CELL_EFAULT; diff --git a/rpcs3/Emu/SysCalls/lv2/sys_rwlock.h b/rpcs3/Emu/SysCalls/lv2/sys_rwlock.h index 8e18b468de..9b3dcff1a3 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_rwlock.h +++ b/rpcs3/Emu/SysCalls/lv2/sys_rwlock.h @@ -150,7 +150,7 @@ struct RWLock }; // SysCalls -s32 sys_rwlock_create(vm::ptr> rw_lock_id, mem_ptr_t attr); +s32 sys_rwlock_create(vm::ptr> rw_lock_id, vm::ptr attr); s32 sys_rwlock_destroy(u32 rw_lock_id); s32 sys_rwlock_rlock(u32 rw_lock_id, u64 timeout); s32 sys_rwlock_tryrlock(u32 rw_lock_id); diff --git a/rpcs3/Emu/SysCalls/lv2/sys_semaphore.cpp b/rpcs3/Emu/SysCalls/lv2/sys_semaphore.cpp index 52ff26cbbc..e3e7574821 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_semaphore.cpp +++ b/rpcs3/Emu/SysCalls/lv2/sys_semaphore.cpp @@ -11,10 +11,10 @@ SysCallBase sys_semaphore("sys_semaphore"); -s32 sys_semaphore_create(vm::ptr> sem, mem_ptr_t attr, int initial_count, int max_count) +s32 sys_semaphore_create(vm::ptr> sem, vm::ptr attr, int initial_count, int max_count) { sys_semaphore.Warning("sys_semaphore_create(sem_addr=0x%x, attr_addr=0x%x, initial_count=%d, max_count=%d)", - sem.addr(), attr.GetAddr(), initial_count, max_count); + sem.addr(), attr.addr(), initial_count, max_count); if (max_count <= 0 || initial_count > max_count || initial_count < 0) { diff --git a/rpcs3/Emu/SysCalls/lv2/sys_semaphore.h b/rpcs3/Emu/SysCalls/lv2/sys_semaphore.h index a27691405a..6ce29cf398 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_semaphore.h +++ b/rpcs3/Emu/SysCalls/lv2/sys_semaphore.h @@ -38,7 +38,7 @@ struct Semaphore }; // SysCalls -s32 sys_semaphore_create(vm::ptr> sem, mem_ptr_t attr, int initial_count, int max_count); +s32 sys_semaphore_create(vm::ptr> sem, vm::ptr attr, int initial_count, int max_count); s32 sys_semaphore_destroy(u32 sem_id); s32 sys_semaphore_wait(u32 sem_id, u64 timeout); s32 sys_semaphore_trywait(u32 sem_id); diff --git a/rpcs3/Emu/SysCalls/lv2/sys_spinlock.cpp b/rpcs3/Emu/SysCalls/lv2/sys_spinlock.cpp index 454b23572b..5c6c3d9f27 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_spinlock.cpp +++ b/rpcs3/Emu/SysCalls/lv2/sys_spinlock.cpp @@ -7,17 +7,17 @@ SysCallBase sys_spinlock("sys_spinlock"); -void sys_spinlock_initialize(mem_ptr_t>> lock) +void sys_spinlock_initialize(vm::ptr>> lock) { - sys_spinlock.Log("sys_spinlock_initialize(lock_addr=0x%x)", lock.GetAddr()); + sys_spinlock.Log("sys_spinlock_initialize(lock_addr=0x%x)", lock.addr()); // prx: set 0 and sync *lock = be_t::MakeFromBE(0); } -void sys_spinlock_lock(mem_ptr_t>> lock) +void sys_spinlock_lock(vm::ptr>> lock) { - sys_spinlock.Log("sys_spinlock_lock(lock_addr=0x%x)", lock.GetAddr()); + sys_spinlock.Log("sys_spinlock_lock(lock_addr=0x%x)", lock.addr()); // prx: exchange with 0xabadcafe, repeat until exchanged with 0 while (lock->exchange(be_t::MakeFromBE(se32(0xabadcafe))).ToBE()) @@ -33,15 +33,15 @@ void sys_spinlock_lock(mem_ptr_t>> lock) if (Emu.IsStopped()) { - sys_spinlock.Warning("sys_spinlock_lock(0x%x) aborted", lock.GetAddr()); + sys_spinlock.Warning("sys_spinlock_lock(0x%x) aborted", lock.addr()); break; } } } -s32 sys_spinlock_trylock(mem_ptr_t>> lock) +s32 sys_spinlock_trylock(vm::ptr>> lock) { - sys_spinlock.Log("sys_spinlock_trylock(lock_addr=0x%x)", lock.GetAddr()); + sys_spinlock.Log("sys_spinlock_trylock(lock_addr=0x%x)", lock.addr()); // prx: exchange with 0xabadcafe, translate exchanged value if (lock->exchange(be_t::MakeFromBE(se32(0xabadcafe))).ToBE()) @@ -52,9 +52,9 @@ s32 sys_spinlock_trylock(mem_ptr_t>> lock) return CELL_OK; } -void sys_spinlock_unlock(mem_ptr_t>> lock) +void sys_spinlock_unlock(vm::ptr>> lock) { - sys_spinlock.Log("sys_spinlock_unlock(lock_addr=0x%x)", lock.GetAddr()); + sys_spinlock.Log("sys_spinlock_unlock(lock_addr=0x%x)", lock.addr()); // prx: sync and set 0 *lock = be_t::MakeFromBE(0); diff --git a/rpcs3/Emu/SysCalls/lv2/sys_spinlock.h b/rpcs3/Emu/SysCalls/lv2/sys_spinlock.h index 0dfaa371fc..9bab9011a1 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_spinlock.h +++ b/rpcs3/Emu/SysCalls/lv2/sys_spinlock.h @@ -1,7 +1,7 @@ #pragma once // SysCalls -void sys_spinlock_initialize(mem_ptr_t>> lock); -void sys_spinlock_lock(mem_ptr_t>> lock); -s32 sys_spinlock_trylock(mem_ptr_t>> lock); -void sys_spinlock_unlock(mem_ptr_t>> lock); +void sys_spinlock_initialize(vm::ptr>> lock); +void sys_spinlock_lock(vm::ptr>> lock); +s32 sys_spinlock_trylock(vm::ptr>> lock); +void sys_spinlock_unlock(vm::ptr>> lock); diff --git a/rpcs3/Emu/SysCalls/lv2/sys_spu.cpp b/rpcs3/Emu/SysCalls/lv2/sys_spu.cpp index 529931a74e..3b503066c8 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_spu.cpp +++ b/rpcs3/Emu/SysCalls/lv2/sys_spu.cpp @@ -23,10 +23,10 @@ u32 LoadSpuImage(vfsStream& stream, u32& spu_ep) } //156 -s32 sys_spu_image_open(mem_ptr_t img, u32 path_addr) +s32 sys_spu_image_open(vm::ptr img, u32 path_addr) { const std::string path = Memory.ReadString(path_addr); - sys_spu.Warning("sys_spu_image_open(img_addr=0x%x, path_addr=0x%x [%s])", img.GetAddr(), path_addr, path.c_str()); + sys_spu.Warning("sys_spu_image_open(img_addr=0x%x, path_addr=0x%x [%s])", img.addr(), path_addr, path.c_str()); vfsFile f(path); if(!f.IsOpened()) @@ -47,10 +47,10 @@ s32 sys_spu_image_open(mem_ptr_t img, u32 path_addr) } //172 -s32 sys_spu_thread_initialize(vm::ptr> thread, u32 group, u32 spu_num, mem_ptr_t img, mem_ptr_t attr, mem_ptr_t arg) +s32 sys_spu_thread_initialize(vm::ptr> thread, u32 group, u32 spu_num, vm::ptr img, vm::ptr attr, vm::ptr arg) { sys_spu.Warning("sys_spu_thread_initialize(thread_addr=0x%x, group=0x%x, spu_num=%d, img_addr=0x%x, attr_addr=0x%x, arg_addr=0x%x)", - thread.addr(), group, spu_num, img.GetAddr(), attr.GetAddr(), arg.GetAddr()); + thread.addr(), group, spu_num, img.addr(), attr.addr(), arg.addr()); SpuGroupInfo* group_info; if(!Emu.GetIdManager().GetIDData(group, group_info)) @@ -107,9 +107,9 @@ s32 sys_spu_thread_initialize(vm::ptr> thread, u32 group, u32 spu_num, } //166 -s32 sys_spu_thread_set_argument(u32 id, mem_ptr_t arg) +s32 sys_spu_thread_set_argument(u32 id, vm::ptr arg) { - sys_spu.Warning("sys_spu_thread_set_argument(id=%d, arg_addr=0x%x)", id, arg.GetAddr()); + sys_spu.Warning("sys_spu_thread_set_argument(id=%d, arg_addr=0x%x)", id, arg.addr()); CPUThread* thr = Emu.GetCPU().GetThread(id); if(!thr || thr->GetType() != CPU_THREAD_SPU) @@ -401,10 +401,10 @@ s32 sys_spu_thread_group_terminate(u32 id, int value) } //170 -s32 sys_spu_thread_group_create(vm::ptr> id, u32 num, int prio, mem_ptr_t attr) +s32 sys_spu_thread_group_create(vm::ptr> id, u32 num, int prio, vm::ptr attr) { sys_spu.Warning("sys_spu_thread_group_create(id_addr=0x%x, num=%d, prio=%d, attr_addr=0x%x)", - id.addr(), num, prio, attr.GetAddr()); + id.addr(), num, prio, attr.addr()); if (num > 256) return CELL_EINVAL; diff --git a/rpcs3/Emu/SysCalls/lv2/sys_spu.h b/rpcs3/Emu/SysCalls/lv2/sys_spu.h index 4547186697..3354c3e118 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_spu.h +++ b/rpcs3/Emu/SysCalls/lv2/sys_spu.h @@ -110,16 +110,16 @@ struct SpuGroupInfo // SysCalls s32 sys_spu_initialize(u32 max_usable_spu, u32 max_raw_spu); -s32 sys_spu_image_open(mem_ptr_t img, u32 path_addr); -s32 sys_spu_thread_initialize(vm::ptr> thread, u32 group, u32 spu_num, mem_ptr_t img, mem_ptr_t attr, mem_ptr_t arg); -s32 sys_spu_thread_set_argument(u32 id, mem_ptr_t arg); +s32 sys_spu_image_open(vm::ptr img, u32 path_addr); +s32 sys_spu_thread_initialize(vm::ptr> thread, u32 group, u32 spu_num, vm::ptr img, vm::ptr attr, vm::ptr arg); +s32 sys_spu_thread_set_argument(u32 id, vm::ptr arg); s32 sys_spu_thread_group_destroy(u32 id); s32 sys_spu_thread_group_start(u32 id); s32 sys_spu_thread_group_suspend(u32 id); s32 sys_spu_thread_group_resume(u32 id); s32 sys_spu_thread_group_yield(u32 id); s32 sys_spu_thread_group_terminate(u32 id, int value); -s32 sys_spu_thread_group_create(vm::ptr> id, u32 num, int prio, mem_ptr_t attr); +s32 sys_spu_thread_group_create(vm::ptr> id, u32 num, int prio, vm::ptr attr); s32 sys_spu_thread_create(vm::ptr> thread_id, vm::ptr> entry, u64 arg, int prio, u32 stacksize, u64 flags, u32 threadname_addr); s32 sys_spu_thread_group_join(u32 id, vm::ptr> cause, vm::ptr> status); s32 sys_spu_thread_group_connect_event(u32 id, u32 eq, u32 et); diff --git a/rpcs3/Emu/SysCalls/lv2/sys_timer.cpp b/rpcs3/Emu/SysCalls/lv2/sys_timer.cpp index fefcb9522e..31cd0699ae 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_timer.cpp +++ b/rpcs3/Emu/SysCalls/lv2/sys_timer.cpp @@ -26,9 +26,9 @@ s32 sys_timer_destroy(u32 timer_id) return CELL_OK; } -s32 sys_timer_get_information(u32 timer_id, mem_ptr_t info) +s32 sys_timer_get_information(u32 timer_id, vm::ptr info) { - sys_timer.Warning("sys_timer_get_information(timer_id=%d, info_addr=0x%x)", timer_id, info.GetAddr()); + sys_timer.Warning("sys_timer_get_information(timer_id=%d, info_addr=0x%x)", timer_id, info.addr()); timer* timer_data = nullptr; if(!sys_timer.CheckId(timer_id, timer_data)) return CELL_ESRCH; diff --git a/rpcs3/Emu/SysCalls/lv2/sys_timer.h b/rpcs3/Emu/SysCalls/lv2/sys_timer.h index 9e294f3b62..1d65520047 100644 --- a/rpcs3/Emu/SysCalls/lv2/sys_timer.h +++ b/rpcs3/Emu/SysCalls/lv2/sys_timer.h @@ -21,7 +21,7 @@ struct timer s32 sys_timer_create(vm::ptr> timer_id); s32 sys_timer_destroy(u32 timer_id); -s32 sys_timer_get_information(u32 timer_id, mem_ptr_t info); +s32 sys_timer_get_information(u32 timer_id, vm::ptr info); s32 sys_timer_start(u32 timer_id, s64 basetime, u64 period); s32 sys_timer_stop(u32 timer_id); s32 sys_timer_connect_event_queue(u32 timer_id, u32 queue_id, u64 name, u64 data1, u64 data2); diff --git a/rpcs3/Gui/RSXDebugger.cpp b/rpcs3/Gui/RSXDebugger.cpp index 1e10d2b6fb..8688c189b9 100644 --- a/rpcs3/Gui/RSXDebugger.cpp +++ b/rpcs3/Gui/RSXDebugger.cpp @@ -295,9 +295,9 @@ void RSXDebugger::OnClickBuffer(wxMouseEvent& event) { if (!RSXReady()) return; const GSRender& render = Emu.GetGSManager().GetRender(); - const mem_ptr_t buffers = render.m_gcm_buffers_addr; + const auto buffers = vm::ptr::make(render.m_gcm_buffers_addr); - if(!buffers.IsGood()) + if(!buffers) return; // TODO: Is there any better way to choose the color buffers