=== The text inside -- is deprecated, while the text inside ++ is the replacement ===

$25663924496537

Alternatively to thinking of the output as being disconnected, it can be thought of as outputting neither [F] or [T], but a third state we call "Z state" [Z].

Connecting two inputs on a wire will produce the following outputs:

Input 0 [F][F][F][T][T][T][Z][Z][Z]
Input 1 [F][T][Z][T][F][Z][F][T][Z]
Output  [F][E][F][T][E][T][F][T][Z]

Note that short circuit [E] can not meaningfully be thought of as a fourth output state, as it breaks the circuit. It is included in the table for completeness anyway.


$45432635426071 Moves a value to %a from %b.


$11603603520594
Line 1: ++to %a++
Line 1: --%b to %a.--++%b.++


$13757092116124
Line 1: ---- Additionally, this level has a dedicated input component, which can be the [color=#c54d5e]source[/color] and an output component, which can be the [color=#e49f44]destination[/color].
Line 1: -- -- Additionally, this level has a dedicated input component, which can be the [color=#c54d5e]source[/color] and an output component, which can be the [color=#e49f44]destination[/color].


$26930827349244
Line 1: ++to %a++
Line 1: --%b to %a.--++%b.++


$30005674935190
Line 2: This is also known as an XOR gate. This level is difficult, so don't be discouraged if you don't get the answer right away. -- -- [tip]You can connect one output to more than 1 gates.[/tip]


$31456617450268
Line 1: ++to %a++
Line 1: --%b to %a.--++%b.++


$43068867747292
Line 1: ---- Output [T] when 2 or more of them are [T].


$45061087867940
Line 2: If the result does not fit in 8 bits, turn the output carry [T] (you can think of it as the 9th bit) -- -- Finally, there is an input carry as well. This is useful for chaining together byte adders to add larger numbers. You can think of this carry as adding either 0 [F] or 1 [T].
Line 3-4:
  Finally, there is an input carry as well. This is useful for chaining together byte adders to add larger numbers. You can think of this carry as adding either 0 [F] or 1 [T].
- .


$50864238070873
Line 1: ++to %a++
Line 1: --%b to %a.--++%b.++


$53941960758392
Line 1: ++to %a++
Line 1: --%b to %a.--++%b.++


$57911760722636
Line 1: ++to %a++
Line 1: --%b to %a.--++%b.++


$58396790216558
Line 1: ++to %a++
Line 1: --%b to %a.--++%b.++


$60625429879527
Line 2: Orange pins in the game never affect the output in the same tick. They therefore never cause circular dependencies. -- --   [image="delay_line.png"]


$61875924861326
Line 1: ---- 
Line 3:  ---- 


$63109056149876
Line 3:  ---- store any value between 0 and 63.


$75292456030647
Line 2: The delay line is allowed to depend on its own output. This is because its input does not influence the rest of the circuit until next tick. -- -- [image="delay_line.png"]


$79125097012724
Line 7: |[T] [T] [T]|[T] [F] [F] [T] [F] --                   -- And here we insert [T] instead of [F]


$85471608475185
Line 2-10:
  
-  [color=#ff9800]M[/color]  = Mode
-  [color=#ff6680]O[/color]  = Opcode
- [color=#9966ff]0[/color]/[color=#9966ff]1[/color] = Immediate mode
-  [color=#ffe666]D[/color]  = Destination register
-  [color=#66ff99]A[/color]  = Argument A
-  [color=#66ccff]B[/color]  = Argument B (possibly immediate)
-  [color=#bbbbbb]0[/color]  = Unused / zero
+ [left]
+  [color=#ff9800]M[/color]   = Mode
+  [color=#ff6680]O[/color]   = Opcode
+  [color=#9966ff]0[/color]/[color=#9966ff]1[/color] = Immediate mode
+  [color=#ffe666]D[/color]   = Destination register
+  [color=#66ff99]A[/color]   = Argument A
+  [color=#66ccff]B[/color]   = Argument B (possibly immediate)
+  [color=#bbbbbb]0[/color]   = Unused / zero
+ [/left]
  
Line 12-13:
  [color=#bbbbbb]0[/color][color=#ff9800]MM[/color][color=#9966ff]0[/color][color=#ff6680]OOOO[/color] [color=#ffe666]DDDD[/color][color=#66ff99]AAAA[/color] [color=#bbbbbb]0000[/color][color=#66ccff]BBBB[/color] [color=#bbbbbb]00000000[/color]
+ 
  Instruction encoding if argument B is an immediate value:


$87179643828952
Line 4: [color=#c54d5e]Source[/color]: ---- [T] [T] [T]  UNUSED
Line 4: [color=#c54d5e]Source[/color]: ---- [T] [T] [T]  UNUSED
Line 4: [color=#c54d5e]Source[/color]: ---- [T] [T] [T]  UNUSED
Line 4: [color=#c54d5e]Source[/color]: ---- [T] [T] [T]  UNUSED
Line 4: [color=#c54d5e]Source[/color]: ---- [T] [T] [T]  UNUSED
Line 4: [color=#c54d5e]Source[/color]: ---- [T] [T] [T]  UNUSED
Line 4: [color=#c54d5e]Source[/color]: ---- [T] [T] [T]  UNUSED
Line 14: [color=#e49f44]Destination[/color]: ---- [T] [T] [F]  #OUTPUT
Line 14: [color=#e49f44]Destination[/color]: ---- [T] [T] [F]  #OUTPUT
Line 14: [color=#e49f44]Destination[/color]: ---- [T] [T] [F]  #OUTPUT
Line 14: [color=#e49f44]Destination[/color]: ---- [T] [T] [F]  #OUTPUT
Line 14: [color=#e49f44]Destination[/color]: ---- [T] [T] [F]  #OUTPUT
Line 14: [color=#e49f44]Destination[/color]: ---- [T] [T] [F]  #OUTPUT


$88100823584262
Line 1: --an--++a short circuit++ 
Line 1: --However, some components have grey output pins, these are not outputting at all when the component is not enabled. This is the case for the Bit Switch component.--++++ 
Line 2-3:
  
+ [center][image="short_circuit.png"][/center]
+ 
+ However, some components have grey output pins, these are not outputting at all when the component is not enabled. This is the case for the Bit Switch component.
+ 
  [center][image="switch.png"][/center]
Line 4-5:
  
- When the bottom pin is [F], the output is disabled. More than 1 output can connect to the same wire without causing error, if no more than one of them is enabled.
+ When the bottom pin is [F], the output is disabled. In this case, more than 1 output can connect to the same wire without causing error.
+ 
+ [center][image="bus_wire.png"][/center]
+ 
+ Practically speaking, it only makes sense to connect multiple outputs to the same wire if they are switches. Components need to "take turns" to output for it to be useful.


$89085328104477
Line 10:                     [F][T][F] If [color=#e49f44]REG 3[/color] = 0 ----                     [T][F][F] If [color=#e49f44]REG 3[/color] < 0
Line 13:                     [T][F][T] If [color=#e49f44]REG 3[/color] ≥ 0 ----                     [T][T][T] If [color=#e49f44]REG 3[/color] > 0[/left]


