Nekotekina
22d8b57027
Improve lv2_memory object
2017-09-14 00:23:23 +03:00
kd-11
1da732bbf5
rsx/gl/vk: Invalidate texture regions when memory is unmapped
...
- Free GPU resources immediately if mappings change to avoid leaking VRAM
2017-08-16 23:58:30 +03:00
Nekotekina
af11ad6253
Fix deadlock in vm::unmap
2017-08-13 21:39:08 +03:00
Nekotekina
7b4c044480
Relax allocations in ppu_load_exec
2017-08-04 14:33:53 +03:00
Jake
d9a693019b
rsx/gcm: Implement rsx dma. Refactor gcm/rsx to not be as codependent
2017-08-02 01:33:12 +03:00
Nekotekina
b24eb621ae
Use RTM instructions (skylake+)
2017-07-20 17:22:09 +03:00
Nekotekina
0ee454f44b
vm: decommit by exec_addr
2017-07-12 14:00:38 +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
Inviuz
22e679e23e
cellSave fix plus bugfixes ( #2631 )
...
* cellSave fix plus bugfixes
allows allocation of last byte in memory block
prevents rpcs3 from crashing when closing non existent socket
* Fix overflow
* add more socket options
fix typo
prevent sys_net from operating on nullptr sockets
2017-04-05 16:08:58 +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
1ede0f4706
Minor optimization
2017-03-13 15:02:18 +03:00
Nekotekina
78703cfe47
Use utils::memory_protect
2017-03-13 13:16:22 +03:00
Nekotekina
d09dd29054
utils::memory_protect
2017-03-13 13:16:22 +03:00
Inviuz
b70a1edbc7
Mmapper with Neko's review fixes ( #2503 )
2017-03-12 03:15: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
0f87c4485d
Silly macro removed-2
2016-08-14 18:19:42 +03:00
Nekotekina
fc56e70172
vm::ptr<char> formatting
2016-08-11 16:47:20 +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
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
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
96728a83f6
Partial commit: sys_memory, sys_mmapper
2016-07-16 14:46:01 +03:00
Nekotekina
266db1336d
The rest
2016-05-23 16:22:25 +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
0c7f763889
Partial commit: Memory
2016-04-15 19:22:43 +03:00
Nekotekina
b3e3c68f15
File utility improved
...
+ minor fixes
2016-01-13 14:12:04 +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
a666318b95
Error messages improved
2015-12-20 15:41:09 +03:00
Nekotekina
ca6783ba9a
Threads improved, ID manager improved
2015-12-04 23:37:34 +03: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
817fec9684
SPU Cleanup
...
SPURecompiler improved
Old SPU decoder removed
SPU Interpreters merged
2015-09-02 00:38:44 +03:00
Nekotekina
5e14310071
noexcept usage fixed
...
thread_t renamed to named_thread_t
2015-08-24 21:22:48 +03:00
Nekotekina
d9403c2ed2
thread_t cleanup
2015-08-24 21:22:37 +03:00
Nekotekina
c7ee8cadde
cellFont, cellFs, cellGcmSys funcs added, minor cleanup
2015-08-24 21:22:14 +03:00
Nekotekina
16b7d204d2
decode_x64_reg_op: MOVUPS support
2015-08-01 14:38:59 +03:00
Nekotekina
71a378a3fb
vm::wait_op improved
...
Now it accepts thread_t and its descendants (but may require adding
friend vm::waiter_lock_t class)
2015-08-01 14:38:55 +03:00
Nekotekina
2f7fe35f5c
Minor style change
2015-07-21 23:14:31 +03:00
Nekotekina
8175630619
sys_cond/sys_mutex improved
2015-07-21 23:14:29 +03:00
Nekotekina
9913c9059c
Very bugfix
...
I reverted cellSaveData changes since they were relying on the
uninitialized local variable `save_entry` and thus were almost
completely wrong.
2015-07-21 23:14:26 +03:00
Nekotekina
5bd83516ba
SPU Interrupt Enable Status implemented
...
SPU Interrupts are still NOT implemented
2015-07-21 23:14:25 +03:00
Nekotekina
1519a2b468
Exceptions passed to wait_op caller
2015-07-21 23:14:23 +03:00
Nekotekina
a7668ff57f
SPU_EVENT_LR improved
2015-07-21 23:14:22 +03:00
Nekotekina
1e021cdbba
waiter_map reintroduced, combined with vm
2015-07-21 23:14:20 +03:00
Nekotekina
a8fcf71f9c
Minor bugfix, cleanup
2015-07-21 23:14:04 +03:00
Nekotekina
b8a27d8a4c
Silly bugs fixed
2015-07-18 03:12:08 +03:00
Nekotekina
48c75105e2
"Memory" eliminated
2015-07-18 03:12:06 +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