On the Subject of SixTen

Have you ever noticed that “hexadecimal” consists of “hexa”, which is Greek, and “decimal”, which is Latin?

This module features 12 screens with 8-bit hexadecimal values, 3 sliders (1 for red, green and blue respectively), and 4 empty screens. To disarm this module, input the correct RGB values using the sliders and click on the empty screens in the correct order to submit them.

Number shifting

The values on the screens cycle both horizontally and vertically. Observe:

  • the vertical cycle delay (seconds between up/down cycles of the rows);
  • the vertical cycle direction (either up or down);
  • separately for each color channel:
    • the horizontal cycle delay (seconds between left/right cycles of a row);
    • the horizontal cycle direction (either left or right).

Disarming the module

Each row displays a 32-bit value consisting of four 8-bit values. The vertical cycle delay determines which 8-bit value in each row is the most significant. A delay of 1 second implies the smallest value; 2 seconds the second smallest, etc. Obtain the 32-bit value for each color channel and convert them to binary.

For each color channel, cycle the binary digits in the same direction as the corresponding row’s horizontal cycle direction, an amount of bits equal to the corresponding row’s horizontal cycle delay. Then cycle the color channels themselves in the direction of the vertical cycle direction.

Divide the resulting numbers into groups of 8 bits. These represent the RGB values to be input in decimal using the sliders. Press the top screen to submit the color obtained from the first 8 bits, then the second screen for the next etc.

Slider mechanics

  • Holding a knob on the slider moves that knob and changes the value for that color channel.
  • Pressing the screen next to a slider changes the direction the knob moves. A dark knob means moving towards 0.
  • Pressing either of the arrow buttons sets the speed at wich the knobs move, where the single arrow implies a slow speed.