Luke Street
57d96dbb17
Fully decouple hecl from Metaforce
...
- Added CStringExtras Convert functions
(and UTF-compatible versions)
- GX header copied into Runtime
- SFX headers copied into Runtime/Audio
2022-02-21 08:01:06 -08:00
Phillip Stephens
ad272f7468
More refactoring, decouple tweaks from hecl
2022-02-21 08:01:05 -08:00
Phillip Stephens
dad7249927
RE COutput/InputStream and friends and migrate over
...
This branch is probably still horribly broken, but it's a good first step to migrating away from having hecl embedded in the runtime
2022-02-21 08:01:05 -08:00
Luke Street
7b9f893a49
aurora: the boring C++ version
2022-02-16 00:21:24 -05:00
Phillip Stephens
a9bcb7a9ce
Reformat pass
2021-06-07 12:29:18 -07:00
Phillip Stephens
9bae2f943e
Rename everything
2021-04-10 01:42:06 -07:00
Lioncash
cb2fe959a4
CSfxManager: Make use of designated initializers
...
Same behavior, less duplication of variable names.
2020-07-31 22:46:11 -04:00
Lioncash
fa3e639a9d
RuntimeCommon: Make use of bitfield initializers where applicable
...
Continues and finishes the migration towards initializing all bitfield
members where applicable
2020-04-21 17:16:19 -04:00
Jack Andersen
5b4441ac36
Update fmtlib
2020-04-11 12:51:39 -10:00
Luke Street
8e691d0f73
Runtime/Audio: Replace bitfield unions with constructor initializers
2020-04-10 15:02:55 -04:00
Lioncash
45dca4a25b
CStreamAudioManager: Always initialize x74_oneshot
...
Provides deterministic consistent state when constructing the class.
2020-04-07 12:53:05 -04:00
Lioncash
3865dfbfe5
CSfxManager: Always initialize x1a_reverb and x55_cachedMaxVol
...
Provides a deterministic initial state.
2020-04-07 12:49:43 -04:00
Lioncash
2ab59eec52
CSfxManager: Make use of std::array where applicable
...
Same behavior, but with stronger typing.
2020-04-07 12:47:57 -04:00
Lioncash
d677d2ac1d
CSfxManager: Always initialize m_isEmitter
...
Provides a deterministic initial state.
While we're at it, we can remove an unnecessary initializer.
2020-04-07 12:42:03 -04:00
Lioncash
f17042ab77
CStreamAudioManager: Make use of std::array where applicable
...
Dehardcodes a lot of repeated array sizes.
2020-04-07 06:01:14 -04:00
Lioncash
67f6666ea1
Runtime: Add more usages of explicit
...
Prevents error-prone implicit conversions where applicable.
This targets the regular RuntimeCommon target this time around.
2020-03-31 03:53:49 -04:00
Lioncash
985b85d9db
CAudioGroupSet: Eliminate undefined behavior within LoadData()
...
Eliminates aliasing violations.
2020-03-25 01:14:27 -04:00
Luke S
58a2f6aeb2
Merge pull request #173 from lioncash/c_str
...
Runtime: Remove unnecessary c_str() calls
2020-02-28 11:16:57 -05:00
Lioncash
f1256faeb7
Runtime: Remove unnecessary c_str() calls
...
Makes for less noisy code and also gets rid of unnecessary std::strlen
calls in the case things are passed to a std::string_view parameter.
2020-02-28 05:26:41 -05:00
Lioncash
2b4888dcb6
CMidiManager: std::move sequencer within SetAudioSysHandle()
...
Provides the same behavior but without a redundant reference count
increment and then decrement.
2020-02-26 03:16:11 -05:00
Lioncash
1cb289f243
RuntimeCommon: Normalize cpp inclusions
...
Normalizes the headers for the cpp files in the RuntimeCommon target.
Now all headers and source files within the RuntimeCommon/RuntimeCommonB
targets are normalized and consistent with one another.
2020-01-15 09:15:47 -05:00
Phillip Stephens
a1c7692d36
More CRidley imps
2019-11-12 12:25:21 -08:00
Lioncash
9af64d3895
CAudioSys: Convert file-scope std::string into a constexpr string_view.
...
Eliminates a static constructor that needs to run at program start.
2019-09-30 11:03:47 -04:00
Lioncash
dea89e7664
CAudioSys: Remove construction of pairs in emplace calls
...
The purpose of emplace is to construct the pair within the map. While
using make_pair will result in the same behavior, it's a tad more
verbose than it needs to be.
2019-09-30 11:00:49 -04:00
Lioncash
f1d08c4fbf
CAudioSys: Place file-scope locals within an anonymous namespace
...
Prevents any potential violations of the ODR from occuring.
2019-09-30 10:59:31 -04:00
Lioncash
a633b8e8fd
General: Normalize RuntimeCommon include paths
...
Performs the same normalizing done to the RuntimeCommonB target, now all
of the runtime headers have normalized include paths.
2019-09-28 04:14:29 -04:00
Lioncash
0d2b2f45a8
CStringExtras: Prevent potential out of bounds reads with CompareCaseInsensitive
...
The strcasecmp and _stricmp functions expect the passed in strings to
be null-terminated, however we we're also exposing a std::string_view
overload for that function. std::string_view instances aren't required
to be null-terminated, so this makes the interface a little unsafe.
We can use std::lexicographical_compare() to provide the same behavior
and also properly handle the case of non-null-terminated strings.
2019-09-14 16:43:04 -04:00
Lioncash
9312eef905
RuntimeCommon: Use override where applicable
...
Continues the override modernization by applying it to the main
RuntimeCommon target. Resolves around 1100+ cases where override can be
used.
2019-08-09 17:39:42 -04:00
Lioncash
2059535b55
RuntimeCommonB: Use the override specifier where applicable
...
Applies the override keyword where applicable to indicate visually where
member function overriding is occurring. This only targets
the RuntimeCommonB target as a starting point, which resolves around
900+ cases where the keyword could be used.
2019-08-09 09:13:26 -04:00
Jack Andersen
e218b8aeb5
CActorContraption fixes, better CMake dependency handling
2019-06-11 16:05:17 -10:00
Jack Andersen
3a0d2930fa
Numerous uninitialized memory fixes
2019-04-06 19:14:48 -10:00
Jack Andersen
ad2681f857
Windows fixes
2019-01-28 22:28:35 -10:00
Jack Andersen
636c82a568
New code style refactor
2018-12-07 19:30:43 -10:00
Jack Andersen
7c7da6671a
SIMD refactor
2018-12-07 15:49:15 -10:00
Jack Andersen
98c7525176
Initially working CEnvFxManager
2018-11-01 22:16:16 -10:00
Jack Andersen
c91e5df986
Convert to pragma once
2018-10-06 17:42:33 -10:00
Jack Andersen
e46ec80b64
Integrate Amuse into hecl cook/extract for MP1/2
2018-09-02 14:46:16 -10:00
Jack Andersen
5a60a0acfc
Amuse API changes
2018-08-27 19:44:16 -10:00
Jack Andersen
67197621a1
Fix fixed position camera hint
2018-07-09 08:08:44 -10:00
Jack Andersen
186acae5d8
Initial CScriptPlatform collision
2018-06-23 16:39:53 -10:00
Jack Andersen
357a7efa9a
Various bug fixes
2018-06-01 20:06:40 -10:00
Jack Andersen
56a5cfd115
Fix TSan-reported race conditions
2018-06-01 14:03:31 -10:00
Jack Andersen
70b3404b7c
Windows build fixes and warning avoidance
2018-05-24 20:39:38 -10:00
Jack Andersen
13c0361021
Changes to support asynchronous kabufuda API
2018-02-06 12:02:31 -10:00
Jack Andersen
ac8dfde174
Various bug fixes and CActor rendering
2018-02-04 20:56:09 -10:00
Jack Andersen
93fc2d8072
Initial fixNES integration
2018-02-01 13:19:34 -10:00
Jack Andersen
397d3b690c
Use boo::ObjToken for referencing voices
2017-12-03 17:21:35 -10:00
Jack Andersen
92767f5147
Fixes for new boo assert
2017-12-02 20:13:04 -10:00
Jack Andersen
7951cb1ee0
Bug fixes
2017-11-28 00:06:40 -10:00
Jack Andersen
31ccb48246
Buffer overrun bug fixes
2017-11-27 16:48:24 -10:00