Commit Graph

6969 Commits

Author SHA1 Message Date
nitsuja cfad00d6e0 added missing ExpansionInterface data to savestates, and related fixes (for savestate robustness) 2011-12-18 00:23:12 -08:00
nitsuja e5286e0406 improve the movie savestate load verification a bit more 2011-12-18 00:22:57 -08:00
nitsuja c6ea5f31f5 remove some suspect code in PowerPC::DoState which I think has already been supplanted by more correct code in CoreTiming::DoState 2011-12-18 00:22:31 -08:00
nitsuja 1e4e05fdc3 made ucode saving more reliable (especially for the case of loading across boundaries where the ucode changes). I think this is related to the occasional memory corruption I was seeing upon loading a savestate. 2011-12-18 00:22:21 -08:00
nitsuja c68c8c388c made savestate loads less fragile by adding some markers and rolling back on a mismatch.
This should make it so if you try to load an incompatible save, it simply doesn't load, instead of crashing dolphin. (I can't guarantee no crash but it's much less likely now)
2011-12-18 00:22:06 -08:00
Jordan Woyak 98d22d0e03 Revert the latest GUI change (Emulation Notes column). We don't care for it. 2011-12-17 23:44:09 -06:00
Maarten ter Huurne ed1bfdf293 Merge branch 'cmake-osx2' 2011-12-17 16:30:02 +01:00
Maarten ter Huurne 83bf5790a6 Copy translation files into OS X bundle. 2011-12-17 16:26:52 +01:00
kostamarino@hotmail.com a58c46be81 Gui change and an update to the gameini database.
The "Notes" column is gone and in it's place an "Emulation Notes" column is placed (it contains the emulationissues lines from the game inis). Notes that contain useful info about the game can be seen with just a glance this way.

Fixes issue 5043.
2011-12-16 21:01:10 +02:00
nitsuja d2f61fa155 some movie playback fixes 2011-12-15 09:22:16 -08:00
nitsuja 1ad05f7440 Merge branch 'master' of https://code.google.com/p/dolphin-emu 2011-12-14 21:34:55 -08:00
nitsuja 9470f9545f many movie fixes (mainly for readonly mode), and some wii input display support 2011-12-14 21:26:42 -08:00
Maarten ter Huurne 4c7c29b8b6 Let "make install" on OS X copy the bundle to /Applications.
The "dsptool" executable is not included in the bundle.
The "tester" executable is not included in the bundle and it no longer
installed on other platforms, since it is neither expected nor useful
to install unit tests.
2011-12-14 02:50:36 +01:00
Jordan Woyak b44918d1ed Merge branch 'fix-real-gcpad-sticks' 2011-12-12 23:25:32 -06:00
Jordan Woyak 09d2301fed detect input at 55% to catch silly c-stick range 2011-12-12 23:24:10 -06:00
Maarten ter Huurne 27bda2c054 Fixed range check on TryParse() for u32, again.
The code from 748be364e5 incorrectly accepted -0x100000000 on x86_64.

Also if ERANGE is returned by strtoul(), reject the parsed value regardless
of what that value is. This fixes invalid values being returned when compiling
with Visual C++. Thanks to "cotton" for testing this.
2011-12-13 02:08:34 +01:00
nitsuja f3325036be fixed hotkeys getting ignored after tab is pressed 2011-12-11 21:54:50 -08:00
nitsuja 2c2ef9a961 made frame advance act normal (so it advances 1 frame each time instead of waiting for further unpause commands), and did some minor improvements to the read-only command (making the UI behavior a little nicer, no actual changes to what read-only does at this point) 2011-12-11 21:08:26 -08:00
Maarten ter Huurne ee5a29e6f2 For CPUID, save EBX on the stack instead of in a register.
This fixes GCC running out of registers when compiling for x86
in release mode.

Thanks to kiesel.
2011-12-12 02:14:56 +01:00
Maarten ter Huurne d75f45979b Copy data files into OS X application bundle. 2011-12-12 01:30:42 +01:00
Maarten ter Huurne 7423c74deb Force the "ebx" argument to be mapped to a register (not necessarily EBX).
Fixes crash on x86 under OS X.
Thanks to kiesel for the fix and to shuffle2 for remembering the problem.
2011-12-12 00:43:23 +01:00
Maarten ter Huurne 344ca5d360 Applied compile and link flags from SCons build for OS X to CMake build.
The following changes were made:
Restricted the "-march=core2" option to i386 because the first Intel Macs
had Intel Core CPUs, not Core2.
Removed the "-mdynamic-no-pic" flag as GCC lists it as a PPC specific flag.
Removed "-Wl,-read_only_relocs,suppress" because it seems to be related
to "-mdynamic-no-pic" and I see no need for it.
Removed "-Wextra-tokens -Wnewline-eof" because they are GCC specific and
not OS X specific.
2011-12-11 21:27:06 +01:00
Maarten ter Huurne 780e5e7244 Use a custom template to generate the Info.plist for the OS X bundle.
This allows us to add keys that don't exist in the CMake template.
I added the keys from the Info.plist that was generated by our SCons build
to the new template.
2011-12-11 16:54:37 +01:00
Maarten ter Huurne c1cf4f80cf Added bundle version and copyright string to OS X bundle info. 2011-12-11 16:21:17 +01:00
Maarten ter Huurne 9d2f589f01 Create application bundle on OS X. 2011-12-11 16:07:59 +01:00
Shawn Hoffman b0ffa72e37 Merge branch 'large-mram' 2011-12-10 18:48:35 -08:00
Shawn Hoffman 62858c8c14 Small logging changes. Pause core if Jit64 tries to compile at 0. 2011-12-10 18:42:49 -08:00
NeoBrainX 3d9c35f58e VideoCommon: Fix upper and lower depth bytes being switched when performing Z16L EFB copies (EFB to texture only).
Fixes issue 4989.
Fixes issue 5056.
2011-12-10 16:08:26 +01:00
Maarten ter Huurne f9133a7376 Link to the required OS X frameworks.
Previously, there was just one list of frameworks regardless of which part
of the code depended on which frameworks. Now we keep separate lists for
the Dolphin core, the Dolphin GUI and internal use by wxWidgets.
2011-12-07 08:26:44 +01:00
Maarten ter Huurne c04c3bd9d3 Use "unsigned int" instead of "unsigned".
By request of hrydgard.
See commit 045eb924d9.
2011-12-07 07:10:31 +01:00
Maarten ter Huurne 8a75351674 Link against OpenGL using the info gathered by the FindOpenGL module. 2011-12-05 06:18:04 +01:00
Maarten ter Huurne 958891b4eb Compile with OpenAL support on OS X. 2011-12-05 05:49:08 +01:00
Maarten ter Huurne d440dfe9b2 Link against systemwide LZO using the info gathered by check_lib(). 2011-12-05 05:33:35 +01:00
Maarten ter Huurne bb182d88b7 Link against systemwide OpenCL on OS X. 2011-12-05 05:26:28 +01:00
Maarten ter Huurne 8c3775ee6f Under OS X, link GL plugin against Cg framework instead of Cg library. 2011-12-05 01:12:09 +01:00
Pierre Bourdon 252093295b Do not fail with strict drivers when compiling a not SM2.0 shader
To enforce SM2.0 compatibility, the OpenGL plugin was made to crash when
compiling a shader which does not fit in the SM2.0a limits. However, on some
combinations of OS/drivers/GPU, our shaders already do not fit in these limits,
causing artificial failures only to try to keep a non existant SM2.0a compat.
Basically, this sucks.

This commit increases the artificial limit to SM3.0. If you're using a GPU
which does not support SM3.0 and Dolphin works properly, this should not cause
any problem at all.
2011-12-03 23:24:10 +01:00
Jordan Woyak 575814895c Merge branch 'clearscreen-kill-immediate-mode' 2011-12-01 20:16:23 -06:00
Maarten ter Huurne 748be364e5 Fixed range check on TryParse() for u32.
On x86-64, "unsigned long" is 64 bits wide, so it is possible for a number
to not trigger a range error on strtoul() but still not fit inside an u32.
An extra check is added to ensure that 32-bit and 64-bit builds will accept
the same numbers.
2011-12-02 02:24:43 +01:00
Maarten ter Huurne 045eb924d9 Changed type of GetTicksPer(Line|Frame) to unsigned.
Avoids a GCC warning about comparing signed and unsigned values
in Source/Core/Core/Src/State.cpp.
2011-12-02 00:33:45 +01:00
Maarten ter Huurne f50ea590ce Don't use the same name for two different local variables.
This avoids a warning when compiling with GCC.
2011-12-02 00:06:49 +01:00
Maarten ter Huurne 51127c1243 Added newlines at end of file.
This avoids warnings when compiling with GCC.
2011-12-01 23:30:28 +01:00
Maarten ter Huurne 98981cc724 Fixed EFB cache index computations in OpenGL renderer.
The previous computation was very likely to go out of array bounds,
which could result in crashes on EFB access.

Also, the cache size was rounded down instead of up. This is a problem
since EFB_HEIGHT (528) is not a multiple of EFB_CACHE_RECT_SIZE (64).
2011-12-01 02:46:59 +01:00
Jordan Woyak 4fcd6994c6 fix wireframe setting toggling 2011-11-29 22:21:43 -06:00
Jordan Woyak 0dfca1cf2b remove now unnecessary glPolygonMode from ResetAPIState 2011-11-29 22:02:18 -06:00
Jordan Woyak 88700e817a make OpenGL ClearScreen use glClear 2011-11-29 21:50:31 -06:00
Maarten ter Huurne 29865e6366 Avoid virtual memory range collision between JIT and emulated RAM.
Passing MAP_FIXED to mmap causes already mapped pages in the requested
region to be replaced. On Mac OS X this caused pages for JIT-generatd
code to appear in the memory range previously auto-allocated for the RAM
of the emulated machine. This led to a hang at boot time. The same problem
can probably occur on FreeBSD, but not on Linux since MAP_32BIT is used
there instead of MAP_FIXED.

The solution is to not use MAP_FIXED, but instead rely on the OS honoring
the hinted address which is below 4 GB: we don't need an exact match,
just a low address.
2011-11-30 00:37:57 +01:00
Shawn Hoffman b62cac2ca9 Allow modifying main ram size at compile time by changing Memory::REALRAM_SIZE. 2011-11-27 19:52:05 -08:00
Glenn Rice e5d051a4e9 Update linux libav frame dump code for recent api changes. 2011-11-22 19:24:05 -06:00
skidau cc6f90c7d5 Enabled memory breakpoints under JIT in the debugger. 2011-11-05 19:42:06 +11:00
skidau 9eaf20cc44 Fixed the slowdown that occurred under JIT32. Fixes issue 4969. 2011-11-05 13:04:46 +11:00
skidau 2ee79e7057 Added the missing "table31" instructions into the JITIL tables. 2011-11-04 23:11:43 +11:00
skidau 38a97fb9d7 Added some missing "table31" instructions to the table. The instructions themselves are not properly implemented as they do not handle the OE case.
Allows ANIMA Ark of Sinners to go in-game.
2011-11-04 21:26:56 +11:00
skidau 4c3a799f08 Added a check for HID0.DCFA before proceeding to dcbz. Allows Rubik's Puzzle Galaxy: RUSH to go in-game. 2011-11-04 19:07:09 +11:00
skidau 3d2a2abb49 Made the JIT bypass the icache when it is executing the external interrupt
exception handler.

Fixed by comwiz.k
2011-11-03 20:55:47 +11:00
Pierre Bourdon 7f055d6b56 UI: refactor the game list sorting code 2011-11-02 02:45:51 +01:00
skidau 1387da7900 Merge branch 'JitCache' of https://skidau@code.google.com/p/dolphin-emu/ 2011-11-01 20:45:50 +11:00
Pierre Bourdon 8f31968466 Revert "Merge branch 'zcomploc-support'"
This reverts commit 9dad9ebe89, reversing
changes made to e76bc71efe.
2011-11-01 01:37:54 +01:00
skidau 78b74101b0 Added code to invalidate the JIT cache on dcbf. This fixes Monster House and Scooby Doo: Mystery Mayhem. 2011-10-29 17:21:20 +11:00
crudelios dd551814c9 Bounding Box bugfixes.
- Fixes all (I hope) BBox-related unknown pointer crashes.
- Fixes wrong BBox values with Frame Skip on (and the resulting unknown pointer crashes).
- Fixes a small oversight on the change I made to the ISO Properties dialog.

This should also be a (very very little) bit faster than the previous version.
2011-10-28 21:12:12 +01:00
skidau e03fd9a942 Added code to invalidate the JIT cache on dcbi and writes to memory. 2011-10-27 21:08:35 +11:00
Brad Gearon 9a627e89fb Add unimplemented device map for sdio/slot1 and slot2. Fixes #4932. 2011-10-26 14:28:57 -05:00
crudelios 852fe9c4be Added proper Bounding Box support.
Should fix most graphical issues with Paper Mario: TTYD and Super Paper Mario. Fixes issue 360.

Since only those two games seem to require BBox support, and as per ector's suggestion, BBox is only enabled for those two games.

BBoxes and Display List Caches don't get along too well, causing Paper Mario: TTYD to hang during certain effects where BBoxes are used. For now, I disabled DList Cache for the Paper Mario games, hopefully both will be compatible in the future.
2011-10-26 01:19:10 +01:00
Shawn Hoffman 105e7e4eb4 Added TaruKonga (DK Bongos) support.
Separated SI Device IDs from the enums used for config/gui since quite a few device types all have the gc controller SI ID.
2011-10-23 07:01:17 -07:00
Shawn Hoffman ba119e8c05 Set the correct bit for "trap" program exception. Fixes http://wiibrew.org/wiki/Descent 2011-10-23 02:53:31 -07:00
skidau 3cdcdba25f Merge branch 'SaveStates' 2011-10-22 16:18:02 +11:00
skidau 599c3ccd7b Fixed save states for games which use the MMU Speed Hack 2011-10-22 16:14:34 +11:00
kostamarino@hotmail.com 8d9061ac39 Possible fix for random crashes with plenty of games(like Mario Galaxy) and issue 4568 (please test).
Gameini database changes that affects Black & Bruised, BLOODY ROAR(R): PRIMAL FURY, CASPER, Karaoke Revolution Party, Wii Music, TMNT.
2011-10-19 21:03:08 +03:00
skidau 5b2c5c9ce3 Removed the icache invalidation code as it is causing frequent code clearing. 2011-10-19 02:36:30 +11:00
Pierre Bourdon 1e558aedeb Added an EFB peek cache to the GL video plugin
Most of the games using EFB peeks are suffering from major performance problems
when these peeks are not disabled in the graphics settings. This is an attempt
to fix this in the GL renderer by doing the glReadPixels in bulk: instead of
doing a lot of 1x1 pixel reads, read for 64x64 pixels at once and keep that in
a cache.

Deck menu in Baten Kaitos: 3FPS -> 54FPS
Character creation in Monster Hunter Tri: 7FPS -> 60FPS
2011-10-17 18:30:13 +02:00
Shawn Hoffman 3fc5d8d7cf Merge branch 'gc-mic'
Added GameCube Microphone support.  Uses your default audio recording device.  The Microphone is selectable from the Slot A/Slot B pulldowns under the GameCube tab.  The Microphone button can be set under GCPad configuration for pad 1 and 2. Thanks to MooglyGuy and skidau.
2011-10-17 03:21:11 -07:00
Shawn Hoffman 45eb9f0e7a fix some logic errors in the mic code and decrease latency a bit. emulate the buffer_overflow bit. 2011-10-17 03:14:20 -07:00
Shawn Hoffman c528978608 use callback model instead of blocking read/write.
fixes delay on linux.
currently not implementing the overflow bit, not sure it's needed since we manage our own buffer now.
2011-10-16 23:20:37 -07:00
Shawn Hoffman 1d6bd3248c It is safe to call Pa_Initialize and Pa_Terminate more than once. 2011-10-16 13:29:10 -07:00
skidau 18d9a275e7 Invalidated a wider range in the JIT cache to force recompile updated code in the ICache. This fixes the crashes in Mario Power Tennis and the remaining games in Mario & Sonic at the Olympic Winter Games.
Fixes issue 2102.
Fixes issue 2751.
2011-10-16 23:23:17 +11:00
Shawn Hoffman 46afefb14f Merge branch 'master' into gc-mic 2011-10-16 02:22:21 -07:00
Shawn Hoffman 676822891d ups, exi slots are on whole different channels... 2011-10-16 02:08:51 -07:00
skidau f6b9ae534e Merge branch 'master' of https://skidau@code.google.com/p/dolphin-emu/ into SaveStates 2011-10-16 17:51:41 +11:00
skidau c0498ca831 Synchronised the JIT cache with the ICache by invalidating the JIT block when the ICache is updated. This fixes Mario & Sonic at the Olympic Winter Games. Thanks to DimitriPilot3 for the tip.
Fixes issue 1610.
2011-10-16 16:43:32 +11:00
skidau 5d14bb5e70 Changed the save state system to load/save only after the screen has been drawn. This should help stabilise the save states. 2011-10-15 22:19:42 +11:00
skidau da9bd95a68 Renamed the "Disable Wiimote Speaker" option to "Alternate Wiimote Timing". 2011-10-09 22:10:47 +11:00
skidau 0ceb3cba36 Adjusted the system timing as DKCR was still getting disconnects with DSP HLE. 2011-10-09 22:10:46 +11:00
skidau 58cbe9cbd9 Adjusted the System Timing of the IPC HLE period for Wiimotes when used with DSP HLE. 2011-10-09 22:10:45 +11:00
skidau a09e859b3a Adjusted IPC HLE period to allow for four emulated wiimotes. 2011-10-09 22:10:45 +11:00
Shawn Hoffman 3556069f9f Also allow JitIL to update EXI exceptions much more frequently.
At this point, the mic branch is ready for testing by windows people at least. cmake/scons may work already, not sure.
2011-10-09 03:41:31 -07:00
Shawn Hoffman 41424d98e8 Make the mic button respect which slot it's plugged into.
*You need to open the Gamecube config page and reselect the devices in slot A and B after this commit*

Just jitil left...
2011-10-09 03:18:15 -07:00
Jordan Woyak ceef98b882 Added mic button to gcpad 1 and 2 diags. Both mic slots use gcpad 1 currently. Totally untested. 2011-10-09 04:27:43 -05:00
Shawn Hoffman 3790a16ece billliarrddd...here is how to set the button bit 2011-10-09 01:11:49 -07:00
Shawn Hoffman ade9485aac ok...just need to update the button... 2011-10-09 01:11:48 -07:00
Shawn Hoffman a751b627fd remove a now-unneeded comment 2011-10-09 01:11:44 -07:00
Shawn Hoffman ad508ab8fb Let's go ahead and throw this in here, should bring support of Intel IGP back in with DX9.... I can't actually test this for an obvious reason, but I figure while Windows is broken anyway, go ahead with it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7707 8ced0084-cf51-0410-be5f-012b33b47a6e

That should fix the seg faults on IGP chipsets.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7715 8ced0084-cf51-0410-be5f-012b33b47a6e

Compile fix.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7716 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-10-08 15:29:04 -07:00
Pierre Bourdon 59072adc32 Align stack variables on a 16-bytes boundary in SSSE3 functions
Fixes issue 4450. Thanks to pholklore1 for his patch.
2011-10-08 17:36:01 +02:00
LPFaint99 03b65f3d89 Merge branch 'GCMemcardUpdates' 2011-10-04 13:18:22 -07:00
LPFaint99 5316c6d97b Move GCMemcard from DolphinWX/Memorycards to Core/HW 2011-10-04 13:14:18 -07:00
LPFaint99 8d91f1e0c1 EXI_Memcard: HLE memcard Formatting, GCMemcard: Add static format function, cleanup checksums code 2011-10-04 13:14:17 -07:00
LPFaint99 86950e7cce fix gcmemcard format broken by 5f9591cf9d
small cleanup to format, now works for slot a and b and any memcard size
2011-10-04 13:14:17 -07:00
Shawn Hoffman 5dc866bfc9 Fix gamecube microphone (button not implemented, yet :p).
Calls ExpansionInterface::UpdateInterrupts just before checking exceptions now.
2011-10-03 23:46:00 -07:00
Shawn Hoffman 856972f808 remove hacky old MicButton stuff 2011-10-03 23:46:00 -07:00
Shawn Hoffman d8def74dd1 add portaudio headers and windows static libs to Externals, enable by default in windows build. 2011-10-03 23:45:59 -07:00
Shawn Hoffman b4d751e43c Merge branch 'fix-icc-unsafe-string' 2011-10-03 23:44:35 -07:00
Jordan Woyak a65385d995 Merge branch 'fix-3rd-party-wiimote' 2011-10-04 01:36:10 -05:00
Pierre Bourdon 9dad9ebe89 Merge branch 'zcomploc-support'
zcomploc is a feature of the BP which switch depth test from before the alpha
test to after the alpha test. This way, transparent fragments are written to
the depth buffer too.

The current implementation is quite hacky and does not cover all cases but is
enough to fix problems in a lot of game. A complete implementation would
require a multipass rendering method and is attempted in the
zcomploc-experimental branch.

According to testers feedback, fixes bugs in the following games:
- Baten Kaitos
- Baten Kaitos Origins
- 007: Everything or Nothing
- Ty the Tasmanian Tiger
- Tony Hawk's Pro Skater 3

And probably other games too.

Conflicts (because of new-shadercache-uids):
	Source/Core/VideoCommon/Src/PixelShaderGen.cpp
2011-10-04 07:56:13 +02:00
Jordan Woyak 15d6c6e9fc fix 3rd party wiimotes, patch by pholklore 2011-10-01 21:36:16 -05:00
Jordan Woyak d3e639a397 fix build issue with intel compiler and fix some unsafe string usages, patch by FilthyMonkey 2011-10-01 21:31:43 -05:00
skidau e76bc71efe Fixed the controller config so that it lists DInput controllers with special characters (like the Registered (R) sign) in their name. UTF8 is used to match the encoding used by the Wx GUI. 2011-10-01 21:50:15 +10:00
Pierre Bourdon 266cafb82d Add a call to VertexManager::Flush() when changing TC gen settings
In previous revisions of Dolphin, changing texture generation settings (via
GX_SetTexCoordGen for example) did not regenerate the vertex shader and flush
the vertices. Adding this flush should fix texture problems in a few game, for
example in Superman: Shadow of Apokolips:

Before: http://i.imgur.com/mHmfb.jpg
After: http://i.imgur.com/2ThES.png
2011-10-01 02:36:03 +02:00
NeoBrainX 7eb06430ed Only sync shader caches to disk on stop. 2011-09-29 23:16:42 +02:00
NeoBrainX 0e1383b788 Bump disk cache version. 2011-09-29 22:55:28 +02:00
NeoBrainX 2b3b32872d Fix Windows build. 2011-09-29 22:54:52 +02:00
NeoBrainX 81c614fa07 Clean up various things. 2011-09-29 23:32:39 +02:00
NeoBrainX ddfe219293 Fixup line endings. 2011-09-29 23:32:39 +02:00
NeoBrainX ca7e8a9e88 Fix pixel lighting. 2011-09-29 23:32:39 +02:00
NeoBrainX cfba35f7e5 Only link against libav if it's available. 2011-09-29 23:32:38 +02:00
NeoBrainX 08af37509e More buildfixes.. 2011-09-29 23:32:38 +02:00
NeoBrainX f041eee23b Compile fix. 2011-09-29 23:32:38 +02:00
Glenn Rice 6ccfd85f42 Build fix for the linux libav build. 2011-09-29 23:32:38 +02:00
NeoBrainX 913bc6d15f D3D11: Disable some redundant shader compilation errors. 2011-09-29 23:32:38 +02:00
NeoBrainX 6d8f641cc9 Fix D3D11 frame dumping. 2011-09-29 23:32:38 +02:00
NeoBrainX c710ea33f9 Merge some frame dumping code to VideoCommon, fixes a memory leak in D3D9 and OpenGL if emulation is stopped while dumping frames.
Breaks D3D11 frame dumping for some weird reason (memory corruption or whatever?).
2011-09-29 23:32:38 +02:00
NeoBrainX bd4a5b5ef6 Implement frame dumping in D3D11.
Fixes issue 4831.
2011-09-29 23:32:38 +02:00
NeoBrainX 5dcb212fc7 Fix Windows build. 2011-09-29 23:32:38 +02:00
NeoBrainX 8c691767da Various changes which improve FreeBSD support.
Patches by martymac, all credits go to him ;)
2011-09-29 23:32:38 +02:00
NeoBrainX 5d075ce507 - D3D9: pass the correct API type to ValidatePixelShaderIDs
- don't load shader cache from disk in d3d9/11 if shader debugging is enabled (we won't have any info about the source shader code otherwise, etc)
- dump shader source codes on safe UIDs mismatch

Thanks to LordMark and [SS] for reporting those to me ;)
2011-09-10 03:10:28 +02:00
NeoBrainX a021dd7b79 Small fix to the previous commit. 2011-09-09 21:45:11 +02:00
NeoBrainX 5c14a24ce1 Make shader ID validation optional by adding a gfx setting called "EnableShaderDebugging".
Setting this to True will enable additional checks if the shader cache misses any relevant register changes.
2011-09-09 21:34:46 +02:00
NeoBrainX b28348066e Improve the shader UID debugging stuff and merge it to VideoCommon, effectively enabling it in D3D9 and D3D11 as well. 2011-09-09 00:32:04 +02:00
NeoBrainX 349a3ae91d Merge remote-tracking branch 'remotes/origin/master' into new-shadercache-uids 2011-09-08 02:14:18 +02:00
NeoBrainX 6c7bda6851 Various fixes and cleanups. 2011-09-08 02:09:44 +02:00
NeoBrainX 98b62d8362 Track alpha blending paramaters in the pixel shader UID. 2011-09-07 21:15:14 +02:00
NeoBrainX 3939f9595a Add runtime checks to make sure we aren't overoptimizing the pixel shader cache. 2011-09-07 21:15:09 +02:00
NeoBrainX 4702de591e Added safe pixel shader UIDs for debugging purposes. 2011-09-07 21:10:06 +02:00
NeoBrainX 231c13d6ce Added safe vertex shader UIDs for debugging purposes. 2011-09-07 21:03:10 +02:00
NeoBrainX df4e337ac9 Fix various pixel shader compilation errors caused by the Direct3D shader compiler going nuts due to uninitialized (and unused) shader variables.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7693 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-09-06 18:37:01 +02:00
NeoBrainX 17fcd406fc Merge some scissor rect related code to VideoCommon. 2011-09-05 22:04:28 +02:00
Shawn Hoffman b867c21fea apply to dx9 and dx11 backends as well 2011-09-05 12:19:11 -07:00
NeoBrainX 6845a1596c Fix various cases in scissor rect emulation.
Patch by delroth.
2011-09-05 11:10:23 -07:00
Shawn Hoffman 95517a9741 vs2010: Disable LTCG for realz 2011-09-05 09:43:23 -07:00
Pierre Bourdon d3ecf98213 Include the zcomploc bit in the shader UID
Fixes issues with switching zcomploc on/off during execution.
2011-09-04 05:38:32 +02:00
Pierre Bourdon 0bdf8646f0 Proof of concept zcomploc implementation
Fixes a few depth related graphics bugs. Example in Baten Kaitos (GKBEAF):

Before: http://i.imgur.com/EDdVA.png
After: http://i.imgur.com/h6GuY.png

Still a few bugs in this implementation: zcomploc switching is not yet
implemented, and the color is wrong with this test: http://codepad.org/7GpxklOi
(red on Dolphin, gray on Wii).
2011-09-04 05:08:09 +02:00
Pierre Bourdon d710eda0c5 Clean up a bit the shader code generation for alpha test fails 2011-09-04 04:44:50 +02:00
Jordan Woyak 931a31deca Untested attempt to fix real gcpad sticks not being detected by the input configuration dialogs. 2011-08-31 20:46:04 -05:00
NeoBrainX bcb8d11c1b Reduced the number of redundant vertex shader compilations (possibly to zero).
That one was almost too easy ;P
2011-08-31 20:46:03 +02:00
NeoBrainX 4137f287fd Fix a critical bug which caused shaders to be redundantly recompiled when disabling per-pixel depth.
As a nice side effect, the number of redundant shader compilations is now next to zero ;)
2011-08-31 19:45:28 +02:00
NeoBrainX 7f01139d13 Replace the pixel shader UID generation algorithm with a better one which reduces the number of redundant shader compilations by around 30% (can be optimized even further though).
This should help some games which suffer from heavy stuttering like e.g. F-Zero GX or Red Steel 2.
2011-08-31 18:03:33 +02:00
NeoBrainX 08e06b2293 Partially revert revision d511b50612.
Slightly slows down emulation, but deobfuscates the pixel shader gen greatly...
2011-08-31 16:09:54 +02:00
NeoBrainX 8a17e15943 Various cleanups and TODOs. 2011-08-31 16:09:46 +02:00
Jordan Woyak 7812346c89 disable ltcg for release build 2011-08-30 19:30:04 -05:00
Shawn Hoffman c0dd84cf7d buildfix ON MASTER!! :<
(I am sonic's babysitter)
2011-08-26 21:19:40 -07:00
Ryan Houdek 62e790f109 Have the ability to disable screensaver due to Nvidia + Displayport can cause annoying flickering
Bring up to standards guidelines and also support Windows

Switch this around...
2011-08-26 13:29:01 -07:00
LPFaint99 7737b2cef1 create the User/* dirs on windows
configuration/savestates/etc will now save
Fixes issue 4815.
2011-08-25 21:49:20 -07:00
Ryan a5a2562e59 Put this hotfix in since some combination of hardware and drivers returns zero here. 2011-08-25 02:58:37 -05:00