# extract-gmd

GameMaker 5.3a `.gmd` extractor — TS port of LateralGM `GmFileReader` semantics.

See `../../decomp/TOOLS.md` for the era-appropriate decompiler stack and the rank-1..4 procedure.
See `../../decomp/wiki/03-gmd-format.md` for the binary format spec.
See `../../decomp/wiki/15-extraction-pipeline.md` for the broader pipeline.

## Usage

```bash
pnpm tsx tools/extract-gmd/cli.ts extract <input.gmd> <out-dir>
pnpm tsx tools/extract-gmd/cli.ts verify <source-dir>
```

## Determinism

All deps pinned to exact versions (no `^` / `~`). Same input must produce byte-identical output.
See `MANIFEST.sha256` in each `extracted/<source>/` for the recorded sharp + libvips versions.
Linux x64 is the canonical platform for committed manifest hashes.
