Squashed 'deps/nostalgia/' changes from 63d0abaa..53aea973

53aea973 [ox] Cleanup
0e028ff6 [ox] Cleanup
07688a2c [ox] Remove oxExpect macro
9ce4d3f8 [keel,nostalgia/gfx] Minor cleanup of tests
4aa8255c [ox] Update formatting in recently edited files
bfdfc104 [nostalgia/gfx] Update panic
cdd574d8 [ox] Change panic and assert to use std::source_location
bc05bd12 [ox/model] Rename and fix isBString helpers
b754c66c [ox] Remove enable_if
6a423032 [ox/std] Slight optimization
7477ede2 [ox/std] Cleanup some enable_ifs
65e3153d [ox/std] Add Union_c concept
53a224cf [ox/std] Cleanup
592e641b [ox/std] Fix writeItoa to work with max length 64 bit ints
689da4a0 [ox] Update docs
bdf7755e [nostalgia/developer-handbook] Update developer handbook
63f62737 [ox/std] Remove excess char from intToStr return
ff9002ad [nostalgia/developer-handbook] Update error handling section
4d0da022 [ox] Update error handling docs
02332d99 [ox] Fix issues in String Types section of docs
a566ed2a [ox/std] Fix writeItoa to work with negatives
815c3d19 [ox/std] Make StringLiteral constructors non-explicit
522bb14f [ox/std] Fix intToStr to have room for negatives
f40d5515 [ox] Add strings section to docs
941d1d90 [ox/std] Add Vector::reserveResize
3e880dcd [nostalgia/gfx/studio] Remove unused EBO management
03328ac1 [turbine/glfw] Fix to handle null click handler

git-subtree-dir: deps/nostalgia
git-subtree-split: 53aea9731dc2bdf891f8c59bbbbb67a8f8801e82
This commit is contained in:
2026-01-25 23:53:51 -06:00
parent 5fc3d23a97
commit d84c4980b2
42 changed files with 982 additions and 700 deletions

View File

@@ -27,9 +27,9 @@ All components have a platform indicator next to them:
* opengl - OpenGL implementation (P-)
* studio - studio plugin for core (P-)
* keel - keel plugin for core (PG)
* scene - defines & processes map data (PG)
* studio - studio plugin for scene (P-)
* keel - keel plugin for scene (PG)
* sound - sound system for Nostalgia (PG)
* studio - studio plugin for sound (P-)
* keel - keel plugin for sound (PG)
* player - plays the games (PG)
* studio - makes the games (P-)
* tools - command line tools (P-)
@@ -48,7 +48,7 @@ All components have a platform indicator next to them:
Not really that external... (PG)
* GlUtils - OpenGL helpers (P-)
* teagba - GBA assembly startup code (mostly pulled from devkitPro under MPL
2.0), and custom GBA hardware interop code (-G)
2.0), and custom GBA hardware interop code (-G)
Most GBA code is built on PC because it is small and helps to work on both
projects with the same CMake build dir, but GBA code is never linked with any
@@ -89,7 +89,8 @@ The GBA has two major resources for learning about its hardware:
On the surface, it seems like C++ changes the way we do things from C for no
reason, but there are reasons for many of these duplications of functionality.
The C++ language designers aren't stupid. Question them, but don't ignore them.
The C++ language designers aren't stupid.
Question them, but don't ignore them.
#### Casting
@@ -163,10 +164,11 @@ The Ox way of doing things is the Olympic way of doing things.
### Error Handling
Instead of throwing exceptions, generally try to use
[ox::Errors](deps/ox/ox-docs.md#error-handling) for error reporting,
but exceptions may be used where they make sense.
[ox::Error](deps/ox/ox-docs.md#error-handling) for error reporting.
Exceptions may be used where errors-as-values will not work, but catch them and
convert them to ```ox::Error``` as soon as possible.
Exceptions should generally just use ```OxException```, which is bascially an
Exceptions should generally just use ```ox::Exception```, which is basically an
exception form of ```ox::Error```.
### File I/O