Commit Graph

166 Commits

Author SHA1 Message Date
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
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
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
John Peterson 63ae48d9f9 OpenGL: Fixed initial framebuffer so it's not too small
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3381 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-08 20:07:20 +00:00
hrydgard 085fa5f526 Simple post-processing shader implementation. No UI yet. Does not work together with AA yet. To use shader bad_bloom, for example, set PostProcessingShader under [Enhancements] in gfx_opengl.ini.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3380 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-08 19:42:25 +00:00
John Peterson 8392d6bcd4 OpenGL Screenshot: Fixed AA and wireframe screenshots again
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3352 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-07 11:51:53 +00:00
John Peterson a8dafb8dc5 OpenGL:
1. Reorganized display settings
2. Let render to main window also have the internal resolution setting
3. Set render to main window as default setting, it's the most common and best option used by the best emulators
4. Changed screenshot to capture the internal picture, independent of whatever the window size may be

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3335 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-06 13:36:33 +00:00
Shawn Hoffman 43c18bb552 OpenGL: save projection hack setting
wii: pass 002 check correctly (i think :p ) also copy 10bytes from disc start instead of just 6

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3316 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-06-03 23:38:31 +00:00
tmator 833154f3d8 osx fixes for nongui and ogl plugin
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3239 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-15 08:55:46 +00:00
death2droid 5f55d4e7f0 game.ini fix for projection hack's.
This patch is by val532 

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3206 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-05-11 21:20:27 +00:00
tmator 93a205bd1a fix nowx build
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3107 8ced0084-cf51-0410-be5f-012b33b47a6e
2009-04-30 08:14:46 +00:00