Commit Graph

1169 Commits

Author SHA1 Message Date
Maarten ter Huurne bb182d88b7 Link against systemwide OpenCL on OS X. 2011-12-05 05:26:28 +01:00
Glenn Rice e5d051a4e9 Update linux libav frame dump code for recent api changes. 2011-11-22 19:24:05 -06: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
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
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
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
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
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
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 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 f041eee23b Compile fix. 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 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
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
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
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
Jordan Woyak e8fe15c3f7 Make titlebar and about dialog fancy for cmake build.
Windows needs fixing.
2011-08-21 17:43:05 -05:00
NeoBrainX 0655ee571d Shader compilation error message modified to contain some helpful information for noobs (includes a reference to the full bad shader dump).
Removed the "Hide Shader Errors" option; hide shader errors if panic handlers are disabled now.
Removed superfluous error messages about shader compilations; display only one error message instead.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7688 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-29 22:18:11 +00:00
Shawn Hoffman fc261b32bf add definitions of some bp mem bits relating to interlacing (no behavior change)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7683 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-18 08:27:30 +00:00
Marko Pusljar cac36b8161 added 1.5x, 2.5x, 4x internal resolution
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7669 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-05 01:11:03 +00:00
pierre 1f2adf0563 VideoCommon: Always update pixel shader constants when tevregs change
This time, it doesn't break the games i tested, and still fixes
Metroid Prime 3 texts/colors.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7668 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-04 13:49:40 +00:00
pierre 951e20ae73 Revert r7665. Breaks about all other games.
Sorry, MP3 users will have to wait a bit longer.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7666 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-03 21:57:49 +00:00
pierre e090a92c7e VideoCommon: Always update pixel shader constants when tevregs change
Fixes texts staying visible and strange colors in Metroid Prime 3.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7665 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-03 20:48:22 +00:00
NeoBrainX 3c10f9f3e9 Various UI and documentation improvements to the GFX debugger.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7661 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-07-01 20:59:57 +00:00
Sonicadvance1 693f276a68 Small update for disabled Fog for older hardware that fails to divide by zero in shaders
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7612 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-20 05:48:12 +00:00
Rodolfo Osvaldo Bogado e5210de9d5 just a little cleanup to maintain minimal interfaces
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7591 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-10 19:16:09 +00:00
Sonicadvance1 db0c2bca5b Allows DX9 shaders to be SM2 compatible again at the loss of accuracy. SM3 is recommended. Fixes issue 4546.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7585 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-06-04 19:56:18 +00:00
NeoBrainX 84906edf61 Fix applying anti-aliasing without having to open the gfx config. Thanks to skid for pointing out the VerifyValidity problem to me ;)
Fixes issue 4498.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7574 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-05-31 20:16:59 +00:00
Rodolfo Osvaldo Bogado 0e225a5ad1 some code cleanup i have left in my folder :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7560 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-05-25 18:14:29 +00:00
Rodolfo Osvaldo Bogado fa7a521086 A long time since my last commit but i have a lot of work. hope to find some time to fix more things.
some little corrections in dlist cache code, i thing they will not have effect in the remaining issues but now the code behaves more correctly in some situations.
i discover the solution for the remaining issues bur requires some changes in the vertex translator so will work on them after the upcoming Release.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7556 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-05-25 02:05:48 +00:00
Nolan Check 8024783502 Don't resize render target to handle out-of-bounds viewports. Instead, adjust the projection matrix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7538 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-05-12 02:14:45 +00:00
NeoBrainX fe2d09576d Fix "Disable Lighting" in D3D9 and D3D11.
Fixes issue 3185.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7498 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-30 17:34:08 +00:00
NeoBrainX 8791c1c372 Use the recommended video settings as the default configuration:
- Fast Mipmaps enabled
- Safe Texture Cache enabled at "fast"
- showing shader errors by default
- using Native as internal resolution
- using EFB to Texture by default
- ignoring EFB format changes by default (turns out r7436 made this in Super Mario Sunshine unnecessary anyway :P)
Any game which depends on other settings has that specified in the game ini, so I think this should be fine.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7497 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-30 14:27:35 +00:00
NeoBrainX 770b0d4552 - Do not parse numerous video options from the game inis, like:
Show FPS, Input Display, Statistics, Projection Statistics, EFB Copy Regions, Dump Textures, Dump EFB target, Dump Frames, Free Look, Use FFV1, Show Shader Errors, Texture Format Overlay, WireFrame, Hotkeys and Adapter
- Also removed various game ini config values which were still parsed from the Video section.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7489 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-29 23:43:37 +00:00
Matt Callaghan a86f79f447 Quick fix for Dolphin crashing when using 3D and clicking anywhere on screen. Basically just re-adding something that I removed a while ago... it wasn't needed anymore, apparently it is again.
Note: Newest nVidia drivers break Dolphins 3D (270.xx), not sure why yet, gonna ask around. It really confused me though when trying to fix this issue, spent at least an hour trying to figure out what the hell was going on. I eventually realised a build I knew worked in 3D was having issues...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7487 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-29 23:02:06 +00:00
NeoBrainX a779b92a09 Remove configuration profile support.
I.e. revert most of the video configuration dialog changes since r7483.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7484 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-25 20:06:45 +00:00
Nolan Check 9b697ed28f DX11: I think I've figured out where the game enables texture offsets for lines and points.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7461 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-15 22:34:54 +00:00
donkopunchstania 77a4a64909 Fix an error introduced in r7083. In the pixel shader manager the farZ and zRange of the z bias were flipped. Switched to using the viewport struct rather than a raw float array to hopefully avoid such confusion in the future. Fixes issue 4060.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7446 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-11 01:49:32 +00:00
gnick79 b6222a5b61 * One Window 3-State changes (VideoSettings GUI):
- Added final support to string type (planned implementation reaches 100%)
  - Added support to post processing shaders (OpenGL backend)
  - Code Maintenance: 
	- Reorganized the class hierarchy
	- General polishing... deleted some redundant code

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7437 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-05 22:46:57 +00:00
NeoBrainX 426f187642 VideoCommon: Update color writing mask if pixel format changes.
Possibly fixes issue 4340.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7436 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-03 18:08:04 +00:00
NeoBrainX c4cd8d84e4 Revert r7086.
Preferring the slow code until it gets optimized properly...


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7435 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-02 11:38:29 +00:00
smelenchuk 7a9a47376f roll back r7431
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7432 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-01 01:46:18 +00:00
smelenchuk 15c51c37f3 Add a "force no texture filter" option, useful for some 2D games (like Mega Man 10) and people who like their pixelated graphics.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7431 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-04-01 01:35:07 +00:00
Sonicadvance1 783c89f108 videocommon depends on core for Fifo Recorder
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7430 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-31 20:41:59 +00:00
donkopunchstania 07c4da6084 Add graphics FIFO recorder and player for debugging the graphics system.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7414 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-27 02:55:08 +00:00
Glenn Rice c99c247ed5 When using the "Start Renderer in Fullscreen" option, really start in fullscreen. In other words this now switches to fullscreen before the renderer is initiated instead of after. This is a partial fix for issue 4316.
Also, if the render window size changes while frame dumping, scale the resulting video to prevent clipping on linux.  This is a complete fix for issue 4316 on linux.  I don't know how to implement this on windows though.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7412 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-25 18:12:40 +00:00
gnick79 66632f0645 VideoConfig revision:
+ increased VideoConfig integrity
 + fixed a clamorous fault, before completely forgotten, about handling parameters attached to RadioButtons controls

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7405 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-23 19:43:04 +00:00
Glenn Rice c39e3c17e1 Fix a few issues with the size of the logger pane.
Also some other general clean up issues.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7401 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-23 02:06:40 +00:00
Matt Callaghan 034d282ce0 Sorry, apparently that last commit was pointless. Removing most of it. Best have as little 3D Vision mess in the code as possible.
But hey, at least somewhere along the line someone fixed hotkeys for us 3D Vision users.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7397 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-22 19:34:50 +00:00
Matt Callaghan cfd268073c More 3D Vision related stuff. This is the last one I promise.
Hotkeys now work when running 3D Vision. You've just got to select the render window first (as in click on the fullscreen image), don't ask me why, it's something to do with RendererHasFocus in Frame.cpp. Annoyingly, escape crashes the emulator and the screenshot button doesn't do anything, though I guess any other hotkey should be working. I wouldn't usually commit this but I remember someone really wanting to be able to connect their Wiimote while in 3D, so I figured I might aswell.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7396 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-22 19:05:08 +00:00
Shawn Hoffman 1c847dd421 fix a memleak and quiet some warnings
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7394 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-22 15:23:39 +00:00
Soren Jorvang 27f9faf7e6 Fix gcc build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7393 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-22 09:40:47 +00:00
Jordan Woyak f8620fcd0b Fixed some memory leaks. Only one was mine ;P
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7392 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-22 07:27:23 +00:00
gnick79 017735b9ff * GUI Video-Settings changes:
- Removed recent ghanges about separate per-game Video Settings
  - Added "One Window 3-State Support" (very close to full implementation)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7391 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-21 19:57:31 +00:00
Jordan Woyak 068855bbd6 Moved per-game graphics configuration to the game-list right click menu. It will be too difficult to make the "profiles" drop-down thing work with 3-state vs 2-state checkboxes. The per-game settings now have "undetermined" states, except for the radio buttons(I'll fix that later). It's super hacky right now. Video config (probably all config stuff) could be redone.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7386 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-21 05:46:33 +00:00
Matt Callaghan 8eaed1c105 Partial fix for 3D Vision.
It now works in the debug builds, but not in release builds for some reason. I'm not used to big projects like this so it's probably something obvious that I'm missing. Exclusive full screen mode seems to need the fullscreen resolution for the backbuffer when the DX device is created, so I used adapters[adapter].resolutions[f].xres and yres to get that, but in release builds, that gives me the windowed resolution (in debug it give me the fullscreen res, like I believe it's supposed to), which it reallly doesn't like.

It's not a difficult fix probably, but I've been staring at my monitor in confusion for too long now and need to get to bed. If anyone wants to test, you can still enable the 3D Vision option, it just wouldn't be 3D (obviously).

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7385 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-21 03:39:28 +00:00
Soren Jorvang 215baff4c8 Simplify the SCons build:
With wxWidgets 2.9.2 now in Externals, SCons was the only
external dependency other than Xcode and building just SCons
from Macports caused a fair mount of extra stuff to be built
unnecessarily, so just include a copy of scons-local.

Always build wxWidgets from Externals which allows us to get
rid of the home-grown autoconf machinery in SconsTests.

The main use case for args.cache was the wxconfig option,
which is no longer relevant after the above changes and
caching options has a lot of potential for confusion,
especially since other build systems don't tend to do this,
so we no longer do it now.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7381 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-20 18:35:07 +00:00
skidau 3db702fe17 Removed the OpenMP option from the DolphinWX project. It was causing a slowdown when the EFB to texture option was activated. This means that the OpenMP texture decoder option will not be hidden for non-OpenMP builds.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7378 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-19 10:05:57 +00:00
skidau 8b2eddf3f3 Enabled OpenMP support in the Windows 32bit builds.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7377 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-19 04:06:46 +00:00
skidau aac2972960 Fixed a memory leak that occurred while compiling the OpenCL kernels.
Reset the frame counter after loading a save.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7376 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-19 02:28:49 +00:00
skidau 50c5dbdb09 Added a toggle switch for the OpenMP texture decoder in the graphics settings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7375 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-19 01:55:57 +00:00
skidau 4079523346 Game-specific video settings:
* Moved the config validity check to reflect the emulator enforced settings at the config dialog
* Removed some obsolete validity checks
* Corrected "EnablePixelLighting" typo in the ini files

Fixes issue 4277.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7374 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-19 00:50:34 +00:00
NeoBrainX 8cacd4d2d7 Make sure to not do any XFB emulation at all if it's not enabled.
Should fix issue 4294.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7373 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-19 00:21:59 +00:00
sl1nk3.s 571013acd8 Fix the video software backend. (closes issue 4269)
Some warning fixes and cleanup.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7361 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-16 22:48:17 +00:00
Jordan Woyak 41c98f982e A bit of cleanup to Core Init/Stop, Frame, and Main. Cleanup XAudio2 to attempt to fix the crash on stop(didn't help :p). For some reason CFrame::DoStop is called twice.(might be the issue)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7353 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-15 23:09:12 +00:00
Nolan Check 7c536b8f15 DX11: Support thick lines and large points with geometry shaders. Lines still aren't drawn with correct thickness, see Twilight Princess map. But the map corners are drawn with correct shadow "blobs" for the first time!
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7340 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-14 09:38:29 +00:00
Glenn Rice 1b583a0441 Fix things so that those who wish to compile with -std=c++0x can. To active this with the cmake build add CXXFLAGS="-std=c++0x" before cmake on the command line, or export that variable. This enables the experimental features like std::thread, std::mutex, etc., that are provided by g++ instead of using the implementation in dolphin.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7333 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-12 00:01:33 +00:00
Jordan Woyak 59fd1008ca Wrapped fopen/close/read/write functions inside a simple "IOFile" class. Reading, writing, and error checking became simpler in most cases. It should be near impossible to forget to close a file now that the destructor takes care of it. (I hope this fixes Issue 3635) I have tested the functionality of most things, but it is possible I broke something. :p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7328 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-11 10:21:46 +00:00
Soren Jorvang 6d93d473ad Shut up recent versions of GCC about the OpenMP pragmas.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7316 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-07 20:23:04 +00:00
Rodolfo Osvaldo Bogado 25231f8007 more fixes for opengl sing openmp, i hope is the last :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7300 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-05 15:30:38 +00:00
Rodolfo Osvaldo Bogado 5eb99178dd more fixes for my openmp commit
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7299 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-05 15:03:36 +00:00
Soren Jorvang f20731b1c3 Fix OS X build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7298 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-05 13:23:37 +00:00
Jordan Woyak e16e177148 Missed a critical section.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7295 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-05 12:05:58 +00:00
Jordan Woyak 423018f811 Replaced Common::CriticalSection with a std::mutex implementation. 64bit Windows builds now use SRWLocks and ConditionVariables(requires Vista/7, x64 builds will no longer work on Windows XP x64). Tell me if you hate that. Removed Common::EventEx. Common::Event now uses a std::condition_variable impl.(using ConditionVariables on Windows x64, Events on x86, or posix condition variables elsewhere). I experience slight speed improvements with these changes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7294 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-05 06:11:26 +00:00
Rodolfo Osvaldo Bogado 15ca7b72e6 some fixes for my last commit
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7289 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-05 03:57:09 +00:00
Glenn Rice b8b81001bd Linux build fix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7288 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-05 02:32:09 +00:00
sl1nk3.s 1e367749bd Minor cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7287 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-04 23:23:59 +00:00
sl1nk3.s e8a1c04abf Fix a typo in BPFunctions causing a PanicAlert in SW:RS2.
Really minor bugfix in DX9.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7285 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-04 23:14:21 +00:00
Rodolfo Osvaldo Bogado c569b33829 First Revert my changes to VertexLoader.cpp, i don't own the games that get error so i revert the changes until i can test it myself.
Second:
A experiment. implemented parallelization in texture decoding using openmp. is most a experiment to test the performance in different os/plataforms. in my system (windows x64 amd 1055t) give a speedup in large textures, but i tested in in intel dual core and gives a slowdown. o i limited the use for large textures and cpus with more than 3 cores.
please test an let me know if it improves or degrades the speed.
please for linux and osx user. to enable this you will have to enable your compiler support for openmp to test this code.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7284 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-04 22:48:54 +00:00
Soren Jorvang 05719ac81a Move SConscript files out from the Src subdirectories to be
consistent with the other build systems.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7282 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-03 19:44:56 +00:00
Soren Jorvang 540238cf79 Prepare for the release of Xcode 4, which has working LTO
with static libraries.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7280 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-03 04:35:03 +00:00
Glenn Rice 3ffdcf1aec Put the video prepare code back, and use the existence of the g_renderer to determine if video prepare has been run or not.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7274 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-02 15:13:13 +00:00
Glenn Rice a5b471f490 More conversion from char * to std::string.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7266 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-03-01 03:06:14 +00:00
Glenn Rice ba54fac9eb Convert GetUserPath to return a std::string instead of a const char *. This simplifies its usage in most cases.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7265 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-28 20:40:15 +00:00
Soren Jorvang 1b8f476024 Integer constants larger than int need a type suffix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7264 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-27 23:13:28 +00:00
Rodolfo Osvaldo Bogado ccc12c6950 a little simplification for the dlist id and a little correction to YieldProcessor in windows.
in windows sleep(0) behaves more like what is defined in the yield instruction so use it instead. In my amd 6 core system brings a nice 8% speedup so please test I'm interested in knowing the behavior in different systems.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7261 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-27 18:06:55 +00:00
Nolan Check f0c5cc76a9 Add EFB encode-to-RAM support in DX11 backend. It could probably be simplified a lot, and not all the possible formats are implemented. I tried to use the dynamic-linking feature of shader model 5, but Microsoft's HLSL compiler is broken. "Dynamic mode" is implemented, but disabled for now.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7253 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-26 23:41:02 +00:00
Rodolfo Osvaldo Bogado eef715b1cf added the possibility to allocate aligned memory, an use it to allocate the buffer utilized in texture decoding, this will make a little easy to use aligned writes when possible in sse2/3 optimized algorithms.
some code additions for future use ;).
please gcc user test this as i don't have opportunity to test it myself i only use reference code to.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7247 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-25 20:35:05 +00:00
Rodolfo Osvaldo Bogado ac6c18a5e4 some cleaning in dlist cache, runvertices and runcompiledvertices
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7246 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-25 20:27:57 +00:00
Shawn Hoffman ea008a82ae fixes issue 4147
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7235 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-24 10:18:59 +00:00
Shawn Hoffman 6e4923399e revert r7212 (express users must modify a single line, instead)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7220 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-21 15:17:41 +00:00
Shawn Hoffman 62cb8ebe46 Force dolphin to use the windows7.1sdk (the windows7.1sdk installer is silly and refuses to recognize that vs2010 exists).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7212 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-20 18:08:20 +00:00
Shawn Hoffman 685d3c1f50 windows: fix crash on close
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7209 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-20 02:04:14 +00:00
Soren Jorvang 198e29be07 Call Video_Prepare() before starting the CPU thread.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7194 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-18 23:52:14 +00:00
skidau 855bcfa40c Added an option for input display. This option shows the controls read by the emulator at each frame. GameCube controls in all four ports have been implemented. Wii controls are todo. The option can be found in the graphics settings. This option is usually used for tool-assisted speed-runs (TAS).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7186 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-17 09:12:36 +00:00
Marcos Vitali c7ae0eb0d1 Big Fifo Commit Part2: Now the fifo is more stable than my first commit, so is time...
- ReImplementing Single Core Mode like Dual Core Mode Style.

- Stage 1: My goal is, we have the Fifo, CommandProccessor code the more clear, maintenible and documented possible. When I quit dolphin I want any developer can continue with the work only reading the code.
	
* Big Refactoring: A lot of functions was changed the names, and modularized.
Now the FifoLoop and CatchUpGPU does not exist, was replaced by RunGpu() and RunGpuLoop().
The general idea is modeling the code like the real HW. The fifo is only a buffer where the Write Gather Pipe write the commands and from the Graphic Processor read these.
* Big Clean UP a lot of obsolete code and comments was deleted, like DcFakeWachDog, "Fifo very soon hack", etc.

In the stage 2, I will refactoring more code doing emphasis in the division of CommandProcessor, Fifo, Gpu Emulation. Beside I will comment all functions and variables in the code (Don't worry I will ask for English help for this part ;) )

Please test a lot SC mode and DC mode :)
Thank you so much for testing always and the patience. I don't like broke your favorite game but... you must believe me this part is very sensible, I only try to contribute for have a better and stable dolphin emulator.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7185 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-17 04:25:21 +00:00
NeoBrainX e9f3d50eca Fix nowx Debug build. Yes, people use that\!
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7182 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-16 12:09:39 +00:00
skidau fb4c82fb48 Added the feature to allow creating a TAS movie from a save state. To activate this function, start the game and use the "Start recording" command. A save state will be created at that point in time and the emulator will start recording. This results in two files, a .dtm containing the movie and a .dtm.sav which is the save state.
Changes:
* Allow events to be scheduled when the emulator is not running.  This allows the save state event to be added before the emulator starts.
* Removed the Audio back-end init flag from the save state.  This value should not be saved as it is not data relevant to guest machine.
* Allow a recording to be started at any time (apart from when a recording is already being made).
* Updated the status bar and title bar when an on-screen message is shown
* Removed the saving of PEToken from the save state as the FIFO will save this information
* Added a couple Pixel Engine interrupt states to the save state
* Added the copyright notice to the GCPadStatus.h file.

This function is preliminary.  Let us know of any bugs you find or any UI quirks.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7175 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-15 09:07:55 +00:00
Soren Jorvang c212548f8e Initialize all struct members.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7173 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-14 21:58:53 +00:00
Glenn Rice 0ae8d33149 Some work on changing comments, log messages, and variable and function names to reflect that the plugins are not plugins anymore.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7170 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-14 02:18:03 +00:00
NeoBrainX b776ac3d6f Add per-game "configuration profiles" for video backend configuration:
This allows ALL settings in the gfx configuration dialog to be adjusted _per game_ in a more user-friendly way than before.
Obsoletes the gfx related options in the ISO properties, but I kept those since the configuration profiles use different ini file keys (i.e. convert the game inis to the new naming, please!).


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7167 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-13 22:36:12 +00:00
Marcos Vitali be193088ca - FIX RE0 GFX fifo errors :D
- This game read the CPRead pointer when the GP is processing data and after detach the fifo  and attach again an use this pointer for continue, so implement fifo.SafeCPReadPointer pointer.
- fifo.SafeCPReadPointer is updated when (FAKE_GetFifoEndPtr() - g_pVideoData) == 0) to have a pointer without GFX Commands Cut in the beginning of 32 block.
- Reset video buffer when the CPReadWriteDistance is written by the software.
- This commit is experimental please test a lot your games.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7165 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-13 15:08:37 +00:00
NeoBrainX c30859dae0 SOMEWHAT cleaned up the VideoConfigDiag code:
Also verify the validity of gfx configuration directly after loading rather than in the GUI code (which was kinda stupid anyway).

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7164 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-13 13:42:59 +00:00
Marcos Vitali 1d2c936f08 - Delete FIFO CriticalSection sFifoCritical for SAVE STATES. With the skid_au last changes that is not necessary anymore.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7162 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-13 05:52:09 +00:00
Marcos Vitali cd9ec1805a - Improve Fifo_Init() and Fifo_ExitLoop() for avoid Crashes when the emulation Start and Stop.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7159 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-13 04:10:40 +00:00
Marcos Vitali 05feabdb49 - Reimplemented FifoReset in other way, only call to GPFifo::ResetGatherPipe() ResetVideoBuffer() in FIFO_RW_DISTANCE_LO when this is equal to "0"
- In the Command Processor Control Register when GPReadEnable is OFF, wait until the fifo lopp finish with thi actual 32 bytes block. This is necessary to have Safe Disabble GP Read in this way AbortFrame is performed by the software, beside this can help to have accurate GPReadEnable OFF.
Please test Metroid Prime 1/2, Guilty Gear XX, X men gc, SMG, and shuffle you can test Harry Potter Prince for WII. :)

PD: The fifo code need a clean very soon.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7158 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-13 02:21:11 +00:00
smelenchuk cecef62c8c For non-win32 and with-libav conditions, add an option to frame dumping to use FFV1 codec for lossless video dumping.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7139 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-11 22:09:20 +00:00
Glenn Rice cb832f2298 Make sure the audio dump directory exists when dumping audio. Otherwise a segmentation fault ensues after several panic alerts.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7135 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-11 21:30:53 +00:00
Glenn Rice 6cbaa360a1 Fix frame dumping for linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7134 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-11 21:07:51 +00:00
smelenchuk b0fa0a83f8 * Dump AVI output on every VI (fixes issue #4064).
* Add audio dumping (fixes issue #1638).


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7131 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-11 18:59:42 +00:00
Shawn Hoffman e480ab2b10 drop vs2008 projects in favor of vs2010
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7129 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-11 15:43:05 +00:00
Marcos Vitali 86278642dc Experimental commit and one fix for my last commit.
I think that isFifoBusy bring better sync with VI (video interface) because the CPU emulated threads are waiting for DrawDone in BP Register. So, I do some modifications.
1) Rename "IsFifoBusy" by "isPossibleWaitingSetDrawDone"
2) Only activate isPossibleWaitingSetDrawDone when bFF_GPLinkEnable is true in fifo loop "Inmediate mode" that is because in theory this drawsync function is using in this mode.
3) Deactivate isPossibleWaitingSetDrawDone also in SetFinish in PixelEngine, beside when 32 block is finish.

Please regression in yours games thats can bring some FPS more above all with VPS frame limiter ON (Auto, 60, 50, etc).

- Fix waiting in AbortFrame(), please test mp1/mp2 is fixed again.

Good look! 

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7123 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-10 04:47:02 +00:00
Rodolfo Osvaldo Bogado 1f1c9132a6 revert some some of the soren changes to make dolphin compile in vs2008 again until sw plugin is completely fixed.
some correction to dlist caching

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7117 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-08 14:51:53 +00:00
Rodolfo Osvaldo Bogado 00c35451f6 second step in dlist optimizations: test the hashes only when the cpu could change the contents of the dlist, this is after it been processed, or at frame finish.
this is marcos idea so the credits go to him.
please test the broken games in my last commits to see if this solve all the issues.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7114 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-08 12:00:41 +00:00
Soren Jorvang 8c41d31651 Fix Plugin_VideoSoftware build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7113 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-08 11:02:34 +00:00
skidau 855f97841d Paused the video thread while a save state was being created or loaded. Performed the save state operation after the fifo became idle. Saved the interrupt status of the video thread into the save state. This helps stabilise the save states in dual core mode in games like Super Mario Galaxy.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7112 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-08 10:37:47 +00:00
Shawn Hoffman a34b81cc01 vs2010:
buildfix
move much of the build settings to .props files
-please use them as much as possible in the future, instead of changing individual projects
NOTE: to avoid left over blobs, clean your builds *before* applying these changes.
TODO: add DebugFast target for projects that are lacking it. Lack of DebugFast targets cause the linker to use LTCG when we don't want it.
please test for regressions which could be caused by being too happy with compiler flags :)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7109 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-08 04:03:48 +00:00
baby.lueshi 1f0663c1a8 Defer texture invalidation to the video thread from the video configuration dialog. Should fix issue 4069
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7108 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-08 03:47:59 +00:00
Marcos Vitali f0adc3adb4 Speed back to dolpihn: - Revert Read16 CPRead fifo hack for fix RE0. This hack only solve RE0 but brings slowdown in games like RE Umbrella, etc. - Move isFifoBusy again in the fifo loop and use s_fifoIdleEvent for AbortFrame. Note: if you can play RE0 only deactivate PanicAlert. These opdecoding error seems harmless. Some day this wiil be fixed in right way.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7107 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-08 01:11:11 +00:00
Rodolfo Osvaldo Bogado fc370c5136 Experimental commit: this is the base for a more complex dlist control code, is incomplete but i need some feedback.
whit this code hashing is completely disabled for the dlists content itself this must bring some fps more but i must know if this causes any glitches.
i suspect that no game modify the content of the dlist so hash is time wasted but the only way to test it is with this commit.
please test as many games s you can and give me feedback for any glitch.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7106 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-08 00:28:28 +00:00
Rodolfo Osvaldo Bogado fa15389b17 some little fixes for dlist caching, maybe a little speed up but nothing great, please test for regressions.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7105 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-07 22:35:46 +00:00
Soren Jorvang 0f7ff9c23e Deal with some clang-inspired buglets.
Respect the initial fullscreen setting in nowx.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7089 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-06 01:56:45 +00:00
donkopunchstania 35edf1b236 Split shader code generation for lighting into a separate file.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7088 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-05 23:57:12 +00:00
gnick79 17e28a19cd * Keeping resolution aligned to back-buffer size if the latter one is changed (can give a huge performance boost... even until to 100% in some cases)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7086 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-05 21:43:04 +00:00
hrydgard 3201b61b52 LTCG (link time code gen) was off in some projects, so turn it off in all of them so that the linker doesn't have to restart halfway through.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7084 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-05 20:14:23 +00:00
donkopunchstania c36ed08cfc Rework XF register loading a bit and change how registers are arranged in memory. This removes the assumption that all data for a viewport or projection matrix will be available when index 0 is loaded. Fixes issue 3688 and probably breaks old save states (sorry).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7083 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-05 18:25:34 +00:00
Soren Jorvang 98e24f5873 The compiler need not obey the static keyword, so to avoid linker
problems, whole functions in .h files need to also be static in
case they are included in several .cpp files.

Also a few other minor LTO fixes.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7082 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-05 16:06:05 +00:00
baby.lueshi 04fcd9499a Whoops, forgot to remove that.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7081 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-05 10:14:05 +00:00
baby.lueshi 888cd78724 Changes to hi-res textures. Textures now load correctly when loading/saving a savestate, and can be toggled on and off in game.
Changed non-hi-res textures to use MurmurHash3, which has better performance that the previous hash.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7080 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-05 10:08:06 +00:00
baby.lueshi cd9e6a8d23 Change the recent speedup to the hashing function to fall back to the old version for custom textures.
Re-fixed custom textures higher than 1024x1024. (It must have accidentally got reverted somewhere during the video plugin merge)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7064 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-04 22:51:17 +00:00
NeoBrainX 91ff420ed6 D3D11: Implement EFB format reinterpretation.
Now someone port this to OpenGL please, kthxbye.

Fix some warnings, fix a wrong string, ...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7061 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-04 17:00:34 +00:00
Soren Jorvang 6d70c14d12 In the SCons build, skip the generation of static libraries
and just operate on lists of object files instead.

This helps with LTO since LLVM/clang LTO is completely broken
by static libraries. It also helps identify symbol clashes
between components like the former plugins.

Many linkers also expect static libraries to form a strict DAG
which turns out be a difficult rule to uphold in practice,
especially since some of our platforms aren't picky about this.

LTO builds currently appears to crash at runtime because of
the static wx libs.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7056 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-04 00:46:56 +00:00
Soren Jorvang 9c21d003af Remove the global namespace a bit and remove some dead code.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7043 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-02 18:21:20 +00:00
Glenn Rice 8b309e26dc Remove PluginSpecs.h. Merge the few needed enums from that file into Common.h for now. I am up for suggestions on a better place for those.
Fix frame dumping on linux.
Make sure that on screen messages get cleared between games.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7039 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-02 04:40:27 +00:00
Shawn Hoffman af9ef060c0 vs2010: Enable LTCG only for release builds.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7032 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-02-01 04:45:29 +00:00
gnick79 d6e784121f * Changes about recent Custom PHack implementation
- Usability enhancement: Added Presets



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7025 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 20:30:25 +00:00
Shawn Hoffman 118d623a18 vs2010:
fix all build targets (they've all built here - you may have to manually delete the intermediate directories if you have conflicts after this commit).
set the debug path to $(TargetDir)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7022 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 15:53:54 +00:00
Shawn Hoffman c5d61c0a9a vs2010: buildfix for debugfast, silence all C4996 warnings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7016 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 08:53:08 +00:00
Shawn Hoffman 3b36e06571 svn eol-style:native on the filters...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7013 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 07:58:59 +00:00
Shawn Hoffman 7ae1340179 vs2010 add filters for everything (...except wxw projects...). Try to fix SVNRevGen, but I'm not sure it's working...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7012 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 07:51:37 +00:00
Shawn Hoffman 0e91e5b238 fix windows (vs2010) build
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7010 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 06:08:46 +00:00
Soren Jorvang 424b8fd6b3 Fix *BSD build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7006 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 03:58:18 +00:00
Glenn Rice 1c8bd68a6a Linux build fix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7004 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 03:16:10 +00:00
Soren Jorvang 8822674653 Fix *BSD build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7002 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 03:02:23 +00:00
Glenn Rice f1e8da63ec Linux build fix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6999 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 02:13:10 +00:00
Soren Jorvang 18bb65b300 Fix OS X build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6997 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 01:53:57 +00:00
Jordan Woyak fbaf965995 Eliminated the plugin interface. Merged DX9/DX11/OGL video plugins into Dolphin. It could still use a lot of cleanup. Lots of things are still named "plugin". Software renderer is temporarily disabled until it gets some namespaces. I only updated vs08/10, Linux/OSX builds are broken.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6996 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-31 01:28:32 +00:00
sl1nk3.s 274f84b294 oops, Fix a wrong comment.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6993 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-30 21:26:29 +00:00
sl1nk3.s 7a4c203f69 Fixed a small threading issue introduced by r6933 causing savestates to always freeze, thanks to artart78 for pinpointing the issue.
Properly pause the core when saving/loading savestates, previously we used PowerPC::Pause() and Start() which only update the state but doesn't properly set m_StepEvent and caused random hangs.
Fixed hang when creating a savestate while the game was paused or in Frame Advance mode, now the thing works (just remember to press play duh).

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6992 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-30 21:20:33 +00:00
Soren Jorvang f57cfc7c6f Virtual base classes should have a virtual destructor.
Build a libdolphinwx. Just fooling around with LTO..


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6981 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-30 01:58:54 +00:00
gnick79 25af2ae9b8 * All is fixed now about Custom Projection Hack (problem was inverted memmber)
- added support to DX11

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6980 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-30 00:56:33 +00:00
gnick79 c23663620f - Projection Hack disabled internally because it breaks all games (tomorrow I check better my bad nonsense)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6979 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-30 00:05:00 +00:00
Rodolfo Osvaldo Bogado d1e0b6b4ef little correction
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6976 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29 22:53:00 +00:00
Soren Jorvang 043e324789 A few compiler warnings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6975 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29 22:48:33 +00:00
Marcos Vitali c0571ae9de Improve for my last commit, also reset the VideoBuffer and Forget turn on GPReadEnable. If this is not enoughs for GC games. I will replace CPReadWriteDistance = 0 for ProcessFifoAllDistance.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6974 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29 21:26:46 +00:00
gnick79 3078db08c7 * Changed the Projection Hack option in game properties to "Custom Projection Hack"
- dislocating all sensible stuff related to "values per game/pattern" outside the sourcecode.
  - giving more control to end-users across the user-friendly interface.
  - deleting/cleaning some dead variables.
  - updating all gameconfig.ini data to reflect new PHack concept (pending upload).

* Updated Italian translation
  - Includes corrections, a better strings translating and suggestions directly by Google Code's people.

+ Minor old pending changes...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6973 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29 21:13:56 +00:00
Marcos Vitali fb35a83d2c - Fixed Metroid Prime 2 "GFX FIFO: Unknown Opcode (0x%x).\n" This was happened because FIFO_RESET is executed, but at this moment the Write Gather Pipe is not empty. (maybe also fix the same problem reported in MP1, i dont have this game for testing)
- Reimplemented AbortFrame. Now the  Write Gather Pipe buffer is reseted and Read Write Distances is reseted before the game do it instead  the  process all GP CPRWDistance for prevent CP wrong pointers.
This fifo reset should be more accurate, efficient and smooth the FPS when happens. Please, test regresion of SMG1 and SMG2 or others games with FIFO RESETS.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6971 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29 20:04:16 +00:00
Rodolfo Osvaldo Bogado a767de8e09 some fixes to dlist caching, now most of the remaining glitches should be fixed
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6970 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29 17:04:09 +00:00
donkopunchstania d5e5730fef If perspective divide is enabled and texture coordinate Z is 0 then leave texture coordinates alone. Fixes issue 3676.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6964 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29 08:34:57 +00:00
Soren Jorvang 1bcad428ea Link the video plugin statically into the main binary on OS X.
This makes the OS X build more robust and should help pave the
way for the integration of the video plugins as well as LTO.

There are now no more global class level namespace conflicts left,
as evidenced by the fact that Dolphin can be linked with -all_load,
not that you would want to.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6958 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29 04:52:19 +00:00
Rodolfo Osvaldo Bogado 4c58c7ea03 initial implementation of fog range adjust, I don't think is correct or work right but is a start.
some tweaks and fixes.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6957 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-29 04:31:56 +00:00
hrydgard 419d6a244b DSP plugin merge - the two DSP plugins are now gone and all the code has been merged into Dolphin.
This WILL temporarily break the Linux and MacOSX builds but should be easy to fix.

Things left to do:
  * The UI on the new Audio tab for the LLE/HLE choice is ugly
  * At times the code still look "plugin-y" and needs cleanup
  * The two plugins should be merged further. DSPHLE should use the emulated memory etc of DSPLLE as much as possible, so that simply saving the DSPLLE state is enough. This would also bring the possibility of savestate compatibility between the two plugins.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6947 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-28 18:39:30 +00:00
donkopunchstania fec3daf713 Create valid vertex shader when using emboss mapping and binormals and tangents are missing. Fixes issue 2867.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6944 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-28 04:13:46 +00:00
Soren Jorvang 7a80769640 Missed a few files in previous.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6936 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-27 21:59:59 +00:00
Soren Jorvang 955e3abe9e Clean out the long since bit-rotted video profiling code.
Profiler.{cpp,h} also happened to be the only dupliated
filenames left in Source, the absence of which should make
link-time optimization easier to get working.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6935 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-27 21:57:36 +00:00
Jordan Woyak 66cd497dfe Added "DebugFast" configs to vs2010 projects. Removed solution folders.(vs express doesn't like them)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6931 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-27 10:41:26 +00:00
skidau 622af438f7 Fixed the black (alpha) textures in the 8ing games like Tatsunoko vs Capcom and the Naruto series when using the OpenGL plug-in. Thanks to jim.lee for the tip.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6930 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-27 10:17:13 +00:00
Soren Jorvang 0288742565 Various minor fixes to allow building with clang on OS X.
Fixes issue 3992. 

wxWidgets patch at http://trac.wxwidgets.org/ticket/12332 .


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6929 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-27 05:01:00 +00:00
Jordan Woyak cbc520a70a Committing Visual Studio 2010 solution/project files. (not switching from 2008 just yet, just making 2010 an option) Still need to add a "DebugFast" config and change optimization settings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6927 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-27 00:14:29 +00:00
Rodolfo Osvaldo Bogado d7e877bb0b little fix for one piece unlimited cruise 2 and ju-on the grudge
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6924 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-26 17:22:09 +00:00
Rodolfo Osvaldo Bogado 71d93bdbc8 little fix for my last commit
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6921 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-26 03:00:00 +00:00
Rodolfo Osvaldo Bogado 4c704be0ed second try, a compilable :) fix for issue 3976 and some optimizations to color loading that will not mess with colors.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6917 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-25 22:30:15 +00:00
NeoBrainX 994913ce07 DX11 code maintenance, part 7:
Header cleanups. If anything, this will decrease compile time.. :P

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6916 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-25 16:43:08 +00:00
Shawn Hoffman efa9e81ca0 buildfix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6912 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-25 05:57:49 +00:00
Rodolfo Osvaldo Bogado 4c47fd0d49 revert my optimizations until i fix some errors and really fix issue 3976
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6911 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-25 03:45:44 +00:00
Glenn Rice 3ce1f73f73 Migrate the "Adjust window size" option to the main configuration dialog (under the "Display" tab, in "Emulator Display Settings", after "Window Size"). Also rework the way that the option works. When using render to main and the auto resize option, the application window will be resized and then resized back when the emulator stops. This looks much better than the box in the corner look before. Also only resize when it would actually change the size of the window. This fixes the hang on emulation stop on linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6910 8ced0084-cf51-0410-be5f-012b33b47a6e
2011-01-25 03:30:12 +00:00