Z80 Sudoku Challenge

Main project hub for the Z80 Sudoku solver implementation in Z80 assembly. ← Back to CONTENTS

Status & Overview

• Status — Current progress and next steps

• Design Overview — High-level architecture and approach

• Design Doc — Primary design document for the Z80 Sudoku solver

Algorithm

• Algorithm — Algorithm design and approach

• Candidate Mask Design — Bitfield representation of possible values per cell

• Row/Column/Box Scan Design — Constraint propagation scan algorithm

• Solver Control Structure — Main loop and control flow design

Memory & Registers

• Memory Map — Memory map overview

• Detailed Memory Layout — Full memory map with addresses and sizes

• Register Conventions — Detailed register usage conventions

• Register Conventions (code) — Z80 register allocation plan (code-level)

Validation

• Row Validation

• Column Validation

• Box Validation

Code

• Solver Code — Main solver code

• Candidate Mask Builder — Z80 assembly implementation of the candidate mask routine

• Deterministic Fill Loop

• Single Candidate from Mask

• Backtracking — Backtracking algorithm notes

Reference

• Z80 Instruction Set — Complete 491-instruction reference with opcodes, T-states, and flags. Instructions marked [UND] are undocumented (present in real Z80 silicon but absent from the Zilog manual). Instructions marked [Z80N] are ZX Spectrum Next hardware extensions — not part of the standard Z80 at all. Only use [UND] or [Z80N] instructions if explicitly asked to.

version 4  ·  updated 2026-02-28