Lioncash
44e43fe5c3
Core: Make CPU_POWERDOWN the initial CPU state.
...
This isn't a correct state for the CPU to begin in when starting the application.
Also CPU_STEPPING as an initial state causes the emulator to crash if you use any of the debugger stepping buttons, since it checks if the CPU is in the CPU_STEPPING state before performing their functions.
2014-07-19 19:43:53 -04:00
Pierre Bourdon
963e1a698c
Merge pull request #581 from TotalNerd/memcard-emu
...
Emulate GameCube memory card speeds
2014-07-20 00:12:47 +02:00
booto
631a361cc8
GCPadEmu: stop sticks wrapping at extreme values
2014-07-19 19:22:05 +08:00
LPFaint99
da99e0448b
GCI Folder: no need to force reload sysmenu to get version
...
causes crash with larger gci folders as we pull the loader out from under the ppc
2014-07-18 20:34:26 -07:00
TotalNerd
b2ac65bb21
Revised channel access from EXI_DeviceMemoryCard
2014-07-18 20:06:03 -05:00
Pierre Bourdon
8085b3d264
Merge pull request #638 from lioncash/bound-check
...
Core: Fix bounds checking within GCMemcard.cpp.
2014-07-18 09:14:27 +02:00
Pierre Bourdon
4db84c5188
Merge pull request #637 from lioncash/unused
...
Core: Remove unused function Callback_ISOName()
2014-07-18 09:14:06 +02:00
Lioncash
98f352a4e6
Core: Fix warnings in JitRegCache
2014-07-18 02:44:29 -04:00
Tillmann Karras
771a30da36
Jit64: implement frsp
2014-07-17 23:22:41 +02:00
TotalNerd
f602372885
Redo timing in DMAWrite/DMARead
2014-07-17 10:57:34 -05:00
TotalNerd
8a0093de23
Emulate GameCube memory card speeds
2014-07-17 10:57:34 -05:00
Scott Mansell
7aff56bef5
Implement the correct method for determining field order.
...
Based on advice from tueidj we implement this method based on how
TVs actually determin the field order.
Removes spammy messages about "Invalid field order"
2014-07-17 23:56:23 +12:00
Lioncash
7ca8a834c1
Core: Fix bounds checking within GCMemcard.cpp.
...
Prior to this 127 would be an allowed numeric index. However There is only an addressable range from 0-126.
2014-07-17 01:33:47 -04:00
LPFaint99
19c94de6e0
Gcifolder use correct region for fifologs and homebrew
2014-07-16 21:41:09 -07:00
Lioncash
041445a155
Core: Remove unused function Callback_ISOName()
2014-07-16 20:44:17 -04:00
Pierre Bourdon
8cf21cdcdb
Merge pull request #633 from magcius/wip/input-focus-fix
...
Fix input focus issues
2014-07-17 01:21:31 +02:00
Tony Wasserka
2daa83da48
Merge pull request #372 from Tilka/fctiwzx
...
Jit64: implement fctiwx/fctiwzx
2014-07-16 17:41:21 +02:00
Jasper St. Pierre
44307c9508
Host: Add a new "UIHasFocus" hook to determine if the UI has focus
...
We can't use RendererHasFocus for this purpose because of some issues
with exclusive fullscreen, and the new RendererHasFocus implementation
didn't work for non-Render to Main Window cases, since the renderer
window wasn't managed by wx.
2014-07-16 10:27:21 -04:00
Lioncash
6c57457f9f
Core: Correct some function casings.
2014-07-15 19:41:50 -04:00
Tillmann Karras
6521929f99
Jit64: implement fctiw/fctiwz
2014-07-15 23:58:09 +02:00
Rachel Bryk
ed5169c5eb
Fix leaking exi devices.
2014-07-15 16:15:38 -04:00
Lioncash
ebd029973a
Merge pull request #604 from magcius/wip/emu-cleanup-2
...
Start cleaning up the input interface
2014-07-15 12:11:17 -04:00
LPFaint99
198d137ca0
GCI Folder fix compatibility with games that relocate the save after first use
2014-07-14 18:52:29 -07:00
shuffle2
3cabacde9d
Merge pull request #613 from lioncash/uninitialized
...
Core: Fix potential uninitialized var usage in WII_IPC_HLE_Device_usb
2014-07-13 14:03:02 -07:00
Lioncash
fae0cf3698
Core: Fix potential uninitialized var usage in WII_IPC_HLE_Device_usb
...
If "if (ReadStoredLinkKey->read_all == 1)" is not true, then
num_keys_read would be used uninitialized.
2014-07-13 15:41:35 -04:00
Lioncash
9d3c0102fc
Core: Get rid of an unnecessary struct typedef in Boot.h.
2014-07-13 15:28:50 -04:00
Pierre Bourdon
16582a0459
Merge pull request #543 from RachelBryk/patches
...
Fix patches not being loaded when running real gc bios.
2014-07-13 06:25:39 +02:00
Tillmann Karras
0ccee6c87b
Fix warnings unearthed by #579
2014-07-13 02:16:51 +02:00
Jasper St. Pierre
e4eec2002b
ControllerEmu: Remove focus-checking code from the rest of ControllerEmu
2014-07-11 14:08:29 -04:00
Jasper St. Pierre
5abc028ace
ControllerEmu: Make BackgroundInput a global setting through the virtualization
...
This will allow us to simplify the checks for background input and push
them further down into the architecture, into the ControllerEmu layer.
The new setting isn't actually used yet, though.
2014-07-11 13:38:37 -04:00
Jasper St. Pierre
a6dc3c47a9
ControllerEmu: Change the GetState interface to remove range/base
...
Do the scaling in the code that interprets the results.
This also removes the templatization of things and changes the interface
to always take a double.
This does add a bit more code to the users of GetState, especially when
having to deal with focus management, but this will be cleaned up very
soon, as focus and focus-related options will be centralized inside the
input platforms themselves, rather than spread out across all the input
plugins.
2014-07-11 13:32:57 -04:00
Jasper St. Pierre
68a4979f35
Nunchuk: Stop the dereference dance
2014-07-11 13:32:56 -04:00
Jasper St. Pierre
e20a0265de
Remove UDPWiimote feature
...
It substantially complicates the code and doesn't really provide any
functionality. According to the forums, the Android app is out of date
and has been broken for quite a while.
If we want to add this back, I'd write an app that speaks a more native
Wiimote protocol, and we can hook that up to the backend quite easily.
It could even be over our NetPlay protocol!
2014-07-11 13:32:56 -04:00
degasus
7e79806efc
remove unused globals
...
Also change globals into statics which are only used in one file
2014-07-11 16:10:20 +02:00
degasus
81ed17be53
avoid the extern keyword in .cpp files
2014-07-11 16:10:20 +02:00
degasus
6d3f249dcc
mark all local variables as static
2014-07-11 16:10:20 +02:00
degasus
22e1aa5bb4
mark all local functions as static
2014-07-11 16:07:23 +02:00
Lioncash
896d7e5685
Change SPADStatus struct name to GCPadStatus
...
Also get rid of the typedef, since this is unnecessary in C++
2014-07-10 22:02:38 -04:00
Dolphin Bot
bc655d1a82
Merge pull request #515 from Armada651/threading
...
Make the emulation stop asynchronous to prevent deadlocks.
2014-07-10 21:02:47 +02:00
Rachel Bryk
36bc494a0b
Fix code style in WII_IPC_HLE_Device_net.h/.cpp.
2014-07-09 05:26:04 -04:00
Jules Blok
4df00ae544
Movie: Do not attempt to record input when the emulation has not started yet.
...
Fixes a null pointer exception when the user starts the recording during a state transition.
2014-07-08 22:32:35 +02:00
Jules Blok
db7e746cb4
Check whether the core is running instead of checking if it is unitialized.
...
This properly handles the stopping state and more accurately represents the intended check.
2014-07-08 22:30:44 +02:00
Jules Blok
49eade69a3
Core: Return CORE_STOPPING even if hardware is already uninitialized.
2014-07-08 21:21:24 +02:00
Jules Blok
3266394dfb
Make the emulation stop asynchronous to prevent deadlocks.
...
This may expose bugs which relied on the Main Thread to be suspended in the stopping state.
2014-07-08 21:21:23 +02:00
Pierre Bourdon
b0b70381f7
Revert "Don't add segfault handler in interpreter mode"
2014-07-07 05:30:06 +02:00
Dolphin Bot
4ec8c3714d
Merge pull request #328 from Tilka/enum_cpubackend
...
Don't add segfault handler in interpreter mode
2014-07-06 19:28:10 +02:00
Dolphin Bot
db4e32a124
Merge pull request #547 from lioncash/cleanups
...
Clean up the DSP disassembler a little.
2014-07-06 19:20:07 +02:00
Tony Wasserka
a798548c30
Merge pull request #546 from workhorsy/header_guard_to_pragma_once
...
Changed lingering header include guards to pragma once.
2014-07-06 14:19:32 +02:00
degasus
e72b01caa1
ConfigManager: fix alignment
2014-07-06 11:05:16 +02:00
Dolphin Bot
8da2bc63cf
Merge pull request #559 from RachelBryk/gci-folder-state
...
Merge pull request #559 from RachelBryk/gci-folder-state
Keep device type EXIDEVICE_MEMORYCARDFOLDER for gci folder.
2014-07-06 07:34:55 +02:00
Rachel Bryk
86ccf13c09
End movie play back immediately if g_currentByte > g_totalBytes.
...
Also uncomment a PanicAlert in the case of g_currentByte > totalSavedBytes, and add comment explaining how it can happen.
2014-07-05 19:48:44 -04:00
Tillmann Karras
ad2aaedd8b
Don't install segfault handler in interpreter mode
2014-07-05 11:02:41 +02:00
Tillmann Karras
311e9e655a
CoreParameter: add enum CPUBackend
2014-07-05 11:02:41 +02:00
Tillmann Karras
20a16beabd
enum CPUState: rename CPU_* to STATE_*
2014-07-05 11:01:49 +02:00
Rachel Bryk
e02f680861
Keep device type EXIDEVICE_MEMORYCARDFOLDER for gci folder.
...
This fixes loading save states when type mismatches.
2014-07-05 00:22:42 -04:00
Tillmann Karras
20dc0e7819
Remove unused variables
2014-07-04 03:56:58 +02:00
Lioncash
9c764eff3a
Fix a type-conversion warning in Movie.cpp
...
Fixes a C4800 warning. 'int' : forcing value to bool 'true' or 'false'
(performance warning)
2014-07-03 02:07:29 -04:00
Lioncash
ab6434f616
Merge pull request #551 from lioncash/movie
...
Clean up string handling in Movie.cpp
2014-07-02 22:57:01 -04:00
Lioncash
d649027ec8
Clean up string handling in Movie.cpp
2014-07-02 22:45:50 -04:00
Rachel Bryk
de3f587b32
Add support for 2 memory cards for movies.
2014-07-02 22:26:29 -04:00
Lioncash
af7efaa461
[Core] Clean up the DSP disassembler
...
- Get rid of deletes.
- Clean out all of the sprintf calls. Now std::string based.
- Fully explicit function names, etc.
2014-07-02 20:19:39 -04:00
Matthew Brennan Jones
124210c50f
Changed lingering header include guards to pragma once.
...
Some headers where using #ifndef to guard being including multiple times. But most were using pragma once. So for consistency I changed them all to use pragma once.
2014-07-01 22:17:33 -07:00
Rachel Bryk
899274445b
Fix patches not being loaded when running real gc bios.
2014-06-30 17:28:45 -04:00
Lioncash
8ada47876a
Get rid of a few delete[] calls in sdio_slot0.cpp
2014-06-29 22:55:47 -04:00
galop1n
729758f2f9
Fix an invalid foreach loop over an unordered_map with deletion in WiiSockets
2014-06-27 13:02:28 -04:00
Lioncash
bd377b9580
Merge pull request #443 from magumagu/loadstore-cleanup
...
Loadstore cleanup
2014-06-26 21:32:59 -04:00
Lioncash
11d304ae29
Merge pull request #259 from magumagu/dtk-rewrite
...
DTK rewrite
2014-06-26 20:01:07 -04:00
magumagu
ca0203a1cc
AudioCommon: restore support for DTK volume setting.
2014-06-26 16:56:57 -07:00
Lioncash
ca5340ebde
Centralize the logging code into its own folder in Common.
2014-06-25 22:11:42 -04:00
Ryan Houdek
a40ae6883a
Move CoreTiming::downcount to PowerPC::ppcState.
...
This isn't technically the correct place to have the downcount variable, but it is similar to what PPSSPP does to gain a bit of extra speed on ARM.
We access this variable quite a bit, with each exit in a block it is subtracted from.
On ARM this required four instructions to load and store the value, while now it only requires two.
This gives an average of 1FPS gain to most games.
Examples:
Crazy Taxi: 54FPS -> 55FPS
Luigi's Mansion: 20FPS -> 21FPS
Wind Waker(Save Screen): 27FPS -> 28FPS
This seems to average a 6mhz to 16mhz CPU core emulation improvement in the few games I've tested.
2014-06-26 01:48:00 +00:00
Lioncash
177658aed6
Merge pull request #513 from lioncash/vs-x64
...
Remove the 32-bit config platform from the VS solution file
2014-06-25 21:23:45 -04:00
Lioncash
2db50612b9
Merge pull request #510 from RachelBryk/unused
...
Remove an unused variable.
2014-06-25 12:41:04 -04:00
Tony Wasserka
416a3201ed
Merge pull request #480 from Sonicadvance1/PR371-Revert
...
Revert "PPCAnalyst now detects internal branches better"
2014-06-25 16:02:52 +02:00
Ryan Houdek
a99ad2db7c
Merge pull request #499 from magumagu/ipchle-disk-channel
...
ES_LAUNCH fixes for disk channel etc
2014-06-25 04:00:57 -05:00
Lioncash
8b13afbb8e
Remove the 32-bit config platform from the VS solution and projects
2014-06-24 22:07:26 -04:00
LPFaint99
c65a6f5fb0
GCI Folder: correctly identify region of sysmenu
2014-06-23 19:58:27 -07:00
LPFaint99
32b2c40490
first implementation of memcard from directory, creates a memory card from USERDIR/GC/<REGION>/Card <A/B>
...
Savestates include the entire memorycard, but the only saves that should be modified are the ones that are directly modified by the game the others are preserved merely to avoid changing the memory card header during the game as some games (Zelda) refuse to save
Implement DMA r/w for memcard.
Skips programming buffer for writes
Add a migration feature that auto imports all saves from your default memcard to the new memcard dir if it doesn't exist.
Actually "delete" save files by renaming to s/*.gci/*.gci.deleted/
2014-06-22 18:03:52 -07:00
LPFaint99
404e9ce3ee
move memorycard handling to its own class
2014-06-22 17:59:08 -07:00
Pierre Bourdon
add090bde6
DSP: Add support for PCAP logging of CPU<->DSP communications
2014-06-22 20:04:46 +02:00
Pierre Bourdon
7889d90633
DSPLLE: Improve initialization by using an options structure instead of individual params
2014-06-22 20:04:46 +02:00
Lioncash
3c51c75b3e
Merge pull request #526 from RachelBryk/input-label
...
Fix an incorrect label in fps display string.
2014-06-22 13:31:31 -04:00
Rachel Bryk
addbbf11d7
Allow progressive scan to be set by game ini.
2014-06-22 12:29:16 -04:00
Rachel Bryk
93a215c9e7
Fix an incorrect label in fps display string.
2014-06-22 12:21:11 -04:00
Pierre Bourdon
5dff577339
Merge pull request #500 from lioncash/ini
...
Use only section-based ini reading.
2014-06-22 17:21:45 +02:00
Lioncash
86d6455391
Merge pull request #505 from RachelBryk/wiimote-state
...
Save an unsaved wiimote variable to save states.
2014-06-21 19:59:24 -04:00
Lioncash
72050d455d
Merge pull request #521 from RisingFog/dtm-update
...
Removed unused variable, Added tick count check
2014-06-21 19:19:02 -04:00
Fog
76c5fa084b
Removed unused variable, added tick count check
2014-06-21 11:43:33 -04:00
Rachel Bryk
3e60979000
Abort loading a save state if emulation isn't running.
2014-06-20 21:22:54 -04:00
magumagu
eeb7fc25f4
JIT: Make lmw/stmw use safe load/stores.
2014-06-20 12:54:10 -07:00
magumagu
6c9095ebab
JITIL: fix some unsafe loads.
...
I'm planning on making changes to the memory code, so I don't want this
stuff to get in the way. The slight performance hit to JITIL isn't really
important at the moment.
2014-06-20 12:53:22 -07:00
magumagu
85724dd78a
JIT: Remove dead code.
2014-06-20 12:53:21 -07:00
magumagu
06864e9fee
JIT: Clean up float loads and stores.
...
Less code is good, and this should make future changes to memory handling
easier.
2014-06-20 12:52:39 -07:00
Rachel Bryk
0d60389d03
Save an unsaved wiimote variable to save states.
2014-06-20 09:35:47 -04:00
Tony Wasserka
ddce7e9778
Merge pull request #508 from RisingFog/upstream
...
Add Tick Count to Movie Files
2014-06-20 13:47:05 +02:00
Fog
c6e1a19e61
Add Tick Count to Movie Files
...
Added tick count to .dtm movie files for more accurate time calculations
2014-06-19 12:11:09 -04:00
Tony Wasserka
0e0238eccf
Merge pull request #498 from magumagu/remove-daz
...
Don't set DAZ on x86 in non-IEEE mode.
2014-06-19 16:53:21 +02:00
Tony Wasserka
9f22b2378d
Merge pull request #485 from magumagu/packed-fp-reciprocal
...
Interpreter: return single-precision results for ps_rsqrte.
2014-06-19 16:51:33 +02:00
Tony Wasserka
0b1cb1ee45
Merge pull request #436 from RachelBryk/netplay-kick
...
Add an option to kick players from netplay.
2014-06-19 14:57:00 +02:00
Tillmann Karras
feef0bbd2b
JITs: add a macro for easy interpreter fallback
2014-06-19 14:39:01 +02:00
Tillmann Karras
f351ec64db
Jit64[IL]: remove code leftover from x86-32
2014-06-19 14:32:53 +02:00