Commit Graph

83 Commits

Author SHA1 Message Date
Shawn Hoffman 1ceee92770 Since m_VtxDesc.Text7Coord is broken across a 32 bit word boundary, retrieve its value manually. If we didn't do this, the vertex format would be read as one bit offset from where it should be, making 01 become 00, and 10/11 become 01. Among the benefits of this fix: Zelda Wind Waker no longer crashes when you view the map. see http://forums.ngemu.com/dolphin-discussion/114035-those-pesky-bit-fields.html
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1118 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-11 04:44:41 +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 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 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
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 32820d2036 Backport Donko's hackfix to DX9 plugin. Move some code around. Add a couple of sanity checks.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@937 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-22 18:39:46 +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 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
memberTwo.mb2 5796ccaca4 small oversight
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@823 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-10 09:21:46 +00:00
John Peterson d4f8f0d3ae Added the StretchToFit option to the config menu in the OpenGL plugin. This fixes the blackness in SSBM. I also added a keep aspect ratio option, it will keep your aspect ratio at 4:3, but then SSBM will have the blackness problem again. You find the options under the Enhancements window in the OpenGL configuration.
I also added a wx debugging window for the OpenGL plugin. I connected it to the old console window that was in the plugin. Other than that it doesn't do anything at the moment but it could be useful to show all the current important information and parameter statuses and so on.

Again there's a problem with wx windows collisions.  Show() can't be used because then DLL_PROCESS_DETACH is called immediately after the window is opened, and if we open it with ShowModal() before we have loaded a game the main video window will be blocked. And we can't pass on any variables from a DllDebugger() that is called when Dolphin is started because the dll is reloaded and lose all variables sometime before a game is loaded. So we can't auto open the window that way. So I made the debugging window open as a game is loaded if it is enabled in the ini, the downside is that the ini setting will open the window even if we are not opening Dolphin with the -d flag. However, this will only affect people that have used the debugger at least once so in my opinion this is the most convenient solution. But feel free to come up with a better solution. Preferably some solution to how to use Show() and preventing DLL_PROCESS_DETACH to be called.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@812 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-09 18:47:53 +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
XTra.KrazzY c69506bb46 Chests on LoZ:WW are now texture mapped correctly (as should many other weirdnesses) in DX9.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@775 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-04 22:47:28 +00:00
XTra.KrazzY 8eef6f9cd5 Moved components' perks computation to the DecodedVArray in DX9. Performance boost. Working on OGL version
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@771 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-04 21:47:56 +00:00
memberTwo.mb2 8d0f6d40f4 DataReader inline for OGL/DX9 and moved to VideoCommon. Large clean up.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@760 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-03 22:05:28 +00:00
hrydgard 655bc23322 fix some comments, some files with mixed line endings, some warnings.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@757 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-03 17:22:35 +00:00
hrydgard 65f8c4bca1 unbreak DX9 build.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@747 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-02 19:59:50 +00:00
nakeee 4923da76d7 all this to make stop work without message passing
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@744 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-10-02 17:03:24 +00:00
memberTwo.mb2 df9eba79b2 DataReader migration to faster one: first step.
TODO: doing it for DX9, move DataReader to VideoCommon, remove dirty debug #def if ok

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@729 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-09-29 17:29:25 +00:00
hrydgard fb79bc9224 Disable screen saver in the gfx plugin window management too.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@720 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-09-28 17:47:44 +00:00
donkopunchstania 17cff80f2b BIOS sets video mode from emulator configuration. Fixed iteration in DX VShaderCache::Cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@644 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-09-23 20:55:01 +00:00
XTra.KrazzY 0f4d04f4fb Fixed DX9's 16 and 24 bit comparisons.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@593 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-09-21 10:21:37 +00:00
XTra.KrazzY ae948f1a23 Added point size emulation to DX9
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@587 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-09-20 15:04:02 +00:00
XTra.KrazzY 7c3f715f19 More fog emulation groundwork both in OpenGL and DX9. Needs more fog format researching.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@586 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-09-20 14:43:10 +00:00
XTra.KrazzY a5488ccf58 Initial steps towards fog emulation in DX9
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@585 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-09-20 14:29:30 +00:00
fires.gc f198d550bc fix for small memory leaks
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@562 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-09-17 08:40:52 +00:00
XTra.KrazzY ba4143e82b Optimized vertex and pixel shader generation. Medium FPS boost.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@500 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-09-12 19:04:13 +00:00
hrydgard 81e937041f fix 64-bit build too on Platform SDK 6.0, fix project file.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@453 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-09-07 11:07:55 +00:00
hrydgard 5a69fca0be Add some missing GPL headers, fix building with Platform SDK 6.0, delete unused HTTP code.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@452 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-09-07 10:29:46 +00:00
Maarten ter Huurne 722ea233a1 Align stack to 16-byte boundary when compiling in 32-bit mode with GCC. This is required to run anything on OS X and to support SSE instructions on Linux.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@439 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-09-05 00:02:53 +00:00
Maarten ter Huurne bd7996354a Removed "INT" typedef: it was not used in any plugin spec. It was used DX9 video plugin, but for arguments where MSDN lists a plain "int", so I replaced "INT" by "int" to make things clearer.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@435 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-09-03 00:27:24 +00:00
Maarten ter Huurne 4b3c4492ea Replaced "WORD" by "u16", except where it is part of the Windows API.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@434 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-09-03 00:12:32 +00:00
Maarten ter Huurne 1154027808 Replaced type "DWORD" by "u32", except where "DWORD" is used to access the Windows API.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@429 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-09-01 22:48:56 +00:00
Maarten ter Huurne 9a7b828eba Removed function FilterDown(), which was neither used nor implemented.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@412 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-08-31 21:52:28 +00:00
Maarten ter Huurne d4db1a6657 Changed BYTE* to u8* after all, since these pointers are not directly related to Windows API.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@411 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-08-31 21:49:57 +00:00
Maarten ter Huurne 0bebbcb5f4 Replaced type "BYTE" by "u8", except where "BYTE" is used to access the Windows API.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@408 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-08-31 14:32:35 +00:00
hrydgard 09406d76c4 Fix/workaround at least one class of buffer underruns in the GL plugin. Fix some bad deletes (instead of delete []). etc.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@404 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-08-31 13:36:52 +00:00
hrydgard e5deb10714 bugfix the texcache bugfixes :P
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@395 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-08-30 23:15:11 +00:00
hrydgard 20d0c53781 Fix same texcache bug on DX side
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@394 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-08-30 23:06:40 +00:00
hrydgard 005cbbb379 Basic VBA-style save state system implemented - kb shortcuts only working on Windows. Keyboard shortcut system added. More cleanup in GFX plugins.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@390 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-08-30 22:06:53 +00:00
hrydgard 85565688d7 New SaveState folder for states. Removed some outdated code. Removed an unnecessary level of indirection for plugin calls. Assorted cleanup.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@389 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-08-30 19:19:40 +00:00
hrydgard e4825be7a8 more statesave bugfixes...
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@387 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-08-30 16:24:45 +00:00
hrydgard 4608333a56 State saving progress. Most core state seems to be saved/loaded correctly, not so for video yet unfortunately.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@386 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-08-30 16:05:32 +00:00
hrydgard ff0a613427 Cleaning up XK's mess, added a simple profiler, minor disasm fix. Too lazy to split it up into individual changes. Savestates not yet working.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@381 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-08-30 12:11:25 +00:00
XTra.KrazzY 2e760d69fe Added save/load state support in the UI
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@375 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-08-28 21:30:13 +00:00
XTra.KrazzY 051c2e0784 A lot of save state groundwork. Please notify if compilation breaks because
I haven't compiled


git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@368 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-08-28 07:58:04 +00:00
XTra.KrazzY cb43ed49cd Small warning fixes
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@360 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-08-27 12:44:22 +00:00
daco65 794f656188 fixed Video_SaveState & Video_LoadState in OGL/DX that made dolphin unable to load the plugins
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@352 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-08-27 11:45:51 +00:00