Commit Graph

4450 Commits

Author SHA1 Message Date
Brett Lawson
fad99bf65a Relocate export addresses before storing them. 2016-07-14 03:24:26 -07:00
Brett Lawson
4b3cb32452 FS functions should never return from FatalError's. 2016-07-14 03:24:26 -07:00
James Benton
0dda4b8a54 coreinit: Adjust some formatting. 2016-07-14 11:04:42 +01:00
Andrew Church
8bb829402c debugger: Display non-blank filler names for anonymous threads.
This works around an apparent bug in imgui which prevents selecting the
second and later of selectable items with identical names.
2016-07-14 01:51:13 -07:00
Brett Lawson
911d8a56ba Fix bug causing debugger to display wrong address on break.
This bug only occurred when the debugger was being activated
automatically due to a breakpoint or a access violation and
had never been visible before.
2016-07-14 01:51:13 -07:00
Brett Lawson
21f1c4a91e Reorganize debugger ui into many files. 2016-07-14 01:51:12 -07:00
Brett Lawson
c6c3da2ac7 Added some new symbol lookup functions for debugger. 2016-07-14 01:51:12 -07:00
Brett Lawson
394b1f7e82 Added section type information to LoadedSection. 2016-07-14 01:51:11 -07:00
Brett Lawson
7ebe9132c5 Set library name early in loader for global symbols table. 2016-07-14 01:51:11 -07:00
Brett Lawson
7f9f4c4e3f Improve debugger_analysis by using a custom sort order. 2016-07-14 01:51:10 -07:00
Brett Lawson
ebd195a8db Add missing implementation of __ghs_ftrylock_file. 2016-07-14 01:51:10 -07:00
Brett Lawson
078cb49a7b Implement coreinit::environ (Unity games try to use this). 2016-07-14 01:51:09 -07:00
Brett Lawson
e11e00e620 Improve data import handling and loader assertions. 2016-07-14 01:51:09 -07:00
Brett Lawson
e60c40022d Relocation addends should be added AFTER import resolution. 2016-07-14 01:51:09 -07:00
Brett Lawson
35eafc9c84 Do not crash when trying to follow on invalid memory. 2016-07-14 00:02:14 -07:00
Brett Lawson
98d34d205a Improve implementation of GHS stdlib iob and flock. 2016-07-14 00:00:25 -07:00
Brett Lawson
02e5bed51f Buffer OSConsoleWrite based on end-of-line for easier reading. 2016-07-14 00:00:18 -07:00
Brett Lawson
8b15509de6 Added support for HLE exporting array data. 2016-07-14 00:00:10 -07:00
Brett Lawson
090694090c Fix dirty HleData implementation for arrays.
Note that this also now fixes it being possible for
multiple items of an array to not be contiguous.
2016-07-14 00:00:02 -07:00
Brett Lawson
fc11e15e94 Properly handle Directory flag inside FSGetStat. 2016-07-13 23:59:54 -07:00
Brett Lawson
fb3da3836d Implement GPU ALU OP2 MULLO_INT. 2016-07-13 23:59:37 -07:00
Brett Lawson
46e2fe1d6a Fix casting warnings from recent coreinit_debug change. 2016-07-12 17:02:16 -07:00
Brett Lawson
2926d10bb6 Move the loader back into kernel-space.
This also cleans up some of our memory heap management,
as well as the behaviour of app startup.
2016-07-12 17:02:15 -07:00
Brett Lawson
5579cc77af Properly apply the OSThread Tag to OSThread instances. 2016-07-12 17:02:15 -07:00
Brett Lawson
d468078b83 Only track sections which are actually kept in memory.
There are a number of sections which are loaded into the loaders
memory area, but are not kept there once the loader has finished.
We should not mark these as being part of the modules sections.
2016-07-11 21:38:29 -07:00
Brett Lawson
15df8d5eb1 Call RPL entrypoints when they are loaded. 2016-07-11 21:38:25 -07:00
Brett Lawson
90dc8e1648 Properly implement CPU time base registers. 2016-07-12 12:17:32 -07:00
Brett Lawson
d4589dc4df Added missing JIT fallback for mcrfs. 2016-07-12 12:17:32 -07:00
Brett Lawson
ac288ef4dd Fix bad JIT implementation of mcrf. 2016-07-12 12:17:32 -07:00
James
7b3c13c7f0 Merge pull request #172 from achurch/coreinit-format
coreinit: Fix handling of non-integer string format arguments.
2016-07-12 00:43:55 +01:00
James
bca46b543f Merge pull request #173 from achurch/valgrind
Inform Valgrind about fiber stacks on POSIX platforms.
2016-07-11 22:00:50 +01:00
Andrew Church
c7b9fec16a Inform Valgrind about fiber stacks on POSIX platforms.
Without this, Valgrind spews errors on accesses to the Fiber structure.
Also add a CMake configuration variable (DECAF_VALGRIND, default off)
so the code can still be built without Valgrind installed.
2016-07-12 03:37:26 +09:00
Andrew Church
7e902cafdc coreinit: Fix handling of non-integer string format arguments. 2016-07-12 01:46:56 +09:00
Andrew Church
254e97ced7 opengl: Translate the CUBE instruction.
This is untested, but the coordinate conversion algorithm is based on
the logic used by the Mesa software renderer (convert_cube() in
src/gallium/drivers/softpipe/sp_tex_sample.c).

Also a couple of random comment fixes.
2016-07-11 09:55:09 +09:00
Brett Lawson
35916cf187 Fallback rather than fail for JIT of ps_mergeXY with RC bit. 2016-07-10 13:50:29 -07:00
Brett Lawson
0f080cd8e2 Fixed typo in overflow handling for JIT NEG instruction. 2016-07-10 13:50:10 -07:00
Brett Lawson
14450411d8 Added missing StickyOverflow handling for mulGeneric and optimized. 2016-07-10 13:50:03 -07:00
Brett Lawson
adda35eb8a Update JIT addGeneric to properly handle sticky overflow. 2016-07-10 13:49:56 -07:00
Brett Lawson
154ee5b990 Added missing mfspr/mtspr instruction encodings to JIT. 2016-07-10 13:49:35 -07:00
James Benton
664ef25cb6 opengl: Abort on getTextureFormat and getTextureDataType failure. 2016-07-10 15:25:41 +01:00
James Benton
97bc60f87e opengl: Add R11 G11 B10 small float format. 2016-07-10 15:20:31 +01:00
James Benton
0287367fe3 opengl: Fix SRGB for FMT_8_8_8_8 and FMT_8_8_8. 2016-07-10 15:06:02 +01:00
James Benton
4599d8f19a gx2: Implement GX2RDrawIndexed 2016-07-10 14:34:28 +01:00
James Benton
7b3eabd6d3 gx2: Add GX2R Invalidate functions. 2016-07-10 14:34:15 +01:00
James Benton
c109f788db opengl: Add initial shadow sampler support and SAMPLE_C instruction. 2016-07-10 14:00:34 +01:00
James Benton
74ec44309f cpu: Fix trace. 2016-07-10 13:24:52 +01:00
James Benton
9a8453acc8 gx2: Remove left over #pragma optimize. 2016-07-10 13:05:07 +01:00
James Benton
59e20e5408 coreinit: Fix OSWaitRendezvousWithTimeout.
I feel like this is something a compiler should catch. microsoft plz \o/
2016-07-10 13:01:22 +01:00
James Benton
9cb621067b gx2: Use getSurfaceInfo in GX2Init{Color,Depth}BufferRegs. 2016-07-10 12:57:06 +01:00
Brett Lawson
e8b5eb0663 Check surface pitch/height before updating the register. 2016-07-10 03:03:47 -07:00