Update developer handbook

This commit is contained in:
Gary Talent 2023-11-23 18:22:22 -06:00
parent b946e428ad
commit ed5271166e

View File

@ -20,30 +20,42 @@ All components have a platform indicator next to them:
(-G) - GBA (-G) - GBA
(P-) - PC (P-) - PC
* Nostalgia * GlUtils - OpenGL helpers (P-)
* core - platform abstraction and user I/O (PG) * Keel - asset management system (PG)
* gba - GBA implementation (-G) * Turbine - platform abstraction and user I/O (PG)
* gba - GBA implementation (PG)
* glfw - GLFW implementation (P-) * glfw - GLFW implementation (P-)
* userland - common things needed by all non-bare-metal implementations (P-) * Studio - where most of the studio code lives as library (P-)
* applib - used for per project studio executables
* modlib - used for studio modules to interact with studio
* Nostalgia
* modules
* core - graphics system for Nostalgia (PG)
* gba - GBA implementation (PG)
* opengl - OpenGL implementation (P-)
* studio - studio plugin for core (P-) * studio - studio plugin for core (P-)
* geo - geometry types (PG) * keel - keel plugin for core (PG)
* glutils - OpenGL helpers (P-) * scene - defines & processes map data (PG)
* studio - studio plugin for scene (P-)
* keel - keel plugin for scene (PG)
* player - plays the games (PG) * player - plays the games (PG)
* studio - makes the games (P-) * studio - makes the games (P-)
* tools - command line tools (P-) * tools - command line tools (P-)
* pack - packs a studio project directory into an OxFS file (P-) * pack - packs a studio project directory into an OxFS file (P-)
* world - defines processes map data (PG)
* studio - studio plugin for world (P-)
* deps - project dependencies * deps - project dependencies
* Ox - Library of things useful for portable bare metal and userland code. Not really that external... * Ox - Library of things useful for portable bare metal and userland code. Not really that external...
* clargs - Command Line Args processing (PG) * clargs - Command Line Args processing (PG)
* claw - Reads and writes Metal or Organic Claw with header to indicate which * claw - Reads and writes Metal or Organic Claw with header to indicate which
* event - Qt-like signal system
* fs - file system (PG) * fs - file system (PG)
* logconn - connects logging to Bullock (P-)
* mc - Metal Claw serialization, builds on model (PG) * mc - Metal Claw serialization, builds on model (PG)
* oc - Organic Claw serialization (wrapper around JsonCpp), builds on model (P-) * oc - Organic Claw serialization (wrapper around JsonCpp), builds on model (P-)
* model - Data structure modelling (PG) * model - Data structure modelling (PG)
* preloader - library for handling preloading of data (PG)
* std - Standard-ish Library with a lot missing and some things added (PG) * std - Standard-ish Library with a lot missing and some things added (PG)
* GbaStartup - GBA assembly startup code, mostly pulled from devkitPro under MPL 2.0 (-G) * teagba - GBA assembly startup code (mostly pulled from devkitPro under MPL
2.0), and custom GBA hardware interop code (-G)
## Code Base Conventions ## Code Base Conventions
@ -526,7 +538,7 @@ ox::Result<ox::Buffer> writeSpritePalette1(NostalgiaPalette *pal) noexcept {
std::size_t sz = 0; std::size_t sz = 0;
oxReturnError(ox::writeMC(buffer.data(), buffer.size(), pal, &sz)); oxReturnError(ox::writeMC(buffer.data(), buffer.size(), pal, &sz));
buffer.resize(sz); buffer.resize(sz);
return std::move(buffer); return buffer;
} }
ox::Result<ox::Buffer> writeSpritePalette2(NostalgiaPalette *pal) noexcept { ox::Result<ox::Buffer> writeSpritePalette2(NostalgiaPalette *pal) noexcept {
@ -564,7 +576,7 @@ ox::Result<NostalgiaPalette> loadPalette3(const Buffer &buff) noexcept {
ox::Result<ox::Buffer> writeSpritePalette1(NostalgiaPalette *pal) noexcept { ox::Result<ox::Buffer> writeSpritePalette1(NostalgiaPalette *pal) noexcept {
ox::Buffer buffer(ox::units::MB); ox::Buffer buffer(ox::units::MB);
oxReturnError(ox::writeOC(buffer.data(), buffer.size(), pal)); oxReturnError(ox::writeOC(buffer.data(), buffer.size(), pal));
return std::move(buffer); return buffer;
} }
ox::Result<ox::Buffer> writeSpritePalette2(NostalgiaPalette *pal) noexcept { ox::Result<ox::Buffer> writeSpritePalette2(NostalgiaPalette *pal) noexcept {