Elara S. Novikova
Iskra-226

UGADAY

Угадай число

My own, 2026

The first program I ever wrote for this machine. Sixteen lines. It thinks of a number, you guess, it says МЕНЬШЕ or БОЛЬШЕ, and it counts your tries. Nothing about it is clever. Everything about it mattered, because it was the first time the format ran in the other direction: source to token bytes to a disk the emulator would boot.

sectors
20
source lines
16
The machine has a number between 1 and 99 and answers every guess with larger or smaller. The guess was 50 and the answer is smaller.
The machine has a number between 1 and 99 and answers every guess with larger or smaller. The guess was 50 and the answer is smaller.

Run this disk · The image, 256,256 bytes

The smallest possible proof

A decoder can be wrong for months and nobody notices. Misread a byte and it still produces something, and the something looks like a program. An encoder has no such cover. Emit the wrong bytes and an independently written parser stops on the spot. UGADAY is sixteen lines because sixteen lines was all I needed to make that argument: a comparison, two branches, a counter, and a jump back. It assembled, it loaded from sector 20, it ran, and it answered correctly. From that point the format knowledge ran in both directions, which is the sharpest test available without original hardware.

Why it is in Russian

Everything I know about this dialect came out of a payroll program and a database suite, so the first thing I ever wrote in it says МЕНЬШЕ and БОЛЬШЕ, in uppercase Cyrillic, on a machine that has no other case. That was not decoration. Writing in the language the corpus is written in means the strings take the same KOI encoding path the originals took, and the moment a character came back wrong I would see it on the screen. A guessing game in Russian is also a byte level test of the character table.

What this disk is not

Nothing here was found. UGADAY was written in 2026 as the first test of an assembler that did not exist before this project, and the disk it sits on was built by that assembler. No Soviet games disk has ever been recovered, from this machine or any other of its kind. The Russian in these strings is mine. I keep repeating it because a page like this one is exactly where the qualifier gets skipped, and once it is skipped somebody down the line treats a 2026 invention as a 1988 document.

What I checked

UGADAY 50 -> МЕНЬШЕ | 25 -> БОЛЬШЕ | 37 -> ВЕРНО! ПОПЫТОК 3

What this does not show

The number is fixed at 37 and never drawn at random, because the dialect's random atom is undecoded. Accounting software needs no randomness, so the corpus does not give it up, and the honest thing was to write a constant rather than fake one. Guess 37 and you win on the first try. What is tested is the emulator, not the hardware; only a test on a surviving Iskra-226 could show whether real firmware accepts these bytes.

Where to read more

The source

UGADAY.bas, 16 lines, assembled onto the image with iskra_asm.py

16 lines of BASIC
10 REM UGADAY
20 PRINT "*** УГАДАЙ ЧИСЛО ***"
30 PRINT "Я ЗАГАДАЛ ЧИСЛО ОТ 1 ДО 99"
40 V01 = 37
50 V02 = 0
60 PRINT "ВАШ ОТВЕТ"
70 INPUT V03
80 V02 = V02 + 1
90 IF V03 = V01 GOTO 200
100 IF V03 > V01 GOTO 150
110 PRINT "БОЛЬШЕ"
120 GOTO 60
150 PRINT "МЕНЬШЕ"
160 GOTO 60
200 PRINT "ВЕРНО! ПОПЫТОК";V02
210 END

Back to Iskra-226