Commit graph

5155 commits

Author SHA1 Message Date
scribam
39272eef45 ppu-interpreter: improve vsl/vsr instructions 2018-10-08 00:15:26 +03:00
scribam
cc846eb670 ppu-interpreter: improve fnmadd/fnmadds instructions (#5183)
* ppu-interpreter: improve fnmadd instruction

* ppu-interpreter: improve fnmadds instruction
2018-10-04 00:49:19 +03:00
Megamouse
49e5212a8f RSX/Overlays: Add option for japanese button layout 2018-10-03 23:08:33 +02:00
Megamouse
76da3fa907 RSX/Overlays: don't press buttons on every iteration 2018-10-03 21:37:05 +02:00
Megamouse
9693d1c3a3 RSX/Overlays: formatted comments 2018-10-03 21:37:05 +02:00
eladash
348db050ae rsx: Fix texture height read 2018-10-03 20:57:46 +03:00
eladash
62f97f2e5f rsx: Fix default texture dimensions
haha
2018-10-03 20:57:46 +03:00
eladash
fa723f6dc4 rsx: Fix texture depth read 2018-10-03 20:57:46 +03:00
eladash
4174d7274d sys_rsx: fix log spam 2018-10-03 20:57:46 +03:00
eladash
a92ae827c1 rsx: Remove texture mipmap hack 2018-10-03 20:57:46 +03:00
eladash
6586090307 rsx: Remove texture size hack 2018-10-03 20:57:46 +03:00
eladash
eacd1b8f13 rsx: Remove texture address hack 2018-10-03 20:57:46 +03:00
Nekotekina
1b740995a4 Refactor audio_thread (g_idm) 2018-10-02 23:26:54 +03:00
Nekotekina
1456678316 Refactor audio/camera/mic threads 2018-10-02 02:22:26 +03:00
Nekotekina
19a64e0e94 Add g_typemap and g_idm alias
Future idm/fxm replacement
2018-10-02 02:22:26 +03:00
Nekotekina
da6ce80f4f Make vm::get_super_ptr return contiguous memory
Cleanup RSX code complexity
2018-09-27 23:37:13 +03:00
eladash
72ba062b1a rsx: Fix pfifo ret opcode 2018-09-27 17:47:32 +03:00
eladash
a47ebad24c rsx: Fix pfifo nop cmd 2018-09-27 17:47:32 +03:00
Nekotekina
306f95a9ae New named_thread template (preview)
Old class named_thread renamed to old_thread
It's too hard to move in a single commit
2018-09-27 14:04:16 +03:00
Nekotekina
4ef384a161 Fix cellVdecClose
Thanks Micaelis#6971
2018-09-27 14:04:16 +03:00
Nekotekina
680aaf21f0 Fix consistency in Emu::Stop()
Don't clear force_boot on shortcut Load()
2018-09-27 12:16:43 +03:00
Nekotekina
b2f29cd4d4 LLVM: remove false alarm errors
Writable sections ARE supported
2018-09-27 12:16:43 +03:00
Nekotekina
a605dd0a3f Add missing deleted operators 2018-09-27 12:16:43 +03:00
Nekotekina
a8a8cd88a0 Implement lf_queue<>, lf_value<>
lf_queue<>: unbound FIFO queue with dynamic linked-list
lf_value<>: concurrently-assignable value readable without locking at the cost of memory (using dynamic linked list)

Add atomic_t<>::compare_exchange
2018-09-27 12:16:43 +03:00
kd-11
bdf85ed900 rsx: Fixup for vertex attrib parsing
- POS does not have to be fetched from ATTR[0]
  - Confirmed with UC1 that uses WEIGHT for positions
  - At least one POS stream has to exist to feed the position attribute which cannot repeat for a single triangle
2018-09-26 19:41:50 +03:00
kd-11
6a9f234dc7 rsx: Fixup flip behaviour
- handle_emu_flip is very heavy, only fire
2018-09-26 19:41:50 +03:00
eladash
f056ef7a80 rsx-capture: Save initial method registers state 2018-09-26 17:55:08 +03:00
eladash
5b0ed1e2eb rsx-capture: Map dynamically rsx data injection addresses 2018-09-26 17:55:08 +03:00
eladash
8e268aedc7 rsx-capture: Rewrite FIFO commands allocation 2018-09-26 00:58:24 +03:00
kd-11
f72157bcec rsx: Fix vertex attrib parsing 2018-09-25 22:03:35 +03:00
kd-11
dab30c0051 rsx: Disable predictions if 50% of predictions are wrong
- This happens often in loading screens where the memory usage pattern is often randomized by loading in of assets
2018-09-24 21:19:38 +03:00
kd-11
a3d44b5e1f rsx: Cleanup changes for the flip patch 2018-09-24 16:44:02 +03:00
Jake
699eadc84f rsx: Move render flip from rsx queue command to flip command 2018-09-24 16:44:02 +03:00
Rui Pinheiro
35139ebf5d Texture cache cleanup, refactoring and fixes 2018-09-24 15:26:40 +03:00
Rui Pinheiro
f3029b2b42 Change Cell->RSX map/unmap notifications
This allows for further flexibility on the RSX side, allowing us to fix
some bugs and crashes in later commits.
2018-09-24 15:26:40 +03:00
eladash
06572c6011 rsx: Fix vertex count if all the streams are disabled 2018-09-24 13:25:05 +03:00
eladash
e0a676a3fe rsx: Fix vertex arrays fetch with inlined draws 2018-09-24 13:25:05 +03:00
eladash
e8474145a5 rsx: Remove shader address verification
this came from a misunderstanding of the register's use
2018-09-24 13:25:05 +03:00
Megamouse
b7e010bbd0 Fix Emu.Restart() 2018-09-23 01:49:58 +01:00
kd-11
dafc914bcc rsx: temporary hack
- Removes all use of valid_count as a metric until the new refactor is merged
2018-09-21 16:32:23 +03:00
kd-11
2b6e6a9ae9 gl: Fix problems with framebuffer reuse
- Matching attachments with resource id fails because drivers are reusing
  handles!
- Properly sets up stale fbo ref counting and removal
- Properly sets up resource reference test with subsequent removal to
  avoid using a broken fbo entry
2018-09-21 16:32:23 +03:00
kd-11
fc486a1bac rsx: Preserve memory order when doing flush
- Orders flushing to preserve memory at all cost
- Avoids false positive where flushing overlapping sections can falsely invalidate another with head/tail test
2018-09-21 16:32:23 +03:00
kd-11
23dc9d54e3 rsx: Fix flip source selector 2018-09-21 16:32:23 +03:00
kd-11
a21bdb9f45 rsx; blit engine fixes
- Forcefully downloads and reuploads data from the CPU in case of unexpected overlaps
- Properly detect correct size of newly created blit targets
- Remember to clear any existing views when changing the default component map!
2018-09-21 16:32:23 +03:00
eladash
1a6c819176 cellgcm: Fix SET_REFERENCE initial value 2018-09-20 01:05:40 +03:00
eladash
e6b68b260a rsx: Improve FIFO mem faults handling
increase the delay between faults, reduce log spam by allowing the messages to stack up
2018-09-20 01:05:40 +03:00
eladash
a8ea576b22 rsx/cellgcm: Implemet initialization registers reset 2018-09-20 01:05:40 +03:00
Nekotekina
59090f6d26 VFS: fix /host_root 2018-09-19 14:15:38 +03:00
Nekotekina
dce14a359a Rename lv2_spu_group::num to max_num 2018-09-19 14:15:15 +03:00
Lassi Hämäläinen
566c88802e CMake: LLVM, Pulse, Alsa and libevdev being disabled
- These dependencies have #defines which enable code related to them
  in rpcs3 and rpcs3_ui targets. They are only used in rpcs3_emu but
  HAVE_* defines have to be defined in rpcs3 and rpcs3_ui targets also,
  so they have to have PUBLIC visibility so defines carried over

CMake: Fix Alsa and Pulse audios being disabled

- HAVE_PULSE and HAVE_ALSA were not defined in rpcs3 target

Fixup libevdev
2018-09-19 01:59:27 +03:00