Commit Graph

36 Commits

Author SHA1 Message Date
97682e09ab Pad: Don't apply input state when load-from-devices is off 2021-03-27 13:42:32 +10:00
96344799a0 pad: improve UI messaging when UI config doesn't match savestate config, and document some edge cases. 2021-03-21 13:25:46 -07:00
6449207e04 pad: remove unreachable code block in DoState
The block in question was introduced by changesets:
  47f0720b93
  125d104df4
2021-03-21 12:31:58 -07:00
3482313e2f Multitap: Add option to enable only on port 2 2021-03-01 14:59:59 -08:00
f9dc1a7e80 Core: Add Multitap support 2021-02-26 21:04:12 -08:00
11992bde4e TimingEvents: Use function pointers instead of std::function 2021-01-10 01:45:07 +10:00
47f0720b93 Controller: Always preserve internal state when loading/resuming
Fixes analog mode getting disabled when loading state.
2020-12-17 01:20:06 +10:00
125d104df4 Pad: Fix controller state not being ignored in state load 2020-11-21 18:39:03 +10:00
81a638cabb Pad: Fix loading controllers from save states 2020-11-14 07:46:26 -08:00
f69889264d Core: Make some additional OSD messages translatable 2020-10-22 02:07:48 -07:00
b979706417 Pad: Use memory card filename from current state
Fixes memory card data getting lost after loading state.
2020-09-27 01:33:26 +10:00
3b68c4028d Pad: Load memory card from state when the data matches
A warning will be displayed when the card content does not match.
2020-09-26 15:53:09 +10:00
f5fb8186c7 Switch some messages to the OSD and increase durations 2020-08-16 00:20:10 +10:00
b6f871d2b9 JIT optimizations and refactoring (#675)
* CPU/Recompiler: Use rel32 call where possible for no-args

* JitCodeBuffer: Support using preallocated buffer

* CPU/Recompiler/AArch64: Use bl instead of blr for short branches

* CPU/CodeCache: Allocate recompiler buffer in program space

This means we don't need 64-bit moves for every call out of the
recompiler.

* GTE: Don't store as u16 and load as u32

* CPU/Recompiler: Add methods to emit global load/stores

* GTE: Convert class to namespace

* CPU/Recompiler: Call GTE functions directly

* Settings: Turn into a global variable

* GPU: Replace local pointers with global

* InterruptController: Turn into a global pointer

* System: Replace local pointers with global

* Timers: Turn into a global instance

* DMA: Turn into a global instance

* SPU: Turn into a global instance

* CDROM: Turn into a global instance

* MDEC: Turn into a global instance

* Pad: Turn into a global instance

* SIO: Turn into a global instance

* CDROM: Move audio FIFO to the heap

* CPU/Recompiler: Drop ASMFunctions

No longer needed since we have code in the same 4GB window.

* CPUCodeCache: Turn class into namespace

* Bus: Local pointer -> global pointers

* CPU: Turn class into namespace

* Bus: Turn into namespace

* GTE: Store registers in CPU state struct

Allows relative addressing on ARM.

* CPU/Recompiler: Align code storage to page size

* CPU/Recompiler: Fix relative branches on A64

* HostInterface: Local references to global

* System: Turn into a namespace, move events out

* Add guard pages

* Android: Fix build
2020-07-31 17:09:18 +10:00
bff5432879 Pad: Improve ACK timing
Fixes random pauses in Moto Racer.
2020-07-02 00:50:53 +10:00
b471d1043a Settings: Load Memory Cards From State -> Load Devices From State
Makes it apply to controllers too.
2020-07-02 00:50:53 +10:00
81a7b147fc System: Add option to disable loading memory cards from save states 2020-05-27 02:06:56 +10:00
9539ce032b AnalogController: Show controller number in OSD messages 2020-05-08 15:32:39 +10:00
85707f809c Pad: Fix OSD error message when save state memory cards mismatch 2020-05-08 00:49:04 +10:00
e6bd6587fd Controller: Add emulation of Namco GunCon 2020-04-26 01:23:58 +10:00
1b9609ef61 Implement event-based scheduler instead of lock-step components 2020-01-24 16:23:39 +10:00
3e90d79df7 Pad: Fix log spam 2020-01-11 13:29:30 +10:00
71c1e243fe Remove YBaseLib dependency 2020-01-10 13:40:53 +10:00
c52040434a Core: Linux warning fixes 2020-01-09 08:46:52 +10:00
52c82b6aa3 Pad: Change controller types when loading states if needed 2019-12-16 00:05:48 +10:00
ea0845d5ad Move controller creation to System class, switch shared_ptr to unique_ptr 2019-12-14 23:20:24 +10:00
da14b10e72 Split MemoryCard and PadDevice (now Controller) 2019-12-09 00:52:00 +10:00
54277dc24f Pad: Update status after ACK 2019-12-07 00:02:47 +10:00
4798f35e40 Pad: Delay ACK after receiving byte
The controller routines in the BIOS seem to depend on this, if they
happen at the same time depending on what part of the code it was in,
it'll assume no controller is connected.
2019-12-05 23:03:56 +10:00
6a82333d8f Pad: Only buffer a single byte
Fixes Croc 2 memory card access freezing.
2019-11-12 01:32:06 +10:00
6f4cf7d5e3 System: Support changing BIOS path 2019-11-11 19:43:39 +10:00
0092cb1016 Pad: Set up memory cards via settings 2019-10-27 17:46:36 +10:00
e99f0a4acf Pad: Use baud rate for transfer delay 2019-10-27 01:52:18 +10:00
b0c492fd43 DigitalController: Fix broken input due to 0x01 handling
Fixes THPS among others.
2019-10-26 22:33:25 +10:00
75f206262c Pad: Store JOY_BAUD 2019-10-18 23:52:52 +10:00
bddbab9d60 Rename to DuckStation 2019-10-04 13:54:09 +10:00