Commit graph

177 commits

Author SHA1 Message Date
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
Sonicadvance1
ced92d8544 Fix compiling in Snow Leopard, the Update stuff in the Video plugin shouldn't be in the GUI since it breaks nowx builds, wasn't sure where to put it, but Render.cpp seemed like the best place. Fixed wiiuse.c, and the SConscripts needed updating for Snow Leopard. Building 32bit in Snow Leopard is apparently broken. and Running 64bit in Snow Leopard seems to fail. Haven't tracked this down yet
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4299 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-18 19:56:49 +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
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
nakeee
bc6323ea0e removed the failed gltest code
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4238 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-09 19:52:45 +00:00
John Peterson
24d68da653 GUI/OpenGL: Video debugging window crash fix
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4225 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-09-07 13:33:40 +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
John Peterson
1b6b56692d GUI: Dock plugin windows
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4069 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-26 23:28:30 +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
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
sl1nk3.s
69f32a76c6 Just a few fixes for the fps counter, also unbreak direct XFB homebrews.
And a couple of fixes for the frameskip : disabled by default, can be set before launching a game, also safer to avoid lockup. 

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3950 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-08 05:47:08 +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
Nolan Check
d7cc049921 Disable CPU swaps, it was causing all kinds of problems.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3940 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-04 22:36:50 +00:00
tmator
1e9bb4ed9a fix non gui build
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3921 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-01 18:31:25 +00:00
sl1nk3.s
69c0613160 Fix the FPS counter to show the 'real' framerate, also clean up its mess a bit...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3920 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-08-01 18:16:12 +00:00
sl1nk3.s
7eed236df9 Fix noWX build, and lower thread priority for screenshots
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3913 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-31 01:55:26 +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
Nolan Check
3448956f1f Correct addrRangesOverlap. May fix stuttering in many games.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3901 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-29 01:06:49 +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
Nolan Check
8027ab53d0 Don't use events for efb access. As I've learned, events cause kernel calls and it is sometimes more efficient to do spin-waits. See if this speeds up Wind Waker's pictobox quests.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3893 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-27 22:05:38 +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
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
Nolan Check
598d640042 Minor changes for video. Please test pictograph quests in Wind Waker.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3818 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-16 22:45:18 +00:00
Nolan Check
fdc2b69143 Better TV emulation. Seems to fix problem in 50 Hz PAL games where frames go backwards.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3811 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-15 22:20:59 +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
5c7844df69 Probably a good idea to check s_efbAccessRequested.
If EFB access still seems slow, please check DSP stuff instead...

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3771 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-12 22:22:48 +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
d99ac909b9 Remove a couple unnecessary MemFences
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3754 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-11 20:39:28 +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
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
Shawn Hoffman
518d3854ba add wxw modalness to both njoys and fix a bug where calling DllConfig from different parent HWNDs would stop the config dialog from appearing.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3656 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-03 03:01:58 +00:00
hrydgard
bad9880692 GL: should probably rebind the efb FBO after the z peek..
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3650 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-02 20:06:39 +00:00
Shawn Hoffman
7076c36988 re-enable the ogl "debugger" (doesn't do much - and i don't have any plans for it - just wanted to dump shaders easily).
ogl config and debugger GUIs are handled much more nicely now. same with dsp lle

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3647 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-02 17:11:27 +00:00
nakeee
3b4f534abd Small gl possible crash fix (from cnu)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3645 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-02 11:25:43 +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
sl1nk3.s
ae2a5b8587 Fix PeekZ when not using native resolution
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3643 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-02 01:49:28 +00:00
Shawn Hoffman
b69d218a82 fix GXPeekZ when using aa
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3642 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-01 23:57:20 +00:00
Shawn Hoffman
2fc917dd79 don't return stencil bits in the response for PEEK_Z. compensate for ogl's upside-down coords...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3632 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-01 19:29:35 +00:00
Shawn Hoffman
1780f82dac implement peeking z value from ppc. currently only works in single core mode. the pixel format may be slightly off of what the game actually desires. someone check please? :)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3627 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-07-01 13:49:49 +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
07a767691d Clean up OpenGL code and introduce the Framebuffer Manager. More work is forthcoming; I plan to implement resolution switching (while the game is running) and also multiple virtual XFBs for game-controlled buffer swapping.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3587 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-28 23:35:08 +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