Commit Graph
2510 Commits
Author SHA1 Message Date
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
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
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 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 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
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
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
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
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
skidau 389823a749 Changed the performance monitor check to a compile time check instead of run-time. 2012-05-01 20:42:00 +10:00
skidau cdace9d776 Added preliminary support for the Gekko CPU Performance Monitor. Fixes Harry Potter and the Prisoner of Azkaban. 2012-05-01 20:42:00 +10:00
skidau 75fbbcae40 Merge branch 'JIT-Exceptions'
* JIT-Exceptions:
  JitIL code cleanup
  Changed the JIT code to make the FPU exception timing more accurate.  The exception is now triggered at the first FP instruction instead of the start of the block. Rearranged the JIT exception code for a tiny speed-up.  Only external exceptions are checked at the end of the block.  All other exceptions are checked at the time they occur.

Fixes issue 5382.

Conflicts:
	Source/Core/Core/Src/PowerPC/Jit64/Jit_LoadStore.cpp
2012-05-01 20:35:12 +10:00
skidau 05040379e9 JitIL code cleanup 2012-05-01 20:26:05 +10:00
skidau 15d3c45159 Reset the performance counters at the start of the each block. 2012-04-29 00:10:20 +10:00
skidau 853d12b42c Changed the performance monitor check to a compile time check instead of run-time. 2012-04-28 22:47:55 +10:00