Trust is a number you can check

The code
keeps score.

Rebuilding the original games is the long-term goal. A working game is a start; a byte-identical function is proof. Here is exactly what can be checked today.

The games are playable, written from scratch. No original executable has been supplied yet, so byte matching and side-by-side comparison have not run.

Minesweeper

Awaiting original
—Byte-match percentage not yet established
0 / ?Functions verified / original total
0 / ?Bytes matched / original total

Original function addresses, sizes and the function map become available once the original binary is inspected. Unverified functions never count as matches.

Current C implementation · 18 functions

Inspect the current evidence

Byte comparison: not run
Differential comparison: not run
Original SHA-256: not supplied
Build commit: c01859c43997d0f53b1988ad8f7c58550a89928b

Our C source Scoreboard JSON

FreeCell

Awaiting original
—Byte-match percentage not yet established
0 / ?Functions verified / original total
0 / ?Bytes matched / original total

Original function addresses, sizes and the function map become available once the original binary is inspected. Unverified functions never count as matches.

Current C implementation · 25 functions

Inspect the current evidence

Byte comparison: not run
Differential comparison: not run
Original SHA-256: not supplied
Build commit: c01859c43997d0f53b1988ad8f7c58550a89928b

Our C source Scoreboard JSON

Snapshot: 2026-10-17 · Percentages stay blank until there is an original to compare.

How we will know

Three questions.
Three kinds of evidence.

01 · Do the rules hold?
Seeded invariants, known deals, replay tests and browser tests exercise our implementation.

02 · Does it behave like the original?
Feed the same inputs to both programs and compare the state after every move. Waiting on original binaries.

03 · Is the machine code identical?
Compile with the original toolchain and compare every function’s bytes. Waiting on the originals and the matching compiler.