Commit graph

97 commits

Author SHA1 Message Date
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
John Peterson
f0596fee55 Added Copy EFB hotkey to OpenGL plugin (to be able to easily switch back and forth during emulation). Added Unlimited JIT cache option to debugger. It may fix the Zelda TP crashes.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1243 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-22 16:46:12 +00:00
John Peterson
f6b30b1680 Bugfix, and moved readme file
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1190 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-16 22:05:07 +00:00
drkiiraziel
9a4dc4e810 Fixed small buffer overruns and other minor bugs that were found by VS2008 code analysis
Added a check on both video plugins to prevent crashing when Memory_GetPtr retuns null pointer at ExecuteDisplayList  (invalid address? Dave Mirra BMX 2 crashes there ...)

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1179 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-15 02:30:29 +00:00
Shawn Hoffman
f7cb34f1e0 Migration to the new dir struct (in code only!, no deletion of old dirs...yet). VS projects copy Data/* to Binary/<arch>. Added SConscript to some projects where it was missing. This is the time to move over all your files!
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1140 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-11-12 04:54:17 +00:00
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
Shawn Hoffman
6178eae001 made all plugins build with correct names and paths. (windows). for some reason njoy and padsimple don't show that they have been compiled with debugfast in their name, not sure why.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@733 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-09-30 01:09:02 +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
fires.gc
55867c169a update to vs2008
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@664 8ced0084-cf51-0410-be5f-012b33b47a6e
2008-09-24 17:09:29 +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