Commit graph

100 commits

Author SHA1 Message Date
Peter Tissen 1ad4380fab rename conlog gui file and set the logbuffer-consumed flag sooner 2014-06-27 06:01:40 +02:00
Peter Tissen 21da317453 Logging system rework
* use one central unified log with channels/priorities ad-hoc listener registration and de-registration
* disable buffering by default
* add multi-threaded ringbuffer implementation
* use buffered listener for the gui (using the ringbuffer)
2014-06-26 17:34:28 +02:00
Peter Tissen ed10ea7544 add back fused gui log classes, this needs to be redone another way
also, add back wx requirement for strfmt
2014-06-08 23:16:08 +02:00
Peter Tissen c37905e465 initial start to eliminate static func init, not compilable atm
move module initialization into a module manager, still has some issues like stopping not working and debug crashing

add #idef 0 to modules that aren't in the windows project

don't double initialize and don't de-initialize for now, since many modules don't expect it and it leads to many errors

remove duplicate module lists for empty modules and implemented ones, make Module non-copyable but movable

add secondary project, no real use for it now

add some memleak config to the emucore and add asmjit path to rpcs3

small rebase error fixed to get it to compile again

add filters for emucore

re-add the module manager and static file

WIP commit, linker errors abound

some more abstraction layer stuff

fix the remaining linker errors, re-enable platform specific mouse, pad and keyboard handlers

rebasing

fix memset undefined and re() usage of se_t before declaration

Add wxGUI define by default for cmake builds

fix copy constructors of Datetime header

fix copy constructors of other wx interface classes

remove static declarations of global variables

make wxGLCanvas constructor non-ambiguous even with wx2.8. compat mode, fix wrong std::exception constructor calls

remove duplicate definition for FromUTF8 and ToUTF8

temp changes
2014-06-08 23:16:06 +02:00
Alexandro Sánchez Bach 2534216971 Improvements in SC_Process and other lv2 syscalls
* Splitted the file in SC_Process.h and SC_Process.cpp.
* Some argument data types modified on sys_process_* functions.
* Implemented sys_process_get_number_of_object and sys_process_get_id.
* Added dummy versions of other sys_process_* functions based on the old
SysCalls::lv2Process* code (which I deleted).
* Improved BE <-> LE comparisons on SC_Mutex, SC_Lwmutex and SC_Lwcond.
* Updated some SC_Memory functions to use mem_ptr_t<T>.

NOTE: There are probably better ways to get the active objects that
don't imply creating a new data type filled with std::set<u32>'s.

TODO: For some types, the corresponding std::set<u32> isn't being
updated when an object is created/destroyed. I'll take care of this
soon.
2014-06-07 08:34:36 +02:00
Peter Tissen 40add8f9a2 Seperate ConLog.h and ConLogFrame.h (for now only seperate headers)
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
2014-06-06 02:50:22 +02:00
Michael Putters 03914d60d3 Basic XInput support 2014-05-24 21:05:00 +02:00
Hykem 90896560bb Merge pull request #209 from unknownbrackets/warnings
Fix a bunch of warnings
2014-04-28 17:15:12 +01:00
Unknown W. Brackets fce0a1efa1 Add AboutDialog.h header to msvc. 2014-04-28 07:43:12 -07:00
Lioncash b877879db6 Clean up UI code.
- Use Bind instead of connect. It's recommended for anyone using wx 2.9+
- Remove AppConnector. All this did was destroy objects used in the UI. However, wxWidgets handles this. So it's redundant.
- Misc other unimportant changes.
2014-04-27 19:53:13 -04:00
Bigpet eea3aa9729 This is squashed commit from the follwing commits:
* 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
2014-04-27 00:41:46 +02:00
Nekotekina 62df7eb499 Merge branch 'master' of https://github.com/DHrpcs3/rpcs3
Conflicts:
	rpcs3/rpcs3.vcxproj.filters

Conflicts fixed
2014-04-18 16:59:31 +04:00
nohbdy d136adc73f RSX Bugfixes and plugging memory leaks
BUGFIX: Add break after NV4097_SET_TEXTURE_BORDER_COLOR in RSXThread.cpp
BUGFIX: Fix parameters passed to RSXTexture::SetControl3 (they were being
passed in reverse order)
BUGFIX: Remove invalid, non-sensical call to glPixelStorei in GLGSRender.h
BUGFIX: Fix signed/unsigned comparison compiler warnings in GLGSRender.h
CHANGE: Make GLFragmentProgram::Decompiler synchronous by default
CHANGE: Update wxWidgets submodule to latest commit
BUGFIX: Fix several memory leaks
ADDED: Created a new MSVC debug configuration to output locations
  of allocations that end up leaking after the program
  is closed.
BUGFIX: Fix the stupid PadHandler crash due to the lack of a virtual d'tor
2014-04-17 15:15:43 -05:00
Nekotekina 180f8aac5d SPU Interpreter fix 2014-04-12 14:27:27 +04:00
Nekotekina e56bb1b675 Merge branch 'master' of https://github.com/DHrpcs3/rpcs3 2014-04-11 12:33:41 +04:00
Nekotekina a7057f5205 Conflicts fixed 2014-04-10 02:00:01 +04:00
Oil 770ebaf271 Implemented small tool for generating id of HLE-Function. Fixed small issue in PADManager dialog. 2014-04-09 23:57:26 +04:00
Alexandro Sánchez Bach 8798b05e1f Merge pull request #161 from lioncash/vs
Reorganize the VS project.
2014-04-06 22:59:05 +02:00
Nekotekina e614a7313c SPU JIT WIP 2014-04-06 23:23:32 +04:00
Nekotekina 4a9310755f Working on simple SPU JIT
No, it doesn't work.
2014-04-05 20:30:08 +04:00
O1L bbbe2f8916 GUI: Pad Settings dialog reworked. 2014-04-05 18:26:45 +04:00
Nekotekina 1e02598903 cellSync: global mutex avoided
cellAudio: level bug fixed
2014-04-03 15:01:14 +04:00
Lioncash bb40c0a71a Reorganize the VS project.
Puts all the headers with the corresponding cpp file instead of having every include in a single folder.

Also added headers that weren't included previously.
2014-04-02 14:30:30 -04:00
Nekotekina b6d8f1e028 Small fix (cellAudio, fsAioRead)
libsynth2 draft
2014-04-02 19:17:43 +04:00
Peter Tissen 8ac226ae69 replace all instances of wxString with std::string in all cases not
directly involved in either the GUI or other wxWidget classes like wxFile
2014-04-01 16:23:03 +02:00
Hykem 196c2ffe5b Updated the crypto engine:
- Updated AES and SHA-1 source code;
- Fixed a few code warnings;
- Implemented EDAT/SDAT decryption.

Started SPURS implementation:
- Added an internal SPURSManager class draft;
- Added several drafts for cellSpurs functions.

Implemented key.edat decryption in sceNpDrmIsAvailable:
- NOTE: Currently, the decrypted key.edat is stored under dev_hdd1/titleID and the user must replace this file in dev_hdd0. This behavior will change in the future as it's currently intended for controlled testing only.
2014-03-30 21:09:49 +01:00
Alexandro Sánchez Bach 503c24453a cellSaveData* progress & reverted commit 950fcfe
* Reverted commit
950fcfe4ef
(Reverted ConLog changes) that fixed the "Bad flip!" error since there
is a better way of solving it. It will be fixed soon.
* Moved cellSaveData to cellSysutil (but preserving the functions in a
separated file named: cellSysutil_SaveData.cpp).
* Progress on cellSaveDataList* functions.
* Added a small margin to the new Settings dialog. :-)
2014-03-28 20:06:15 +01:00
Nekotekina d0ea397492 cellAtrac draft
sys_spu_thread_group_resume
Some bugs fixed
2014-03-22 15:08:07 +04:00
Alexandro Sánchez Bach ad7ac17647 Small fixes in sceNpTrophy and cellSaveData
* Added cellSaveData.cpp to the project.
* Fixed wrong cellSaveData structs.
* Fixed compilation problem caused by the switch/case statements
introduced in sceNpTrophy and TROPUSR.cpp in the last commit
2014-03-21 00:46:27 +01:00
Alexandro Sánchez Bach f86ac251a8 TROPUSR Loader & sceNpTrophy stuff
* Added a loader for the TROPUSR.DAT files.
* Added a few structs/enums to sceNpTrophy.h
* Added more sceNpTrophy functions and updated other ones.
* Updated cellHddGame error codes in cellSysutil.h
* Added addresses of cellHddGame to cellSysutil_init.

NOTE:  There is a known problem in the `if
(!Emu.GetVFS().ExistsFile(filepath))` in `TROPUSRLoader::Load` which
causes the games to overwrite their TROPUSR.DAT file every time they
boot and they "forget" the unlocked trophies. However, as long as the
game is running the unlocked trophies should be still there.
2014-03-20 19:23:14 +01:00
Nekotekina 2c447f686d sys_spinlock implemented 2014-03-13 20:11:16 +04:00
Alexandro Sánchez Bach b31a990cf1 cellUserInfo module added & cellFsReadWithOffset 2014-03-11 18:40:37 +01:00
Alexandro Sánchez Bach d5e94d4cd9 Some sys_net functions
* sys_net; Added some functions using winsock.h | sys/socket.h
* sys_net: Renamed overloaded function/structs "*" to "sys_net_*"
* Added SetAddr function to mem_base_t
2014-03-11 15:42:28 +01:00
Nekotekina 75f535c947 Conflicts fixed 2014-03-08 03:02:59 +04:00
O1L df894c05b2 Implemented simple OpenAL audio output. Structures and enum's from cellAudio.cpp moved to cellAudio.h . Audio dump functions moved in AudioDumper class. 2014-03-08 02:15:39 +03:00
Nekotekina 1c302433af cellSpurs draft added 2014-03-08 01:31:08 +04:00
Nekotekina fac86aae58 Conflicts fixed (again) 2014-03-06 15:55:50 +04:00
Nekotekina 05c6a96d27 Conflicts fixed 2014-03-06 15:50:45 +04:00
Nekotekina e86a849600 libmixer draft
and some hacks
2014-03-06 15:40:50 +04:00
Alexandro Sánchez Bach d6596ca453 Progress in cellL10n
* cellL10n added to the project.
* Function addresses added to cellL10n_init.
* UTF16stoUTF8s implemented (WARNING: I haven't tested it).
2014-03-06 09:48:35 +01:00
Alexandro Sánchez Bach 8204deaae6 Minor changes
* Fixed some forgotten `!` in cellFsGetFreeSize.
* Fixed VSUM2SWS opcode.
* Added cellNetCtl to the project.
* Implemented cellNetCtlGetState.
2014-03-04 15:40:15 +01:00
Hykem a1adc6cdaa First installment of RPCS3's custom crypto engine:
- Removed all scetool dependencies;
- Implemented a key vault to manage PS3 keys internally;
- Implemented SELF decryption;
- Improved PKG handling.

Notes:
- NPDRM SELF files (EBOOT.BIN) can also be decrypted. A valid matching RAP file must be placed under the dev_usb000 folder.
- The source code is considerably commented and several debugging functions were also added in order to aid anyone who wishes to contribute to the engine.
2014-03-03 04:48:07 +00:00
Nekotekina c978fe377d Merge branch 'master' of https://github.com/DHrpcs3/rpcs3 2014-03-02 10:24:18 +04:00
Alexandro Sánchez Bach 6c28753dae Minor fixes: SPU, sys_mmapper, and cmd-line args.
* Some SPU instructions updated:
- Updated wrong instructions: SHLH, FRDS
- Added UNIMPLEMENTED warning to: HBR, HBRA, HBRR
* Updated sys_mmapper_allocate_memory declaration in SysCalls.h
* Added sceNp.cpp to project
* Added checkbox in the Settings menu for exiting RPCS3 when
sys_process_exit (SC_Process.cpp) is called. Unfortunately, due to some
problems, this checkbox doesn't have a real effect yet.
2014-03-01 19:33:40 +01:00
Nekotekina 8b952bf98c memcpy partially replaced
Fixed one of exit issues
2014-02-26 18:06:13 +04:00
Nekotekina 8bd0ee875c Fixed conflicts 2014-02-26 15:27:06 +04:00
Nekotekina a14276abf1 Work on demuxer, ffmpeg libs linked 2014-02-24 04:00:42 +04:00
Alexandro Sánchez Bach 696e00a570 Merge refactoring branch & Krofna's pull req. #46 2014-02-23 02:39:46 +01:00
Alexandro Sánchez Bach 5f9e60c45f PKG Loader rewritten
* Rewritten unpkg.c -> Loader/PKG.cpp
* MainFrame::InstallPkg now *only* installs the PKG.
* Fixed crash when unpacking big debug PKG files.
* Debug PKGs are no longer recrypted.
* 'About...' dialog updated to remove PKG-related notice.
* Unpkg removed.

NOTE: The class PKGLoader is using wxWidgets functions to access the
files. I think VFS would be better, but the Emulator isn't necessarily
running when installing the PKG. In the other hand, initializing VFS
with RPCS3 may be somewhat risky... Any alternatives?

TODO: Get rid of the decrypted "*.dec" files, and try to decrypt and
read contents of the PKG on the fly using the information stored in
m_entries.
2014-02-21 02:35:33 +01:00
Nekotekina 9351e50f63 Minor changes, some bugs fixed
cellVdec headers, cellFsAioRead review, sync stuff review, cellAdec and
cellVpost
2014-02-20 06:16:17 +04:00