# Gate-1 slice manifest: every src/ file the host smoke build compiles,
# relative to the repo root. Grow the port by growing this list (and the
# assertions in tests/smoke.cpp with it).
#
# Deliberately excluded from gate 1, with the reason recorded so the next
# person doesn't re-litigate:
#   dFdBrightness_c::AdvanceFade / dFdColor_c::AdvanceFade
#       write GX/GXS palette + CP15 cache MMIO -- wait for the video seam
#   dFdWipe_c::*    LoadAndSetFile calls the filesystem; ctor pulls the same
#   StartEntranceFaderWipe / StartExitFaderWipe    global engine state
#   *D0Ev.c / *D1Ev.c destructor TUs
#       they define Itanium-mangled symbols as C functions, which satisfies
#       the NDS link but not MSVC's mangling; the host gets real C++ dtors
#       from port/hal/shims.cpp instead
#   src/_ZN4cstd4fdivEii.c
#       chains to the DS hardware divider (fdiv_async/fdiv_result MMIO);
#       port/hal/cstd_div.c is the host divider

# fixed-point math and vectors (self-contained C)
src/DotVec3.c
src/CrossVec3.c
src/MulVec3Mat4x3.c
src/Matrix3x3_FromQuaternion.c
src/_Z14ApproachLinearRiii.cpp

# Timer (plain struct + methods, no externs)
src/Timer.cpp

# dFader_c hierarchy (real C++ with vtables -- host vtables are exactly what a
# port wants, unlike the hybrid, which must reject them). One promoted TU; its
# _MSC_VER guards host-compile exactly the non-hardware subset listed here.
src/engine/fader/dFader_c.cpp
