Level/The Lab: Difference between revisions

From Turing Complete
m (Gelthor moved page Turing Complete/The Lab to Level/The Lab without leaving a redirect)
(Added infobox and a summary of unlocks)
Line 1: Line 1:
{{Header Nav|game=Turing Complete}}
{{Header Nav|game=Turing Complete}}
{{Infobox level
| section            = Functions
| type                = Other
| unlocks-component1  = Bit Indexer
| unlocks-component2  = Console
| unlocks-component3  = Halt
| unlocks-component4  = Sound
| unlock-notes        = More components, see below
| scored              = No
| api-enum-id        = test_lab
| api-enum-number    = 59
}}


The Lab isn't a normal level, but rather a debugging tool. The Lab allows the player to save programs for automatic verification of functionality.
The Lab isn't a normal level, but rather a debugging tool. The Lab allows the player to save programs for automatic verification of functionality.
Line 6: Line 19:


The <code>set_input</code> keyword allows providing custom input values, allowing testing of input related instructions.
The <code>set_input</code> keyword allows providing custom input values, allowing testing of input related instructions.
== Unlocks ==
Opening The Lab for the first time unlocks a large number of components:
* 16, 32, and 64 bit versions of most of the math and logic components.
** Except shift and rotate which where unlocked in {{Level|Shift}}
* Various display options:
** {{Component|6x8 Dot Matrix Display}}
** {{Component|7 Segment Display}}
** {{Component|Console}}
** {{Component|Sprite Display}}
* More memory options
** {{Component|Dual Load RAM}}
** {{Component|Fast RAM}}
** {{Component|Latency RAM}}
** {{Component|ROM}}
* Utilities
** {{Component|Bit Indexer}}
** {{Component|Byte Indexer}}
** {{Component|Halt}}
** {{Component|Sound}}
* Probes
** {{Component|Memory Probe}}
** {{Component|Memory Probe (bit)}}
** {{Component|Wire Probe}}
** {{Component|Wire Probe (bit)}}
== Sanbox only components ==
"{{Level|Sandbox}} only" components can be placed and used here.
* These are technically unlocked (were always available in Sandbox), but they now show up (disabled) in the normal levels' build menu.
== Scoring ==
While this level is not scored, it does count as a level for the purposes of calculating the game completion percentage.


{{Footer Nav|game=Turing Complete|prevpage=Stack|nextpage=PUSH and POP}}
{{Footer Nav|game=Turing Complete|prevpage=Stack|nextpage=PUSH and POP}}

Revision as of 11:02, 23 August 2024

Section Functions
Type Other
Unlocks Bit Indexer
Console
Halt
Sound
More components, see below
Scored No
API test_lab (59)

The Lab isn't a normal level, but rather a debugging tool. The Lab allows the player to save programs for automatic verification of functionality.

The expect keyword allows verifying the internal value of components. It applies starting after the execution of the next instruction. It takes two arguments, the first being the index of the linked component and the second the correct value. The value is checked after every instruction, so if the value changes again, a new expect line must be provided.

The set_input keyword allows providing custom input values, allowing testing of input related instructions.

Unlocks

Opening The Lab for the first time unlocks a large number of components:

Sanbox only components

"Sandbox only" components can be placed and used here.

  • These are technically unlocked (were always available in Sandbox), but they now show up (disabled) in the normal levels' build menu.

Scoring

While this level is not scored, it does count as a level for the purposes of calculating the game completion percentage.