Also added a flag to RSX debugger showing if two sided lighting is
enabled, a 3D Monitor option and fixed a ")" missing in TODO printout
for sys_spu_elf_get_information.
Add rpcs3/define_new_memleakdetect.h to save and replace new operator with Visual Studio Memory Leak Detection's operator.
Add rpcs3/restore_new.h to restore new operator to a previous saved state.
Map() and Unmap(): roughly rewritten.
I checked every memory-related syscall and I'm sure that they don't
really need any mirroring. Some unused code deleted.
ID member m_flags has been replaced with m_type, which stores the type
of the object referenced by the ID and added std::set<IDType> to the ID
manager to group relevant IDs in order to use them later in some
lv2/sys_process functions and the Kernel Explorer.
This may be used in other l10n functions, since it was designed to receive void* pointer.
Find sizeof(size_t) is 4 (uint32_t?) in Guided Fate Paradox. Thank @B1ackDaemon for testing.
Changed log content for this function. Also fixed many typos..
Need windows sdk for code page transformation on windows. Need iconv to build on Linux/Mac.
Original source for char to char codepage transformation is already tested using codeblocks and vs.
Noticed l10n_conv_t is omitted in reference, which may be replaced by iconv_t or simply other function.
Modified .travis.yml to apt-get install libc6-dev and removed -liconv from CMakeFile.txt.
Would have a configuration window (with create the list, and enable/disable, being something similar to VFSManger and etc).
Move the code to Debug::AutoPause in AutoPause.cpp and AutoPause.h
It triggers currently in GameViewer, and would finally change to somewhere else.
Well and now it is all enabled (Function call + System call) by default.
* Removed Plugins.h file as I assume setting up a plugin hell is a bad
idea (does anyone disagree?).
* Removed FnIdGenerator, and moved FnIdGenerator::GenerateFnId to
getFunctionId in Modules.cpp
* Disabled RSX Debugger and Memory Viewer when the emulator is stopped.
* ELF64Loader::LoadPhdrData refactored.
* Replace `int` with `s32` as return type for syscalls.
* Renamed `SC_Something.*` files with the proper lv2 name
`sys_something.*`.
* Moving away from the lv2, those functions and folders that doesn't
correspond to lv2 functions. E.g. module functions from sys_io,
sysPrxForUser, cellGcmSys.
* Splitted some files (memory -> memory+mmapper) and merged other ones
(event+event_flag ->event, spu+spu_thread -> spu), according to common
sense, PSDevWiki docs, and checking firmware files.
* Removed external functions from `SysCalls.h`.
NOTE: What should we do about: cellGcmCallback? It's not a lv2 syscall
but it appears on the sc_table and it is actually called in games. Is
this some kind of hack?