142 Commits

Author SHA1 Message Date
Lioncash
b7a5e3b36c Directory: Avoid use of unnamed struct in union
Anonymous structs have a limitation on GCC when involving non-trivial
default constructors, as it's a compiler extension and not actually
standard C++ to use anonymous structs. We can give the struct a concrete
name, which fixes this issue.
2025-04-19 19:53:50 -07:00
Lioncash
42c4ae8daa Revert "Revert "General: Use std::array where applicable""
This reverts commit 698e37d6a41770f53d1a9e9f5c4559102a4b2ad5.
2025-04-19 19:53:50 -07:00
c037818600 Revert "General: Use std::array where applicable" 2025-04-19 19:53:50 -07:00
Lioncash
ee3ea90954 Card: Eliminate a few hardcoded constants 2025-04-19 19:53:50 -07:00
Lioncash
62b03a7cde Card: Zero out game array within setCurrentGame for nullptr
Previously this was zeroing out the maker array, which it shouldn't be
doing.
2025-04-19 19:53:50 -07:00
Lioncash
8895960bad General: Use std::array where applicable
Same behavior, but with stronger typing. We can also eliminate usages of
magic values in some places.
2025-04-19 19:53:50 -07:00
8ff4d91f3f Add missing include 2025-04-19 19:53:50 -07:00
Lioncash
7a813a7365 General: Avoid indirect includes
Ensures all inclusions are made where necessary.
2025-04-19 19:53:49 -07:00
Lioncash
8ae9da65e5 Card: Amend doxygen comments
Amends broken or missing doxygen parameters. While we're at it, we can
expand the documentation a little bit to be somewhat more explanatory
about the functions.
2025-04-19 19:53:46 -07:00
Jack Andersen
7001f40f22 Make stuff constexpr 2025-04-19 19:53:46 -07:00
Jack Andersen
2a463de413 Windows build fixes 2025-04-19 19:53:45 -07:00
Jack Andersen
8017bdf6c8 Better CMake dependency handling 2025-04-19 19:53:41 -07:00
13e6688ed9 Fix raw pointer bug 2025-04-19 19:53:40 -07:00
8c4d6d4210 Prevent garbage data from being written to memcard 2025-04-19 19:53:40 -07:00
Jack Andersen
4e6db26c9f Add True and False tests for bitwise enums 2025-04-19 19:53:40 -07:00
Jack Andersen
9d5c25978d Minor bitwise enum macro change 2025-04-19 19:53:40 -07:00
Jack Andersen
8ce7a33f65 New code style refactor 2025-04-19 19:53:40 -07:00
Jack Andersen
fe814771ce _SYS_STR macro fix 2025-04-19 19:53:40 -07:00
Jack Andersen
e67001ead9 Windows build fixes 2025-04-19 19:53:40 -07:00
Jack Andersen
0a640fada4 Convert to pragma once 2025-04-19 19:53:40 -07:00
Jack Andersen
6479678a82 Add public waitForCompletion method 2025-04-19 19:53:40 -07:00
2934952af0 Fix linux build 2025-04-19 19:53:40 -07:00
Jack Andersen
124d2edfbf Fix cardtest 2025-04-19 19:53:40 -07:00
Jack Andersen
474013b151 Implement Win32 AsyncIO 2025-04-19 19:53:40 -07:00
Jack Andersen
83bf0a47d7 Use asynchronous I/O for Card access 2025-04-19 19:53:39 -07:00
Jack Andersen
1ae9444fe8 Huge compile performance refactor 2025-04-19 19:53:38 -07:00
Jack Andersen
3541696053 UWP fix 2025-04-19 19:53:38 -07:00
Jack Andersen
865165205d Windows fixes 2025-04-19 19:53:36 -07:00
Jack Andersen
53cd75525b string_view refactor 2025-04-19 19:53:35 -07:00
Jack Andersen
24cf526773 Use MoveFileEx for Win32 file renaming 2025-04-19 19:53:30 -07:00
Jack Andersen
62be64f1aa Windows fix 2025-04-19 19:53:30 -07:00
Jack Andersen
382abc6455 Checksum recalculate fix for getStatus() 2025-04-19 19:53:25 -07:00
Jack Andersen
a1f6ebb4ca Specify binary mode when reopening card file 2025-04-19 19:53:25 -07:00
Jack Andersen
3f7d937a05 Card writing bug fixes 2025-04-19 19:53:25 -07:00
Jack Andersen
aa37daf0f3 More stable index-flipping for write ops 2025-04-19 19:53:25 -07:00
06a19cd1d3 Revert file index 0 avoidance 2025-04-19 19:53:25 -07:00
Jack Andersen
537a8f684d FileHandle refactor 2025-04-19 19:53:25 -07:00
Jack Andersen
e60054ae91 Checksum and Card copy fixes 2025-04-19 19:53:25 -07:00
2bc1904fac Better block allocation handling 2025-04-19 19:53:25 -07:00
Jack Andersen
dbd81e6158 Ensure WideStringConvert.hpp is included 2025-04-19 19:53:25 -07:00
Jack Andersen
afdfb1642e Ensure CARD_UCS2 is conditionally defined 2025-04-19 19:53:25 -07:00
Jack Andersen
247eae5913 This had better fix S_ISREG on Windows 2025-04-19 19:53:25 -07:00
Jack Andersen
e185d25292 stat include to make windows happy 2025-04-19 19:53:25 -07:00
Jack Andersen
b76aa3acf9 getStatus and setStatus implementation 2025-04-19 19:53:25 -07:00
Jack Andersen
b6e878f343 Changes to support CMemoryCardSys integration 2025-04-19 19:53:25 -07:00
2a6ed838d4 Fix file copy operation 2025-04-19 19:53:25 -07:00
e4cf066cd6 Proper getSerial implementation 2025-04-19 19:53:25 -07:00
5287818c4f Handle no-copy/no-move permissions 2025-04-19 19:53:25 -07:00
a1beab1181 Formatting pass 2025-04-19 19:53:24 -07:00
Jack Andersen
2d4c021509 Correct use of constexpr 2025-04-19 19:53:22 -07:00