Commit Graph

123 Commits

Author SHA1 Message Date
Unknown W. Brackets
391ca8bed3 Add functions to validate memory ranges. 2015-04-12 22:37:55 -07:00
Unknown W. Brackets
e2ecd1eabd Add memchecks for ReadStruct/WriteStruct. 2015-04-05 18:09:35 -07:00
Unknown W. Brackets
2450724be2 Make Memory::Memcpy() execute memchecks directly.
This makes it easier to handle breakpoints in HLE.
2015-04-05 18:09:20 -07:00
Chin
37f50a3792 Change to pass some arguments by reference 2015-03-01 16:49:00 +01:00
Sacha
1ba9103cef Better support for new archs. 2014-11-11 22:55:49 +10:00
Henrik Rydgard
1d7642fa48 Remove most mentions of the "_XBOX" define 2014-08-24 14:21:35 +02:00
Unknown W. Brackets
b7c96e1942 Allocate executables low, not at a specific addr.
Since usersystemlib takes 0x4000 at the bottom, this will be the same.
The only impact is that kernel modules may also be able to allocate.
2014-08-17 14:26:00 -07:00
Sacha
6ce3765b12 Sailfish: More compatibility with SailFish OS. It also needs stddef where Maemo does.
Set packaging by default for iOS with b.sh.
2014-07-24 23:20:09 +10:00
Unknown W. Brackets
55403e42c2 Introduce a memory shutdown lock.
This allows the debugger to access memory in a safe way that should never
crash.
2014-07-19 23:30:19 -07: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
Sacha
ea17e17ebd Join both Maemo platforms (Maemo5 + Meego Harmattan/Maemo 6) to MAEMO define. Technically they are very similar and anything that wasn't already defined for both probably needed to be. 2014-06-18 03:42:31 +10:00
Sacha
b57c3e0fe5 Qt: Some bug fixes. Get Meego Harmattan compiling with gcc4.8.2 2014-06-06 14:17:47 +10:00
Sacha
9b7ab3816f Clean up MemArena and MemMap. Remove Symbian from MemArena (shouldn't have more ifdefs than code) 2014-05-29 03:30:23 +10:00
Sacha
f94f28fb4a Symbian: Over allocate VRAM (x4) in attempt to solve crash caused by 0.9.8-601. This brings allocation to the same as before the commit. See #6103 2014-05-28 01:52:38 +10: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
Unknown W. Brackets
fb82310c9a Correct scePsmfPlayerCreate() based on tests.
Mostly error codes.  Report duplicates which don't work on the PSP.
2014-04-20 00:25:48 -07:00
Unknown W. Brackets
996fa39684 Reduce some unnecessary includes in Core/. 2014-03-15 10:41:07 -07:00
Henrik Rydgard
c80510fb3b MemMap should not be included in MIPS.h. 2014-03-15 10:45:39 +01:00
lioncash
b9886942a7 Fix some vertical alignments in misc Core source files. 2014-03-03 11:16:53 -05:00
Henrik Rydgård
374e12afc3 Merge pull request #5590 from unknownbrackets/xbox
Merge more parts of #4716
2014-03-03 13:37:21 +07:00
Ced2911
f012e7a879 [core] 360 fixes 2014-03-02 11:24:10 -08:00
Unknown W. Brackets
eca06c60c7 Spend a bit less time in Read_Instruction on load. 2014-03-02 10:20:40 -08:00
Unknown W. Brackets
4a1c9645e8 Get rid of Memory::GetStruct(), use PSPPointer. 2014-02-27 00:28:57 -08:00
Henrik Rydgård
e5e17fbc6e More include cleanup. Hoping for very slightly faster compile times.. 2013-12-30 10:49:05 +01:00
Henrik Rydgard
a53a032120 Prevent hashes from coming out differently after replacement. 2013-12-20 13:53:03 +01:00
Henrik Rydgard
1e300447e1 Fix some replace-related bugs. Add "jal" replace inlining, not activated. 2013-12-18 16:27:23 +01:00
Unknown W. Brackets
183b4cb45c Add a static method for creating PSPPointers.
This is still kinda ugly, but the assignment thing was just too ugly, I
couldn't do it anymore.
2013-12-16 23:50:52 -08: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
The Dax
ba31e18060 Perform savestate actions more intelligently. 2013-11-28 15:34:11 -05:00
The Dax
85e3a2dbfb Make the model option ini-only.
Move PSP_MODEL_FAT and PSP_MODEL_SLIM to Config.h.
Default to a PSP Slim, and enable 64 megs of memory by default.
2013-11-28 14:37:10 -05:00
Henrik Rydgard
54217deb16 Speed up UpdateUniforms a little 2013-11-12 17:06:03 +01:00
Henrik Rydgard
84f20a1cad Small optimizations 2013-11-12 14:05:50 +01:00
Henrik Rydgard
f69632a316 Fix one more PSPPointer function. Fixes #3897 2013-09-23 22:06:50 +02:00
Henrik Rydgard
854da44fba Buildfix 2013-09-23 21:51:34 +02:00
Henrik Rydgard
fa3e63d46b On 32-bit platforms, PSPPointer must mask off the cache bit etc from pointers. 2013-09-23 21:46:45 +02: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
Unknown W. Brackets
d17df4a79a Don't zero initialize opcode.
This slows down JitBlockCache::Init() a lot, which impacts test speed more
than you'd expect.
2013-09-17 23:46:59 -07:00
Unknown W. Brackets
478d007f96 I'm a typo machine. 2013-09-09 00:35:38 -07:00
Unknown W. Brackets
38e30e5a67 Fix bugs when memory size is 0x04C00000/etc.
Was experimenting with trying to match my non-phat's ram size.
2013-09-09 00:25:10 -07:00
Unknown W. Brackets
109ad17ac6 Use a typesafe struct for opcodes.
Also, correctly read delayslots using Read_Instruction on ARM.
2013-08-24 15:36:24 -07:00
Unknown W. Brackets
5787a2b9f7 KISS and Android buildfix. 2013-08-16 23:48:08 -07:00
Ced2911
c332a4af58 Endian and PPC support 2013-08-16 14:34:15 +02:00
Henrik Rydgard
fecd9d5f78 Minor optimization, sketch on an lvl.q jit implementation 2013-08-11 22:12:15 +02:00
Henrik Rydgard
9109882c04 More microoptimization 2013-08-11 22:12:14 +02:00
Unknown W. Brackets
f1c354607e Add special u32_le/etc. types to mark endianness.
Might even want u32_be...
2013-07-25 08:04:34 -07:00
Henrik Rydgard
03c665173f Fix range of newui volume control. Delete some old junk. 2013-07-21 12:12:20 +02:00
The Dax
e4ed0f2d3e Various small code cleanups. 2013-07-17 17:49:57 -04:00
The Dax
da9472c486 Simplify the HDRemaster struct, eliminating the need for the g_MemoryEnd variable. 2013-07-07 03:07:51 -04:00
The Dax
695f7eeec5 Fix more style issues, and abstract most of the init code from MemMap.cpp. 2013-06-26 16:02:52 -04:00
The Dax
8ab734d516 Restructure the hack to be more correct, and add support for double texture coordinates. Fixes #2314.
Also address various coding style issues.
2013-06-26 16:02:52 -04:00
The Dax
96401eae1e Make the hack less intrusive, but there's a chicken and egg problem: Memory::Init is called before LOAD_PSP_ISO, so I'm slightly perplexed on how to proceed at the moment. 2013-06-26 16:02:52 -04:00
The Dax
2da4c01ea9 Fix styling issues. 2013-06-26 16:02:52 -04:00
The Dax
f8d309ec99 Add HD Remaster support. It's a HUGE hack right now, and needs to be properly rewritten so that allocation and stuff work better. This is based off the work of BlackDaemon, and I added in the auto check to switch the code on/off depending on if the game is a remaster or not. It does not affect or break any games that I know of. 2013-06-26 16:02:52 -04:00
Lioncash
b823bb7543 Change PSPPointer function name Valid to IsValid.
Improves readability and shows intent better.
2013-06-25 09:51:39 -04:00
Unknown W. Brackets
bc149a27a1 Make PSPPointer behave more like a pointer. 2013-06-02 14:56:50 -07:00
Unknown W. Brackets
1d2476f28e Add error handling to the FILES savedata mode.
Not actually changed yet.
2013-05-31 01:40:36 -07:00
Unknown W. Brackets
1cfdaa9349 Read structs directly from PSP ram on LE.
On BE, which doesn't even really work atm, this can be an auto class.
2013-03-30 20:12:22 -07:00
Henrik Rydgård
cf2a1dd3d2 Merge pull request #1007 from unknownbrackets/mem-fix
Fix memory valid address checking
2013-03-17 03:15:07 -07:00
Unknown W. Brackets
78d14ecd04 Remove some unused/undefined memmap funcs. 2013-03-16 19:46:24 -07:00
Unknown W. Brackets
de3713fc50 armjit: improve mem speed without fastmem. 2013-03-16 14:37:35 -07:00
Henrik Rydgard
5fb4d5d48a Set default load address to 0x88004000 according to tpunix 2013-03-16 09:15:47 +01:00
Sacha
d99c9fb2ff Fix Symbian JIT + FastMem by using a mapped virtual address RChunk. 2013-02-17 15:23:56 +10:00
Unknown W. Brackets
3e419f513a Refactor jit safe memory reads without dup code.
But, maybe too automagical...
2013-01-26 08:42:34 -08:00
Henrik Rydgard
d8d2246236 Implement sceGeGetMtx and sceGeGetCmd 2013-01-05 19:26:37 +01:00
Xele02
61d116b5f1 Copy right size of save request. 2012-12-24 01:22:28 +01:00
TMaul
0414b072a4 Display OSK message
And some cleanup
2012-12-15 17:13:58 +00:00
TMaul
a2a4248381 Fake some of the on screen keyboard
Now games that use it assume the user has input "000000" which seems to
work for most games. Gets Pixel junk monsters deluxe and Worms battle
island in-game
2012-12-15 16:42:38 +00:00
Sacha
a1781b854a Symbian support for project.
New UNUSABLE_MMAP code path for platforms that cannot use the required flags (Xbox 360, Symbian). Falls back to malloc() instead.
N1 define for compilers (GCCE) that don't like to assume (int)-1 will safely cast to (char)-1.
Miscellaneous space->tab fixes.
2012-12-13 13:15:20 +10:00
Henrik Rydgard
cdc94a6cad Halve the kernel memory so that the "volatile" 4MB fits without overlapping 2012-12-01 10:17:33 +01:00
Henrik Rydgard
a97f66766d Add "slightly faster interpreter", optimizing the most common instrs. Not as helpful as I thought it would be on Android, really need a proper JIT. 2012-11-23 12:42:35 +01:00
Henrik Rydgard
c61d10363a Rewrite callback handling, part 1. All sorts of other fixes too. 2012-11-06 15:46:46 +01:00
Henrik Rydgard
64cc573703 Switch to "GPL 2.0 or later" for various reasons. I wrote most of the code I imported from Dolphin (which is GPL2-but-not-later), so it should be OK. 2012-11-04 23:24:00 +01:00
Henrik Rydgard
4f7ad15758 Add snapshot of the whole source code. 2012-11-01 16:19:01 +01:00