SCOPE Solution
MASKED RAMP
SCOPE ACT 4

Prerequisites
Unlocks
sc_a4_04_masked_ramp locked
Par power520
Par lines11
Par chips1
Objective
A rising counter is clipped to a few bright bands.
Board Data
- Window: 64
- Pins: p0 OUT
- Channels: p0 ANALOG label=CH1_p0_DAC
- Peripherals: DAC data=p0 label=DAC_p0
Firmware Solution
; MASKED RAMP reference. A counter climbs by the per-case step (input[1]) and is
; clipped by the per-case AND mask (input[0]) into bright bands before the DAC. The
; seeds are read from the input, never immediates, so one firmware draws every case.
mov r2, 0
ldb r3, [r2] ; r3 = AND clip mask (input[0])
mov r2, 1
ldb r4, [r2] ; r4 = ramp step (input[1])
loop:
mov r1, r0
and r1, r3 ; clip to the band mask
out p0, r1
slp 1
add r0, r4 ; climb by the per-case step
jmp loop
Board Definition
# MASKED RAMP. ACT 4. SCOPE waveform board.
# TITLE MASKED RAMP
# OBJECTIVE A rising counter is clipped to a few bright bands.
# The battery moves both the ramp step and the AND clip mask, seeded into the input,
# so a captured transcript of one band pattern diverges on the next: only a firmware
# that reads the seed and applies the mask locks every case.
ID sc_a4_04_masked_ramp
WINDOW 64
DIR p0 OUT
PERIPH DAC data=p0 label=DAC_p0
CHAN p0 ANALOG label=CH1_p0_DAC
CASE phase=240 k=17
INPUT addr=0 label=MASK
INPUT addr=1 label=STEP
PAR power=520 lines=11 chips=1