Henrik Rydgård
d586ec0d5e
Don't create Host objects except in headless/unittest
2023-03-25 10:47:01 +01:00
Henrik Rydgård
aa80659530
Memory exception: Add facility to track size
...
Might theoretically help in tracking some things down.
Not fully utilized yet, the fault handler needs to extract the
information from the faulting instruction. But we can use it for
GetPointerRange etc.
2023-01-01 20:30:29 +01:00
Henrik Rydgård
a4d3e0ead8
Add range checks in replaced memcpy/memset functions. ( #16693 )
...
* Add range checks in replaced memcpy/memset functions.
Keep seeing especially Replace_memcpy as a semi-rare crash in the
reports. Hopefully this will take care of it, though if games hit this,
they're probably on their way to failing somehow anyway.
* Alternate approach, correctly causing memory exceptions if not ignoring
2023-01-01 18:25:40 +00:00
Unknown W. Brackets
49f6c461ad
Reporting: Fix some header includes.
...
Particularly in Common, avoid including Core/Reporting.h.
2022-12-27 14:58:20 -08:00
Henrik Rydgård
861d66a4d4
Separate logging for GetPointer/GetPointerWrite
2022-07-24 13:39:37 +02:00
Henrik Rydgård
e6403d7157
Split GetPointer into two versions, to help with const correctness
2022-07-24 13:26:19 +02:00
Unknown W. Brackets
2479d52202
Global: Reduce includes of common headers.
...
In many places, string, map, or Common.h were included but not needed.
2022-01-30 16:35:33 -08:00
Unknown W. Brackets
744d17e13c
Core: Correct ValidSize outside scratchpad.
...
And simplify all the scratchpad valid checks.
2021-04-21 19:32:22 -07:00
Henrik Rydgård
a22181df1c
Partially fix Katamari (flicker due to choice of the wrong depth buffer still happening).
2020-09-01 22:54:36 +02:00
Henrik Rydgård
7208cf6900
Some code reformatting/renaming
2020-07-12 15:25:21 +02:00
Henrik Rydgård
8461ea19b1
Centralize handling of memory exceptions a bit
2020-07-12 15:25:20 +02:00
Henrik Rydgård
a9befb5496
Remove our custom atomics code entirely.
2020-05-17 13:11:36 +02:00
Unknown W. Brackets
b4496f1975
Core: Move config enums to separate file.
...
These are a bit strewn about and there are constants that aren't
consistently used, which just adds confusion.
2018-06-23 10:59:18 -07:00
Henrik Rydgard
b9b3a022fb
Switch another enum to enum class
2017-03-02 12:36:54 +01:00
Henrik Rydgard
4e52f613f1
Additional fixes and buildfixes
2016-05-08 22:23:51 +02:00
Henrik Rydgard
492ea5fac4
Address a bunch of comments, thanks for the review
2016-05-08 21:38:03 +02:00
Henrik Rydgard
ce8aae5ed1
Make the IRJit core selectable in developer tools
2016-05-08 01:43:27 +02:00
Unknown W. Brackets
0c46d7c081
Correct scratchpad memory range checks.
2015-12-27 14:29:12 -08:00
Unknown W. Brackets
09b9d2ad81
Keep track of ranges that have emuhack ops.
...
So that we can invalidate them smarter.
2014-07-05 16:25:16 -07:00
Unknown W. Brackets
4b9229a5ba
x86jit: Flush the PC before r/w in debug.
...
This way we get better log output.
2014-07-05 12:57:44 -07:00
Unknown W. Brackets
80cc9d8c0e
Mirror memory for VRAM mirrors.
...
For a long time we've done this with GetPointer() only, but it's better if
it's the same for all methods of memory access.
Technically, we should do the swizzling (and also swizzle the depth data in
softgpu), but there's no indication games depend on this, and GetPointer
would need changes anyway.
2014-05-06 00:45:47 -07:00
Henrik Rydgård
ce378b231f
Delete CPU.cpp/h , cleanup
2013-12-30 00:11:29 +01:00
Unknown W. Brackets
5b0ece85da
Use additional memory map mirrors for 32-bit.
...
Well, use them always for simplicity, but this works around 32-bit
limitations on mmap() size for Android and Linux.
2013-12-10 23:40:37 -08:00
Henrik Rydgard
84f20a1cad
Small optimizations
2013-11-12 14:05:50 +01:00
Henrik Rydgard
5bdb9e976b
Track copies of framebuffers in ram created through sceDmacMemcpy, so that we can display them.
...
Fixes MotoGP while also, in effect, committing #3859 .
Removes the horrifying ramDisplayFramebufferPtr hack.
2013-09-21 18:53:55 +02:00