Commit Graph

913 Commits

Author SHA1 Message Date
pierre b73b77014f Rework the logic for avoiding lerp() in shader code
This should give the exact same shader code except for the cases of
SELA == SELB and SELC == 1, the latter only for the color combinder.
In these two cases the results of the shader should not change in any way.

It would have been possible to optimize the SELC == HALF case too, if
the actual factor had been 0.5f instead of 0.4980392f.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5472 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-23 22:46:13 +00:00
Rodolfo Osvaldo Bogado 782d9111e5 let's keep experimenting:
almost fixed real xfb in d3d, i say almost because there are some minor scalling problems. hope will fix them soon.
implemented a more intelligent index generator to emulate more accurately the behavior of the gc.
please give me feedback on this changes.
enjoy :)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5465 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-22 21:58:43 +00:00
pierre b1a79b822d Use symbolic names instead of numbers and bump cache version
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5464 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-22 20:40:43 +00:00
pierre 78b7a95d3f Modify r5462 as requested by rodolfoosvaldobogado
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5463 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-22 19:55:07 +00:00
pierre e07a91930d The result of the last texenv stage is used regardless of destination register
The real hardware probably always sends the result of its computations
to the alpha test/fog units, in parallel to its registers, but those
only take the result of the last texenv stage.

This makes grass show up in ZTP, where the last texenv stage oddly writes to
reg #3 instead of #0.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5462 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-22 16:54:34 +00:00
Rodolfo Osvaldo Bogado 2c7a08fc61 after a good commit lets make some experiments:
implemented fixed efb scale to improve alignment and discard some error caused by incorrect scale.
make both plugins work similar. this must improve opengl image quality a lot.
also implemented dynamic resizing in opengl, this way the resolution math the windows resolution on resize.
this is highly experimental so please test a lot.
implemented shader dumping on error thinking  in future experiments with shaders.
enjoy :)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5458 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-19 03:15:36 +00:00
Rodolfo Osvaldo Bogado 7947543d98 a little optimization in shaders constants setting , based on the same idea of nodchip changes.
a MAYORRRRRR change in pixel shader generation, please review all games you can and leave comments this must improve accuracy in graphic emulation a lot.
for example: mario eyes in super mario galaxy, water pod transparency an water transparency on game intro in super mario sunshine, etc.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5457 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-17 22:17:46 +00:00
Rodolfo Osvaldo Bogado 0ea01d8462 fast commit :
make native mips loading an option to prevent performance lost in game that not need this functionality.( thanks to dorian.fevrier for point the performance lost.)
added a patch from  pierre@pirsoft.de to avoid vertex drops when index array is full in opengl implementation that do not support large index arrays

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5432 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-05-04 14:43:30 +00:00
Glenn Rice 140332c02e Move fullscreen display resolution control to the GUI with the rest of the fullscreen toggling code. This removes redundancy of code that was in several places through the various video plugins. Unfortunately it means the fullscreen resolution setting also had to be moved to the main configuration dialog. I am sure that will meet some resistance.
Also added a window size setting for windowed mode.

Also pulled some X11 specific code out into a separate file.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5395 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-22 04:28:34 +00:00
skidau 7a7d1a7b55 Re-added Skies of Arcadia projection hack. Fixes issue 2514.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5372 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-15 09:23:59 +00:00
nitsuja- 22551a0a8a a few minor code fixes.
also added a user file that should simplify running from VS for newcomers

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5338 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-12 02:00:15 +00:00
Glenn Rice 33a64d5db0 Big restructuring of how the video plugin works. In linux and windows you shouldn't see a change in the functionality; however, there are changes in how render to main or not, and fullscreen modes, and such are handled. Input is largely restructured for the video plugin. It is now handled by the host. Keys for pausing and changing fullscreen are configurable. More will probably be later. This is probably classified as highly experimental.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5336 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-12 01:33:10 +00:00
nodchip 32794fc028 VideoCommon: Fixed the bug that some texture become black in SSSE3.1 codes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5309 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-10 01:37:51 +00:00
nodchip 956b8eb54d VideoCommon: Added automatic selection routines for SSSE3/SSE4.1 codes. It selects SSSE3/SSE4.1 codes only if a proper preprocessor definition is defined and the target cpu supports SSSE3/SSE4.1. The selection routines in VertexLoader_* use function pointers. TextureDecoder uses a combination of "#if" and "if" statements.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5302 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-09 15:13:42 +00:00
nodchip 6136c94de5 VideoCommon: merged SSSE3/SSE4.1 codes. Added some additional SSSE3/SSE4.1 codes which will be used in "The Legend of Zelda: Twilight Princess".
These codes don't work unless "_M_SSE=0x301", for SSSE3, or "_M_SSE=0x401", for SSE4.1, is defined as a preprocessor definition.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5300 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-09 03:02:12 +00:00
Jordan Woyak 758bcf17cb Tweaked the widescreen hack: It now "hacks" to and from any aspect ratio, not just from 4:3 to 16:9. When "Stretch to Window" is chosen, the aspect ratio will be adjusted to 5:4, 16:10, or anything (whatever the aspect ratio of the window is). Works for 4:3 and 16:9 games.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5280 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-04 22:52:27 +00:00
Rodolfo Osvaldo Bogado a4736f7f6b back to limit vps instead of fps as this fix fps limit and now it works correctly as now the sync between the plug in and the core is almost correct.
fixed fps display in the top bar, now it shows the real fps of the game.
some code clean up and some corrections to make everything work right in the reference renderer.
multiples xfb now is broken even in single core as is was not an error caused by dual core, i really dono where the error is,everything looks correct but if you test a game with multiples xfb or the ipl you will see the error.
ector if you can take a look at he code and throw me some ideas i'll thank you.
please test.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5272 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-03 22:22:55 +00:00
skidau 962fef0626 Fixed bug where the projection hack setting was not being saved in the Game Properties dialog.
Removed the obsolete projection hacks:

* Final Fantasy CC Echo of Time
* Harvest Moon Magical Melody
* Baten Kaitos
* Baten Kaitos Origin
* Skies of Arcadia

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5271 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-02 21:28:56 +00:00
Sonicadvance1 e0b4cbcdae Another one bites the dust
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5263 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-04-01 10:06:43 +00:00
donkopunchstania 70627c5652 Extend the OGL virtual XFB to handle games that use multiple XFBs to make a frame. This should allow games that require the XFB to work without using a real XFB in RAM which is slow and limited to the original resolution. To use this enhancement you must check Use XFB in the options. The previous option was renamed Use Real XFB. I don't think this works with the aspect settings yet.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5185 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-10 06:45:13 +00:00
Glenn Rice c455673f87 Added scons options "shared_libname=true" to link agains the system shared libraries for lzo, sfml, and soil. For example add the scons option "shared_lzo=true" for lzo. This will check for the system libraries and then fall back to building and linking statically against the Externals if not found. You must have liblzo2-dev, libsoil-dev, and libsfml-dev installed. Note that you need version 1.5 or later for sfml. Currently scons doesn't check the version for you.
If you are having trouble with segmentation faults in linux try "shared_soil=true".  That seems to fix the problem.  How do we fix this for the static build?


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5182 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-09 22:17:33 +00:00
donkopunchstania cc7c6cd35f Texture coordinates are stored in fixed point format in TEV which allows overflows to be emulated correctly. Added logic to calculated texture LOD and use the correct mip. Dumping textures will now dump all mip levels. Added line rendering. Changed data stored in vertex from float arrays to vectors for cleaner math.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5178 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-09 04:38:07 +00:00
Glenn Rice beba3b7f5b Removed more compiler warnings in linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5170 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-07 22:48:37 +00:00
nodchip 2dabcb881c Fixed the crazy code in r5161.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5163 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-06 10:07:37 +00:00
nodchip d69478e539 Reverted the comparison function to r5159 and rewrote map to hash_map. I confirmed that the code can be compiled and run under Visual Studio 2008. And I confirmed the code can be compiled under gcc 4.4.0 (mingw). I could not confirm that the code run under linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5161 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-06 02:07:48 +00:00
nodchip 1b61742b53 Rewrote a object-comparison code using a standard function. It's a tiny refactoring.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5160 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-03-05 12:04:09 +00:00
nodchip 2941bef44b Fixed a wrong type in r5140.
Commited code that I forgot to commit in r5140.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5141 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-28 12:14:40 +00:00
nodchip 1c34052266 Refactored VertexLoader::CompileVertexTranslator(). Now texture coordinates loaders are also selected from a function table. I will add a hack to increase the speed in the next commit.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5140 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-28 11:36:00 +00:00
nodchip d348c33bf2 Refactored VertexLoader::CompileVertexTranslator(). Now the vertex position loader is selected from a function table. I will apply the same kind of refactoring to texture coordinates loader. This is a pre-preparation to optimize texture coordinates loaders.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5139 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-28 08:41:02 +00:00
Rodolfo Osvaldo Bogado 6b1ca64428 experimental commit: simplify even more the params. please test and if theres something wrong will revert asap
thanks for the comments in the prev commit they make my re think the approach.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5136 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-26 22:14:29 +00:00
Rodolfo Osvaldo Bogado 02189ec5e0 Simplify the params for the safe texture cache
after some test the more relevant parameters were the color samples and the tlut max size.
so delete the rest of the parameters and define 3 modes:
Safe : the two values are set to 0 meaning all the texture data and all the tlut data are hashed this is the most correct and slowwwwwwwwwww way
Normal: 37 samples are taken from the color textures an the firs 4096 bytes of the tlut are hashed, is a lot faster than safe mode but in some games i observe small glitches.
Fast: 8 samples are taken from the color textures an the first 1024 bytes are hashed from the tlut, is a little slower than the unsafe cache but at least all the games i tested have correct text output and fast frame rate. the glitches in dinamyc color textures are more noticeable in this mode
this values could be improved, if you find a better combination please post it and the game it fixes and i will update the source.
for the moment, as my time is limited by a lot of work, only implemented the d3d gui, if someone can implement the opengl gui will be a lot of help for me.
please test a lot and let me know the results.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5135 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-26 12:54:08 +00:00
nodchip 609151c6e8 Reverted because of some processor and performance issue. I will develop in a branch about SSSE3/SSE4.1.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5123 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-24 23:58:48 +00:00
nodchip 47fb73b71a Added SSSE3/SSE4.1 code for speed up. The code does not work in this revision because cpu_info is not initialized properly. I will fix the issue in another commit.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5119 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-24 09:56:41 +00:00
Glenn Rice 1d40b8a5ae Systematically eliminating compiler warnings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5117 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-24 03:38:36 +00:00
Rodolfo Osvaldo Bogado 3cc5d8ce6f First a bugfix:
fixed a misbehavior in the clear code that causes depth clear problems in reference hardware (Intel as example).
add 6 parameters to optimize Safe Texture Cache:
SafeTextureCacheColorSamples, SafeTextureCacheIndexedSamples, SafeTextureCacheTlutSamples:

this 3 parameters gives the number of samples taken to calculate the final hash value, less samples = more speed, more samples = more accuracy
if 0 is specified the hash is calculated using all the data in the texture.
SafeTextureCacheColorMaxSize, SafeTextureCacheIndexedMaxSize, SafeTextureCacheTlutMaxSize:
this parameters limits the amount of data used for the hash calculation, it could appear as redundant but in some games is better to make a full hash of the first bytes instead of some samples of all the texture.

color, indexed, tlut : define the texture type, full color data, indexed, and the tlut memory.

the parameters are available in the config , no GUI at this time, if the test are OK will add it to the GUI.
if someone needs it will give more examples on how to configure the values for specific games.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5116 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-23 21:52:12 +00:00
sl1nk3.s ae58a743cb Some tiny fix, fixed a crash when activating "overlay some statistics" on OGL plugin (which actually overlays a whole book + 400 chapters of statistics and, indeed, overflows and crash) + memleak fix on LLE plugin and little fix on GBAlink shutdown code.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5113 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-23 01:57:26 +00:00
Glenn Rice 303769d31c Revert commit 5105 until we sort out how we want this to work in linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5110 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-22 16:10:08 +00:00
Glenn Rice 73d575c5c2 On linux don't compile and link against lzo, soil, and sfml "Externals."
Instead use system libraries liblzo2-dev, libsoil-dev, and libsfml-dev


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5105 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-22 00:39:38 +00:00
Glenn Rice 154bc956ad Some code clean up, and take care of some compiler warnings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5090 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-20 04:18:19 +00:00
Sonicadvance1 c63446827f Fix crash when stopping and starting a game with OpenCL enabled
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5047 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-13 10:09:54 +00:00
Sonicadvance1 0ab6c117c1 Fix a memory leak in OpenCL
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5044 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-12 17:20:01 +00:00
Sonicadvance1 89c276c962 Fix a Memory leak in CoreAudio backend, around 2MB. Stops OpenCL from trying to decode CMPR textures, as it fails horribly. Fixes a memory leak in EXI devices, where the destructor wouldn't be called, causing a 32MB leak with memory cards(if you have two), and maybe a bit more from the other EXI devices
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5042 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-12 16:40:13 +00:00
j4ck.fr0st e4dcdf796f OSX build fix.
Fixes Issue 2260

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5039 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-11 17:54:16 +00:00
Rodolfo Osvaldo Bogado 6200c99dd4 test commit: please test if this improve the performance with the safe texture cache
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5038 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-10 15:55:24 +00:00
Rodolfo Osvaldo Bogado e93e777ffb second try to implement a more correct safe texture cache, implemented full hashing of tlut textures as they are the more problematic, this should solve virtually all the problems with characters in all the games that have them.
sorry to tell but this will bring a speed drop, so let you decide if this change stay or not.( used the fastest open source hash algorithm i know) 
do not apply full hashing to other format because it kills the performance.
for popular request added 9x SSAA believe me will kill your graphic card even if is the best but the image quality is exceptional.
as always please test and let me know the results.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5034 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-08 23:23:04 +00:00
j4ck.fr0st 43051ffe41 some cleanup, housekeeping for error cases and increased a few buffer sizes that are overflown by its content.
Thanks to Fatalis for the initial patch and pointing us to cppcheck.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5004 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-03 20:29:49 +00:00
Rodolfo Osvaldo Bogado a319a77be4 sorry forget one file :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5002 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-03 14:17:03 +00:00
Rodolfo Osvaldo Bogado e98a273b54 fixes for my last commit:
chage the global format of the screenshots to bmp, is correctly supported by both plugins and is faster.
reverted the changes in safe texture cache, will try to make them more stable then commit them, this should fix compilation in linux and macand error introduced in MP games
corrected all the issues commented by ector, thanks for the comments alway is good that the code is revised by others to find missed spots.
please report any remaining issue to solve them.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5001 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-03 14:13:03 +00:00
Rodolfo Osvaldo Bogado 9e2bbec47f a lot of modifications here :)
first fixed scaling when updating backbuffer to make it friendly with encoders, now frame dumping must work without errors in any codec.
clean screenshot and frame dumping code now is more correct, faster and stable.
improve safe texture cache, improving the distribution of the hash algorithm, including tlut hash in the final hash of the texture, and making use of a 64 bit hash to make it more accurate.
clean a lot of code and corrected some missused vertex formats when drawing full screen quads.
and biggest change last:
implemented pseudo antialiasing: a image post-process algorithm that mimics antialiazing and is fare more easier to implement in this scenario.
you can change the intensity of the effect changing the values of the antialiasing combo. the right value depends on the game.
for example mkwii looks awesome with 8x.
please try all the changes and let me know the results.
if something is broken, please let me know and will fix it asap.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5000 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-03 03:52:50 +00:00
Glenn Rice feba09f7a3 Linux global build. At least the basic footwork is done here.
Basic usage:  "sudo scons install=global install"
Hopefully this doesn't break builds on Macs.  I have tested this on linux and windows.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4994 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-02-02 21:56:29 +00:00
ayuanx 8b129fca0c Fies Issue 1584
OSD and Hotkey to do quick config toggling

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4984 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-29 07:44:21 +00:00
skidau 1f37bb2177 Reverted the FIFO thread change
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4937 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-23 21:06:12 +00:00
skidau 35b6e71f03 Experimental FIFO thread. Speeds up the emulator by moving FIFO to its own thread. This will work best with quad cores, though there is a noticeable improvement on my dual core.
Enable the thread by adding this line to the video plugin ini files, "User\Config\gfx_dx9.ini" and "User\Config\gfx_opengl.ini":

UseFIFOThread = True

The line should be added under the UseXFB line.

To disable the FIFO thread, use this line:

UseFIFOThread = False

If the line is not in the ini file, the default is disabled (i.e. False).

The FIFO thread causes an error when the OpenGL plugin is used.  The D3D plugin works.

Only top left quarter of the screen can be seen when rendering to main window.  The entire screen can be viewed when running in a window.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4930 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-23 12:50:56 +00:00
hrydgard a43428253b Kill the last timeGetTime calls.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4921 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-21 21:27:52 +00:00
hrydgard 9893122a58 Attempt at fixing the colors of loaded "hi-res" replacement textures in D3D. Fixes issue 2074. Delete some obsolete commented-out code.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4916 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-21 19:31:48 +00:00
hrydgard 576990c5a3 JitIL is no longer a separate .exe/binary - it's now a simple option, Dolphin.exe now contains both cores.
Advantages:
* Less confusion for users
* No need to build twice to make sure you didn't break something
* Easier to switch between the cores for testing

Disadvantages:
* None, as far as I can tell :) Maybe some extra code complexity, but not much.

Also break some include chains that caused <windows.h> to get included into everything, slowing down the build on Windows. There's more to do here though, there's still a lot of files that get it included that don't need it at all.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4891 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-19 19:28:27 +00:00
Rodolfo Osvaldo Bogado c4c809f6b1 Small fixes:
in opengl correct an error introduced by mi in efb to ram alignment, it's seems to fix SMS but it missalign a lot of other games, so revert to the default. must solve truncated coins in NSMB.
revert alpha testing values to the values in rev 4812 as they fix some games.
in d3d dynamized the Render target size so it will change at runtime when viewport exceed it size, in the worse case it will cause a missing frame when resizing but in the games I tested is not noticeable at all
This must solve all the remaining viewports problems in nvidia cards, in ati this is not needed.


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4888 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-19 15:00:45 +00:00
donkopunchstania 896850b176 Disable change made in 4801.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4876 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-18 06:32:16 +00:00
hrydgard 3e01152793 Shader Disk Cache implementation for D3D. Saves generated shaders on disk. Eliminates "freeze jerks" in D3D plugin the _second_ and later times you play something.... not much to do about the first time. The D3D shader compiler is just slow.
Also assorted cleanup around the shader code.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4869 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-17 17:44:09 +00:00
ayuanx 734b0f5dd4 Fixed a stupid error left by me.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4860 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-16 22:37:38 +00:00
Rodolfo Osvaldo Bogado 8de76f8fe8 ok big changes here:
in videocommon little fix for the alpha test values, return to the original values as they are more accurate.
in D3D:
huge change in state management, now all the state management is centralized and redundant state changes are eliminated.
Fixed the overlapped viewport error in non ati cards:
the error was caused by this: when a viewport is defined larger than the current rendertarget, an error is thrown and the last valid viewport is used, this is the reference behavior, in ati cards if a larger viewport is defined, no eror is returned, the rendering is valid and is rendered using the projection defined by the viewport but limited to the rendertarget are, exactly like opengl or the GC hardware.
to solve this in reference drivers defined a large rendertarget (2x the size of the original) and proceed to render in a centered quad insithe the larger rendertarget, in this way larger viewports always falls inside a valid rendertarget size, the drawback of this is the waste of resources. it can be dynamized, depending or games or changed at runtime when a oversized viewport is detected, but i live that to future commits.
please test this and let me know the results.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4841 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-15 15:52:08 +00:00
ayuanx 571a47ef9a This could alleviate the suffering of dual core synchronization a bit.
But I doubt you would notice it in most cases.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4830 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-14 10:52:14 +00:00
hrydgard 2db709aeb6 Add "Auto Aspect Ratio" to both graphics plugins. It's the new default, so you can forget about switching aspect manually from now on. In the Auto mode, aspect ratio is automatically set depending on whether it's a Wii or GC game, and whether the global Wii Widescreen setting has been set. There is still the possibility to override, which can be useful for the very few GC games that do support widescreen.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4828 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-13 21:11:02 +00:00
ayuanx 429691ce96 This should settle the FIFO BP critical games like Metroid Prime 2
G2ME01.ini

[Video]
FIFOBPHack = 1

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4823 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-13 11:42:04 +00:00
ayuanx ecdcffc7cf Fixes Issue 1997
This also makes the CP FIFO hack obsolete.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4821 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-13 09:03:55 +00:00
hrydgard a81efdb597 D3D: Fix some texture wrapping issues by setting the texture state for every texture used at draw time. Hopefully there will not be a noticable slowdown, thanks to the state caching. Also some minor cleanup. Should fix issues like repeated shadows. TODO: In theory it should have worked without this, so I should investigate why this change was needed.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4815 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-12 23:40:30 +00:00
Rodolfo Osvaldo Bogado 532ab905c4 this is a dev commit, a cleanup in the pixel shader generator to make the generate code a lot cleaner and readable, and a little fill rate optimization when using alpha test, i don't thing any game is limited by fill rate but the code looks more cleaner and is ordered in the same way is executed in hardware.
please test, if any problem apears let me know

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4812 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-12 03:39:14 +00:00
hrydgard 9012d4f4b8 Fix missing shading in NSMBWii etc in the D3D plugin. Now, I'm not entirely sure why the existing code didn't work properly, but hey, this fixes it :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4810 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-12 00:08:02 +00:00
donkopunchstania a19be73be3 Do special handling of texture coordinate generation if there is only a position and texture coordinate present.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4801 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-11 00:44:40 +00:00
ayuanx 81afdbe4f4 Compilation fix for r4795
Nunchuck gravity fix for r4794 (as sanchez instructed)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4797 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-08 22:56:27 +00:00
ayuanx a3cfafcd12 1. Expanded Framelimit range from 20 to 120 in case someone wants to run a little faster than full speed but still controllable not like wild OFF.
2. Fixed a bug (for Win 32bit) that reports "No possible memory base pointer found!" even when there IS valid memory base found.

3. Made Metroid Prime 2 (maybe also other games) boot
PS: There is definitely some initialization problem with Dolphin (not found exact location yet), which prevents Metroid Prime 2 from first time booting (If you boot some other GC game first, stop it, then MP2 can boot without problem).
So I added an instant BP hack that can make MP2 boot even at first time.
And I've tested all my games to guarantee it won't break any game that already boots before this hack.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4795 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-08 21:57:31 +00:00
ayuanx 9cbd508181 1. This should fix Issue 1625 (Bizarre Auto Frame Limit)
Now the frame limiter yields on CPU thread, not as before on GPU thread mistakenly

2. Fixed clear of VI interrupts
   I guess VI interrupts are not used at all, because they were never cleared before

3. Made GPU thread 0% processor usage when paused whatever your active config is.
   I tried the event approach but somehow the thread resume latency is excessively long (Who can tell me why?)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4790 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-07 20:01:41 +00:00
ayuanx e80078dc3c What we should think about:
"VideoFifo_CheckEFBAccess()" & "VideoFifo_CheckSwapRequest()" should be moved to a more suitable place than inside function "Fifo_EnterLoop()", which wastes considerable amount of CPU time (exhausting one core completely even when paused) and also makes VPS inaccurate.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4778 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-03 18:58:50 +00:00
ayuanx a3c258cf9c Fixed Issue 1921
This also fixed Ikaruga, not sure whether it could fix Metriod Prime. If not, how about disabling EFB copy?

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4777 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-03 16:04:40 +00:00
Rodolfo Osvaldo Bogado ded7a2921d I'm back, after two weeks pure work and nothing of dolphin, take a look at the code and discover this very small fix, apply color clamping before alpha test, the way is done in the software plugin, have some nice effects, this will fix some things and brake others but the feedback is needed.
if you want to know where to start testing look at SMS :)
HAPPY 2010 for everyone 

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4775 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-02 21:09:12 +00:00
ayuanx 92ef4f1156 1. Fixed the freeze issue in "Super Mario Galaxy" and other games, which was introduced since r4762
2. Fixed Issue 1909
   Multi-Nunchuck control problem

3. Updated SYSCONF, which should enable games that require MotionPlus, such as "Wii Sports Resort"

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4773 8ced0084-cf51-0410-be5f-012b33b47a6e
2010-01-02 05:15:36 +00:00
ayuanx 6e87ef943f Sorry, this is the working fix for r4759
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4762 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-31 20:49:04 +00:00
ayuanx 40f4dd30c2 Fixed Issue 1711 (a bug that prevents some games from booting)
Thanks to chuvit's help

Added safety check for CFrame::Update

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4759 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-31 16:25:12 +00:00
ayuanx 151ff28ab7 Fixed mem leak caused by not releasing pad & wiimote plugin when shutdown
Fixed main frame crash after shutdown

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4755 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-30 14:37:12 +00:00
sl1nk3.s bf6ed51b87 Fix an issue with BPMEM_LOADTLUT, thanks to revned @ issue 1831, also fix a speed issue int the FIFO loop introduced recently (ZWW was ~20% slower)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4739 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-28 19:13:06 +00:00
death2droid a1fefe870c DX9: - Add hires texture loading.
- Add an option to enable the EFB scaled copy *TODO find a better place for it to go.

SOIL - Update stb_image to the latest version (1.16 to 1.18)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4716 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-22 06:47:42 +00:00
fgfemperor acb9e7ca29 NSMB background fix. Fixes 1654.
There was a problem with the fog calculations... Now NSMB shows the background, while the fog still works!

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4714 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-21 20:30:01 +00:00
ayuanx b0ef811786 Disabled thread synchronization check so the speed should be back, and theoretically should be even faster than r4698.
Hope it is safe to do so.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4701 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-17 04:01:34 +00:00
ayuanx 0ae7be2c1c Since we have been employing the FIFO BP hack for so long time, at least let's make it a decent hack.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4699 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-16 17:05:30 +00:00
Rodolfo Osvaldo Bogado 9c930f0825 nice little hack to make efb copies scaled with the efb so everything will look a more HD, for now there is no GUI i'm with a lot of work at home. if everyone likes this change will add it to the GUI. for now just use the config file.
it brakes sms goop so in that game avoid this . test and let me know.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4696 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-15 01:40:54 +00:00
ayuanx 66b1eb1f08 Does anyone know any game that requires the "Clear FIFO BP on Rising Edge"?
Because commenting out this behavior fixes Silent Hill Shattered Memories.

If this commit breaks any game, please report.

PS: There is a EnterCriticalSection in fifo.cpp, which performs the Read Access, but there is no EnterCriticalSection in CommandProcessor.cpp which performs the Write Access, so how can we guarantee the Write Access is atomic?


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4694 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-14 15:50:31 +00:00
Rodolfo Osvaldo Bogado 0bc7fa7bf5 Small fix for the last commit, and a little fix for disable fog to really disable it :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4662 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-09 13:51:28 +00:00
Rodolfo Osvaldo Bogado d02426a8e9 mixed commit:
in D3D and Opengl:
fixed one nasty bug in texture loading where if a dynamic texture keeps his format but the tlut format is changed, the try or reloading the texture in the same texture could cause a hang if the size of the resulting texture is different than the original (size in bytes)
Applied a ugly temporal hack to the texture conversor to solve efb to ram misalignments and effect distortions.
in D3D:
Pseudo implementation of logic ops using basic blending: the first 8 operations are "good approximations", the remaining 8 are bullshit :) if someone have a better approximation to emulate this logic please let me know.
please test if i don't break anything in the process and test Mario kart wee you will get a nice surprise.:)
 

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4656 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-07 18:48:31 +00:00
hrydgard 0f0c77c299 minor code cleanup
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4645 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-05 14:01:29 +00:00
hrydgard f0bba97070 Delete the misnamed GlobalControl.cpp/h, move the (ugly) projection hack code that was there into VertexShaderManager where it belongs.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4644 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-05 13:56:23 +00:00
donkopunchstania e6d51e8ff4 Fixed 24 bit depth copies to RAM. 24 and 16 bit depth copies are now more accurate. Added an offset to DX copies to RAM and made half sized copies to a texture linearly filtered.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4635 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-12-02 04:17:18 +00:00
luisr142004 60352d92eb Wiimote: reapply the Upright wiimote option
D3D: add the EFB Copy option to complete Rodolfo's commit plus add the Overlay FPS and the Disable Fog options
also change the config dialog's behaviour a bit

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4622 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-28 05:59:46 +00:00
Rodolfo Osvaldo Bogado 5e31f22e50 small code reorganization.
Now efb to ram display correctly but still is misaligned by one pixel
please test and give me feedback

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4618 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-27 19:42:27 +00:00
Rodolfo Osvaldo Bogado 55dc7efaa4 corrected viewport and scissor test behavior in both plugins.
some code cleanup in d3d.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4605 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-23 14:08:08 +00:00
Rodolfo Osvaldo Bogado 19d7bb2c84 big commit, implemented depth textures with hardware support in D3D, so now they will be correct as in opengl. please test a lot because i only tested the ati path, nvidia path is "Theoretical" :).
Also reimplemented screen clearing as a color quad to support alpha blending when clearing as in the original hardware.
the funny thing is how is implemented peeking, as locking depth textures is not supported, implemented peeking copying the values form the depth texture to a r32f render target and then reading back the data.
please a lot of testing to this commit.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4599 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-22 02:37:00 +00:00
donkopunchstania 6e7395cef1 Try to do Z textures better. Z texturing does not work if early z or no z update. Corrected the Z texture bias used on 8 and 16 bit textures.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4596 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-21 02:49:46 +00:00
Rodolfo Osvaldo Bogado 802c112ad9 Well this commit has 2 parts:
first part if fixing, fixed, i thing, the flickering that everyone has reported, at least in my case i only have flickering in the one texture in one game and now is fixed. The other fix is not for an reported issue, is more a correctness fix, running dolphin with pix to review debug errors, result in a ton of warnings and error, now with this commit, at least for ati, there no more error or warnings, this means, correct management and state change, no accurate emulation, for this still a lot of work to do.
for this part of the commit please give me feedback and let me know of remaining issues

Te second part is the partial implementation of efb to ram copy in d3d, this won't brake anything because is commented but i commit this to ask for help from ector and donko in some errors remaining in the implementation related to differences between opengl an d3d.
if you want to test this you have to uncomment line 150 to 155 of bpstruct.cpp

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4594 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-20 18:46:30 +00:00
Rodolfo Osvaldo Bogado fe1a5142a7 a minor cleanup in xf registers, an some small bug fixes. please test and give me feedback
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4589 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-19 02:28:41 +00:00
bztdlinux f796d4d747 STAND BACK - NEWLINE POLICE
gcc spams warnings when newlines are not at the end of files.
reason: http://gcc.gnu.org/ml/gcc/2001-07/msg01120.html


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4582 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-15 22:26:39 +00:00
donkopunchstania f992fc6949 EFB to RAM in OGL and software plugin now work correctly when texture in RAM is a different size than the source. Corrected some block heights in texture decoder to fix copying certain EFB formats.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4580 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-15 20:14:03 +00:00
Rodolfo Osvaldo Bogado f8c2dcaa4e fix for re missing characters in both plugins, thanks to autoran for the testing. also modified depth efb copy behavior to work accordantly to this change.
in opengl  efb copy, set the destination texture format and not use argb always.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4575 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-14 23:15:09 +00:00
Shawn Hoffman 4622bd0c8b reapply changes from 4550-4551,4556-4559 correctly...sigh...some files were ignored by tortoisesvn, and myself :|
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4570 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-14 17:50:51 +00:00
Shawn Hoffman 06aa62504c revert to r4531, but keep the changes from the following revisions: 4533,4550-4551,4556-4559
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4566 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-14 17:08:32 +00:00
Rodolfo Osvaldo Bogado e56ca08b4f some minor changes preparing for future commits, and a correction to texture alignment that must solve the efb misalignments in various games
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4556 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-13 11:55:14 +00:00
donkopunchstania dee90fa7aa The WGP does not loop if the write pointer is set beyond the end of the fifo. Updated the video plugins this time.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4531 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-12 01:51:40 +00:00
Rodolfo Osvaldo Bogado c2a4e33313 Implemented secondary path for hardware with no multiples render target support, so please a lot of testing from people with problems in the last release.
corrected a little depth textures still broken but now at least i discover the reason, the ultra bad news for d3d lover is, the only correct way to implement depth textures will be do a firs depth only pass disabling blending. 
This is because blending is affecting the values stored in the depth texture, so to store the true values, blending mus be deactivated.
this will degrade performance but is the only "Correct" way in d3d 9. the other possibility is dx10 but that's a complete different story ;)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4526 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-10 12:45:03 +00:00
Rodolfo Osvaldo Bogado 0ac07e8aa8 Big Commit this will break a lot, fix a lot, but i thing is a good step:
Implemented all the correct format conversions in efb to texture copy.
replaced all the stretcrect calls with quad draws this must improve speed a bit.
A BIGGGGGGGGGG cleanup in the code and reorganization.
reimplemented zpeek using a secondary render target ( this still is buggy so many issues left)
please a lot off feedback.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4520 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-11-08 20:35:11 +00:00
Rodolfo Osvaldo Bogado 78fa929c70 Some errors in the values passed to e pixel shader caused the menu error, no they are fixed, thanks to LordMark for help me with the testing.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4490 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-31 13:40:53 +00:00
Rodolfo Osvaldo Bogado ec77ba3e99 fixed z textures, don't know where this is used but a fix is a fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4486 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-31 03:35:36 +00:00
Rodolfo Osvaldo Bogado 9a59619560 Extra small commit but ...
Fix Paper mario and any games that uses SETZSCALE or SETZOFFSET
c# is making me soft i don't see the cast error


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4485 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-30 22:28:59 +00:00
Rodolfo Osvaldo Bogado dd7f6f991f small code cleanup, and little fixing of errors introduced by mi in my first commit :(
fixed scissor test in direct 3d


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4480 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-30 04:14:43 +00:00
Shawn Hoffman 31e61da40d fix Jit64::fmrx (well, fixes soul calibur 2 SPS at least) cottonvibes wrote this :)
fmrx can do some different behavior depending on the current mode of the fpr, but we *seem* to not have a problem ignoring this behavior...
add a tiny comment to the PECopy register - some sources call the half_scale bit "mipmap"

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4476 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-29 04:01:31 +00:00
Rodolfo Osvaldo Bogado 7602f7ab3e rewrite the tev stages generator to make it more hardware like, thanks to godisgovernment for he documentation. Also make it faster using lockup tables.
thinking going to get a lot of -1 for this one but is the only for of really test it.
hope this fix something and don't break to much ;)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4475 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-29 03:28:38 +00:00
Rodolfo Osvaldo Bogado a31eb24955 small commit,but should fix 2 big issues:
* clear and flicker problem in d3d, backbuffer clearing was commented out, (if this was on right let me know and I'll revert).
* alpha problem introduced by my modifications to the tev, must been sleeping when i wrote that code, should be fixed now.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4471 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-28 02:00:13 +00:00
Rodolfo Osvaldo Bogado 08b2686d90 as sl1nk3.s say make the updates directly to the viewport and let the scale fixed in 2^24.
please test specially in paper mario and Killer 7 that where games where supposedly this was used.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4470 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-26 02:38:23 +00:00
Rodolfo Osvaldo Bogado 0511d6e185 some work on zscale and zoffset, don't know if this is correct but at least it seem to fix one or two games.
thanks a lot to chaoscode he make possible to test this on nvidia. please test this a lot and give me feedback :)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4468 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-25 23:10:30 +00:00
Rodolfo Osvaldo Bogado 227d363881 small code clean up:
d3d: remove the depth texture path it will not work so for now only lockable textures were available. i thing the only way will be a use a secondary render target and do a depth pass to mimic depth textures.
opengl: minor cleanup here and there and a possible fix to issue 1509, but not tested because in my system the errors remarked in the issue don't show.
commond: code reorganization an optimization in the pixel shader  generator, trying to understand the tev stages, make some changes to make the generator faster (not much only started for the alpha test and fog).
this changes try start solving the diferences bethen the hardware plugins and the soft plugin.
i hope with i don't brake nothing but please test this a lot.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4465 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-25 02:35:21 +00:00
Shawn Hoffman ac157105c5 small code cleanup: rename "dual core" stuff to CPUThread, bOnThread, etc.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4455 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-23 15:26:35 +00:00
Shawn Hoffman 520a2a68ac Change some default settings:
Core:
bLockThreads = false
m_EXIDevice[2] = EXIDEVICE_NONE
Video:
bKeepAR43 = true
iMaxAnisotropy = 1
bCopyEFBToRAM = true
Trying to find good high compatibility settings for default setup.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4453 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-23 05:48:54 +00:00
sl1nk3.s 833341696b Fix issue 1549, issue 1400, a crash when pressing reset while no game were running and better fix for issue 1556
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4451 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-22 19:13:22 +00:00
Orphis 7a2bad4efb OpenCL: Fixed and enabled CMPR decompression
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4448 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-22 01:42:21 +00:00
sl1nk3.s 4c3e405c47 Revert the the Fifo changes from r3984 (Pokemon XD still somewhat works) this should fix hangs/desyncs in a couple of games (burnout, metroid, spyro, soulcalibur, nightfire...) see issue 1524
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4442 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-21 00:01:07 +00:00
Orphis 094c73a080 OpenCL: Moved the OpenCL code from the compiled source to a separate file TextureDecoder.cl and added a .rules files to copy the updated version to the build directory.
Fixed RGB5A3 decoding with alpha
New CMPR decoding, blocks with no alpha are great, still have to figure the problems with transparent blocks. Disabled for now.
Added a better error reporting to the base OpenCL functions

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4439 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-20 00:55:07 +00:00
XTra.KrazzY 540f59ef07 OpenCL: More formats (thanks, orphis) RGBA8, RGB565, RGB5A3. Optimized the buffer creation. There is a visible performance boost.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4422 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-14 22:28:23 +00:00
nakeee 9f8a2986a2 Videocommon: setlocale for shader compilation, should fix problem with runaway , in certain locales.
Please test issues 1533 and 1496


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4418 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-14 01:58:39 +00:00
XTra.KrazzY fb60b10c7b OpenCL: Implemented I4 and corrected IA8 (huge thanks to Orphis for fixes, implementation and optimization)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4417 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-13 21:51:27 +00:00
XTra.KrazzY 9da9346274 OpenCL: Kernels are now more general...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4402 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-11 22:21:36 +00:00
XTra.KrazzY fc1c77b60d OpenCL: Set up ground for more texture formats. Implemented the IA8 format (still buggy, no transparency)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4401 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-11 21:14:02 +00:00
XTra.KrazzY 449abdb01d OpenCL: Solved the IA4 case (some byteswapping was necessary, hope there's a vectorized function for that). Some \n fixing I guess
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4399 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-11 20:03:55 +00:00
donkopunchstania 56214e9103 Moving pixel engine and command processor from core to video common. This will break previous save states. Adds decoding single pixels to texture decoder.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4391 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-10 21:19:39 +00:00
hrydgard 8af6280af2 Fix saving of the new d3d efb access option.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4385 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-08 21:59:40 +00:00
XTra.KrazzY e6f20f07f5 OpenCL: Vectorized I8 texture decoding and added a (too intense?) IA4 decoding method.
Not sure what's wrong with IA4 there...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4382 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-07 22:51:32 +00:00
XTra.KrazzY f52851ab9f OpenCL: Texture decoding is now two dimensional
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4381 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-07 21:51:40 +00:00
XTra.KrazzY 98db1a0ca3 OpenCL: More windows support and some unfinished work
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4380 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-07 21:30:36 +00:00
Sonicadvance1 5523f28b51 Better TF_I8 decoding via OCL. Can still get way better though. Seems XFB speed boost was a fluke
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4379 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-07 21:10:39 +00:00
hrydgard 9c45ac7e35 EFB Reads are so slow in D3D that I think we need an option for it. Here it is.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4378 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-07 19:54:56 +00:00
Sonicadvance1 16c6ec6e7e Woops, that is why getting work group size failed
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4372 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-07 07:44:35 +00:00
Sonicadvance1 059970e971 Fix XFB converting, silly mistake. Disable Texture converting ATM since it fails. And if can't read work group size, fall to 64, which is what my 8600GTS does. Tested XFB in Melee intro, got around 10FPS faster tPS faster then with CPU side
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4371 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-07 04:00:29 +00:00
Sonicadvance1 dde693afb8 Fix a few things I missed
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4370 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-07 03:11:52 +00:00
Sonicadvance1 0146f3f58f More OpenCL work, got XFB converting which needs more optimization. I haven't checked for FPS changes. My desktop isn't the best to test on anyway (Phenom 1, 32 stream processors). The package check doesn't work for me, so I just checked true if you compile with opencl=true. Requires a bit of cleanup still
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4369 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-07 02:48:21 +00:00
Rodolfo Osvaldo Bogado 19b8e6bc08 Sps fixed in all the games tested, code cleanup and reordering
implemented buffer format fall back to allow hardware that don't support lockable formats to run the games with Z peeking disabled, applied as well the patch suggested in issue 1494 please give heavy test to this commit

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4365 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-06 14:24:10 +00:00
Rodolfo Osvaldo Bogado 9d67518f71 I hope you all like this. Changes:
Opengl:
Reorder the rendering path to make it more generic, and a little bit faster i think.
Reduce the index Buffer size to make it more Friendly to older video hardware.
get rid of the remaining annoying sps (I hope).
D3D:
Implement the same path as opengl to make the plugins more similar and maintainable.
Fixed Peek_Z this means, Pushing stars in SMG Now Works.
Please give heavy testing to this changes and compare the performance with the old path.
Thanks to hrydgard for let me participate :).

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4353 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-10-02 14:03:07 +00:00
XTra.KrazzY c6f0335b62 OpenCL: More work on centralization (need SCons reflection)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4351 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-30 21:01:34 +00:00
XTra.KrazzY 4499444a86 OpenGL and OpenCL are NOT related! (Committed here are some scons fixes)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4349 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-30 12:58:02 +00:00
nakeee ffe12ec752 OpenCL: added opencl=true option to scons and fixed the case on the way.
Add ifdef for osx ocl include.



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4348 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-30 06:49:08 +00:00
XTra.KrazzY aa1fd81e37 OpenCL: A bit more work.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4347 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-30 00:39:32 +00:00
Sonicadvance1 fb258e3ca5 Base of OpenCL code
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4346 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-30 00:28:27 +00:00
hrydgard e6b30e574e Let's try rodolfo's fix of 4322
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4343 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-29 18:27:41 +00:00
Marko Pusljar d1f0294053 DSPLLE + 2 small fixes, many GC AX games are almost perfect (sound wise, ex. Super Monkey Ball 1/2), if PC is fast enough (3GHz C2D+), Zelda type games too slow to be testable
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4340 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-28 16:39:29 +00:00
hrydgard e102fdaac3 r4322 commented out an important Flush() call - restore that.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4323 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-26 21:00:04 +00:00
hrydgard 29808cdde2 OpenGL: commit rodolfoosvaldobogado's (what a name!) speedup patches.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4322 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-26 12:39:12 +00:00
hrydgard 7a8f6bdd6d D3D various: "Safe texture cache" option, texture replace instead of destroy/create when possible, a commented out "optimization" that didn't speed things up (use DrawPrimitive instead of DrawIndexedPrimitive when possible), reduce code duplication in Flush(), don't periodically clean out the shader caches since it's not really beneficial - shaders are cheap to keep. some code cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4302 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-19 13:14:55 +00:00
hrydgard dae1a68bfc D3D: minor vs constant-setting optimization, remove a stupid memcpy that doesn't do anything, don't see much benefit though :/ At least the PIX logs will be cleaner.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4301 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-19 10:46:25 +00:00
XTra.KrazzY a8270d50ee Tiny shader syntax fix that was here for a while now.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4285 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-16 06:33:05 +00:00
hrydgard 20922cf3f0 D3D: More reset fixes
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4282 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-15 21:49:15 +00:00
LPFaint99 ca7a5b36dc only load gameini settings if they exist
change D3D to use char[] for resolution settings in ini
warning fixes for FrameAui.cpp

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4273 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-15 08:13:45 +00:00
nakeee b7d6259405 Videcommon: removed double settings (how did full/window res work so
far?)


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4272 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-15 06:14:45 +00:00
Shawn Hoffman a08c801256 psyjoe's patch to shader compilation. ector/some "shader person" check this please :) looks reasonable to me though.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4267 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-14 06:25:00 +00:00
hrydgard c7431401be D3D: Fix 8-bit signed normals. Fixes lighting problems in Super Smash Bros Melee. misc tiny things
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4265 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-13 21:18:04 +00:00
hrydgard a7c70ddb66 D3D: Eliminate black borders, add 4:3 and 16:9 settings, and the widescreen hack. Unfortunately this temporarily breaks MSAA (in d3d only) until I have time to fix it.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4263 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-13 17:46:33 +00:00
hrydgard 73d2b3e968 more uninteresting cleanup, fixed a minor race condition when toggling efb copy mode
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4261 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-13 10:18:01 +00:00
hrydgard 2d93c654f0 Rename Config.cpp/h to VideoConfig.cpp/h.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4260 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-13 09:23:30 +00:00
hrydgard 512053fa5e Kill some horribly ugly hackery :( It's just not right to pass entire IniFile objects across DLLs. Only POD (plain-old-data, like int, float, char, char[] etc) are safe to pass across DLL boundaries.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4257 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-13 08:54:46 +00:00
hrydgard 700f2ff694 Lots of code and warning cleanup. OGL/D3D: Moved to a shared config class in VideoCommon. This lets VideoCommon code read the config without ugly hacks. Fixed various config race conditions by keeping a copy (g_ActiveConfig) of the g_Config struct which is updated once per frame.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4256 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-13 08:21:35 +00:00
hrydgard 52ea8a0fd1 D3D supports setting multiple shader constants at once, so let's add support for that. Very tiny speedup. Also remove the annoying black window in the background when configuring D3D before starting a game. Also make sure to write all values when converting normals - might help the cpu's write gather cache.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4255 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-12 15:00:08 +00:00
rice1964 e1a0f8884a D3D: Projection hack feature. Have also moved related functions and constant definitions from OGL to VideoCommon, will clean up the code better if it works for D3D.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4252 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-11 05:50:02 +00:00
rice1964 c046c27815 D3D: Minor bug fix and some code cleanup for DirectX API call reduction.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4244 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-10 03:36:32 +00:00
hrydgard 0a576c7508 Linux: Tons of warning cleanup plus workaround a nasty crash problem in StatusBarMessage.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4234 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-08 21:16:05 +00:00
Shawn Hoffman 3b76f6dc80 get rid of the '¯' chars in source code...non ascii chars are not really good to have floating around for no reason. http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml?showone=Non-ASCII_Characters#Non-ASCII_Characters
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4231 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-08 16:07:13 +00:00
John Peterson 1320e21ded OpenGL: OSD menu live resolution change fixes
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4212 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-06 15:11:21 +00:00
rice1964 c30ed92e75 Add some command line options to directly specify plugins. You can use "dolphin /V Plugins/Plugin_Video???.dll" in the command line to start Dolphin with the ??? plugin. This can be done also for other plugins. There are a couple of reasons to do so. For example, Dolphin compiled in DEBUG would often crash if loaded with non-DEBUG plugins. Therefore, you may want use to DEBUG plugins when running the DEBUG dolphin by giving all the command switches.
Also add some code to show the version of the plugin in the plugin configuration window title, so we can see clearly which version of the plugin we are using.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4208 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-06 02:55:14 +00:00
sl1nk3.s 5a21d72693 Fix screen flickering with frameskip on D3D plugin, also fix occasional hang when turning frameskip off
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4194 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-04 06:09:21 +00:00
hrydgard efc74c77a9 D3D: Basic EFB copy-to-texture support. Fixes star domes in SMG (but does not fix the pull star, need EFB reads for that) and some other things.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4188 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-03 21:56:08 +00:00
hrydgard baede3a7f3 Moving more things out of GL into VideoCommon...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4187 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-03 20:37:35 +00:00
hrydgard 2b1022f152 More tidying up - share the stats print between the two plugins, etc
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4184 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-03 19:42:45 +00:00
hrydgard 562a4e25ac Some housecleaning around the D3D plugin, start of preparations to share even more code with the GL plugin.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4183 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-03 19:24:16 +00:00
hrydgard 97af2f1126 GL/D3D: slightly more accurate and faster DXT decoding, thanks to Orphis
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4172 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-02 21:30:54 +00:00
death2droid 2be5d013e0 Add the wide screen hack by <---Does the person even have a user name?
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4171 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-02 21:30:19 +00:00
hrydgard 1e016dd522 Fix a vertex shader generation bug that crashed Super Monkey Ball. Better shader error handling. Random warning fixes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4170 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-02 21:19:35 +00:00
Marcus Wanners 50593397f3 Got rid of all of jp's ////////////////////////////// lines (nearly 500 of them)!
Yes, I used a script :D

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4169 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-02 21:00:45 +00:00
hrydgard c64b1ca5dc D3D: Fix nonpow2 textures (simply turn off the rect texture stuff since it's not necessary under D3D). some cleanup. Add a TODO (tip from Orphis)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4168 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-02 19:59:41 +00:00
hrydgard e97bc516e6 Warning fixes/suppressions(aui), assorted code cleanup, d3d vertex shader cache expiration interval increased.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4165 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-02 18:55:36 +00:00
nakeee b2533a5ef2 Fixed various warning fixes and potencial POD/crash bugs
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4156 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-02 07:59:06 +00:00
hrydgard 2599659022 D3D: Fix bugs in the shader cache, fixes crashes on x64. added some debugging stuff (only active in debug builds). assorted code cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4145 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-01 19:48:45 +00:00
hrydgard 0b5c993076 Misc : build fix for debug x64, assorted cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4127 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-31 22:42:10 +00:00
hrydgard d65fb1a30a D3D: Fix alpha test (I think, not tested much, no pun intended)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4124 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-31 21:47:39 +00:00
hrydgard 4968f6c29a GL/D3D: Attempt to fix problem with bad colors when starting a 2nd game.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4120 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-31 20:58:57 +00:00
rice1964 0dcf03b898 This should fix the per-vertex PositionMatrix, the famous "Posmtx" problem, for DX9. My DX9 plugin still crashes, for some other reasons. Verified with Luigi's Mansion, it almost works.
BTW, this is Rice from emutalk, one of the 1964 emulator authors, and author of Rice video plugin for N64 emulators.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4115 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-31 06:35:43 +00:00
rice1964 718c88ff6a Some optimization on the pixel and vertex shader generators. As tested on Zelda TP, these changes should be able to reduce the number of lines in the compiled pixel shader program by 20% to 30%, for example, from 38 lines to 28 lines after the generated cg/HLSL pixel shader compiled by the cg/HLSL compiler. These could means slightly faster rasterization on slower video cards.
Also fixed shader compilation errors for DX9 plugin by using correct pixel/vertex attribute names that are compatibile with DX9 HLSL shader compiler. Now the generated vertex or pixel shader programs will compile correctly in either OGL or DX9. 

However, DX9 plugin is still not fixed, even though the shader programs can be compiled now.



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4113 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-31 04:23:30 +00:00
hrydgard 8827c22c60 vertex shader generator: don't multiply z by two in d3d mode (thanks drk|razi)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4098 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-29 12:15:59 +00:00
sl1nk3.s 5831c95151 Re-enable CPU swap on XFB mode only, to avoid flickering in a couple of games
Fix for a dumb mistake from r4042 and doing it lazy-right :p

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4063 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-25 18:30:15 +00:00
omegadox 984988c5d3 GFX: revert of r4044
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4051 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-24 23:36:28 +00:00
omegadox 1427024a21 GFX: Possible fix for depth range
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4044 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-24 06:48:00 +00:00
sl1nk3.s 944844bfba Fix Pikmin PAL not booting thanks to LordMark for figuring it out ! :D
Added "AccurateFCMP" ini setting which fixes Nights, Paper Mario games...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4042 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-24 04:04:10 +00:00
sl1nk3.s 652639d1c4 Fix GXPeekARGB, this fixes Killer 7, and Wind Waker's pictograph quest :D
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4034 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-22 13:22:35 +00:00
omegadox d29088773b and its header...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3986 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-15 07:39:07 +00:00
omegadox 00ee24b451 ...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3985 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-15 07:36:24 +00:00
omegadox b71b0e3da2 GFX:
- FIFO changes - minor cleanup, code organization based on Nolan's changes
- Minor code cleanup
- CommandProcessor changes - Allow BP IRQ clearing for either raising or falling edges.
- Revived old SetFifoIdle code

Gets Pokemon XD to run, but will crash to any CPU-GPU desync. Other games like Metroid Prime, look happy with the new FIFO changes.

Please report any problems.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3984 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-15 07:33:35 +00:00
omegadox 5ac7105b66 GFX: New GlobalControl system - cleaner way to control hacks and for possible control over other parts of the video code (video debugger control).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3982 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-15 07:20:37 +00:00
omegadox 7aede7309f GFX: Cleanup - Move OGL's GetBlockHeightInTexels and GetBlockWidthInTexels code into VideoCommon.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3962 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-11 20:36:13 +00:00
omegadox bcf7b2112b Small fix for TexDecoder_GetBlockHeightInTexels, but see no noticeable changes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3961 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-11 13:58:35 +00:00
Shawn Hoffman 5be34cd7e5 random small fixes - fix debug builds, dump ucodes on PAD_BUTTON_X, get rid of a never-closed FILE*
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3959 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-11 00:35:07 +00:00
nakeee 9f81006bda make DLCache compile on linux, required some weird casting so tell me
if something broke


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3957 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-10 06:18:10 +00:00
hrydgard 6003c9ecd2 Frameskipping more aggressive (minor speedup, plz report any serious problems). Initial display list cache implementation, disabled for now. Various cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3952 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-09 11:03:58 +00:00
XTra.KrazzY 51ddedf512 Frameskipping! Complete with GUI! Even my most naive approach resulted in great speeds, even with graphic-intensive games such as Pikmin.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3949 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-08 01:39:56 +00:00
nakeee 45a71bf3ef DSPLLE: fix some comments, returned andc and orc (according to tests)
but andc'ls still behaves strange and we couldn't merge them together.



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3915 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-31 15:21:35 +00:00
Nolan Check 8ab4814d73 Don't use lookup tables. It's better to use CPU registers and reduce memory accesses.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3909 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-30 20:29:52 +00:00
XTra.KrazzY c86d2e5129 Now ALL copyright dates are fixed to the legally correct year: The year in which the project began. Now we don't have to change it every year :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3898 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-28 21:32:10 +00:00
death2droid 73a7686044 Fix up all copyright dates.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3886 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-26 11:51:40 +00:00
omegadox 7f00960a32 Log unknown fog types in Warn log, and tiny code cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3885 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-26 11:13:56 +00:00
omegadox e4a9faeba4 GFX: updated Dates, code formatting cleanup, code cleanup / organization, some unknown BPs uncovered, fixed OGL's config dialog bug, added another shader
DSPHLE: Some warning fixes and added some logging for unknown voice cases
Please report if anything has broken.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3884 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-26 09:52:35 +00:00
Nolan Check 2ab09ecf57 Hell, just switch to fifo.cpp from r3854.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3877 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-23 22:32:21 +00:00
Nolan Check 758d5c234d Corrections to r3875.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3876 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-23 22:02:03 +00:00
Nolan Check ce8b679d76 Revert most of r3855.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3875 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-23 21:17:14 +00:00
XTra.KrazzY 3c9b5bbf7b Fixed the load-state memory leak, also fixed various other savestate issues. Found (probably) the cause of load-state crashing Dolphin: BPWrites. Tried to put a CriticalSection around BPWritten but it only causes Dolphin to hang when loading a state. Can someone find why it hangs?
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3873 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-22 22:50:52 +00:00
Nolan Check 5b6b732378 Simplify fifo code
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3855 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-20 01:10:00 +00:00
daco65 d703b01f0c do the rounding in the if, shouldn't cause trouble afaik. (pso kept spamming logs under, cause xfblines was 574.205566)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3851 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-19 11:03:31 +00:00
Nolan Check 6f28539ccc Rename scale_something to scale_invert. Plus, sneak in a tiny Thread.h change.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3845 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-19 08:24:30 +00:00
hrydgard fd70f99f04 Roll back r3833 for render targets but keep it for static textures. Most mirroring issues are OK and we shouldn't see any slowdown.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3844 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-19 08:17:41 +00:00
Nolan Check bddb8c8b97 Seems to fix issue 1131. Please test Real XFB mode.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3838 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-18 20:38:35 +00:00
hrydgard 3ad0db6830 GL: Delete code for GL_TEXTURE_RECTANGLE_ARB in case of non-pow2 textures - all modern GFX cards that can run Dolphin should support non-pow2 textures anyway. This removes some complexity and reduces the numbers of pixel shaders that need to be generated in some situations. Also fixes some texture mirroring problems. Let me know if this breaks things on ATI for some reason.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3833 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-18 11:26:58 +00:00
Nolan Check ccfc004161 CP: Replace a couple spin-waits with event signals.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3828 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-18 06:16:24 +00:00
Nolan Check a5d65b3b22 No more SleepCurrentThreads in Command Processor. Some Fifo cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3822 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-17 22:57:02 +00:00
omegadox a73dd21ee9 Some minor changes to VideoCommon, improved SawWave sound, the denied sound in ZWW sounds better (compared it to real HW to be sure).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3810 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-15 21:26:49 +00:00
sl1nk3.s 3bc8eb7eaf Fixed one of the two remaining crash on Stop (issue 600), and removed some setup defines which are now useless anyway.
There's an attempt to implement Peek_Color too, probably done wrong :P

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3799 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-15 15:09:20 +00:00
Nolan Check f338d5c44c Code cleanup. Juggling rectangles. I'm about to investigate the problems with Real XFB's in PAL games, so I wanted to make sure all our rectangles were cleaned up and organized.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3794 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-15 00:51:24 +00:00
Nolan Check d779554ff3 Atomic operations library.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3775 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-13 05:38:34 +00:00
Nolan Check d85f5a6937 Rearrange LogManager includes. The main purpose is to make it possible to modify Thread.h without recompiling the whole entire project.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3770 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-12 21:58:32 +00:00
Nolan Check ffb1f411d8 Use events and memfences for EFB accesses. Also, Single-Core mode now works again.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3750 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-11 16:52:34 +00:00
Nolan Check dc7d9ab998 Switch to Video_BeginField; hopefully fix or reduce some video stability problems by using Events.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3740 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-11 02:34:16 +00:00
LPFaint99 a41c1b2d0a add *.user, Win32, and x64 build dir to ignore list for DebuggerUICommon and Unit Tests
add *.aps to ignore list for DolphinWX dir
add eol-style native to 120 or so files

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3689 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-06 02:10:26 +00:00
hrydgard 90a2096a24 Assorted cleanup, perf counter logging, and minor fixes that have been accumulating on my hdd :p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3663 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-03 18:33:28 +00:00
sl1nk3.s 936225eee4 Fix a nasty dualcore hang in EFB read (see r3658 comment...)
Also fix an issue reported by baby.lueshi (issue 1074) in nJoy related to half press button being always pressed when unset.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3661 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-03 15:35:31 +00:00
XTra.KrazzY 3ddbb094ab 1. Savestates should now be super-stable (but you have to save AND load)
2. AccessEFB will probably not hang (tell me if it does)
3. Stopping should be a little bit faster

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3658 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-03 10:00:09 +00:00
hrydgard 50ccffd0a6 OpenGL: Fix flickery crap graphics in Mario Galaxy. Was an uninitialized variable in the shader.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3654 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-02 23:16:30 +00:00
XTra.KrazzY 7a05aafe39 EFB Access now works from both Dual Core and Single Core modes. Thread-safe.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3644 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-02 10:16:06 +00:00
Nolan Check c2e0225aa3 Move to new Virtual XFB system which correctly handles games which store multiple XFB's in memory. More OpenGL cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3591 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-29 07:30:48 +00:00
Nolan Check 5717f1f15b Grok EFB pixel format to determine whether render target has alpha, thus fixing the "Stage Clear" screen in SSBM.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3588 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-29 00:52:54 +00:00
hrydgard 3d9279a73f Graphics: (faked) bounding box support. Helps some Paper Mario effects although they're still a bit glitchy. Might also help other games? Enable with the #define in VideoCommon.h. Since there might be a speed hit it's off by default.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3580 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-28 20:04:07 +00:00
hrydgard dfdfbd4a6a Delete some obsolete junk, in zelda ucode and in gl plugin.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3577 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-28 17:58:52 +00:00
Nolan Check ade9479005 Display buffer flips are now triggered by the CPU thread through the Video_UpdateXFB function. This is a fairly significant change of behavior, but it improves performance.
Also, render target code is cleaned up. Post-processing shaders now work with multisampling and Real-XFB mode.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3545 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-26 08:57:53 +00:00
nakeee 6b2855de5e revert last 2 commits
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3533 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-22 09:31:30 +00:00
omegadox 5bcf69cbd6 Forgot to add the source files...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3532 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-22 07:44:20 +00:00
omegadox 6de0cd1e4b They should be called SU Registers (Setup Unit/Rasterization). BP (Bypass) is really the name of the commands that are passed in.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3531 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-22 07:40:28 +00:00
omegadox cfe3f77ccf Some commenting and added some unknown cases to BPStructs, see: http://code.google.com/p/dolphin-emu/issues/detail?id=360#c90
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3530 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-22 01:46:58 +00:00
Nolan Check 91ec07a049 Remove delay in Fifo when CP/GP distance is 0. It's a bad idea to sleep for a whole MILLISECOND when we only have about 17 milliseconds to complete a frame.
This fixes slowdown in Wind Waker's Deku Tree room in dual-core mode.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3513 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-20 13:07:55 +00:00
nakeee 75045807a7 linux compile fix, I'm not sure it was right of me to remove the mmsystem include (was it used?) but if it's
for the timer function please put it in Timer.h and not in each seperate file.
(And yes, I have a script that does that).


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3448 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-15 06:39:26 +00:00
John Peterson 5c04af50a4 Attempt to calculate actual refresh rate (i.e. a CPU-GPU synced Mhz), no real success. Anybody have any ideas?
Is there no indication from the game when the screen refresh should occur? No, not what I could find, we currently calculate the refresh rate and m_VBeamPos from the CPU ticks progress. That works perfectly if the CPU and GPU is perfectly synced as in the single core and no-idle skipping mode. So I guess it's possible that the game doesn't indicate when the screen should be refreshed, but rather that the hardware calculate that from the CPU ticks progress. That leaves us with a problem in the dual core and idle skipping modes to calculate a CPU-GPU synced CPU ticks progress.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3447 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-15 04:30:02 +00:00
donkopunchstania 77c7161e7d Add projection hack back. The previous commit helped, but did not fix all the problems. Projection hack values may need to be changed.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3428 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-13 19:36:19 +00:00
donkopunchstania fcd7fa997b Possible fix for projection hacks
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3427 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-13 17:44:14 +00:00
John Peterson 33a0f0838b Debugging: Added 'insert nop' to menu, added 'show history' code for interpreter mode
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3388 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-09 05:26:39 +00:00
John Peterson 3b55c26367 OpenGL: Changed the AVIDump framebuffer source to the same as for screenshots
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3374 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-08 10:16:08 +00:00
Marcus Wanners 4f057ecb0b Compile fix :p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3323 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-04 16:33:48 +00:00
Marcus Wanners 475b4afb1f Got rid of warning (see http://code.google.com/p/dolphin-emu/issues/detail?id=360#c92).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3322 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-04 16:25:53 +00:00
death2droid 254edc3813 Some more modification of texture dumping and loading.
They now use gameID instead of game name for the folders.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3247 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-16 01:21:57 +00:00
death2droid b6cfaf5653 Added features to hires loading and texture dumping so it now dumps the files into a specific folder like for Mario Party 7 the textures will be dumped into a folder named Mario Party 7.
For texture loading it now only checks the folder with the same name as the game.
Like same as before moddified texture of Mario Party 7 would go in the folder named Mario Party 7 :P


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3241 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-15 12:28:32 +00:00
death2droid 80e2052372 Make some updated to hires texture loading ect.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3235 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-15 07:07:24 +00:00
donkopunchstania 14a67bc8bc Changing where depth is read. Trying to use the same depth buffer GL uses when copying depth to a texture. This eliminates some quirky code and gets depth copies working in AA, but may not work on older graphics cards.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3234 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-15 02:39:55 +00:00
death2droid d0653aa53a A attempt for a fix for the Zelda TP Bloom hack
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3228 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-14 06:28:10 +00:00
omegadox 136dc16f94 Possible fix for S3TC Texture Decoding (Grass in ZWW is now properly alpha tested), and some code formatting cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3224 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-13 23:37:26 +00:00
death2droid 5cefdb2c4f Small tiny fix to repair some of the hacks.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3216 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-13 13:32:00 +00:00
death2droid 03b0936fa1 Clean up of OpenGL hacks.
Removed now useless code.
Also fixed a problem with the iso properties.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3215 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-13 13:28:49 +00:00
Nolan Check dcad8a779d TextureDecoder now indicates I4 and IA4 texture formats. It also decodes paletted textures more efficiently.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3213 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-13 02:06:02 +00:00
hrydgard e7af5a31bd Disable PC-native DXT texturing. Too many problems for now.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3203 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-11 19:04:46 +00:00
death2droid 7011b9c1e4 Newer version OpenGL game hacks by val532.(Has a lot better way of handling specific game hacks)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3196 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-11 06:40:03 +00:00
death2droid be45b223bb A fix by baby.lueshi that fixes the problems with rev 3187
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3190 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-09 07:55:30 +00:00
death2droid 8e535bf2c0 Revert r3187 causes games to return lots of errors.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3189 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-09 06:25:03 +00:00
Nolan Check b277102796 Use correct width and height for compressed textures
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3187 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-08 23:33:23 +00:00
Shawn Hoffman 79aa90b876 really fix SOIL-related troubles, i think :p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3183 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-08 16:41:08 +00:00
death2droid 08179aa16c Fix windows build problem with SOIL
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3177 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-08 11:20:27 +00:00
nakeee 1e07b26356 Move soil to external, this breaks windows build until deathroi will commit the windows part
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3175 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-08 09:31:57 +00:00
Shawn Hoffman 9414d02011 add missing file HiresTextures.h
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3171 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-07 18:46:07 +00:00
death2droid 14f9d84e60 Forgot to upload some files crucial to SOIL
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3169 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-07 09:32:26 +00:00
death2droid 58058311f4 Fix some problems :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3168 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-07 08:56:20 +00:00
death2droid d0304dc997 Add hires texture support to OpenGL
Currently still only dumps files as .tga but supports loading as .png, .bmp,.tga , .dds

This is by  baby.lueshi

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3166 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-07 07:43:56 +00:00
Nolan Check 3ba23768e8 Add PC-native DXT1 support to VideoCommon and VideoOGL. Thanks to XTra.KrazzY and death2droid.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3159 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-06 02:10:07 +00:00
Shawn Hoffman c25346773d revert r3060, instead call RecomputeCachedArraybases() once on init.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3065 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-24 16:40:58 +00:00
Shawn Hoffman 6c29abe2ef fix existenze demo! warning: this may be a bad hack :( paging ector
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3060 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-24 03:59:32 +00:00
donkopunchstania 93348abc18 Created a free look utility which only works on win32 right now. It lets the user fly around with the mouse and keyboard. Had to add some ugly matrix functions to the math utilities.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3005 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-19 10:10:45 +00:00
donkopunchstania 66ca49d3b8 revised how texture scaling is handled. it now works correctly when adding output together from indirect stages which use power 2 and non power 2 textures and it is simpler.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2972 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-15 03:55:38 +00:00
nakeee 5f862cf297 more scons build fixups
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2960 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-12 21:30:22 +00:00
hrydgard f6474b98a8 DSP assembler: Error message improvements.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2956 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-12 13:12:42 +00:00
donkopunchstania 2b2c2afa3c Did clean up of indirect texture look up and fixed some bugs related to indirect unit.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2954 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-11 07:05:57 +00:00
nakeee e84ec7855a smg projection hack, taken from http://forums.dolphin-emu.com/thread-165-page-3.html
maybe we should just make configurable linear trasnformation hack;)


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2949 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-10 10:25:53 +00:00
omegadox 449aa57de3 Some commenting fixes and use INFO_LOG again.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2923 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-08 01:20:52 +00:00
omegadox d1c9d2463c More commenting.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2921 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-07 21:17:15 +00:00
omegadox 13ac45db1a More commenting and cleanup and added another BP Function.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2903 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-06 18:20:28 +00:00
XTra.KrazzY e3e7c88ff1 Added separate log for DSP LLE.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2901 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-06 17:12:05 +00:00
omegadox 80d48a08d8 Change "BreakPoint" to "Bypass", YAGD says BP REG is a "Bypass Raster State Register"
Also some cleanup in BPStructs and I think this should be SETTLUT not LOADTLUT, because there is already a LOADTLUT earlier in the reg list.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2898 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-06 16:10:45 +00:00
omegadox 67834f960e Direct3D9 plugin now uses BPFunctions and removed its BPStructs. Some cleanup and commenting in BPStructs.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2897 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-06 15:24:40 +00:00
omegadox 1ad5c7c9aa VideoCommon: Fixed a case when in debug build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2887 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-05 20:14:23 +00:00
omegadox 1578e3e195 Recoded and moved BPStucts to VideoCommon. Some cleanup in PixelShaderManager. TODO: Have DX use BPFunctions. Note: Compiling DX plugin will not work atm.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2870 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-05 10:49:19 +00:00
Shawn Hoffman ec8548dc00 last commit missed AVIDump.h
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2782 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-28 21:27:48 +00:00
Marcus Wanners 711f08c29b Added support for dumping avi files (thanks baby.lueshi). Use Microsoft Video 1 codec for starters. Make sure to check the dump rendered frames box in the video plugin settings, or it won't work.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2781 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-28 21:07:16 +00:00
hrydgard 7d910a5e4a Assorted cleanup and comments.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2693 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-20 18:13:31 +00:00
nakeee 2d167fa3f0 remove some unused files
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2678 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-18 20:24:08 +00:00
Shawn Hoffman 2301d072a6 nakee's new logmanager. added a console window for windows builds (prints to parent console on non-win32). also fix some random wxw bugs: main window's position is saved when using debugger, disabling windows from the tools menu are saved settings, some other small fixes
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2675 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-18 17:17:58 +00:00
omegadox 845204c227 Added option "Show EFB Copy Regions" to find out which games are heavy on EFB-Copy. Changed Dst Alpha Pass option to "Disable Dst Alpha Pass".
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2665 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-16 07:54:44 +00:00
donkopunchstania 90254bd924 Change destination alpha handling. The blending method introduced in rev 1921 was not the correct way to do it. This way was suggested by hrydgard in October and I should have listened. A simple pixel shader as hrydgard suggested cannot be used because the alpha is not set if the pixel is discarded due to failing depth (after z texture) or alpha (result of tev stages) tests. There is a bit of a performance hit so there should be an option to disable the second render pass which sets the alpha because it is probably not needed most of the time.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2662 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-16 02:47:48 +00:00
hrydgard b1b2868c8b Fix the nasty black fringes seen around alpha tested DXT textures in some games.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2661 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-15 11:34:52 +00:00
hrydgard c70a472522 A fix to D3D NativeVertexFormat. Might not fix much, but should be a step in the right direction. Other misc bits and bobs.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2644 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-10 22:51:17 +00:00
XTra.KrazzY 05d06090fd Minor D3D changes
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2625 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-08 23:19:02 +00:00
hrydgard c6ffcec991 First version of MSAA code added. No UI yet. No CSAA yet. Doesn't work in Zeldas and Metroids for unknown reason.
Automatic texture invalidation when using copy efb to ram (fixes weird flickery scanner in metroid 2). 

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2617 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-08 19:19:51 +00:00
XTra.KrazzY 148934ff99 Fixed texture overlay, clarified CPMemory STATE_TO_SAVE
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2614 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-08 01:19:33 +00:00
XTra.KrazzY c674e6330f Allow for self shutdown from video plugins.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2611 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-07 23:34:16 +00:00
LPFaint99 3f44ccb75e eol-style native update, small warning fix in EXI_Channel.h
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2591 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-07 08:35:01 +00:00
omegadox 5ce9ffeab7 Projection fix, Projection 1 hack changed to ZTP Bloom hack. That bloom is a bugged because of something else, not because of the projection. The proj hacks happens to makes it show.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2573 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-06 21:56:13 +00:00
hrydgard 02a4b49df1 just some compiler warning cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2562 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-05 22:35:06 +00:00
Marcus Wanners c0cf641779 Linux compile fix.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2559 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-05 15:58:14 +00:00
Marcus Wanners 432ea89b49 Compiler Warnings: Mismatch edition. Also fixed some conversion warnings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2557 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-05 15:16:50 +00:00
donkopunchstania cb121dab66 Fix more cases where shader compilation can fail if there are no tex gens.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2556 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-05 05:10:25 +00:00
nakeee 0708677b53 Added LOGLEVEL support, release will now defined LOGLEVEL 2 (errors and warnings)
LOGGING should not be affected. 


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2550 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-04 22:29:03 +00:00
hrydgard 9ef42aefac Revert to slightly tweaked version of "old" safe texture hash. Hopefully fixes issue 636. Does somewhat break pokemon colosseum w/ safe texture hash, but that games works fine with the unsafe texture hash.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2532 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-02 23:01:18 +00:00
daco65 44ada0c514 i think i forgot something
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2528 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-02 21:21:42 +00:00
daco65 4cb7f2f490 lets retry that change from omega but this time keep the projection hacks >_>
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2527 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-02 21:17:16 +00:00
omegadox 56becf28db Revert 2521.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2524 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-02 19:38:38 +00:00
omegadox 17814912e5 Some cleanup, projection hacks remove, the projections might be correct now. ZTP Bloom works and MP1 Heat Visor works, I tested many games, and good results. Please test more and report back. Also added in fix for Issue 677.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2521 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-02 13:04:50 +00:00
nakeee 4e9746877e an attempt to clean up the logging a bit
1) The new ERROR, WARN, INFO, DEBUG _LOG macros were used 
	ERROR,   // Bad errors - that still don't deserve a PanicAlert.
	WARNING, // Something is suspicious.
	INFO,    // General information.
	DEBUG,   // Strictly for detailed debugging - might make things slow.
2) Made all LOG macro use into some of the logging level supporting macros
LOG is commented out on linux can someone try it on windows? (it's in Log.h)
3) Added ERROR_lOG next to each panic alert

I hope I helped making the logs a bit more useful/readble



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2510 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-02 01:49:16 +00:00
hrydgard 7607d6dc6a revert the mess i made in the d3d plugin. Add way to use HLSL directly without going through Cg. Not that the results look much better... i do see shadows of spinning cars in Burnout 2 after clicking around in the dark. Then it crashes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2504 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-01 12:07:34 +00:00
donkopunchstania e004800e68 An alert is displayed once per run if pixel shaders or vertex shaders fail to compile. Resources are cleaned up if shader compilation fails. Tev coords are zeroed in the pixel shader if there are no tex gens.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2493 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-03-01 00:57:39 +00:00
XTra.KrazzY 7d4e374c21 forgot a file (I hate it when it happens)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2489 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-28 23:17:54 +00:00
XTra.KrazzY d5df9f638b Fixed D3D booting. Now for the VS/PS compilation errors
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2488 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-28 23:15:10 +00:00
Shawn Hoffman 1577dc6893 more build fixin'
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2487 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-28 23:02:46 +00:00
hrydgard 5e06540245 revert a small change that broke gl. i'll find a generic solution later.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2485 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-28 22:35:34 +00:00
hrydgard ecbfec2a13 THIS BREAKS THE D3D PLUGIN FOR THE NEAR TERM. Resurrect an old patch that moves D3D over to the common shader generator framework. Needs a lot more work.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2484 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-28 22:10:38 +00:00
hrydgard 1a2a320652 Increased render target size to the true EFB height of 528.
This changes fixes the bloom effect in Beyond Good and Evil.
It also makes the AutoScale feature almost mandatory since it looks silly without :)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2475 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-28 19:02:37 +00:00
hrydgard 6dc4194767 OGL plugin: +Autoscale option (attempts to remove borders, even without XFB). Lots of cleanup, especially around aspect ratio and similar stuff. MP2 scanner still broken, wonder when that happened?
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2470 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-28 16:33:59 +00:00
hrydgard 4bdb4aa0d1 Merge large parts of nakeee's "Soap" branch into trunk, after fixing a few crash bugs in FileUtil.cpp.
Not really anything interesting, just some better comments, some slightly more portable/cleaner code in places.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2459 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-28 01:26:56 +00:00
omegadox 8c93e39ddd Linux build fixes and some warning cleanup for GCC
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2406 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-24 05:20:52 +00:00
hrydgard 3b7875bf3f just some minor cleanup (texdecoder, dsoundstream)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2394 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-23 19:47:58 +00:00
LPFaint99 473cd01181 UUpdate svn:eol-style=native ( r1438 ) for Source/*.h
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2385 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-23 06:17:57 +00:00
LPFaint99 578c402d2c Update svn:eol-style=native ( r1442 ) for Source/*.cpp
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2384 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-23 06:15:48 +00:00
hrydgard 68f5cc1873 Attempt to workaround some stop hangs by using MsgWait instead of Wait. change order of dsp / video shutdown. some comments.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2379 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-22 22:49:42 +00:00
John Peterson 927815bc9b Core Stop and Start: Added alternative separate thread timer/loop based waiting, instead of same thread loop waiting. You can try it with the SETUP_TIMER_WAITING option in Setup.h.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2375 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-22 21:16:12 +00:00
XTra.KrazzY 16584c83d1 (Itsy Bitsy) Reindentation.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2373 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-22 18:15:31 +00:00
XTra.KrazzY 0a3f193cbc (Tiny) Collapsing
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2372 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-22 18:13:50 +00:00
John Peterson 42101f0ce6 OpenGL: Added a Setup.h option to avoid another annoying WaitForSingleObject() hanging. WaitForSingleObject() in Fifo_ExitLoop() would hang the thread it was waiting for when it arrived at Callback_PeekMessages(). Can't these waiting loops be replaced by a timer somehow? They are pretty ineffective if they hang the loop they are waiting for all the time.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2359 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-22 06:47:27 +00:00
XTra.KrazzY 691be5eec4 naming conventions...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2354 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-22 03:49:50 +00:00
omegadox 2b48640441 small cleanup in OGL/VideoCommon and small fix to ARCodeAddEdit by slink
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2346 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-21 23:56:10 +00:00
XTra.KrazzY ca47268669 Vertex Shading / Projection Matrix done right (D3D)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2343 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-21 17:17:24 +00:00
hrydgard a1685984a0 Forgot to check in this.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2338 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-21 13:48:22 +00:00
hrydgard 28cbd0a6ba CPlugin had a non-virtual destructor. This fixes that, plus reindents a bunch of code.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2332 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-21 12:07:03 +00:00
donkopunchstania 5a66927610 Fog uses depth from z texture if it is available.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2330 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-21 06:59:44 +00:00
omegadox 228652b070 Some cleanup in OGL plugin and VideoCommon
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2329 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-21 02:42:35 +00:00
hrydgard e6ca85c059 Fix for a single core mode stop-hang. Fix a build error in IL mode.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2328 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-21 00:54:52 +00:00
hrydgard 6cd34b318f The Mega Change Of Doom - or, fixing Stop. Almost. At least it's better than before. However, the OpenGL plugin seems to lose textures a lot between game restarts :P I think the GL plugin needs to do a lot more cleanup.
This change also includes tons of minor code formatting cleanup. Yeah, should've separated it ... sorry :(

Kills the old CPUCompare support. I'll resurrect it if I need it again, right now it mostly clutters the code.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2321 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-20 22:04:52 +00:00
John Peterson 5746ed490c OpenGL: Trying a new function to fix glScissor() and glViewport() when bpmem.copyTexSrcWH is not 640x480. It's only enabled with g_Config.bStretchToFit and without g_Config.bKeepAR to test how it works. Hopefully I have not broken all other modes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2310 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-19 06:52:01 +00:00
donkopunchstania 14ab646978 fog is done in pixel shader but needs to factor x adjustment
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2309 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-19 04:41:58 +00:00
XTra.KrazzY c5aed83513 Fixed texture overlays. Can I remove the OVERLAY_TEXFMT definition? It just makes the code look messy.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2306 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-19 01:24:33 +00:00
XTra.KrazzY 767d54d56f Fixed back the r844 projection hack. If it's called "r844" then it should stay AS IT WAS in r844! :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2299 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-17 22:54:30 +00:00
XTra.KrazzY f33997e686 TGA Header Fix in Linux
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2296 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-17 22:23:06 +00:00
magumagu9 1e150bccdf Build fix for r2283.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2285 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-17 02:42:21 +00:00
omegadox 7a276e687e Added more overlay stats options.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2268 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-15 20:49:59 +00:00
hrydgard c49f969563 vertexloader_pos cleanup - remove the branch per vertex. not much of a speedup though.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2256 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-15 14:46:17 +00:00
hrydgard 6deb87c176 VertexLoader: Change some pointer arithmetic to array syntax. should have no effect on performance.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2255 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-15 13:45:03 +00:00
hrydgard 4f471ffeb6 color vertexloader: make read24 safer, speedup direct 8888 a tiny bit
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2253 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-15 13:08:21 +00:00
hrydgard 232e961b6f Sort vertex loader debug statistics by number of verts loaded - now easy to identify the heaviest vertex loader in games.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2252 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-15 12:38:25 +00:00
omegadox 71d9832004 Linux compile fixes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2246 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-15 05:43:48 +00:00
XTra.KrazzY efa5fe5eb7 New compact texture type for OGL/D3D: IA4. Thanks for the IA4->IA8 unpacker hyperiris! Too bad that D3D supports IA4 natively while OGL is a bit buggy (treats LUM4_ALPHA4 as LUM8_ALPHA8).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2238 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-14 09:04:40 +00:00
XTra.KrazzY acb3d1b23d New compact texture type for OGL/D3D: IA8
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2233 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-13 14:14:45 +00:00
XTra.KrazzY 0f8c866612 Tiny: Unnecessary function removal
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2226 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-12 22:35:05 +00:00
XTra.KrazzY e557e090dd New compact texture type for OGL/D3D: RGB565
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2225 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-12 22:32:33 +00:00
XTra.KrazzY d2d097fba5 Committing magumagu9's work on texture decoding transferral to OGL, I added DX9 support. Speed seems to have increased but I'm not sure. See issue 581 for more info.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2222 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-12 13:54:08 +00:00
hrydgard e979db862c Convert some ugly macros to templates.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2189 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-09 21:24:32 +00:00
hrydgard d209d4a577 Cache vertex array pointers, a la magumagu's idea. Misc other stuff. Should give very minor speed boost.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2185 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-09 20:35:30 +00:00
donkopunchstania f5f99e8f04 clip space coordinates are now available in fragment shader because depth needs to be computed there instead of the vertex shader. computing it in the vertex shader causes incorrect results sometimes. worked on z textures but 8 bit z texture still is not correct because it breaks SSBM. RE0 now looks ok.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2163 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-08 22:08:20 +00:00
hyperiris c450e44b08 optimize memory access. reduce Memory_Read_U##_type call(it uses Memory::GetPointer, which is complex), and gain speed, may be 1 or more fps faster, I've tested on zelda tww,tp, starfox assault only.
Please review and may be the code need clean.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2144 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-08 13:08:58 +00:00
hrydgard 1d0e8ddf84 more info in the vertex loader debug display
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2128 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-06 19:52:23 +00:00
nakeee 7bb2aee235 compile fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2112 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-04 17:46:22 +00:00
nakeee ad88b27c76 attempt to get rid of another __LOG crash
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2110 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-04 17:29:12 +00:00
XTra.KrazzY 77215fd27c Joined work of nakee and mine, cleanup the logging code a bit.
This solves the random __Log symbol and crash problem on linux
Please tell us if you find problems in the logging code


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2109 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-02-04 15:28:39 +00:00
memberTwo.mb2 ac80c04eab XFB in SC reverted back to its previous behavior (thx donko). But still hacked in DC (still a FIXME).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2019 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-27 20:59:27 +00:00
nakeee 2e92b94e4a Compile fix on linux
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2005 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-24 22:24:44 +00:00
memberTwo.mb2 2a13bedfc8 break my BOOLs
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2002 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-24 22:02:27 +00:00
memberTwo.mb2 1e7655b5db 1) XFB in DC proposal. This impact video plugin interface. WARNING: XFB_Draw is not CPU->VI dependent anymore. It's up to GP now. Except for some 2D homebrews which never use GPfifo&CP but direcly XFB. Well, in other words: emulated VSync is uncorrelated with CPU timings now. Tell me if it's too much hacky.
2) DC/GPfifo work: GP quicker to react. PeekMessages at a more steady rate.
3) Fix XFB address to avoid crash like with Animal Crossing gc. TODO: VI regs need proper typedef and logic.
4) Few misc. changes on the fly.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2001 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-24 14:43:17 +00:00
omegadox 8f98f0b778 Some warning and code cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1998 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-24 00:45:46 +00:00
magumagu9 7d3dbde234 Don't skip the bottom half of the texture; fixes the text in
Gamecube Tales of Symphonia with safe textures on.  I haven't looked too 
carefully at exactly which textures are affected, though.



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1900 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-17 20:46:18 +00:00
memberTwo.mb2 acc062a2c1 More work on texture cache. Texture address is most of the time the cacheEntry index (as it was before r1871) to help CopyRenderTargetToTexture (fix it still a TODO). But not when texture format is tlut dependent to fix MP1 perf issue.
Fix tlut overrun.
Change TexDecoder_GetSafeTextureHash to fix Pokemon Colosseum and improve speed (we may need to tweak hardcoded value there -> TOTEST).
Few notes too and I let my debug stuff for a while.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1880 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-16 16:28:33 +00:00
Shawn Hoffman ba8c2aa7e4 nakee's work on dolphin events. Also get wxw out of logmanager. This commit wants your comments
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1875 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-15 06:48:15 +00:00
memberTwo.mb2 e8edc685ba 1) fix texture caching issue (ie. MP1 "Main menu" fps drop).
2) "fix" Pokemon Coloseum font issue in SafeTextureCache mode. We should kill the unsafe one. TODO: get why it works :p
3) readjust FAKE_GP_WATCHDOG_PERIOD for omega's ZTP to boot in DC.
Too late to split, sorry.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1871 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-14 23:55:55 +00:00
nakeee 87e6f0b18c ifdefed the sse3 code just to make sure
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1869 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-14 13:00:25 +00:00
XTra.KrazzY b252be40cf Added S-SSE3 implementation of one perf. critical texture decoder, please notify me if it breaks anything. Thanks.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1868 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-14 11:28:48 +00:00
magumagu9 b5367bea46 Unconditionally activate SSE code for texture conversion; this should
only affect 32-bit non-Windows platforms, and I've tested 32-bit Linux, 
so I think it's pretty safe.  It's a slight performance improvement when 
it kicks in.



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1865 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-14 07:31:24 +00:00
XTra.KrazzY ee3646cfb4 Linux 64-bit fix by tinctorius, please verify!
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1845 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-10 23:10:33 +00:00
John Peterson cbdad3495d OpenGL: Changed printf to DEBUG_LOG to avoid that it's always shown in the console window
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1801 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-01-06 01:50:57 +00:00
hrydgard 3db9fb4fc1 More renaming.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1696 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-26 17:33:53 +00:00
hrydgard 8bf3d83107 rename some files
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1695 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-26 17:26:18 +00:00
hrydgard 2a552421a5 moar cleanup
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1694 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-26 17:02:46 +00:00
nakeee acd0e0d8da linux/debug builds fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1693 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-26 13:19:27 +00:00
hrydgard 95a341a4e9 GL Vertex loader moved to VideoCommon.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1692 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-26 13:09:16 +00:00
hrydgard fe3cd168f0 Move parts of VertexManager.h to VideoCommon. Opens for moving the VertexLoader to VideoCommon.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1689 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-26 12:56:56 +00:00
hrydgard 2ec3cd6694 Move VertexShaderManager too.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1688 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-26 12:47:32 +00:00
hrydgard d585d26393 Move PixelShaderManager, ImageWrite to VideoCommon.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1686 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-26 12:27:58 +00:00
hrydgard afc87eb5ae cut dependencies, clean code
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1685 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-26 12:24:15 +00:00
hrydgard fa9f5c44fb More code movin' .. split Vertex/Pixelshadermngr into xxCache and xxManager.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1677 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-26 10:43:18 +00:00
hrydgard 358333b94b and more boring moving and cleanup ...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1661 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-25 21:44:56 +00:00
hrydgard 17a601958c OpcodeDecoding.cpp now shared.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1660 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-25 20:11:42 +00:00
hrydgard 65e702030a Some gfx code reorg, make the two OpcodeDecoding.cpp identical - next change will move them to videocommon
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1659 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-25 20:07:13 +00:00
hrydgard dcc48d6c41 just a bunch of random code cleanup i did on the train bored, plus a d3d implementation of NativeVertexFormat which isn't actually used yet.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1658 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-25 15:56:36 +00:00
Sonicadvance1 f2686589e9 Just a few spelling mistakes in both the DX9 and GL shader, probably won't change anything for games, but it's best to be correct in the code
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1555 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-16 03:34:06 +00:00
hrydgard e450578710 TLB hack plus some project changes. I only get a Konami logo though in MGS. Sonic1, plz fix :p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1467 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-09 22:20:50 +00:00
bushing 49cfded60b set svn:eol-style=native for **.cpp
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1442 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-08 05:30:24 +00:00
bushing 30c883bcfc set svn:eol-style=native for **.h
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1438 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-08 04:46:09 +00:00
memberTwo.mb2 bc3a7bdce3 Better tlut hash for fixing MPs font. Didn't notice any slowdown for now.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1402 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-04 22:55:17 +00:00
memberTwo.mb2 83e4bd2e5f Fix MP1 & MP2 texture font issue. Not very robust but the general idea is there :p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1401 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-04 20:21:32 +00:00
memberTwo.mb2 aa05c2173e correct TexDecoder_GetTextureSizeInBytes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1397 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-04 15:51:53 +00:00
memberTwo.mb2 f66b7999d8 Fix windows build. Fix InterlockedIncrement for old gcc. TOTEST on linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1394 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-04 13:43:03 +00:00
nakeee b64877d464 merged windows/linux atomic operations,
please test on windows


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1391 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-12-04 10:58:45 +00:00
nakeee 8777917177 warning fixes
(may break sound on wii, look in the changelog of 
Source/Plugins/Plugin_DSP_HLE/Src/UCodes/UCode_AXWii.cpp
if you wish to know why)



git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1306 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-26 19:42:22 +00:00
hrydgard d0a48f654a Improve safe texture cache - now using sparse CRC to identify textures. Far less video glitches - metroid intro looks good.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1298 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-25 23:56:57 +00:00
hrydgard b9c6f7cb89 Hacky fix for weird video hangs in Metroid Prime 1. May think of something better later.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1290 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-24 19:31:49 +00:00
memberTwo.mb2 0f13d327b8 DC + fifo: small fix/correction ;). Remove old stupid OnIdleDC stuff. Interesting: DSPnull with DC + IdleSkipping show invalid read addr sometimes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1286 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-24 16:33:38 +00:00
hrydgard 5c58227702 Optimize vertex loader with a mini JIT (only first step, more optimizations may follow). Some various error message and warning fixes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1276 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-23 17:46:14 +00:00
magumagu9 eab369321c Linux build fixes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1248 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-22 20:11:26 +00:00
memberTwo.mb2 36bf2fedf6 More CP/GPFifo work. Fix Super Monkey Ball SC/DC. SMB force us to hack CP differently: CPU really thinks the fifo is always empty and on idle now.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1242 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-22 15:25:04 +00:00
memberTwo.mb2 e069e5997a DC fix: Since game's frame-finish-watchdog have nothing to do with RTC, the faked GP watchdog moved in scheduler. DC should work for everyone now, we just may need to adjust FAKE_GP_WATCHDOG_PERIOD. TODO if it worth it: the actual re-scheduling of the new callback is stupid, so... + Some clean up. + Remove the unused GPUCallBack.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1210 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-18 13:08:46 +00:00
nakeee db6f69c010 warning fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1207 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-18 08:58:31 +00:00
nakeee e2de566546 -dist is now -distToSend
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1185 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-15 22:32:20 +00:00
memberTwo.mb2 b1563afa8d DC "fix": "Better" watchdogThread. Need to be tested on others PC specs. Everything works with for me (nice Q6600 + 8800GT owners :p ). We may have to put some hardcoded value in GUI for helping debug on other PCs. If it doesn't work and if someone have time, tweak a bit the threshold "FourMsCount" in "GPWatchdogThread" and let me know.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1184 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-15 21:54:46 +00:00
nakeee 2a06f76f81 porting 1180 to linux
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1182 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-15 20:01:24 +00:00
memberTwo.mb2 ab1774b28a DC fix/hack: 1) now a GP-watchdog thread on core 2 locks CPU in gatherpipe (TODO better). 2) Video_SendFifoData send full fifo to GP (should be faster by avoiding the decoder to stall).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1178 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-14 22:33:48 +00:00
memberTwo.mb2 5e261fbec3 GP fifo reset fix (ZWW reset in DC at least). revert r1051 for ppl who don't own quadcore :p
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1057 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-03 09:01:14 +00:00
nakeee a1454f4f05 continue instead of sleep (please review)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1051 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-02 17:23:26 +00:00
donkopunchstania 342c559719 fixed an off by one error I created in the texture copy function in bpstructs.cpp. SSBM no longer has black on ground. sorry about that ;p
noticed the real HW doesn't clip some things it should. modified the projection matrix to account for this.
changed normal loader to better handle 1 or 3 index NBT data which fixed an underrun.
added missing z component in biasing section of indirect texturing.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1048 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-02 05:07:14 +00:00
nakeee 9b05e301e9 removed unneeded critical section to match windows
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1019 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-30 20:46:12 +00:00
Sonicadvance1 0ab16c6af0 Added InterlockedExchange to Linux side
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1018 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-30 19:48:26 +00:00
memberTwo.mb2 a5ca940d64 A bit more proper GP fifo emulation: some DC fixes, some hacks too, more comments and TODOs.
TODO: the linux part.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1017 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-30 18:13:13 +00:00
hrydgard 22e1ecbb51 Make it possible to turn off the tiny vertex format setup JIT, may help macosx compatibility work (pretty useless, a jit for the actual vertex loading would have been much more useful)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@993 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-28 21:04:14 +00:00
hrydgard 5129341a9c Aligned all vertex components to 4 byte boundaries - maybe ATI likes that? Renamed and reorganized misc things.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@981 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-27 21:38:30 +00:00
hrydgard f77624147d Cachable vertex loaders. Not a very big speedup in itself, but makes it easier to speed up vertex loading in the future.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@960 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-25 15:53:43 +00:00
hrydgard 2f6d41e413 Move moving things around and preparing for the next step (cached vertexloaders).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@957 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-25 13:27:28 +00:00
hrydgard bc79d22f5e Move pipeline back into VertexLoader. Started work on VertexLoaderManager, which will cache VertexLoaders. (yep, the design plan changed a little bit).
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@956 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-25 12:35:55 +00:00
Maarten ter Huurne 7be6725459 Include PluginSpecs.h so __cdecl is defined on non-Windows.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@954 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-25 11:12:03 +00:00
hrydgard f14fca914d OpenGL - Don't cache pointer to compiled code - cache pointer to NativeVertexFormat instead.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@950 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-25 09:59:00 +00:00
hrydgard 72d8c3344b Code movin' and cleanup again, in the GL plugin. Planning to turn NativeVertexFormat into something cachable, instead of locked to each VertexLoader.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@948 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-24 23:08:46 +00:00
nakeee 0422864245 fixed marco to accept useless arg
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@943 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-23 09:07:06 +00:00
hrydgard 4d169987c2 Fix debug mode build, fix some profile stuff to not get compiled when profiling is off, cleaned a bit.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@941 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-22 22:35:29 +00:00
hrydgard 39df6c5624 Move out Cg shader generators to VideoCommon (hope to use this in the DX plugin in the future). Also move out stats code. Comment a lot and cleanup. Kill DX9 Globals.cpp.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@938 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-22 20:54:40 +00:00
hrydgard 7bbd6fda63 more gl plugin cleanup, code moving
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@900 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-17 12:08:28 +00:00
hrydgard dcbc8e78d4 Massive style & comment cleanup of (mostly) GL plugin - also split some large files. A minor speedup for BP writes - merged the two switch()-es.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@899 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-17 11:30:14 +00:00
hrydgard caf0d58047 Further tiny XFB speedup: baked the bias constants into the R tables, and switched to aligned writes, and made sure efb_buffer is aligned.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@890 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-16 08:11:03 +00:00
hrydgard db3a5e3822 More XFB speedup. It's all SSE now.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@886 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-15 22:22:54 +00:00
hrydgard 34a4fee1c5 Substantial XFB speedup. There's more to get though, for example by using a shader for color conversion instead - but i like having a fast CPU implementation too. Also adds some sanity checks. PAL games still have problems.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@885 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-15 21:29:44 +00:00
donkopunchstania bbbe898839 added option to use XFB in GL, but XFB support still needs work. modified viewport to include scissor offset.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@879 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-15 14:07:03 +00:00
Sonicadvance1 2df982a503 Yay, comments
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@818 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-09 21:26:21 +00:00
Sonicadvance1 f7fa972a50 Changed to checking for 32bit linux and I also missed a texture
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@816 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-09 21:18:27 +00:00
Sonicadvance1 e1eb51a010 Fix Building in Linux, removed the define for _T() in Common.h so now we can have wx headers after including Common.h. Also, InterlockedExchange isn't in Linux so I just made it assign the variable
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@809 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-09 08:51:57 +00:00
Sonicadvance1 5c53460817 Made the SSE work with GCC 4.3 and above, may also work with 4.2 and above
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@793 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-08 16:43:40 +00:00
memberTwo.mb2 0464cba75e Bunch of fix for DC mode (Metroid starts now,etc.). Look stable now but need to be seriously tested. CriticalSection shouldn't be needed anymore. TODO: linux and fix that High/LowWaterMark problem (CPU waste is time waiting for an empty fifo for now)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@791 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-07 21:39:50 +00:00
memberTwo.mb2 037e3d0442 reverted r782 for linux only due to sse misalignment with gcc
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@784 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-06 13:31:19 +00:00