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
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
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
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
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
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
Pierre Bourdon
60aed4e5b0
Merge branch 'memcard-delay'
2012-08-24 12:45:45 +02: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
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
Pierre Bourdon
80bf3c2c0b
Add VTune profiling support for Dolphin's JIT
2012-08-05 16:39:15 +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
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
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
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
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
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
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
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