Matthew Parlane
25c779943b
Merge pull request #4687 from lioncash/ppc-state
...
PowerPC: Explicitly savestate PowerPCState members
2017-01-20 17:51:42 +13:00
Matthew Parlane
2acb3ef3f5
Merge pull request #4688 from leoetlino/ios-prefix
...
IOS: Remove IOS prefix on a few structs/enums
2017-01-20 11:04:10 +13:00
Léo Lam
a000a3c23f
Only allow reset/power when core is running
...
If we don't check for Core::IsRunning(), event types such as
iosNotifyResetButton may actually be nullptr, or some random invalid
pointer (after an emulation start then shutdown) and be used when the
user triggers a reset, which causes random crashes.
2017-01-19 22:08:13 +01:00
Léo Lam
e33d943459
IOS: Remove IOS prefix on a few structs/enums
...
Now that IOS code is namespaced, we don't need the prefix anymore.
2017-01-19 19:10:31 +01:00
Matthew Parlane
629fcb437a
Merge pull request #4683 from leoetlino/rename-ipc-hle
...
Reorganise the IOS HLE source files (and drop WII_IPC_HLE)
2017-01-19 20:54:35 +13:00
Lioncash
d266be5b56
PowerPC: Explicitly savestate PowerPCState members
...
Makes it more obvious which data is going into the savestate.
It also allows PowerPCState and InstructionCache to potentially
contain members that don't necessarily need to be saved to the save state.
It also gets rid of any potential padding data being put into the save
state.
2017-01-18 23:44:46 -05:00
Lioncash
c761f98ede
PowerPC: Simplify TLB resetting
...
Member initializers and std::array make this trivial for fixed value initialization.
2017-01-18 19:31:04 -05:00
Lioncash
b2351ddb29
PowerPC: Move CPU core initialization to its own function
2017-01-18 19:13:52 -05:00
Lioncash
e86def732a
PowerPC: Move zeroing of segment registers into ResetRegisters
2017-01-18 16:03:31 -05:00
Léo Lam
ef5a855b8e
Update log types names from IPC_HLE to IOS
...
For consistency with the other changes.
WII_IPC_DVD was changed to IOS_DI, as this describes what the log type
is used for in a more specific way.
2017-01-18 21:43:37 +01:00
Léo Lam
49b9c723e2
Put IOS devices in a namespace and drop WII_IPC_HLE prefix
2017-01-18 21:42:33 +01:00
Matthew Parlane
f94bd7d865
Merge pull request #4684 from lioncash/dsp-emu
...
DSPEmulator: Amend variable casing
2017-01-19 09:10:58 +13:00
Léo Lam
24199293d3
IOS: Reorganise the source files and IPC_HLE→IOS
...
IPC_HLE is actually IOS HLE. The actual IPC emulation is not in
IPC_HLE, but in HW/WII_IPC.cpp. So calling IPC_HLE IOS is more
accurate. (If IOS LLE gets ever implemented, it'll likely be at
a lower level -- Starlet LLE.)
This also totally gets rid of the IPC_HLE prefix in file names, and
moves some source files to their own subdirectories to make the file
hierarchy cleaner.
We're going to get ~14 additional source files with the USB PR,
and this is really needed to keep things from becoming a total pain.
2017-01-18 20:43:10 +01:00
Lioncash
cf1c194b88
DSPLLE: Amend variable casing
2017-01-18 12:50:58 -05:00
Lioncash
0f70650e93
DSPHLE: Amend variable casing
2017-01-18 12:44:27 -05:00
Lioncash
a57b378116
DSPEmulator: Amend variable casing
2017-01-18 12:20:13 -05:00
Lioncash
bba6a31eb6
Interpreter_Tables: Amend leftover comment
2017-01-18 03:03:44 -05:00
Lioncash
06488477a9
Interpreter_Tables: Ensure all instructions fit within m_allInstruction at compile-time
2017-01-18 03:03:42 -05:00
Lioncash
6c61021eb1
PPCTables: Use std::array instead of raw C arrays
2017-01-18 03:03:00 -05:00
Lioncash
1a1ce42889
Interpreter_Tables: Use std::array for instruction tables
2017-01-18 03:02:55 -05:00
Matthew Parlane
01b322d45f
Merge pull request #4679 from lioncash/ipc
...
IPC_HLE: Namespace IPC HLE
2017-01-18 17:33:08 +13:00
Matthew Parlane
41f7995916
Merge pull request #4680 from lioncash/ir
...
IR: Minor changes
2017-01-18 17:31:40 +13:00
Lioncash
e4ea9f7ace
Interpreter: Use std::array for instruction tables
2017-01-17 22:06:52 -05:00
Lioncash
f0abdbdeb5
Interpreter: Correct member variable casing
2017-01-17 21:50:01 -05:00
Lioncash
e9b506638f
Interpreter: Make m_EndBlock private
2017-01-17 21:16:14 -05:00
Lioncash
722162b54a
IPC_HLE: Namespace IOS HLE
...
Gets all of the IOS HLE code out of the global scope.
2017-01-17 20:46:58 -05:00
Lioncash
f1542c8e5a
Common: Namespace Network.h/.cpp
...
Necessary to avoid namespace clashes with IOS HLE's namespace name.
2017-01-17 20:46:48 -05:00
Lioncash
bb49012445
IR: Deduplicate code in Reset and FoldFallbackToInterpreter
2017-01-17 20:35:02 -05:00
Lioncash
89473d5996
IR: Clean up getNumberOfOperands
...
- Use std::array
- Make arrays constexpr where their contents aren't modified.
2017-01-17 20:22:38 -05:00
Lioncash
d3aed03563
IR: Make trivial helper functions constexpr
2017-01-17 19:42:36 -05:00
Lioncash
d1f39185dd
IR: Convert typedefs to using aliases
2017-01-17 19:40:56 -05:00
Matthew Parlane
f785d7f869
Merge pull request #4675 from lioncash/jitil
...
JitILBase: Make the IRBuilder protected
2017-01-18 13:10:31 +13:00
Florent Castelli
875563787f
cmake: include(Find…)->find_package(…)
2017-01-17 21:50:44 +01:00
Lioncash
1516c22a22
JitILBase: Make the IRBuilder instance protected
...
There's no need to make it public.
2017-01-17 14:55:45 -05:00
Lioncash
e924814d62
JitILBase: Move protected members below public
2017-01-17 14:45:40 -05:00
Matthew Parlane
63011f1402
Merge pull request #4661 from leoetlino/ios-request
...
IOS HLE: Deduplicate the request parsing code
2017-01-18 08:38:37 +13:00
Matthew Parlane
753455b379
Merge pull request #4671 from endrift/fix-libusb
...
InputCommon: Fix FreeBSD 11 libusb incompatibilities
2017-01-17 21:43:08 +13:00
Jeffrey Pfau
c5b3b52d55
InputCommon: Fix FreeBSD 11 libusb incompatibilities
2017-01-17 00:30:08 -08:00
Lioncash
8346f86ee4
IR: Remove unnecessary semicolon on namespace brace
2017-01-16 19:54:42 -05:00
Lioncash
67fc73e82c
IR: Make getNumInsts return type size_t
...
There's no need to cast here.
2017-01-16 19:38:30 -05:00
Lioncash
459a6e73c3
IR: Remove unused function
2017-01-16 19:32:13 -05:00
Lioncash
cd12b2c55f
IR: Make IRBuilder uncopyable
...
Hiding and not implementing the copy constructor is a pre-C++11 thing.
It should also be noted that a copy constructor, as defined by the
language, contains a const qualifier on its parameter, so this wouldn't
have prevented copies from being performed.
2017-01-16 18:59:17 -05:00
Lioncash
a8b2dd7fc3
IR: Use std::array instead of raw C arrays
2017-01-16 18:54:30 -05:00
Lioncash
ef3e6de875
IR: Move implementation of the constructor and Reset into the cpp file
...
Neither of these are intended to be called extremely frequently to warrant
this.
2017-01-16 18:36:11 -05:00
Léo Lam
25f89ccae8
IOS HLE: Specify the return code when replying
...
This makes more sense than setting the return code on the request
struct first before replying.
Ref: https://github.com/dolphin-emu/dolphin/pull/4661#discussion_r96273253
2017-01-17 00:28:22 +01:00
Lioncash
47fc72f0a8
IR: Get rid of an unimplemented member function prototype
2017-01-16 18:11:54 -05:00
Lioncash
4f75590fdb
IR: Move private details below public details
2017-01-16 18:08:11 -05:00
Léo Lam
c6b1cfb222
IOS HLE: Remove old structs and methods
...
Now that everything has been changed to use the new structs, the old
methods and structs can be removed.
And while I was changing the base device class, I also moved the
"unsupported command" code to a separate function. It was pretty silly
to copy the same 3 lines for ~5 commands.
2017-01-16 23:55:57 +01:00
Léo Lam
8629a1f11c
IOS HLE: Deduplicate request code in WFS
2017-01-16 23:55:57 +01:00
Léo Lam
4af67abb55
IOS HLE: Deduplicate request code in ES
2017-01-16 23:55:56 +01:00