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
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
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
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
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
NeoBrainX
035840e7b5
Move last XFB size from Render to FramebufferManager.
2012-10-03 13:44:35 +02:00
NeoBrainX
6e4a61a991
Minor cleanups.
2012-10-03 13:44:04 +02:00
NeoBrainX
bb8b5936c0
Revert "Partially revert revision d511b506120c."
...
This reverts commit 08e06b2293
.
2012-09-27 18:15:44 +02:00
Sonicadvance1
8fed3b76c8
If setting videobackend back to null strings, Just set it to the front of the list. Fixes loading game specific INI files that don't load back the "default" video backend which is nothing.
2012-09-25 00:47:37 +00:00
Ryan Houdek
41266129ba
Should fix issue 5630.
2012-09-24 17:16:34 -05:00
Ryan Houdek
3229bf824c
Should actually load the backend when it changes via game INI
2012-09-23 17:54:23 -05:00
Ryan Houdek
f8f8aea577
Allow the user to set graphics backend from Game INI. Zero GUI option available for setting.
2012-09-23 16:02:11 -05:00
Ryan Houdek
b4ae200d0d
This changes a mmap in MemArena so you don't need 786MB of memory free to actually allocate the 1GB memory space in Linux 32bit. I was also running in to this issue in my development. Kudos to plbl4ster to actually taking the time to research this. Closes issue 5625.
2012-09-23 10:08:13 -05:00
sulokuTDCmago
1e174ad31a
F-Zero and Phantasy Star Online Memory Card Manager support. Thanks to Ralf from GS Central
...
Original information:
http://board.gscentral.org/retro-hacking/53093.htm
Signed-off-by: LPFaint99 <lpfaint99@gmail.com>
2012-09-21 21:41:04 -07:00
Pierre Bourdon
208d25c3f5
Revert merges of aram-dma-fixes and memcard-delay
...
These merges, while in theory improving emulation accuracy, cause issues
in other parts of the emulator based on invalid assumptions. memcard-delay
fixed some of these issues in the EXI memcard code, but several other
problems still exist and I don't have the time to debug that right now.
2012-09-07 01:11:38 +02:00
Scott Moreau
1ffb9ce47e
Fix broken build when using SDL from Externals.
...
The problem here was the logic that detects SDL in the main CMakeLists.txt
is not the same as it is in DolphinWX/CmakeLists.txt to set libraries. When
using SDL from Externals it failed at link time because -lSDL was never set.
This fixes the problem by using the same condition logic to set the libs
as used when detecting SDL in the first place.
2012-09-02 16:53:15 -06:00
Glenn Rice
d2e057d137
Update libav code to remove deprecation warnings.
2012-08-28 22:34:24 -05:00
Scott Moreau
6773261a85
Use correct linker flags for SDL.
2012-08-28 03:35:31 -06:00
Pierre Bourdon
90af798d3d
Partially revert be200074e9
for OS X systems
...
/dev/shm is not a tmpfs mountpoint on that operating system. Use /tmp but keep
the unlinking to avoid useless disk IO.
2012-08-25 03:30:37 +02:00
Pierre Bourdon
60aed4e5b0
Merge branch 'memcard-delay'
2012-08-24 12:45:45 +02:00
Ryan Houdek
be200074e9
[Linux] Change from using /tmp to /dev/shm in MemArena so we don't cause any disk IO, also unlink file while it is open to allow multiple instances running. This was discussed months ago, but was never implemented for whatever reason.
2012-08-22 23:39:50 -05:00
NeoBrainX
bab9b5d3ce
FifoPlayer: Fix fifo log playback in dual-core mode.
2012-08-22 01:04:09 +02:00
Pierre Bourdon
0b00c95b79
Simulate a small delay on GC Memcard operations
...
This was not needed for most games before because the external exception was
itself delayed. aram-dma-fixes changed that and made the external exception
happen a lot quicker, breaking games that relied on the memcard operations
delay.
Fixes issue 5583.
2012-08-20 13:49:12 +02:00
Pierre Bourdon
54fc4029dd
Use do { ... } while (0) for the *_LOG macros
...
Without this patch, such code would not compile:
if (cond)
WARN_LOG(FOO, "msg");
else
WARN_LOG(FOO, "msg2");
2012-08-20 13:12:49 +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
skidau
28bc5eca37
Added a check for out of bounds memory accesses. Fixes Avatar: The Last Airbender (GC).
2012-08-17 22:14:35 +10:00
NeoBrainX
08a9c66037
Revert the recent zcomploc changes including the Graphic_Fixes merge.
...
Reason:
- It's wrong, zcomploc can't be emulated perfectly in HW backends without severely impacting performance.
- It provides virtually no advantages over the previous hack while introducing lots of code.
- There is a better alternative: If people insist on having some sort of valid zcomploc emulation, I suggest rendering each primitive separately while using a _clean_ dual-pass approach to emulate zcomploc.
This reverts commit 0efd4e5c29
.
This reverts commit b4ec836aca
.
This reverts commit bb4c9e2205
.
This reverts commit 146b02615c
.
2012-08-10 20:12:02 +02:00
NeoBrainX
6e02ad55bc
Maintenance.
2012-08-07 18:57:53 +02:00
NeoBrainX
ec859009b7
Add a sanity check for viewports with zero width/height.
...
Fixes issue 5466.
2012-08-07 01:37:31 +02:00
Pierre Bourdon
a2b71f1ed7
Clean up WX style issues mentionned in previous commits comments
2012-08-06 14:21:49 +02:00
skidau
0efd4e5c29
Skipped the ZCompLoc pass if the result can be determined at compile time. Brings back the speed lost by r146b02615c07.
2012-08-06 09:29:01 +10:00
Pierre Bourdon
86a1899b9e
Fix a wrong data type in the WBFS Blob reader causing issues on x86 systems
...
Fixes issue 5489.
2012-08-05 19:35:49 +02:00
Pierre Bourdon
d7d2e5b9bf
Link explicitly DolphinWX with GTK2 libraries
...
Fixes issue 5555.
2012-08-05 20:51:42 +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
Pierre Bourdon
80bf3c2c0b
Add VTune profiling support for Dolphin's JIT
2012-08-05 16:39:15 +02:00
Pierre Bourdon
228172d656
Fix a typo in the indexed color vertex loader
...
Patch from konpie: http://forums.dolphin-emulator.com/showthread.php?tid=24658
2012-08-05 04:24:16 +02:00
Pierre Bourdon
8597660855
Replace all of the opcode data read functions by their SSSE3 equivalent, not only the first one.
...
Patch from konpie: http://forums.dolphin-emulator.com/showthread.php?tid=24658
2012-08-05 04:24:08 +02:00
Pierre Bourdon
d44a3471be
Fix DSP LLE thread affinity being set to the wrong core
...
Patch from konpie: http://forums.dolphin-emulator.com/showthread.php?tid=24658
2012-08-05 04:24:00 +02:00
Pierre Bourdon
e42c6214d9
Fix a typo in GenQuantizedLoads causing issues with SSSE3 in x86 builds
...
Patch from konpie: http://forums.dolphin-emulator.com/showthread.php?tid=24658
2012-08-05 04:23:46 +02:00
skidau
00df727d2f
Optimised the JitCache struct size from 88 bytes to 80 bytes. Thanks to Lioncash for the patch.
2012-07-23 22:15:34 +10:00
Pierre Bourdon
174c1b00f8
Use the right modifier for hotkeys on Mac
...
Fixes issue 5324.
2012-07-22 19:22:50 +02:00
sktsqrl
c0060f9ef8
Merge branch 'bba'
...
OS X support not impl
2012-07-21 12:53:46 -07:00
sktsqrl
601b9fc03b
typo fix
2012-07-21 12:50:40 -07:00
sktsqrl
9442d334d8
bba: stub the os x impl
2012-07-21 12:21:55 -07:00
Scott Moreau
0e1348c839
Re-add hack to use SDL/SDL.h ifndef _WIN32.
...
The correct convention is to use #include SDL.h in all cases but we have to
do this so Externals/SDL builds, which isn't in the best shape.
2012-07-14 20:50:58 -06:00
Scott Moreau
d34418100b
Add periodic effects for haptic devices.
...
This adds support for drivers supporting sine, square and triangle
periodic haptic effects. This allows rumble to work on devices/drivers
supporting these effects, such as an xbox controller using the xpad
driver under Linux.
2012-07-12 19:47:17 -06:00
Scott Moreau
80c15f21b4
Add SDL2 support to build system.
...
Dolphin code already builds against SDL2 but the build system never
checks for SDL2, which is the what latest SDL is called now. SDL2
replaces SDL 1.3. This allows Dolphin to be build against SDL2, which
activates certain new features such as the haptic interface.
2012-07-12 19:47:17 -06:00
sktsqrl
8dd11bd1c0
fixes issue 5507
2012-07-11 20:54:50 -07:00
sktsqrl
1d44de53b5
reset samples_avail when stopping gc mic sampling. fixes Mario Party 7
2012-07-11 01:03:25 -07:00
sktsqrl
a02cbedb0f
bba: generate MAC if needed
2012-07-07 13:44:26 -07:00
Pierre Bourdon
dd48b246b2
Reduce logging verbosity in the Linux BBA code
2012-07-05 01:30:37 +02:00
Pierre Bourdon
5db70f452b
Remove the now unneeded recv sleep hack and fixes game exit by implementing a timeout on read(2) calls in the read thread.
2012-07-05 01:29:42 +02:00
sktsqrl
bb84043de0
bba: (windows) fix games which stop and restart recving, such as logging off of PSO and loggin on again without stopping dolphin
2012-07-04 16:17:47 -07:00
sktsqrl
6cccbb91ec
bba: implement recv buffer full interrupt
...
(windows) hopefully fix crashes from closing dolphin while recving
2012-07-04 16:02:05 -07:00
sktsqrl
9cff8316d2
code cleanup for win32/tap/eth
2012-07-04 16:02:04 -07:00
Pierre Bourdon
9a3dd778cb
Preliminary BBA support for Linux. Assumes that a TAP interface named 'Dolphin' exists and is preconfigured. Contains some dirty hacks.
2012-07-04 04:34:40 +02:00
skidau
c57640dfbd
Implemented proper timing in the "No audio output" back-end.
2012-07-01 17:07:58 +10:00
sktsqrl
3cb6e4a864
Redo BBA once again. Now it works on windows, if crappily.
...
To use, install OpenVPN's TAP device driver. Then create a network bridge between the TAP and your device connected to the internet.
TODO:
proper overlapped read - can look at qemu impl
non-windows impl
2012-06-29 17:33:56 -07:00
skidau
b4ec836aca
Removed the offset if the ZCompLoc GREATER or LESS function is used. Fixes the invisible player in THPS3.
2012-06-29 18:47:49 +10:00
Pierre Bourdon
b27d8ff0d6
Add a missing Invalidate() call in ~TextureCache(). Fixes a regression from 8bed27a3d1
causing textures to load improperly when a game is run two times in the same Dolphin instance
2012-06-27 20:20:28 +02:00
NeoBrainX
29e21026e9
Merge branch 'awesome-texcache-cleanups-and-fixes'
2012-06-21 22:21:34 +02:00
Pierre Bourdon
fa2ee1f4a0
Only call CheckExceptions in dcbz in interpreter mode, use FL_ENDBLOCK for Jit64. Now RS3 demo disc does ingame with Jit and block_size = 1
2012-06-20 18:33:23 +02:00
NeoBrainX
7dabba5095
Fix a small bug.
2012-06-20 18:18:20 +02:00
NeoBrainX
043a85f8a6
Minor cleanup.
2012-06-20 18:18:19 +02:00
NeoBrainX
8a5abbddc4
Enable texture format overlay on the fly.
2012-06-20 18:18:18 +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
30de244050
Check for DSI exceptions after a dcbz instruction. Fixes Rogue Squadron 3 in interpreter mode.
2012-06-20 12:15:22 +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
Pierre Bourdon
988bd53b5f
Support ANSI color codes in the console logger for Linux/Mac
2012-06-19 12:11:15 +02:00
Pierre Bourdon
34606f34a9
Allow disassembly of FakeVMEM with the dolphin debugger
2012-06-19 11:57:57 +02:00
Pierre Bourdon
76a13604ef
Optimize mtmsr by going to an exception exit only if EE are enabled and some
...
exceptions are pending.
2012-06-19 06:35:30 +02:00
Pierre Bourdon
bfc797ede1
Removed an obsolete comment
2012-06-16 14:39:17 +02:00
Pierre Bourdon
e1ddbdd214
Use WriteExceptionExit and implement the change for JitIL
2012-06-16 14:38:48 +02:00
Pierre Bourdon
da4141aa9f
Simulate ARAM DMAState correctly and check for external exceptions after
...
MTMSR is executed.
This commits fixes issue 617. WWE Day of Reckoning 1 and 2 are now playable
with Dolphin.
The changes are not implemented for JitIL yet.
2012-06-16 14:38:44 +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
skidau
1d9ac2f6e1
Removed the check for changed JIT blocks before invalidation. Fixes the slow speed in Zelda: Ocarina of Time Master Quest.
...
Fixes issue 5454.
2012-06-09 18:48:15 +10:00
NeoBrainX
b5ad382b07
Fast mipmaps deserves to die!!
2012-06-08 00:22:57 +02:00
NeoBrainX
0d577d886a
Remove some TODOs.
2012-06-02 19:23:20 +02:00
skidau
d74c50b942
OSX build fix for BPStructs. Thanks to pauldacheez for the fix.
2012-06-02 11:28:43 +10:00
skidau
bb4c9e2205
Fixed "Failed to compile pixel shader" error when Per-Pixel Lighting is enabled. Thanks to slmpika for the fix.
2012-06-02 11:25:44 +10:00
skidau
b0d271db3c
Changed MOVDDUP to use MOVSD on non-SSE3 CPU's.
...
Added DMA wait time under DSP HLE mode.
Fixes Knockout Kings 2003.
2012-06-02 10:06:47 +10:00
skidau
99b7c91df5
Checked if dcbst instructions are preceded by dcbt. If it is, the game is prefetching memory into the data cache, and not loading new code. In these cases, the JIT cache will no longer be flushed. Fixes the frequent "Clearing code cache" issue in games like "The Last Story".
2012-05-31 22:09:33 +10:00
NeoBrainX
372e00632d
Fix changing internal resolution via hotkeys (settings above 1.5x weren't accessible anymore before).
2012-05-29 13:11:28 +02:00
Pierre Bourdon
bfde41895f
Update the viewport when the scissor offset is changed
...
Fixes a bug with Another Code: R that was noticed when gx-optimization was
merged.
2012-05-27 08:03:26 +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
skidau
146b02615c
Merge rodolfoosvaldobogado's zcomploc code (Graphic_Fixes branch)
2012-05-26 13:47:07 +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
9ea8d54343
remove some code that was made unused by rca287e7957c7
2012-05-26 13:19:57 +10:00
nitsuja
1f9586a8ba
compile fix for my merging of rca287e7957c7
2012-05-26 13:19:57 +10:00
nitsuja
99b202fd2e
savestate vertexmanager (base) since it affects VertexLoader::RunVertices which affects g_pVideoData
2012-05-26 13:18:08 +10:00
nitsuja
ae242e5675
added some missing VideoBackendHardware data to savestates. I think this makes savestates more stable (fewer "GFX FIFO: Unknown Opcode" errors) in dual core mode.
...
also added some extra verification markers around here, to potentially give better info on future version mismatches
2012-05-26 13:18:08 +10:00
nitsuja
2be579e8ba
fixed some graphics problems with loading savestates (for example, wrong colors on title screen of metroid prime 3)
2012-05-26 13:18:07 +10:00
nitsuja
19b0b02ad7
add some missing IPC HLE data to savestates
2012-05-26 13:14:15 +10:00
nitsuja
c9059c708e
save events in a safer way. the old way assumed that event type indices remain constant (they don't always), which could result in running arbitrary events or crashing upon loading.
2012-05-26 13:09:39 +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
nitsuja
108f69eaa9
to help movie sync, added some more wiimote data to savestates and disabled auto-reconnect. although I think this is basically just removing hacks and should be more correct, I don't know what side effects this could cause for normal players, so for now these changes ONLY take effect when an input movie is playing back or being recorded.
2012-05-26 12:59:08 +10:00
nitsuja
d19c389246
clean up some savestate code
2012-05-26 12:59:08 +10:00
nitsuja
8ef75dac67
add missing SI device state to saves
2012-05-26 12:59:07 +10:00
nitsuja
5423bca79c
add some more missing dsp ucode data to savestates
2012-05-26 12:59:07 +10:00
nitsuja
152351d96c
implement PointerWrap::Do(std::map<unsigned int, T>)
2012-05-26 12:59:07 +10:00
nitsuja
aa674a65f1
implement PointerWrap::DoLinkedList and use it to simplify saving CoreTiming events
2012-05-26 12:59:06 +10:00
skidau
a54e72640f
Merge branch 'misc-speedups'
...
* misc-speedups:
fixed and reenabled and slightly optimized the JIT version of fcmpo/fcmpu.
slightly more precise speed percent display (this is really minor)
a small thread synchronization speedup for dual core mode. it's most noticeable in games where the CPU is running behind compared to the GPU.
Conflicts:
Source/Core/Core/Src/PowerPC/Jit64/Jit.cpp
The Fifo.cpp changes from rdaefb3b550e2 was not merged as there was no performance benefit.
2012-05-26 12:35:08 +10:00
Pierre Bourdon
cf69e7ca8a
Merge branch 'gx-optimization'
...
This branch reduces the number of useless state flushes in the video
emulation layer by checking whether a BP/XF change will have an effect
or not. Greatly reduces the number of GL calls per frame.
Thanks to degasus for his help!
2012-05-24 21:49:37 +02:00
NeoBrainX
4131ca8d38
Merge branch 'hires-tex-improvements'
2012-05-22 08:14:49 +02:00
Pierre Bourdon
fee2d83f68
Fix a data endianness problem introduced by r7cccb4baa724.
2012-05-20 22:16:21 +02:00
Pierre Bourdon
c95baf614d
Avoid changing video state on useless BP writes
...
When a game writes the same value that was already configured to a BP
register, Dolphin previously flushed the GPU pipeline and reconfigured
the internal video state (calling SetScissor/SetLineWidth/SetDepthMode).
Some of these useless writes still need to perform actions, for example
writes to the EFB copy trigger or the texture preload registers (which
need to reload the texture from memory).
2012-05-20 20:56:03 +02:00
Pierre Bourdon
7cccb4baa7
Check if data was modified in LoadIndexedXF too
2012-05-19 10:54:40 +02:00
Pierre Bourdon
b8d4d013f6
Compute the comparison size properly (transferSize is in u32, not in u8)
2012-05-18 23:27:02 +02:00
Pierre Bourdon
5a77cae2e3
Check if BP and XF changes actually change values before flushing
2012-05-18 23:13:53 +02:00
Matthew Parlane
1bc5f41e40
Fixes issue 5428. Thanks delroth.
2012-05-18 17:57:28 +12:00
skidau
5a8ad92302
Changed a JMP that needed to be a far JMP in JITIL.
2012-05-15 09:32:21 +10:00
NeoBrainX
54aeec7a8f
Dump the redundant "save textures" function. Use TextureCache's dumping feature instead.
2012-05-13 17:48:23 +02:00
NeoBrainX
72e83140f0
TextureCacheBase: Remove the texture size limit for custom textures. Only the GPU restrictions for maximum texture size remain.
2012-05-13 17:43:14 +02:00
NeoBrainX
41d37ab0a0
TextureCacheBase: Support loading custom mipmaps.
2012-05-13 17:42:22 +02:00
NeoBrainX
a5e68ab10e
TextureCacheBase: Support dumping individual mipmaps.
2012-05-13 17:41:04 +02:00
NeoBrainX
a8ad59ee3e
TextureCacheBase: Move texture dumping to a helper function.
2012-05-13 17:41:03 +02:00
NeoBrainX
3ecc5e879c
TextureCacheBase: Move custom texture loading to a helper function
2012-05-13 17:41:03 +02:00
skidau
b27f471488
Invalidated the JIT cache when the dcbst instruction is used.
2012-05-13 21:07:03 +10:00
skidau
48bf5c739d
Changed the block linker to work on physical addresses. Checked whether the code has changed before invalidating it. Fixes the cut-scenes in Tales of Graces.
...
Fixes issue 2933.
2012-05-12 21:43:39 +10:00
Pierre Bourdon
f567782b47
Implement a better heuristic to detect whether an ELF is for GC or Wii
2012-05-12 01:48:56 +02:00
Pierre Bourdon
04bde406d3
Fix DVD root path for Wii games. Now Wii games can be booted using extracted files instead of a disc image.
2012-05-11 22:19:57 +02:00
skidau
1587cb3738
Fixed texture encoding. Fixes the interaction with objects in Another Code R. Thanks to wordmanwords for the patch.
...
Fixes issue 5405.
2012-05-05 11:21:05 +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
a1b3eaffb7
Reverted the ES changes from r0fc390b55226. Fixes the crash that occurred when loading a channel from the sysmenu.
2012-05-03 23:32:32 +10:00
skidau
e5d527340d
Optimised the JIT path.
2012-05-03 23:17:15 +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
Billiard26
1974938c5a
Fix DirectInput D-Pad handling.
2012-05-02 06:31:38 +00:00
Pierre Bourdon
beb4204bbb
Include libavutil/mathematics.h explictly in AVIDump.cpp. Fixes issue #5266 .
2012-05-02 07:29:15 +02:00
Pierre Bourdon
5e2d692cec
Lock the DSP thread on its own core when using "Lock threads to cores" and "LLE on Thread". Greatly improves DSPLLE performance on Linux with >= 3 cores CPUs.
2012-05-02 07:19:14 +02:00
skidau
1b15cd0b60
Added preliminary support for ARAM memory map mode "4".
...
Fixes issue 3410.
2012-05-01 22:05:48 +10:00
skidau
2540fe0606
Fixed ARAM DMA overflow situations. Fixes issue 4952.
2012-05-01 21:31:21 +10:00
skidau
30d6d22816
Merge Conflicts:
...
Source/Core/Core/Src/PowerPC/PowerPC.cpp
2012-05-01 21:00:57 +10:00
skidau
d015f0926a
Fixed a typo and some far jumps in the JIT.
2012-05-01 20:52:35 +10:00
skidau
d557c913e8
Reset the performance counters at the start of the each block.
2012-05-01 20:42:01 +10:00