Commit Graph

97 Commits

Author SHA1 Message Date
Luke Street b63f7c6401 AsyncIOPosix: Add mode_t argument to open 2020-06-24 12:05:55 -04:00
Phillip Stephens 4891a95688
Fix corrupted memory cards 2020-04-15 04:26:14 -07:00
Jack Andersen 6d8d389459 Merge commit '4648' 2020-04-10 19:01:39 -10:00
Jack Andersen 4648c93b8e Exclude CMake CXX standard from MSVC 2020-04-10 19:01:21 -10:00
Lioncash 1b813f0c70 Util: Make operator|= and &= constexpr for bitwise enums
Maintains parity with hecl's version of the macro, etc.
2020-04-05 10:00:12 -04:00
Phillip Stephens 35e5c7c90f
Merge pull request #12 from lioncash/const
General: Make member functions const where applicable
2019-09-03 00:37:32 -07:00
Phillip Stephens d48ba9523f
Merge pull request #13 from lioncash/explicit
General: Use explicit where applicable
2019-09-03 00:37:23 -07:00
Phillip Stephens f74f1a3a6c
Merge pull request #11 from lioncash/array
General: Use std::array for constructors where applicable
2019-09-03 00:36:32 -07:00
Lioncash 9d3a436e70 Card: Use UINT32_MAX for FileHandle's default initializer
Avoids a sign conversion
2019-09-02 08:45:07 -04:00
Lioncash e96db1e032 General: Use explicit where applicable
Makes conversions explicit in order to prevent error-prone implicit
conversions.
2019-09-02 08:42:37 -04:00
Lioncash ed2a6b3ce8 Card: Make querying functions const member functions where applicable
These don't modify member state, so they can be made const .
2019-09-02 08:26:43 -04:00
Lioncash 66ce5ed823 Directory: Make indexForFile() a const member function
This doesn't modify instance state, so it can be turned into a const
member function.
2019-09-02 08:20:50 -04:00
Lioncash 69d24d1027 General: Use std::array for constructors where applicable
Same behavior, but ensures input absolutely satisfies the total amount
of data that needs to be copied.
2019-09-02 08:14:44 -04:00
Phillip Stephens 91a0a41cee
Merge pull request #10 from lioncash/array
General: Use std::array where applicable
2019-09-02 01:02:45 -07:00
Lioncash 1779e14bcc 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.
2019-09-02 03:30:58 -04:00
Lioncash e186d1498f Revert "Revert "General: Use std::array where applicable""
This reverts commit 698e37d6a4.
2019-09-02 00:34:16 -04:00
Phillip Stephens b279404833
Merge pull request #9 from AxioDL/revert-7-array
Revert "General: Use std::array where applicable"
2019-09-01 11:27:04 -07:00
Phillip Stephens 698e37d6a4
Revert "General: Use std::array where applicable" 2019-09-01 11:26:50 -07:00
Phillip Stephens 9484bf40f9
Merge pull request #8 from lioncash/game
Card: Zero out game array within setCurrentGame for nullptr
2019-09-01 11:05:56 -07:00
Phillip Stephens a701828371
Merge pull request #7 from lioncash/array
General: Use std::array where applicable
2019-09-01 11:05:12 -07:00
Lioncash 54f9a11012 Card: Eliminate a few hardcoded constants 2019-08-31 22:27:54 -04:00
Lioncash 215cb25c5c Card: Zero out game array within setCurrentGame for nullptr
Previously this was zeroing out the maker array, which it shouldn't be
doing.
2019-08-31 22:20:30 -04:00
Lioncash 3e64021400 General: Use std::array where applicable
Same behavior, but with stronger typing. We can also eliminate usages of
magic values in some places.
2019-08-31 22:14:42 -04:00
Phillip Stephens 222fb5c179
Add missing include 2019-08-31 01:58:06 -07:00
Phillip Stephens 33bcde5a73
Merge pull request #4 from lioncash/cmake
CMakeLists: Remove unnecessary unset
2019-08-30 16:30:29 -07:00
Phillip Stephens 9d003a3e9b
Merge pull request #5 from lioncash/include
General: Avoid indirect includes
2019-08-30 16:28:15 -07:00
Phillip Stephens a638632fbb
Merge pull request #6 from lioncash/flags
CMakeLists: Enable extra standards conformance flags on MSVC
2019-08-30 16:28:04 -07:00
Lioncash 3f7e52b216 CMakeLists: Enable extra standards conformance flags on MSVC
These flags are off by default. We can enable these to enforce
more standards-compliant behavior.

Given this project is quite small, this is trivial to append.
2019-08-30 10:53:59 -04:00
Lioncash 7e3a2370c5 General: Avoid indirect includes
Ensures all inclusions are made where necessary.
2019-08-30 10:35:03 -04:00
Lioncash 8df58d59bc CMakeLists: Remove unnecessary unset
This variable isn't used within this source file, so it can be removed.
2019-08-30 10:17:06 -04:00
Phillip Stephens f57d8cf761
Merge pull request #3 from lioncash/cmake
CMakeLists: Use target_sources instead of a variable
2019-08-13 14:31:07 -07:00
Phillip Stephens 91316888fe
Merge pull request #2 from lioncash/api
Card: Amend doxygen comments
2019-08-13 14:30:59 -07:00
Lioncash 3ef8955ebb CMakeLists: Use target_sources instead of a variable
Gets rid of the need to unset the PLAT_SRCS variable. We can just
conditionally append the source files to the existing set of sources
within the target.
2019-08-13 02:06:26 -04:00
Lioncash d906c2526b 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.
2019-08-12 23:56:39 -04:00
Jack Andersen dc436ffb32 Make stuff constexpr 2019-07-19 18:26:25 -10:00
Jack Andersen 8053d1125b Windows build fixes 2019-06-12 15:33:09 -10:00
Jack Andersen 51c7163cfd Better CMake dependency handling 2019-06-11 16:04:15 -10:00
Phillip Stephens 82c607ec40 Fix raw pointer bug 2019-06-02 20:35:04 -07:00
Phillip Stephens da4008bf50 Prevent garbage data from being written to memcard 2019-06-02 20:31:57 -07:00
Jack Andersen 630119350b Add True and False tests for bitwise enums 2019-04-02 18:29:35 -10:00
Jack Andersen 3a6ee9a70c Minor bitwise enum macro change 2018-12-15 20:30:54 -10:00
Jack Andersen f126245eef New code style refactor 2018-12-07 19:20:24 -10:00
Jack Andersen a1e2242691 _SYS_STR macro fix 2018-10-18 14:57:43 -10:00
Jack Andersen bd1c3e99f2 Windows build fixes 2018-10-14 10:12:52 -10:00
Jack Andersen e84546be2d Convert to pragma once 2018-10-06 17:41:40 -10:00
Jack Andersen 37461f2165 Add public waitForCompletion method 2018-06-16 10:08:13 -10:00
Phillip Stephens 0c012a3776 Fix linux build 2018-02-15 09:22:37 -08:00
Jack Andersen a4045a7764 Fix cardtest 2018-02-06 15:53:06 -10:00
Jack Andersen 3b10be80f7 Implement Win32 AsyncIO 2018-02-06 15:36:51 -10:00
Jack Andersen bdf4bd07a8 Use asynchronous I/O for Card access 2018-02-05 23:34:01 -10:00