What problem does it solve? Working on z88dk's math16 half-float library requires navigating per-CPU assembly cores, classic versus newlib build recipes, and subtle algorithm policies (restoring division vs Newton-Raphson inverse) that are easy to get wrong without documented rules. ## Core Features & Use Cases - Library layout guidance: Maps the math16 source tree (asm/, c/, per-CPU cores for z80, 8085, 8080, gbz80) and explains which files belong to classic versus newlib products. - Coding and build rules: Enforces conventions such as using sqrf16 for squares, invsqrtf16 for inverse square roots, sccz80-only higher functions on 8080/8085/gbz80, and correct Makefile clean/rebuild steps. - Use Case: When adding a new half-float function or fixing a math16 bug, follow the agent rules to place code in the right CPU directory, rebuild the correct .lib targets, and run the full test suite across all supported CPUs. ## Quick Start Ask the assistant to review or modify a math16 library function in libsrc/math/float/math16 and verify it with the math16 test suite targets.