Commit Graph

22323 Commits

Author SHA1 Message Date
79eb065cf3 Reduce emulated shaking frequency to 6hz. (something more humanly possible) (was ~13hz) 2018-12-15 10:36:22 -06:00
a8a6bdcdd2 Compute emulated classic controller calibration data instead of having hardcoded values. 2018-12-15 10:27:06 -06:00
6848812a31 Produce emulated nunchuk calibration data. 2018-12-15 10:27:06 -06:00
2f490e44fb stop using g_jit outside of JitInterface
Replace g_jit in x86-64 ASM routines code by m_jit member reference
2018-12-15 01:58:58 +01:00
6d394d03fe Common/GLContext: Make member functions const qualified where applicable
These don't modify object state, so they can be const qualified.
2018-12-14 11:02:26 -05:00
52cae18b01 Interpreter: Handle paired-single HID2.PSE and HID2.LSQE bits
These bits enable or disable paired-single execution based on how
they're set. If PSE isn't set, then all paired-single instructions are
illegal. If PSE is set, but LSQE isn't set, then psq_l, psq_lu, psq_st
and psq_stu are illegal to execute.

Also thanks go out to my roommate @Veegie for letting me use his Wii as
a blasting ground for tests, since mine isn't on hand right now. It only
caught on fire twice and only burned down half of the house through the
process; what a team player.
2018-12-13 22:48:05 -05:00
c87a2f57b4 Interpreter_SystemRegisters: Handle reserved/read-only bits for HID2 in mtspr 2018-12-13 11:39:40 -05:00
fa6782f841 GCMemcard: Required declaration before C++17. 2018-12-10 20:24:20 +01:00
36d84c6959 GCMemcard: Slightly nicer definition of UNINITIALIZED_GAMECODE. 2018-12-10 20:24:20 +01:00
ca2c7679df GCMemcard: Rewrite DEntry_IconFmt() and DEntry_AnimSpeed() to make more sense. 2018-12-10 20:24:20 +01:00
2351a60567 GCMemcard: Let GetDEntry() return std::optional<DEntry>. 2018-12-10 20:24:20 +01:00
860e003b0c GCMemcard: Remove needless second definition of DENTRY_SIZE. 2018-12-09 22:28:58 +01:00
3d77a43e67 GCMemcard: Use std::array for GCMBlock.m_block. 2018-12-09 22:28:58 +01:00
ceb9cb53c6 GCMemcard: Rename GCMBlock.block to m_block to match naming conventions. 2018-12-09 22:28:58 +01:00
fc70b60d8b GCMemcard: Access active directory/BAT via methods instead of pointers. 2018-12-09 22:28:58 +01:00
7ff65db3b2 GCMemcard: As far as I can tell, the directory and BAT blocks aren't really main and backup, but just two blocks that store data are written to alternately. So store them as an std::array of 2 blocks instead of an explicit 'backup' block. 2018-12-09 22:28:58 +01:00
0aaf24b9cc GCMemcard: Rename GCMemcard variables to match our naming conventions. 2018-12-09 22:28:58 +01:00
4d4b5442bd GCMemcard: Use std::array and BigEndianValue for BlockAlloc.m_map. 2018-12-09 22:28:57 +01:00
eb6cc3dbab GCMemcard: Use BigEndianValue for BlockAlloc.m_last_allocated_block. 2018-12-09 22:28:57 +01:00
d3b61c3ff0 GCMemcard: Use BigEndianValue for BlockAlloc.m_free_blocks. 2018-12-09 22:28:57 +01:00
88bdab6fe6 GCMemcard: Use BigEndianValue for BlockAlloc.m_update_counter. 2018-12-09 22:28:57 +01:00
0f776fb091 GCMemcard: Use BigEndianValue for Directory.m_update_counter. 2018-12-09 22:28:57 +01:00
2d77096d63 GCMemcard: Use std::array for Directory's members. 2018-12-09 22:28:57 +01:00
f8488f4561 GCMemcard: Use std::array for DEntry.m_unused_2. 2018-12-09 22:28:57 +01:00
4175fdf28d GCMemcard: Use std::array for DEntry.m_makercode. 2018-12-09 22:28:57 +01:00
deadec608e GCMemcard: Use std::array for DEntry.m_gamecode. 2018-12-09 22:28:57 +01:00
0c638ad858 GCMemcard: Use std::array for DEntry.m_filename. 2018-12-09 22:28:56 +01:00
443729d2c3 GCMemcard: Use BigEndianValue for DEntry.m_comments_address. 2018-12-09 22:28:56 +01:00
8a920dac93 GCMemcard: Use BigEndianValue for DEntry.m_block_count. 2018-12-09 22:28:56 +01:00
675a549628 GCMemcard: Use BigEndianValue for DEntry.m_first_block. 2018-12-09 22:28:56 +01:00
929fd2b41d GCMemcard: Use BigEndianValue for DEntry.m_animation_speed. 2018-12-09 22:28:56 +01:00
c3e9f53480 GCMemcard: Use BigEndianValue for DEntry.m_icon_format. 2018-12-09 22:28:56 +01:00
65f6250faa GCMemcard: Use BigEndianValue for DEntry.m_image_offset. 2018-12-09 22:28:56 +01:00
1d25e249e8 GCMemcard: Use BigEndianValue for DEntry.m_modification_time. 2018-12-09 22:28:56 +01:00
2f1ff80dd6 GCMemcard: Use std::array for Header members instead of raw C arrays. 2018-12-09 22:28:56 +01:00
256d336219 GCMemcard: Use BigEndianValue for Header.m_encoding. 2018-12-09 22:28:55 +01:00
8eabcbf294 GCMemcard: Use BigEndianValue for Header.m_size_mb. 2018-12-09 22:28:55 +01:00
bfbfcc72a2 GCMemcard: Use BigEndianValue for Header.m_device_id. 2018-12-09 22:28:55 +01:00
b3ce882109 GCMemcard: Use BigEndianValue for Header.m_sram_language. 2018-12-09 22:28:55 +01:00
905a16e7e7 GCMemcard: Use BigEndianValue for Header.m_format_time. 2018-12-09 22:28:55 +01:00
9f03c2f358 GCMemcard: Rename BlockAlloc variables to match our naming conventions. 2018-12-09 22:28:55 +01:00
17208f4c89 GCMemcard: Rename Directory variables to match our naming conventions. 2018-12-09 22:28:55 +01:00
15f89d3e6f GCMemcard: Rename DEntry variables to match our naming conventions. 2018-12-09 22:28:55 +01:00
c419dac1d8 GCMemcard: Rename Header variables to match our naming conventions. 2018-12-09 22:28:55 +01:00
4b1d891378 GCMemcard: Add a few static asserts for sizes of memory card structures. 2018-12-09 22:28:55 +01:00
2e19efa8d5 NetPlay: Sync Wiimote extension
Small addition of NetPlay code in Core.cpp was needed to set the
extensions at the right time, as init would override them otherwise.
This solution is more elegant than modifying the user's INI files on
game start.
2018-12-05 16:36:44 -05:00
a2545a18b2 Qt/ControllersWindow: Fix Wiimote settings not being re-enabled after quitting NetPlay
We no longer allow accessing controller config while NetPlay is
running, so this check is no longer needed.
2018-12-05 16:12:12 -05:00
2eb85c8fcf Merge pull request #7594 from TryTwo/NestedDocks
Add nested docking to increase layout choices while debugging.
2018-12-05 17:14:46 +01:00
2c57e709d0 Merge pull request #7603 from jordan-woyak/fs-open-file-fix
Present an error message when failing to open a file that should exist.
2018-12-04 08:49:21 +01:00
7afd5cc2fb Use main buffers for utility draws 2018-12-04 17:37:25 +10:00