Commit graph

8677 commits

Author SHA1 Message Date
Marshall Mohror 996f1546b2
core: Remove outdated MSVC workarounds (#5099)
* core/hw/gpu: Remove outdated MSVC workarounds

* core/hle/service/hid: Remove MSVC workaround
2020-02-20 13:40:21 -06:00
zhupengfei a487016cb4
core, citra_qt: Implement a save states file format and slot UI
10 slots are offered along with 'Save to Oldest Slot' and 'Load from Newest Slot'.

The savestate format is similar to the movie file format. It is called CST (Citra SavesTate), and is basically a 0x100 byte header (consisting of magic, revision, creation time and title ID) followed by Zstd compressed raw savestate data.

The savestate files are saved to the `states` folder in Citra's user folder. The files are named like `<Title ID>.<Slot ID>.cst`.
2020-02-18 13:19:52 +08:00
zhupengfei 7d880f94db
Add simple zstd compression
Just a simple default compression is able to shrink savestate file size from ~160MB to ~20MB.
2020-02-16 23:25:30 +08:00
Vitor K 4991c0121a
Remove duplicate code from the migration of frame limit to gene… (#5091) 2020-02-15 14:38:20 +01:00
zhupengfei 57efc41973
service/cecd: Add missing SessionData serialization 2020-02-14 17:15:08 +08:00
zhupengfei 7e8041df28
kernel/timer: Add missing base object 2020-02-14 17:13:53 +08:00
zhupengfei 5aa5cd6064 Fix externals/boost spec 2020-02-13 17:42:12 +08:00
Hamish Milne 246ae84a52 Pretty sure ARM/Thread serialization works now 2020-02-13 17:42:12 +08:00
Hamish Milne c983528862 Reworked DSP serialization 2020-02-13 17:42:12 +08:00
James Rowe 55c75b5e3e Add ClearAll to rasterizer cache for fully wiping the cache on save/load 2020-02-13 17:42:11 +08:00
James Rowe 3e34ad6890 Hack: Workaround crash when loading state and gyro is used 2020-02-13 17:42:11 +08:00
Hamish Milne 0effb229cd Fix geometry pipeline; attempt to fix motion controls 2020-02-13 17:42:10 +08:00
Hamish Milne 35c3ca995c Fixed a bug (??) in arm_dynarmic where PageTableChanged could reset the CPU context 2020-02-13 17:42:10 +08:00
Hamish Milne b2370ea353 Fixed setting the right DSP service on deserialization 2020-02-13 17:42:10 +08:00
Hamish Milne 2217b3558d Fixed file services serialization 2020-02-13 17:42:10 +08:00
Hamish Milne c24ea0f0ee Serialize core timing 2020-02-13 17:42:09 +08:00
Hamish Milne 8abc5525be Added Signals; more runtime fixes 2020-02-13 17:42:09 +08:00
Hamish Milne e4f05884c3 Fixed serialization runtime exceptions 2020-02-13 17:42:08 +08:00
Hamish Milne ca971ff31f Serialize file/directory services 2020-02-13 17:42:08 +08:00
Hamish Milne 9525d81344 More base-derived fixes 2020-02-13 17:42:07 +08:00
Hamish Milne 996aba39fe Correct exports; add some file serialization; fix service base object serialization 2020-02-13 17:42:07 +08:00
Hamish Milne f2de70c3fb Fix crash bugs 2020-02-13 17:42:06 +08:00
Hamish Milne 116d22d562 Refactor out the wakeup_callback function pointer 2020-02-13 17:42:05 +08:00
Hamish Milne 7019561fd5 Bind NWM_UDS service in the constructor 2020-02-13 17:42:05 +08:00
Hamish Milne 96432589bd Use shared_ptr for PageTable 2020-02-13 17:42:04 +08:00
Hamish Milne e4afa8e512 Make the tests pass 2020-02-13 17:42:04 +08:00
Hamish Milne 65d96bf6c1 Changed u8* to MemoryRef 2020-02-13 17:42:00 +08:00
Hamish Milne cf985631e0 Minor tidying up 2020-02-13 17:41:27 +08:00
Hamish Milne 26e90a99cd Added basic UI; misc memory fixes 2020-02-13 17:41:27 +08:00
Hamish Milne 558e710e17 Finished archives; remove pod.h 2020-02-13 17:41:26 +08:00
Hamish Milne 2bf5b46460 Basic archive backend serialization 2020-02-13 17:41:26 +08:00
Hamish Milne 2d2c7218ef Serialize CECD, CFG services 2020-02-13 17:41:25 +08:00
Hamish Milne ef2e503281 Serialize QTM, Y2R services 2020-02-13 17:41:24 +08:00
Hamish Milne 92857efca4 Serialize PTM service 2020-02-13 17:41:24 +08:00
Hamish Milne f5e2f873b0 Serialize NWM service 2020-02-13 17:41:24 +08:00
Hamish Milne 571b1062f0 Serialize NIM, PS, PXI, SOC, SSL services 2020-02-13 17:41:23 +08:00
Hamish Milne 2409ee39cb Serialize IR, MVD, NDM, NEWS, NFC 2020-02-13 17:41:23 +08:00
Hamish Milne 3d6e372f96 More clang format fixes. Really need to standardise the version of this 2020-02-13 17:41:23 +08:00
Hamish Milne 01ec2e8a67 Serialize MIC service 2020-02-13 17:41:22 +08:00
Hamish Milne e3c0211b74 Fix clang format 2020-02-13 17:41:22 +08:00
Hamish Milne eb67167b7c Serialize IR service 2020-02-13 17:41:22 +08:00
Hamish Milne 8bd3e8cd27 Serialize HTTP service 2020-02-13 17:41:22 +08:00
Hamish Milne 74361fa3fb Serialize HID service 2020-02-13 17:41:21 +08:00
Hamish Milne 30494c06a4 Serialize GSP service 2020-02-13 17:41:21 +08:00
Hamish Milne 754f63af1a Don't require cmake 3.15 2020-02-13 17:41:21 +08:00
Hamish Milne 9877bf7d48 Change how the boost target works; disable external warnings in MSVC 2020-02-13 17:41:20 +08:00
Hamish Milne a0ac302a93 Definitely disable using system boost if version doesn't match 2020-02-13 17:41:20 +08:00
Hamish Milne d041901a30 Some more CI fixes 2020-02-13 17:41:20 +08:00
Hamish Milne c7106e232f Fix a bug on mingw 2020-02-13 17:41:16 +08:00
Hamish Milne d6862c2fca Some CI fixes 2020-02-13 17:40:52 +08:00