Commit graph

1918 commits

Author SHA1 Message Date
DHrpcs3 ceee6049dc Fixed last commit 2014-12-02 03:04:01 +02:00
DHrpcs3 d82f0b62a5 Fixed RSXThread::ReadIO32 exception 2014-12-02 02:51:42 +02:00
DHrpcs3 a725676346 Fixed sys_mmapper_unmap_memory 2014-12-02 01:25:08 +02:00
DHrpcs3 d593e47554 RSX: Fixed NV4097_SET_VERTEX_DATA4UB_M, NV4097_SET_VERTEX_DATA2F_M & NV4097_SET_VERTEX_DATA4F_M implementation 2014-12-02 00:02:05 +02:00
Oil b2c113e5b1 Oops, disable my debug logs. 2014-12-01 23:27:22 +04:00
Oil c3696f7897 ARMv7 decoder reworked (needs more testing / fixes / optimisations). TODO: implement new ARMv7 disassembler (currently ARMv7DisAsm fully disabled), add 0x0 opcodes group. 2014-12-01 23:20:27 +04:00
S Gopal Rajagopal 1f60d6374c Merge remote-tracking branch 'upstream/master' 2014-12-02 00:49:18 +05:30
Alexandro Sánchez Bach 7ba0bda244 Merge pull request #878 from Nekotekina/master
PSV progression, loader fixes
2014-12-01 18:17:57 +01:00
Oil b736b8616b Merge branch 'master' of https://github.com/DHrpcs3/rpcs3 2014-12-01 20:47:48 +04:00
Nekotekina e4d5e7c78b Some draft 2014-12-01 19:34:18 +03:00
S Gopal Rajagopal 54d6aee028 Merge remote-tracking branch 'upstream/master' 2014-12-01 18:47:25 +05:30
Nekotekina c61fe621b0 Memory leak fixed 2014-12-01 03:41:01 +03:00
Nekotekina 697b699873 Some bugs fixed
ARMv7 partially restored
2014-12-01 01:04:47 +03:00
S Gopal Rajagopal 6cc6ca9f3c PPU: Implemented more instructions 2014-12-01 02:09:48 +05:30
Nekotekina 1568930da6 /dev_bdvd/ and /app_home/ fixed 2014-11-30 22:23:51 +03:00
B1ackDaemon 8f5d9b2c0e Merge pull request #876 from tambry/master
CellVideoOut fix, formatting fixes and Travis compiling fix
2014-11-30 21:09:27 +02:00
Nekotekina d648957864 Merge branch 'master' of https://github.com/DHrpcs3/rpcs3 2014-11-30 15:08:54 +03:00
Nekotekina fd7a0950a7 Compilation fix 2014-11-30 15:08:23 +03:00
DHrpcs3 a58c5f5a4c VFS fixes
- using /app_home/ as local link
Implemented fmt::merge & fmt::tolower
2014-11-30 13:18:17 +02:00
Oil 58787f80a1 Conflicts fixed 2014-11-30 12:35:03 +04:00
Raul Tambre 1eb9460f2b Merge remote-tracking branch 'upstream/master' 2014-11-30 09:09:38 +02:00
DHrpcs3 ebae8dad0a Minor fixes 2014-11-30 00:03:29 +02:00
DHrpcs3 12d8e0ef38 Fixed path to param.sfo 2014-11-29 23:59:16 +02:00
S Gopal Rajagopal ce0f713f03 PPU: Implement more instructions in the recompiler. Fix some instructions in the interpreter. 2014-11-30 02:46:29 +05:30
Nekotekina 9fc7197c4f cellGameContentPermit: extremely DANGEROUS bug fixed
And few tiny changes.
2014-11-29 20:41:18 +03:00
Raul Tambre 6aff1545c2 Merge remote-tracking branch 'upstream/master'
Conflicts:
	rpcs3/Emu/SysCalls/lv2/lv2Fs.cpp

Update from master
2014-11-29 19:05:49 +02:00
Raul Tambre bfff7ff5f9 Fix CellVideoOut values, formatting fixes 2014-11-29 19:01:04 +02:00
DHrpcs3 d9b0b56e3e Using strcmp instead stricmp 2014-11-29 17:15:26 +02:00
DHrpcs3 6d3c4e6efc Fixed compilation 2014-11-29 16:54:32 +02:00
DHrpcs3 47df9eb156 Fixed loading unknown modules 2014-11-29 16:50:59 +02:00
DHrpcs3 2b7f984de8 Fixed GameViewer
Disabled pause on null rsx instruction
2014-11-29 16:16:48 +02:00
DHrpcs3 95ce623da4 Merge branch 'master' of https://github.com/DHrpcs3/rpcs3 2014-11-29 15:17:34 +02:00
DHrpcs3 a59cf50f03 Improved LLE Manager
Improved VFS
2014-11-29 15:16:53 +02:00
S Gopal Rajagopal 6ea50567b6 PPU: Implemented some instructions in the recompiler. Fixed some bugs in the interpreter. 2014-11-29 01:39:59 +05:30
Nekotekina a7e659abd1 Merge branch 'master' of https://github.com/DHrpcs3/rpcs3 2014-11-28 22:06:45 +03:00
Nekotekina 936aeed0a5 SPU loader fix 2014-11-28 21:56:16 +03:00
S Gopal Rajagopal 205e1d88b3 PPU LLVM recompiler: Implement more instructions 2014-11-26 00:53:24 +05:30
S Gopal Rajagopal 631675fdd6 Merge remote-tracking branch 'upstream/master'
Conflicts:
	rpcs3/Emu/Cell/PPUInterpreter.h
2014-11-25 23:26:16 +05:30
Fabian Schaffert ad01829b23 Fixes compilation error 2014-11-24 22:06:21 +01:00
S Gopal Rajagopal a9645eda73 Implement some more FP instructions in the PPU LLVM recompiler 2014-11-25 02:14:12 +05:30
Nekotekina ea1bad8724 Merge branch 'master' of https://github.com/DHrpcs3/rpcs3 2014-11-24 22:51:01 +03:00
S Gopal Rajagopal bb1e08a6be Remove code left in comments from the PPU LLVM recompiler. Also cause the emulator to pause if unsupported instructions are required to be compiled. 2014-11-24 23:49:06 +05:30
DHrpcs3 795729a0b7 Fixed vm_ptr
Improved elf64 loader.
Minor improvements to vm.
Added hotkeys to MainFrame.
2014-11-24 20:12:04 +02:00
S Gopal Rajagopal d92344f383 Implement more instructions in the PPU LLVM recompiler 2014-11-24 01:41:25 +05:30
S Gopal Rajagopal 5934132b55 Implemented VPK* 2014-11-23 20:47:00 +05:30
S Gopal Rajagopal 921ee1464b Implemented some vector instructions 2014-11-23 19:06:20 +05:30
Nekotekina 8df2c3d707 Merge branch 'master' of https://github.com/DHrpcs3/rpcs3 2014-11-22 19:49:54 +03:00
Raul Tambre 16b4b9bf40 Fix Travis compiling 2014-11-21 15:52:01 +02:00
DHrpcs3 cdfef3bf9e Fixed compilation errors
Implemented converter_le_be
2014-11-20 21:41:04 +02:00
S Gopal Rajagopal 5addbcbbb0 Direct UT output to PPULLVMRecompiler.log 2014-11-21 00:04:59 +05:30
S Gopal Rajagopal 6661018691 Fixed the unit test framework for the PPU LLVM recompiler. Added tests for ANDC. Fixed an issues that prevented LMW/STMW from being generated properly. 2014-11-20 23:38:10 +05:30
S Gopal Rajagopal 13acb06d1a Implemented ANDC and also added support for TB and TBH in MFSPR 2014-11-20 01:03:51 +05:30
S Gopal Rajagopal e8582c8655 Improved the logic that detects which functions should be recompiled 2014-11-20 00:42:07 +05:30
raven02 06f3df0ff4 Check contentInfoPath && usrdirPath is not null for cellGameContentPermit 2014-11-19 23:17:29 +08:00
DHrpcs3 598d929aba Implemented LLE Modules Manager (draft)
Improved loader core.
Implemented *_thread wrappers.
Minor fixes.
Temporary disabled ELF Compiler & DisAsm frame.
2014-11-19 16:16:30 +02:00
Raul Tambre f99353f649 Fix for TB SPR and disable writing to TB SPR
Now use get_time() like MFTB instead of reading for the time-based SPR.
2014-11-18 18:03:49 +02:00
raven02 cd347fa110 Minor fix 2014-11-18 14:44:37 +08:00
Fabian Schaffert e9ab9f51fc Fixes segfaults for sys_event_flag_(create/get)
Neither sys_event_flag_create() nor sys_event_flag_get() checked for
NULL pointers in their arguments, which caused the corresponding test
from ps3autotests to segfault.
2014-11-16 21:16:49 +01:00
Fabian Schaffert 00e0e85793 Fixes return value of sys_semaphore_create()
In case of att.addr() being NULL, CELL_EFAULT must be returnd and not
CELL_EINVAL, according to the corresponding ps3autotest.
2014-11-16 14:45:58 +01:00
raven02 25ba18e8a7 Check address is not null for cellGcmAddressToOffset 2014-11-16 19:05:41 +08:00
Fabian Schaffert f507724b5c Fixes build in Debug mode on linux
The changes introduced in commit 80294e1 makes the mcdisassembler
component of LLVM necessary in debug mode to successfully link rpcs3.
2014-11-15 21:30:01 +01:00
Hykem 4fe4e589fb Merge pull request #863 from raven02/patch-6
Check pSelf->pAddr is not NULL before setup pAddr pointer
2014-11-15 15:19:50 +00:00
Hykem 19d1a6babc Merge pull request #858 from gopalsr83/ppu_llvm_recompiler
Improved tracer for the PPU recompiler
2014-11-15 15:19:40 +00:00
raven02 3b31a9233d Check pSelf->pAddr is not NULL before setup pAddr pointer 2014-11-15 22:47:30 +08:00
Raul Tambre 3af57957d5 cellSail fixes and GetRegBySPR split up
* Fixed cellSailPlayerAddDescriptor
* Fixed cellSailDescriptorSetAutoSelection
* Fixed cellSailDescriptorIsAutoSelection
* Split GetRegBySPR into ReadSPR and WriteSPR
* Added 0x10c for ReadSPR and WriteSPR (Time-based register)
2014-11-15 16:45:02 +02:00
Fabian Schaffert 6906d146bb Adds copy constructor for class InstrBase
A copy constructor is necessarry for `class InstrBase`, as the implicit
copy constructor simply copies the pointer `m_args`. This results in a
double delete of the same memory region, causing a segmentation fault
when rpcs3 exited.
2014-11-15 00:16:17 +01:00
Fabian Schaffert 4185c1e422 Fixes segfault described in #794
Fixes bug in sys_semaphore_create() when a NULL pointer address is
passed in sem or attr.

Fixes bug in sys_semaphore_get_value() when a NULL pointer address is
passed in count.
2014-11-12 23:25:27 +01:00
Nekotekina 220384997f Merge branch 'master' of https://github.com/DHrpcs3/rpcs3 2014-11-11 16:04:16 +03:00
Raul Tambre 9ee7471bd5 Added RSX logging option
Also some minor fixes to cellSail
2014-11-10 22:18:46 +02:00
S Gopal Rajagopal 1568d2d602 Fixed some more gcc/clang compilation errors 2014-11-10 14:32:41 +05:30
S Gopal Rajagopal 87accc624f Fixed some errors thrown by gcc/clang 2014-11-10 12:49:48 +05:30
S Gopal Rajagopal 18251b784f Merge remote-tracking branch 'upstream/master' into ppu_llvm_recompiler 2014-11-10 11:30:44 +05:30
Nekotekina c8d4193f08 PSV: sceKernelCreateThread and sceKernelStartThread
Some fixes in callback manager
2014-11-10 03:21:50 +03:00
raven02 ea7ec448dd WIN32: set timer resolution clock to 1 ms 2014-11-10 07:34:28 +08:00
S Gopal Rajagopal 06a4c301cd Merge remote-tracking branch 'upstream/master' into ppu_llvm_recompiler
Conflicts:
	rpcs3/Emu/Cell/PPUInterpreter.h
	rpcs3/Emu/Cell/PPULLVMRecompiler.cpp
	rpcs3/Emu/Cell/PPULLVMRecompiler.h
	rpcs3/Emu/Cell/PPUThread.cpp
	rpcs3/emucore.vcxproj.filters
	rpcs3/rpcs3.vcxproj
2014-11-10 02:31:35 +05:30
S Gopal Rajagopal c12a98510c Utilize idle time to combine blocks 2014-11-10 01:04:21 +05:30
S Gopal Rajagopal 71c12360c7 Always inline functions 2014-11-09 14:03:36 +05:30
S Gopal Rajagopal 5c468d7591 Disabled call stack tracing when using the PPU LLVM recompiler 2014-11-09 11:50:01 +05:30
S Gopal Rajagopal 80294e1034 Fixed some bugs 2014-11-09 02:00:19 +05:30
Nekotekina ac20cf0060 cellGcmCallback modified 2014-11-08 19:58:51 +03:00
S Gopal Rajagopal 34e34910fd Integrated execution engine, tracer, recompilation engine and compiler 2014-11-08 09:52:23 +05:30
Nekotekina 27c35174bc ARMv7: ADD*, LSL*, shifts fixed 2014-11-07 22:30:04 +03:00
S Gopal Rajagopal ee6a239679 Generate code from a CFG 2014-11-07 16:24:59 +05:30
Nekotekina 0503f08f67 Hmm... 2014-11-06 19:20:29 +03:00
Nekotekina 5ba772df93 Some errors 2014-11-06 19:09:54 +03:00
Nekotekina 8ad141de6f sceLibc: memcpy, stack arguments 2014-11-06 18:29:14 +03:00
Nekotekina af0ab4e8ad Bugfix 2014-11-06 03:57:34 +03:00
Nekotekina 7172154da7 ARMv7: CMP_IMM, SUB_IMM, null HLE function 2014-11-06 03:22:48 +03:00
Nekotekina 1749b95b57 sceRefs reading algorithm modified 2014-11-05 21:53:54 +03:00
Nekotekina 5d63c6b526 Merge branch 'master' of https://github.com/DHrpcs3/rpcs3 2014-11-05 19:20:44 +03:00
Nekotekina 7a2cd15173 sceLibm, sceLibKernel drafts 2014-11-05 19:07:34 +03:00
S Gopal Rajagopal 7c3c5ae08e Construct CFG from execution traces 2014-11-05 01:01:20 +05:30
Hykem 5a27a84f5a Merge branch 'master' of https://github.com/gopalsr83/rpcs3 into gopalsr83-master 2014-11-04 16:45:25 +00:00
Nekotekina c5858de567 sceLibstdcxx draft 2014-11-04 03:51:26 +03:00
Nekotekina 43382a0ac6 Something is wrong with entry points... 2014-11-03 14:35:50 +03:00
Nekotekina df72f5e37c ARMv7: CMP_REG, LDR_IMM, LDR_LIT, STR_REG, SUB_REG
sceLibc: exit and printf drafts
This actually allows to display hello world.
2014-11-02 18:50:20 +03:00
Nekotekina 31c71b4a48 Compilation fix 2014-11-02 04:18:02 +03:00
Nekotekina ddbd590bef Small fix 2014-11-02 03:28:53 +03:00
Nekotekina 61e6d8af96 Compilation fix 2014-11-02 02:45:07 +03:00
Nekotekina 3bdfc6b499 ARMv7: more opcodes, some changes in loader 2014-11-02 02:19:14 +03:00
Nekotekina 536c5a900a ARMv7: more opcodes + STR 2014-11-01 01:00:36 +03:00
S Gopal Rajagopal 7846fa5829 Made changes to tracer so that it understand compiled blocks 2014-11-01 01:22:39 +05:30
Nekotekina 3895c083cb ARMv7: BX, MOV_IMM, IT (ITSTATE register) 2014-10-31 04:12:07 +03:00
Nekotekina de156c59e4 ARMv7: more opcodes 2014-10-30 23:07:47 +03:00
Nekotekina 7aeda3b0c7 ARMv7: more opcodes 2014-10-30 18:17:51 +03:00
Nekotekina 94213bb398 ARMv7: more opcodes 2014-10-29 18:30:35 +03:00
Nekotekina bf6415accd Tiny ARMv7 interpreter update 2014-10-29 07:13:34 +03:00
Nekotekina 0f602e0e13 Bugfix 2014-10-28 19:46:14 +03:00
Nekotekina 65ddf980e0 Small fix 2014-10-28 15:30:37 +03:00
Nekotekina 09a4d14f8f cellAdec improved 2014-10-28 00:24:11 +03:00
raven02 f54a5c6591 Stub DCBI instruction 2014-10-26 06:30:43 +08:00
S Gopal Rajagopal 160b58cf61 Fixed compilation issues 2014-10-25 06:56:57 +05:30
S Gopal Rajagopal 6bc0ce8046 Intial commit for advanced tracer 2014-10-25 06:38:47 +05:30
Nekotekina ffda60996d Compilation fix 2014-10-24 23:13:47 +04:00
Nekotekina 6df5ddb973 Few warnings fixed 2014-10-24 17:24:09 +04:00
raven02 4eb4186b5c Support FCTID/FCTIW instructions 2014-10-24 08:46:14 +08:00
Nekotekina 973e3f8f7e Few instructions simplified 2014-10-24 02:06:15 +04:00
Nekotekina 7777be6fc1 Some things simplified 2014-10-23 02:53:44 +04:00
S Gopal Rajagopal ce21a9d250 Cleanup some files 2014-10-22 01:12:15 +05:30
S Gopal Rajagopal dfd3425e65 Merge remote-tracking branch 'upstream/master' into ppu_llvm_recompiler
Conflicts:
	Utilities/BEType.h
	rpcs3/Emu/Cell/PPUInterpreter.h
	rpcs3/emucore.vcxproj.filters
2014-10-22 00:01:16 +05:30
raven02 00486d39e2 Add test against interpreter 2014-10-21 22:43:46 +08:00
raven02 20a5bf424f Support FSQRT/FSQRTS instructions 2014-10-21 22:20:52 +08:00
gopalsr83 1446e5bb50 Made changes for compiling in Linux 2014-10-21 16:06:10 +05:30
S Gopal Rajagopal 4514fc12bd Updated Travis CI configuration to compile LLVM 2014-10-21 02:17:00 +05:30
Hykem ab0a907c7a Merge pull request #846 from gopalsr83/master
Fixed the implementation of LSWI and STSWI. Simplified the implementation of VSL and VSR.
2014-10-20 16:43:20 +01:00
S Gopal Rajagopal 7e1413badf Fixed the implementation of LSWI and STSWI. Simplified the implementation
of VSL and VSR.
2014-10-20 17:19:01 +05:30
S Gopal Rajagopal 024c15d4d3 Some cleanup 2014-10-20 01:16:35 +05:30
Alexandro Sánchez Bach 6a163b8cc5 Merge pull request #844 from Nekotekina/master
Some fixes in cellAdec, cellVdec, cellDmux
2014-10-19 00:45:31 +02:00
S Gopal Rajagopal 8a7ba5a709 Merge remote-tracking branch 'upstream/master' into ppu_llvm_recompiler
Conflicts:
	Utilities/BEType.h
	rpcs3/Emu/Cell/PPUInterpreter.h
	rpcs3/emucore.vcxproj.filters
2014-10-19 02:36:26 +05:30
S Gopal Rajagopal ce4d04290e Support more instructions 2014-10-19 01:57:54 +05:30
Alexandro Sánchez Bach 59c8def566 Merge pull request #845 from Survanium90/master
Various changes in CellGem, SceNP and CellMic
2014-10-18 21:11:26 +02:00
Survanium90 f1168f7c59 Initial CellMic implementation 2014-10-18 22:22:52 +04:00
Survanium90 7fd3dd9ebf Implemented sceNpManagerGetContentRatingFlag 2014-10-18 22:20:37 +04:00
Survanium90 220e4ad8a6 Added initialization checks in CellGem 2014-10-18 22:14:16 +04:00
Nekotekina 81474be103 AV decoding minor cleanup 2014-10-18 21:00:21 +04:00
Nekotekina 318d06efda cellAdecClose, cellVdecClose fix 2014-10-18 02:20:03 +04:00
Nekotekina 18930a43f2 waiter_map_t small fix 2014-10-18 00:13:25 +04:00
B1ackDaemon 9c8666573b Merge pull request #842 from tambry/ChangesAndAdditions
Initial cellSail implementation
2014-10-17 18:43:46 +03:00
Raul Tambre b96037f160 Fixes
Fixed vm::vars missing be_t in a lot of cases and disabled a part of
cellSailCreateDescriptor for now.
2014-10-17 18:14:58 +03:00
Raul Tambre d58beb8f4c Initial cellSail implementation
Also a TODOs for frequencies
2014-10-17 16:20:40 +03:00
B1ackDaemon 3d415d653b Merge pull request #841 from Nekotekina/master
Small cellSpurs / cellSync update
2014-10-17 01:13:27 +03:00
Nekotekina 5de059789d waiter_map_t for syncRwm and syncQueue 2014-10-16 23:34:17 +04:00
Nekotekina 18b69cac99 waiter_map_t : concept changed
Purpose-specific waiter_map_t objects instead of global one. SM_Sleep()
removed.
2014-10-16 20:29:41 +04:00
S Gopal Rajagopal 817947e373 Made minor fixes to some instructions in the PPU interpreter. Also changed the implementation of MFTB so that it always increments at a constant rate. 2014-10-16 17:03:46 +05:30
S Gopal Rajagopal 35a0e0c625 Support more instructions 2014-10-16 15:28:57 +05:30
S Gopal Rajagopal b95cddb0c7 Fix compilation errors caused by rebase 2014-10-14 14:23:50 +05:30
S Gopal Rajagopal cd154ad357 Support more instructions 2014-10-13 15:40:42 +05:30
S Gopal Rajagopal 143f542bd6 Fixed some bugs 2014-10-13 15:40:42 +05:30
S Gopal Rajagopal 9c99fc7bb1 Disabled unit tests 2014-10-13 15:40:41 +05:30
S Gopal Rajagopal 3e7d42b023 Support some instructions 2014-10-13 15:40:41 +05:30
S Gopal Rajagopal 1bd235616f Implemented branch instructions and some basic block combining. 2014-10-13 15:40:40 +05:30
gopalsr83 d5e86f7190 Fixed compilation in Linux. Have not tested it though. 2014-10-13 15:40:39 +05:30
S Gopal Rajagopal f210180aa6 Disabled the use of BMI instructions since older processors do not support it 2014-10-13 15:40:39 +05:30
S Gopal Rajagopal e687a91243 Implemented some FP instructions but did not add support for updating the FPSCR. Many misc changes. 2014-10-13 15:40:38 +05:30
S Gopal Rajagopal ccc37b5dc5 Print disassembly to log 2014-10-13 15:40:38 +05:30
S Gopal Rajagopal a029e70863 More changes to get the build to work properly 2014-10-13 15:38:03 +05:30
S Gopal Rajagopal 170439f91c LLVM VS project files that were part of the reposiory have been removed. These files will now be auto-generated. It should now be possbile to build from any directory and not just D:\Projects\rpcs3. 2014-10-13 15:35:03 +05:30
S Gopal Rajagopal c72d97c64a Implemented LF*, STF*, RL* and a few more instructions 2014-10-13 15:30:58 +05:30
S Gopal Rajagopal e485047a10 Enabled some LLVM analysis/transform passes
Implement mul, neg, nor, subf
2014-10-13 15:26:10 +05:30
S Gopal Rajagopal d69de9c332 Fixed some bugs that prevented the recompiler from terminating properly 2014-10-13 15:26:09 +05:30
S Gopal Rajagopal 840ae2f86b Run recompilation in the background 2014-10-13 15:26:09 +05:30
S Gopal Rajagopal 1f3a117744 Disabled tests 2014-10-13 15:26:08 +05:30
S Gopal Rajagopal f5188cdb32 Some refactoring. Added support for some load/store instructions. 2014-10-13 15:26:08 +05:30
S Gopal Rajagopal 1be5222e66 Made changes so that there is a single LLVM context instead of one per PPU. If separate LLVM contexts are used per PPU and if different PPUs execute the same address then the address will have to compiled once per PPU. 2014-10-13 15:26:07 +05:30
S Gopal Rajagopal a4bb9eaa55 Made changes so that the recompiler output may be verfied against that of the interpreter. This seems to be a better strategy for testing the recompiler. The best strategy would be to verify its output against a real PPU core but I dont have access to one. 2014-10-13 15:26:07 +05:30
S Gopal Rajagopal 791f8e3b9a Compilation Fix 2014-10-13 15:25:02 +05:30
S Gopal Rajagopal 02d1c9f6d2 Added LLVM as a submodule 2014-10-13 15:24:24 +05:30
S Gopal Rajagopal 6135b450c2 Implemented fallback to PPU Interpreter 2014-10-13 15:22:39 +05:30
S Gopal Rajagopal aa614e83f2 Refactoring + new instructions 2014-10-13 15:22:39 +05:30
S Gopal Rajagopal 878926f57c Support few more instructions 2014-10-13 15:22:38 +05:30
S Gopal Rajagopal ac86ee8fa9 Added support for MULLI 2014-10-13 15:22:38 +05:30
S Gopal Rajagopal eaa644dc20 Added support for a few more vector instructions 2014-10-13 15:22:37 +05:30
S Gopal Rajagopal d8d0c0d2fe Added support for 3 more instructions 2014-10-13 15:21:25 +05:30
S Gopal Rajagopal 659a3d88c6 Added more tests 2014-10-13 15:21:24 +05:30
S Gopal Rajagopal 66d0b25448 Moved tests to a new file 2014-10-13 15:21:24 +05:30
S Gopal Rajagopal 2ea881301a Implemented a basic UT framework for PPULLVMRecompiler 2014-10-13 15:18:53 +05:30
S Gopal Rajagopal 2bb63ad051 LLVM based PPU Recompiler. Intial commit 2014-10-13 15:18:17 +05:30
Raul Tambre 9e5403aeb3 Remove unneeded be_t 2014-10-11 20:20:01 +03:00
Nekotekina 48eb66383b waiter_reg_t, cellSyncBarrier improved 2014-10-11 02:37:20 +04:00
Nekotekina 3c2e0fff07 waiter_op() and waiter_signal() basis
Simplified signaling on condition variables without using them directly.
2014-10-11 01:33:57 +04:00
Nekotekina 446993eaa6 Atomic intrinsics for u128 type
cellSpursGetSpuThreadGroupId
cellSpursGetNumSpuThread
cellSpursGetSpuThreadId
2014-10-10 22:41:57 +04:00
Nekotekina 09fbda603c Atomic intrinsics refactoring 2014-10-10 22:19:14 +04:00
Raul Tambre 9bcaa1e498 Disable pausing when a null command occurs 2014-10-10 17:24:28 +03:00
Nekotekina b0da8319b7 SPURS kernel v2 2014-10-10 01:39:03 +04:00
Nekotekina b7d0bfa972 SPU branch D/E flags workaround 2014-10-10 01:38:02 +04:00
Nekotekina 1dac13be16 RSXIO memory mapping with strict ordering (draft) 2014-10-10 01:26:04 +04:00
Nekotekina 266c3d4753 Small fixes 2014-10-08 18:26:08 +04:00
Nekotekina 9a02add930 Bugfix 2014-10-08 16:29:29 +04:00
Arkaran99 d9a95aae09 Avoid giving arguments by value for log. 2014-10-08 01:35:19 +02:00
Nekotekina fd7da9d61a Compilation fix 2014-10-08 01:53:50 +04:00
Nekotekina 94c30924dd Some things for u128 2014-10-08 01:37:04 +04:00
Nekotekina 237ab974dd SPURS kernel v1 2014-10-07 17:35:44 +04:00
raven02 b13a8ab4e3 Small RSX fix 2014-10-06 21:39:25 +08:00
Nekotekina ed0918d097 Notification for encrypted SPU modules 2014-10-06 01:21:00 +04:00
Nekotekina 4273c52efc RSXDebugger fix 2014-10-05 12:25:54 +04:00
Nekotekina 5f46534b72 RSX fix
Forgot to rollback these lines.
2014-10-05 12:03:14 +04:00
Nekotekina 6c8d6aaf71 Damned conflicts fixed 2014-10-04 18:57:53 +04:00
Nekotekina 74007d5e5d Small changes in memory and RSXIOMem
Some bugs fixed, some other changes.
2014-10-04 18:43:46 +04:00
Survanium90 b02225dd80 Added initialization and termination for SceNpTus Module
Also added initialization checks
2014-10-04 11:38:38 +04:00
Survanium90 70e5068e37 Added more initializations in cellCamera 2014-10-04 11:31:27 +04:00
Survanium90 aed76b2a0a Fix 2 for "Added initialization checks in SceNpClans module" 2014-10-04 01:09:40 +04:00
Survanium90 18d40102f7 Fix for "Added initialization checks in SceNpClans module" 2014-10-03 23:07:05 +04:00
Survanium90 5b467ff82a Added initialization checks in SceNpClans module 2014-10-03 17:39:34 +04:00
Alexandro Sánchez Bach e4eecd247c Merge pull request #827 from Bigpet/master
change initial value of sys_lwmutex_t::waiter
2014-10-02 19:19:21 +02:00
Peter Tissen f11c6c3cf4 change initial value of sys_lwmutex_t::waiter 2014-10-02 15:13:44 +02:00
Nekotekina 6b0857dcff Conflicts fixed 2014-10-02 16:19:52 +04:00
Nekotekina 752449bbc0 Small update 2014-10-02 14:29:20 +04:00
DHrpcs3 77076191c7 Fixed fix_import function in Modules.cpp 2014-10-02 08:13:35 +03:00
Hykem faeedf1355 Fixed compilation errors. 2014-10-01 15:15:04 +01:00
Hykem 4978af50e4 Merge pull request #825 from Survanium90/master
Added initialization for SceNpUtilBandwidthTestInitStart
2014-10-01 14:58:10 +01:00
Hykem 6d6c1a9672 Updated the Crypto Engine:
- Fixed several bugs in unedat;
- Improved EDAT/SDAT file decryption.
2014-10-01 14:57:44 +01:00
Nekotekina 4a6779469c Memory fixes 2014-10-01 17:18:38 +04:00
DHrpcs3 eada1fe12c Improved be_t
Fixed NV4097_SET_TWO_SIDE_LIGHT_EN
Added LIS, ORI, NOP & BLR to PPU Jit
2014-10-01 12:45:43 +03:00
Survanium90 1ded37d253 Added initialization for SceNpUtilBandwidthTestInitStart
Also added initialization checks
2014-10-01 13:25:06 +04:00
Nekotekina ce97a7e7a6 Channel<> rewritten 2014-09-30 23:06:04 +04:00
nmzik c0b53d6b48 Adjusted attributes, added better log messages and an initialization check in the sceNP module 2014-09-30 22:42:15 +04:00
Nekotekina 68cdc95da5 Some fixes 2014-09-30 02:28:02 +04:00
Nekotekina 6b53479ac3 _cellSpursWorkloadFlagReceiver, cellSpursReadyCountStore 2014-09-29 19:39:44 +04:00
Nekotekina 7d95311a01 Some %x fixed 2014-09-29 19:38:04 +04:00
Nekotekina c53a822c4e spursAddWorkload 2014-09-28 23:10:13 +04:00
Raul Tambre 2e29348b9c Removed wx implementation and added Windows only implementation 2014-09-28 19:42:37 +03:00
Raul Tambre b9e7e46198 Also remove couple unneeded be_t 2014-09-28 18:24:34 +03:00
Raul Tambre 879e2d920c Add cellAvconfExt and cellVideoOutGetScreenSize
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.
2014-09-28 18:21:45 +03:00
Nekotekina ae17ef4d68 vm::atomic -> atomic_t 2014-09-27 22:49:33 +04:00
Nekotekina e40776ba79 cellSpursWakeUp, CellSpursWorkloadAttribute
+vm_atomic update (8bit type)
2014-09-26 01:41:35 +04:00
Raul Tambre 1f870af5cf Fix sys_get_random_number
Thanks @Nekotekina
2014-09-25 22:27:40 +03:00
Raul Tambre c87c75a45b Fix some things 2014-09-25 21:51:52 +03:00
Raul Tambre d17322948d Implemented sceNpBasicGetEvent, sceNpLookupInit and sceNpLookupTerm
Updated writing to pointers for sys_get_random_number,
sceNpBasicGetFriendListEntryCount and sceNpBasicGetMessageEntryCount.
Fixed some pointers and TODOs in cellNetCtl.
2014-09-25 20:07:06 +03:00
Nekotekina 05a7466a5a m_custom_task thread member 2014-09-24 22:44:26 +04:00
Nekotekina a4a4e572a0 vm::atomic update, small fixes 2014-09-23 18:27:18 +04:00
Nekotekina e5a485e50b More changes 2014-09-23 03:07:40 +04:00
Raul Tambre 790a8bf814 Added sceNpTrophyTerm and proofed some unloadings
Made cellNetCtl, cellGem, cellCamera, sceNp, sceNpCommerce2 and
sceNpTrophy properly unload if termination function wasn't called.
2014-09-22 22:00:28 +03:00
Nekotekina 449e7c1049 Small fix 2014-09-21 19:14:13 +04:00
Raul Tambre 4a998e5374 Huge sceNp cleanup, added sceNpCommerce2Init and sceNpCommerce2Term 2014-09-21 17:26:21 +03:00
Nekotekina c9ad88b3ff ...+CellSyncQueue 2014-09-21 17:02:05 +04:00
Nekotekina 3ab08e0d7a vm::atomic update (or, and, xor)
CellSyncMutex, CellSyncBarrier, CellSyncRwm refactoring
2014-09-21 03:29:42 +04:00
Nekotekina 169c8c47c0 vm::atomic update 2014-09-21 01:00:55 +04:00
Raul Tambre 6360ef1790 Added sceNpBasicGetFriendListEntryCount and sceNpBasicGetMessageEntryCount
Fixed (?) sometimes functions being unloaded when they shouldn't.
Also reverted the SPUThread hack.
2014-09-20 19:09:18 +03:00
Nekotekina 89da242cd2 Warning fix 2014-09-20 04:08:12 +04:00
Nekotekina 66000240ac vm::atomic update, be_t update
1) MakeFromLE replaced with make(), MakeFromBE removed. Compiler seems
to be able to optimize it anyway.
2) be_t<> conversion operator temporarily replaced with conversion
through LE because it can't work with all possible numeric conversions
(float<>int for example)
2014-09-20 03:16:11 +04:00
Nekotekina b6f8700b8b vm::atomic initial structure 2014-09-19 23:11:43 +04:00
Nekotekina dbd49a55c6 CellSpurs initialization 2014-09-19 15:27:51 +04:00
Nekotekina 5ad68cfe30 Compilation fix 2014-09-19 04:24:06 +04:00
Nekotekina bb77249ac8 CellSpurs initialization 2014-09-19 04:19:22 +04:00
Raul Tambre fcfdd1551b Added a camera option
Also a couple minor optimizations
2014-09-18 21:19:10 +03:00
Oil 9d1a2dd376 Minor changes 2014-09-17 23:51:02 +04:00
Nekotekina 0044141631 sys_process_is_spu_lock_line_reservation_address
Formatting changed a bit
2014-09-17 17:15:17 +04:00
Nekotekina 626133c0eb declCPU removed, PPUThread& is passed as argument
Added experimental feature: passing PPUThread& to syscall
2014-09-16 21:49:50 +04:00
Raul Tambre b7a6c93e96 Fix crash in Arkedo games (that I created) 2014-09-16 19:28:21 +03:00
Nekotekina b600cba180 CB_FUNC / SC_FUNC small update 2014-09-16 17:56:27 +04:00
Nekotekina 3730c53c9e cellSpursAttributeEnableSystemWorkload 2014-09-16 17:29:58 +04:00
DHrpcs3 b0569639a9 Improved to_be_t
Fixed cellCameraGetType
Removed be_array_t
Improved cb_caller
2014-09-16 14:23:58 +03:00
Nekotekina 5f1253598c Fix formatting 2014-09-15 23:04:18 +04:00
Nekotekina c9132a4bdb Compilation fix + CellSpursAttribute 2014-09-15 22:17:30 +04:00
Nekotekina 201f0f3a9f Basic stack argument support for callbacks 2014-09-15 19:04:09 +04:00
Nekotekina 4243558319 Compilation fix 3 2014-09-15 02:52:22 +04:00
Nekotekina 38746a5ef9 Compilation fix 2 2014-09-15 02:34:59 +04:00
Nekotekina dfaa668b31 Compilation fix 2014-09-15 02:27:30 +04:00
Nekotekina 597d07bf24 Small refactoring 2014-09-15 02:17:24 +04:00
B1ackDaemon 8f1a8450be Merge pull request #807 from O1L/master
More information in KernelExplorer.
2014-09-14 20:31:14 +03:00
O1L 2b7a00d42d Fixed typo 2014-09-14 00:50:38 +04:00
O1L dc7e143de5 More information in KernelExplorer. 2014-09-14 00:40:12 +04:00
Arkaran99 3caff5a107 Change ModuleManager::init function.
First step to help refactor Module management.
Add every module in the static ModuleInfo list. Module without id are assigned
to 0xffff.
The init function is called after constructor and take a pointer to Module
as an input.
This pointer is used to set the Module's global pointer in its file.
2014-09-13 22:00:17 +02:00
Arkaran99 7dafb164e8 Remove unused include and very small refactoring.
Unused include in unself.h, ELF.h.
New line after an if to enable debugging.
Rewrite strange boolean expression in ELF.cpp.
2014-09-13 20:38:18 +02:00
B1ackDaemon 3775d28d24 Merge pull request #805 from Nekotekina/master
CallbackManager rewritten
2014-09-13 19:45:45 +03:00
Nekotekina 860d7bd3f1 Small fix 2 2014-09-13 18:25:02 +04:00
Nekotekina 0df3e955c8 Small fix 2014-09-13 01:50:50 +04:00
Nekotekina 10e9d383d4 ExecAsCallback() removed 2014-09-13 01:14:48 +04:00
Nekotekina c1da446653 FastCall() removed 2014-09-12 23:27:33 +04:00
Alexandro Sánchez Bach 20186b5049 Merge pull request #802 from tambry/sys_get_random_number
Implemented sys_get_random_number
2014-09-12 17:25:09 +02:00
Raul Tambre 1098edea98 Fixed assigning of the generated number 2014-09-12 18:11:04 +03:00
Raul Tambre c74c592dd3 Added more initializations and terminations 2014-09-12 17:28:02 +03:00
Nekotekina 5a4aa9096b Float/vector arg support for callbacks 2014-09-12 17:08:24 +04:00
Raul Tambre 6d0fae09c5 Implemented sys_get_random_number 2014-09-12 15:18:27 +03:00
Nekotekina 85f2009175 Merge branch 'master' of https://github.com/DHrpcs3/rpcs3 2014-09-12 01:16:57 +04:00
Nekotekina 3e1c04b356 Small fix 2014-09-12 01:10:44 +04:00
Nekotekina 8cde1c18c4 Cb fix 2014-09-12 00:46:11 +04:00
Nekotekina ed55011ede Compilation fix 2 2014-09-11 23:40:50 +04:00
Nekotekina fe53f6f2d7 Compilation fix 2014-09-11 23:33:20 +04:00
Nekotekina cd39256361 CallbackManager rewritten 2014-09-11 23:18:19 +04:00
Raul Tambre 88cc03b9e2 Implemented NV4097_SET_TWO_SIDE_LIGHT_EN 2014-09-11 18:59:42 +03:00
darkf 145e0aa827 implement cellFsStRead (does *not* use ringbuffers) 2014-09-09 21:54:51 -07:00
Alexandro Sánchez Bach b881e095e9 Fixed cellFsStReadInit issue
* Disabled automatic HLEExitOnStop option when the ELF file argument is
provided.
* Reverted some changes of last pull.
2014-09-09 23:18:21 +02:00
Raul Tambre dc51630803 Comment fix 2014-09-09 19:08:13 +03:00
Raul Tambre 089a6ee07d Minor cellSysutil fix 2014-09-09 18:49:12 +03:00
Raul Tambre 6029cc40f2 Added new things, updated others
+ Tab in settings for cellCamera and cellGem related things, currently
includes setting camera type
+ cellCamera and cellGem initilization
+ Added cellCameraGetType
* Updated asmjit and ffmpeg
* Some minor optimizations
2014-09-09 18:44:02 +03:00
Nekotekina 3b71721a33 It was overcomplicated 2014-09-09 16:13:38 +04:00
Alexandro Sánchez Bach a99c8e3c7c Merge pull request #796 from O1L/master
PPU / SPU / RawSPU threads in KernelExplorer.
2014-09-08 23:16:10 +02:00
Nekotekina c79b52b334 bugfix 2014-09-08 21:06:08 +04:00
Nekotekina 5d951451c5 cellPngDec (nothing changed) 2014-09-08 18:56:47 +04:00
Nekotekina 311a3b3e47 Compilation fix 2014-09-08 14:20:25 +04:00
Nekotekina 470afd78d5 WIP (cellPngDec refactoring) 2014-09-08 04:54:17 +04:00
Raul Tambre 16727a9c5e Re-enabled cellCamera and cellOvis, added cellCamera enums and structs
Also some fixes to ordering in emucore.vcxproj.filters
2014-09-07 18:53:13 +03:00
O1L 54106f6f9b Removed unnecessary newlines. 2014-09-07 18:05:29 +04:00
O1L 402199d70f Add PPU / SPU / RawSPU threads in KernelExplorer, and some coding style changes. 2014-09-07 17:47:53 +04:00
Arkaran99 1e60319be2 Fix compile errors in Debug - MemLeak.
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.
2014-09-07 10:43:25 +02:00
Nekotekina 58f436e749 Small fix 2014-09-07 03:35:48 +04:00
Nekotekina 6c01854fec Well, vector argument support in SC_FUNC 2014-09-06 21:30:50 +04:00
Nekotekina 82433d946e u128
Only useful as vector type anyway.
2014-09-06 20:30:13 +04:00
Nekotekina 43a61d0ab9 Memory.Write*/Read* replaced 2014-09-06 17:33:01 +04:00
Nekotekina b5e7724e76 ++ 2014-09-06 14:58:56 +04:00
Nekotekina 95734b8b9a cellSync2 fixes 2014-09-06 14:52:22 +04:00
Nekotekina b0d9fba418 Conflicts fixed 2014-09-06 02:54:42 +04:00
Nekotekina 12becc6120 MemoryBase::operator[] replaced 2014-09-06 02:12:10 +04:00
Nekotekina db9cbe6cdd MemoryBase::operator+ replaced 2014-09-06 00:26:36 +04:00
Nekotekina feec20ac3e Compilation fix, be_t fix
+ CellWebBrowserConfig2 struct
2014-09-05 21:54:06 +04:00
Nekotekina 225dba754d GetMemFromAddr, VirtualToRealAddr replaced
Some arg types changed
2014-09-05 21:23:00 +04:00
Nekotekina f298d0451e Attempt to fix some warnings 2014-09-05 15:24:37 +04:00
Nekotekina 964c1bfd6c WriteString replaced
strcpy_trunc (defined in GNU.h) is better for fixed-length char arrays
2014-09-05 03:23:36 +04:00
Nekotekina 27b24132a0 sys_ppu_thread_create fix 2014-09-04 23:55:06 +04:00
Raul Tambre cef2c59ae2 Fix cellPamfReaderGetPresentationStartTime access violation
Should also fix access violations for other cellPamf functions
2014-09-04 22:39:08 +03:00
Nekotekina 4346514b9d Compilation fix 2014-09-04 21:39:02 +04:00
Nekotekina 9f2afffca1 Some functions removed 2014-09-04 21:32:20 +04:00
Raul Tambre e6ab29346e Added cellSync2 attribute initilization
Also added checks for EstimateBufferSize functions
2014-09-04 18:27:19 +03:00
Nekotekina 05cebd1017 re() removed, added be_t<const T> specialization 2014-09-04 13:21:23 +04:00
Nekotekina 4b49d57f97 Small fix 2014-09-03 21:09:10 +04:00
Nekotekina 1337cf4f04 Some memory functions removed 2014-09-03 20:33:30 +04:00
Peter Tissen 383f6aff2b unix preprocessor define typo fixed 2014-09-03 12:12:50 +02:00
Nekotekina d0e532e7ce DynamicMemoryBlockBase.h removed
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.
2014-09-03 01:48:44 +04:00
Raul Tambre e6595f05bc Removed cellSaveDataListAutoSave and cellSaveDataListAutoLoad until they can be fixed
Also added a lot of TODO printouts for other save data functions.
2014-09-02 19:58:42 +03:00
Nekotekina fa43e80206 Small mistake 2014-09-02 16:50:19 +04:00
Nekotekina 47ee010b64 Another little bug 2014-09-02 16:45:53 +04:00
Nekotekina 5a20d41fb2 Conflicts fixed 2014-09-02 05:25:57 +04:00
Nekotekina 1626df7e46 Compilation fix 2014-09-02 05:14:24 +04:00
Nekotekina b952017a3a mem_ptr_t replaced 2014-09-02 05:05:13 +04:00
Nekotekina bd9775e0eb Callbacks fix + TODO 2014-09-02 02:59:46 +04:00
Nekotekina 6e02477fc6 Some warnings fixed 2014-09-02 02:35:10 +04:00
Nekotekina 9c94a6943d mem_bptr_t replaced 2014-09-02 02:22:13 +04:00
Nekotekina 37da5589e4 Compilation fix 6 2014-09-02 01:46:02 +04:00
Nekotekina 51ea1e3bed Compilation fix 5 2014-09-02 01:41:36 +04:00
Nekotekina 73555c1df1 Compilation fix 4 2014-09-02 01:22:07 +04:00
Nekotekina 4f6a407393 Compilation fix 3 2014-09-01 22:29:51 +04:00
Nekotekina 09022b1000 Compilation fix 2 + callback fix 2014-09-01 21:38:55 +04:00
Raul Tambre 9ef074c7ef Added cellNetCtlNetStartDialogLoadAsync and cellNetCtlNetStartDialogUnloadAsync 2014-09-01 19:52:36 +03:00
Nekotekina 774b5be7d7 Patch from DH applied 2014-09-01 20:16:44 +04:00
Nekotekina f31ed4e9f2 mem_func_ptr_t replaced 2014-09-01 16:47:26 +04:00
Nekotekina 9501869aa1 mem32_t replaced 2014-09-01 04:51:48 +04:00
Nekotekina 0b5ef1d8f9 mem64_t replaced
Added conversion from vm::var to vm::ptr of the same type.
2014-09-01 02:58:08 +04:00
Nekotekina 0d94c78e63 mem16_t replaced
I think it's not bad to use pointer type when possible, because it's
often originally pointer, not reference.
2014-09-01 01:55:38 +04:00
Lioncash 82840282fb Core: Apply const to some functions 2014-08-31 16:12:09 -04:00
Nekotekina 49b295e332 Bugs fixed 2014-08-31 23:38:03 +04:00
Nekotekina 06486b6537 Bug fixed 2014-08-31 21:13:21 +04:00
Nekotekina 96d7034c96 Compilation fix 3 2014-08-31 19:48:45 +04:00
Nekotekina f6f58b7615 Compilation fix 2 2014-08-31 19:39:01 +04:00
Nekotekina 8e5980b307 Compilation fix 2014-08-31 19:31:26 +04:00
Nekotekina a8cfefac07 vm::ptr for u8/char types, mem_list_ptr_t removed 2014-08-31 19:01:48 +04:00
Nekotekina ebc4fa3e81 Compilation fix 2014-08-31 15:18:32 +04:00
Nekotekina 571bd63644 Test 2014-08-31 13:54:12 +04:00
Nekotekina 26e03fa794 Compilation fix 3 2014-08-31 03:38:55 +04:00
Nekotekina 140d40b5bc Compilation fix 2 2014-08-31 03:19:10 +04:00