Level 24: Manual Pixel

Task

Connect 4 BusConstants to the MatrixDisplay and light up pixel at (0,0).

MatrixDisplay — 16×16 matrix display. It has 4 inputs: - DevAddr (port 0): port number (0x1C = set X, 0x1D = set Y, 0x1F = write pixel) - DataIn (port 1): value (for X/Y — coordinate 0–15, for write — 1=light, 0=clear) - WE (port 2): write enable (1 = write) - IO_SEL (port 3): device select (1 = display active)

Solution

Initially X=0, Y=0. To light pixel at (0,0):

1. Set first BusConstant (DevAddr) to 0x1F (31) — write pixel mode. 2. Set second BusConstant (DataIn) to 1 — light up. 3. Set third BusConstant (WE) to 1 — enable write. 4. Fourth BusConstant (IO_SEL) is already 1 — keep it.

5. Connect wires: - BusConstant#1 (Q) → MatrixDisplay (DevAddr, port 0) - BusConstant#2 (Q) → MatrixDisplay (DataIn, port 1) - BusConstant#3 (Q) → MatrixDisplay (WE, port 2) - BusConstant#4 (Q) → MatrixDisplay (IO_SEL, port 3)

Run the checkpoint — the top-left pixel should light up!

Assembler help →