kind = combinational
hint_kind = combinational
size = 24
no_score = true
copy_solution_to_foundry = "Overture/Dec"
background = 6
cycle_past_fail = 4
title = (31337_81732613304305, `Instruction Decoder`)
dialogue = [
  (mentor_centered, (31337_44644153822563, `The circuit you built in the "Registers" level can copy values between registers, while the "Arithmetic Logic Unit" can do different operations on 2 inputs. But you need to be able to do both in the same circuit. To do this, build a "decoder", which will decide which mode our computer is in, based on the 2 bits we haven't used yet.`)),
  (mentor_centered, (31337_62355105651643, `To distinguish between the instructions of 4 different kinds, the two highest bits will be used to determine which MODE we are in as follows:

[left]
                [F][F][Z][Z][Z][Z][Z][Z] Immediate
                [F][T][Z][Z][Z][Z][Z][Z] ALU
                [T][F][Z][Z][Z][Z][Z][Z] Move
                [T][T][Z][Z][Z][Z][Z][Z] Condition
[/left]
Here [Z] means any value.

Determine the MODE we are in from the input, then send [T] to the correct output.`))
]
