Commit Graph

1588 Commits

Author SHA1 Message Date
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
LPFaint99 603bd9982d bugfix for memorycard manager. fixes exporting from page > 1 on slot b, thanks to suloku for reporting
Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-08-19 20:45:43 -07:00
Pierre Bourdon a2b71f1ed7 Clean up WX style issues mentionned in previous commits comments 2012-08-06 14:21:49 +02:00
Pierre Bourdon fe1501db9a Check if WX recognized a key before testing if it's a hotkey
Fixes issue 5537.
2012-08-05 17:28:57 +02:00
Pierre Bourdon b3c9f437db Return early from DoOpen if the user cancelled the file picker box
Fixes issue 5551
2012-08-05 16:53:36 +02:00
NeoBrainX 8bed27a3d1 Enable hires textures even when texture dumping is enabled.
Remove some deprecated code.
2012-06-20 18:18:17 +02:00
NeoBrainX 8d30ac462a Instead of invalidating texcache whenever the graphics configuration dialog gets opened, clean up textures on configuration changes. 2012-06-20 18:18:05 +02:00
Pierre Bourdon e550623b11 Added a button to dump the FakeVMEM from the memory debugger if the game uses it 2012-06-19 13:51:29 +02:00
NeoBrainX 227580d1a5 Remove "Disable Textures". 2012-06-11 23:35:46 +02:00
NeoBrainX 1dd6b978c1 Remove "Disable Lighting". 2012-06-11 23:30:20 +02:00
NeoBrainX b5ad382b07 Fast mipmaps deserves to die!! 2012-06-08 00:22:57 +02:00
Glenn Rice 00f6b7b6ea Fix core dump on start up on linux. Thanks to degasus. 2012-05-26 08:24:18 -05:00
Pierre Bourdon 1efabea9b4 Fix compilation errors with g++4.7 2012-05-26 08:09:50 +02:00
skidau b79d8d9e10 Fixed the Cheat Search. Patch by nagosaki. 2012-05-26 15:45:58 +10:00
Braden 82cb14e49b Actually fixes crashing on start up. 2012-05-26 13:21:30 +10:00
Braden cbc84ecd72 set variables equal to zero or false correctly. Should fix crashes on 32bit version. 2012-05-26 13:21:30 +10:00
Braden defb4c255d Allows analog sticks to be used with the TAS Input Open. 2012-05-26 13:21:30 +10:00
unknown 873437d58a Adds better support for the tas input. 2012-05-26 13:21:29 +10:00
nitsuja a81631b58e made savestates synchronous and immediate. this allows saving or loading while the emulator is paused, fixes issues where savestate hotkeys would get ignored if pressed too close together, might speed up savestates in some cases, and hopefully makes savestates more stable too.
the intent is to replace the haphazard scheduling and finger-crossing associated with saving/loading with the correct and minimal necessary wait for each thread to reach a known safe location before commencing the savestate operation, and for any already-paused components to not need to be resumed to do so.
2012-05-26 13:09:38 +10:00
Pierre Bourdon 77f47866df Add Wii DVD integrity checking to Dolphin
This allows users to easily check whether their Wii dump is corrupted or not
using the Dolphin properties window. Right click on a game, Properties,
Filesystem tab, then right click on the game partition and select "Check
partition integrity".

This may have some false negatives due to the unused clusters heuristic (see
the comment in VolumeWiiCrypted.cpp). False positives are unlikely.
2012-05-04 16:27:42 +02:00
orphis 6254edcfbc Add the missing *.wbfs extension to the file picker. 2012-05-03 22:27:06 +00:00
skidau 0e812cb187 JIT32 fix.
Added wbfs to the File Open list.
2012-05-04 07:00:30 +10:00
skidau 7885e63deb Added wbfs support. Thanks to lordlyhobo for the patch. Fixes issue 859. 2012-05-04 00:09:01 +10:00
skidau d7f468a781 Applied the "Hide cursor" fix to the Pause button. 2012-05-03 20:57:22 +10:00
Glenn Rice 40640217f1 Fix hide mouse cursor on linux.
Fix emulator window position when rendering to main on linux.
Allow building against wxWidgets 2.9.3 on linux.
2012-05-02 14:40:40 -05:00
skidau 5ceef0c513 Removed the DTK Music option. It is now always enabled. 2012-04-23 05:02:43 +10:00
Pierre Bourdon c08510baa8 wxWindow::FindFocus() sometimes return NULL, check for that to avoid segfaulting 2012-04-15 02:24:41 +02:00
skidau 5d9ac22d58 Added a "Keep window on top" option in the graphics options. 2012-04-08 10:29:49 +10:00
skidau 995a84e06a Removed CGDisplayCapture from the OSX fullscreen mode code, fixing full-screen mode. Thanks to celgilles for the patch.
Fixes issue 5331.
2012-03-31 13:48:40 +11:00
NeoBrainX 460610ea0e Revert Rodolfo's recent zcomploc commits until they actually work correctly.
This reverts commit 402006a83a.
This reverts commit 48d8d71391.
This reverts commit 450dcc9d2c.
2012-03-30 01:57:53 +02:00
LPFaint99 f7c17c6351 Merge branch 'GCMemcardFixes' 2012-03-29 14:39:01 -07:00
rodolfoosvaldobogado 402006a83a more fixes to zcomplock and opengl implementation 2012-03-29 18:26:58 -03:00
NeoBrainX 2356def0d4 Merge branch 'fifoplayer_updates'.
This adds an "Analyzer" tab to the fifoplayer dialog which allows to conveniently browse through all register pokes that are being sent by the game each frame.
There's also a search function, but it doesn't work all that well for anything but simple searches at the moment. However, I'm merging this anyway since I'm not sure if I'm going to finish this.

Note that due to recent fifo changes, it's not yet possible to run fifoplayer in dual-core mode.
2012-03-29 22:50:45 +02:00
NeoBrainX 04c2f2382f FifoPlayerDlg: Don't use wxString::fromAscii() 2012-03-29 21:50:21 +02:00
rodolfoosvaldobogado 450dcc9d2c As requested, this is my implementation of zcomploc using a multi-pass algorithm. My apologize to the others devs for committing in the main branch but is the only way to get this tested as soon as possible.
please test for regressions, speed and for other issues fixed, as a example, the black color in water splash in super mario galaxy are fixed with this rev.
please as soon as yo find a bug let me know.
2012-03-27 15:44:58 -03:00
Shawn Hoffman 5bf99f461b Add some padding to the GameList column sizes on non-MSW.
These underlying controls seem to insert 8px of divider between each column.
2012-03-22 18:45:11 -07:00
Shawn Hoffman 7d57b925e6 Disable wxHAS_MSW_TASKDIALOG because as of wxW svn r70933,
there is a bug with the wxPD_AUTO_HIDE style which can cause a non-dolphin
window to come to the foreground after auto-closing of the TaskDialog.
2012-03-24 20:59:20 -07:00
Shawn Hoffman e0941828f5 Fix uglies on gcpad/wiimote config pages.
Use wxPanel in place of wxNotebookPage (which is really just a typedef for wxWindow). This applies the correct background color for the page.
2012-03-23 00:27:54 -07:00
Shawn Hoffman f7423a0a4f Merge branch 'master' into wxw3-update
Conflicts:
	Source/Core/DolphinWX/Src/LogWindow.cpp
2012-03-22 17:57:38 -07:00
LPFaint99 9c9e593479 fix crash on windows while changing exi/si devices when interface language is Japanese or Chinese 2012-03-22 14:52:20 -07:00
skidau a60a0825a3 Merged 'FifoBusy' branch. Thanks
to marcosvitali.

Added an external exception check when the CPU writes to the FIFO.  This allows
the CPU time to service FIFO overflows.  Fixes random hangs caused by FIFO
overflows and desyncs like in "The Last Story" and "Battalion Wars 2".  Thanks
to marcosvitali for the research.

Added some code to unlink invalidated blocks so that the recompiled block can be
linked (speed-up).

This release still fixed the hangs produced by fifo overflow without sacrifice
performance. For example you can test Tutorial moves at the beginning of The last history now
is fluid 30/60.

Fixed possibles random hangs in DC mode.
Fixed hangs in DC mode in (Simpsons, Monkey Island, Pokemon XD, etc)
Implemented accurate management of Pixel Engine Interrupts.  Now the GPU loop
is stopped when a PE Interrupt needs to be managed and resumed when Pixel Engine
finish.

Fixed Metroid Prime 3 and 2 desync. And other games with desync because of
FIFO Reset. That happens because  FIFO_RW_DISTANCE_HI must be written first, for checking
fifo.CPReadWriteDistance == 0, so some fifo resets was not managed in the right
way.

Fixed Super Monkey Ball in some cases when the game write the
WriteReadDistance need to be safe like the SafeCPRead.

Improved the CheckException for the GatherPipe writes in JIT, now only the
External Exceptions are processed.

Fixed definitely Pokemon XD in dual core mode. This game is doing something
not allowed. It attach to CPU the same fifo attached to the GPU in multibuffer
mode. I added a check to prevent overwrite the GPU FIFO with the CPU FIFO. If
the game do that on breakpoint the solution can fail.

Fixed ReadWriteDistance calc when CPRead > CPWrite.

Added Token and Finish cause to GP Jit checking.

Additional cleanup in CommandProcessor.



Fixes issue 5209
Fixes issue 5055
Fixes issue 4889
Fixes issue 4061
Fixes issue 4010
Fixes issue 3902
2012-03-20 19:37:25 +11:00
Shawn Hoffman ff6023df27 Change wxString(<string>, wxConvUTF8) method of creating unicode from filenames to wxSafeConvertMB2WX()
(Just applied to FrameTools.cpp for now)
Allows one to properly restart Pokémon by hitting play :P

Ignore non-ASCII strings passed to DisplayMessage(). These strings would end up going to renderer display and statusbar/titlebar, which can't handle them properly.
2012-03-19 10:37:15 -07:00
Shawn Hoffman 4a1e8ba30a sigh...fix #ifdefs in last commit... 2012-03-19 07:46:23 -07:00
Shawn Hoffman 05c964e6d6 wxw3: OSX can use the same method of hiding cursors as MSW 2012-03-19 07:40:27 -07:00
Shawn Hoffman 35a5a3b9d4 Fix "Hid cursor" causing a wxWidgets warning 2012-03-19 06:54:02 -07:00
Shawn Hoffman c3a537728f Don't allow wiimote config while in Gamecube mode
Fixes crash when attempting to open emulated wiimote config in Gamecube mode
2012-03-19 06:03:23 -07:00
Andrew de los Reyes d6d52920ec Fix segfault in LogWindow on Mac
Commit 9ddb67d4a9 seems to have
introduced a segfault on Mac. The issue is that it this change casts
wxConvCurrent (which is a wxMBConvLibc) to a wxCSConv. This is an
unsafe cast because wxCSConv has member variables, but wxMBConvLibc
does not.

In LogWindow.cpp, the constructor for m_SJISConv is dereferencing one
of those member variables, which is a dereference of uninitialized
memory!

This CL reverts to the older (non-crashing) constructor, but keeps the
behavior the same.
2012-03-18 15:11:34 -07:00
Shawn Hoffman ff63c689d6 wxMSW no longer allows overriding OnPaintDrawImages, so remove the msw-specific drawing code from the GameListCtrl (it's rendered correctly by default) 2012-03-18 02:33:03 -07:00
Shawn Hoffman c3d13b048c build against wxWidgets3 from Externals on Windows.
use Externals version of libpng on Windows.
2012-03-18 02:31:19 -07:00
Shawn Hoffman 8bdf93a15c fix logwindow crash 2012-03-17 21:51:24 -07:00
Shawn Hoffman 1fbf2e38c4 wxw implements wxEVT_THREAD itself now 2012-03-17 21:50:40 -07:00
Shawn Hoffman a648aca65c wxWidgets3: update to svn r70933 2012-03-17 21:47:47 -07:00
skidau 05692b1e7e Sped up to the Dolphin debugger by not checking for breakpoints when stepping.
Fixed the JIT cache, invalidating one instruction length at a time.
Fixed a bug where the JIT cache did not get invalidated when stepping.
Disabled fused instructions in the debugger.
2012-03-16 20:08:05 +11:00
skidau bf76b802a7 Fixed the in-built Dolphin profiler. 2012-03-10 16:24:13 +11:00
parlane bea635d1d5 Fixes issue 5214 for real! 2012-02-15 20:56:50 +00:00
LPFaint99 3d20c57458 Update directorys and BlockAllocs correctly, use the most uptodate directory/bat instead of always the first
Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-02-12 14:40:03 -08:00
LPFaint99 dfe890e8f1 pass by reference instead of pointer in several places,
return std::strings instead of filling a buffer,
move gci filename generation to a function inside gcmemcard instead of the gui code
 change all functions that do not modify the object to const

Conflicts:

	Source/Core/Core/Src/HW/GCMemcard.cpp
	Source/Core/DolphinWX/Src/MemcardManager.cpp

Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-02-12 14:39:10 -08:00
LPFaint99 d5c393fe96 initial work on displaying, exporting, and deleting from
memory cards that have gaps in the fst

Conflicts:

	.gitignore
	Source/Core/DolphinWX/Src/MemcardManager.cpp

Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-02-12 14:38:55 -08:00
LPFaint99 98993bfbd3 fix the twocardsloaded settings, correctly disables the copy functions when only one card is loaded
Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-02-12 14:38:44 -08:00
LPFaint99 5cfb03da26 Merge branch 'variousSmallFixes' 2012-02-01 16:50:09 -08:00
LPFaint99 d6de53f235 convert name, notes and creator to wxstring using *wxConvCurrent instead of FromAscii. fix issue 5069 2012-02-01 00:09:24 -08:00
LPFaint99 a78c5f984f download codes for virtualconsole titles 2012-02-01 00:09:23 -08:00
LPFaint99 60594c079d allow just ejecting the disc by canceling the file dialog 2012-02-01 00:03:49 -08:00
NeoBrainX 5239ba88c9 TextureCache: Remove unsafe texture cache 2012-01-31 18:09:35 +01:00
LPFaint99 04a7e33f0b proper unicode literal and wstring to wxstring conversions.
Fixes issue 5156.
2012-01-27 00:30:52 -08:00
NeoBrainX ad1a4d7ce3 FifoPlayer: Add a search function for the analyzer tab.
Also some tiny fixes.
2012-01-21 13:49:24 +01:00
NeoBrainX 5eb24a51cf FifoPlayer: Add a description label for the currently selected object command.
Requires adding such descriptions for all BP/CP/XF registers. For now, I added descriptions for EFB copy related BP registers.
2012-01-21 13:49:24 +01:00
NeoBrainX 8c62a56c71 FifoPlayer: Show full data of XF register loads (Did I do this correctly?) 2012-01-21 13:49:24 +01:00
NeoBrainX 700123c55b FifoPlayer: Add an "Analyzer" tab which allows browsing through all rendered objects per frame and through all register setting commands per object 2012-01-21 13:49:24 +01:00
nitsuja 31ff1907a4 added an option to log to the attached Windows debugger (so e.g. NOTICE_LOG messages can show up in Visual Studio's output window) 2012-01-07 23:04:18 -08:00
skidau 318d3cff02 Added a note to try the native code handler in the error message window.
Added copyright notices.
2012-01-03 01:24:16 -05:00
nitsuja 0d9e87da18 prevent CLogWindow::UpdateLog from constantly burning through timer objects, because it was allocating memory a lot and making it hard to debug some things. I think this should be faster even in release builds, but any speedup is probably too tiny to measure. 2012-01-01 14:28:21 -08:00
skidau c53593a40a Moved the Audio Throttle option to the Framelimit drop-down. The Audio Throttle should never be used alongside the frame limiter as that can cause audio sync issues. 2012-01-01 14:32:54 +11:00
LPFaint99 d389f7139b restore wii sorting order by using the ascii string from the banner instead of the iso file 2011-12-22 15:53:41 -08:00
LPFaint99 ca8af741b8 Merge branch 'unicode_gamelist' 2011-12-22 14:29:47 -08:00
LPFaint99 825e2ea4df fix an ascii/wxstring in gamelistctrl, replace fromascii("") with wxemptystring, don't push_back 0 at the end of wstrings 2011-12-22 14:28:12 -08:00
LPFaint99 8f6c25a5aa cleanup: merge handling of ntsc/pal games in gamelist/isoproperties 2011-12-20 02:19:46 -08:00
LPFaint99 e4c4602d9e use windows-1252 for gamename/description, fixes copyright/tm symbol in the gamelist & isoproperties 2011-12-20 02:10:40 -08:00
LPFaint99 9ddb67d4a9 fix shift-jis conversion on linux, and check for the codepage on windows in the memorycard manager like everywhere else 2011-12-20 01:35:12 -08:00
nitsuja 3006d0696c fix the read-only menu item being disabled when emulation is paused (the hotkey was fine but I guess some people still use the menu) 2011-12-19 16:38:07 -08:00
LPFaint99 de4e3e7462 add wstring name(s)/description to the cachefile, use when available in gamelist and properties window 2011-12-18 22:01:46 -08:00
nitsuja 567e90bbd5 fix for an un-threadsafe call to UpdateGUI (oops) 2011-12-18 20:38:54 -08:00
Glenn Rice 4ecb48eaf8 Update a few more translations and add Farsi. 2011-12-18 14:03:57 -06:00
Pierre Bourdon b20c26f0b7 Adding more drama to the git history. 2011-12-18 13:58:44 +01:00
kostamarino@hotmail.com 9829beab42 Gameini database update, mainly changes to the emulation issues lines (make them shorter, with more substance and less bla bla, update outdated stuff). The emulation issues lines can be further improved(this is a start).
Also re - implement the emulation issues column that was reverted, make it a bit bigger since sentences need more words and delete the issues portion of the emustate tooltip since it is unnecessary now.
2011-12-18 14:52:40 +02:00
nitsuja d44fc0c820 small fixes for some recording-related menu items 2011-12-18 02:23:59 -08:00
nitsuja c88e4a097e update ui after savestate load (because loading a savestate can affect whether certain items should be grayed out in the menu) 2011-12-18 01:15:59 -08:00
Jordan Woyak 98d22d0e03 Revert the latest GUI change (Emulation Notes column). We don't care for it. 2011-12-17 23:44:09 -06:00
kostamarino@hotmail.com a58c46be81 Gui change and an update to the gameini database.
The "Notes" column is gone and in it's place an "Emulation Notes" column is placed (it contains the emulationissues lines from the game inis). Notes that contain useful info about the game can be seen with just a glance this way.

Fixes issue 5043.
2011-12-16 21:01:10 +02:00
nitsuja f3325036be fixed hotkeys getting ignored after tab is pressed 2011-12-11 21:54:50 -08:00
nitsuja 2c2ef9a961 made frame advance act normal (so it advances 1 frame each time instead of waiting for further unpause commands), and did some minor improvements to the read-only command (making the UI behavior a little nicer, no actual changes to what read-only does at this point) 2011-12-11 21:08:26 -08:00
Pierre Bourdon 7f055d6b56 UI: refactor the game list sorting code 2011-11-02 02:45:51 +01:00
crudelios dd551814c9 Bounding Box bugfixes.
- Fixes all (I hope) BBox-related unknown pointer crashes.
- Fixes wrong BBox values with Frame Skip on (and the resulting unknown pointer crashes).
- Fixes a small oversight on the change I made to the ISO Properties dialog.

This should also be a (very very little) bit faster than the previous version.
2011-10-28 21:12:12 +01:00
crudelios 852fe9c4be Added proper Bounding Box support.
Should fix most graphical issues with Paper Mario: TTYD and Super Paper Mario. Fixes issue 360.

Since only those two games seem to require BBox support, and as per ector's suggestion, BBox is only enabled for those two games.

BBoxes and Display List Caches don't get along too well, causing Paper Mario: TTYD to hang during certain effects where BBoxes are used. For now, I disabled DList Cache for the Paper Mario games, hopefully both will be compatible in the future.
2011-10-26 01:19:10 +01:00
Shawn Hoffman 105e7e4eb4 Added TaruKonga (DK Bongos) support.
Separated SI Device IDs from the enums used for config/gui since quite a few device types all have the gc controller SI ID.
2011-10-23 07:01:17 -07:00
kostamarino@hotmail.com 8d9061ac39 Possible fix for random crashes with plenty of games(like Mario Galaxy) and issue 4568 (please test).
Gameini database changes that affects Black & Bruised, BLOODY ROAR(R): PRIMAL FURY, CASPER, Karaoke Revolution Party, Wii Music, TMNT.
2011-10-19 21:03:08 +03:00
Shawn Hoffman 46afefb14f Merge branch 'master' into gc-mic 2011-10-16 02:22:21 -07:00
skidau da9bd95a68 Renamed the "Disable Wiimote Speaker" option to "Alternate Wiimote Timing". 2011-10-09 22:10:47 +11:00
Shawn Hoffman 41424d98e8 Make the mic button respect which slot it's plugged into.
*You need to open the Gamecube config page and reselect the devices in slot A and B after this commit*

Just jitil left...
2011-10-09 03:18:15 -07:00
Shawn Hoffman ade9485aac ok...just need to update the button... 2011-10-09 01:11:48 -07:00