Nekotekina
6229b3ca8d
Fixes for booting PS1 games
2018-06-23 17:30:16 +03:00
Nekotekina
e4da284176
SPU: analyser v4 and fixes
...
Build SPU cache after PPU, fix mixing progress
SPU ASMJIT: add support for Giga mode
SPU ASMJIT: use the same spu.log location as SPU LLVM
SPU: improve spu.log disasm
SPU: improve trampolines, unify with SPU ASMJIT
SPU: decode interrupt handler address from BR/BRA at 0x0
SPU LLVM: support Mega/Giga modes
SPU LLVM: implement function chunks
SPU LLVM: use PHI nodes, value visibility across basic blocks
SPU LLVM: implement function chunk table
New simple memory manager for LLVM (bugfix)
2018-06-21 22:29:34 +03:00
Nekotekina
b0ee369135
Rewrite LLVM compilation progress dialog
...
Use a single dialog
2018-05-30 20:35:35 +03:00
Nekotekina
72574b11ff
SPU: use reservation spinlocks on writes (non-TSX)
...
This should decrease contention by avoiding global lock
2018-05-21 21:56:14 +03:00
Nekotekina
6fd402bcf8
Transactions: drop RDTSC usage
...
Use simple increment (minor optimization)
2018-05-21 00:18:37 +03:00
Nekotekina
33a1c743a4
Transactions: move loops inside
...
Rewrite loops in assembler (minor optimization)
2018-05-21 00:18:37 +03:00
Nekotekina
67391322f4
Transactions: touch memory only after a failure
...
Minor optimization
2018-05-17 22:19:26 +03:00
Nekotekina
367f039523
Build transactions at runtime
...
Drop _xbegin family intrinsics due to bad codegen
Implemented `notifier` class, replacing vm::notify
Minor optimization: detach transactions from global mutex on TSX path
Minor optimization: don't acquire vm::passive_lock on PPU on TSX path
2018-05-16 17:31:58 +03:00
Nekotekina
4c7afb6952
Opt-in set DAZ and FTZ
2018-05-13 00:03:08 +03:00
Nekotekina
737db90058
Set DAZ and FTZ
2018-05-09 23:38:26 +03:00
Nekotekina
5d15d64ec8
Memory mirror support
...
Implemented utils::memory_release (not used)
Implemented utils::shm class (handler for shared memory)
Improved sys_mmapper syscalls
Rewritten ppu_patch function
Implemented vm::get_super_ptr (ignores memory protection)
Minimal allocation alignment increased to 0x10000
2018-05-09 23:35:34 +03:00
Nekotekina
fe4c3c4d84
Implement SPU recompiler cache
...
Shared between ASMJIT/LLVM recompilers, compiled at startup
2018-05-09 23:35:18 +03:00
Nekotekina
f4af3f2987
PPU: improve LWARX/LDARX consistency
2018-05-08 13:05:29 +03:00
Robbie
477522210e
Refactor debugger_frame into subclasses. Mostly trying to simplify
...
breakpoints.
2018-04-21 22:21:51 +04:00
Nekotekina
0797164fac
SPU: fix possible livelock
...
The bug affects TSX path
2018-04-07 20:51:21 +03:00
Nekotekina
2b5cf2455f
SPU: improve TSX usage
...
Reduce transaction failure amount
Remove vm::try_to_lock
2018-04-06 21:47:54 +03:00
Nekotekina
d392379c7a
Use vm::passive_lock for SPU threads
2018-04-06 15:47:00 +03:00
Nekotekina
402ca480cd
Fix vm::check_addr usage
2018-04-01 22:39:48 +03:00
Nekotekina
a3db2774f1
[LLVM] Fix thread limiter
...
Allow to apply max llvm threads setting as usual
2018-03-31 20:35:30 +03:00
Nekotekina
19944eeed0
Implement SPRX precompilation
...
Automatically precompile firmware modules
Add "Create LLVM Cache" menu (for games)
Reimplement jit_compiler::cpu as static method
2018-03-22 23:24:58 +03:00
Jake
7bbadfd08b
ppu/sys_interrupt: add stack_reset command to fix sys_interrupt stack overflowing
2018-03-09 20:30:59 +04:00
Andrey
e0f53ace19
Improve GDB debug server ( #4027 )
...
* Made GDB debugger working with IDA
* Added async interrupts support
* Report proper thread after pausing
* Support attaching debugger before running app
2018-02-28 19:31:39 +04:00
Nekotekina
cce0ad0c35
Clean vm::ps3 namespace use
2018-02-09 17:49:37 +03:00
Megamouse
b9c10a186d
Qt/Core: implement max llvm compile threads
2018-01-26 01:57:05 +04:00
kd-11
cbc8bf01a1
cell/scheduler: Manage thread placement depending on cpu hardware
2018-01-19 12:03:57 +03:00
TGEnigma
d770a42349
Fix debug build
2018-01-06 04:45:55 +04:00
Nekotekina
198e9dce1d
Fix #4005 regression
...
Delay unregister EH frames (Linux)
2018-01-01 10:41:07 +03:00
VelocityRa
383c501a35
[gui] Show total number of llvm compilation dialogs
...
- Doesn't account for dynamic libraries loaded after the fact,
but usually good enough since
1) Those aren't even present in some games
2) They usually only have about 1 or 2 fragments (dialogs) each.
2017-12-31 22:08:17 +03:00
Nekotekina
d40aaf0391
PPU: use shared jit_compiler instance
...
(Linux) Fix deregisterEHFrames error message
2017-12-31 22:08:17 +03:00
Nekotekina
0a89f1db39
Fix primary stack size
2017-12-25 21:08:15 +03:00
Nekotekina
83da7f9b63
PPU: remove SSSE3 dependency
2017-12-20 01:21:15 +03:00
Nekotekina
ac64792d99
Optimize PPU module loading
...
I'm garbage 🤦
2017-10-11 20:06:33 +03:00
Nekotekina
efe140bc0c
Fix instruction editor a bit
2017-10-11 20:06:33 +03:00
Nekotekina
e5f756205c
sys_net full rewrite
...
Implement sys_net syscalls
Clean libnet functions
Use libnet.sprx
Use libhttp.sprx
Use libssl.sprx
Use librudp.sprx
Implement sys_ss_random_number_generator
2017-10-05 19:51:37 +03:00
Nekotekina
b9b71ccbc1
Implemented syscall _sys_process_exit
2017-09-19 15:07:07 +03:00
Robbie
47685bef39
If the loop is never entered, then the jit is null.
2017-09-10 18:51:59 +03:00
Ofek
caab400258
Various fixes (Trophy, Gcm corrections, stack alloc) ( #2894 )
...
* Fixed sys_get_random_number generating less bytes than needed, and ceiling the buffer size in 0x1000 instead of failing
* Corrected alignment check in libgcm
* Now calling callback of sceNpManagerRegisterCallback
* Fixed trophies
2017-09-02 14:43:44 +03:00
Nekotekina
a85caaee1d
Set PPU stack bounds
2017-09-01 21:24:43 +03:00
Nekotekina
2bc57fbee3
LLVM: Add error message
2017-07-23 11:03:38 +03:00
Nekotekina
42b06af577
Force recompiling liblv2.sprx
2017-07-23 11:03:38 +03:00
Nekotekina
b24eb621ae
Use RTM instructions (skylake+)
2017-07-20 17:22:09 +03:00
Nekotekina
2ef2f0f63b
PPU LLVM: simplify module loading
2017-07-17 16:49:46 +03:00
Nekotekina
73a2a937c4
PPU LLVM: reuse loaded executables
2017-07-12 14:00:38 +03:00
Nekotekina
f0d184f38b
PPU LLVM: relocation support
2017-07-04 02:04:22 +03:00
Nekotekina
3c064439b3
PPU LLVM: new mptr/cptr format
2017-06-29 17:48:55 +03:00
Nekotekina
aa34fa8baa
PPU LLVM: some passes disabled
2017-06-29 17:48:55 +03:00
Nekotekina
fc2a45d6d6
Removed unnecessary code
2017-06-29 17:48:55 +03:00
Nekotekina
89f676de75
PPU: preparations (no fixes)
2017-06-26 16:56:13 +03:00
Nekotekina
8034196c25
ppu_syscall_code type added (for fmt)
2017-06-26 16:56:13 +03:00
Nekotekina
f49a30bc1a
PPU LLVM: disable unnecessary passes
2017-06-26 16:56:13 +03:00
Nekotekina
1196e9decc
PPU LLVM: remove unnecessary code
2017-06-26 16:56:13 +03:00
Nekotekina
cd4f290d3d
PPU LLVM: v2, simplification (no allocas)
2017-06-26 16:56:13 +03:00
Nekotekina
9738ce0cf6
LLVM: fix cancellation
2017-06-26 16:56:13 +03:00
Nekotekina
e5ae32e5f3
Fix #ifdef style
2017-06-26 16:56:13 +03:00
Nekotekina
6561ddae41
PPU LLVM: multithread compilation
2017-06-24 19:12:19 +03:00
Nekotekina
aea094730b
PPU LLVM: paradigm shift
...
For now, compile only one block at time
Use tail calls to move between blocks
Fully write PPU context (except CIA)
This fixes many compatibility problems
2017-06-23 20:09:33 +03:00
Nekotekina
f010b5b235
Configuration simplified
2017-05-20 16:01:48 +03:00
Nekotekina
b349100d9d
Stack overflow detection
...
Added a gap between stack allocations
PPU callstack improved
2017-04-30 21:10:27 +03:00
Nekotekina
a626bbf635
PPU Debug fix
2017-04-26 02:27:34 +03:00
Nekotekina
b1f1a5885b
PPU LLVM improved
2017-04-16 17:44:19 +03:00
Nekotekina
7428bb3025
HLE linkage rewritten
2017-04-16 17:44:19 +03:00
Ofek
a5fd7abcf7
Trophy update ( #2655 )
...
* Added checksum check to TROPHY.TRP loader
* Implemented sceNpTrophyGetGameProgress, sceNpTrophyGetGameIcon & sceNpTrophyGetTrophyIcon
* Updates to up to date APIs and tiny changes
* Code style fixes for checksum verifier, and another fix for trophy functions
* Format fix
2017-04-13 20:29:47 +03:00
Nekotekina
dc3d38c255
PPU Analyser: TOC detection
...
Improved TOC detection logic
Added "PPU Debug" option
2017-04-09 00:16:53 +03:00
Nekotekina
ac79654d1b
Warn about libfiber.sprx
...
It's currently incompatible with LLVM
Also fixed breakpoint bug
2017-04-08 00:56:38 +03:00
Nekotekina
ed7883ba07
PPU Analyser fix
2017-04-08 00:56:38 +03:00
Andrey
215a9f9e11
Gdb debug server ( #2542 )
2017-04-02 21:10:06 +03:00
Nekotekina
37a97a71e3
vm::g_exec_addr added
...
s_ppu_compiled renamed
Exception handling enabled
2017-03-27 01:15:41 +03:00
Nekotekina
e12a708036
LLVM: fix for mingw
2017-03-27 01:15:41 +03:00
Nekotekina
3bfe17a14f
PPU: HACK instruction removed
...
Breakpoints fixed
2017-03-22 23:23:47 +03:00
Nekotekina
ddd6ebc58d
LLVM: Bump obj version
2017-03-22 01:33:50 +03:00
Nekotekina
1b5c0c68dd
LLVM: enable New GVN Pass
2017-03-22 01:21:19 +03:00
Nekotekina
3e6f9faf71
Use LLVM 4.0
2017-03-21 23:32:14 +03:00
Nekotekina
07646c2124
LLVM CPU override option
2017-03-14 16:12:03 +03:00
Nekotekina
b45cea1434
Opt-in LLVM logs
2017-03-14 16:12:03 +03:00
Nekotekina
d09dd29054
utils::memory_protect
2017-03-13 13:16:22 +03:00
Nekotekina
4739eb3601
Reservation fix
2017-03-11 15:48:43 +03:00
Nekotekina
5e3bacbd9b
New reservations
...
Memory system cleanup
sys_memory_get_page_attribute
2017-03-10 15:51:40 +03:00
Nekotekina
0eb6bf6a67
LLVM: splitting and caching
2017-02-26 20:14:18 +03:00
Nekotekina
af53ce6f76
Stack overflow constrained
2017-02-25 19:29:31 +03:00
Nekotekina
7c418f7ea5
PPU: block info fix
2017-02-23 00:35:29 +03:00
Nekotekina
9000407a77
cpu_thread::test_state added
...
lv2_obj::sleep adjustment
synchronization fixes
2017-02-22 13:23:21 +03:00
Nekotekina
598c90f376
PPU thread scheduler
2017-02-13 22:26:11 +03:00
Nekotekina
e4962054a4
LLVM: add check state
2017-02-13 20:51:56 +03:00
Nekotekina
3356a76c9b
PPU fix
2017-02-11 17:17:07 +03:00
Nekotekina
e899de88ff
Log empty functions
2017-02-11 02:43:31 +03:00
Nekotekina
bb111d325f
memory fix
2017-02-10 23:27:58 +03:00
Nekotekina
b20d7ff48c
PPU breakpoints resurrected
...
Now with zero overhead
2017-02-10 16:33:22 +03:00
Nekotekina
8262d56574
PPU interpreter improved
2017-02-10 16:33:22 +03:00
Nekotekina
257b9a2015
Debugger fix
...
Crash fixes
GUI fixes
Debug enhancements
2017-02-10 16:33:22 +03:00
Nekotekina
47b4c649f1
PPU fixes
2017-02-07 16:37:30 +03:00
Nekotekina
11b0b6958f
sys_spu diag
2017-02-05 15:48:11 +03:00
Nekotekina
a5a2d43d7c
Thread.cpp refinement
...
Hide thread mutex
Safe notify() method
Other refactoring
2017-01-29 19:52:19 +03:00
Nekotekina
d4c3905355
Debug build fix
2017-01-28 15:32:45 +03:00
Nekotekina
df6607e236
Minor fixes
2017-01-28 03:21:11 +03:00
Nekotekina
591a6c8671
IdManager improved
2017-01-25 23:29:36 +03:00
Nekotekina
78ecb115f3
LLVM: progress dialog
2017-01-22 22:44:26 +03:00
Nekotekina
5e0489dcc0
cpu_init removed
2016-08-14 18:07:34 +03:00
Nekotekina
bdeccd889f
cpu_type removed, system_type added
...
cpu_state -> cpu_flag
vm::stack_allocator template improved
ppu_cmd type changed to enum, cmd64 type added
2016-08-09 17:14:41 +03:00
Nekotekina
a7e808b35b
EXCEPTION macro removed
...
fmt::throw_exception<> implemented
::narrow improved
Minor fixes
2016-08-08 19:19:32 +03:00
Nekotekina
46735d6b3d
New bitsets (experimental)
2016-08-08 16:29:37 +03:00
Nekotekina
c9a789bf76
PPU LLVM fix
2016-08-06 13:39:03 +03:00
Nekotekina
5a36c57c57
Formatting system improved
...
`unveil<>` renamed to `fmt_unveil<>`, now packs args to u64 imitating va_args
`bijective...` removed, `cfg::enum_entry` now uses formatting system
`fmt_class_string<>` added, providing type-specific "%s" handler function
Added `fmt::append`, removed `fmt::narrow` (too obscure)
Utilities/cfmt.h: C-style format template function (WIP)
Minor formatting fixes and cleanup
2016-08-04 21:34:00 +03:00
Nekotekina
e6bd91ada0
id_manager: embedded RTTI
2016-08-01 12:51:47 +03:00
Nekotekina
f8719c1230
PPUThread refactoring
...
`CallbackManager` removed, added _gcm_intr_thread for cellGcmSys
`PPUThread` renamed to `ppu_thread`, inheritance allowed
Added lightweight command queue for `ppu_thread`
Implemented call stack dump for PPU
`get_current_thread_mutex` removed
`thread_ctrl::spawn`: minor initialization fix
`thread_ctrl::wait_for` added
`named_thread`: some methods added
`cpu_thread::run` added
Some bugs fixes, including SPU channels
2016-07-30 16:35:02 +03:00
Nekotekina
44bee7d0ba
LLVM: Use small code model
...
Global variables modified:
__mptr: pointer to memory base addr
__cptr: pointer to function map addr
Use 32 bit pointers in function map
2016-07-25 18:26:02 +03:00
Nekotekina
5c9f83c3a8
PPU LLVM: New "stack" strategy
...
Minor pessimization: all memory accesses are volatile
Special handling of prologues and epilogues
Minor optimizing assumption for SP
2016-07-24 21:47:45 +03:00
Nekotekina
94da0dbd4d
PPU LLVM improvements
...
Removed interpreter dependencies
Reciprocal instructions improved
2016-07-12 17:33:13 +03:00
Nekotekina
06c6c8212d
Minor fixes
...
elf_object
Loader fix
Analyser fix
2016-07-11 16:30:11 +03:00
Ivan
77594dc66c
PPU LLVM: New analyser ( #1858 )
...
Minor fixes
VEX prefix support
2016-07-07 21:42:39 +03:00
Nekotekina
0ea0c21fed
LLVM: Indirect call map
2016-06-27 19:34:14 +03:00
Nekotekina
7a921cbdf9
cpu_thread compressed
2016-06-27 16:43:57 +03:00
Nekotekina
9db7de29fb
Syscall analysis implemented
2016-06-27 16:43:56 +03:00
Nekotekina
a19b721c26
LLVM: Added JIT.cpp
...
Refactoring, used -fno-rtti option
2016-06-27 16:43:53 +03:00
Nekotekina
73ea020525
PPU LLVM: Thread context argument
2016-06-27 16:43:50 +03:00
Nekotekina
251fb86ab0
PPU LLVM: Some instructions simplified
2016-06-21 18:08:21 +03:00
Nekotekina
a8bebcba55
LLVM AOT
2016-06-19 21:29:48 +03:00
Nekotekina
e2d82394f6
Cell
2016-05-23 16:22:23 +03:00
Ivan
aafcf44581
Header optimizations ( #1684 )
...
Shouldn't break anything. I hope.
2016-04-27 01:27:24 +03:00
Ivan
da7472fe81
Optimizations ( #1680 )
...
* Optimizations
1) Some headers simplified for better compilation time
2) Some templates simplified for smaller executable size
3) Eliminate std::future to fix compilation for mingw64
4) PKG installation can be cancelled now
5) cellGame fixes
6) XAudio2 fix for mingw64
7) PPUInterpreter bug fixed (Clang)
* any_pod<> implemented
Aliases: any16, any32, any64
rsx::make_command fixed
2016-04-25 13:49:12 +03:00
Nekotekina
c4e99dbdb2
Partial commit: Cell
2016-04-15 19:22:34 +03:00
Nekotekina
960668ecf1
For #1355
...
offsetof() eliminated
OFFSET_32, SIZE_32, ALIGN_32 used
2016-01-14 19:07:27 +03:00
Nekotekina
3ed603074c
Changes done by [DH] rewritten
...
Added rsx_program_decompiler submodule
Added fs::dir iterator
Added fmt::match
2015-12-22 23:11:20 +03:00
Nekotekina
ca6783ba9a
Threads improved, ID manager improved
2015-12-04 23:37:34 +03:00
O1L
c0255208cc
Old ini-manager only partially used in VFS. Global configuration used as defualt.
2015-10-27 01:09:31 +04:00
O1L
1673ba217c
Do not try to change default config, use state configs.
2015-10-24 22:48:07 +04:00
Nekotekina
a974ee009e
vm::var improved, cleanup
...
Mostly vm::var initialization introduced.
Added vm::make_var function.
2015-10-14 18:17:37 +03:00
Nekotekina
8ae3401ffa
Some things improved
...
shared_mutex_t implemented
GUI Emu Callbacks rewritten
fxm::import, fxm::import_always implemented
cellMsgDialog rewritten
Emu.CallAfter improved (returns std::future)
2015-09-22 16:48:21 +03:00
Nekotekina
59f1077a36
Cleanup, be_t fixed
...
Some functions renamed:
get_ps3_function_name
execute_syscall_by_index
2015-09-22 13:28:34 +03:00
Vincent Lejeune
942f26509b
Memory: Factorize virtual memory reservation/allocation code in function
2015-08-26 21:54:40 +02:00
Nekotekina
e551e2bc5d
Bugfix
2015-08-24 21:22:49 +03:00
Nekotekina
5e14310071
noexcept usage fixed
...
thread_t renamed to named_thread_t
2015-08-24 21:22:48 +03:00
Nekotekina
be9a599beb
PPU Decoder Cache improved
2015-08-24 21:22:35 +03:00
Nekotekina
dd665e7363
ID manager simplified
...
ID manager refactoring, redundant "type" information removed
2015-08-24 21:22:19 +03:00
vlj
abd61538ea
PPU/LLVM: Rename ExecutionEngine to CPUHybridDecoderRecompiler
...
In order to avoid naming conflict with llvm own ExecutionEngine
2015-07-22 02:10:55 +03:00
Nekotekina
2f7fe35f5c
Minor style change
2015-07-21 23:14:31 +03:00
Nekotekina
48c75105e2
"Memory" eliminated
2015-07-18 03:12:06 +03:00
Nekotekina
4bacfcf847
sys_lv2dbg added, bugfix
2015-07-10 04:31:41 +03:00
Nekotekina
82781e620a
Small fixes
2015-07-10 04:31:36 +03:00
Nekotekina
c0f13f7084
sleep_queue_t rewritten, used in sys_cond/sys_mutex
...
Some synchronization fixes
2015-07-10 04:31:34 +03:00
Nekotekina
22e1da5e76
Minor cleanup
2015-07-10 04:31:29 +03:00
Nekotekina
8f9e1100c8
SPU fixes, various fixes
2015-07-10 04:31:25 +03:00
Nekotekina
721ad404d2
VM_CAST macro
2015-07-10 04:31:23 +03:00
Nekotekina
32d3d1fbe5
EXCEPTION() macro usage, sceNpTrophy improved
2015-07-10 04:31:20 +03:00
Nekotekina
6f1e76198a
Some fixes
2015-07-10 04:31:18 +03:00
Nekotekina
3aefa2b4e1
ThreadBase rewritten (wip)
2015-07-10 04:31:16 +03:00
Nekotekina
ef6f9f6ded
be_t constructor implemented, make() eliminated
...
be_t enums are forbidden, le_t improved, some operators cleaned.
2015-07-10 04:31:07 +03:00
Nekotekina
714da1aa7c
vm::var fix, vm::ptr improved
...
GetCurrentPPUThread() removed
2015-07-10 04:31:00 +03:00
Nekotekina
6c4148a949
Bugfix
2015-07-10 04:30:47 +03:00
Nekotekina
edb9595721
Using vm::ps3 namespace moved in proper places
...
Various fixes
2015-07-10 04:30:41 +03:00
Nekotekina
935302b620
Bugfix
2015-04-20 02:49:13 +03:00
Nekotekina
b1f7543436
PPU stack fixed (2)
2015-04-18 04:35:58 +03:00
Nekotekina
b7fd09740b
PPU stack fixed
2015-04-18 03:25:26 +03:00
Nekotekina
ef563f038d
SPU: some instructions updated
2015-03-21 02:36:05 +03:00
Nekotekina
63276a3f84
SPU interpreter (basic concept)
2015-03-20 19:53:54 +03:00
Nekotekina
620e937473
Basic load
2015-03-17 23:03:24 +03:00
Nekotekina
a71cb5f521
Basic concept
2015-03-17 00:38:21 +03:00
Nekotekina
6a0ce1850a
Initial commit
2015-03-16 21:50:59 +03:00
Nekotekina
3e412a2a1f
Syscall names registered
2015-03-15 16:26:01 +03:00
Nekotekina
961fc27215
Minor cleanup
2015-03-07 16:39:07 +03:00
Nekotekina
9e49a33b3c
SPU syscall improvements
2015-03-05 00:51:14 +03:00
Nekotekina
5f8cf18a5a
SPU refactoring
2015-03-03 00:09:20 +03:00
Nekotekina
be4e85f0f2
PPCThread removed (it does nothing anyway)
2015-02-26 03:54:49 +03:00
Nekotekina
9ee9523680
StaticFuncManager removed
2015-02-21 17:07:22 +03:00
Nekotekina
2d1d996c50
Small fix
2015-02-19 14:18:28 +03:00
Nekotekina
1f2eafc4f2
Loader fixed
2015-02-17 18:27:15 +03:00
Nekotekina
267de68441
Memory cleanup, page flags implemented
...
RSXCMDMem, SPRXMem, MmaperMem removed
MainMem range fixed
2015-02-13 17:04:03 +03:00
Nekotekina
e5dd03dbcb
ARMv7: argc, argv setting, LDRSB_IMM, bugfixes
2015-02-01 16:52:34 +03:00
Nekotekina
61a5459ccb
TLS for ARMv7 threads
2015-01-31 19:44:26 +03:00
Nekotekina
4ea1b8cffc
Fixed TLS for PPU threads
2015-01-30 23:01:13 +03:00
Andrew Church
ee508f85b4
Fix handling of VRSAVE, and remove references to nonexistent USPRG registers.
2015-01-18 07:01:52 +09:00
Nekotekina
809ba66290
vm::cast in PPUInterpreter
2015-01-14 19:48:50 +03:00
Nekotekina
056f93f3e4
Linux fixes
2015-01-09 01:17:26 +03:00
Nekotekina
697b699873
Some bugs fixed
...
ARMv7 partially restored
2014-12-01 01:04:47 +03:00
Nekotekina
9fc7197c4f
cellGameContentPermit: extremely DANGEROUS bug fixed
...
And few tiny changes.
2014-11-29 20:41:18 +03:00
DHrpcs3
cdfef3bf9e
Fixed compilation errors
...
Implemented converter_le_be
2014-11-20 21:41:04 +02: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
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
5c468d7591
Disabled call stack tracing when using the PPU LLVM recompiler
2014-11-09 11:50:01 +05:30
Hykem
5a27a84f5a
Merge branch 'master' of https://github.com/gopalsr83/rpcs3 into gopalsr83-master
2014-11-04 16:45:25 +00:00
S Gopal Rajagopal
160b58cf61
Fixed compilation issues
2014-10-25 06:56:57 +05:30
S Gopal Rajagopal
024c15d4d3
Some cleanup
2014-10-20 01:16:35 +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
2bb63ad051
LLVM based PPU Recompiler. Intial commit
2014-10-13 15:18:17 +05:30
Nekotekina
05a7466a5a
m_custom_task thread member
2014-09-24 22:44:26 +04:00
Nekotekina
597d07bf24
Small refactoring
2014-09-15 02:17:24 +04:00
Nekotekina
860d7bd3f1
Small fix 2
2014-09-13 18:25:02 +04:00
Nekotekina
c1da446653
FastCall() removed
2014-09-12 23:27:33 +04:00
Nekotekina
43a61d0ab9
Memory.Write*/Read* replaced
2014-09-06 17:33:01 +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
a8cfefac07
vm::ptr for u8/char types, mem_list_ptr_t removed
2014-08-31 19:01:48 +04:00
Nekotekina
3269c88d02
Some warnings fixed, some code removed
2014-08-30 21:51:00 +04:00
Nekotekina
693e7a38fa
Some std include moved
2014-08-28 20:29:05 +04:00
Nekotekina
78cbb90ef6
Some leaks fixed
2014-08-26 03:55:37 +04:00
Nekotekina
b005ee3cda
Log include fixes
2014-08-23 18:51:51 +04:00
Nekotekina
efa538f9d7
include clearing
2014-08-23 04:16:54 +04:00
Nekotekina
861ce9e733
include clearing
2014-08-23 01:15:02 +04:00
Nekotekina
9eb280c367
SetCurrentNamedThread()
2014-08-20 18:23:48 +04:00
Nekotekina
89b944c397
REG_FUNC macros
...
And some auxiliary changes
2014-08-19 22:17:20 +04:00
Nekotekina
afe984ca29
Small fix
2014-08-19 02:33:21 +04:00
Nekotekina
cb58a773c9
Some hack
2014-08-15 16:50:59 +04:00
boxingcow
a4f73bc705
Fix broken OS X build with isnan and MAP_ANONYMOUS
2014-07-12 22:06:43 +01:00
Sacha
a1158c9515
Remove some indirect headers.
2014-07-12 17:46:14 +10:00
Peter Tissen
95f1a0e645
use only one set of logging macros instead of two and don't use free() as a function name
2014-06-27 15:28:17 +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
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
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
darkf
090f7f8cfb
Add SPU decoder mode selection to GUI/Config
2014-04-23 05:06:19 -07: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
Bigpet
25c3aa8e19
fixes to get llvm to compile (excepti for utils.cpp, that'll get fixed
...
later)
Eradicate the Array almost everywhere, some usages like Stack still
remains
2014-04-12 12:06:52 +02:00
lioncash
d0c9d7c0ae
Use spaces for vertical alignment
2014-04-04 09:25:38 -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
Alexandro Sánchez Bach
2c7269e3de
PSF Loader improved & issue #126 fixed
...
* Improved PSF Loader: Now you can get the value of the PARAM.SFO
entries directly with the GetString(key), GetInteger(key) methods.
GameInfo related lines were removed since they have nothing to do with
PSF files.
* cellGame, cellSysutil, and GameViewer are modified because of the PSF
Loader changes.
* Removed unnecessary null pointer checks:
https://github.com/DHrpcs3/rpcs3/issues/126
2014-03-28 05:20:13 +01:00
Nekotekina
3127543b6e
sys_ppu_thread_join, sys_ppu_thread_exit fixed
...
Some diagnostic messages in mutexes
2014-03-07 16:03:42 +04:00
Nekotekina
384536ba4f
prx_mem memory leak fixed
...
CPUThread::ExecAsCallback (experimental)
2014-03-04 23:18:17 +04:00
Alexandro Sánchez Bach
4d98826259
Directory-related functions implemented
...
* cellFsOpendir, cellFsReaddir, cellFsClosedir functions implemented.
* vfsDirBase: m_entryes, GetEntryes renamed to m_entries, GetEntries
respectively.
* vfsLocalDir: Read() function added to get the entries one by one.
* Moved IsExists() from vfsLocalDir to vfsDirBase to avoid "R6025 pure
virtual function call" error.
* Other minor changes in some functions of sys_fs
2014-02-09 22:53:48 +01:00
Nekotekina
6c606be09f
Reservation implemented
...
Some SPU bugs fixed;
sys_spu_thread_get_exit_status
sys_spu_thread_group_destroy
2014-02-07 02:55:48 +04:00
Nekotekina
a0c8e116df
Merge branch 'master' of https://github.com/DHrpcs3/rpcs3
2014-02-03 01:20:48 +04:00
Nekotekina
7fce5589f8
Memory alignment fix
...
Some mutexes added, _sys_heap_memalign implemented
2014-02-02 23:49:10 +04:00
DH
beb19633e9
Implemented vfsLocalDir & vfsDirBase.
...
Improved ThreadBase.
Minor fixes.
2014-02-02 21:42:32 +02:00
Alexandro Sánchez Bach
382ae8a78f
Improved cellResc module
...
* cellResc module improved
* Many changes in this commit are from [DH]: The implementation of
cellRescSetConvertAndFlip, cellRescSetWaitFlip and cellRescSetSrc as
well as all the other changes that are not in cellResc module.
* Fixed another conflict from O1L/rpcs3 (master): Deleted
"cellPhotoUtility" (which already exists in cellPhotoExport)
Now all the conflicts are solved. :-)
NOTE: We should search for a better name for 's_rescInternalInstance'.
This one is just too long and some lines don't even fit in my screen
because of this.
2013-11-16 01:38:22 +01:00
DH
6b22e7d90a
- Implemented ARM9Interpreter & ARM9DisAsm.
...
- Implemented MemoryBlockLE & DynamicMemoryBlockLE.
- Implemented CPUDecoder.
2013-11-05 20:12:18 +02:00
DH
0b35be32a4
- Implemented ARM9Thread.
...
- Improved OpenGL Renderer.
- Improved RAW SPU mfc.
2013-11-03 21:23:16 +02:00
DH
eebe859f83
Improved mem_t.
...
- Implemented mem_ptr_t.
- Fixed issue 3.
2013-09-25 00:11:29 +03:00
DH
234e174b7d
- Implemented send open system menu cmd.
...
- Added cellSysutil module.
- Improved OpenGL renderer.
- Added cube & hello world homebrews.
- Implemented more GCM syscalls.
2013-08-19 02:06:11 +03:00
DH
2f5fa75bb4
- Fixed sys_ppu_thread_exit.
...
- Disabled some dbg tools.
2013-08-17 19:23:03 +03:00
DH
0aff049960
- Improved Vertex & Fragment Shader Decompilers.
...
- Fixed some FPR instructions.
- Implemented more GCM syscalls.
- Fixed callbacks alert.
2013-08-17 01:22:26 +03:00
DH
559852a8fc
- Implemented RAW SPU.
...
- Implemented memory mapping.
2013-07-12 15:42:17 +03:00
DH
fb57bb9c4e
- Implemented MTCRF instruction.
...
- Implemented sys_spu_thread_set_argument syscall.
- Improved Debugger.
2013-07-08 16:24:46 +03:00
DH
6d7d3acb43
- Fixed loading modules in debug mode.
...
- Improved Lwmutex.
- Implemented events syscalls.
- Fixed SPU local storage.
2013-07-06 02:49:38 +03:00
DH
5753edf6ef
- Improved sc function binder.
...
- Improved GLGSRender.
2013-06-30 11:46:29 +03:00
DH
a90b5cf37a
http://code.google.com/p/rpcs3/source/detail?r=44
2012-11-15 01:39:56 +02:00