make precompiled header slimmer under Linux to increase CI and dev-machine build-times
make sure unused modules don't compile
add unused modules to the VS project to easier keep track of them
Profiling done with two samples on Solar v2.1 from rpcs3 init to first frame.
Before optimization, profiler found rpcs3 in cellPngDecDecodeData 15.3% of the time.
Post-optimization, profiler finds rpcs3 in cellPngDecDecodeData 0.33% of the time for ~50x improvement.
It seems strange, but Sonic CD passes bytesPerLine = w * 3 for a 4 channel
image. Either this is a bug elsewhere, or it ignores likely incorrect
strides.
Untested except in Sonic CD.
This handles CELL_PNGDEC_BOTTOM_TO_TOP and also handles reduced
outputBytesPerLine more correctly-looking. Not actually tested against
actual behavior.
* various changes to make it compile with clang
* don't compile recompiler on linux yet but make the CMake build include asmjit already
* add experimental travis bot
* modify yml to match
* try to build and install wxWidgets, since it's not in the travis repo
* use newer cmake version for travis
* add keys with sudo
* use sudo for all apt- commands
* Add additional dependencies
* use version approriate gcc flags for c++11
* try clang, gcc too old
* set c++0x flag for clang
* use gcc 4.8
* use gcc 4.8 and add the repo for it
* use gcc 4.8 even for clang to get newer headers
* fix ambiguous conversions
* add lz from hykem and more explicit conversions from be for x86
* more switch disambiguation
* more switch disambiguation
* add additional unigned int casts to deal with be_t conversion ambiguity
* remove unnecessary clang flag
* add lz.cpp to vcxproj and cast to u32 instead of unsigned int
* correct temporaray #ifdefs
* This commit solves the cellPngDec GetMemFromAddr(0x0) error when
loading PNGs from files.
* cellVideoOutGetResolution, cellRtc* syscalls rewritten to use the use
the mem*_t data types.
* Replaced int/uint with s32/u32 in some syscall arguments and structs.
* Small cleanup in cellJpgDec and cellPngDec.
* cellPamf added to the project and a few test lines added to
cellPamfGetHeaderSize(2).
* Improved speed of the Raw Image Preview on the the Memory Viewer.
* Now you can click on the shown buffers / textures in the RSX Debugger
in order to see them in full size. More settings added to the tabs.
* Fixed cellFsStat in order to fix the crash aused by opening
directiories. The solution is really *really* ugly. Once vfsDir is
ready, I will replace it with something better.
* Improved image decoding modules:
- Fixed error that appeared after last commit (eebe859f83).
- Changed some functions to use the mem*_t classes.
- Implemented cell*DecSetParameter.
* Created new dummy modules for sys_net (0x0000), sys_http (0x0001),
cellHttpUtil (0x0002) and cellSsl (0x0003).
* Huge improvement in the speed of cell{Png|Gif|Jpg}DecDecodeData when
reading input files.
Note: Sorry if this commit is too "small", but I need to sync every
change since I use two PCs.
*Improved Keyboard:
- Fixed crash when using Null keyboard handler
- Added support for meta keys
- Added support for {caps, num, scroll} lock.
*Small issues fixed in previous module:
- cellGifDec: Fixed wrong information of packet field in
cellGifDecReadHeader.
- cellGifDec: Set DataOutInfo.recordType as 1 since the output is always
an image.
- cellJpgDec: Set colorSpace as 3, until a better function is
implemented.
- cellJpgDec, cellPngDec: Added RGBA support.
*Changed layout of "Config > Settings" menu.
*Implemented 'cellGifDec', using 'sys_fs' to access the files and the
'stb_image' (stblib) library to decode GIF buffers to Raw-pixel buffers
that can be used as textures.
*Replace 'lodepng' and 'jpeg-compressor' libraries with 'stb_image' in
cellPngDec and cellJpgDec, respectively.
*Fixed minor issues in cellPngDec and cellJpgDec.
*Replaced "sys_jpgdec" with "cellJpgDec" in
"rpcs3\Emu\SysCalls\Modules.cpp".
*Implemented 'cellJpgDec', using 'sys_fs' to access the files and the
'jpg-compressor' (jpgd) library to decode JPG buffers to Raw-pixel
buffers that can be
used as textures.
*Fixed memory leak issue in cellPngDec and minor changes.
Implemented 'cellPngDec', using 'sys_fs' to access the files and the
'lodepng' library to decode PNG buffers to Raw-pixel buffers that can be
used as textures.