Skip to content

AmiXcom 0.5.0 - save ~7x, load ~4x, globe 3D ~10x

Choose a tag to compare

@angree angree released this 17 Aug 23:34
· 7 commits to main since this release

AmiXcom 0.5.0 — big speed release

Everything measured on the reference machine: 68020, no JIT, CPU throttled -70% (real-hardware-class).

Saving & loading

  • Battle save: 45–60 s → ~8 s. Fixed yaml-cpp scalar conversion (a std::stringstream per value), quadratic node-pool merging, replaced the YAML emitter with a direct writer, and the battle state now serializes straight to text without building a node tree. Saves remain plain YAML.
  • Battle load: ~90 s → ~20–25 s. The Geoscape built under the battle no longer computes the whole globe up front; shadow tables come precomputed from data/common/earthfix.dat.
  • Fixed load crashes: 64-bit RNG seed ("bad conversion") and the tile-serialization key format (returncode 127).

Globe 3D (~10x)

  • Geometry recache in integer Q1.14 fixed point with vertex trig precomputed once — rotation and zoom no longer run hundreds of soft-float sin/cos.
  • First zoom to any level used to stall ~5 s computing shadow normals — now read from earthfix.dat (generated at build time).
  • Day/night shadow at half resolution (2×2 blocks, per-pixel palette), radar circles in pure vector math (12 trig per circle instead of ~250), country/circle lines walk in 16.16 fixed point.
  • Dogfight zoom jumps in one step (reaching an interception took 30–60 s of animated zoom).
  • Flat sun-shaded water polygons instead of textures (option amigaFlatGlobe: 1, set 0 in options.cfg for the old textured look).

Other

  • Dirty rectangles in the SDL shim: unchanged frames skip chunky-to-planar entirely.
  • The game starts detached (Run <NIL:), the CLI closes and Workbench stays visible — its gauge shows the port currently needs ~50 MB RAM.
  • 0.3.5–0.3.7 were internal steps; this release includes everything since 0.3.0.

Known issues

  • Load still ~20 s (yaml parse dominates) — next target.
  • Save-list dates show "????" (cosmetic).
  • No music yet (basic sound effects work); RTG build untested; 32 MB machines do not load the game.

No X-COM game data included — copy your own UFO/TFTD files into data/UFO / data/TFTD.