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)
m (Fixed typo)
 
(One intermediate revision by the same user not shown)
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)}}
== Sandbox only components ==
"{{Level|Sandbox}} only" components can be placed and used here.
* These are technically unlocked now (were always available in Sandbox), but they 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}}

Latest revision as of 11:16, 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[edit | edit source]

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

Sandbox only components[edit | edit source]

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

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

Scoring[edit | edit source]

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