Commit Graph

7764 Commits

Author SHA1 Message Date
rog 670ca7e993 Toggle wiimote status based on the actual status, instead of some dumb checkbox that is almost never even right.
The checkbox is still wrong when starting emulation, but it's now purely cosmetic.

Actually fixes issue 5594.
2012-12-29 02:48:20 -05:00
degasus e9d00bfeeb revert RasterFont optimization
isn't needed and also not tested and buggy
2012-12-29 00:37:50 +01:00
rog 3ec3b7683e Fix (dis)connecting wiimotes via hotkey.
Fixes issue 5594.
2012-12-28 11:21:08 -05:00
Glenn Rice c303669dd0 Clean up some messy code issues that have been annoying me. 2012-12-28 09:58:06 -06:00
rog af2820ac88 Don't show multiple exit confirmation dialogues.
Pause emulation while waiting for confirmation to exit.

Fixes issue 5822.
2012-12-28 03:39:34 -05:00
Ryan Houdek 225d29f3f6 Fix this annoying warning in ChunkFile.h 2012-12-27 23:43:59 -06:00
skidau 95f6685900 Changed the HLE system to allow it to hook the beginning, the end or replace the entire function without changing the GC memory. Fixes Kirby's Return to Dreamland.
Added a way to categorise the type of HLE function.  Currently, there are debug, floating point, memory and generic functions.
Added a HLE function for OSGetResetCode (Warm reset).  Fixes the CSI games.
Added a switch to disable all of the HLE functions if the idle skipping option is disabled.
2012-12-28 14:26:46 +11:00
rog 2fd1c9e7c2 Allow setting cpu engine and whatever bHLE_BS2 is from game ini. 2012-12-27 09:42:20 -05:00
rog 94116bf89c Always use the right user dir on windows. 2012-12-26 19:55:45 -05:00
degasus db5f4c8c20 fix byte order in osd rasterfont 2012-12-26 23:48:33 +01:00
Ryan Houdek 01cdcc83a3 Merge Fail: Make sure we are using the interface file to get backbuffer dimensions. GL helper function was duplicated. 2012-12-26 13:15:19 -06:00
Ryan Houdek 67c1c6b062 Merge branch 'GLES-software' 2012-12-26 12:54:58 -06:00
Ryan Houdek 5169804a61 Remove duplicated X11 code. 2012-12-26 12:12:26 -06:00
Ryan Houdek 93f72d8463 Don't add superfluous whitespace to the CMake file 2012-12-26 11:07:33 -06:00
Ryan Houdek 2d4c3c7c91 Beautify some tabs. 2012-12-26 10:33:45 -06:00
skidau 05730af724 Added some IOS version checks and code to clear memory before loading the dol. 2012-12-26 23:10:41 +11:00
skidau 0c845728cc Added support for Reset (from menu). Fixes Sam & Max. 2012-12-26 23:10:40 +11:00
skidau 88e273fac1 Added an IOS check as games which use IOS older than IOS30 do not need to be HLE'd. Added some stubs for Reset to Menu and SSBB's load from disc partition. Fixed loading Fate of Atlantis from the Indiana Jones and the Staff of Kings game. 2012-12-26 23:06:43 +11:00
skidau 651cedaac4 Added argument detection and passing to the loaded dol. This fixes the Wii Sports+Wii Sports Resort bundle pack. 2012-12-26 23:06:43 +11:00
skidau fbdf9ba153 Added preliminary support for ES_LAUNCH (Wii Multi-boot games) by using HLE to hijack the OSBootDol function.
Metroid Prime Trilogy is working.  Wii Sports+Wii Sports Resort is not working.  Any games which can be played using the dol replacement trick should work here.

Suspect that the DOL's are meant to receive an argument list which has not been catered for in this code.  This probably also means that the Metroid Prime Trilogy games are locked in Veteran difficulty for the time-being.
2012-12-26 23:06:42 +11:00
Ryan Houdek e2489196e4 Got overzealous. We aren't removing CG quite yet with this branch. 2012-12-26 00:41:25 -06:00
Ryan Houdek 9a58f9a3bb Rename another function... 2012-12-26 00:34:09 -06:00
Ryan Houdek c43a0dac2e Add to more than 32bit debug 2012-12-26 00:25:49 -06:00
Ryan Houdek fa9abfdc42 Add a include directory 2012-12-26 00:22:17 -06:00
Ryan Houdek a35c5a7f22 Add a include directory 2012-12-26 00:20:09 -06:00
Ryan Houdek f4e7a280a9 Remove cg.lib from some files for Windows and renaming a function. 2012-12-26 00:07:43 -06:00
Ryan Houdek e9099459bb Maybe fix Windows compiling. 2012-12-25 22:52:30 -06:00
Glenn Rice 0de073edea When using the "Keep window on top option" make sure that the effect of
that option ends when emulation ends when using render to main.
2012-12-25 21:12:51 -06:00
Ryan Houdek c884dbf654 Mistype in WX.cpp 2012-12-25 19:18:03 -06:00
Ryan Houdek 01953ff64a Rename the interface files and hopefully fix OSX building. 2012-12-25 19:08:24 -06:00
Pierre Bourdon b3ed3bdb91 Define NvOptimusEnablement to tell the Nvidia driver we need high performance 2012-12-25 13:51:13 +01:00
Pierre Bourdon ba348c29d7 Merge branch 'new-ax-hle'
Only AX GC is merged so far, the new Wii AX development will be done in a
separate branch when I'll start working on it.

There are still a few AX GC bugs remaining, but overall a lot less games have
sound issues than before.

Thanks to everyone who helped test the development builds of this branch and
reported results on the forum thread.

Conflicts:
	Source/Core/Core/Src/HW/DSPHLE/UCodes/UCode_AX.cpp
2012-12-25 13:33:53 +01:00
Pierre Bourdon 4a74da3e87 Readd the old AXWii (rename the new version to NewAXWii) and set it as default 2012-12-25 13:30:55 +01:00
degasus bff0faea2d Merge branch 'immediate-removal'
Conflicts:
	Source/Plugins/Plugin_VideoOGL/Src/Render.cpp
2012-12-25 12:39:00 +01:00
rog b3714f4874 Don't show compress iso option for wbfs and ciso files.
Fixes issue 5809.
2012-12-25 06:31:31 -05:00
degasus 399a6af66d revert update the rasterfont shader to GLSL3.3 - OGL 2.0 should be enough 2012-12-25 12:22:02 +01:00
NeoBrainX 4798524b75 Dolphin 3.5 release. 2012-12-24 21:29:24 +01:00
NeoBrainX e3e14af0dd Revert "VertexShaderGen: Fix a shader compilation error.". I'm an idiot :p
This reverts commit 4d868705fd.
2012-12-24 21:29:24 +01:00
Pierre Bourdon 2c58385fe2 Revert "Uninitialized usage.. or so it thought."
This reverts commit 7839676c87.

Parlane, I hate you.
2012-12-24 21:23:28 +01:00
NeoBrainX 4d868705fd VertexShaderGen: Fix a shader compilation error. 2012-12-24 19:50:16 +01:00
NeoBrainX 5a78351033 TextureCacheBase: Fix a potential bug when using custom textures. 2012-12-24 19:50:16 +01:00
NeoBrainX 249afa5eac Change copyright year to 2013 in the about dialog. 2012-12-24 19:50:16 +01:00
NeoBrainX 2fedab3bad OGL: Make OSD messages fade out properly instead of having them disappear spontaneously. 2012-12-24 19:50:16 +01:00
rog 2dd570c880 Should completely fix game list sorting. 2012-12-24 13:29:19 -05:00
rog da5e61b45b Fix another sorting bug. 2012-12-24 13:04:57 -05:00
rog 14a31d9b3a Fix sorting bug. 2012-12-24 12:48:14 -05:00
Ryan Houdek 09b05c0f6c Add header guards to InterfaceBase.h 2012-12-24 09:46:37 -06:00
Ryan Houdek 296b9b1c16 Small bit of clean up in GLES-software. 2012-12-24 09:37:12 -06:00
degasus 78ff8a769c Merge branch 'osx-savegame-fix' 2012-12-24 13:30:59 +01:00
Matthew Parlane eedca57270 Revert "support retina display"
This reverts commit 3aa9901618.
2012-12-24 08:01:44 +13:00
Matthew Parlane 59ec1fe180 Fix some random warnings. 2012-12-24 07:37:50 +13:00
degasus bd0abb3d2f revert last commit, add CheckInvalidState to VideoBackend 2012-12-23 13:32:23 +01:00
Matthew Parlane f865450b5a Changed to non conflicting overload. 2012-12-24 00:00:45 +13:00
Matthew Parlane a8ddc3e069 Function definition was not updated. 2012-12-24 00:00:25 +13:00
Matthew Parlane 7839676c87 Uninitialized usage.. or so it thought. 2012-12-24 00:00:04 +13:00
Matthew Parlane 4dbd2ed7fb Unused variable. 2012-12-23 23:59:44 +13:00
Matthew Parlane 589222857f Someone changed this to a u32... it's definitely a s32 :) 2012-12-23 23:59:10 +13:00
Grant Paul 3aa9901618 support retina display 2012-12-23 21:33:52 +13:00
Matthew Parlane e3eebdf591 Fixes swprintf_s issues hopefully.
Also fixed an include not using correct caps.

According to:
http://connect.microsoft.com/VisualStudio/feedback/details/646532
2012-12-23 20:25:11 +13:00
Matthew Parlane 089434b719 Apply same force to float fix as has already been done for DX11. 2012-12-23 20:01:58 +13:00
Matthew Parlane 3a2c0b778a Fixed stupid bool to int conversion warnings. 2012-12-23 19:53:15 +13:00
Matthew Parlane 1c01fd9c9d Remove warning about ambigious if/else. 2012-12-23 19:24:30 +13:00
rog d66dd970cd Implement select audio backend CLI option.
Fixes issue 4920.
2012-12-22 18:25:52 -05:00
degasus ffddfd8662 do only invalid hashes instead of all textures on loading
this is a hack, but only the gpu thread is allowed to call ogl commands
suggestion: create an unused texture cache, so we can move all textures there
2012-12-22 17:30:13 +01:00
degasus 2df0c31d13 add invalid flag for BPStructs (fix issue 5790)
this flag will be set on loading a state and checked before every rendering.
2012-12-21 21:04:53 +01:00
Pierre Bourdon b0cbac174b Implemented dpop samples support 2012-12-19 08:31:17 +01:00
Ryan Houdek 2db4549174 Fix a memory leak based on Lioncash's patches. 2012-12-18 23:35:28 -06:00
Pierre Bourdon 071b27f0bb Fix volume mixing in DownloadAndMixWithVolume (same issue with >1.0 volumes) 2012-12-19 05:56:57 +01:00
rog 16ac7803f1 Add support for recording bongos. 2012-12-18 23:20:26 -05:00
Pierre Bourdon 2c10ca4e46 Rewrite the linear sample rate conversion algorithm to make it less hacky and to support arbitrarly big ratios 2012-12-18 17:38:41 +01:00
Glenn Rice 1bd42b7acc Merge branch 'rehash-msw-cursor-hide' 2012-12-18 08:07:47 -06:00
Pierre Bourdon 1cecbaedce Fix MixAdd with volume. The previous volume formula completely failed with volumes >= 1.0 (0x8000). Fixes Tomb Raider Legends (GC) music. 2012-12-18 07:01:22 +01:00
Pierre Bourdon faaaa97c9e Added a utility function to dump an AX PB for debugging 2012-12-18 07:00:24 +01:00
Pierre Bourdon 1abbfd4b15 Remove some useless 'inline' attributes from the AX HLE voice mixing functions 2012-12-18 07:00:04 +01:00
Pierre Bourdon 70b3980f46 Fix AX HLE command 12 arguments: takes 4 u16, not 1 2012-12-18 06:58:47 +01:00
Pierre Bourdon ed59f8ff1d Remove UCode_AX_ADPCM.h, now useless (incorporated into UCode_AX_Voice.h) 2012-12-18 05:55:40 +01:00
Ryan Houdek f6ef6fa0d9 I had the wrong header for Windows in GLVideoInterface.h 2012-12-17 16:23:02 -06:00
Ryan Houdek f2004b2474 Blindly add WGL.cpp file to the Windows project file. Just for Neo 2012-12-17 16:19:55 -06:00
Ryan Houdek 512cae69f8 Add a useful comment to DSP.cpp 2012-12-17 15:55:34 -06:00
Ryan Houdek 6099148541 Blind coding fail 2012-12-17 15:33:19 -06:00
Ryan Houdek 8082323c44 Should hopefully fix OSX 2012-12-17 15:29:38 -06:00
Ryan Houdek 3cb5dffbc9 Missed the video interface files. 2012-12-17 15:01:52 -06:00
Ryan Houdek b78f5debe6 Initial push of GLES and GLUtil file breakup. 2012-12-17 14:54:20 -06:00
NeoBrainX 0811311604 TextureCacheBase: Delete textures completely instead of just invalidating them in ClearRenderTargets.
That's what would've been done in the next TCB::Load() call, anyway.
Fixes issue 5742.

Additionally, change efb copies to specify 1 as the number of mipmaps because that makes more sense than anything else.
2012-12-17 19:36:31 +01:00
Glenn Rice 98ed34d50b Use wxNullCursor to put the cursor back to its default instead of
explicitly setting the cursor to the arrow.
2012-12-17 11:32:10 -06:00
Glenn Rice f1cc5c2ff9 Define the icon for "dolphin". The IDI_ICON1 seems to be preempted by the wx resource. This one does not. 2012-12-17 08:33:42 -06:00
rog 4c7b63cf0e Save secondary list sorting.
Allow sorting by platform ascending.

Fixes issue 5774.
2012-12-17 06:08:45 -05:00
Glenn Rice 0a918782cf Reorder the inclusions to hopefully fix the icon issue. 2012-12-17 00:11:59 -06:00
Glenn Rice ff7041804c Make sure that the wxWidgets manifest does not override the dolphin one. 2012-12-16 23:55:22 -06:00
Glenn Rice 832a5a0b26 Add the resource include in only one place for all builds. 2012-12-16 23:39:05 -06:00
Glenn Rice d34fb84734 Add the resource inclusion to the other builds. 2012-12-16 23:21:11 -06:00
Glenn Rice a581c75a37 Make the resource include path relative. 2012-12-16 22:52:29 -06:00
Glenn Rice d1a812231e Rework the way that windows mouse cursor hiding is done to use the built
in wxWidgets methods.
2012-12-16 21:32:14 -06:00
LPFaint99 351979795c revert changes to banner background color 2012-12-16 15:29:25 -08:00
Ryan Houdek 8838944cd3 Revert "Use the global ::wxSetCursor instead of the local one from our panel object. Should close 3956."
This reverts commit 884006e4c8.
2012-12-15 00:04:10 -06:00
Ryan Houdek 884006e4c8 Use the global ::wxSetCursor instead of the local one from our panel object. Should close 3956. 2012-12-14 15:19:22 -06:00
Ryan Houdek 88b890824b (CoreAudio) Retain volume value until initialization. Makes volume slider work when game isn't running. Fixes issue 5383. 2012-12-14 12:15:01 -06:00
Ryan Houdek 3b559d89ec If the HOME environment variable isn't set, fall back on to PWD. Closes 5584. 2012-12-14 11:47:12 -06:00
Ryan Houdek 532fdada96 Adds the Wii Korean settings file. It was handled in the wii-network branch in rev c42a6f156e. Master handles the settings files differently. Until wii-network merges in to master, this closes issue 5642. 2012-12-14 11:37:26 -06:00
degasus 79a7ce4827 move glBindBuffer and glBindVertexArray out of VertexManager
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:28:52 -06:00
degasus 09274e2483 Check texture params before updateing them
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:28:48 -06:00
degasus 61836f8c51 helper for compiling glsl
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:28:44 -06:00
degasus 48812f7bf7 update the rasterfont shader to GLSL3.3 - so OGL 3.3 is needed
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:28:39 -06:00
degasus 1bd21f44b2 custom shader for RasterFont, fix color support
OpenGL2.0 compatible

Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:28:36 -06:00
degasus 23a3336f9a increase hash size to u64
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:28:32 -06:00
degasus 75dd48247f initial release of new RasterFont without color support
this new design will once create a texture for all chars.
while rendering a string, a list of polygons (position on screen + texture)
for this string is generated on the fly and print at once by glDrawArrays.
atm, there is no support for colors, so everything will display white.

Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:28:28 -06:00
degasus c207422987 using of vao, warning: ARB_vertex_array_object is needed
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:28:25 -06:00
degasus 5c8800968a also check for vbo updates in EncodeToRamUsingShader
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:28:22 -06:00
degasus 1f1b32b663 only update vbo on changes in XFBSource::Draw
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:28:19 -06:00
degasus 34b1451fbe cache vbos in TextureCache::TCacheEntry::FromRenderTarget
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:28:15 -06:00
degasus d0c4332d99 don't update vbo, if there are no changes in Renderer::Swap
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:28:13 -06:00
degasus bbcb442983 in the end, also Renderer::Swap in vbo
two last draw-calls are missing:
VertexManager::Draw (see Graphic_Update branch)
RasterFont::printString (perhaps reimplement with an texture)

Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:28:10 -06:00
degasus b41c06a9ac EncodeToRamUsingShader in vbo
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:28:05 -06:00
degasus 8ea2ddbc50 XFBSource::Draw in vbo
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:27:59 -06:00
degasus d44228f1b7 TextureCache::TCacheEntry::FromRenderTarget as vbo
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:27:56 -06:00
degasus 6b3125728b use vbo for ShowEFBCopyRegions
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:27:53 -06:00
degasus 8b62be2025 fix ShowEFBCopyRegions
those fancy colors were the result of the usage of non-allocated heap

Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:27:49 -06:00
degasus 6864b40e26 reset glEnableClientState befor every draw
should be done with VAO, but atm, this is not possible :-(
this also partial revert the fix in fb92c338af (activating texture0 globally).

Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:27:46 -06:00
degasus 888b5fb061 remove usage of glMultiTexCoord2f
Signed-off-by: Ryan Houdek <Sonicadvance1@gmail.com>
2012-12-13 15:27:38 -06:00
Glenn Rice a6374f25fd Fix OSX build once again. Apparently OSX needs to get with the times. 2012-12-10 10:31:08 -06:00
NeoBrainX c82136abdc PixelShaderGen: Drop some useless and potentially buggy code.
Thanks to glennrics for noticing.
2012-12-10 16:13:22 +01:00
Glenn Rice f6df3d1513 OSX build fix for the unordered_map/hash_map issue. 2012-12-10 08:40:27 -06:00
rog 330ea74d19 Allow input displays to work without an active movie. 2012-12-10 06:20:06 -05:00
Glenn Rice e85438cba0 Clean up gcc/g++ compiler warnings that have accumulated. 2012-12-10 00:40:28 -06:00
rog 43d673b576 Save game list sorting.
Fixes issue 5771.
2012-12-08 23:53:50 -05:00
NeoBrainX 4fc0125fb3 Fix OS X 10.6 compatibility.
Patch by mathieudel.
2012-12-07 19:49:08 +01:00
rog 30718230b2 Fix some warnings. 2012-12-06 20:25:07 -05:00
skidau aeb5782395 Merge conflict. Fixes issue 5471. 2012-12-06 21:16:27 +11:00
rog bbf7c3a4d0 Fix a save state crash in some situation. 2012-12-05 17:11:19 -05:00
Ryan Houdek 423024110e Includes are case sensitive and Common is in the include directories so including the file this way was silly. 2012-12-04 11:44:28 -06:00
John Peterson 470a4eee8b Fixing wiimote savestate and recording. 2012-12-03 21:14:25 -05:00
John Peterson 983d5d1f73 Making cheats manager resizeable, maximizable, hideable (parentless), higher by default. 2012-12-03 20:58:25 -05:00
rog 47aaca89eb Fix error message about state undo backup always appearing when no movie is active. 2012-12-02 02:08:43 -05:00
NeoBrainX bed260aa14 VertexShaderManager: Fix redundant shader constant updates.
Thanks to konpie for spotting this.

Might give a fairly perceivable speedup in the D3D11 backend.
2012-12-01 14:23:24 +01:00
Pierre Bourdon 3ca77cf077 Fix samples clamping and interlacing in the OUTPUT command. Shouldn't have assumed previous AX HLE was doing something right. 2012-12-01 00:54:25 +01:00
Pierre Bourdon 04b1ee0016 Implemented command 01 (download data and mix to MAIN/AUXA/AUXB with volume control). Fixes missing weapon sounds in Metroid Prime 2. 2012-11-28 15:22:02 +01:00
Pierre Bourdon 4cf2856284 Improve savestates support in AX and AXWii 2012-11-28 03:31:46 +01:00
Pierre Bourdon f11a40f858 Command 13 should upload only AUXA LRS, not MAIN LRS + AUXA LRS. Fixes more GC EA games sound/music (including FIFA 06, Madden 08). 2012-11-28 01:48:27 +01:00
Pierre Bourdon 1a129abe0d AUX return data should be mixed to main buffers, not AUX buffers. Fixes a regression introduced by r954c55e35afb, now EA games sound works again. 2012-11-27 21:48:59 +01:00
Pierre Bourdon 9270b62830 Rewrite MixAUXSamples to make it more clean 2012-11-27 20:36:34 +01:00
Pierre Bourdon 2120f536d5 Implement command 07 in GC AX (download data to main LR and reset main surround) 2012-11-27 20:36:14 +01:00
rog aaeeef48da Compile fix for linux. 2012-11-26 23:36:47 -05:00
rog c0bb7aa8f3 Turns out you have to actually commit a change before merging if you want it to be included. 2012-11-26 18:17:07 -05:00
Pierre Bourdon 9b1a66245e Fix an AUX mixing issue introduced when implementing AXWii. Now FIFA 06 sounds great with AX HLE. 2012-11-27 00:03:40 +01:00
Pierre Bourdon 706939e632 Implement command 10, used by FIFA 06 and linked to AUXB mixing. Sound still broken in that game. 2012-11-27 00:03:02 +01:00
Pierre Bourdon fb1ecd90b0 Implemented command 13 in GC AX, used in some EA games (FIFA 06 now has broken sound, which is still better than no sound) 2012-11-26 23:34:18 +01:00
rog db458a234a Merge branch 'desync-fixes' into movie-fixes 2012-11-26 12:40:56 -05:00
rog 38e0d06e8c Whoops, was calling GetMD5() twice. 2012-11-26 12:29:36 -05:00
rog 3d9712a99e Remove more unused code. 2012-11-26 03:48:04 -05:00
rog c2146921f9 Call InputUpdate() for wii games when using gc controller but not wiimote. 2012-11-26 03:04:17 -05:00
rog 97f5b1665f what is this even... 2012-11-26 02:11:52 -05:00
rog 0903e20817 Expand input buffer as needed, instead of hardcoding it at 40 MiB.
Patch (mostly) by Ilari.
2012-11-25 22:41:48 -05:00
rog 1917f83244 Cleanup and misc movie fixes. 2012-11-25 19:26:37 -05:00
rog 0c6dad6a37 Clear unneeded variables upon stopping emulation. 2012-11-24 18:27:20 -05:00
rog d26c7fea17 Remove old, unused code. 2012-11-24 01:40:34 -05:00
rog f251704df2 The trick to multithreaded emulation is to include thread.h more than once.
Also, rewords some awkardly written messages.
2012-11-24 01:15:26 -05:00
rog a374f9f049 Check md5 when recording from save state too. 2012-11-23 22:47:32 -05:00
rog ca650d4435 Record md5 of game file to .dtm, and check it when playing back. 2012-11-23 22:23:58 -05:00
skidau 085c81da86 Mapped the addco and subfco PowerPC instructions. Fixes Frogger: Hyper Arcade Edition. 2012-11-24 00:04:28 +11:00
NeoBrainX 0fcb246b7e Enable GFX debugger functionality in Release builds. 2012-11-20 17:54:48 +01:00
Pierre Bourdon 9d85052a66 Implement Wiimote audio output in AXWii. Not very useful yet as no sound is currently being mixed to the wiimote channels. 2012-11-20 11:34:49 +01:00
Pierre Bourdon affdf08fd6 Real fix for the crashes on Windows with AXWii 2012-11-20 09:49:27 +01:00
Pierre Bourdon e858835c7e Fixing the hack fix (I can't multiply 32x32) 2012-11-20 04:26:07 +01:00
Pierre Bourdon 0d3c3f6339 Fix a crash in AXWii with SRC ratio > 4 (which I thought was impossible, but AXWii changed the SRC algorithm) 2012-11-20 04:18:48 +01:00
Pierre Bourdon 321e3a8421 Add global volume handling for AUX mixing and L/R output in AXWii 2012-11-20 03:32:29 +01:00
Pierre Bourdon ae85159a94 Add surround sound support to GC AX HLE 2012-11-20 03:22:24 +01:00
Pierre Bourdon 954c55e35a New AXWii now working properly in some games I tested 2012-11-20 03:13:55 +01:00
Pierre Bourdon e750bed2a9 Rename NewAX -> AX and remove the old code. Time to work on AXWii. 2012-11-19 22:03:56 +01:00
NeoBrainX 4f652c4086 Partially revert "Check if BP and XF changes actually change values before flushing". Dolphin code sucks too much to get optimizations.
This reverts commit 5a77cae2e3.

Fixes issue 5459.
Fixes issue 5606.
2012-11-19 21:09:31 +01:00
parlane d7e65f03e4 Fix indentation [ using the web editor D: ] 2012-11-19 19:44:44 +00:00
Pierre Bourdon 4f88fee560 Added a small TODO list of things missing in NewAX 2012-11-19 20:25:57 +01:00
Pierre Bourdon 3541d33c25 Support both versions of the mixer_control bitfield. Fixes Skies of Arcadia music being muted (and sounds being mixed only on the left audio channel), this time without a hack. 2012-11-19 20:10:37 +01:00
NeoBrainX 4ff9e03509 Merge branch 'efb_scaling_fixes'. 2012-11-19 13:18:57 +01:00
NeoBrainX b02bb7617f Fix some fractional EFB scaling issues. 2012-11-19 13:10:32 +01:00
parlane 9345501388 Dolphin was crashing after attempting to use a NULL on macosx.
(turns out that passing NULL to string cmp funcs has "undefined behavior".)

Thanks to Grant Paul for this quickfix!
2012-11-19 03:19:51 +00:00
rog 69e8942dac Fixes pausing movies for some 30 fps games, in some situations.
Thanks abahbob for testing.
2012-11-18 01:07:48 -05:00
XtraFear d6697d50c7 Added option to toggle the display of On-Screen Display messages in the Interface tab. 2012-11-16 23:54:48 +01:00
NeoBrainX a135512f9b Build fix.
Fixes issue 5674.
2012-11-16 23:46:28 +01:00
rog 3a8e8af2d5 Merge movie-fixes. 2012-11-16 12:07:22 -05:00
rog 101de62c86 Remove an old TODO, and add a new one. 2012-11-16 12:03:51 -05:00
NeoBrainX f88e7d3b73 Fix an off-by-one error. 2012-11-16 14:29:11 +01:00
NeoBrainX a38bb488d2 Remove Renderer::xScale and Renderer::yScale. 2012-11-16 14:29:09 +01:00
NeoBrainX 78031c2d54 Move ComputeDrawRectangle() to Renderer::UpdateDrawRectangle(). 2012-11-16 14:25:49 +01:00
Pierre Bourdon c8b2ba1bc6 Implement the MORE command (0D) used to read more commands from the CPU 2012-11-16 07:51:19 +01:00
Braden a024d04583 Patch by mwessel that fixes real wiimotes on OSX 10.8 2012-11-15 21:30:19 -06:00
X-tra Fear 5170d65711 Fixed last commit. 2012-11-15 14:47:51 -05:00
Pierre Bourdon 5a2d8661d7 Add comments explaining how the voice processing works 2012-11-15 16:57:33 +01:00
Pierre Bourdon aa90f799b7 Re-implementation of the AX voice mixing algorithm. Now with 100% less WTF. 2012-11-15 16:30:05 +01:00
rog 25a1979b22 Merge https://code.google.com/r/xtrafear-dolphin-emu 2012-11-14 17:27:46 -05:00
rog 14aa7150d9 Add option for author name for movies. Also, minor cleanup for previous options i've added. 2012-11-14 16:23:20 -05:00
X-tra Fear 11fc13aea4 Fixed WiiMotes disconnecting when ES_LAUNCH is ran. 2012-11-14 16:12:25 -05:00
rog f5a3379d71 Add config option for mac address. Fixes issue 5694. 2012-11-14 14:28:38 -05:00
Pierre Bourdon 531cc6aaf3 Fixed AUXB_NOWRITE command number and implemented UPLOAD_LRS command (06) 2012-11-14 18:08:29 +01:00
Pierre Bourdon f84f15c5bf Oops, forgot a memset which removed all AUX effects 2012-11-14 18:03:55 +01:00
Pierre Bourdon a630357c9e Add AUX mixing support as well as a send&return effect implementation 2012-11-14 17:55:16 +01:00
Pierre Bourdon 61c1fab2c6 Fix Windows support again: std::thread can't take a member pointer with StdThread.h from Common 2012-11-14 12:13:19 +01:00
Pierre Bourdon db46ccd175 More accurate mixing buffers initialization using parameters from command 00 2012-11-14 12:08:41 +01:00
Pierre Bourdon 24d430eba0 Add NewAX to the VC++ project files 2012-11-14 11:32:57 +01:00
Pierre Bourdon 6a1241c03e Make a hack optional to fix 48KHz output mode with NewAX 2012-11-14 11:25:27 +01:00
Pierre Bourdon 0b275c20af Added output support to NewAX. Now working fine with Tales of Symphonia. 2012-11-14 11:20:54 +01:00
Pierre Bourdon 18f3630af5 PBs processing is now done, just need the output to be able to test 2012-11-14 06:53:36 +01:00
Pierre Bourdon 7535c6d903 Parse the AX command list in the AX thread 2012-11-14 06:15:55 +01:00
Pierre Bourdon 9e813502ac Create a new thread for AX and make it handle the command lists 2012-11-14 05:33:04 +01:00
Pierre Bourdon 3195916744 Basic infrastructure for the new AX HLE, currently not doing anything besides answering mails 2012-11-14 05:08:04 +01:00
Pierre Bourdon e4d18e3a8b Bound the iteration on the PB list when processing updates.
Fixes freezes introduced in 3.0-807 with DSPHLE on some AX games.

Apparently logic doesn't apply inside the HW/DSPHLE/UCodes directory.
2012-11-13 16:50:42 +01:00
Pierre Bourdon 16060290c2 Fix missing notes in musics with DSPHLE.
Tales of Symphonia and Skies of Arcadia Legends now have working musics with
DSPHLE. Some other games with the same symptoms (missing instruments) should
probably be fixed by that change too.
2012-11-13 09:37:44 +01:00
rog 8fe5aa4ee8 movie cleanup 2012-11-12 20:40:11 -05:00
rog 8eb6f9002e Fixes interpreter when not recording or playing back a movie. 2012-11-12 20:20:34 -05:00
rog a5d210129d Add an on screen lag counter. 2012-11-11 17:57:06 -05:00
rog 35e5a1e592 Add an option to pause on the last frame of a movie. 2012-11-10 21:57:31 -05:00
Rog e8c0fea16e Retain dsp JIT setting when switching to HLE. Fixes issue 5691. 2012-11-09 12:08:56 -05:00
Rog ab48e1154b Stop saving undo buffer (and associated .dtm, and .sav) when starting playing back a movie from save state. This is completely useless, and just wastes time copying save states around. 2012-11-08 23:25:55 -05:00
NeoBrainX 6f21f5eb34 Video_Software: Implement texture preloading 2012-11-03 15:41:41 +01:00
Pierre Bourdon d13163380d Bye mamario, you won't be missed 2012-11-02 02:48:55 +01:00
sulokuTDCmago d032c40a58 - Added a new wilcard for importing savegames, which basically shows all saves (gci, gcs and sav). This is set as default (I really got frustrated of having to change the type every single time when making tests for GCMM, and I think it makes more sense at user level to just show all saves regardless the format)
- In icon retrieving I removed the "format check" as it shouldn't really matter to have mixed icon formats. Also removed the "Time splitters hack" as there's no reason for it since we are only checking the last 3 bits and I'm pretty sure having bits 1 and 2 set is the same as having them unset.
- Icon retrieving uses AnimSpeed as stop signal (every icon must have an speed set, the first speed that is 0 means there are no more icons)
- Also, in icon retrieving I added support for "blank frames"(Luigi's Mansion and Pikmin that I know of). With this the base for icon animation is complete.
- Fixed PSOIII savegame patch which was wrong before.

Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-10-29 21:02:59 -07:00
Sonicadvance1 5dd49edaec Badaboom. Add in Memory include to CDUtils.cpp 2012-10-30 02:45:42 +00:00
skidau 303b0f6b6d Test the audio loop with aligned addresses. Fixes the high pitched squeal in Muramasa. 2012-10-29 14:03:28 +11:00
Ryan Houdek fb92c338af Bit of cleanup and fixing of one issue that was noticeable in SMS with Mario's shadow. 2012-10-27 22:50:06 -05:00
skidau 882d5161f8 Merge branch 'Capcom-Music-Loop'
* Capcom-Music-Loop:
  Removed the fake DMA wait time as it is no longer needed after the aram-dma-fixes branch is merged.  This fixes the Resident Evil 2/3 cutscene audio in DSP LLE mode.  Fixes issue 2723.
  Changed the loop end address detection to an exact match with the current address for ADPCM audio.  Fixes the non-looping music in PN03.
2012-10-28 13:36:34 +11:00
Ryan Houdek dfb3c44d1a Remove glMatrixMode and glLoadIdentity calls in Render.cpp which do absolutely nothing. 2012-10-27 18:27:16 -05:00
Ryan Houdek 8c1d104ca3 Change EFB copy location rectangles over to a Vertex array 2012-10-27 18:10:31 -05:00
Ryan Houdek c1fd640964 Rebase immediate-removal on master 2012-10-27 17:22:48 -05:00
rog 95d55ed1c7 fixes for backing up wii saves when playing a movie 2012-10-26 20:04:06 -04:00
rog 8921fe0d09 move wii saves to a backup if playing a movie that starts with no save 2012-10-26 17:36:18 -04:00
rog 0bc2021284 save if a wii game's save data exists when starting recording. Probably not the best way to do this, and could result in a false negative if banner.bin exists, but the actual save file doesn't, but this should work well enough. 2012-10-25 03:15:54 -04:00
rog 8dfb12da3e stuff 2012-10-24 23:21:34 -04:00
rog 76a6917fdf Check game ID against what is recorded to the .dtm 2012-10-24 19:42:04 -04:00
rog 7ee455ce3b When beginning recording, check settings in Init() instead of just in BeginRecordingInput(), since it's called after bootmanager.cpp reads the game's config. 2012-10-24 18:44:26 -04:00
rog 7006cd1217 i'm still not using a branch to fix the name of a variable 2012-10-24 15:32:02 -04:00
rog 4358f8384f readd memory card detection for movie code. I deleted this before, intending to move it elsewhere, but never did 2012-10-24 15:16:41 -04:00
rog a1186d84df update state version 2012-10-23 02:31:16 -04:00
rog 5133ac551b merge relevant changes from bc61dbdf58a8 in otu0001-desync-fix clone 2012-10-23 02:10:49 -04:00
rodolfoosvaldobogado 72cb1734ee Some code cleaning for my last commit.
the amount and size of the buffer is now changed to "new hardware" frienly values and will fall back to the right values if hardware does not support them.
my next commit will be to a branch, with my ogl work.
2012-10-22 19:37:26 -03:00
skidau 421a75493c Removed the fake DMA wait time as it is no longer needed after the aram-dma-fixes branch is merged. This fixes the Resident Evil 2/3 cutscene audio in DSP LLE mode. Fixes issue 2723.
Removed the ADPCM format detection from the previous commit as it broke the audio looping in Knockout Kings 2003.
2012-10-23 00:30:01 +11:00
skidau b2a01dc348 Changed the loop end address detection to an exact match with the current address for ADPCM audio. Fixes the non-looping music in PN03.
Fixes issue 3998.
2012-10-22 22:59:35 +11:00
NeoBrainX f7edfc0118 FifoPlayer: Copy selected object commands to clipboard when pressing ctrl+c 2012-10-22 12:32:57 +02:00
rog aece5310f3 more movie cleanup. Removes the remaining globals that didn't need to be global, rearranges some code to make more sense, and removes some redundant code. 2012-10-21 23:20:28 -04:00
rog 9070e7ff8c misc movie cleanup and fixes 2012-10-20 22:26:40 -04:00
rog 92d2f5dee2 keeping padding right is so hard 2012-10-20 15:58:29 -04:00
rog a6028b055b Save disc changes to .dtm, and load the full movie header every time it's loaded. 2012-10-20 14:40:16 -04:00
rodolfoosvaldobogado@gmail.com 5230146c73 Hey, long time no commits :).
So to compensate lets bring back some speed to the emulation.
change a little the way the vertex are send to the gpu,
This first implementation changes dx9 a lot and dx11 a little to increase the parallelism between the cpu and gpu.
ogl: is my next step in ogl is a little more trickier so i have to take a little more time.
the original concept is Marcos idea, with my little touch to make it even more faster.
what to look for: SPEEEEEDDD :).
please test it a lot and let me know if you see any problem.
in dx9 the code is prepared to fall back to the previous implementation if your card does not support the amount of buffers needed.
So if you did not experience any speed gains you know where is the problem :).
for the ones with more experience and compression of the code please test changing the amount and size of the buffers to tune this for your specific machine.
The current values are the sweet spot for my machine.
All must Thanks Marcos, I hate him for giving good ideas when I'm full of work.
2012-10-20 10:22:15 -03:00
rog 0384f61af3 re-rearrange movie code so it actually works all of the time 2012-10-19 19:43:03 -04:00
rog b1dee5fc23 small fix for undo load state while not recording 2012-10-18 04:40:56 -04:00
rog 79692a6c78 save settings necessary for syncing a movie to the .dtm, and load them upon playback 2012-10-18 04:18:40 -04:00
rog 783409c765 clear the save state loaded from a previous movie when starting emulation 2012-10-18 04:14:25 -04:00
rog 6b99b746c8 fix undo load state and load last overwritten state while recording 2012-10-18 04:11:14 -04:00
rog 7f624cda10 fix recording from save state 2012-10-18 04:03:12 -04:00
rog a366521d13 Correct the hotkey labels for undo load state, and load last overwritten state buttons 2012-10-18 03:30:44 -04:00
Pierre Bourdon 3990002250 Optimize JitCache::InvalidateICache by maintaining a "valid blocks" bitset
Most of the InvalidateICache calls are for a 32 bytes block: this is the
number of bytes invalidated by PowerPC dcb*/icb* instructions. Profiling
shows that a lot of CPU time is spent checking if there are any JIT blocks
covered by these 32 bytes (using std::map::lower_bound).

This patch adds a bitset containing the state of every 32 bytes block in
RAM (JIT cached/not JIT cached). Using that, a 32 bytes InvalidateICache
can check in the bitset if any JIT block might be invalidated. A bitset
check is a lot faster than an std::map::lower_bound operation, improving
performance of JitCache::InvalidateICache by more than 100%.

Some practical numbers:

* Xenoblade Chronicles (PAL)
  56.04FPS -> 59.28FPS (+5.78%)
* The Last Story (PAL)
  30.9FPS -> 32.83FPS (+6.25%)
* Super Mario Galaxy (PAL)
  59.76FPS -> 62.46FPS (+4.52%)

This function still takes more time than it should - more optimization in
this area might be possible (specializing for 32 bytes blocks to avoid
useless memcpy, for example).
2012-10-06 01:49:09 +02:00
Pierre Bourdon 8cefcaa94c Implement a simple benchmarking mode which logs FPS to a file
Very useful to compare performance between two builds, check the impact of
a configuration option, etc. FPS log is stored in User/Logs/fps.txt and is
reset each time you launch a game. Only enabled if you check the "Log FPS
to file" option in your graphics settings.

Could be improved a bit: currently logs only every 1s (so you can't really
see small variations), maybe output more infos to the fps.txt like
average/stddev (but Excel/Libreoffice/Google Docs can compute that easily
too).
2012-10-04 05:41:02 +02:00