<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://stationeers-wiki.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Droxlar</id>
	<title>Stationeers Community Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://stationeers-wiki.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Droxlar"/>
	<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/Special:Contributions/Droxlar"/>
	<updated>2026-04-05T06:04:17Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=IC10&amp;diff=8609</id>
		<title>IC10</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=IC10&amp;diff=8609"/>
		<updated>2019-07-11T23:30:00Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: Replaced // comment notations with #.  // no longer appears to function for commenting.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=MIPS scripting language for IC10 housings / chips=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Text after a # will be ignored to the end of the line. The amount of white&lt;br /&gt;
# space between arguments isn&#039;t important, but new lines start a new command.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==Functions==&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;alias&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;alias&lt;br /&gt;
:alias str r? d? # labels register or device reference with name.  When alias is applied to a device, it will effect what shows on the screws in the IC base.  (housing)&lt;br /&gt;
&amp;lt;code&amp;gt;alias vTemperature r0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;alias dAutoHydro1 d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;move&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;move    &lt;br /&gt;
:d s     # stores the value of s in d&lt;br /&gt;
&amp;lt;code&amp;gt;move r0 42 # Store 42 in register 0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;add&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;add     &lt;br /&gt;
:d s t   # calculates s + t and stores the result in d&lt;br /&gt;
&amp;lt;code&amp;gt;add r0 r1 1 # add 1 to r1 and store the result as r0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;add r0 r0 1 # increment r0 by one&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;sub&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;sub     &lt;br /&gt;
:d s t   # calculates s - t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;mul&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;mul     &lt;br /&gt;
:d s t   # calculates s * t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;div     &lt;br /&gt;
:d s t   # calculates s / t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;mod&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;mod     &lt;br /&gt;
:d s t   &lt;br /&gt;
::# calculates s mod t and stores the result in d. Note this&lt;br /&gt;
::# doesn&#039;t behave like the % operator - the result will be &lt;br /&gt;
::# positive even if the either of the operands are negative&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;slt&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;slt     &lt;br /&gt;
:d s t   # stores 1 in d if s &amp;lt; t, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;sqrt&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;sqrt    &lt;br /&gt;
:d s     # calculates sqrt(s) and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;round&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;round   &lt;br /&gt;
:d s     # finds the rounded value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;trunc&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;trunc   &lt;br /&gt;
:d s     # finds the truncated value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;ceil&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ceil   &lt;br /&gt;
: d s     # calculates the ceiling of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;floor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;floor  &lt;br /&gt;
: d s     # calculates the floor of s and stores the result in d&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;max&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;max    &lt;br /&gt;
: d s t   # calculates the maximum of s and t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;min&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;min    &lt;br /&gt;
: d s t   # calculates the minimum of s and t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;abs&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;abs    &lt;br /&gt;
: d s     # calculates the absolute value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;log&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;log    &lt;br /&gt;
: d s     # calculates the natural logarithm of s and stores the result&lt;br /&gt;
::# in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;exp&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;exp    &lt;br /&gt;
: d s     # calculates the exponential of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;rand&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;rand   &lt;br /&gt;
: d       # selects a random number uniformly at random between 0 and 1&lt;br /&gt;
::# inclusive and stores the result in d&lt;br /&gt;
&lt;br /&gt;
::# boolean arithmetic uses the C convention that 0 is false and any non-zero&lt;br /&gt;
::# value is true.&lt;br /&gt;
&amp;lt;div id=&amp;quot;and&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;and    &lt;br /&gt;
: d s t   # stores 1 in d if both s and t have non-zero values,&lt;br /&gt;
::# 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;or&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;or     &lt;br /&gt;
: d s t   # stores 1 in d if either s or t have non-zero values,&lt;br /&gt;
::# 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;xor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;xor    &lt;br /&gt;
: d s t   # stores 1 in d if exactly one of s and t are non-zero,&lt;br /&gt;
::# 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;nor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;nor &lt;br /&gt;
:    d s t   # stores 1 in d if both s and t equal zero, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
# Lines are numbered starting at zero&lt;br /&gt;
&amp;lt;div id=&amp;quot;j&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;j&lt;br /&gt;
:             a # jumps to line a.&lt;br /&gt;
&amp;lt;div id=&amp;quot;bltz&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bltz&lt;br /&gt;
:      s   a # jumps to line a if s &amp;lt;  0&lt;br /&gt;
&amp;lt;div id=&amp;quot;blez&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;blez &lt;br /&gt;
:     s   a # jumps to line a if s &amp;lt;= 0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;bgez&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bgez &lt;br /&gt;
:     s   a # jumps to line a if s &amp;gt;= 0&lt;br /&gt;
&amp;lt;div id=&amp;quot;bgtz&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bgtz&lt;br /&gt;
:      s   a # jumps to line a if s &amp;gt;  0&lt;br /&gt;
&amp;lt;div id=&amp;quot;beq&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;beq &lt;br /&gt;
:      s t a # jumps to line a if s == t&lt;br /&gt;
&amp;lt;div id=&amp;quot;bne&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bne &lt;br /&gt;
:      s t a # jumps to line a if s != t&lt;br /&gt;
&amp;lt;div id=&amp;quot;bdseal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bdseal&lt;br /&gt;
:    d? a(r?|num) # Jump execution to line a and store current line number if device d? is set.&lt;br /&gt;
&amp;lt;code&amp;gt;bdseal d0 32 #Store line number and jump to line 32 if d0 is assigned.&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;bdseal dThisVictim HarvestCrop #Store line in ra and jump to sub HarvestCrop if device dThisVictim is assigned.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;yield&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;yield           &lt;br /&gt;
: 	# ceases code execution for this power tick&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;#&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
; #&lt;br /&gt;
:     # The following text will be ignored during compiling; use this to create comments.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Device Variables==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Activate&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Activate&lt;br /&gt;
:1 if device is activated (usually means running), otherwise 0&lt;br /&gt;
:&amp;lt;code&amp;gt;l r0 d0 Activate # sets r0 to 1 if on or 0 of off&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;AirRelease&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;AirRelease&lt;br /&gt;
&amp;lt;div id=&amp;quot;Charge&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Charge&lt;br /&gt;
:    The current charge the device has.&lt;br /&gt;
&amp;lt;div id=&amp;quot;CLearMemory&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;CLearMemory&lt;br /&gt;
:    When set to 1, clears the counter memory (e.g. ExportCount).  Will set itself back to 0 when triggered.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Color&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Color&lt;br /&gt;
&amp;lt;div id=&amp;quot;CompletionRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;CompletionRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;ElevatorLevel&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ElevatorLevel&lt;br /&gt;
&amp;lt;div id=&amp;quot;ElevatorSpeed&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ElevatorSpeed&lt;br /&gt;
&amp;lt;div id=&amp;quot;Error&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Error&lt;br /&gt;
:	1 if device is in error state, otherwise 0&lt;br /&gt;
&amp;lt;div id=&amp;quot;ExportCount&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ExportCount&lt;br /&gt;
:    How many items exporfted since last ClearMemory.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Filtration&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Filtration&lt;br /&gt;
:	The current state of the filtration system.  For example filtration = 1 for a Hardsuit when filtration is On.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Harvest&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Harvest&lt;br /&gt;
:	Performs the harvesting action for any plant based machinery.&lt;br /&gt;
:  &amp;lt;code&amp;gt;s d0 Harvest 1 # Performs 1 harvest action on device d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;Horizontal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Horizontal&lt;br /&gt;
&amp;lt;div id=&amp;quot;HorizontalRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;HorizontalRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;Idle&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Idle&lt;br /&gt;
&amp;lt;div id=&amp;quot;ImportCount&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ImportCount&lt;br /&gt;
&amp;lt;div id=&amp;quot;Lock&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Lock&lt;br /&gt;
&amp;lt;div id=&amp;quot;Maximum&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Maximum&lt;br /&gt;
&amp;lt;div id=&amp;quot;Mode&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Mode&lt;br /&gt;
&amp;lt;div id=&amp;quot;On&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;On&lt;br /&gt;
&amp;lt;div id=&amp;quot;Open&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Open&lt;br /&gt;
&amp;lt;div id=&amp;quot;Output&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Output&lt;br /&gt;
&amp;lt;div id=&amp;quot;Plant&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Plant&lt;br /&gt;
:    Performs the planting operation for any plant based machinery.&lt;br /&gt;
:  &amp;lt;code&amp;gt;s d0 Plant 1 # Plants one crop in device d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionX&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionX&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionY&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionY&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionZ&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionZ&lt;br /&gt;
&amp;lt;div id=&amp;quot;Power&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Power&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerActual&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerActual&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerPotential&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerPotential&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerRequired&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerRequired&lt;br /&gt;
&amp;lt;div id=&amp;quot;Pressure&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Pressure&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureExternal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureExternal&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureInteral&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureInteral&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureSetting&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureSetting&lt;br /&gt;
&amp;lt;div id=&amp;quot;Quantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Quantity&lt;br /&gt;
:	Total quantity in the device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Ratio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Ratio&lt;br /&gt;
:	Context specific value depending on device, 0 to 1 based ratio.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioCarbonDioxide&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioCarbonDioxide&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioNitrogen&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioNitrogen&lt;br /&gt;
:	The ratio of nitrogen in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioOxygen&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioOxygen&lt;br /&gt;
:	The ratio of oxygen in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioPollutant&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioPollutant&lt;br /&gt;
:	The ratio of pollutant in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioVolatiles&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioVolatiles&lt;br /&gt;
:	The ratio of volatiles in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioWater&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioWater&lt;br /&gt;
:	The ratio of water in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Reagents&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Reagents&lt;br /&gt;
&amp;lt;div id=&amp;quot;RecipeHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RecipeHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;RequestHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RequestHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;RequiredPower&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RequiredPower&lt;br /&gt;
&amp;lt;div id=&amp;quot;Setting&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Setting&lt;br /&gt;
&amp;lt;div id=&amp;quot;SolarAngle&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;SolarAngle&lt;br /&gt;
:    Solar angle of the device.&lt;br /&gt;
:  &amp;lt;code&amp;gt;l r0 d0 SolarAngle # Sets r0 to the solar angle of d0.&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;Temperature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Temperature&lt;br /&gt;
&amp;lt;div id=&amp;quot;TemperatureSettings&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;TemperatureSettings&lt;br /&gt;
&amp;lt;div id=&amp;quot;TotalMoles&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;TotalMoles&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityMagnitude&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityMagnitude&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeX&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeX&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeY&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeY&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeZ&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeZ&lt;br /&gt;
&amp;lt;div id=&amp;quot;Vertical&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Vertical&lt;br /&gt;
:	Vertical setting of the device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;VerticalRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VerticalRatio&lt;br /&gt;
:	Ratio of vertical setting for device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Volume&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Volume&lt;br /&gt;
:	Returns the device atmosphere volume&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Slot Variables==&lt;br /&gt;
In general (always?) slots are assigned as follows.&lt;br /&gt;
:Slot 0: Import&lt;br /&gt;
:Slot 1: Export&lt;br /&gt;
:Slot 2: Inside Machine&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Occupied&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Occupied&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 2 Occupied #Stores 1 in r0 if d0 has more seeds&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ls vOccupied dThisVictim 2 Occupied #stores 1 in vOccupied if dThisVictim has more seeds&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;OccupantHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;OccupantHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;Quantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Quantity&lt;br /&gt;
&amp;lt;div id=&amp;quot;Damage&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Damage&lt;br /&gt;
&amp;lt;div id=&amp;quot;Efficiency&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Efficiency&lt;br /&gt;
&amp;lt;div id=&amp;quot;Health&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Health&lt;br /&gt;
&amp;lt;div id=&amp;quot;Growth&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Growth&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 0 Growth # Store the numerical growth stage of d0 in r0&amp;lt;/code&amp;gt; &lt;br /&gt;
&amp;lt;div id=&amp;quot;Pressure&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Pressure&lt;br /&gt;
&amp;lt;div id=&amp;quot;Temperature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Temperature&lt;br /&gt;
&amp;lt;div id=&amp;quot;Charge&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Charge&lt;br /&gt;
&amp;lt;div id=&amp;quot;ChargeRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ChargeRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;Class&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Class&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureWaste&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureWaste&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureAir&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureAir&lt;br /&gt;
&amp;lt;div id=&amp;quot;MaxQuantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;MaxQuantity&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Mature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Mature&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 0 Mature # Store 1 in r0 if d0 has a mature crop&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ls vMature dThisVictim 0 Mature # Store 1 in vMature if dThisVictim has a mature crop&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Examples==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====This example script automates autohydro units and powers the lights off during the day when they&#039;re not needed.  (Hit Expand)====&lt;br /&gt;
Uses aliases, sub-routines and comments to minimize lines of code and adaptability.&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot; data-expandtext=&amp;quot;{{int:Expand Sample AutoHydro Script}}&amp;quot; data-collapsetext=&amp;quot;{{int:Collapse Sample AutoHydro Script}}&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
alias vMature r0​&lt;br /&gt;
alias vOccupied r1​&lt;br /&gt;
alias isDayLight r2​&lt;br /&gt;
alias isOccupied r3​&lt;br /&gt;
alias dSensor d5​&lt;br /&gt;
​&lt;br /&gt;
​&lt;br /&gt;
#start of Program Loop​&lt;br /&gt;
start:​&lt;br /&gt;
l isDayLight dSensor Activate​  #Check if it&#039;s daytime or not.&lt;br /&gt;
​&lt;br /&gt;
# For each device, harvest, plant, powerdown, then power on depending on conditions.&lt;br /&gt;
alias dThisVictim d0​  #Begin processing device 0&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
alias dThisVictim d1​  #Begin processing device 1&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
alias dThisVictim d2​  #Begin processing device 2&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
alias dThisVictim d3​  #Begin processing device 3&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
alias dThisVictim d4​  #Begin processing device 4&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
#Can&#039;t do a D5 because that&#039;s our sensor.​&lt;br /&gt;
​&lt;br /&gt;
j start​ #Return to the beginning of the program loop.  (Yields here may save processing power)&lt;br /&gt;
​&lt;br /&gt;
​​&lt;br /&gt;
HarvestCrop:​&lt;br /&gt;
ls vMature dThisVictim 0 Mature​&lt;br /&gt;
blez vMature ra​  #If the crop is not mature, return&lt;br /&gt;
s dThisVictim Harvest 1​ #If the crop is mature, harvest it (one).&lt;br /&gt;
j ra​ #return&lt;br /&gt;
​&lt;br /&gt;
&lt;br /&gt;
PlantCrop:​&lt;br /&gt;
ls vOccupied dThisVictim 2 Occupied #seeds to plant​&lt;br /&gt;
blez vOccupied ra​ #If the machine has no seeds to plant, return.&lt;br /&gt;
ls vOccupied dThisVictim 0 Occupied #something growin​g&lt;br /&gt;
bgtz vOccupied ra​  # If the crop plot is occupied, return.&lt;br /&gt;
s dThisVictim Plant 1​  # if we made it this far, plant the crop&lt;br /&gt;
j ra​ #return&lt;br /&gt;
​&lt;br /&gt;
​&lt;br /&gt;
​&lt;br /&gt;
PowerDown:​&lt;br /&gt;
s dThisVictim On 0​ #Power the machine down.&lt;br /&gt;
​&lt;br /&gt;
j ra #Jump to line we came from​&lt;br /&gt;
​&lt;br /&gt;
​&lt;br /&gt;
TurnitOn:​&lt;br /&gt;
s dThisVictim On 1​ #Power the machine up&lt;br /&gt;
j ra&lt;br /&gt;
&lt;br /&gt;
##########&lt;br /&gt;
#### End Script&lt;br /&gt;
##########&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
This is a sample timer command set, alternating between 1 for 1 tick (0.5s), then off for 2 ticks (1s).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
move r0 0		# Line 0: move the value 0 to register0&lt;br /&gt;
sub r1 r0 3		# Line 1: subtract 3 from the value in r0 and write it to r1&lt;br /&gt;
bltz r1 4		# Line 2: jump to line 4 if r1 &amp;lt; 0 (skip the next line)&lt;br /&gt;
move r0 0		# Line 3: move the value 0 to register0 &lt;br /&gt;
slt o r0 1		# Line 4: if r0 &amp;lt; 1 write 1 to the output, otherwise 0.&lt;br /&gt;
add r0 r0 1		# Line 5: increment r0 by 1&lt;br /&gt;
yield			# Line 6: wait until next power tick (0.5s)&lt;br /&gt;
j 1			# Line 7: jump back to line 1	&lt;br /&gt;
&lt;br /&gt;
##########&lt;br /&gt;
#### End Script&lt;br /&gt;
##########&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
so you will do l r0 d0 SolarAngle&lt;br /&gt;
Sorry had last args swapped&lt;br /&gt;
That would read in the value&lt;br /&gt;
while,&lt;br /&gt;
s d1 Vertical r0&lt;br /&gt;
Would write the contents of r0 into the devices 1&#039;s Vertical property&lt;br /&gt;
additionally you can make some aliases&lt;br /&gt;
alias SolarSensor d0&lt;br /&gt;
l r0 SolarSensor SolarAngle&lt;br /&gt;
&lt;br /&gt;
##########&lt;br /&gt;
#### End Script&lt;br /&gt;
##########&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
-----&lt;br /&gt;
Another example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Now the IC is inserted into the housing. The screws D0-D5 can be adjusted directly to the equipment (sensor, console, solar panel, etc.). The ports &#039;o&#039; and &#039;i0-i2&#039; have been removed. Instead, commands that directly read and write hardware parameters are added.&lt;br /&gt;
l &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
 reads the value of the parameter&lt;br /&gt;
s &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt; &amp;lt;register_or_value&amp;gt;&lt;br /&gt;
 writes the value of the parameter&lt;br /&gt;
ls &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;slot_number&amp;gt; &amp;lt;parameter&amp;gt; &lt;br /&gt;
 reads the parameter value from the slot&lt;br /&gt;
For example, &lt;br /&gt;
l r0 d0 Horizontal&lt;br /&gt;
 &lt;br /&gt;
s d5 Activate 1&lt;br /&gt;
 &lt;br /&gt;
ls r3 db 0 OccupantHash&lt;br /&gt;
&lt;br /&gt;
##########&lt;br /&gt;
#### End Script&lt;br /&gt;
##########&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
-----&lt;br /&gt;
* [https://stationeering.com/tools/ic] Stationeering.com offers a programmable circuits simulator so you can develop your code without repeatedly dying in game!&lt;br /&gt;
* [https://hastebin.com/uwuhidozun.md]&lt;br /&gt;
* [http://www.easy68k.com/]&lt;br /&gt;
&lt;br /&gt;
==Index==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|+Functions &lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#abs|abs]]&lt;br /&gt;
*[[#add|add]]&lt;br /&gt;
*[[#alias|alias]]&lt;br /&gt;
*[[#and|and]]&lt;br /&gt;
*[[#beq|beq]]&lt;br /&gt;
*[[#bgez|bgez]]&lt;br /&gt;
*[[#bgtz|bgtz]]&lt;br /&gt;
*[[#blez|blez]]&lt;br /&gt;
*[[#bltz|bltz]]&lt;br /&gt;
*[[#bne|bne]]&lt;br /&gt;
*[[#breq|breq]]&lt;br /&gt;
*[[#brgez|brgez]]&lt;br /&gt;
*[[#brgtz|brgtz]]&lt;br /&gt;
*[[#brlez|brlez]]&lt;br /&gt;
*[[#brltz|brltz]]&lt;br /&gt;
*[[#brne|brne]]&lt;br /&gt;
*[[#ceil|cell]]&lt;br /&gt;
*[[#div|div]]&lt;br /&gt;
*[[#exp|exp]]&lt;br /&gt;
*[[#floor|floor]]&lt;br /&gt;
*[[#j|j]]&lt;br /&gt;
*[[#jr|jr]]&lt;br /&gt;
*[[#l|l]]&lt;br /&gt;
*[[#log|log]]&lt;br /&gt;
*[[#ls|ls]]&lt;br /&gt;
*[[#max|max]]&lt;br /&gt;
*[[#min|min]]&lt;br /&gt;
*[[#mod|mod]]&lt;br /&gt;
*[[#move|move]]&lt;br /&gt;
*[[#mul|mul]]&lt;br /&gt;
*[[#nor|nor]]&lt;br /&gt;
*[[#or|or]]&lt;br /&gt;
*[[#rand|rand]]&lt;br /&gt;
*[[#round|round]]&lt;br /&gt;
*[[#s|s]]&lt;br /&gt;
*[[#slt|slt]]&lt;br /&gt;
*[[#sqrt|sqrt]]&lt;br /&gt;
*[[#sub|sub]]&lt;br /&gt;
*[[#trunc|trunc]]&lt;br /&gt;
*[[#xor|xor]]xor&lt;br /&gt;
*[[#yield|yield]]&lt;br /&gt;
*[[##|#]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|+Device Variables &lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#Activate|Activate]]&lt;br /&gt;
*[[#AirRelease|AirRelease]]&lt;br /&gt;
*[[#Charge|Charge]]&lt;br /&gt;
*[[#CLearMemory|CLearMemory]]&lt;br /&gt;
*[[#Color|Color]]&lt;br /&gt;
*[[#CompletionRatio|CompletionRatio]]&lt;br /&gt;
*[[#ElevatorLevel|ElevatorLevel]]&lt;br /&gt;
*[[#ElevatorSpeed|ElevatorSpeed]]&lt;br /&gt;
*[[#Error|Error]]&lt;br /&gt;
*[[#ExportCount|ExportCount]]&lt;br /&gt;
*[[#Filtration|Filtration]]&lt;br /&gt;
*[[#Harvest|Harvest]]&lt;br /&gt;
*[[#Horizontal|Horizontal]]&lt;br /&gt;
*[[#HorizontalRatio|HorizontalRatio]]&lt;br /&gt;
*[[#Idle|Idle]]&lt;br /&gt;
*[[#ImportCount|ImportCount]]&lt;br /&gt;
*[[#Lock|Lock]]&lt;br /&gt;
*[[#Maximum|Maximum]]&lt;br /&gt;
*[[#Mode|Mode]]&lt;br /&gt;
*[[#On|On]]&lt;br /&gt;
*[[#Open|Open]]&lt;br /&gt;
*[[#Output|Output]]&lt;br /&gt;
*[[#Plant|Plant]]&lt;br /&gt;
*[[#PositionX|PositionX]]&lt;br /&gt;
*[[#PositionY|PositionY]]&lt;br /&gt;
*[[#PositionZ|PositionZ]]&lt;br /&gt;
*[[#Power|Power]]&lt;br /&gt;
*[[#PowerActual|PowerActual]]&lt;br /&gt;
*[[#PowerPotential|PowerPotential]]&lt;br /&gt;
*[[#PowerRequired|PowerRequired]]&lt;br /&gt;
*[[#Pressure|Pressure]]&lt;br /&gt;
*[[#PressureExternal|PressureExternal]]&lt;br /&gt;
*[[#PressureInteral|PressureInteral]]&lt;br /&gt;
*[[#PressureSetting|PressureSetting]]&lt;br /&gt;
*[[#Quantity|Quantity]]&lt;br /&gt;
*[[#Ratio|Ratio]]&lt;br /&gt;
*[[#RatioCarbonDioxide|RatioCarbonDioxide]]&lt;br /&gt;
*[[#RatioNitrogen|RatioNitrogen]]&lt;br /&gt;
*[[#RatioOxygen|RatioOxygen]]&lt;br /&gt;
*[[#RatioPollutant|RatioPollutant]]&lt;br /&gt;
*[[#RatioVolatiles|RatioVolatiles]]&lt;br /&gt;
*[[#RatioWater|RatioWater]]&lt;br /&gt;
*[[#Reagents|Reagents]]&lt;br /&gt;
*[[#RecipeHash|RecipeHash]]&lt;br /&gt;
*[[#RequestHash|RequestHash]]&lt;br /&gt;
*[[#RequiredPower|RequiredPower]]&lt;br /&gt;
*[[#Setting|Setting]]&lt;br /&gt;
*[[#SolarAngle|SolarAngle]]&lt;br /&gt;
*[[#Temperature|Temperature]]&lt;br /&gt;
*[[#TemperatureSettings|TemperatureSettings]]&lt;br /&gt;
*[[#TotalMoles|TotalMoles]]&lt;br /&gt;
*[[#VelocityMagnitude|VelocityMagnitude]]&lt;br /&gt;
*[[#VelocityRelativeX|VelocityRelativeX]]&lt;br /&gt;
*[[#VelocityRelativeY|VelocityRelativeY]]&lt;br /&gt;
*[[#VelocityRelativeZ|VelocityRelativeZ]]&lt;br /&gt;
*[[#Vertical|Vertical]]&lt;br /&gt;
*[[#VerticalRatio|VerticalRatio]]&lt;br /&gt;
*[[#Volume|Volume]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|+Slot Variables &lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#Occupied|Occupied]]&lt;br /&gt;
*[[#OccupantHash|OccupantHash]]&lt;br /&gt;
*[[#Quantity|Quantity]]&lt;br /&gt;
*[[#Damage|Damage]]&lt;br /&gt;
*[[#Efficiency|Efficiency]]&lt;br /&gt;
*[[#Health|Health]]&lt;br /&gt;
*[[#Growth|Growth]]&lt;br /&gt;
*[[#Pressure|Pressure]]&lt;br /&gt;
*[[#Temperature|Temperature]]&lt;br /&gt;
*[[#Charge|Charge]]&lt;br /&gt;
*[[#ChargeRatio|ChargeRatio]]&lt;br /&gt;
*[[#Class|Class]]&lt;br /&gt;
*[[#PressureWaste|PressureWaste]]&lt;br /&gt;
*[[#PressureAir|PressureAir]]&lt;br /&gt;
*[[#MaxQuantity|MaxQuantity]]&lt;br /&gt;
*[[#Mature|Mature]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=IC10&amp;diff=8608</id>
		<title>IC10</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=IC10&amp;diff=8608"/>
		<updated>2019-07-11T23:17:14Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: /* Slot Variables */  added slot identification information.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=MIPS scripting language for IC10 housings / chips=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// Text after a // will be ignored to the end of the line. The amount of white&lt;br /&gt;
// space between arguments isn&#039;t important, but new lines start a new command.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==Functions==&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;alias&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;alias&lt;br /&gt;
:alias str r? d? // labels register or device reference with name.  When alias is applied to a device, it will effect what shows on the screws in the IC base.  (housing)&lt;br /&gt;
&amp;lt;code&amp;gt;alias vTemperature r0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;alias dAutoHydro1 d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;move&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;move    &lt;br /&gt;
:d s     // stores the value of s in d&lt;br /&gt;
&amp;lt;code&amp;gt;move r0 42 # Store 42 in register 0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;add&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;add     &lt;br /&gt;
:d s t   // calculates s + t and stores the result in d&lt;br /&gt;
&amp;lt;code&amp;gt;add r0 r1 1 # add 1 to r1 and store the result as r0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;add r0 r0 1 # increment r0 by one&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;sub&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;sub     &lt;br /&gt;
:d s t   // calculates s - t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;mul&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;mul     &lt;br /&gt;
:d s t   // calculates s * t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;div     &lt;br /&gt;
:d s t   // calculates s / t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;mod&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;mod     &lt;br /&gt;
:d s t   &lt;br /&gt;
::// calculates s mod t and stores the result in d. Note this&lt;br /&gt;
::// doesn&#039;t behave like the % operator - the result will be &lt;br /&gt;
::// positive even if the either of the operands are negative&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;slt&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;slt     &lt;br /&gt;
:d s t   // stores 1 in d if s &amp;lt; t, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;sqrt&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;sqrt    &lt;br /&gt;
:d s     // calculates sqrt(s) and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;round&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;round   &lt;br /&gt;
:d s     // finds the rounded value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;trunc&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;trunc   &lt;br /&gt;
:d s     // finds the truncated value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;ceil&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ceil   &lt;br /&gt;
: d s     // calculates the ceiling of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;floor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;floor  &lt;br /&gt;
: d s     // calculates the floor of s and stores the result in d&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;max&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;max    &lt;br /&gt;
: d s t   // calculates the maximum of s and t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;min&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;min    &lt;br /&gt;
: d s t   // calculates the minimum of s and t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;abs&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;abs    &lt;br /&gt;
: d s     // calculates the absolute value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;log&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;log    &lt;br /&gt;
: d s     // calculates the natural logarithm of s and stores the result&lt;br /&gt;
::// in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;exp&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;exp    &lt;br /&gt;
: d s     // calculates the exponential of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;rand&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;rand   &lt;br /&gt;
: d       // selects a random number uniformly at random between 0 and 1&lt;br /&gt;
::// inclusive and stores the result in d&lt;br /&gt;
&lt;br /&gt;
::// boolean arithmetic uses the C convention that 0 is false and any non-zero&lt;br /&gt;
::// value is true.&lt;br /&gt;
&amp;lt;div id=&amp;quot;and&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;and    &lt;br /&gt;
: d s t   // stores 1 in d if both s and t have non-zero values,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;or&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;or     &lt;br /&gt;
: d s t   // stores 1 in d if either s or t have non-zero values,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;xor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;xor    &lt;br /&gt;
: d s t   // stores 1 in d if exactly one of s and t are non-zero,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;nor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;nor &lt;br /&gt;
:    d s t   // stores 1 in d if both s and t equal zero, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// Lines are numbered starting at zero&lt;br /&gt;
&amp;lt;div id=&amp;quot;j&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;j&lt;br /&gt;
:             a // jumps to line a.&lt;br /&gt;
&amp;lt;div id=&amp;quot;bltz&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bltz&lt;br /&gt;
:      s   a // jumps to line a if s &amp;lt;  0&lt;br /&gt;
&amp;lt;div id=&amp;quot;blez&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;blez &lt;br /&gt;
:     s   a // jumps to line a if s &amp;lt;= 0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;bgez&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bgez &lt;br /&gt;
:     s   a // jumps to line a if s &amp;gt;= 0&lt;br /&gt;
&amp;lt;div id=&amp;quot;bgtz&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bgtz&lt;br /&gt;
:      s   a // jumps to line a if s &amp;gt;  0&lt;br /&gt;
&amp;lt;div id=&amp;quot;beq&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;beq &lt;br /&gt;
:      s t a // jumps to line a if s == t&lt;br /&gt;
&amp;lt;div id=&amp;quot;bne&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bne &lt;br /&gt;
:      s t a // jumps to line a if s != t&lt;br /&gt;
&amp;lt;div id=&amp;quot;bdseal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bdseal&lt;br /&gt;
:    d? a(r?|num) // Jump execution to line a and store current line number if device d? is set.&lt;br /&gt;
&amp;lt;code&amp;gt;bdseal d0 32 #Store line number and jump to line 32 if d0 is assigned.&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;bdseal dThisVictim HarvestCrop #Store line in ra and jump to sub HarvestCrop if device dThisVictim is assigned.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;yield&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;yield           &lt;br /&gt;
: 	// ceases code execution for this power tick&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;#&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
; #&lt;br /&gt;
:     // The following text will be ignored during compiling; use this to create comments.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Device Variables==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Activate&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Activate&lt;br /&gt;
:1 if device is activated (usually means running), otherwise 0&lt;br /&gt;
:&amp;lt;code&amp;gt;l r0 d0 Activate # sets r0 to 1 if on or 0 of off&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;AirRelease&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;AirRelease&lt;br /&gt;
&amp;lt;div id=&amp;quot;Charge&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Charge&lt;br /&gt;
:    The current charge the device has.&lt;br /&gt;
&amp;lt;div id=&amp;quot;CLearMemory&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;CLearMemory&lt;br /&gt;
:    When set to 1, clears the counter memory (e.g. ExportCount).  Will set itself back to 0 when triggered.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Color&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Color&lt;br /&gt;
&amp;lt;div id=&amp;quot;CompletionRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;CompletionRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;ElevatorLevel&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ElevatorLevel&lt;br /&gt;
&amp;lt;div id=&amp;quot;ElevatorSpeed&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ElevatorSpeed&lt;br /&gt;
&amp;lt;div id=&amp;quot;Error&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Error&lt;br /&gt;
:	1 if device is in error state, otherwise 0&lt;br /&gt;
&amp;lt;div id=&amp;quot;ExportCount&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ExportCount&lt;br /&gt;
:    How many items exporfted since last ClearMemory.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Filtration&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Filtration&lt;br /&gt;
:	The current state of the filtration system.  For example filtration = 1 for a Hardsuit when filtration is On.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Harvest&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Harvest&lt;br /&gt;
:	Performs the harvesting action for any plant based machinery.&lt;br /&gt;
:  &amp;lt;code&amp;gt;s d0 Harvest 1 # Performs 1 harvest action on device d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;Horizontal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Horizontal&lt;br /&gt;
&amp;lt;div id=&amp;quot;HorizontalRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;HorizontalRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;Idle&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Idle&lt;br /&gt;
&amp;lt;div id=&amp;quot;ImportCount&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ImportCount&lt;br /&gt;
&amp;lt;div id=&amp;quot;Lock&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Lock&lt;br /&gt;
&amp;lt;div id=&amp;quot;Maximum&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Maximum&lt;br /&gt;
&amp;lt;div id=&amp;quot;Mode&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Mode&lt;br /&gt;
&amp;lt;div id=&amp;quot;On&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;On&lt;br /&gt;
&amp;lt;div id=&amp;quot;Open&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Open&lt;br /&gt;
&amp;lt;div id=&amp;quot;Output&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Output&lt;br /&gt;
&amp;lt;div id=&amp;quot;Plant&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Plant&lt;br /&gt;
:    Performs the planting operation for any plant based machinery.&lt;br /&gt;
:  &amp;lt;code&amp;gt;s d0 Plant 1 # Plants one crop in device d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionX&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionX&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionY&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionY&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionZ&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionZ&lt;br /&gt;
&amp;lt;div id=&amp;quot;Power&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Power&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerActual&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerActual&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerPotential&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerPotential&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerRequired&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerRequired&lt;br /&gt;
&amp;lt;div id=&amp;quot;Pressure&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Pressure&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureExternal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureExternal&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureInteral&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureInteral&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureSetting&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureSetting&lt;br /&gt;
&amp;lt;div id=&amp;quot;Quantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Quantity&lt;br /&gt;
:	Total quantity in the device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Ratio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Ratio&lt;br /&gt;
:	Context specific value depending on device, 0 to 1 based ratio.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioCarbonDioxide&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioCarbonDioxide&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioNitrogen&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioNitrogen&lt;br /&gt;
:	The ratio of nitrogen in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioOxygen&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioOxygen&lt;br /&gt;
:	The ratio of oxygen in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioPollutant&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioPollutant&lt;br /&gt;
:	The ratio of pollutant in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioVolatiles&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioVolatiles&lt;br /&gt;
:	The ratio of volatiles in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioWater&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioWater&lt;br /&gt;
:	The ratio of water in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Reagents&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Reagents&lt;br /&gt;
&amp;lt;div id=&amp;quot;RecipeHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RecipeHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;RequestHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RequestHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;RequiredPower&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RequiredPower&lt;br /&gt;
&amp;lt;div id=&amp;quot;Setting&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Setting&lt;br /&gt;
&amp;lt;div id=&amp;quot;SolarAngle&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;SolarAngle&lt;br /&gt;
:    Solar angle of the device.&lt;br /&gt;
:  &amp;lt;code&amp;gt;l r0 d0 SolarAngle # Sets r0 to the solar angle of d0.&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;Temperature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Temperature&lt;br /&gt;
&amp;lt;div id=&amp;quot;TemperatureSettings&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;TemperatureSettings&lt;br /&gt;
&amp;lt;div id=&amp;quot;TotalMoles&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;TotalMoles&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityMagnitude&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityMagnitude&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeX&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeX&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeY&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeY&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeZ&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeZ&lt;br /&gt;
&amp;lt;div id=&amp;quot;Vertical&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Vertical&lt;br /&gt;
:	Vertical setting of the device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;VerticalRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VerticalRatio&lt;br /&gt;
:	Ratio of vertical setting for device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Volume&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Volume&lt;br /&gt;
:	Returns the device atmosphere volume&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Slot Variables==&lt;br /&gt;
In general (always?) slots are assigned as follows.&lt;br /&gt;
:Slot 0: Import&lt;br /&gt;
:Slot 1: Export&lt;br /&gt;
:Slot 2: Inside Machine&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Occupied&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Occupied&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 2 Occupied #Stores 1 in r0 if d0 has more seeds&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ls vOccupied dThisVictim 2 Occupied #stores 1 in vOccupied if dThisVictim has more seeds&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;OccupantHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;OccupantHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;Quantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Quantity&lt;br /&gt;
&amp;lt;div id=&amp;quot;Damage&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Damage&lt;br /&gt;
&amp;lt;div id=&amp;quot;Efficiency&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Efficiency&lt;br /&gt;
&amp;lt;div id=&amp;quot;Health&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Health&lt;br /&gt;
&amp;lt;div id=&amp;quot;Growth&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Growth&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 0 Growth # Store the numerical growth stage of d0 in r0&amp;lt;/code&amp;gt; &lt;br /&gt;
&amp;lt;div id=&amp;quot;Pressure&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Pressure&lt;br /&gt;
&amp;lt;div id=&amp;quot;Temperature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Temperature&lt;br /&gt;
&amp;lt;div id=&amp;quot;Charge&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Charge&lt;br /&gt;
&amp;lt;div id=&amp;quot;ChargeRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ChargeRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;Class&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Class&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureWaste&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureWaste&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureAir&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureAir&lt;br /&gt;
&amp;lt;div id=&amp;quot;MaxQuantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;MaxQuantity&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Mature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Mature&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 0 Mature # Store 1 in r0 if d0 has a mature crop&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ls vMature dThisVictim 0 Mature # Store 1 in vMature if dThisVictim has a mature crop&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Examples==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====This example script automates autohydro units and powers the lights off during the day when they&#039;re not needed.  (Hit Expand)====&lt;br /&gt;
Uses aliases, sub-routines and comments to minimize lines of code and adaptability.&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot; data-expandtext=&amp;quot;{{int:Expand Sample AutoHydro Script}}&amp;quot; data-collapsetext=&amp;quot;{{int:Collapse Sample AutoHydro Script}}&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
alias vMature r0​&lt;br /&gt;
alias vOccupied r1​&lt;br /&gt;
alias isDayLight r2​&lt;br /&gt;
alias isOccupied r3​&lt;br /&gt;
alias dSensor d5​&lt;br /&gt;
​&lt;br /&gt;
​&lt;br /&gt;
#start of Program Loop​&lt;br /&gt;
start:​&lt;br /&gt;
l isDayLight dSensor Activate​  #Check if it&#039;s daytime or not.&lt;br /&gt;
​&lt;br /&gt;
# For each device, harvest, plant, powerdown, then power on depending on conditions.&lt;br /&gt;
alias dThisVictim d0​  #Begin processing device 0&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
alias dThisVictim d1​  #Begin processing device 1&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
alias dThisVictim d2​  #Begin processing device 2&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
alias dThisVictim d3​  #Begin processing device 3&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
alias dThisVictim d4​  #Begin processing device 4&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
#Can&#039;t do a D5 because that&#039;s our sensor.​&lt;br /&gt;
​&lt;br /&gt;
j start​ #Return to the beginning of the program loop.  (Yields here may save processing power)&lt;br /&gt;
​&lt;br /&gt;
​​&lt;br /&gt;
HarvestCrop:​&lt;br /&gt;
ls vMature dThisVictim 0 Mature​&lt;br /&gt;
blez vMature ra​  #If the crop is not mature, return&lt;br /&gt;
s dThisVictim Harvest 1​ #If the crop is mature, harvest it (one).&lt;br /&gt;
j ra​ #return&lt;br /&gt;
​&lt;br /&gt;
&lt;br /&gt;
PlantCrop:​&lt;br /&gt;
ls vOccupied dThisVictim 2 Occupied #seeds to plant​&lt;br /&gt;
blez vOccupied ra​ #If the machine has no seeds to plant, return.&lt;br /&gt;
ls vOccupied dThisVictim 0 Occupied #something growin​g&lt;br /&gt;
bgtz vOccupied ra​  # If the crop plot is occupied, return.&lt;br /&gt;
s dThisVictim Plant 1​  # if we made it this far, plant the crop&lt;br /&gt;
j ra​ #return&lt;br /&gt;
​&lt;br /&gt;
​&lt;br /&gt;
​&lt;br /&gt;
PowerDown:​&lt;br /&gt;
s dThisVictim On 0​ #Power the machine down.&lt;br /&gt;
​&lt;br /&gt;
j ra #Jump to line we came from​&lt;br /&gt;
​&lt;br /&gt;
​&lt;br /&gt;
TurnitOn:​&lt;br /&gt;
s dThisVictim On 1​ #Power the machine up&lt;br /&gt;
j ra&lt;br /&gt;
&lt;br /&gt;
##########&lt;br /&gt;
#### End Script&lt;br /&gt;
##########&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
This is a sample timer command set, alternating between 1 for 1 tick (0.5s), then off for 2 ticks (1s).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
move r0 0		// Line 0: move the value 0 to register0&lt;br /&gt;
sub r1 r0 3		// Line 1: subtract 3 from the value in r0 and write it to r1&lt;br /&gt;
bltz r1 4		// Line 2: jump to line 4 if r1 &amp;lt; 0 (skip the next line)&lt;br /&gt;
move r0 0		// Line 3: move the value 0 to register0 &lt;br /&gt;
slt o r0 1		// Line 4: if r0 &amp;lt; 1 write 1 to the output, otherwise 0.&lt;br /&gt;
add r0 r0 1		// Line 5: increment r0 by 1&lt;br /&gt;
yield			// Line 6: wait until next power tick (0.5s)&lt;br /&gt;
j 1			// Line 7: jump back to line 1	&lt;br /&gt;
&lt;br /&gt;
##########&lt;br /&gt;
#### End Script&lt;br /&gt;
##########&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
so you will do l r0 d0 SolarAngle&lt;br /&gt;
Sorry had last args swapped&lt;br /&gt;
That would read in the value&lt;br /&gt;
while,&lt;br /&gt;
s d1 Vertical r0&lt;br /&gt;
Would write the contents of r0 into the devices 1&#039;s Vertical property&lt;br /&gt;
additionally you can make some aliases&lt;br /&gt;
alias SolarSensor d0&lt;br /&gt;
l r0 SolarSensor SolarAngle&lt;br /&gt;
&lt;br /&gt;
##########&lt;br /&gt;
#### End Script&lt;br /&gt;
##########&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
-----&lt;br /&gt;
Another example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Now the IC is inserted into the housing. The screws D0-D5 can be adjusted directly to the equipment (sensor, console, solar panel, etc.). The ports &#039;o&#039; and &#039;i0-i2&#039; have been removed. Instead, commands that directly read and write hardware parameters are added.&lt;br /&gt;
l &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
 reads the value of the parameter&lt;br /&gt;
s &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt; &amp;lt;register_or_value&amp;gt;&lt;br /&gt;
 writes the value of the parameter&lt;br /&gt;
ls &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;slot_number&amp;gt; &amp;lt;parameter&amp;gt; &lt;br /&gt;
 reads the parameter value from the slot&lt;br /&gt;
For example, &lt;br /&gt;
l r0 d0 Horizontal&lt;br /&gt;
 &lt;br /&gt;
s d5 Activate 1&lt;br /&gt;
 &lt;br /&gt;
ls r3 db 0 OccupantHash&lt;br /&gt;
&lt;br /&gt;
##########&lt;br /&gt;
#### End Script&lt;br /&gt;
##########&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
-----&lt;br /&gt;
* [https://stationeering.com/tools/ic] Stationeering.com offers a programmable circuits simulator so you can develop your code without repeatedly dying in game!&lt;br /&gt;
* [https://hastebin.com/uwuhidozun.md]&lt;br /&gt;
* [http://www.easy68k.com/]&lt;br /&gt;
&lt;br /&gt;
==Index==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|+Functions &lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#abs|abs]]&lt;br /&gt;
*[[#add|add]]&lt;br /&gt;
*[[#alias|alias]]&lt;br /&gt;
*[[#and|and]]&lt;br /&gt;
*[[#beq|beq]]&lt;br /&gt;
*[[#bgez|bgez]]&lt;br /&gt;
*[[#bgtz|bgtz]]&lt;br /&gt;
*[[#blez|blez]]&lt;br /&gt;
*[[#bltz|bltz]]&lt;br /&gt;
*[[#bne|bne]]&lt;br /&gt;
*[[#breq|breq]]&lt;br /&gt;
*[[#brgez|brgez]]&lt;br /&gt;
*[[#brgtz|brgtz]]&lt;br /&gt;
*[[#brlez|brlez]]&lt;br /&gt;
*[[#brltz|brltz]]&lt;br /&gt;
*[[#brne|brne]]&lt;br /&gt;
*[[#ceil|cell]]&lt;br /&gt;
*[[#div|div]]&lt;br /&gt;
*[[#exp|exp]]&lt;br /&gt;
*[[#floor|floor]]&lt;br /&gt;
*[[#j|j]]&lt;br /&gt;
*[[#jr|jr]]&lt;br /&gt;
*[[#l|l]]&lt;br /&gt;
*[[#log|log]]&lt;br /&gt;
*[[#ls|ls]]&lt;br /&gt;
*[[#max|max]]&lt;br /&gt;
*[[#min|min]]&lt;br /&gt;
*[[#mod|mod]]&lt;br /&gt;
*[[#move|move]]&lt;br /&gt;
*[[#mul|mul]]&lt;br /&gt;
*[[#nor|nor]]&lt;br /&gt;
*[[#or|or]]&lt;br /&gt;
*[[#rand|rand]]&lt;br /&gt;
*[[#round|round]]&lt;br /&gt;
*[[#s|s]]&lt;br /&gt;
*[[#slt|slt]]&lt;br /&gt;
*[[#sqrt|sqrt]]&lt;br /&gt;
*[[#sub|sub]]&lt;br /&gt;
*[[#trunc|trunc]]&lt;br /&gt;
*[[#xor|xor]]xor&lt;br /&gt;
*[[#yield|yield]]&lt;br /&gt;
*[[##|#]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|+Device Variables &lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#Activate|Activate]]&lt;br /&gt;
*[[#AirRelease|AirRelease]]&lt;br /&gt;
*[[#Charge|Charge]]&lt;br /&gt;
*[[#CLearMemory|CLearMemory]]&lt;br /&gt;
*[[#Color|Color]]&lt;br /&gt;
*[[#CompletionRatio|CompletionRatio]]&lt;br /&gt;
*[[#ElevatorLevel|ElevatorLevel]]&lt;br /&gt;
*[[#ElevatorSpeed|ElevatorSpeed]]&lt;br /&gt;
*[[#Error|Error]]&lt;br /&gt;
*[[#ExportCount|ExportCount]]&lt;br /&gt;
*[[#Filtration|Filtration]]&lt;br /&gt;
*[[#Harvest|Harvest]]&lt;br /&gt;
*[[#Horizontal|Horizontal]]&lt;br /&gt;
*[[#HorizontalRatio|HorizontalRatio]]&lt;br /&gt;
*[[#Idle|Idle]]&lt;br /&gt;
*[[#ImportCount|ImportCount]]&lt;br /&gt;
*[[#Lock|Lock]]&lt;br /&gt;
*[[#Maximum|Maximum]]&lt;br /&gt;
*[[#Mode|Mode]]&lt;br /&gt;
*[[#On|On]]&lt;br /&gt;
*[[#Open|Open]]&lt;br /&gt;
*[[#Output|Output]]&lt;br /&gt;
*[[#Plant|Plant]]&lt;br /&gt;
*[[#PositionX|PositionX]]&lt;br /&gt;
*[[#PositionY|PositionY]]&lt;br /&gt;
*[[#PositionZ|PositionZ]]&lt;br /&gt;
*[[#Power|Power]]&lt;br /&gt;
*[[#PowerActual|PowerActual]]&lt;br /&gt;
*[[#PowerPotential|PowerPotential]]&lt;br /&gt;
*[[#PowerRequired|PowerRequired]]&lt;br /&gt;
*[[#Pressure|Pressure]]&lt;br /&gt;
*[[#PressureExternal|PressureExternal]]&lt;br /&gt;
*[[#PressureInteral|PressureInteral]]&lt;br /&gt;
*[[#PressureSetting|PressureSetting]]&lt;br /&gt;
*[[#Quantity|Quantity]]&lt;br /&gt;
*[[#Ratio|Ratio]]&lt;br /&gt;
*[[#RatioCarbonDioxide|RatioCarbonDioxide]]&lt;br /&gt;
*[[#RatioNitrogen|RatioNitrogen]]&lt;br /&gt;
*[[#RatioOxygen|RatioOxygen]]&lt;br /&gt;
*[[#RatioPollutant|RatioPollutant]]&lt;br /&gt;
*[[#RatioVolatiles|RatioVolatiles]]&lt;br /&gt;
*[[#RatioWater|RatioWater]]&lt;br /&gt;
*[[#Reagents|Reagents]]&lt;br /&gt;
*[[#RecipeHash|RecipeHash]]&lt;br /&gt;
*[[#RequestHash|RequestHash]]&lt;br /&gt;
*[[#RequiredPower|RequiredPower]]&lt;br /&gt;
*[[#Setting|Setting]]&lt;br /&gt;
*[[#SolarAngle|SolarAngle]]&lt;br /&gt;
*[[#Temperature|Temperature]]&lt;br /&gt;
*[[#TemperatureSettings|TemperatureSettings]]&lt;br /&gt;
*[[#TotalMoles|TotalMoles]]&lt;br /&gt;
*[[#VelocityMagnitude|VelocityMagnitude]]&lt;br /&gt;
*[[#VelocityRelativeX|VelocityRelativeX]]&lt;br /&gt;
*[[#VelocityRelativeY|VelocityRelativeY]]&lt;br /&gt;
*[[#VelocityRelativeZ|VelocityRelativeZ]]&lt;br /&gt;
*[[#Vertical|Vertical]]&lt;br /&gt;
*[[#VerticalRatio|VerticalRatio]]&lt;br /&gt;
*[[#Volume|Volume]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|+Slot Variables &lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#Occupied|Occupied]]&lt;br /&gt;
*[[#OccupantHash|OccupantHash]]&lt;br /&gt;
*[[#Quantity|Quantity]]&lt;br /&gt;
*[[#Damage|Damage]]&lt;br /&gt;
*[[#Efficiency|Efficiency]]&lt;br /&gt;
*[[#Health|Health]]&lt;br /&gt;
*[[#Growth|Growth]]&lt;br /&gt;
*[[#Pressure|Pressure]]&lt;br /&gt;
*[[#Temperature|Temperature]]&lt;br /&gt;
*[[#Charge|Charge]]&lt;br /&gt;
*[[#ChargeRatio|ChargeRatio]]&lt;br /&gt;
*[[#Class|Class]]&lt;br /&gt;
*[[#PressureWaste|PressureWaste]]&lt;br /&gt;
*[[#PressureAir|PressureAir]]&lt;br /&gt;
*[[#MaxQuantity|MaxQuantity]]&lt;br /&gt;
*[[#Mature|Mature]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Ore_(Gold)&amp;diff=8607</id>
		<title>Ore (Gold)</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Ore_(Gold)&amp;diff=8607"/>
		<updated>2019-07-08T08:54:51Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: added hashid for MIPS coding and such.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages /&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:1--&amp;gt;&lt;br /&gt;
{{Itembox&lt;br /&gt;
 | name        = Ore (Gold)&lt;br /&gt;
 | image       =  [[File:ItemGoldOre.png]]&lt;br /&gt;
 | stacks      = 50x&lt;br /&gt;
 | usedwith    = &lt;br /&gt;
*[[Arc Furnace]]&lt;br /&gt;
*[[Furnace]]&lt;br /&gt;
 | hashid      = 502280180&lt;br /&gt;
}}&lt;br /&gt;
{{Orebox&lt;br /&gt;
 | name  = Ore (Gold)&lt;br /&gt;
 | image =  [[File:Gold_ore.jpg]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Obtaining == &amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
[[Ore (Gold)]] is mined throughout the surface and underground of a planet or an asteroid using a [[Mining Drill]].&lt;br /&gt;
&lt;br /&gt;
== Processing == &amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
Gold Ore can be turned into [[Gold Ingot]] by smelting it in a [[Furnace]] or [[Arc Furnace]]. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:4--&amp;gt;&lt;br /&gt;
Gold Ore can also be combined with equal amounts of [[Silver Ore]] in the [[Furnace]] to create [[Electrum Ingot]].&lt;br /&gt;
&lt;br /&gt;
Smelting one Gold Ore produces the following gases:&lt;br /&gt;
{|&lt;br /&gt;
|2 mol&lt;br /&gt;
|[[Pollutant]]&lt;br /&gt;
|-&lt;br /&gt;
|0.5 mol&lt;br /&gt;
|[[Nitrogen]]&lt;br /&gt;
|-&lt;br /&gt;
|0.2 mol&lt;br /&gt;
|[[Carbon Dioxide]]&lt;br /&gt;
|-&lt;br /&gt;
|0.2 mol&lt;br /&gt;
|[[Oxygen]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Ice_(Water)&amp;diff=8606</id>
		<title>Ice (Water)</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Ice_(Water)&amp;diff=8606"/>
		<updated>2019-07-07T22:03:32Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: added hashid for MIPS coding and such.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages /&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:1--&amp;gt;&lt;br /&gt;
{{Itembox&lt;br /&gt;
 | name        = Ice (Water)&lt;br /&gt;
 | image       =  [[File:{{#setmainimage:ItemIce.png}}]]&lt;br /&gt;
 | stacks      = 50x&lt;br /&gt;
 | hashid      = 1217489948&lt;br /&gt;
}}&lt;br /&gt;
{{Orebox&lt;br /&gt;
 | name  = Ice (Water)&lt;br /&gt;
 | image = [[File:Ice_ore.jpg]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Obtaining == &amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
[[Ice (Water)]] is mined throughout the surface and underground of a planet or an asteroid using a [[Mining Drill]] or [[Pickaxe]]. It is recommended to equip the Mining Belt before mining, to collect the ore automatically without melting. &lt;br /&gt;
&lt;br /&gt;
== Processing == &amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
Ice is extremely sensitive to temperature and will sublimate to gas even at the slightest exposure to heat at 0 degrees Celcius or above, including being held in hands. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:5--&amp;gt;&lt;br /&gt;
It is composed of the following components:&lt;br /&gt;
{|&lt;br /&gt;
|20 mol (80%)&lt;br /&gt;
|[[Water]]&lt;br /&gt;
|-&lt;br /&gt;
|5 mol (20%)&lt;br /&gt;
|[[Nitrogen gas|N2]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Ore_(Silver)&amp;diff=8605</id>
		<title>Ore (Silver)</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Ore_(Silver)&amp;diff=8605"/>
		<updated>2019-07-07T21:59:23Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: added hashid for MIPS coding and such.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages /&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:1--&amp;gt;&lt;br /&gt;
{{Itembox&lt;br /&gt;
 | name        = Ore (Silver)&lt;br /&gt;
 | image       =  [[File:ItemSilverOre.png]]&lt;br /&gt;
 | stacks      = 50x&lt;br /&gt;
 | usedwith    = &lt;br /&gt;
*[[Arc Furnace]]&lt;br /&gt;
*[[Furnace]]&lt;br /&gt;
 | hashid      = -916518678&lt;br /&gt;
}}&lt;br /&gt;
{{Orebox&lt;br /&gt;
 | name  = Ore (Silver)&lt;br /&gt;
 | image = [[File:Silver_ore.jpg]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Description == &amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
[[Ore (Silver)]] is mined throughout the surface and underground of a planet or an asteroid using a [[Mining Drill]].&lt;br /&gt;
&lt;br /&gt;
== Processed == &amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
It can be turned into [[Silver Ingot]] by smelting it in the [[Furnace]] or [[Arc Furnace]]. [[Silver Ore]] can also be combined with equal amounts [[Gold Ore]] in the [[Furnace]] to create [[Electrum Ingot]].&lt;br /&gt;
&lt;br /&gt;
Smelting one Silver Ore produces the following gases:&lt;br /&gt;
{|&lt;br /&gt;
|1 mol&lt;br /&gt;
|[[Pollutant]]&lt;br /&gt;
|-&lt;br /&gt;
|1 mol&lt;br /&gt;
|[[Carbon Dioxide]]&lt;br /&gt;
|-&lt;br /&gt;
|0.4 mol&lt;br /&gt;
|[[Nitrogen]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Ice_(Volatiles)&amp;diff=8604</id>
		<title>Ice (Volatiles)</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Ice_(Volatiles)&amp;diff=8604"/>
		<updated>2019-07-07T21:57:10Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: added hashid for MIPS coding and such.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages /&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:1--&amp;gt;&lt;br /&gt;
{{Itembox&lt;br /&gt;
 | name        = Ice (Volatiles)&lt;br /&gt;
 | image       =  [[File:{{#setmainimage:ItemVolatiles.png}}]]&lt;br /&gt;
 | stacks      = 50x&lt;br /&gt;
 | hashid      = 1253102035&lt;br /&gt;
}}&lt;br /&gt;
{{Orebox&lt;br /&gt;
 | name  = Ice (Volatiles)&lt;br /&gt;
 | image = [[File:Volatiles_ore.jpg]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Obtaining == &amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
[[Ice (Volatiles)]] is mined throughout the surface and underground of a planet or an asteroid using a [[Mining Drill]] or [[Pickaxe]]. It is recommended to equip the Mining Belt before mining, to collect the ore automatically without melting. &lt;br /&gt;
&lt;br /&gt;
== Processing == &amp;lt;!--T:5--&amp;gt;&lt;br /&gt;
Volatile ice is extremely sensitive to temperature and will sublimate to gas even at the slightest exposure to heat - such as being held in hand.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:6--&amp;gt;&lt;br /&gt;
It is composed of the following gases:&lt;br /&gt;
{|&lt;br /&gt;
|22 mol (100%)&lt;br /&gt;
|[[Hydrogen|H2 (Hydrogen)]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Ore_(Lead)&amp;diff=8603</id>
		<title>Ore (Lead)</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Ore_(Lead)&amp;diff=8603"/>
		<updated>2019-07-07T21:55:16Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: added hashid for MIPS coding and such.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages /&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:1--&amp;gt;&lt;br /&gt;
{{Itembox&lt;br /&gt;
 | name        = Ore (Lead)&lt;br /&gt;
 | image       =  [[File:ItemLeadOre.png]]&lt;br /&gt;
 | stacks      = 50x&lt;br /&gt;
 | usedwith    = &lt;br /&gt;
*[[Arc Furnace]]&lt;br /&gt;
*[[Furnace]]&lt;br /&gt;
 | hashid      = -190236170&lt;br /&gt;
}}&lt;br /&gt;
{{Orebox&lt;br /&gt;
 | name  = Ore (Lead)&lt;br /&gt;
 | image = [[File:Lead_ore.jpg]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Description == &amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
[[Ore (Lead)]] is mined throughout the surface and underground of a planet or an asteroid using a [[Mining Drill]].&lt;br /&gt;
&lt;br /&gt;
== Processed == &amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
Lead Ore can be smelted into [[Lead Ingot]]s by placing it in a [[Arc Furnace]] or [[Furnace]]. It can also be combined with equal amounts [[Iron Ore]] in the [[Furnace]] to create [[Solder Ingot]]s.&lt;br /&gt;
&lt;br /&gt;
Smelting one Lead Ore produces the following gases:&lt;br /&gt;
{|&lt;br /&gt;
| 2 mol&lt;br /&gt;
| [[Pollutant]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 mol&lt;br /&gt;
| [[Nitrogen]]&lt;br /&gt;
|-&lt;br /&gt;
| 0.1 mol&lt;br /&gt;
| [[Carbon Dioxide]]&lt;br /&gt;
|-&lt;br /&gt;
| 0.1 mol&lt;br /&gt;
| [[Oxygen]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Ore_(Copper)&amp;diff=8602</id>
		<title>Ore (Copper)</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Ore_(Copper)&amp;diff=8602"/>
		<updated>2019-07-07T21:53:43Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: added hashid for MIPS coding and such.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages /&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:1--&amp;gt;&lt;br /&gt;
{{Itembox&lt;br /&gt;
 | name        = Ore (Copper)&lt;br /&gt;
 | image       =  [[File:{{#setmainimage:ItemCopperOre.png}}]]&lt;br /&gt;
 | stacks      = 50x&lt;br /&gt;
 | usedwith    = &lt;br /&gt;
*[[Arc Furnace]]&lt;br /&gt;
*[[Furnace]]&lt;br /&gt;
 | hashid      = -707307845&lt;br /&gt;
}}&lt;br /&gt;
{{Orebox&lt;br /&gt;
 | name  = Ore (Copper)&lt;br /&gt;
 | image = [[File:Copper_ore.jpg]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Obtaining == &amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
[[Ore (Copper)]] is mined throughout the surface and and underground of a planet or an asteroid using a [[Mining Drill]].&lt;br /&gt;
&lt;br /&gt;
== Processing == &amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
Copper ore can be turned into [[Copper Ingot]] by smelting it in an [[Arc Furnace]] or [[Furnace]]. Copper Ore can also be combined with equal amounts [[Nickel Ore]] in the [[Furnace]] to create [[Constantan Ingot]].&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Ice_(Oxite)&amp;diff=8601</id>
		<title>Ice (Oxite)</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Ice_(Oxite)&amp;diff=8601"/>
		<updated>2019-07-07T21:52:40Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: added hashid for MIPS coding and such.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages /&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:1--&amp;gt;&lt;br /&gt;
{{Itembox&lt;br /&gt;
 | name        = Ice (Oxite)&lt;br /&gt;
 | image       =  [[File:{{#setmainimage:ItemOxite.png}}]]&lt;br /&gt;
 | stacks      = 50x&lt;br /&gt;
 | hashid      = -1805394113&lt;br /&gt;
}}&lt;br /&gt;
{{Orebox&lt;br /&gt;
 | name  = Ice (Oxite)&lt;br /&gt;
 | image = [[File:Oxite_ore.jpg]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Obtaining == &amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
[[Ice (Oxite)]] is mined throughout the surface and underground of a planet or an asteroid using a [[Mining Drill]] or [[Pickaxe]]. It is recommended to equip the [[Mining Belt]] before mining, to collect the ore automatically without melting.&lt;br /&gt;
&lt;br /&gt;
== Processing ==&lt;br /&gt;
&amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
Ice is extremely sensitive to temperature and will sublimate to gas even with minimal exposure to heat - such as being held in hand. Melting in a furnace will release [[Oxygen Gas|O2]] and [[Nitrogen Gas|N2]].&lt;br /&gt;
&lt;br /&gt;
It is composed of the following gases:&lt;br /&gt;
&amp;lt;!--T:4--&amp;gt;&lt;br /&gt;
{|&lt;br /&gt;
|22.5 mol (90%)&lt;br /&gt;
|[[Oxygen Gas|O2]]&lt;br /&gt;
|-&lt;br /&gt;
|2.5 mol (10%)&lt;br /&gt;
|[[Nitrogen gas|N2]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Ore_(Iron)&amp;diff=8600</id>
		<title>Ore (Iron)</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Ore_(Iron)&amp;diff=8600"/>
		<updated>2019-07-07T21:51:36Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: added hashid for MIPS coding and such.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages /&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:1--&amp;gt;&lt;br /&gt;
{{Itembox&lt;br /&gt;
 | name        = Ore (Iron)&lt;br /&gt;
 | image       =  [[File:ItemIronOre.png]]&lt;br /&gt;
 | stacks      = 50x&lt;br /&gt;
 | usedwith    = [[Arc Furnace]], [[Furnace]]&lt;br /&gt;
 | hashid      = 1758427767&lt;br /&gt;
}}&lt;br /&gt;
{{Orebox&lt;br /&gt;
 | name  = Iron Ore&lt;br /&gt;
 | image = [[File:Iron_ore.jpg]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Obtaining == &amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
Iron Ore is mined throughout the surface and underground of a planet or an asteroid using a [[Mining Drill]]. Iron Ore is the most basic ore type in Stationeers and most used.&lt;br /&gt;
&lt;br /&gt;
== Processing == &amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
Iron ore can be turned into an [[Iron Ingot]] by smelting it in an [[Arc Furnace]] or [[Furnace]]. It can be smelted into [[Steel Ingot]] using [[Coal Ore|Coal]] and [[Iron Ore]] in a Furnace (not Arc Furnace) that has [[Ice (Oxite)|Oxygen]] and gas from [[Ice (Volatiles)]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:5--&amp;gt;&lt;br /&gt;
Smelting one Iron Ore produces the following gases:&lt;br /&gt;
{|&lt;br /&gt;
|2 mol&lt;br /&gt;
|[[Pollutant]]&lt;br /&gt;
|-&lt;br /&gt;
|0.5 mol&lt;br /&gt;
|[[Carbon Dioxide]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Ore_(Coal)&amp;diff=8599</id>
		<title>Ore (Coal)</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Ore_(Coal)&amp;diff=8599"/>
		<updated>2019-07-07T21:50:28Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: added hashid for MIPS coding and such.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages/&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:1--&amp;gt;&lt;br /&gt;
{{Itembox&lt;br /&gt;
 | name        = Ore (Coal)&lt;br /&gt;
 | image       =  [[File:{{#setmainimage:ItemCoalOre.png}}]]&lt;br /&gt;
 | stacks      = 50x&lt;br /&gt;
 | usedwith    = &lt;br /&gt;
*[[Special:MyLanguage/Kit (Solid Generator)|Solid Fuel Generator]]&lt;br /&gt;
*[[Special:MyLanguage/Furnace|Furnace]]&lt;br /&gt;
*[[Special:MyLanguage/Reagent Processor|Reagent Processor]]&lt;br /&gt;
 | hashid      = 1724793494&lt;br /&gt;
}}&lt;br /&gt;
{{Orebox&lt;br /&gt;
 | name  = Ore (Coal)&lt;br /&gt;
 | image = [[File:Coal_ore.jpg]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Obtaining == &amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:4--&amp;gt;&lt;br /&gt;
[[Special:MyLanguage/Ore (Coal)|Ore (Coal)]] is mined throughout the surface of the moon, or asteroids using a [[Special:MyLanguage/Mining Drill|Mining Drill]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Processing == &amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:5--&amp;gt;&lt;br /&gt;
Coal can be used as low-level fuel to generate power in the [[Special:MyLanguage/Kit (Solid Generator)|Solid Fuel Generator]]. Coal can be combined with [[Special:MyLanguage/Iron Ore|Iron Ore]] in the [[Special:MyLanguage/Furnace|Furnace]] to create [[Special:MyLanguage/Steel Ingot|Steel Ingot]]. Using coal as fuel is not best idea, as it generates pollution, which can be bad for [[Special:MyLanguage/Player|Player&#039;s]] health, even if it provides good boost of power.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:6--&amp;gt;&lt;br /&gt;
It can also be placed in the [[Special:MyLanguage/Reagent Processor|Reagent Processor]] to make [[Special:MyLanguage/Carbon Powder|Carbon Powder]], an item needed for black [[Special:MyLanguage/Spray Paint|Spray Paint]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Ore_(Silicon)&amp;diff=8598</id>
		<title>Ore (Silicon)</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Ore_(Silicon)&amp;diff=8598"/>
		<updated>2019-07-07T21:49:13Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: added hashid for MIPS coding and such.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages /&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:1--&amp;gt;&lt;br /&gt;
{{Itembox&lt;br /&gt;
 | name        = Ore (Silicon)&lt;br /&gt;
 | image       =  [[File:ItemSiliconOre.png]]&lt;br /&gt;
 | stacks      = 50x&lt;br /&gt;
 | usedwith    = &lt;br /&gt;
*[[Arc Furnace]]&lt;br /&gt;
*[[Furnace]]&lt;br /&gt;
 | hashid      = 1103972403&lt;br /&gt;
}}&lt;br /&gt;
{{Orebox&lt;br /&gt;
 | name  = Ore (Silicon)&lt;br /&gt;
 | image = [[File:Silicon_ore.jpg]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Description == &amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
[[Ore (Silicon)]] is mined throughout the surface and underground of a planet or an asteroid using a [[Mining Drill]].&lt;br /&gt;
&lt;br /&gt;
== Processed == &amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
Silicon Ore can be turn into [[Silicon Ingot]] using an [[Arc Furnace]] or [[Furnace]].&lt;br /&gt;
&lt;br /&gt;
Smelting one Silicon Ore produces the following gases:&lt;br /&gt;
{|&lt;br /&gt;
| 1 mol&lt;br /&gt;
| [[Pollutant]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 mol&lt;br /&gt;
| [[Nitrogen]]&lt;br /&gt;
|-&lt;br /&gt;
| 1 mol&lt;br /&gt;
| [[Carbon Dioxide]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Ingot_(Copper)&amp;diff=8597</id>
		<title>Ingot (Copper)</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Ingot_(Copper)&amp;diff=8597"/>
		<updated>2019-07-07T20:09:58Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: added hashid for MIPS coding and such.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Ingot]]&lt;br /&gt;
&amp;lt;languages /&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:1--&amp;gt;&lt;br /&gt;
{{Itembox&lt;br /&gt;
 | name        = Ingot (Copper)&lt;br /&gt;
 | image       =  [[File:{{#setmainimage:ItemCopperIngot.png}}]]&lt;br /&gt;
 | stacks      = {{Icon|Copper|50}}&lt;br /&gt;
 | createdwith = {{Icon|Arc Furnace}} {{Icon|Furnace}}&lt;br /&gt;
 | cost        = {{Icon|Copper Ore|1}}&lt;br /&gt;
 | hashid      = -404336834&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Description == &amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
[[File:Copper_ingot.jpg|right|thumb]]&lt;br /&gt;
[[Ingot (Copper)]] is created by smelting [[Copper Ore]] in a [[Furnace]] or [[Arc Furnace]]. It is used as the basic ingredient in creating items from various [[:Category:Machines|machines]] .&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
&amp;lt;table class=&amp;quot;wiki_table&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| Machine: || Furnace, Arc Furnace&lt;br /&gt;
|-&lt;br /&gt;
| Pressure: || 100.0kPa to 100.00MPa&lt;br /&gt;
|-&lt;br /&gt;
| Temperature: || 600K to 100.0kK&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Ingot_(Gold)&amp;diff=8596</id>
		<title>Ingot (Gold)</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Ingot_(Gold)&amp;diff=8596"/>
		<updated>2019-07-07T20:08:58Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: added hashid for MIPS coding and such.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Ingot]]&lt;br /&gt;
&amp;lt;languages /&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
{{Itembox&lt;br /&gt;
 | name        = Ingot (Gold)&lt;br /&gt;
 | image       =  [[File:{{#setmainimage:ItemGoldIngot.png}}]]&lt;br /&gt;
 | stacks      = 50x&lt;br /&gt;
 | createdwith = [[Arc Furnace]], [[Furnace]]&lt;br /&gt;
 | cost        = 1g [[Gold Ore]]&lt;br /&gt;
 | hashid      = 226410516&lt;br /&gt;
}}&lt;br /&gt;
[[File:Gold_ingot.jpg|right|thumb]]&lt;br /&gt;
== Description == &amp;lt;!--T:1--&amp;gt;&lt;br /&gt;
[[Ingot (Gold)]] is created by smelting [[Gold Ore]] in a [[Furnace]] or [[Arc Furnace]]. It is used as the basic ingredient in creating items from various [[:Category:Machines|machines]] .&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Ore_(Nickel)&amp;diff=8595</id>
		<title>Ore (Nickel)</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Ore_(Nickel)&amp;diff=8595"/>
		<updated>2019-07-07T19:53:07Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: added hashid for MIPS coding and such.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;languages /&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
&amp;lt;!--T:1--&amp;gt;&lt;br /&gt;
{{Itembox&lt;br /&gt;
 | name        = Ore (Nickel)&lt;br /&gt;
 | image       =  [[File:ItemNickelOre.png]]&lt;br /&gt;
 | stacks      = 50x&lt;br /&gt;
 | usedwith    = &lt;br /&gt;
*[[Arc Furnace]]&lt;br /&gt;
*[[Furnace]]&lt;br /&gt;
 | hashid      = 1830218956&lt;br /&gt;
}}&lt;br /&gt;
{{Orebox&lt;br /&gt;
 | name  = Ore (Nickel)&lt;br /&gt;
 | image = [[File:Nickel_ore.jpg]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Description == &amp;lt;!--T:2--&amp;gt;&lt;br /&gt;
[[Ore (Nickel)]] is mined throughout the surface and underground of a planet or an asteroid using a [[Mining Drill]].&lt;br /&gt;
&lt;br /&gt;
== Processed == &amp;lt;!--T:3--&amp;gt;&lt;br /&gt;
Nickel Ore is one of ingame [https://stationeers-wiki.com/Main_Page#Ores Ores]. It can be turned into [[Nickel Ingot]] by smelting it in the [[Furnace]] or [[Arc Furnace]]. [[Nickel Ore]] can also be combined with equal amounts of [[Copper Ore]] in the [[Furnace]] to create [[Constantan Ingot]].&lt;br /&gt;
&lt;br /&gt;
Smelting one Nickel Ore produces the following gases:&lt;br /&gt;
{|&lt;br /&gt;
|1 mol&lt;br /&gt;
|[[Pollutant]]&lt;br /&gt;
|-&lt;br /&gt;
|1 mol&lt;br /&gt;
|[[Carbon Dioxide]]&lt;br /&gt;
|-&lt;br /&gt;
|0.5 mol&lt;br /&gt;
|[[Nitrogen]]&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Stacker&amp;diff=8594</id>
		<title>Stacker</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Stacker&amp;diff=8594"/>
		<updated>2019-07-07T02:57:30Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: fixed formatting error&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Machines]]&lt;br /&gt;
{{Itembox&lt;br /&gt;
 | name        = Kit (Stacker)&lt;br /&gt;
 | image       = [[File:ItemKitStacker.png]]&lt;br /&gt;
 | createdwith = [[Autolathe]], [[Fabricator]]&lt;br /&gt;
| cost        = 10g [[Ingot_(Iron)|Iron]], 2g [[Ingot_(Copper)|Copper]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=Description=&lt;br /&gt;
The kit has 3 variations : 2 are the Stacker, with the power/data port on one side or the other. The last variant is the Unloader&lt;br /&gt;
&lt;br /&gt;
=Stacker=&lt;br /&gt;
&lt;br /&gt;
{{Structurebox&lt;br /&gt;
 | name             = Stacker&lt;br /&gt;
 | power_usage      = 5W&lt;br /&gt;
 | placed_with_item = [[Kit (Stacker)]]&lt;br /&gt;
 | placed_on_grid   = Small Grid&lt;br /&gt;
 | decon_with_tool1 = [[Hand Drill]]&lt;br /&gt;
 | item_rec1        = [[Kit (Stacker)]]&lt;br /&gt;
 | slot_0           = Import&lt;br /&gt;
 | slot_1           = Export&lt;br /&gt;
 | slot_2           = Inside Machine&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Used to stack items in a chosen quantity. The stacker holds back the input until the configured quantity can be stacked _or_ until the input item type changes. If the input is bigger than the chosen quantity, the stacker (despite it&#039;s name) splits it.&lt;br /&gt;
&lt;br /&gt;
{{Data Network Header}}&lt;br /&gt;
&lt;br /&gt;
{{Data Parameters}}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Parameter Name !! Data Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| Mode || Integer || &lt;br /&gt;
|-&lt;br /&gt;
| Activate || Boolean || If set to 1, the Stacker will clear its content via its Export Slot&lt;br /&gt;
|-&lt;br /&gt;
| Lock || Boolean || &lt;br /&gt;
|-&lt;br /&gt;
| Setting || Integer || Default is 1.&lt;br /&gt;
|-&lt;br /&gt;
| On || Boolean || &lt;br /&gt;
|-&lt;br /&gt;
| ClearMemory || Integer? || Writing on this Parameter will reset the ExportCount and ImportCount values to zero.&lt;br /&gt;
|-&lt;br /&gt;
| Output || Integer || value of 0 by default. SInce there is only one export slot, this param do nothing.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{{Data Outputs}}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Output Name !! Data Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| Mode || Boolean ||&lt;br /&gt;
|-&lt;br /&gt;
| Lock || Boolean || &lt;br /&gt;
|-&lt;br /&gt;
| ImportCount || Integer || Incremented each time an item stack enter by the Import slot &lt;br /&gt;
|-&lt;br /&gt;
| ExportCount || Integer || Incremented each time an item stack exit by the Export Slot&lt;br /&gt;
|-&lt;br /&gt;
| Error || Boolean ||&lt;br /&gt;
|-&lt;br /&gt;
| Activate || Boolean || 1 if empty, 0 if something is inside the Stacker. When set to 0 The player can use the lever to clear the Stacker&lt;br /&gt;
|-&lt;br /&gt;
| Setting || Integer || Default is 1.&lt;br /&gt;
|-&lt;br /&gt;
| RequiredPower || Integer || In watts. The Stacker require 5W to operate.&lt;br /&gt;
|-&lt;br /&gt;
| PrefabHash || Float || Hash ID of the Stacker.&lt;br /&gt;
|-&lt;br /&gt;
| Power || Boolean ||&lt;br /&gt;
|-&lt;br /&gt;
| Output || Integer || value of 0 by default. SInce there is only one export slot, this param do nothing.&lt;br /&gt;
|-&lt;br /&gt;
| On || Boolean || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
The stacker can only stack things up to the stacking limit of the given item:&lt;br /&gt;
*Ingots can be stacked up to 500.&lt;br /&gt;
*Ore will not stack over 50.&lt;br /&gt;
&lt;br /&gt;
=Unloader=&lt;br /&gt;
&lt;br /&gt;
{{Structurebox&lt;br /&gt;
 | name             = Unloader&lt;br /&gt;
 | power_usage      = 50W&lt;br /&gt;
 | placed_with_item = [[Kit (Stacker)]]&lt;br /&gt;
 | placed_on_grid   = Small Grid&lt;br /&gt;
 | decon_with_tool1 = [[Hand Drill]]&lt;br /&gt;
 | item_rec1        = [[Kit (Stacker)]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The unloader variant will empty the content of a belt/container. It will output everything that is inside, followed by belt/container itself.&lt;br /&gt;
{{Data Network Header}}&lt;br /&gt;
&lt;br /&gt;
{{Data Parameters}}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Parameter Name !! Data Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| Mode || Integer || &lt;br /&gt;
|-&lt;br /&gt;
| Lock || Boolean || &lt;br /&gt;
|-&lt;br /&gt;
| On || Boolean || &lt;br /&gt;
|-&lt;br /&gt;
| ClearMemory || Integer? || Writing on this Parameter will reset the ExportCount and ImportCount values to zero.&lt;br /&gt;
|-&lt;br /&gt;
| Output || Integer || value of 0 by default. SInce there is only one export slot, this param do nothing.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{{Data Outputs}}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Output Name !! Data Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| Power || Boolean ||&lt;br /&gt;
|-&lt;br /&gt;
| Mode || Boolean ||&lt;br /&gt;
|-&lt;br /&gt;
| Error || Boolean ||&lt;br /&gt;
|-&lt;br /&gt;
| Lock || Boolean || &lt;br /&gt;
|-&lt;br /&gt;
| On || Boolean || &lt;br /&gt;
|-&lt;br /&gt;
| RequiredPower || Integer || In watts. The Unloader require 50W to operate.&lt;br /&gt;
|-&lt;br /&gt;
| ExportCount || Integer || Incremented each time an item stack exit by the Export Slot&lt;br /&gt;
|-&lt;br /&gt;
| ImportCount || Integer || Incremented each time an item stack enter by the Import slot &lt;br /&gt;
|-&lt;br /&gt;
| Output || Integer || value of 0 by default. As there is only one export slot, this param does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Template:Structurebox&amp;diff=8593</id>
		<title>Template:Structurebox</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Template:Structurebox&amp;diff=8593"/>
		<updated>2019-07-07T02:27:06Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: Undo revision 8592 by Droxlar (talk) reset formatting.. will need to do more research to figure out why text is showing in red.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox&lt;br /&gt;
 | name     = Structurebox&lt;br /&gt;
&lt;br /&gt;
 | title    = {{{name}}}&lt;br /&gt;
 | image1   = {{{image|}}}&lt;br /&gt;
 | data2    = {{{other|}}}&lt;br /&gt;
&lt;br /&gt;
 | header10 = {{ #if: {{{power_usage|}}}{{{burst_pressure|}}} | Operation }}&lt;br /&gt;
 |  label11 = Power Usage&lt;br /&gt;
 |  data11  = {{{power_usage|}}}&lt;br /&gt;
 |  label12 = Burst Pressure&lt;br /&gt;
 |  data12  = {{{burst_pressure|}}}&lt;br /&gt;
&lt;br /&gt;
 | header20 = Construction&lt;br /&gt;
 |  label21 = Placed with&lt;br /&gt;
 |  data21  = {{{placed_with_item}}}&lt;br /&gt;
 |  label22 = Placed on&lt;br /&gt;
 |  data22  = {{{placed_on_grid}}}&lt;br /&gt;
&lt;br /&gt;
 | header30 = {{ #if: {{{slot_1|}}}{{{slot_2|}}} | Slots }}&lt;br /&gt;
 |  label31 = Slot 0&lt;br /&gt;
 |  data31 = {{{slot_0|}}}&lt;br /&gt;
 |  label32 = Slot 1&lt;br /&gt;
 |  data32 = {{{slot_1|}}}&lt;br /&gt;
 |  label33 = Slot 2&lt;br /&gt;
 |  data33 = {{{slot_2|}}}&lt;br /&gt;
 |  label34 = Slot 3&lt;br /&gt;
 | data34 = {{{slot_3|}}}&lt;br /&gt;
&lt;br /&gt;
 | header40 = {{ #if: {{{stage_image1|}}}{{{const_with_tool1|}}}{{{const_with_item1|}}}{{{decon_with_tool1|}}}{{{item_rec1|}}}&lt;br /&gt;
               | {{Construction stage&lt;br /&gt;
                  | number          = 1&lt;br /&gt;
                  | image           = {{{stage_image1|}}}&lt;br /&gt;
                  | const_with_tool = {{{const_with_tool1|}}}&lt;br /&gt;
                  | const_with_item = {{{const_with_item1|}}}&lt;br /&gt;
                  | decon_with_tool = {{{decon_with_tool1|}}}&lt;br /&gt;
                  | item_rec        = {{{item_rec1|}}}&lt;br /&gt;
                 }}&lt;br /&gt;
              }}&lt;br /&gt;
&lt;br /&gt;
 | header50 = {{ #if: {{{stage_image2|}}}{{{const_with_tool2|}}}{{{const_with_item2|}}}{{{decon_with_tool2|}}}{{{item_rec2|}}}&lt;br /&gt;
               | {{Construction stage&lt;br /&gt;
                  | number          = 2&lt;br /&gt;
                  | image           = {{{stage_image2|}}}&lt;br /&gt;
                  | const_with_tool = {{{const_with_tool2|}}}&lt;br /&gt;
                  | const_with_item = {{{const_with_item2|}}}&lt;br /&gt;
                  | decon_with_tool = {{{decon_with_tool2|}}}&lt;br /&gt;
                  | item_rec        = {{{item_rec2|}}}&lt;br /&gt;
                 }}&lt;br /&gt;
              }}&lt;br /&gt;
&lt;br /&gt;
 | header60 = {{ #if: {{{stage_image3|}}}{{{const_with_tool3|}}}{{{const_with_item3|}}}{{{decon_with_tool3|}}}{{{item_rec3|}}}&lt;br /&gt;
               | {{Construction stage&lt;br /&gt;
                  | number          = 3&lt;br /&gt;
                  | image           = {{{stage_image3|}}}&lt;br /&gt;
                  | const_with_tool = {{{const_with_tool3|}}}&lt;br /&gt;
                  | const_with_item = {{{const_with_item3|}}}&lt;br /&gt;
                  | decon_with_tool = {{{decon_with_tool3|}}}&lt;br /&gt;
                  | item_rec        = {{{item_rec3|}}}&lt;br /&gt;
                 }}&lt;br /&gt;
              }}&lt;br /&gt;
}}&amp;lt;includeonly&amp;gt;[[Category:Structures]]&amp;lt;/includeonly&amp;gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Documentation}}&lt;br /&gt;
&amp;lt;!-- Categories go on the /doc subpage, and interwikis go on Wikidata. --&amp;gt;&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Template:Structurebox&amp;diff=8592</id>
		<title>Template:Structurebox</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Template:Structurebox&amp;diff=8592"/>
		<updated>2019-07-07T02:23:31Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: formatting adjustment&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox&lt;br /&gt;
 | name     = Structurebox&lt;br /&gt;
&lt;br /&gt;
 | title    = {{{name}}}&lt;br /&gt;
 | image1   = {{{image|}}}&lt;br /&gt;
 | data2    = {{{other|}}}&lt;br /&gt;
&lt;br /&gt;
 | header10 = {{ #if: {{{power_usage|}}}{{{burst_pressure|}}} | Operation }}&lt;br /&gt;
 |  label11 = Power Usage&lt;br /&gt;
 |  data11  = {{{power_usage|}}}&lt;br /&gt;
 |  label12 = Burst Pressure&lt;br /&gt;
 |  data12  = {{{burst_pressure|}}}&lt;br /&gt;
&lt;br /&gt;
 | header20 = Construction&lt;br /&gt;
 |  label21 = Placed with&lt;br /&gt;
 |  data21  = {{{placed_with_item}}}&lt;br /&gt;
 |  label22 = Placed on&lt;br /&gt;
 |  data22  = {{{placed_on_grid}}}&lt;br /&gt;
&lt;br /&gt;
 | header30 = {{ #if: {{{slot_1|}}}{{{slot_2|}}} | Slots }}&lt;br /&gt;
 |  label31 = Slot 0&lt;br /&gt;
 |  data31 = {{{slot_0}}}&lt;br /&gt;
 |  label32 = Slot 1&lt;br /&gt;
 |  data32 = {{{slot_1}}}&lt;br /&gt;
 |  label33 = Slot 2&lt;br /&gt;
 |  data33 = {{{slot_2}}}&lt;br /&gt;
 |  label34 = Slot 3&lt;br /&gt;
 | data34 = {{{slot_3}}}&lt;br /&gt;
&lt;br /&gt;
 | header40 = {{ #if: {{{stage_image1|}}}{{{const_with_tool1|}}}{{{const_with_item1|}}}{{{decon_with_tool1|}}}{{{item_rec1|}}}&lt;br /&gt;
               | {{Construction stage&lt;br /&gt;
                  | number          = 1&lt;br /&gt;
                  | image           = {{{stage_image1|}}}&lt;br /&gt;
                  | const_with_tool = {{{const_with_tool1|}}}&lt;br /&gt;
                  | const_with_item = {{{const_with_item1|}}}&lt;br /&gt;
                  | decon_with_tool = {{{decon_with_tool1|}}}&lt;br /&gt;
                  | item_rec        = {{{item_rec1|}}}&lt;br /&gt;
                 }}&lt;br /&gt;
              }}&lt;br /&gt;
&lt;br /&gt;
 | header50 = {{ #if: {{{stage_image2|}}}{{{const_with_tool2|}}}{{{const_with_item2|}}}{{{decon_with_tool2|}}}{{{item_rec2|}}}&lt;br /&gt;
               | {{Construction stage&lt;br /&gt;
                  | number          = 2&lt;br /&gt;
                  | image           = {{{stage_image2|}}}&lt;br /&gt;
                  | const_with_tool = {{{const_with_tool2|}}}&lt;br /&gt;
                  | const_with_item = {{{const_with_item2|}}}&lt;br /&gt;
                  | decon_with_tool = {{{decon_with_tool2|}}}&lt;br /&gt;
                  | item_rec        = {{{item_rec2|}}}&lt;br /&gt;
                 }}&lt;br /&gt;
              }}&lt;br /&gt;
&lt;br /&gt;
 | header60 = {{ #if: {{{stage_image3|}}}{{{const_with_tool3|}}}{{{const_with_item3|}}}{{{decon_with_tool3|}}}{{{item_rec3|}}}&lt;br /&gt;
               | {{Construction stage&lt;br /&gt;
                  | number          = 3&lt;br /&gt;
                  | image           = {{{stage_image3|}}}&lt;br /&gt;
                  | const_with_tool = {{{const_with_tool3|}}}&lt;br /&gt;
                  | const_with_item = {{{const_with_item3|}}}&lt;br /&gt;
                  | decon_with_tool = {{{decon_with_tool3|}}}&lt;br /&gt;
                  | item_rec        = {{{item_rec3|}}}&lt;br /&gt;
                 }}&lt;br /&gt;
              }}&lt;br /&gt;
}}&amp;lt;includeonly&amp;gt;[[Category:Structures]]&amp;lt;/includeonly&amp;gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Documentation}}&lt;br /&gt;
&amp;lt;!-- Categories go on the /doc subpage, and interwikis go on Wikidata. --&amp;gt;&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Stacker&amp;diff=8591</id>
		<title>Stacker</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Stacker&amp;diff=8591"/>
		<updated>2019-07-07T02:22:09Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: added slot information, minor grammatical corrections&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Machines]]&lt;br /&gt;
{{Itembox&lt;br /&gt;
 | name        = Kit (Stacker)&lt;br /&gt;
 | image       = [[File:ItemKitStacker.png]]&lt;br /&gt;
 | createdwith = [[Autolathe]], [[Fabricator]]&lt;br /&gt;
| cost        = 10g [[Ingot_(Iron)|Iron]], 2g [[Ingot_(Copper)|Copper]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=Description=&lt;br /&gt;
The kit has 3 variations : 2 are the Stacker, with the power/data port on one side or the other. The last variant is the Unloader&lt;br /&gt;
&lt;br /&gt;
=Stacker=&lt;br /&gt;
&lt;br /&gt;
{{Structurebox&lt;br /&gt;
 | name             = Stacker&lt;br /&gt;
 | power_usage      = 5W&lt;br /&gt;
 | placed_with_item = [[Kit (Stacker)]]&lt;br /&gt;
 | placed_on_grid   = Small Grid&lt;br /&gt;
 | decon_with_tool1 = [[Hand Drill]]&lt;br /&gt;
 | item_rec1        = [[Kit (Stacker)]]&lt;br /&gt;
 | slot_0           = [[Import]]&lt;br /&gt;
 | slot_1           = [[Export]]&lt;br /&gt;
 | slot_2           = [[Inside Machine]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Used to stack items in a chosen quantity. The stacker holds back the input until the configured quantity can be stacked _or_ until the input item type changes. If the input is bigger than the chosen quantity, the stacker (despite it&#039;s name) splits it.&lt;br /&gt;
&lt;br /&gt;
{{Data Network Header}}&lt;br /&gt;
&lt;br /&gt;
{{Data Parameters}}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Parameter Name !! Data Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| Mode || Integer || &lt;br /&gt;
|-&lt;br /&gt;
| Activate || Boolean || If set to 1, the Stacker will clear its content via its Export Slot&lt;br /&gt;
|-&lt;br /&gt;
| Lock || Boolean || &lt;br /&gt;
|-&lt;br /&gt;
| Setting || Integer || Default is 1.&lt;br /&gt;
|-&lt;br /&gt;
| On || Boolean || &lt;br /&gt;
|-&lt;br /&gt;
| ClearMemory || Integer? || Writing on this Parameter will reset the ExportCount and ImportCount values to zero.&lt;br /&gt;
|-&lt;br /&gt;
| Output || Integer || value of 0 by default. SInce there is only one export slot, this param do nothing.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{{Data Outputs}}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Output Name !! Data Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| Mode || Boolean ||&lt;br /&gt;
|-&lt;br /&gt;
| Lock || Boolean || &lt;br /&gt;
|-&lt;br /&gt;
| ImportCount || Integer || Incremented each time an item stack enter by the Import slot &lt;br /&gt;
|-&lt;br /&gt;
| ExportCount || Integer || Incremented each time an item stack exit by the Export Slot&lt;br /&gt;
|-&lt;br /&gt;
| Error || Boolean ||&lt;br /&gt;
|-&lt;br /&gt;
| Activate || Boolean || 1 if empty, 0 if something is inside the Stacker. When set to 0 The player can use the lever to clear the Stacker&lt;br /&gt;
|-&lt;br /&gt;
| Setting || Integer || Default is 1.&lt;br /&gt;
|-&lt;br /&gt;
| RequiredPower || Integer || In watts. The Stacker require 5W to operate.&lt;br /&gt;
|-&lt;br /&gt;
| PrefabHash || Float || Hash ID of the Stacker.&lt;br /&gt;
|-&lt;br /&gt;
| Power || Boolean ||&lt;br /&gt;
|-&lt;br /&gt;
| Output || Integer || value of 0 by default. SInce there is only one export slot, this param do nothing.&lt;br /&gt;
|-&lt;br /&gt;
| On || Boolean || &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
The stacker can only stack things up to the stacking limit of the given item:&lt;br /&gt;
*Ingots can be stacked up to 500.&lt;br /&gt;
*Ore will not stack over 50.&lt;br /&gt;
&lt;br /&gt;
=Unloader=&lt;br /&gt;
&lt;br /&gt;
{{Structurebox&lt;br /&gt;
 | name             = Unloader&lt;br /&gt;
 | power_usage      = 50W&lt;br /&gt;
 | placed_with_item = [[Kit (Stacker)]]&lt;br /&gt;
 | placed_on_grid   = Small Grid&lt;br /&gt;
 | decon_with_tool1 = [[Hand Drill]]&lt;br /&gt;
 | item_rec1        = [[Kit (Stacker)]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The unloader variant will empty the content of a belt/container. It will output everything that is inside, followed by belt/container itself.&lt;br /&gt;
{{Data Network Header}}&lt;br /&gt;
&lt;br /&gt;
{{Data Parameters}}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Parameter Name !! Data Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| Mode || Integer || &lt;br /&gt;
|-&lt;br /&gt;
| Lock || Boolean || &lt;br /&gt;
|-&lt;br /&gt;
| On || Boolean || &lt;br /&gt;
|-&lt;br /&gt;
| ClearMemory || Integer? || Writing on this Parameter will reset the ExportCount and ImportCount values to zero.&lt;br /&gt;
|-&lt;br /&gt;
| Output || Integer || value of 0 by default. SInce there is only one export slot, this param do nothing.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{{Data Outputs}}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Output Name !! Data Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| Power || Boolean ||&lt;br /&gt;
|-&lt;br /&gt;
| Mode || Boolean ||&lt;br /&gt;
|-&lt;br /&gt;
| Error || Boolean ||&lt;br /&gt;
|-&lt;br /&gt;
| Lock || Boolean || &lt;br /&gt;
|-&lt;br /&gt;
| On || Boolean || &lt;br /&gt;
|-&lt;br /&gt;
| RequiredPower || Integer || In watts. The Unloader require 50W to operate.&lt;br /&gt;
|-&lt;br /&gt;
| ExportCount || Integer || Incremented each time an item stack exit by the Export Slot&lt;br /&gt;
|-&lt;br /&gt;
| ImportCount || Integer || Incremented each time an item stack enter by the Import slot &lt;br /&gt;
|-&lt;br /&gt;
| Output || Integer || value of 0 by default. As there is only one export slot, this param does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Template:Structurebox&amp;diff=8590</id>
		<title>Template:Structurebox</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Template:Structurebox&amp;diff=8590"/>
		<updated>2019-07-07T02:19:04Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: Adjusted numbering to accommodate start from 0.   Maybe slots are the same on all items and this should be under MIPS instead?&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox&lt;br /&gt;
 | name     = Structurebox&lt;br /&gt;
&lt;br /&gt;
 | title    = {{{name}}}&lt;br /&gt;
 | image1   = {{{image|}}}&lt;br /&gt;
 | data2    = {{{other|}}}&lt;br /&gt;
&lt;br /&gt;
 | header10 = {{ #if: {{{power_usage|}}}{{{burst_pressure|}}} | Operation }}&lt;br /&gt;
 |  label11 = Power Usage&lt;br /&gt;
 |  data11  = {{{power_usage|}}}&lt;br /&gt;
 |  label12 = Burst Pressure&lt;br /&gt;
 |  data12  = {{{burst_pressure|}}}&lt;br /&gt;
&lt;br /&gt;
 | header20 = Construction&lt;br /&gt;
 |  label21 = Placed with&lt;br /&gt;
 |  data21  = {{{placed_with_item}}}&lt;br /&gt;
 |  label22 = Placed on&lt;br /&gt;
 |  data22  = {{{placed_on_grid}}}&lt;br /&gt;
&lt;br /&gt;
 | header30 = {{ #if: {{{slot_1|}}}{{{slot_2|}}} | Slots }}&lt;br /&gt;
 |  label31 = Slot 0&lt;br /&gt;
 |  data31 = {{{slot_0|}}}&lt;br /&gt;
 |  label32 = Slot 1&lt;br /&gt;
 |  data32 = {{{slot_1|}}}&lt;br /&gt;
 |  label33 = Slot 2&lt;br /&gt;
 |  data33 = {{{slot_2|}}}&lt;br /&gt;
 |  label34 = Slot 3&lt;br /&gt;
 | data34 = {{{slot_3|}}}&lt;br /&gt;
&lt;br /&gt;
 | header40 = {{ #if: {{{stage_image1|}}}{{{const_with_tool1|}}}{{{const_with_item1|}}}{{{decon_with_tool1|}}}{{{item_rec1|}}}&lt;br /&gt;
               | {{Construction stage&lt;br /&gt;
                  | number          = 1&lt;br /&gt;
                  | image           = {{{stage_image1|}}}&lt;br /&gt;
                  | const_with_tool = {{{const_with_tool1|}}}&lt;br /&gt;
                  | const_with_item = {{{const_with_item1|}}}&lt;br /&gt;
                  | decon_with_tool = {{{decon_with_tool1|}}}&lt;br /&gt;
                  | item_rec        = {{{item_rec1|}}}&lt;br /&gt;
                 }}&lt;br /&gt;
              }}&lt;br /&gt;
&lt;br /&gt;
 | header50 = {{ #if: {{{stage_image2|}}}{{{const_with_tool2|}}}{{{const_with_item2|}}}{{{decon_with_tool2|}}}{{{item_rec2|}}}&lt;br /&gt;
               | {{Construction stage&lt;br /&gt;
                  | number          = 2&lt;br /&gt;
                  | image           = {{{stage_image2|}}}&lt;br /&gt;
                  | const_with_tool = {{{const_with_tool2|}}}&lt;br /&gt;
                  | const_with_item = {{{const_with_item2|}}}&lt;br /&gt;
                  | decon_with_tool = {{{decon_with_tool2|}}}&lt;br /&gt;
                  | item_rec        = {{{item_rec2|}}}&lt;br /&gt;
                 }}&lt;br /&gt;
              }}&lt;br /&gt;
&lt;br /&gt;
 | header60 = {{ #if: {{{stage_image3|}}}{{{const_with_tool3|}}}{{{const_with_item3|}}}{{{decon_with_tool3|}}}{{{item_rec3|}}}&lt;br /&gt;
               | {{Construction stage&lt;br /&gt;
                  | number          = 3&lt;br /&gt;
                  | image           = {{{stage_image3|}}}&lt;br /&gt;
                  | const_with_tool = {{{const_with_tool3|}}}&lt;br /&gt;
                  | const_with_item = {{{const_with_item3|}}}&lt;br /&gt;
                  | decon_with_tool = {{{decon_with_tool3|}}}&lt;br /&gt;
                  | item_rec        = {{{item_rec3|}}}&lt;br /&gt;
                 }}&lt;br /&gt;
              }}&lt;br /&gt;
}}&amp;lt;includeonly&amp;gt;[[Category:Structures]]&amp;lt;/includeonly&amp;gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Documentation}}&lt;br /&gt;
&amp;lt;!-- Categories go on the /doc subpage, and interwikis go on Wikidata. --&amp;gt;&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Template:Structurebox&amp;diff=8589</id>
		<title>Template:Structurebox</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Template:Structurebox&amp;diff=8589"/>
		<updated>2019-07-07T01:38:30Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: Trouble-shooting data not hiding when empty.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox&lt;br /&gt;
 | name     = Structurebox&lt;br /&gt;
&lt;br /&gt;
 | title    = {{{name}}}&lt;br /&gt;
 | image1   = {{{image|}}}&lt;br /&gt;
 | data2    = {{{other|}}}&lt;br /&gt;
&lt;br /&gt;
 | header10 = {{ #if: {{{power_usage|}}}{{{burst_pressure|}}} | Operation }}&lt;br /&gt;
 |  label11 = Power Usage&lt;br /&gt;
 |  data11  = {{{power_usage|}}}&lt;br /&gt;
 |  label12 = Burst Pressure&lt;br /&gt;
 |  data12  = {{{burst_pressure|}}}&lt;br /&gt;
&lt;br /&gt;
 | header20 = Construction&lt;br /&gt;
 |  label21 = Placed with&lt;br /&gt;
 |  data21  = {{{placed_with_item}}}&lt;br /&gt;
 |  label22 = Placed on&lt;br /&gt;
 |  data22  = {{{placed_on_grid}}}&lt;br /&gt;
&lt;br /&gt;
 | header30 = {{ #if: {{{slot_1|}}}{{{slot_2|}}} | Slots }}&lt;br /&gt;
 |  label31 = Slot 1&lt;br /&gt;
 |  data31 = {{{slot_1|}}}&lt;br /&gt;
 |  label32 = Slot 2&lt;br /&gt;
 |  data32 = {{{slot_2|}}}&lt;br /&gt;
 |  label33 = Slot 3&lt;br /&gt;
 |  data33 = {{{slot_3|}}}&lt;br /&gt;
 |  label34 = Slot 4&lt;br /&gt;
 | data34 = {{{slot_4|}}}&lt;br /&gt;
&lt;br /&gt;
 | header40 = {{ #if: {{{stage_image1|}}}{{{const_with_tool1|}}}{{{const_with_item1|}}}{{{decon_with_tool1|}}}{{{item_rec1|}}}&lt;br /&gt;
               | {{Construction stage&lt;br /&gt;
                  | number          = 1&lt;br /&gt;
                  | image           = {{{stage_image1|}}}&lt;br /&gt;
                  | const_with_tool = {{{const_with_tool1|}}}&lt;br /&gt;
                  | const_with_item = {{{const_with_item1|}}}&lt;br /&gt;
                  | decon_with_tool = {{{decon_with_tool1|}}}&lt;br /&gt;
                  | item_rec        = {{{item_rec1|}}}&lt;br /&gt;
                 }}&lt;br /&gt;
              }}&lt;br /&gt;
&lt;br /&gt;
 | header50 = {{ #if: {{{stage_image2|}}}{{{const_with_tool2|}}}{{{const_with_item2|}}}{{{decon_with_tool2|}}}{{{item_rec2|}}}&lt;br /&gt;
               | {{Construction stage&lt;br /&gt;
                  | number          = 2&lt;br /&gt;
                  | image           = {{{stage_image2|}}}&lt;br /&gt;
                  | const_with_tool = {{{const_with_tool2|}}}&lt;br /&gt;
                  | const_with_item = {{{const_with_item2|}}}&lt;br /&gt;
                  | decon_with_tool = {{{decon_with_tool2|}}}&lt;br /&gt;
                  | item_rec        = {{{item_rec2|}}}&lt;br /&gt;
                 }}&lt;br /&gt;
              }}&lt;br /&gt;
&lt;br /&gt;
 | header60 = {{ #if: {{{stage_image3|}}}{{{const_with_tool3|}}}{{{const_with_item3|}}}{{{decon_with_tool3|}}}{{{item_rec3|}}}&lt;br /&gt;
               | {{Construction stage&lt;br /&gt;
                  | number          = 3&lt;br /&gt;
                  | image           = {{{stage_image3|}}}&lt;br /&gt;
                  | const_with_tool = {{{const_with_tool3|}}}&lt;br /&gt;
                  | const_with_item = {{{const_with_item3|}}}&lt;br /&gt;
                  | decon_with_tool = {{{decon_with_tool3|}}}&lt;br /&gt;
                  | item_rec        = {{{item_rec3|}}}&lt;br /&gt;
                 }}&lt;br /&gt;
              }}&lt;br /&gt;
}}&amp;lt;includeonly&amp;gt;[[Category:Structures]]&amp;lt;/includeonly&amp;gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Documentation}}&lt;br /&gt;
&amp;lt;!-- Categories go on the /doc subpage, and interwikis go on Wikidata. --&amp;gt;&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Template:Structurebox&amp;diff=8588</id>
		<title>Template:Structurebox</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Template:Structurebox&amp;diff=8588"/>
		<updated>2019-07-07T01:34:32Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: formatting adjustment.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox&lt;br /&gt;
 | name     = Structurebox&lt;br /&gt;
&lt;br /&gt;
 | title    = {{{name}}}&lt;br /&gt;
 | image1   = {{{image|}}}&lt;br /&gt;
 | data2    = {{{other|}}}&lt;br /&gt;
&lt;br /&gt;
 | header10 = {{ #if: {{{power_usage|}}}{{{burst_pressure|}}} | Operation }}&lt;br /&gt;
 |  label11 = Power Usage&lt;br /&gt;
 |  data11  = {{{power_usage|}}}&lt;br /&gt;
 |  label12 = Burst Pressure&lt;br /&gt;
 |  data12  = {{{burst_pressure|}}}&lt;br /&gt;
&lt;br /&gt;
 | header20 = Construction&lt;br /&gt;
 |  label21 = Placed with&lt;br /&gt;
 |  data21  = {{{placed_with_item}}}&lt;br /&gt;
 |  label22 = Placed on&lt;br /&gt;
 |  data22  = {{{placed_on_grid}}}&lt;br /&gt;
&lt;br /&gt;
 | header30 = {{ #if: {{{slot_1|}}} | Slots }}&lt;br /&gt;
 |  label31 = Slot 1&lt;br /&gt;
 |  data31 = {{{slot_1|}}}&lt;br /&gt;
 |  label32 = Slot 2&lt;br /&gt;
 |  data32 = {{{slot_2|}}}&lt;br /&gt;
 |  label33 = Slot 3&lt;br /&gt;
 |  data33 = {{{slot_3|}}}&lt;br /&gt;
 |  label34 = Slot 4&lt;br /&gt;
 | data34 = {{{slot_4|}}}&lt;br /&gt;
&lt;br /&gt;
 | header40 = {{ #if: {{{stage_image1|}}}{{{const_with_tool1|}}}{{{const_with_item1|}}}{{{decon_with_tool1|}}}{{{item_rec1|}}}&lt;br /&gt;
               | {{Construction stage&lt;br /&gt;
                  | number          = 1&lt;br /&gt;
                  | image           = {{{stage_image1|}}}&lt;br /&gt;
                  | const_with_tool = {{{const_with_tool1|}}}&lt;br /&gt;
                  | const_with_item = {{{const_with_item1|}}}&lt;br /&gt;
                  | decon_with_tool = {{{decon_with_tool1|}}}&lt;br /&gt;
                  | item_rec        = {{{item_rec1|}}}&lt;br /&gt;
                 }}&lt;br /&gt;
              }}&lt;br /&gt;
&lt;br /&gt;
 | header50 = {{ #if: {{{stage_image2|}}}{{{const_with_tool2|}}}{{{const_with_item2|}}}{{{decon_with_tool2|}}}{{{item_rec2|}}}&lt;br /&gt;
               | {{Construction stage&lt;br /&gt;
                  | number          = 2&lt;br /&gt;
                  | image           = {{{stage_image2|}}}&lt;br /&gt;
                  | const_with_tool = {{{const_with_tool2|}}}&lt;br /&gt;
                  | const_with_item = {{{const_with_item2|}}}&lt;br /&gt;
                  | decon_with_tool = {{{decon_with_tool2|}}}&lt;br /&gt;
                  | item_rec        = {{{item_rec2|}}}&lt;br /&gt;
                 }}&lt;br /&gt;
              }}&lt;br /&gt;
&lt;br /&gt;
 | header60 = {{ #if: {{{stage_image3|}}}{{{const_with_tool3|}}}{{{const_with_item3|}}}{{{decon_with_tool3|}}}{{{item_rec3|}}}&lt;br /&gt;
               | {{Construction stage&lt;br /&gt;
                  | number          = 3&lt;br /&gt;
                  | image           = {{{stage_image3|}}}&lt;br /&gt;
                  | const_with_tool = {{{const_with_tool3|}}}&lt;br /&gt;
                  | const_with_item = {{{const_with_item3|}}}&lt;br /&gt;
                  | decon_with_tool = {{{decon_with_tool3|}}}&lt;br /&gt;
                  | item_rec        = {{{item_rec3|}}}&lt;br /&gt;
                 }}&lt;br /&gt;
              }}&lt;br /&gt;
}}&amp;lt;includeonly&amp;gt;[[Category:Structures]]&amp;lt;/includeonly&amp;gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Documentation}}&lt;br /&gt;
&amp;lt;!-- Categories go on the /doc subpage, and interwikis go on Wikidata. --&amp;gt;&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Template:Structurebox&amp;diff=8587</id>
		<title>Template:Structurebox</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Template:Structurebox&amp;diff=8587"/>
		<updated>2019-07-07T01:28:14Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: Added slot category for slot reader/writers and mips scripting.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox&lt;br /&gt;
 | name     = Structurebox&lt;br /&gt;
&lt;br /&gt;
 | title    = {{{name}}}&lt;br /&gt;
 | image1   = {{{image|}}}&lt;br /&gt;
 | data2    = {{{other|}}}&lt;br /&gt;
&lt;br /&gt;
 | header10 = {{ #if: {{{power_usage|}}}{{{burst_pressure|}}} | Operation }}&lt;br /&gt;
 |  label11 = Power Usage&lt;br /&gt;
 |  data11  = {{{power_usage|}}}&lt;br /&gt;
 |  label12 = Burst Pressure&lt;br /&gt;
 |  data12  = {{{burst_pressure|}}}&lt;br /&gt;
&lt;br /&gt;
 | header20 = Construction&lt;br /&gt;
 |  label21 = Placed with&lt;br /&gt;
 |  data21  = {{{placed_with_item}}}&lt;br /&gt;
 |  label22 = Placed on&lt;br /&gt;
 |  data22  = {{{placed_on_grid}}}&lt;br /&gt;
&lt;br /&gt;
 | header30 = Slots&lt;br /&gt;
 | label31 = Slot 1&lt;br /&gt;
 | data31 = {{{Slot_1}}}&lt;br /&gt;
 | label32 = Slot 2&lt;br /&gt;
 | data32 = {{{Slot_2}}}&lt;br /&gt;
 | label33 = Slot 3&lt;br /&gt;
 | data33 = {{{Slot_3}}}&lt;br /&gt;
 | label34 = Slot 4&lt;br /&gt;
 | data34 = {{{Slot_4}}}&lt;br /&gt;
&lt;br /&gt;
 | header40 = {{ #if: {{{stage_image1|}}}{{{const_with_tool1|}}}{{{const_with_item1|}}}{{{decon_with_tool1|}}}{{{item_rec1|}}}&lt;br /&gt;
               | {{Construction stage&lt;br /&gt;
                  | number          = 1&lt;br /&gt;
                  | image           = {{{stage_image1|}}}&lt;br /&gt;
                  | const_with_tool = {{{const_with_tool1|}}}&lt;br /&gt;
                  | const_with_item = {{{const_with_item1|}}}&lt;br /&gt;
                  | decon_with_tool = {{{decon_with_tool1|}}}&lt;br /&gt;
                  | item_rec        = {{{item_rec1|}}}&lt;br /&gt;
                 }}&lt;br /&gt;
              }}&lt;br /&gt;
&lt;br /&gt;
 | header50 = {{ #if: {{{stage_image2|}}}{{{const_with_tool2|}}}{{{const_with_item2|}}}{{{decon_with_tool2|}}}{{{item_rec2|}}}&lt;br /&gt;
               | {{Construction stage&lt;br /&gt;
                  | number          = 2&lt;br /&gt;
                  | image           = {{{stage_image2|}}}&lt;br /&gt;
                  | const_with_tool = {{{const_with_tool2|}}}&lt;br /&gt;
                  | const_with_item = {{{const_with_item2|}}}&lt;br /&gt;
                  | decon_with_tool = {{{decon_with_tool2|}}}&lt;br /&gt;
                  | item_rec        = {{{item_rec2|}}}&lt;br /&gt;
                 }}&lt;br /&gt;
              }}&lt;br /&gt;
&lt;br /&gt;
 | header60 = {{ #if: {{{stage_image3|}}}{{{const_with_tool3|}}}{{{const_with_item3|}}}{{{decon_with_tool3|}}}{{{item_rec3|}}}&lt;br /&gt;
               | {{Construction stage&lt;br /&gt;
                  | number          = 3&lt;br /&gt;
                  | image           = {{{stage_image3|}}}&lt;br /&gt;
                  | const_with_tool = {{{const_with_tool3|}}}&lt;br /&gt;
                  | const_with_item = {{{const_with_item3|}}}&lt;br /&gt;
                  | decon_with_tool = {{{decon_with_tool3|}}}&lt;br /&gt;
                  | item_rec        = {{{item_rec3|}}}&lt;br /&gt;
                 }}&lt;br /&gt;
              }}&lt;br /&gt;
}}&amp;lt;includeonly&amp;gt;[[Category:Structures]]&amp;lt;/includeonly&amp;gt;&amp;lt;noinclude&amp;gt;&lt;br /&gt;
{{Documentation}}&lt;br /&gt;
&amp;lt;!-- Categories go on the /doc subpage, and interwikis go on Wikidata. --&amp;gt;&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=IC_Housing&amp;diff=7725</id>
		<title>IC Housing</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=IC_Housing&amp;diff=7725"/>
		<updated>2018-10-23T21:39:39Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: added images, power usage, grid placement, and decon tool.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Circuits]]&lt;br /&gt;
&amp;lt;languages/&amp;gt;&lt;br /&gt;
&amp;lt;translate&amp;gt;&lt;br /&gt;
{{Itembox&lt;br /&gt;
 | name        = Kit (IC Housing)&lt;br /&gt;
 | image       = [[File:Kit(IC10).jpg|thumb|Kit (IC Housing)]]&lt;br /&gt;
 | createdwith = &lt;br /&gt;
 | cost        = &lt;br /&gt;
 | stacks      = &lt;br /&gt;
}}&lt;br /&gt;
{{Structurebox&lt;br /&gt;
 | name             = IC Housing&lt;br /&gt;
 | image            = [[File:Integrated Circuit (IC10) Housingb.jpg|thumb|Integrated Circuit (IC10) Housing]]&lt;br /&gt;
 | power_usage      = 50W&lt;br /&gt;
 | placed_with_item = &lt;br /&gt;
 | placed_on_grid   = Small grid, On Frames&lt;br /&gt;
 | const_with_item1 = 	&lt;br /&gt;
 | decon_with_tool1 = 	[[Hand Drill]]&lt;br /&gt;
 | item_rec1        = &lt;br /&gt;
 | const_with_item2 = &lt;br /&gt;
 | item_rec2        = &lt;br /&gt;
 | decon_with_tool3 = &lt;br /&gt;
 | item_rec3        = &lt;br /&gt;
}}&lt;br /&gt;
Holds an [[Integrated_Circuit_(IC10)|integrated circuit]].&lt;br /&gt;
&lt;br /&gt;
{{Data Network Header}}&lt;br /&gt;
&lt;br /&gt;
{{Data Parameters}}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Parameter Name !! Data Type !! Description&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{{Data Outputs}}&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Output Name !! Data Type !! Description&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/translate&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=File:Kit(IC10).jpg&amp;diff=7724</id>
		<title>File:Kit(IC10).jpg</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=File:Kit(IC10).jpg&amp;diff=7724"/>
		<updated>2018-10-23T21:38:59Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Kit to build integrated chip (IC10) housing.&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=File:Integrated_Circuit_(IC10)_Housingb.jpg&amp;diff=7723</id>
		<title>File:Integrated Circuit (IC10) Housingb.jpg</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=File:Integrated_Circuit_(IC10)_Housingb.jpg&amp;diff=7723"/>
		<updated>2018-10-23T21:31:09Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Integrated Circuit (IC10) Housing&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=File:Integrated_Circuit_(IC10)_Housing.jpg&amp;diff=7721</id>
		<title>File:Integrated Circuit (IC10) Housing.jpg</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=File:Integrated_Circuit_(IC10)_Housing.jpg&amp;diff=7721"/>
		<updated>2018-10-23T21:25:33Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;An empty IC10 Housing&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=Logic_Processor&amp;diff=7710</id>
		<title>Logic Processor</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=Logic_Processor&amp;diff=7710"/>
		<updated>2018-10-23T20:56:47Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: migrated data toward StructureBox template, added power usage data, re-ordered listing to correspond with in game sequence&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Circuits]]&lt;br /&gt;
{{Structurebox&lt;br /&gt;
 | name             = Math Unit&lt;br /&gt;
 | image            = [[File:MathUnit.png|Logic Processor Variation: Math Unit]]&lt;br /&gt;
 | power_usage      = 25W&lt;br /&gt;
 | placed_with_item = [[Kit (Logic Processor)]]&lt;br /&gt;
 | placed_on_grid   = Small Grid, On Frames&lt;br /&gt;
 | decon_with_tool1 = [[Hand Drill]]&lt;br /&gt;
}}&lt;br /&gt;
{{Structurebox&lt;br /&gt;
 | name             = Compare Unit&lt;br /&gt;
 | image            = [[File:CompareUnit.png|Logic Processor Variant: Compare Unit]]&lt;br /&gt;
 | power_usage      = 25W&lt;br /&gt;
 | placed_with_item = [[Kit (Logic Processor)]]&lt;br /&gt;
 | placed_on_grid   = Small Grid, On Frames&lt;br /&gt;
 | decon_with_tool1 = [[Hand Drill]]&lt;br /&gt;
}}&lt;br /&gt;
{{Structurebox&lt;br /&gt;
 | name             = Select Unit&lt;br /&gt;
 | image            = [[File:SelectUnit.png|Logic Processor Variant: Select Unit]]&lt;br /&gt;
 | power_usage      = 25W&lt;br /&gt;
 | placed_with_item = [[Kit (Logic Processor)]]&lt;br /&gt;
 | placed_on_grid   = Small Grid, On Frames&lt;br /&gt;
 | decon_with_tool1 = [[Hand Drill]]&lt;br /&gt;
}}&lt;br /&gt;
{{Structurebox&lt;br /&gt;
 | name             = Min/Max Unit&lt;br /&gt;
 | image            = [[File:MinMaxUnit.png|Logic Processor Variation: Min/Max Unit]]&lt;br /&gt;
 | power_usage      = 25W&lt;br /&gt;
 | placed_with_item = [[Kit (Logic Processor)]]&lt;br /&gt;
 | placed_on_grid   = Small Grid, On Frames&lt;br /&gt;
 | decon_with_tool1 = [[Hand Drill]]&lt;br /&gt;
}}&lt;br /&gt;
{{Structurebox&lt;br /&gt;
 | name             = Unary Math Unit&lt;br /&gt;
 | image            = [[File:MathUnary.png|Logic Processor Variation: Unary Math Unit]]&lt;br /&gt;
&lt;br /&gt;
 | power_usage      = 25W&lt;br /&gt;
 | placed_with_item = [[Kit (Logic Processor)]]&lt;br /&gt;
 | placed_on_grid   = Small Grid, On Frames&lt;br /&gt;
 | decon_with_tool1 = [[Hand Drill]]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
The Logic Processor is a multi-purpose Logic Circuit unit that has variants, all related to some mathematical operation.&lt;br /&gt;
&lt;br /&gt;
== Math Unit ==&lt;br /&gt;
=== Connectors ===&lt;br /&gt;
&lt;br /&gt;
* Top: Power&lt;br /&gt;
* Left: Input 1&lt;br /&gt;
* Right: Input 2&lt;br /&gt;
* Bottom: Output&lt;br /&gt;
&lt;br /&gt;
=== Screws (options) ===&lt;br /&gt;
&lt;br /&gt;
* Left: Input 1 Selector. Click with screwdriver to select the &amp;quot;left&amp;quot; operand&lt;br /&gt;
* Right: Input 2 Selector. Click with screwdriver to select the &amp;quot;right&amp;quot; operand&lt;br /&gt;
* Bottom: Operation Selector. Click with screwdriver to select what operation to run on the 2 inputs.&lt;br /&gt;
&lt;br /&gt;
=== Available Operations ===&lt;br /&gt;
&lt;br /&gt;
* Add: Adds the two inputs together. (output = i1 + i2)&lt;br /&gt;
* Subtract: Substract the right operand from the left one. (output: i1 - i2)&lt;br /&gt;
* Multiply: Multiplies the two inputs (output = i1 x i2)&lt;br /&gt;
* Divide: Divides the left operand by the right operand (output = i1 / i2)&lt;br /&gt;
* Mod: Runs the modulo function such that output = i1 % i2, where the output is the remainder of the division of the left operand by the right operand.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Compare Unit ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Connectors ===&lt;br /&gt;
&lt;br /&gt;
* Top: Power&lt;br /&gt;
* Left: Input 1&lt;br /&gt;
* Right: Input 2&lt;br /&gt;
* Bottom: Output&lt;br /&gt;
&lt;br /&gt;
=== Screws (options) ===&lt;br /&gt;
&lt;br /&gt;
* Bottom Left: Input 1 Selector. Click with screwdriver to select the &amp;quot;left&amp;quot; operand&lt;br /&gt;
* Bottom Right: Input 2 Selector. Click with screwdriver to select the &amp;quot;right&amp;quot; operand&lt;br /&gt;
* Bottom Center: Operation Selector. Click with screwdriver to select what operation to run on the 2 inputs.&lt;br /&gt;
&lt;br /&gt;
=== Available Operations ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; This is a floating point comparison and is very precise!&lt;br /&gt;
&lt;br /&gt;
* Equals: Outputs 1 (true) if Input 1 is exactly equal to Input 2, otherwise outputs 0 (false).&lt;br /&gt;
* NotEquals: Outputs 1 (true) if Input 1 has a different value than Input 2, otherwise outputs 0 (false).&lt;br /&gt;
* Greater: Outputs 1 (true) if Input 1 is greater than Input 2, otherwise outputs 0 (false).&lt;br /&gt;
* Lesser: Outputs 1 (true) if Input 1 is smaller/lesser than Input 2, otherwise outputs 0 (false).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Select Unit == &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Connectors ===&lt;br /&gt;
&lt;br /&gt;
* Top: Power and Selector Input&lt;br /&gt;
* Left: Input 1&lt;br /&gt;
* Right: Input 2&lt;br /&gt;
* Bottom: Output&lt;br /&gt;
&lt;br /&gt;
=== Screws (options) ===&lt;br /&gt;
&lt;br /&gt;
* Top: Selector Input. Use Screwdriver to select what input is used to flip the selection. This should usually be a unit that outputs a true/false value (0 for false, 1 for true), such as a Logic Compare unit.&lt;br /&gt;
* Bottom Left: Input 1 Selector. Use Screwdriver to select what value to use when the Selector Input value is 0 (false).&lt;br /&gt;
* Bottom Right: Input 2 Selector. Use Screwdriver to select what value to use when the Selector Input value is 1 (true).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Min/Max Unit ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Connectors ===&lt;br /&gt;
&lt;br /&gt;
* Top: Power&lt;br /&gt;
* Left: Input 1&lt;br /&gt;
* Right: Input 2&lt;br /&gt;
* Bottom: Output&lt;br /&gt;
&lt;br /&gt;
=== Screws (options) ===&lt;br /&gt;
&lt;br /&gt;
* Bottom Left: Input 1 Selector. Click with screwdriver to select the &amp;quot;left&amp;quot; operand&lt;br /&gt;
* Bottom Right: Input 2 Selector. Click with screwdriver to select the &amp;quot;right&amp;quot; operand&lt;br /&gt;
* Bottom Center: Operation Selector. Click with screwdriver to select what operation to run on the 2 inputs.&lt;br /&gt;
&lt;br /&gt;
=== Available Operations ===&lt;br /&gt;
&lt;br /&gt;
* Less: &#039;&#039;&#039;Outputs Input 1 if Input 1 is less than Input 2, otherwise outputs Input 2&#039;&#039;&#039;&lt;br /&gt;
* Greater: &#039;&#039;&#039;Outputs Input 1 if Input 1 is greater than Input 2, otherwise outputs Input 2&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Unary Math Unit ==&lt;br /&gt;
&lt;br /&gt;
=== Connectors ===&lt;br /&gt;
&lt;br /&gt;
* Top: Power&lt;br /&gt;
* Left: Input&lt;br /&gt;
* Right: Output&lt;br /&gt;
&lt;br /&gt;
=== Screws (options) ===&lt;br /&gt;
&lt;br /&gt;
* Left: Input Selector. Click with the Screwdriver to select the input data.&lt;br /&gt;
* Right: Operation Selector. Click with Screwdriver to select what operation to run on the Input.&lt;br /&gt;
&lt;br /&gt;
=== Available Operations ===&lt;br /&gt;
&lt;br /&gt;
* Ceil: Rounds the input &#039;&#039;&#039;Up&#039;&#039;&#039; to the closest whole integer.&lt;br /&gt;
* Floor: Rounds the input &#039;&#039;&#039;Down&#039;&#039;&#039; to the closest whole integer.&lt;br /&gt;
* Abs: Ensures the input is Positive and not Negative (converts -1 to 1, -123.456 to 123.456, etc). Has no effect on positive numbers.&lt;br /&gt;
* Log: The natural logarithm of the input. The natural logarithm of x is the power to which e (Euler&#039;s number) would have to be raised to equal x. &lt;br /&gt;
* Exp: The natural exponential function of the input. e raised to the power of the input. &lt;br /&gt;
* Round: Rounds the input to the closest whole integer.&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=IC10&amp;diff=7603</id>
		<title>IC10</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=IC10&amp;diff=7603"/>
		<updated>2018-10-23T08:00:43Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: /* Links */ added link to stationeering.com programmable circuits simulator&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=MIPS scripting language for IC10 housings / chips=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// Text after a // will be ignored to the end of the line. The amount of white&lt;br /&gt;
// space between arguments isn&#039;t important, but new lines start a new command.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==Functions==&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;alias&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;alias&lt;br /&gt;
:alias str r? d? // labels register or device reference with name.  When alias is applied to a device, it will effect what shows on the screws in the IC base.  (housing)&lt;br /&gt;
&amp;lt;code&amp;gt;alias vTemperature r0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;alias dAutoHydro1 d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;move&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;move    &lt;br /&gt;
:d s     // stores the value of s in d&lt;br /&gt;
&amp;lt;code&amp;gt;move r0 42 # Store 42 in register 0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;add&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;add     &lt;br /&gt;
:d s t   // calculates s + t and stores the result in d&lt;br /&gt;
&amp;lt;code&amp;gt;add r0 r1 1 # add 1 to r1 and store the result as r0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;add r0 r0 1 # increment r0 by one&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;sub&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;sub     &lt;br /&gt;
:d s t   // calculates s - t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;mul&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;mul     &lt;br /&gt;
:d s t   // calculates s * t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;div     &lt;br /&gt;
:d s t   // calculates s / t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;mod&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;mod     &lt;br /&gt;
:d s t   &lt;br /&gt;
::// calculates s mod t and stores the result in d. Note this&lt;br /&gt;
::// doesn&#039;t behave like the % operator - the result will be &lt;br /&gt;
::// positive even if the either of the operands are negative&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;slt&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;slt     &lt;br /&gt;
:d s t   // stores 1 in d if s &amp;lt; t, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;sqrt&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;sqrt    &lt;br /&gt;
:d s     // calculates sqrt(s) and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;round&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;round   &lt;br /&gt;
:d s     // finds the rounded value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;trunc&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;trunc   &lt;br /&gt;
:d s     // finds the truncated value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;ceil&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ceil   &lt;br /&gt;
: d s     // calculates the ceiling of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;floor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;floor  &lt;br /&gt;
: d s     // calculates the floor of s and stores the result in d&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;max&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;max    &lt;br /&gt;
: d s t   // calculates the maximum of s and t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;min&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;min    &lt;br /&gt;
: d s t   // calculates the minimum of s and t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;abs&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;abs    &lt;br /&gt;
: d s     // calculates the absolute value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;log&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;log    &lt;br /&gt;
: d s     // calculates the natural logarithm of s and stores the result&lt;br /&gt;
::// in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;exp&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;exp    &lt;br /&gt;
: d s     // calculates the exponential of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;rand&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;rand   &lt;br /&gt;
: d       // selects a random number uniformly at random between 0 and 1&lt;br /&gt;
::// inclusive and stores the result in d&lt;br /&gt;
&lt;br /&gt;
::// boolean arithmetic uses the C convention that 0 is false and any non-zero&lt;br /&gt;
::// value is true.&lt;br /&gt;
&amp;lt;div id=&amp;quot;and&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;and    &lt;br /&gt;
: d s t   // stores 1 in d if both s and t have non-zero values,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;or&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;or     &lt;br /&gt;
: d s t   // stores 1 in d if either s or t have non-zero values,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;xor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;xor    &lt;br /&gt;
: d s t   // stores 1 in d if exactly one of s and t are non-zero,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;nor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;nor &lt;br /&gt;
:    d s t   // stores 1 in d if both s and t equal zero, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// Lines are numbered starting at zero&lt;br /&gt;
&amp;lt;div id=&amp;quot;j&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;j&lt;br /&gt;
:             a // jumps to line a.&lt;br /&gt;
&amp;lt;div id=&amp;quot;bltz&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bltz&lt;br /&gt;
:      s   a // jumps to line a if s &amp;lt;  0&lt;br /&gt;
&amp;lt;div id=&amp;quot;blez&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;blez &lt;br /&gt;
:     s   a // jumps to line a if s &amp;lt;= 0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;bgez&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bgez &lt;br /&gt;
:     s   a // jumps to line a if s &amp;gt;= 0&lt;br /&gt;
&amp;lt;div id=&amp;quot;bgtz&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bgtz&lt;br /&gt;
:      s   a // jumps to line a if s &amp;gt;  0&lt;br /&gt;
&amp;lt;div id=&amp;quot;beq&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;beq &lt;br /&gt;
:      s t a // jumps to line a if s == t&lt;br /&gt;
&amp;lt;div id=&amp;quot;bne&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bne &lt;br /&gt;
:      s t a // jumps to line a if s != t&lt;br /&gt;
&amp;lt;div id=&amp;quot;bdseal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bdseal&lt;br /&gt;
:    d? a(r?|num) // Jump execution to line a and store current line number if device d? is set.&lt;br /&gt;
&amp;lt;code&amp;gt;bdseal d0 32 #Store line number and jump to line 32 if d0 is assigned.&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;bdseal dThisVictim HarvestCrop #Store line in ra and jump to sub HarvestCrop if device dThisVictim is assigned.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;yield&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;yield           &lt;br /&gt;
: 	// ceases code execution for this power tick&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;#&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
; #&lt;br /&gt;
:     // The following text will be ignored during compiling; use this to create comments.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Device Variables==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Activate&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Activate&lt;br /&gt;
:1 if device is activated (usually means running), otherwise 0&lt;br /&gt;
:&amp;lt;code&amp;gt;l r0 d0 Activate # sets r0 to 1 if on or 0 of off&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;AirRelease&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;AirRelease&lt;br /&gt;
&amp;lt;div id=&amp;quot;Charge&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Charge&lt;br /&gt;
:    The current charge the device has.&lt;br /&gt;
&amp;lt;div id=&amp;quot;CLearMemory&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;CLearMemory&lt;br /&gt;
:    When set to 1, clears the counter memory (e.g. ExportCount).  Will set itself back to 0 when triggered.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Color&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Color&lt;br /&gt;
&amp;lt;div id=&amp;quot;CompletionRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;CompletionRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;ElevatorLevel&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ElevatorLevel&lt;br /&gt;
&amp;lt;div id=&amp;quot;ElevatorSpeed&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ElevatorSpeed&lt;br /&gt;
&amp;lt;div id=&amp;quot;Error&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Error&lt;br /&gt;
:	1 if device is in error state, otherwise 0&lt;br /&gt;
&amp;lt;div id=&amp;quot;ExportCount&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ExportCount&lt;br /&gt;
:    How many items exporfted since last ClearMemory.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Filtration&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Filtration&lt;br /&gt;
:	The current state of the filtration system.  For example filtration = 1 for a Hardsuit when filtration is On.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Harvest&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Harvest&lt;br /&gt;
:	Performs the harvesting action for any plant based machinery.&lt;br /&gt;
:  &amp;lt;code&amp;gt;s d0 Harvest 1 # Performs 1 harvest action on device d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;Horizontal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Horizontal&lt;br /&gt;
&amp;lt;div id=&amp;quot;HorizontalRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;HorizontalRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;Idle&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Idle&lt;br /&gt;
&amp;lt;div id=&amp;quot;ImportCount&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ImportCount&lt;br /&gt;
&amp;lt;div id=&amp;quot;Lock&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Lock&lt;br /&gt;
&amp;lt;div id=&amp;quot;Maximum&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Maximum&lt;br /&gt;
&amp;lt;div id=&amp;quot;Mode&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Mode&lt;br /&gt;
&amp;lt;div id=&amp;quot;On&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;On&lt;br /&gt;
&amp;lt;div id=&amp;quot;Open&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Open&lt;br /&gt;
&amp;lt;div id=&amp;quot;Output&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Output&lt;br /&gt;
&amp;lt;div id=&amp;quot;Plant&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Plant&lt;br /&gt;
:    Performs the planting operation for any plant based machinery.&lt;br /&gt;
:  &amp;lt;code&amp;gt;s d0 Plant 1 # Plants one crop in device d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionX&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionX&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionY&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionY&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionZ&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionZ&lt;br /&gt;
&amp;lt;div id=&amp;quot;Power&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Power&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerActual&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerActual&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerPotential&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerPotential&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerRequired&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerRequired&lt;br /&gt;
&amp;lt;div id=&amp;quot;Pressure&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Pressure&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureExternal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureExternal&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureInteral&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureInteral&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureSetting&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureSetting&lt;br /&gt;
&amp;lt;div id=&amp;quot;Quantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Quantity&lt;br /&gt;
:	Total quantity in the device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Ratio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Ratio&lt;br /&gt;
:	Context specific value depending on device, 0 to 1 based ratio.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioCarbonDioxide&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioCarbonDioxide&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioNitrogen&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioNitrogen&lt;br /&gt;
:	The ratio of nitrogen in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioOxygen&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioOxygen&lt;br /&gt;
:	The ratio of oxygen in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioPollutant&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioPollutant&lt;br /&gt;
:	The ratio of pollutant in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioVolatiles&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioVolatiles&lt;br /&gt;
:	The ratio of volatiles in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioWater&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioWater&lt;br /&gt;
:	The ratio of water in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Reagents&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Reagents&lt;br /&gt;
&amp;lt;div id=&amp;quot;RecipeHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RecipeHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;RequestHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RequestHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;RequiredPower&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RequiredPower&lt;br /&gt;
&amp;lt;div id=&amp;quot;Setting&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Setting&lt;br /&gt;
&amp;lt;div id=&amp;quot;SolarAngle&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;SolarAngle&lt;br /&gt;
:    Solar angle of the device.&lt;br /&gt;
:  &amp;lt;code&amp;gt;l r0 d0 SolarAngle # Sets r0 to the solar angle of d0.&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;Temperature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Temperature&lt;br /&gt;
&amp;lt;div id=&amp;quot;TemperatureSettings&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;TemperatureSettings&lt;br /&gt;
&amp;lt;div id=&amp;quot;TotalMoles&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;TotalMoles&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityMagnitude&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityMagnitude&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeX&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeX&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeY&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeY&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeZ&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeZ&lt;br /&gt;
&amp;lt;div id=&amp;quot;Vertical&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Vertical&lt;br /&gt;
:	Vertical setting of the device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;VerticalRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VerticalRatio&lt;br /&gt;
:	Ratio of vertical setting for device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Volume&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Volume&lt;br /&gt;
:	Returns the device atmosphere volume&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Slot Variables==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Occupied&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Occupied&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 2 Occupied #Stores 1 in r0 if d0 has more seeds&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ls vOccupied dThisVictim 2 Occupied #stores 1 in vOccupied if dThisVictim has more seeds&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;OccupantHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;OccupantHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;Quantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Quantity&lt;br /&gt;
&amp;lt;div id=&amp;quot;Damage&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Damage&lt;br /&gt;
&amp;lt;div id=&amp;quot;Efficiency&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Efficiency&lt;br /&gt;
&amp;lt;div id=&amp;quot;Health&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Health&lt;br /&gt;
&amp;lt;div id=&amp;quot;Growth&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Growth&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 0 Growth # Store the numerical growth stage of d0 in r0&amp;lt;/code&amp;gt; &lt;br /&gt;
&amp;lt;div id=&amp;quot;Pressure&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Pressure&lt;br /&gt;
&amp;lt;div id=&amp;quot;Temperature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Temperature&lt;br /&gt;
&amp;lt;div id=&amp;quot;Charge&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Charge&lt;br /&gt;
&amp;lt;div id=&amp;quot;ChargeRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ChargeRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;Class&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Class&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureWaste&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureWaste&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureAir&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureAir&lt;br /&gt;
&amp;lt;div id=&amp;quot;MaxQuantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;MaxQuantity&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Mature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Mature&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 0 Mature # Store 1 in r0 if d0 has a mature crop&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ls vMature dThisVictim 0 Mature # Store 1 in vMature if dThisVictim has a mature crop&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Examples==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====This example script automates autohydro units and powers the lights off during the day when they&#039;re not needed.  (Hit Expand)====&lt;br /&gt;
Uses aliases, sub-routines and comments to minimize lines of code and adaptability.&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot; data-expandtext=&amp;quot;{{int:Expand Sample AutoHydro Script}}&amp;quot; data-collapsetext=&amp;quot;{{int:Collapse Sample AutoHydro Script}}&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
alias vMature r0​&lt;br /&gt;
alias vOccupied r1​&lt;br /&gt;
alias isDayLight r2​&lt;br /&gt;
alias isOccupied r3​&lt;br /&gt;
alias dSensor d5​&lt;br /&gt;
​&lt;br /&gt;
​&lt;br /&gt;
#start of Program Loop​&lt;br /&gt;
start:​&lt;br /&gt;
l isDayLight dSensor Activate​  #Check if it&#039;s daytime or not.&lt;br /&gt;
​&lt;br /&gt;
# For each device, harvest, plant, powerdown, then power on depending on conditions.&lt;br /&gt;
alias dThisVictim d0​  #Begin processing device 0&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
alias dThisVictim d1​  #Begin processing device 1&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
alias dThisVictim d2​  #Begin processing device 2&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
alias dThisVictim d3​  #Begin processing device 3&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
alias dThisVictim d4​  #Begin processing device 4&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
#Can&#039;t do a D5 because that&#039;s our sensor.​&lt;br /&gt;
​&lt;br /&gt;
j start​ #Return to the beginning of the program loop.  (Yields here may save processing power)&lt;br /&gt;
​&lt;br /&gt;
​​&lt;br /&gt;
HarvestCrop:​&lt;br /&gt;
ls vMature dThisVictim 0 Mature​&lt;br /&gt;
blez vMature ra​  #If the crop is not mature, return&lt;br /&gt;
s dThisVictim Harvest 1​ #If the crop is mature, harvest it (one).&lt;br /&gt;
j ra​ #return&lt;br /&gt;
​&lt;br /&gt;
&lt;br /&gt;
PlantCrop:​&lt;br /&gt;
ls vOccupied dThisVictim 2 Occupied #seeds to plant​&lt;br /&gt;
blez vOccupied ra​ #If the machine has no seeds to plant, return.&lt;br /&gt;
ls vOccupied dThisVictim 0 Occupied #something growin​g&lt;br /&gt;
bgtz vOccupied ra​  # If the crop plot is occupied, return.&lt;br /&gt;
s dThisVictim Plant 1​  # if we made it this far, plant the crop&lt;br /&gt;
j ra​ #return&lt;br /&gt;
​&lt;br /&gt;
​&lt;br /&gt;
​&lt;br /&gt;
PowerDown:​&lt;br /&gt;
s dThisVictim On 0​ #Power the machine down.&lt;br /&gt;
​&lt;br /&gt;
j ra #Jump to line we came from​&lt;br /&gt;
​&lt;br /&gt;
​&lt;br /&gt;
TurnitOn:​&lt;br /&gt;
s dThisVictim On 1​ #Power the machine up&lt;br /&gt;
j ra&lt;br /&gt;
&lt;br /&gt;
##########&lt;br /&gt;
#### End Script&lt;br /&gt;
##########&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
This is a sample timer command set, alternating between 1 for 1 tick (0.5s), then off for 2 ticks (1s).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
move r0 0		// Line 0: move the value 0 to register0&lt;br /&gt;
sub r1 r0 3		// Line 1: subtract 3 from the value in r0 and write it to r1&lt;br /&gt;
bltz r1 4		// Line 2: jump to line 4 if r1 &amp;lt; 0 (skip the next line)&lt;br /&gt;
move r0 0		// Line 3: move the value 0 to register0 &lt;br /&gt;
slt o r0 1		// Line 4: if r0 &amp;lt; 1 write 1 to the output, otherwise 0.&lt;br /&gt;
add r0 r0 1		// Line 5: increment r0 by 1&lt;br /&gt;
yield			// Line 6: wait until next power tick (0.5s)&lt;br /&gt;
j 1			// Line 7: jump back to line 1	&lt;br /&gt;
&lt;br /&gt;
##########&lt;br /&gt;
#### End Script&lt;br /&gt;
##########&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
so you will do l r0 d0 SolarAngle&lt;br /&gt;
Sorry had last args swapped&lt;br /&gt;
That would read in the value&lt;br /&gt;
while,&lt;br /&gt;
s d1 Vertical r0&lt;br /&gt;
Would write the contents of r0 into the devices 1&#039;s Vertical property&lt;br /&gt;
additionally you can make some aliases&lt;br /&gt;
alias SolarSensor d0&lt;br /&gt;
l r0 SolarSensor SolarAngle&lt;br /&gt;
&lt;br /&gt;
##########&lt;br /&gt;
#### End Script&lt;br /&gt;
##########&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
-----&lt;br /&gt;
Another example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Now the IC is inserted into the housing. The screws D0-D5 can be adjusted directly to the equipment (sensor, console, solar panel, etc.). The ports &#039;o&#039; and &#039;i0-i2&#039; have been removed. Instead, commands that directly read and write hardware parameters are added.&lt;br /&gt;
l &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
 reads the value of the parameter&lt;br /&gt;
s &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt; &amp;lt;register_or_value&amp;gt;&lt;br /&gt;
 writes the value of the parameter&lt;br /&gt;
ls &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;slot_number&amp;gt; &amp;lt;parameter&amp;gt; &lt;br /&gt;
 reads the parameter value from the slot&lt;br /&gt;
For example, &lt;br /&gt;
l r0 d0 Horizontal&lt;br /&gt;
 &lt;br /&gt;
s d5 Activate 1&lt;br /&gt;
 &lt;br /&gt;
ls r3 db 0 OccupantHash&lt;br /&gt;
&lt;br /&gt;
##########&lt;br /&gt;
#### End Script&lt;br /&gt;
##########&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
-----&lt;br /&gt;
* [https://stationeering.com/tools/ic] Stationeering.com offers a programmable circuits simulator so you can develop your code without repeatedly dying in game!&lt;br /&gt;
* [https://hastebin.com/uwuhidozun.md]&lt;br /&gt;
* [http://www.easy68k.com/]&lt;br /&gt;
&lt;br /&gt;
==Index==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|+Functions &lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#abs|abs]]&lt;br /&gt;
*[[#add|add]]&lt;br /&gt;
*[[#alias|alias]]&lt;br /&gt;
*[[#and|and]]&lt;br /&gt;
*[[#beq|beq]]&lt;br /&gt;
*[[#bgez|bgez]]&lt;br /&gt;
*[[#bgtz|bgtz]]&lt;br /&gt;
*[[#blez|blez]]&lt;br /&gt;
*[[#bltz|bltz]]&lt;br /&gt;
*[[#bne|bne]]&lt;br /&gt;
*[[#breq|breq]]&lt;br /&gt;
*[[#brgez|brgez]]&lt;br /&gt;
*[[#brgtz|brgtz]]&lt;br /&gt;
*[[#brlez|brlez]]&lt;br /&gt;
*[[#brltz|brltz]]&lt;br /&gt;
*[[#brne|brne]]&lt;br /&gt;
*[[#ceil|cell]]&lt;br /&gt;
*[[#div|div]]&lt;br /&gt;
*[[#exp|exp]]&lt;br /&gt;
*[[#floor|floor]]&lt;br /&gt;
*[[#j|j]]&lt;br /&gt;
*[[#jr|jr]]&lt;br /&gt;
*[[#l|l]]&lt;br /&gt;
*[[#log|log]]&lt;br /&gt;
*[[#ls|ls]]&lt;br /&gt;
*[[#max|max]]&lt;br /&gt;
*[[#min|min]]&lt;br /&gt;
*[[#mod|mod]]&lt;br /&gt;
*[[#move|move]]&lt;br /&gt;
*[[#mul|mul]]&lt;br /&gt;
*[[#nor|nor]]&lt;br /&gt;
*[[#or|or]]&lt;br /&gt;
*[[#rand|rand]]&lt;br /&gt;
*[[#round|round]]&lt;br /&gt;
*[[#s|s]]&lt;br /&gt;
*[[#slt|slt]]&lt;br /&gt;
*[[#sqrt|sqrt]]&lt;br /&gt;
*[[#sub|sub]]&lt;br /&gt;
*[[#trunc|trunc]]&lt;br /&gt;
*[[#xor|xor]]xor&lt;br /&gt;
*[[#yield|yield]]&lt;br /&gt;
*[[##|#]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|+Device Variables &lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#Activate|Activate]]&lt;br /&gt;
*[[#AirRelease|AirRelease]]&lt;br /&gt;
*[[#Charge|Charge]]&lt;br /&gt;
*[[#CLearMemory|CLearMemory]]&lt;br /&gt;
*[[#Color|Color]]&lt;br /&gt;
*[[#CompletionRatio|CompletionRatio]]&lt;br /&gt;
*[[#ElevatorLevel|ElevatorLevel]]&lt;br /&gt;
*[[#ElevatorSpeed|ElevatorSpeed]]&lt;br /&gt;
*[[#Error|Error]]&lt;br /&gt;
*[[#ExportCount|ExportCount]]&lt;br /&gt;
*[[#Filtration|Filtration]]&lt;br /&gt;
*[[#Harvest|Harvest]]&lt;br /&gt;
*[[#Horizontal|Horizontal]]&lt;br /&gt;
*[[#HorizontalRatio|HorizontalRatio]]&lt;br /&gt;
*[[#Idle|Idle]]&lt;br /&gt;
*[[#ImportCount|ImportCount]]&lt;br /&gt;
*[[#Lock|Lock]]&lt;br /&gt;
*[[#Maximum|Maximum]]&lt;br /&gt;
*[[#Mode|Mode]]&lt;br /&gt;
*[[#On|On]]&lt;br /&gt;
*[[#Open|Open]]&lt;br /&gt;
*[[#Output|Output]]&lt;br /&gt;
*[[#Plant|Plant]]&lt;br /&gt;
*[[#PositionX|PositionX]]&lt;br /&gt;
*[[#PositionY|PositionY]]&lt;br /&gt;
*[[#PositionZ|PositionZ]]&lt;br /&gt;
*[[#Power|Power]]&lt;br /&gt;
*[[#PowerActual|PowerActual]]&lt;br /&gt;
*[[#PowerPotential|PowerPotential]]&lt;br /&gt;
*[[#PowerRequired|PowerRequired]]&lt;br /&gt;
*[[#Pressure|Pressure]]&lt;br /&gt;
*[[#PressureExternal|PressureExternal]]&lt;br /&gt;
*[[#PressureInteral|PressureInteral]]&lt;br /&gt;
*[[#PressureSetting|PressureSetting]]&lt;br /&gt;
*[[#Quantity|Quantity]]&lt;br /&gt;
*[[#Ratio|Ratio]]&lt;br /&gt;
*[[#RatioCarbonDioxide|RatioCarbonDioxide]]&lt;br /&gt;
*[[#RatioNitrogen|RatioNitrogen]]&lt;br /&gt;
*[[#RatioOxygen|RatioOxygen]]&lt;br /&gt;
*[[#RatioPollutant|RatioPollutant]]&lt;br /&gt;
*[[#RatioVolatiles|RatioVolatiles]]&lt;br /&gt;
*[[#RatioWater|RatioWater]]&lt;br /&gt;
*[[#Reagents|Reagents]]&lt;br /&gt;
*[[#RecipeHash|RecipeHash]]&lt;br /&gt;
*[[#RequestHash|RequestHash]]&lt;br /&gt;
*[[#RequiredPower|RequiredPower]]&lt;br /&gt;
*[[#Setting|Setting]]&lt;br /&gt;
*[[#SolarAngle|SolarAngle]]&lt;br /&gt;
*[[#Temperature|Temperature]]&lt;br /&gt;
*[[#TemperatureSettings|TemperatureSettings]]&lt;br /&gt;
*[[#TotalMoles|TotalMoles]]&lt;br /&gt;
*[[#VelocityMagnitude|VelocityMagnitude]]&lt;br /&gt;
*[[#VelocityRelativeX|VelocityRelativeX]]&lt;br /&gt;
*[[#VelocityRelativeY|VelocityRelativeY]]&lt;br /&gt;
*[[#VelocityRelativeZ|VelocityRelativeZ]]&lt;br /&gt;
*[[#Vertical|Vertical]]&lt;br /&gt;
*[[#VerticalRatio|VerticalRatio]]&lt;br /&gt;
*[[#Volume|Volume]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|+Slot Variables &lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#Occupied|Occupied]]&lt;br /&gt;
*[[#OccupantHash|OccupantHash]]&lt;br /&gt;
*[[#Quantity|Quantity]]&lt;br /&gt;
*[[#Damage|Damage]]&lt;br /&gt;
*[[#Efficiency|Efficiency]]&lt;br /&gt;
*[[#Health|Health]]&lt;br /&gt;
*[[#Growth|Growth]]&lt;br /&gt;
*[[#Pressure|Pressure]]&lt;br /&gt;
*[[#Temperature|Temperature]]&lt;br /&gt;
*[[#Charge|Charge]]&lt;br /&gt;
*[[#ChargeRatio|ChargeRatio]]&lt;br /&gt;
*[[#Class|Class]]&lt;br /&gt;
*[[#PressureWaste|PressureWaste]]&lt;br /&gt;
*[[#PressureAir|PressureAir]]&lt;br /&gt;
*[[#MaxQuantity|MaxQuantity]]&lt;br /&gt;
*[[#Mature|Mature]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=IC10&amp;diff=7602</id>
		<title>IC10</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=IC10&amp;diff=7602"/>
		<updated>2018-10-23T07:55:26Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: Formatting alterations to improve flow and readability.  Rearranged things so the table of contents is at the top, added a clear and consistent &amp;#039;end of script&amp;#039; comment in the examples section, and added lines separating examples.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=MIPS scripting language for IC10 housings / chips=&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// Text after a // will be ignored to the end of the line. The amount of white&lt;br /&gt;
// space between arguments isn&#039;t important, but new lines start a new command.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==Functions==&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;alias&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;alias&lt;br /&gt;
:alias str r? d? // labels register or device reference with name.  When alias is applied to a device, it will effect what shows on the screws in the IC base.  (housing)&lt;br /&gt;
&amp;lt;code&amp;gt;alias vTemperature r0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;alias dAutoHydro1 d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;move&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;move    &lt;br /&gt;
:d s     // stores the value of s in d&lt;br /&gt;
&amp;lt;code&amp;gt;move r0 42 # Store 42 in register 0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;add&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;add     &lt;br /&gt;
:d s t   // calculates s + t and stores the result in d&lt;br /&gt;
&amp;lt;code&amp;gt;add r0 r1 1 # add 1 to r1 and store the result as r0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;add r0 r0 1 # increment r0 by one&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;sub&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;sub     &lt;br /&gt;
:d s t   // calculates s - t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;mul&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;mul     &lt;br /&gt;
:d s t   // calculates s * t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;div     &lt;br /&gt;
:d s t   // calculates s / t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;mod&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;mod     &lt;br /&gt;
:d s t   &lt;br /&gt;
::// calculates s mod t and stores the result in d. Note this&lt;br /&gt;
::// doesn&#039;t behave like the % operator - the result will be &lt;br /&gt;
::// positive even if the either of the operands are negative&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;slt&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;slt     &lt;br /&gt;
:d s t   // stores 1 in d if s &amp;lt; t, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;sqrt&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;sqrt    &lt;br /&gt;
:d s     // calculates sqrt(s) and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;round&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;round   &lt;br /&gt;
:d s     // finds the rounded value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;trunc&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;trunc   &lt;br /&gt;
:d s     // finds the truncated value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;ceil&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ceil   &lt;br /&gt;
: d s     // calculates the ceiling of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;floor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;floor  &lt;br /&gt;
: d s     // calculates the floor of s and stores the result in d&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;max&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;max    &lt;br /&gt;
: d s t   // calculates the maximum of s and t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;min&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;min    &lt;br /&gt;
: d s t   // calculates the minimum of s and t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;abs&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;abs    &lt;br /&gt;
: d s     // calculates the absolute value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;log&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;log    &lt;br /&gt;
: d s     // calculates the natural logarithm of s and stores the result&lt;br /&gt;
::// in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;exp&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;exp    &lt;br /&gt;
: d s     // calculates the exponential of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;rand&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;rand   &lt;br /&gt;
: d       // selects a random number uniformly at random between 0 and 1&lt;br /&gt;
::// inclusive and stores the result in d&lt;br /&gt;
&lt;br /&gt;
::// boolean arithmetic uses the C convention that 0 is false and any non-zero&lt;br /&gt;
::// value is true.&lt;br /&gt;
&amp;lt;div id=&amp;quot;and&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;and    &lt;br /&gt;
: d s t   // stores 1 in d if both s and t have non-zero values,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;or&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;or     &lt;br /&gt;
: d s t   // stores 1 in d if either s or t have non-zero values,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;xor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;xor    &lt;br /&gt;
: d s t   // stores 1 in d if exactly one of s and t are non-zero,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;nor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;nor &lt;br /&gt;
:    d s t   // stores 1 in d if both s and t equal zero, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// Lines are numbered starting at zero&lt;br /&gt;
&amp;lt;div id=&amp;quot;j&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;j&lt;br /&gt;
:             a // jumps to line a.&lt;br /&gt;
&amp;lt;div id=&amp;quot;bltz&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bltz&lt;br /&gt;
:      s   a // jumps to line a if s &amp;lt;  0&lt;br /&gt;
&amp;lt;div id=&amp;quot;blez&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;blez &lt;br /&gt;
:     s   a // jumps to line a if s &amp;lt;= 0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;bgez&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bgez &lt;br /&gt;
:     s   a // jumps to line a if s &amp;gt;= 0&lt;br /&gt;
&amp;lt;div id=&amp;quot;bgtz&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bgtz&lt;br /&gt;
:      s   a // jumps to line a if s &amp;gt;  0&lt;br /&gt;
&amp;lt;div id=&amp;quot;beq&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;beq &lt;br /&gt;
:      s t a // jumps to line a if s == t&lt;br /&gt;
&amp;lt;div id=&amp;quot;bne&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bne &lt;br /&gt;
:      s t a // jumps to line a if s != t&lt;br /&gt;
&amp;lt;div id=&amp;quot;bdseal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bdseal&lt;br /&gt;
:    d? a(r?|num) // Jump execution to line a and store current line number if device d? is set.&lt;br /&gt;
&amp;lt;code&amp;gt;bdseal d0 32 #Store line number and jump to line 32 if d0 is assigned.&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;bdseal dThisVictim HarvestCrop #Store line in ra and jump to sub HarvestCrop if device dThisVictim is assigned.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;yield&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;yield           &lt;br /&gt;
: 	// ceases code execution for this power tick&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;#&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
; #&lt;br /&gt;
:     // The following text will be ignored during compiling; use this to create comments.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Device Variables==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Activate&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Activate&lt;br /&gt;
:1 if device is activated (usually means running), otherwise 0&lt;br /&gt;
:&amp;lt;code&amp;gt;l r0 d0 Activate # sets r0 to 1 if on or 0 of off&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;AirRelease&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;AirRelease&lt;br /&gt;
&amp;lt;div id=&amp;quot;Charge&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Charge&lt;br /&gt;
:    The current charge the device has.&lt;br /&gt;
&amp;lt;div id=&amp;quot;CLearMemory&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;CLearMemory&lt;br /&gt;
:    When set to 1, clears the counter memory (e.g. ExportCount).  Will set itself back to 0 when triggered.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Color&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Color&lt;br /&gt;
&amp;lt;div id=&amp;quot;CompletionRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;CompletionRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;ElevatorLevel&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ElevatorLevel&lt;br /&gt;
&amp;lt;div id=&amp;quot;ElevatorSpeed&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ElevatorSpeed&lt;br /&gt;
&amp;lt;div id=&amp;quot;Error&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Error&lt;br /&gt;
:	1 if device is in error state, otherwise 0&lt;br /&gt;
&amp;lt;div id=&amp;quot;ExportCount&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ExportCount&lt;br /&gt;
:    How many items exporfted since last ClearMemory.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Filtration&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Filtration&lt;br /&gt;
:	The current state of the filtration system.  For example filtration = 1 for a Hardsuit when filtration is On.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Harvest&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Harvest&lt;br /&gt;
:	Performs the harvesting action for any plant based machinery.&lt;br /&gt;
:  &amp;lt;code&amp;gt;s d0 Harvest 1 # Performs 1 harvest action on device d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;Horizontal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Horizontal&lt;br /&gt;
&amp;lt;div id=&amp;quot;HorizontalRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;HorizontalRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;Idle&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Idle&lt;br /&gt;
&amp;lt;div id=&amp;quot;ImportCount&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ImportCount&lt;br /&gt;
&amp;lt;div id=&amp;quot;Lock&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Lock&lt;br /&gt;
&amp;lt;div id=&amp;quot;Maximum&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Maximum&lt;br /&gt;
&amp;lt;div id=&amp;quot;Mode&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Mode&lt;br /&gt;
&amp;lt;div id=&amp;quot;On&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;On&lt;br /&gt;
&amp;lt;div id=&amp;quot;Open&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Open&lt;br /&gt;
&amp;lt;div id=&amp;quot;Output&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Output&lt;br /&gt;
&amp;lt;div id=&amp;quot;Plant&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Plant&lt;br /&gt;
:    Performs the planting operation for any plant based machinery.&lt;br /&gt;
:  &amp;lt;code&amp;gt;s d0 Plant 1 # Plants one crop in device d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionX&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionX&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionY&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionY&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionZ&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionZ&lt;br /&gt;
&amp;lt;div id=&amp;quot;Power&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Power&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerActual&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerActual&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerPotential&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerPotential&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerRequired&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerRequired&lt;br /&gt;
&amp;lt;div id=&amp;quot;Pressure&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Pressure&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureExternal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureExternal&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureInteral&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureInteral&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureSetting&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureSetting&lt;br /&gt;
&amp;lt;div id=&amp;quot;Quantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Quantity&lt;br /&gt;
:	Total quantity in the device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Ratio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Ratio&lt;br /&gt;
:	Context specific value depending on device, 0 to 1 based ratio.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioCarbonDioxide&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioCarbonDioxide&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioNitrogen&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioNitrogen&lt;br /&gt;
:	The ratio of nitrogen in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioOxygen&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioOxygen&lt;br /&gt;
:	The ratio of oxygen in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioPollutant&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioPollutant&lt;br /&gt;
:	The ratio of pollutant in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioVolatiles&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioVolatiles&lt;br /&gt;
:	The ratio of volatiles in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioWater&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioWater&lt;br /&gt;
:	The ratio of water in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Reagents&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Reagents&lt;br /&gt;
&amp;lt;div id=&amp;quot;RecipeHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RecipeHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;RequestHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RequestHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;RequiredPower&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RequiredPower&lt;br /&gt;
&amp;lt;div id=&amp;quot;Setting&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Setting&lt;br /&gt;
&amp;lt;div id=&amp;quot;SolarAngle&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;SolarAngle&lt;br /&gt;
:    Solar angle of the device.&lt;br /&gt;
:  &amp;lt;code&amp;gt;l r0 d0 SolarAngle # Sets r0 to the solar angle of d0.&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;Temperature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Temperature&lt;br /&gt;
&amp;lt;div id=&amp;quot;TemperatureSettings&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;TemperatureSettings&lt;br /&gt;
&amp;lt;div id=&amp;quot;TotalMoles&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;TotalMoles&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityMagnitude&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityMagnitude&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeX&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeX&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeY&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeY&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeZ&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeZ&lt;br /&gt;
&amp;lt;div id=&amp;quot;Vertical&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Vertical&lt;br /&gt;
:	Vertical setting of the device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;VerticalRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VerticalRatio&lt;br /&gt;
:	Ratio of vertical setting for device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Volume&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Volume&lt;br /&gt;
:	Returns the device atmosphere volume&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Slot Variables==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Occupied&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Occupied&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 2 Occupied #Stores 1 in r0 if d0 has more seeds&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ls vOccupied dThisVictim 2 Occupied #stores 1 in vOccupied if dThisVictim has more seeds&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;OccupantHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;OccupantHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;Quantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Quantity&lt;br /&gt;
&amp;lt;div id=&amp;quot;Damage&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Damage&lt;br /&gt;
&amp;lt;div id=&amp;quot;Efficiency&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Efficiency&lt;br /&gt;
&amp;lt;div id=&amp;quot;Health&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Health&lt;br /&gt;
&amp;lt;div id=&amp;quot;Growth&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Growth&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 0 Growth # Store the numerical growth stage of d0 in r0&amp;lt;/code&amp;gt; &lt;br /&gt;
&amp;lt;div id=&amp;quot;Pressure&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Pressure&lt;br /&gt;
&amp;lt;div id=&amp;quot;Temperature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Temperature&lt;br /&gt;
&amp;lt;div id=&amp;quot;Charge&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Charge&lt;br /&gt;
&amp;lt;div id=&amp;quot;ChargeRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ChargeRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;Class&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Class&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureWaste&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureWaste&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureAir&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureAir&lt;br /&gt;
&amp;lt;div id=&amp;quot;MaxQuantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;MaxQuantity&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Mature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Mature&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 0 Mature # Store 1 in r0 if d0 has a mature crop&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ls vMature dThisVictim 0 Mature # Store 1 in vMature if dThisVictim has a mature crop&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Examples==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====This example script automates autohydro units and powers the lights off during the day when they&#039;re not needed.  (Hit Expand)====&lt;br /&gt;
Uses aliases, sub-routines and comments to minimize lines of code and adaptability.&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot; data-expandtext=&amp;quot;{{int:Expand Sample AutoHydro Script}}&amp;quot; data-collapsetext=&amp;quot;{{int:Collapse Sample AutoHydro Script}}&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
alias vMature r0​&lt;br /&gt;
alias vOccupied r1​&lt;br /&gt;
alias isDayLight r2​&lt;br /&gt;
alias isOccupied r3​&lt;br /&gt;
alias dSensor d5​&lt;br /&gt;
​&lt;br /&gt;
​&lt;br /&gt;
#start of Program Loop​&lt;br /&gt;
start:​&lt;br /&gt;
l isDayLight dSensor Activate​  #Check if it&#039;s daytime or not.&lt;br /&gt;
​&lt;br /&gt;
# For each device, harvest, plant, powerdown, then power on depending on conditions.&lt;br /&gt;
alias dThisVictim d0​  #Begin processing device 0&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
alias dThisVictim d1​  #Begin processing device 1&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
alias dThisVictim d2​  #Begin processing device 2&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
alias dThisVictim d3​  #Begin processing device 3&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
alias dThisVictim d4​  #Begin processing device 4&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
#Can&#039;t do a D5 because that&#039;s our sensor.​&lt;br /&gt;
​&lt;br /&gt;
j start​ #Return to the beginning of the program loop.  (Yields here may save processing power)&lt;br /&gt;
​&lt;br /&gt;
​​&lt;br /&gt;
HarvestCrop:​&lt;br /&gt;
ls vMature dThisVictim 0 Mature​&lt;br /&gt;
blez vMature ra​  #If the crop is not mature, return&lt;br /&gt;
s dThisVictim Harvest 1​ #If the crop is mature, harvest it (one).&lt;br /&gt;
j ra​ #return&lt;br /&gt;
​&lt;br /&gt;
&lt;br /&gt;
PlantCrop:​&lt;br /&gt;
ls vOccupied dThisVictim 2 Occupied #seeds to plant​&lt;br /&gt;
blez vOccupied ra​ #If the machine has no seeds to plant, return.&lt;br /&gt;
ls vOccupied dThisVictim 0 Occupied #something growin​g&lt;br /&gt;
bgtz vOccupied ra​  # If the crop plot is occupied, return.&lt;br /&gt;
s dThisVictim Plant 1​  # if we made it this far, plant the crop&lt;br /&gt;
j ra​ #return&lt;br /&gt;
​&lt;br /&gt;
​&lt;br /&gt;
​&lt;br /&gt;
PowerDown:​&lt;br /&gt;
s dThisVictim On 0​ #Power the machine down.&lt;br /&gt;
​&lt;br /&gt;
j ra #Jump to line we came from​&lt;br /&gt;
​&lt;br /&gt;
​&lt;br /&gt;
TurnitOn:​&lt;br /&gt;
s dThisVictim On 1​ #Power the machine up&lt;br /&gt;
j ra&lt;br /&gt;
&lt;br /&gt;
##########&lt;br /&gt;
#### End Script&lt;br /&gt;
##########&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
This is a sample timer command set, alternating between 1 for 1 tick (0.5s), then off for 2 ticks (1s).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
move r0 0		// Line 0: move the value 0 to register0&lt;br /&gt;
sub r1 r0 3		// Line 1: subtract 3 from the value in r0 and write it to r1&lt;br /&gt;
bltz r1 4		// Line 2: jump to line 4 if r1 &amp;lt; 0 (skip the next line)&lt;br /&gt;
move r0 0		// Line 3: move the value 0 to register0 &lt;br /&gt;
slt o r0 1		// Line 4: if r0 &amp;lt; 1 write 1 to the output, otherwise 0.&lt;br /&gt;
add r0 r0 1		// Line 5: increment r0 by 1&lt;br /&gt;
yield			// Line 6: wait until next power tick (0.5s)&lt;br /&gt;
j 1			// Line 7: jump back to line 1	&lt;br /&gt;
&lt;br /&gt;
##########&lt;br /&gt;
#### End Script&lt;br /&gt;
##########&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
so you will do l r0 d0 SolarAngle&lt;br /&gt;
Sorry had last args swapped&lt;br /&gt;
That would read in the value&lt;br /&gt;
while,&lt;br /&gt;
s d1 Vertical r0&lt;br /&gt;
Would write the contents of r0 into the devices 1&#039;s Vertical property&lt;br /&gt;
additionally you can make some aliases&lt;br /&gt;
alias SolarSensor d0&lt;br /&gt;
l r0 SolarSensor SolarAngle&lt;br /&gt;
&lt;br /&gt;
##########&lt;br /&gt;
#### End Script&lt;br /&gt;
##########&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
-----&lt;br /&gt;
Another example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Now the IC is inserted into the housing. The screws D0-D5 can be adjusted directly to the equipment (sensor, console, solar panel, etc.). The ports &#039;o&#039; and &#039;i0-i2&#039; have been removed. Instead, commands that directly read and write hardware parameters are added.&lt;br /&gt;
l &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
 reads the value of the parameter&lt;br /&gt;
s &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt; &amp;lt;register_or_value&amp;gt;&lt;br /&gt;
 writes the value of the parameter&lt;br /&gt;
ls &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;slot_number&amp;gt; &amp;lt;parameter&amp;gt; &lt;br /&gt;
 reads the parameter value from the slot&lt;br /&gt;
For example, &lt;br /&gt;
l r0 d0 Horizontal&lt;br /&gt;
 &lt;br /&gt;
s d5 Activate 1&lt;br /&gt;
 &lt;br /&gt;
ls r3 db 0 OccupantHash&lt;br /&gt;
&lt;br /&gt;
##########&lt;br /&gt;
#### End Script&lt;br /&gt;
##########&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
-----&lt;br /&gt;
* [https://hastebin.com/uwuhidozun.md]&lt;br /&gt;
* [http://www.easy68k.com/]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Index==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|+Functions &lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#abs|abs]]&lt;br /&gt;
*[[#add|add]]&lt;br /&gt;
*[[#alias|alias]]&lt;br /&gt;
*[[#and|and]]&lt;br /&gt;
*[[#beq|beq]]&lt;br /&gt;
*[[#bgez|bgez]]&lt;br /&gt;
*[[#bgtz|bgtz]]&lt;br /&gt;
*[[#blez|blez]]&lt;br /&gt;
*[[#bltz|bltz]]&lt;br /&gt;
*[[#bne|bne]]&lt;br /&gt;
*[[#breq|breq]]&lt;br /&gt;
*[[#brgez|brgez]]&lt;br /&gt;
*[[#brgtz|brgtz]]&lt;br /&gt;
*[[#brlez|brlez]]&lt;br /&gt;
*[[#brltz|brltz]]&lt;br /&gt;
*[[#brne|brne]]&lt;br /&gt;
*[[#ceil|cell]]&lt;br /&gt;
*[[#div|div]]&lt;br /&gt;
*[[#exp|exp]]&lt;br /&gt;
*[[#floor|floor]]&lt;br /&gt;
*[[#j|j]]&lt;br /&gt;
*[[#jr|jr]]&lt;br /&gt;
*[[#l|l]]&lt;br /&gt;
*[[#log|log]]&lt;br /&gt;
*[[#ls|ls]]&lt;br /&gt;
*[[#max|max]]&lt;br /&gt;
*[[#min|min]]&lt;br /&gt;
*[[#mod|mod]]&lt;br /&gt;
*[[#move|move]]&lt;br /&gt;
*[[#mul|mul]]&lt;br /&gt;
*[[#nor|nor]]&lt;br /&gt;
*[[#or|or]]&lt;br /&gt;
*[[#rand|rand]]&lt;br /&gt;
*[[#round|round]]&lt;br /&gt;
*[[#s|s]]&lt;br /&gt;
*[[#slt|slt]]&lt;br /&gt;
*[[#sqrt|sqrt]]&lt;br /&gt;
*[[#sub|sub]]&lt;br /&gt;
*[[#trunc|trunc]]&lt;br /&gt;
*[[#xor|xor]]xor&lt;br /&gt;
*[[#yield|yield]]&lt;br /&gt;
*[[##|#]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|+Device Variables &lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#Activate|Activate]]&lt;br /&gt;
*[[#AirRelease|AirRelease]]&lt;br /&gt;
*[[#Charge|Charge]]&lt;br /&gt;
*[[#CLearMemory|CLearMemory]]&lt;br /&gt;
*[[#Color|Color]]&lt;br /&gt;
*[[#CompletionRatio|CompletionRatio]]&lt;br /&gt;
*[[#ElevatorLevel|ElevatorLevel]]&lt;br /&gt;
*[[#ElevatorSpeed|ElevatorSpeed]]&lt;br /&gt;
*[[#Error|Error]]&lt;br /&gt;
*[[#ExportCount|ExportCount]]&lt;br /&gt;
*[[#Filtration|Filtration]]&lt;br /&gt;
*[[#Harvest|Harvest]]&lt;br /&gt;
*[[#Horizontal|Horizontal]]&lt;br /&gt;
*[[#HorizontalRatio|HorizontalRatio]]&lt;br /&gt;
*[[#Idle|Idle]]&lt;br /&gt;
*[[#ImportCount|ImportCount]]&lt;br /&gt;
*[[#Lock|Lock]]&lt;br /&gt;
*[[#Maximum|Maximum]]&lt;br /&gt;
*[[#Mode|Mode]]&lt;br /&gt;
*[[#On|On]]&lt;br /&gt;
*[[#Open|Open]]&lt;br /&gt;
*[[#Output|Output]]&lt;br /&gt;
*[[#Plant|Plant]]&lt;br /&gt;
*[[#PositionX|PositionX]]&lt;br /&gt;
*[[#PositionY|PositionY]]&lt;br /&gt;
*[[#PositionZ|PositionZ]]&lt;br /&gt;
*[[#Power|Power]]&lt;br /&gt;
*[[#PowerActual|PowerActual]]&lt;br /&gt;
*[[#PowerPotential|PowerPotential]]&lt;br /&gt;
*[[#PowerRequired|PowerRequired]]&lt;br /&gt;
*[[#Pressure|Pressure]]&lt;br /&gt;
*[[#PressureExternal|PressureExternal]]&lt;br /&gt;
*[[#PressureInteral|PressureInteral]]&lt;br /&gt;
*[[#PressureSetting|PressureSetting]]&lt;br /&gt;
*[[#Quantity|Quantity]]&lt;br /&gt;
*[[#Ratio|Ratio]]&lt;br /&gt;
*[[#RatioCarbonDioxide|RatioCarbonDioxide]]&lt;br /&gt;
*[[#RatioNitrogen|RatioNitrogen]]&lt;br /&gt;
*[[#RatioOxygen|RatioOxygen]]&lt;br /&gt;
*[[#RatioPollutant|RatioPollutant]]&lt;br /&gt;
*[[#RatioVolatiles|RatioVolatiles]]&lt;br /&gt;
*[[#RatioWater|RatioWater]]&lt;br /&gt;
*[[#Reagents|Reagents]]&lt;br /&gt;
*[[#RecipeHash|RecipeHash]]&lt;br /&gt;
*[[#RequestHash|RequestHash]]&lt;br /&gt;
*[[#RequiredPower|RequiredPower]]&lt;br /&gt;
*[[#Setting|Setting]]&lt;br /&gt;
*[[#SolarAngle|SolarAngle]]&lt;br /&gt;
*[[#Temperature|Temperature]]&lt;br /&gt;
*[[#TemperatureSettings|TemperatureSettings]]&lt;br /&gt;
*[[#TotalMoles|TotalMoles]]&lt;br /&gt;
*[[#VelocityMagnitude|VelocityMagnitude]]&lt;br /&gt;
*[[#VelocityRelativeX|VelocityRelativeX]]&lt;br /&gt;
*[[#VelocityRelativeY|VelocityRelativeY]]&lt;br /&gt;
*[[#VelocityRelativeZ|VelocityRelativeZ]]&lt;br /&gt;
*[[#Vertical|Vertical]]&lt;br /&gt;
*[[#VerticalRatio|VerticalRatio]]&lt;br /&gt;
*[[#Volume|Volume]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|+Slot Variables &lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#Occupied|Occupied]]&lt;br /&gt;
*[[#OccupantHash|OccupantHash]]&lt;br /&gt;
*[[#Quantity|Quantity]]&lt;br /&gt;
*[[#Damage|Damage]]&lt;br /&gt;
*[[#Efficiency|Efficiency]]&lt;br /&gt;
*[[#Health|Health]]&lt;br /&gt;
*[[#Growth|Growth]]&lt;br /&gt;
*[[#Pressure|Pressure]]&lt;br /&gt;
*[[#Temperature|Temperature]]&lt;br /&gt;
*[[#Charge|Charge]]&lt;br /&gt;
*[[#ChargeRatio|ChargeRatio]]&lt;br /&gt;
*[[#Class|Class]]&lt;br /&gt;
*[[#PressureWaste|PressureWaste]]&lt;br /&gt;
*[[#PressureAir|PressureAir]]&lt;br /&gt;
*[[#MaxQuantity|MaxQuantity]]&lt;br /&gt;
*[[#Mature|Mature]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=IC10&amp;diff=7587</id>
		<title>IC10</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=IC10&amp;diff=7587"/>
		<updated>2018-10-23T06:58:13Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: /* Examples */ added an autohydro script which makes use of the most up to date (at this time) in game compiler.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=MIPS scripting language for IC10 housings / chips&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// Text after a // will be ignored to the end of the line. The amount of white&lt;br /&gt;
// space between arguments isn&#039;t important, but new lines start a new command.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Functions==&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;alias&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;alias&lt;br /&gt;
:alias str r? d? // labels register or device reference with name.  When alias is applied to a device, it will effect what shows on the screws in the IC base.  (housing)&lt;br /&gt;
&amp;lt;code&amp;gt;alias vTemperature r0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;alias dAutoHydro1 d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;move&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;move    &lt;br /&gt;
:d s     // stores the value of s in d&lt;br /&gt;
&amp;lt;code&amp;gt;move r0 42 # Store 42 in register 0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;add&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;add     &lt;br /&gt;
:d s t   // calculates s + t and stores the result in d&lt;br /&gt;
&amp;lt;code&amp;gt;add r0 r1 1 # add 1 to r1 and store the result as r0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;add r0 r0 1 # increment r0 by one&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;sub&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;sub     &lt;br /&gt;
:d s t   // calculates s - t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;mul&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;mul     &lt;br /&gt;
:d s t   // calculates s * t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;div     &lt;br /&gt;
:d s t   // calculates s / t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;mod&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;mod     &lt;br /&gt;
:d s t   &lt;br /&gt;
::// calculates s mod t and stores the result in d. Note this&lt;br /&gt;
::// doesn&#039;t behave like the % operator - the result will be &lt;br /&gt;
::// positive even if the either of the operands are negative&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;slt&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;slt     &lt;br /&gt;
:d s t   // stores 1 in d if s &amp;lt; t, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;sqrt&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;sqrt    &lt;br /&gt;
:d s     // calculates sqrt(s) and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;round&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;round   &lt;br /&gt;
:d s     // finds the rounded value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;trunc&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;trunc   &lt;br /&gt;
:d s     // finds the truncated value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;ceil&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ceil   &lt;br /&gt;
: d s     // calculates the ceiling of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;floor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;floor  &lt;br /&gt;
: d s     // calculates the floor of s and stores the result in d&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;max&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;max    &lt;br /&gt;
: d s t   // calculates the maximum of s and t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;min&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;min    &lt;br /&gt;
: d s t   // calculates the minimum of s and t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;abs&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;abs    &lt;br /&gt;
: d s     // calculates the absolute value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;log&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;log    &lt;br /&gt;
: d s     // calculates the natural logarithm of s and stores the result&lt;br /&gt;
::// in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;exp&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;exp    &lt;br /&gt;
: d s     // calculates the exponential of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;rand&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;rand   &lt;br /&gt;
: d       // selects a random number uniformly at random between 0 and 1&lt;br /&gt;
::// inclusive and stores the result in d&lt;br /&gt;
&lt;br /&gt;
::// boolean arithmetic uses the C convention that 0 is false and any non-zero&lt;br /&gt;
::// value is true.&lt;br /&gt;
&amp;lt;div id=&amp;quot;and&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;and    &lt;br /&gt;
: d s t   // stores 1 in d if both s and t have non-zero values,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;or&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;or     &lt;br /&gt;
: d s t   // stores 1 in d if either s or t have non-zero values,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;xor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;xor    &lt;br /&gt;
: d s t   // stores 1 in d if exactly one of s and t are non-zero,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;nor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;nor &lt;br /&gt;
:    d s t   // stores 1 in d if both s and t equal zero, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// Lines are numbered starting at zero&lt;br /&gt;
&amp;lt;div id=&amp;quot;j&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;j&lt;br /&gt;
:             a // jumps to line a.&lt;br /&gt;
&amp;lt;div id=&amp;quot;bltz&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bltz&lt;br /&gt;
:      s   a // jumps to line a if s &amp;lt;  0&lt;br /&gt;
&amp;lt;div id=&amp;quot;blez&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;blez &lt;br /&gt;
:     s   a // jumps to line a if s &amp;lt;= 0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;bgez&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bgez &lt;br /&gt;
:     s   a // jumps to line a if s &amp;gt;= 0&lt;br /&gt;
&amp;lt;div id=&amp;quot;bgtz&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bgtz&lt;br /&gt;
:      s   a // jumps to line a if s &amp;gt;  0&lt;br /&gt;
&amp;lt;div id=&amp;quot;beq&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;beq &lt;br /&gt;
:      s t a // jumps to line a if s == t&lt;br /&gt;
&amp;lt;div id=&amp;quot;bne&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bne &lt;br /&gt;
:      s t a // jumps to line a if s != t&lt;br /&gt;
&amp;lt;div id=&amp;quot;bdseal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bdseal&lt;br /&gt;
:    d? a(r?|num) // Jump execution to line a and store current line number if device d? is set.&lt;br /&gt;
&amp;lt;code&amp;gt;bdseal d0 32 #Store line number and jump to line 32 if d0 is assigned.&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;bdseal dThisVictim HarvestCrop #Store line in ra and jump to sub HarvestCrop if device dThisVictim is assigned.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;yield&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;yield           &lt;br /&gt;
: 	// ceases code execution for this power tick&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;#&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
; #&lt;br /&gt;
:     // The following text will be ignored during compiling; use this to create comments.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Device Variables==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Activate&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Activate&lt;br /&gt;
:1 if device is activated (usually means running), otherwise 0&lt;br /&gt;
:&amp;lt;code&amp;gt;l r0 d0 Activate # sets r0 to 1 if on or 0 of off&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;AirRelease&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;AirRelease&lt;br /&gt;
&amp;lt;div id=&amp;quot;Charge&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Charge&lt;br /&gt;
:    The current charge the device has.&lt;br /&gt;
&amp;lt;div id=&amp;quot;CLearMemory&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;CLearMemory&lt;br /&gt;
:    When set to 1, clears the counter memory (e.g. ExportCount).  Will set itself back to 0 when triggered.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Color&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Color&lt;br /&gt;
&amp;lt;div id=&amp;quot;CompletionRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;CompletionRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;ElevatorLevel&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ElevatorLevel&lt;br /&gt;
&amp;lt;div id=&amp;quot;ElevatorSpeed&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ElevatorSpeed&lt;br /&gt;
&amp;lt;div id=&amp;quot;Error&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Error&lt;br /&gt;
:	1 if device is in error state, otherwise 0&lt;br /&gt;
&amp;lt;div id=&amp;quot;ExportCount&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ExportCount&lt;br /&gt;
:    How many items exporfted since last ClearMemory.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Filtration&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Filtration&lt;br /&gt;
:	The current state of the filtration system.  For example filtration = 1 for a Hardsuit when filtration is On.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Harvest&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Harvest&lt;br /&gt;
:	Performs the harvesting action for any plant based machinery.&lt;br /&gt;
:  &amp;lt;code&amp;gt;s d0 Harvest 1 # Performs 1 harvest action on device d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;Horizontal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Horizontal&lt;br /&gt;
&amp;lt;div id=&amp;quot;HorizontalRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;HorizontalRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;Idle&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Idle&lt;br /&gt;
&amp;lt;div id=&amp;quot;ImportCount&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ImportCount&lt;br /&gt;
&amp;lt;div id=&amp;quot;Lock&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Lock&lt;br /&gt;
&amp;lt;div id=&amp;quot;Maximum&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Maximum&lt;br /&gt;
&amp;lt;div id=&amp;quot;Mode&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Mode&lt;br /&gt;
&amp;lt;div id=&amp;quot;On&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;On&lt;br /&gt;
&amp;lt;div id=&amp;quot;Open&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Open&lt;br /&gt;
&amp;lt;div id=&amp;quot;Output&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Output&lt;br /&gt;
&amp;lt;div id=&amp;quot;Plant&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Plant&lt;br /&gt;
:    Performs the planting operation for any plant based machinery.&lt;br /&gt;
:  &amp;lt;code&amp;gt;s d0 Plant 1 # Plants one crop in device d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionX&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionX&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionY&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionY&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionZ&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionZ&lt;br /&gt;
&amp;lt;div id=&amp;quot;Power&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Power&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerActual&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerActual&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerPotential&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerPotential&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerRequired&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerRequired&lt;br /&gt;
&amp;lt;div id=&amp;quot;Pressure&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Pressure&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureExternal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureExternal&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureInteral&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureInteral&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureSetting&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureSetting&lt;br /&gt;
&amp;lt;div id=&amp;quot;Quantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Quantity&lt;br /&gt;
:	Total quantity in the device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Ratio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Ratio&lt;br /&gt;
:	Context specific value depending on device, 0 to 1 based ratio.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioCarbonDioxide&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioCarbonDioxide&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioNitrogen&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioNitrogen&lt;br /&gt;
:	The ratio of nitrogen in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioOxygen&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioOxygen&lt;br /&gt;
:	The ratio of oxygen in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioPollutant&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioPollutant&lt;br /&gt;
:	The ratio of pollutant in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioVolatiles&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioVolatiles&lt;br /&gt;
:	The ratio of volatiles in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioWater&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioWater&lt;br /&gt;
:	The ratio of water in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Reagents&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Reagents&lt;br /&gt;
&amp;lt;div id=&amp;quot;RecipeHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RecipeHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;RequestHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RequestHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;RequiredPower&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RequiredPower&lt;br /&gt;
&amp;lt;div id=&amp;quot;Setting&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Setting&lt;br /&gt;
&amp;lt;div id=&amp;quot;SolarAngle&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;SolarAngle&lt;br /&gt;
:    Solar angle of the device.&lt;br /&gt;
:  &amp;lt;code&amp;gt;l r0 d0 SolarAngle # Sets r0 to the solar angle of d0.&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;Temperature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Temperature&lt;br /&gt;
&amp;lt;div id=&amp;quot;TemperatureSettings&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;TemperatureSettings&lt;br /&gt;
&amp;lt;div id=&amp;quot;TotalMoles&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;TotalMoles&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityMagnitude&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityMagnitude&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeX&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeX&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeY&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeY&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeZ&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeZ&lt;br /&gt;
&amp;lt;div id=&amp;quot;Vertical&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Vertical&lt;br /&gt;
:	Vertical setting of the device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;VerticalRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VerticalRatio&lt;br /&gt;
:	Ratio of vertical setting for device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Volume&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Volume&lt;br /&gt;
:	Returns the device atmosphere volume&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Slot Variables==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Occupied&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Occupied&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 2 Occupied #Stores 1 in r0 if d0 has more seeds&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ls vOccupied dThisVictim 2 Occupied #stores 1 in vOccupied if dThisVictim has more seeds&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;OccupantHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;OccupantHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;Quantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Quantity&lt;br /&gt;
&amp;lt;div id=&amp;quot;Damage&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Damage&lt;br /&gt;
&amp;lt;div id=&amp;quot;Efficiency&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Efficiency&lt;br /&gt;
&amp;lt;div id=&amp;quot;Health&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Health&lt;br /&gt;
&amp;lt;div id=&amp;quot;Growth&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Growth&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 0 Growth # Store the numerical growth stage of d0 in r0&amp;lt;/code&amp;gt; &lt;br /&gt;
&amp;lt;div id=&amp;quot;Pressure&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Pressure&lt;br /&gt;
&amp;lt;div id=&amp;quot;Temperature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Temperature&lt;br /&gt;
&amp;lt;div id=&amp;quot;Charge&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Charge&lt;br /&gt;
&amp;lt;div id=&amp;quot;ChargeRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ChargeRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;Class&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Class&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureWaste&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureWaste&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureAir&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureAir&lt;br /&gt;
&amp;lt;div id=&amp;quot;MaxQuantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;MaxQuantity&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Mature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Mature&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 0 Mature # Store 1 in r0 if d0 has a mature crop&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ls vMature dThisVictim 0 Mature # Store 1 in vMature if dThisVictim has a mature crop&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Examples==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====This example script automates autohydro units and powers the lights off during the day when they&#039;re not needed.  (Hit Expand)====&lt;br /&gt;
Uses aliases, sub-routines and comments to minimize lines of code and adaptability.&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot; data-expandtext=&amp;quot;{{int:Expand Sample AutoHydro Script}}&amp;quot; data-collapsetext=&amp;quot;{{int:Collapse Sample AutoHydro Script}}&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
alias vMature r0​&lt;br /&gt;
alias vOccupied r1​&lt;br /&gt;
alias isDayLight r2​&lt;br /&gt;
alias isOccupied r3​&lt;br /&gt;
alias dSensor d5​&lt;br /&gt;
​&lt;br /&gt;
​&lt;br /&gt;
#start of Program Loop​&lt;br /&gt;
start:​&lt;br /&gt;
l isDayLight dSensor Activate​  #Check if it&#039;s daytime or not.&lt;br /&gt;
​&lt;br /&gt;
# For each device, harvest, plant, powerdown, then power on depending on conditions.&lt;br /&gt;
alias dThisVictim d0​  #Begin processing device 0&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
alias dThisVictim d1​  #Begin processing device 1&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
alias dThisVictim d2​  #Begin processing device 2&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
alias dThisVictim d3​  #Begin processing device 3&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
alias dThisVictim d4​  #Begin processing device 4&lt;br /&gt;
bdseal dThisVictim HarvestCrop​&lt;br /&gt;
bdseal dThisVictim PlantCrop​&lt;br /&gt;
bgtzal isDayLight PowerDown​&lt;br /&gt;
blezal isDayLight TurnitOn​&lt;br /&gt;
#Can&#039;t do a D5 because that&#039;s our sensor.​&lt;br /&gt;
​&lt;br /&gt;
j start​ #Return to the beginning of the program loop.  (Yields here may save processing power)&lt;br /&gt;
​&lt;br /&gt;
​​&lt;br /&gt;
HarvestCrop:​&lt;br /&gt;
ls vMature dThisVictim 0 Mature​&lt;br /&gt;
blez vMature ra​  #If the crop is not mature, return&lt;br /&gt;
s dThisVictim Harvest 1​ #If the crop is mature, harvest it (one).&lt;br /&gt;
j ra​ #return&lt;br /&gt;
​&lt;br /&gt;
&lt;br /&gt;
PlantCrop:​&lt;br /&gt;
ls vOccupied dThisVictim 2 Occupied #seeds to plant​&lt;br /&gt;
blez vOccupied ra​ #If the machine has no seeds to plant, return.&lt;br /&gt;
ls vOccupied dThisVictim 0 Occupied #something growin​g&lt;br /&gt;
bgtz vOccupied ra​  # If the crop plot is occupied, return.&lt;br /&gt;
s dThisVictim Plant 1​  # if we made it this far, plant the crop&lt;br /&gt;
j ra​ #return&lt;br /&gt;
​&lt;br /&gt;
​&lt;br /&gt;
​&lt;br /&gt;
PowerDown:​&lt;br /&gt;
s dThisVictim On 0​ #Power the machine down.&lt;br /&gt;
​&lt;br /&gt;
j ra #Jump to line we came from​&lt;br /&gt;
​&lt;br /&gt;
​&lt;br /&gt;
TurnitOn:​&lt;br /&gt;
s dThisVictim On 1​ #Power the machine up&lt;br /&gt;
j ra&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
This is a sample timer command set, alternating between 1 for 1 tick (0.5s), then off for 2 ticks (1s).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
move r0 0		// Line 0: move the value 0 to register0&lt;br /&gt;
sub r1 r0 3		// Line 1: subtract 3 from the value in r0 and write it to r1&lt;br /&gt;
bltz r1 4		// Line 2: jump to line 4 if r1 &amp;lt; 0 (skip the next line)&lt;br /&gt;
move r0 0		// Line 3: move the value 0 to register0 &lt;br /&gt;
slt o r0 1		// Line 4: if r0 &amp;lt; 1 write 1 to the output, otherwise 0.&lt;br /&gt;
add r0 r0 1		// Line 5: increment r0 by 1&lt;br /&gt;
yield			// Line 6: wait until next power tick (0.5s)&lt;br /&gt;
j 1			// Line 7: jump back to line 1	&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
so you will do l r0 d0 SolarAngle&lt;br /&gt;
Sorry had last args swapped&lt;br /&gt;
That would read in the value&lt;br /&gt;
while,&lt;br /&gt;
s d1 Vertical r0&lt;br /&gt;
Would write the contents of r0 into the devices 1&#039;s Vertical property&lt;br /&gt;
additionally you can make some aliases&lt;br /&gt;
alias SolarSensor d0&lt;br /&gt;
l r0 SolarSensor SolarAngle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Another example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Now the IC is inserted into the housing. The screws D0-D5 can be adjusted directly to the equipment (sensor, console, solar panel, etc.). The ports &#039;o&#039; and &#039;i0-i2&#039; have been removed. Instead, commands that directly read and write hardware parameters are added.&lt;br /&gt;
l &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
 reads the value of the parameter&lt;br /&gt;
s &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt; &amp;lt;register_or_value&amp;gt;&lt;br /&gt;
 writes the value of the parameter&lt;br /&gt;
ls &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;slot_number&amp;gt; &amp;lt;parameter&amp;gt; &lt;br /&gt;
 reads the parameter value from the slot&lt;br /&gt;
For example, &lt;br /&gt;
l r0 d0 Horizontal&lt;br /&gt;
 &lt;br /&gt;
s d5 Activate 1&lt;br /&gt;
 &lt;br /&gt;
ls r3 db 0 OccupantHash&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
-----&lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
* [https://hastebin.com/uwuhidozun.md]&lt;br /&gt;
* [http://www.easy68k.com/]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Index==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|+Functions &lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#abs|abs]]&lt;br /&gt;
*[[#add|add]]&lt;br /&gt;
*[[#alias|alias]]&lt;br /&gt;
*[[#and|and]]&lt;br /&gt;
*[[#beq|beq]]&lt;br /&gt;
*[[#bgez|bgez]]&lt;br /&gt;
*[[#bgtz|bgtz]]&lt;br /&gt;
*[[#blez|blez]]&lt;br /&gt;
*[[#bltz|bltz]]&lt;br /&gt;
*[[#bne|bne]]&lt;br /&gt;
*[[#breq|breq]]&lt;br /&gt;
*[[#brgez|brgez]]&lt;br /&gt;
*[[#brgtz|brgtz]]&lt;br /&gt;
*[[#brlez|brlez]]&lt;br /&gt;
*[[#brltz|brltz]]&lt;br /&gt;
*[[#brne|brne]]&lt;br /&gt;
*[[#ceil|cell]]&lt;br /&gt;
*[[#div|div]]&lt;br /&gt;
*[[#exp|exp]]&lt;br /&gt;
*[[#floor|floor]]&lt;br /&gt;
*[[#j|j]]&lt;br /&gt;
*[[#jr|jr]]&lt;br /&gt;
*[[#l|l]]&lt;br /&gt;
*[[#log|log]]&lt;br /&gt;
*[[#ls|ls]]&lt;br /&gt;
*[[#max|max]]&lt;br /&gt;
*[[#min|min]]&lt;br /&gt;
*[[#mod|mod]]&lt;br /&gt;
*[[#move|move]]&lt;br /&gt;
*[[#mul|mul]]&lt;br /&gt;
*[[#nor|nor]]&lt;br /&gt;
*[[#or|or]]&lt;br /&gt;
*[[#rand|rand]]&lt;br /&gt;
*[[#round|round]]&lt;br /&gt;
*[[#s|s]]&lt;br /&gt;
*[[#slt|slt]]&lt;br /&gt;
*[[#sqrt|sqrt]]&lt;br /&gt;
*[[#sub|sub]]&lt;br /&gt;
*[[#trunc|trunc]]&lt;br /&gt;
*[[#xor|xor]]xor&lt;br /&gt;
*[[#yield|yield]]&lt;br /&gt;
*[[##|#]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|+Device Variables &lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#Activate|Activate]]&lt;br /&gt;
*[[#AirRelease|AirRelease]]&lt;br /&gt;
*[[#Charge|Charge]]&lt;br /&gt;
*[[#CLearMemory|CLearMemory]]&lt;br /&gt;
*[[#Color|Color]]&lt;br /&gt;
*[[#CompletionRatio|CompletionRatio]]&lt;br /&gt;
*[[#ElevatorLevel|ElevatorLevel]]&lt;br /&gt;
*[[#ElevatorSpeed|ElevatorSpeed]]&lt;br /&gt;
*[[#Error|Error]]&lt;br /&gt;
*[[#ExportCount|ExportCount]]&lt;br /&gt;
*[[#Filtration|Filtration]]&lt;br /&gt;
*[[#Harvest|Harvest]]&lt;br /&gt;
*[[#Horizontal|Horizontal]]&lt;br /&gt;
*[[#HorizontalRatio|HorizontalRatio]]&lt;br /&gt;
*[[#Idle|Idle]]&lt;br /&gt;
*[[#ImportCount|ImportCount]]&lt;br /&gt;
*[[#Lock|Lock]]&lt;br /&gt;
*[[#Maximum|Maximum]]&lt;br /&gt;
*[[#Mode|Mode]]&lt;br /&gt;
*[[#On|On]]&lt;br /&gt;
*[[#Open|Open]]&lt;br /&gt;
*[[#Output|Output]]&lt;br /&gt;
*[[#Plant|Plant]]&lt;br /&gt;
*[[#PositionX|PositionX]]&lt;br /&gt;
*[[#PositionY|PositionY]]&lt;br /&gt;
*[[#PositionZ|PositionZ]]&lt;br /&gt;
*[[#Power|Power]]&lt;br /&gt;
*[[#PowerActual|PowerActual]]&lt;br /&gt;
*[[#PowerPotential|PowerPotential]]&lt;br /&gt;
*[[#PowerRequired|PowerRequired]]&lt;br /&gt;
*[[#Pressure|Pressure]]&lt;br /&gt;
*[[#PressureExternal|PressureExternal]]&lt;br /&gt;
*[[#PressureInteral|PressureInteral]]&lt;br /&gt;
*[[#PressureSetting|PressureSetting]]&lt;br /&gt;
*[[#Quantity|Quantity]]&lt;br /&gt;
*[[#Ratio|Ratio]]&lt;br /&gt;
*[[#RatioCarbonDioxide|RatioCarbonDioxide]]&lt;br /&gt;
*[[#RatioNitrogen|RatioNitrogen]]&lt;br /&gt;
*[[#RatioOxygen|RatioOxygen]]&lt;br /&gt;
*[[#RatioPollutant|RatioPollutant]]&lt;br /&gt;
*[[#RatioVolatiles|RatioVolatiles]]&lt;br /&gt;
*[[#RatioWater|RatioWater]]&lt;br /&gt;
*[[#Reagents|Reagents]]&lt;br /&gt;
*[[#RecipeHash|RecipeHash]]&lt;br /&gt;
*[[#RequestHash|RequestHash]]&lt;br /&gt;
*[[#RequiredPower|RequiredPower]]&lt;br /&gt;
*[[#Setting|Setting]]&lt;br /&gt;
*[[#SolarAngle|SolarAngle]]&lt;br /&gt;
*[[#Temperature|Temperature]]&lt;br /&gt;
*[[#TemperatureSettings|TemperatureSettings]]&lt;br /&gt;
*[[#TotalMoles|TotalMoles]]&lt;br /&gt;
*[[#VelocityMagnitude|VelocityMagnitude]]&lt;br /&gt;
*[[#VelocityRelativeX|VelocityRelativeX]]&lt;br /&gt;
*[[#VelocityRelativeY|VelocityRelativeY]]&lt;br /&gt;
*[[#VelocityRelativeZ|VelocityRelativeZ]]&lt;br /&gt;
*[[#Vertical|Vertical]]&lt;br /&gt;
*[[#VerticalRatio|VerticalRatio]]&lt;br /&gt;
*[[#Volume|Volume]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|+Slot Variables &lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#Occupied|Occupied]]&lt;br /&gt;
*[[#OccupantHash|OccupantHash]]&lt;br /&gt;
*[[#Quantity|Quantity]]&lt;br /&gt;
*[[#Damage|Damage]]&lt;br /&gt;
*[[#Efficiency|Efficiency]]&lt;br /&gt;
*[[#Health|Health]]&lt;br /&gt;
*[[#Growth|Growth]]&lt;br /&gt;
*[[#Pressure|Pressure]]&lt;br /&gt;
*[[#Temperature|Temperature]]&lt;br /&gt;
*[[#Charge|Charge]]&lt;br /&gt;
*[[#ChargeRatio|ChargeRatio]]&lt;br /&gt;
*[[#Class|Class]]&lt;br /&gt;
*[[#PressureWaste|PressureWaste]]&lt;br /&gt;
*[[#PressureAir|PressureAir]]&lt;br /&gt;
*[[#MaxQuantity|MaxQuantity]]&lt;br /&gt;
*[[#Mature|Mature]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=IC10&amp;diff=7586</id>
		<title>IC10</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=IC10&amp;diff=7586"/>
		<updated>2018-10-23T06:13:47Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: removed collapsible sections as that broke internal links, moved index to the end so it wouldn&amp;#039;t precede table of contents, and added an &amp;#039;index&amp;#039; section so it is easily reached from the table of contents.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=MIPS scripting language for IC10 housings / chips&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// Text after a // will be ignored to the end of the line. The amount of white&lt;br /&gt;
// space between arguments isn&#039;t important, but new lines start a new command.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Functions==&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;alias&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;alias&lt;br /&gt;
:alias str r? d? // labels register or device reference with name.  When alias is applied to a device, it will effect what shows on the screws in the IC base.  (housing)&lt;br /&gt;
&amp;lt;code&amp;gt;alias vTemperature r0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;alias dAutoHydro1 d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;move&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;move    &lt;br /&gt;
:d s     // stores the value of s in d&lt;br /&gt;
&amp;lt;code&amp;gt;move r0 42 # Store 42 in register 0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;add&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;add     &lt;br /&gt;
:d s t   // calculates s + t and stores the result in d&lt;br /&gt;
&amp;lt;code&amp;gt;add r0 r1 1 # add 1 to r1 and store the result as r0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;add r0 r0 1 # increment r0 by one&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;sub&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;sub     &lt;br /&gt;
:d s t   // calculates s - t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;mul&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;mul     &lt;br /&gt;
:d s t   // calculates s * t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;div     &lt;br /&gt;
:d s t   // calculates s / t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;mod&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;mod     &lt;br /&gt;
:d s t   &lt;br /&gt;
::// calculates s mod t and stores the result in d. Note this&lt;br /&gt;
::// doesn&#039;t behave like the % operator - the result will be &lt;br /&gt;
::// positive even if the either of the operands are negative&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;slt&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;slt     &lt;br /&gt;
:d s t   // stores 1 in d if s &amp;lt; t, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;sqrt&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;sqrt    &lt;br /&gt;
:d s     // calculates sqrt(s) and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;round&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;round   &lt;br /&gt;
:d s     // finds the rounded value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;trunc&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;trunc   &lt;br /&gt;
:d s     // finds the truncated value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;ceil&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ceil   &lt;br /&gt;
: d s     // calculates the ceiling of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;floor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;floor  &lt;br /&gt;
: d s     // calculates the floor of s and stores the result in d&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;max&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;max    &lt;br /&gt;
: d s t   // calculates the maximum of s and t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;min&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;min    &lt;br /&gt;
: d s t   // calculates the minimum of s and t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;abs&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;abs    &lt;br /&gt;
: d s     // calculates the absolute value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;log&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;log    &lt;br /&gt;
: d s     // calculates the natural logarithm of s and stores the result&lt;br /&gt;
::// in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;exp&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;exp    &lt;br /&gt;
: d s     // calculates the exponential of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;rand&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;rand   &lt;br /&gt;
: d       // selects a random number uniformly at random between 0 and 1&lt;br /&gt;
::// inclusive and stores the result in d&lt;br /&gt;
&lt;br /&gt;
::// boolean arithmetic uses the C convention that 0 is false and any non-zero&lt;br /&gt;
::// value is true.&lt;br /&gt;
&amp;lt;div id=&amp;quot;and&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;and    &lt;br /&gt;
: d s t   // stores 1 in d if both s and t have non-zero values,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;or&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;or     &lt;br /&gt;
: d s t   // stores 1 in d if either s or t have non-zero values,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;xor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;xor    &lt;br /&gt;
: d s t   // stores 1 in d if exactly one of s and t are non-zero,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;nor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;nor &lt;br /&gt;
:    d s t   // stores 1 in d if both s and t equal zero, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// Lines are numbered starting at zero&lt;br /&gt;
&amp;lt;div id=&amp;quot;j&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;j&lt;br /&gt;
:             a // jumps to line a.&lt;br /&gt;
&amp;lt;div id=&amp;quot;bltz&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bltz&lt;br /&gt;
:      s   a // jumps to line a if s &amp;lt;  0&lt;br /&gt;
&amp;lt;div id=&amp;quot;blez&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;blez &lt;br /&gt;
:     s   a // jumps to line a if s &amp;lt;= 0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;bgez&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bgez &lt;br /&gt;
:     s   a // jumps to line a if s &amp;gt;= 0&lt;br /&gt;
&amp;lt;div id=&amp;quot;bgtz&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bgtz&lt;br /&gt;
:      s   a // jumps to line a if s &amp;gt;  0&lt;br /&gt;
&amp;lt;div id=&amp;quot;beq&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;beq &lt;br /&gt;
:      s t a // jumps to line a if s == t&lt;br /&gt;
&amp;lt;div id=&amp;quot;bne&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bne &lt;br /&gt;
:      s t a // jumps to line a if s != t&lt;br /&gt;
&amp;lt;div id=&amp;quot;bdseal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bdseal&lt;br /&gt;
:    d? a(r?|num) // Jump execution to line a and store current line number if device d? is set.&lt;br /&gt;
&amp;lt;code&amp;gt;bdseal d0 32 #Store line number and jump to line 32 if d0 is assigned.&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;bdseal dThisVictim HarvestCrop #Store line in ra and jump to sub HarvestCrop if device dThisVictim is assigned.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;yield&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;yield           &lt;br /&gt;
: 	// ceases code execution for this power tick&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;#&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
; #&lt;br /&gt;
:     // The following text will be ignored during compiling; use this to create comments.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Device Variables==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Activate&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Activate&lt;br /&gt;
:1 if device is activated (usually means running), otherwise 0&lt;br /&gt;
:&amp;lt;code&amp;gt;l r0 d0 Activate # sets r0 to 1 if on or 0 of off&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;AirRelease&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;AirRelease&lt;br /&gt;
&amp;lt;div id=&amp;quot;Charge&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Charge&lt;br /&gt;
:    The current charge the device has.&lt;br /&gt;
&amp;lt;div id=&amp;quot;CLearMemory&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;CLearMemory&lt;br /&gt;
:    When set to 1, clears the counter memory (e.g. ExportCount).  Will set itself back to 0 when triggered.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Color&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Color&lt;br /&gt;
&amp;lt;div id=&amp;quot;CompletionRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;CompletionRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;ElevatorLevel&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ElevatorLevel&lt;br /&gt;
&amp;lt;div id=&amp;quot;ElevatorSpeed&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ElevatorSpeed&lt;br /&gt;
&amp;lt;div id=&amp;quot;Error&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Error&lt;br /&gt;
:	1 if device is in error state, otherwise 0&lt;br /&gt;
&amp;lt;div id=&amp;quot;ExportCount&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ExportCount&lt;br /&gt;
:    How many items exporfted since last ClearMemory.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Filtration&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Filtration&lt;br /&gt;
:	The current state of the filtration system.  For example filtration = 1 for a Hardsuit when filtration is On.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Harvest&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Harvest&lt;br /&gt;
:	Performs the harvesting action for any plant based machinery.&lt;br /&gt;
:  &amp;lt;code&amp;gt;s d0 Harvest 1 # Performs 1 harvest action on device d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;Horizontal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Horizontal&lt;br /&gt;
&amp;lt;div id=&amp;quot;HorizontalRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;HorizontalRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;Idle&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Idle&lt;br /&gt;
&amp;lt;div id=&amp;quot;ImportCount&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ImportCount&lt;br /&gt;
&amp;lt;div id=&amp;quot;Lock&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Lock&lt;br /&gt;
&amp;lt;div id=&amp;quot;Maximum&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Maximum&lt;br /&gt;
&amp;lt;div id=&amp;quot;Mode&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Mode&lt;br /&gt;
&amp;lt;div id=&amp;quot;On&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;On&lt;br /&gt;
&amp;lt;div id=&amp;quot;Open&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Open&lt;br /&gt;
&amp;lt;div id=&amp;quot;Output&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Output&lt;br /&gt;
&amp;lt;div id=&amp;quot;Plant&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Plant&lt;br /&gt;
:    Performs the planting operation for any plant based machinery.&lt;br /&gt;
:  &amp;lt;code&amp;gt;s d0 Plant 1 # Plants one crop in device d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionX&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionX&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionY&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionY&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionZ&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionZ&lt;br /&gt;
&amp;lt;div id=&amp;quot;Power&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Power&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerActual&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerActual&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerPotential&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerPotential&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerRequired&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerRequired&lt;br /&gt;
&amp;lt;div id=&amp;quot;Pressure&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Pressure&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureExternal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureExternal&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureInteral&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureInteral&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureSetting&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureSetting&lt;br /&gt;
&amp;lt;div id=&amp;quot;Quantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Quantity&lt;br /&gt;
:	Total quantity in the device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Ratio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Ratio&lt;br /&gt;
:	Context specific value depending on device, 0 to 1 based ratio.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioCarbonDioxide&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioCarbonDioxide&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioNitrogen&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioNitrogen&lt;br /&gt;
:	The ratio of nitrogen in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioOxygen&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioOxygen&lt;br /&gt;
:	The ratio of oxygen in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioPollutant&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioPollutant&lt;br /&gt;
:	The ratio of pollutant in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioVolatiles&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioVolatiles&lt;br /&gt;
:	The ratio of volatiles in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioWater&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioWater&lt;br /&gt;
:	The ratio of water in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Reagents&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Reagents&lt;br /&gt;
&amp;lt;div id=&amp;quot;RecipeHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RecipeHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;RequestHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RequestHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;RequiredPower&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RequiredPower&lt;br /&gt;
&amp;lt;div id=&amp;quot;Setting&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Setting&lt;br /&gt;
&amp;lt;div id=&amp;quot;SolarAngle&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;SolarAngle&lt;br /&gt;
:    Solar angle of the device.&lt;br /&gt;
:  &amp;lt;code&amp;gt;l r0 d0 SolarAngle # Sets r0 to the solar angle of d0.&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;Temperature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Temperature&lt;br /&gt;
&amp;lt;div id=&amp;quot;TemperatureSettings&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;TemperatureSettings&lt;br /&gt;
&amp;lt;div id=&amp;quot;TotalMoles&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;TotalMoles&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityMagnitude&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityMagnitude&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeX&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeX&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeY&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeY&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeZ&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeZ&lt;br /&gt;
&amp;lt;div id=&amp;quot;Vertical&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Vertical&lt;br /&gt;
:	Vertical setting of the device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;VerticalRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VerticalRatio&lt;br /&gt;
:	Ratio of vertical setting for device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Volume&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Volume&lt;br /&gt;
:	Returns the device atmosphere volume&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Slot Variables==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Occupied&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Occupied&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 2 Occupied #Stores 1 in r0 if d0 has more seeds&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ls vOccupied dThisVictim 2 Occupied #stores 1 in vOccupied if dThisVictim has more seeds&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;OccupantHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;OccupantHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;Quantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Quantity&lt;br /&gt;
&amp;lt;div id=&amp;quot;Damage&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Damage&lt;br /&gt;
&amp;lt;div id=&amp;quot;Efficiency&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Efficiency&lt;br /&gt;
&amp;lt;div id=&amp;quot;Health&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Health&lt;br /&gt;
&amp;lt;div id=&amp;quot;Growth&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Growth&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 0 Growth # Store the numerical growth stage of d0 in r0&amp;lt;/code&amp;gt; &lt;br /&gt;
&amp;lt;div id=&amp;quot;Pressure&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Pressure&lt;br /&gt;
&amp;lt;div id=&amp;quot;Temperature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Temperature&lt;br /&gt;
&amp;lt;div id=&amp;quot;Charge&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Charge&lt;br /&gt;
&amp;lt;div id=&amp;quot;ChargeRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ChargeRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;Class&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Class&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureWaste&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureWaste&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureAir&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureAir&lt;br /&gt;
&amp;lt;div id=&amp;quot;MaxQuantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;MaxQuantity&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Mature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Mature&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 0 Mature # Store 1 in r0 if d0 has a mature crop&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ls vMature dThisVictim 0 Mature # Store 1 in vMature if dThisVictim has a mature crop&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Examples==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is a sample timer command set, alternating between 1 for 1 tick (0.5s), then off for 2 ticks (1s).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
move r0 0		// Line 0: move the value 0 to register0&lt;br /&gt;
sub r1 r0 3		// Line 1: subtract 3 from the value in r0 and write it to r1&lt;br /&gt;
bltz r1 4		// Line 2: jump to line 4 if r1 &amp;lt; 0 (skip the next line)&lt;br /&gt;
move r0 0		// Line 3: move the value 0 to register0 &lt;br /&gt;
slt o r0 1		// Line 4: if r0 &amp;lt; 1 write 1 to the output, otherwise 0.&lt;br /&gt;
add r0 r0 1		// Line 5: increment r0 by 1&lt;br /&gt;
yield			// Line 6: wait until next power tick (0.5s)&lt;br /&gt;
j 1			// Line 7: jump back to line 1	&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
so you will do l r0 d0 SolarAngle&lt;br /&gt;
Sorry had last args swapped&lt;br /&gt;
That would read in the value&lt;br /&gt;
while,&lt;br /&gt;
s d1 Vertical r0&lt;br /&gt;
Would write the contents of r0 into the devices 1&#039;s Vertical property&lt;br /&gt;
additionally you can make some aliases&lt;br /&gt;
alias SolarSensor d0&lt;br /&gt;
l r0 SolarSensor SolarAngle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Another example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Now the IC is inserted into the housing. The screws D0-D5 can be adjusted directly to the equipment (sensor, console, solar panel, etc.). The ports &#039;o&#039; and &#039;i0-i2&#039; have been removed. Instead, commands that directly read and write hardware parameters are added.&lt;br /&gt;
l &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
 reads the value of the parameter&lt;br /&gt;
s &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt; &amp;lt;register_or_value&amp;gt;&lt;br /&gt;
 writes the value of the parameter&lt;br /&gt;
ls &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;slot_number&amp;gt; &amp;lt;parameter&amp;gt; &lt;br /&gt;
 reads the parameter value from the slot&lt;br /&gt;
For example, &lt;br /&gt;
l r0 d0 Horizontal&lt;br /&gt;
 &lt;br /&gt;
s d5 Activate 1&lt;br /&gt;
 &lt;br /&gt;
ls r3 db 0 OccupantHash&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
-----&lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
* [https://hastebin.com/uwuhidozun.md]&lt;br /&gt;
* [http://www.easy68k.com/]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Index==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|+Functions &lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#abs|abs]]&lt;br /&gt;
*[[#add|add]]&lt;br /&gt;
*[[#alias|alias]]&lt;br /&gt;
*[[#and|and]]&lt;br /&gt;
*[[#beq|beq]]&lt;br /&gt;
*[[#bgez|bgez]]&lt;br /&gt;
*[[#bgtz|bgtz]]&lt;br /&gt;
*[[#blez|blez]]&lt;br /&gt;
*[[#bltz|bltz]]&lt;br /&gt;
*[[#bne|bne]]&lt;br /&gt;
*[[#breq|breq]]&lt;br /&gt;
*[[#brgez|brgez]]&lt;br /&gt;
*[[#brgtz|brgtz]]&lt;br /&gt;
*[[#brlez|brlez]]&lt;br /&gt;
*[[#brltz|brltz]]&lt;br /&gt;
*[[#brne|brne]]&lt;br /&gt;
*[[#ceil|cell]]&lt;br /&gt;
*[[#div|div]]&lt;br /&gt;
*[[#exp|exp]]&lt;br /&gt;
*[[#floor|floor]]&lt;br /&gt;
*[[#j|j]]&lt;br /&gt;
*[[#jr|jr]]&lt;br /&gt;
*[[#l|l]]&lt;br /&gt;
*[[#log|log]]&lt;br /&gt;
*[[#ls|ls]]&lt;br /&gt;
*[[#max|max]]&lt;br /&gt;
*[[#min|min]]&lt;br /&gt;
*[[#mod|mod]]&lt;br /&gt;
*[[#move|move]]&lt;br /&gt;
*[[#mul|mul]]&lt;br /&gt;
*[[#nor|nor]]&lt;br /&gt;
*[[#or|or]]&lt;br /&gt;
*[[#rand|rand]]&lt;br /&gt;
*[[#round|round]]&lt;br /&gt;
*[[#s|s]]&lt;br /&gt;
*[[#slt|slt]]&lt;br /&gt;
*[[#sqrt|sqrt]]&lt;br /&gt;
*[[#sub|sub]]&lt;br /&gt;
*[[#trunc|trunc]]&lt;br /&gt;
*[[#xor|xor]]xor&lt;br /&gt;
*[[#yield|yield]]&lt;br /&gt;
*[[##|#]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|+Device Variables &lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#Activate|Activate]]&lt;br /&gt;
*[[#AirRelease|AirRelease]]&lt;br /&gt;
*[[#Charge|Charge]]&lt;br /&gt;
*[[#CLearMemory|CLearMemory]]&lt;br /&gt;
*[[#Color|Color]]&lt;br /&gt;
*[[#CompletionRatio|CompletionRatio]]&lt;br /&gt;
*[[#ElevatorLevel|ElevatorLevel]]&lt;br /&gt;
*[[#ElevatorSpeed|ElevatorSpeed]]&lt;br /&gt;
*[[#Error|Error]]&lt;br /&gt;
*[[#ExportCount|ExportCount]]&lt;br /&gt;
*[[#Filtration|Filtration]]&lt;br /&gt;
*[[#Harvest|Harvest]]&lt;br /&gt;
*[[#Horizontal|Horizontal]]&lt;br /&gt;
*[[#HorizontalRatio|HorizontalRatio]]&lt;br /&gt;
*[[#Idle|Idle]]&lt;br /&gt;
*[[#ImportCount|ImportCount]]&lt;br /&gt;
*[[#Lock|Lock]]&lt;br /&gt;
*[[#Maximum|Maximum]]&lt;br /&gt;
*[[#Mode|Mode]]&lt;br /&gt;
*[[#On|On]]&lt;br /&gt;
*[[#Open|Open]]&lt;br /&gt;
*[[#Output|Output]]&lt;br /&gt;
*[[#Plant|Plant]]&lt;br /&gt;
*[[#PositionX|PositionX]]&lt;br /&gt;
*[[#PositionY|PositionY]]&lt;br /&gt;
*[[#PositionZ|PositionZ]]&lt;br /&gt;
*[[#Power|Power]]&lt;br /&gt;
*[[#PowerActual|PowerActual]]&lt;br /&gt;
*[[#PowerPotential|PowerPotential]]&lt;br /&gt;
*[[#PowerRequired|PowerRequired]]&lt;br /&gt;
*[[#Pressure|Pressure]]&lt;br /&gt;
*[[#PressureExternal|PressureExternal]]&lt;br /&gt;
*[[#PressureInteral|PressureInteral]]&lt;br /&gt;
*[[#PressureSetting|PressureSetting]]&lt;br /&gt;
*[[#Quantity|Quantity]]&lt;br /&gt;
*[[#Ratio|Ratio]]&lt;br /&gt;
*[[#RatioCarbonDioxide|RatioCarbonDioxide]]&lt;br /&gt;
*[[#RatioNitrogen|RatioNitrogen]]&lt;br /&gt;
*[[#RatioOxygen|RatioOxygen]]&lt;br /&gt;
*[[#RatioPollutant|RatioPollutant]]&lt;br /&gt;
*[[#RatioVolatiles|RatioVolatiles]]&lt;br /&gt;
*[[#RatioWater|RatioWater]]&lt;br /&gt;
*[[#Reagents|Reagents]]&lt;br /&gt;
*[[#RecipeHash|RecipeHash]]&lt;br /&gt;
*[[#RequestHash|RequestHash]]&lt;br /&gt;
*[[#RequiredPower|RequiredPower]]&lt;br /&gt;
*[[#Setting|Setting]]&lt;br /&gt;
*[[#SolarAngle|SolarAngle]]&lt;br /&gt;
*[[#Temperature|Temperature]]&lt;br /&gt;
*[[#TemperatureSettings|TemperatureSettings]]&lt;br /&gt;
*[[#TotalMoles|TotalMoles]]&lt;br /&gt;
*[[#VelocityMagnitude|VelocityMagnitude]]&lt;br /&gt;
*[[#VelocityRelativeX|VelocityRelativeX]]&lt;br /&gt;
*[[#VelocityRelativeY|VelocityRelativeY]]&lt;br /&gt;
*[[#VelocityRelativeZ|VelocityRelativeZ]]&lt;br /&gt;
*[[#Vertical|Vertical]]&lt;br /&gt;
*[[#VerticalRatio|VerticalRatio]]&lt;br /&gt;
*[[#Volume|Volume]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|+Slot Variables &lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#Occupied|Occupied]]&lt;br /&gt;
*[[#OccupantHash|OccupantHash]]&lt;br /&gt;
*[[#Quantity|Quantity]]&lt;br /&gt;
*[[#Damage|Damage]]&lt;br /&gt;
*[[#Efficiency|Efficiency]]&lt;br /&gt;
*[[#Health|Health]]&lt;br /&gt;
*[[#Growth|Growth]]&lt;br /&gt;
*[[#Pressure|Pressure]]&lt;br /&gt;
*[[#Temperature|Temperature]]&lt;br /&gt;
*[[#Charge|Charge]]&lt;br /&gt;
*[[#ChargeRatio|ChargeRatio]]&lt;br /&gt;
*[[#Class|Class]]&lt;br /&gt;
*[[#PressureWaste|PressureWaste]]&lt;br /&gt;
*[[#PressureAir|PressureAir]]&lt;br /&gt;
*[[#MaxQuantity|MaxQuantity]]&lt;br /&gt;
*[[#Mature|Mature]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=IC10&amp;diff=7585</id>
		<title>IC10</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=IC10&amp;diff=7585"/>
		<updated>2018-10-23T06:06:46Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: Created collapsible sections, added device variables, various definitions and examples.  Minor formatting tweaks.  This is my first wiki post, so hopefully things look OK for the moment.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=MIPS scripting language for IC10 housings / chips&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|+Functions &lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#abs|abs]]&lt;br /&gt;
*[[#add|add]]&lt;br /&gt;
*[[#alias|alias]]&lt;br /&gt;
*[[#and|and]]&lt;br /&gt;
*[[#beq|beq]]&lt;br /&gt;
*[[#bgez|bgez]]&lt;br /&gt;
*[[#bgtz|bgtz]]&lt;br /&gt;
*[[#blez|blez]]&lt;br /&gt;
*[[#bltz|bltz]]&lt;br /&gt;
*[[#bne|bne]]&lt;br /&gt;
*[[#breq|breq]]&lt;br /&gt;
*[[#brgez|brgez]]&lt;br /&gt;
*[[#brgtz|brgtz]]&lt;br /&gt;
*[[#brlez|brlez]]&lt;br /&gt;
*[[#brltz|brltz]]&lt;br /&gt;
*[[#brne|brne]]&lt;br /&gt;
*[[#ceil|cell]]&lt;br /&gt;
*[[#div|div]]&lt;br /&gt;
*[[#exp|exp]]&lt;br /&gt;
*[[#floor|floor]]&lt;br /&gt;
*[[#j|j]]&lt;br /&gt;
*[[#jr|jr]]&lt;br /&gt;
*[[#l|l]]&lt;br /&gt;
*[[#log|log]]&lt;br /&gt;
*[[#ls|ls]]&lt;br /&gt;
*[[#max|max]]&lt;br /&gt;
*[[#min|min]]&lt;br /&gt;
*[[#mod|mod]]&lt;br /&gt;
*[[#move|move]]&lt;br /&gt;
*[[#mul|mul]]&lt;br /&gt;
*[[#nor|nor]]&lt;br /&gt;
*[[#or|or]]&lt;br /&gt;
*[[#rand|rand]]&lt;br /&gt;
*[[#round|round]]&lt;br /&gt;
*[[#s|s]]&lt;br /&gt;
*[[#slt|slt]]&lt;br /&gt;
*[[#sqrt|sqrt]]&lt;br /&gt;
*[[#sub|sub]]&lt;br /&gt;
*[[#trunc|trunc]]&lt;br /&gt;
*[[#xor|xor]]xor&lt;br /&gt;
*[[#yield|yield]]&lt;br /&gt;
*[[##|#]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|+Device Variables &lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[MIPS:Device Variables#Activate|Activate]]&lt;br /&gt;
*[[#AirRelease|AirRelease]]&lt;br /&gt;
*[[#Charge|Charge]]&lt;br /&gt;
*[[#CLearMemory|CLearMemory]]&lt;br /&gt;
*[[#Color|Color]]&lt;br /&gt;
*[[#CompletionRatio|CompletionRatio]]&lt;br /&gt;
*[[#ElevatorLevel|ElevatorLevel]]&lt;br /&gt;
*[[#ElevatorSpeed|ElevatorSpeed]]&lt;br /&gt;
*[[#Error|Error]]&lt;br /&gt;
*[[#ExportCount|ExportCount]]&lt;br /&gt;
*[[#Filtration|Filtration]]&lt;br /&gt;
*[[#Harvest|Harvest]]&lt;br /&gt;
*[[#Horizontal|Horizontal]]&lt;br /&gt;
*[[#HorizontalRatio|HorizontalRatio]]&lt;br /&gt;
*[[#Idle|Idle]]&lt;br /&gt;
*[[#ImportCount|ImportCount]]&lt;br /&gt;
*[[#Lock|Lock]]&lt;br /&gt;
*[[#Maximum|Maximum]]&lt;br /&gt;
*[[#Mode|Mode]]&lt;br /&gt;
*[[#On|On]]&lt;br /&gt;
*[[#Open|Open]]&lt;br /&gt;
*[[#Output|Output]]&lt;br /&gt;
*[[#Plant|Plant]]&lt;br /&gt;
*[[#PositionX|PositionX]]&lt;br /&gt;
*[[#PositionY|PositionY]]&lt;br /&gt;
*[[#PositionZ|PositionZ]]&lt;br /&gt;
*[[#Power|Power]]&lt;br /&gt;
*[[#PowerActual|PowerActual]]&lt;br /&gt;
*[[#PowerPotential|PowerPotential]]&lt;br /&gt;
*[[#PowerRequired|PowerRequired]]&lt;br /&gt;
*[[#Pressure|Pressure]]&lt;br /&gt;
*[[#PressureExternal|PressureExternal]]&lt;br /&gt;
*[[#PressureInteral|PressureInteral]]&lt;br /&gt;
*[[#PressureSetting|PressureSetting]]&lt;br /&gt;
*[[#Quantity|Quantity]]&lt;br /&gt;
*[[#Ratio|Ratio]]&lt;br /&gt;
*[[#RatioCarbonDioxide|RatioCarbonDioxide]]&lt;br /&gt;
*[[#RatioNitrogen|RatioNitrogen]]&lt;br /&gt;
*[[#RatioOxygen|RatioOxygen]]&lt;br /&gt;
*[[#RatioPollutant|RatioPollutant]]&lt;br /&gt;
*[[#RatioVolatiles|RatioVolatiles]]&lt;br /&gt;
*[[#RatioWater|RatioWater]]&lt;br /&gt;
*[[#Reagents|Reagents]]&lt;br /&gt;
*[[#RecipeHash|RecipeHash]]&lt;br /&gt;
*[[#RequestHash|RequestHash]]&lt;br /&gt;
*[[#RequiredPower|RequiredPower]]&lt;br /&gt;
*[[#Setting|Setting]]&lt;br /&gt;
*[[#SolarAngle|SolarAngle]]&lt;br /&gt;
*[[#Temperature|Temperature]]&lt;br /&gt;
*[[#TemperatureSettings|TemperatureSettings]]&lt;br /&gt;
*[[#TotalMoles|TotalMoles]]&lt;br /&gt;
*[[#VelocityMagnitude|VelocityMagnitude]]&lt;br /&gt;
*[[#VelocityRelativeX|VelocityRelativeX]]&lt;br /&gt;
*[[#VelocityRelativeY|VelocityRelativeY]]&lt;br /&gt;
*[[#VelocityRelativeZ|VelocityRelativeZ]]&lt;br /&gt;
*[[#Vertical|Vertical]]&lt;br /&gt;
*[[#VerticalRatio|VerticalRatio]]&lt;br /&gt;
*[[#Volume|Volume]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|+Slot Variables &lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#Occupied|Occupied]]&lt;br /&gt;
*[[#OccupantHash|OccupantHash]]&lt;br /&gt;
*[[#Quantity|Quantity]]&lt;br /&gt;
*[[#Damage|Damage]]&lt;br /&gt;
*[[#Efficiency|Efficiency]]&lt;br /&gt;
*[[#Health|Health]]&lt;br /&gt;
*[[#Growth|Growth]]&lt;br /&gt;
*[[#Pressure|Pressure]]&lt;br /&gt;
*[[#Temperature|Temperature]]&lt;br /&gt;
*[[#Charge|Charge]]&lt;br /&gt;
*[[#ChargeRatio|ChargeRatio]]&lt;br /&gt;
*[[#Class|Class]]&lt;br /&gt;
*[[#PressureWaste|PressureWaste]]&lt;br /&gt;
*[[#PressureAir|PressureAir]]&lt;br /&gt;
*[[#MaxQuantity|MaxQuantity]]&lt;br /&gt;
*[[#Mature|Mature]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// Text after a // will be ignored to the end of the line. The amount of white&lt;br /&gt;
// space between arguments isn&#039;t important, but new lines start a new command.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Functions==&lt;br /&gt;
----&lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;alias&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;alias&lt;br /&gt;
:alias str r? d? // labels register or device reference with name.  When alias is applied to a device, it will effect what shows on the screws in the IC base.  (housing)&lt;br /&gt;
&amp;lt;code&amp;gt;alias vTemperature r0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;alias dAutoHydro1 d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;move&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;move    &lt;br /&gt;
:d s     // stores the value of s in d&lt;br /&gt;
&amp;lt;code&amp;gt;move r0 42 # Store 42 in register 0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;add&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;add     &lt;br /&gt;
:d s t   // calculates s + t and stores the result in d&lt;br /&gt;
&amp;lt;code&amp;gt;add r0 r1 1 # add 1 to r1 and store the result as r0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;add r0 r0 1 # increment r0 by one&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;sub&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;sub     &lt;br /&gt;
:d s t   // calculates s - t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;mul&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;mul     &lt;br /&gt;
:d s t   // calculates s * t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;div     &lt;br /&gt;
:d s t   // calculates s / t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;mod&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;mod     &lt;br /&gt;
:d s t   &lt;br /&gt;
::// calculates s mod t and stores the result in d. Note this&lt;br /&gt;
::// doesn&#039;t behave like the % operator - the result will be &lt;br /&gt;
::// positive even if the either of the operands are negative&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;slt&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;slt     &lt;br /&gt;
:d s t   // stores 1 in d if s &amp;lt; t, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;sqrt&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;sqrt    &lt;br /&gt;
:d s     // calculates sqrt(s) and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;round&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;round   &lt;br /&gt;
:d s     // finds the rounded value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;trunc&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;trunc   &lt;br /&gt;
:d s     // finds the truncated value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;ceil&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ceil   &lt;br /&gt;
: d s     // calculates the ceiling of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;floor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;floor  &lt;br /&gt;
: d s     // calculates the floor of s and stores the result in d&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;max&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;max    &lt;br /&gt;
: d s t   // calculates the maximum of s and t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;min&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;min    &lt;br /&gt;
: d s t   // calculates the minimum of s and t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;abs&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;abs    &lt;br /&gt;
: d s     // calculates the absolute value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;log&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;log    &lt;br /&gt;
: d s     // calculates the natural logarithm of s and stores the result&lt;br /&gt;
::// in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;exp&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;exp    &lt;br /&gt;
: d s     // calculates the exponential of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;rand&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;rand   &lt;br /&gt;
: d       // selects a random number uniformly at random between 0 and 1&lt;br /&gt;
::// inclusive and stores the result in d&lt;br /&gt;
&lt;br /&gt;
::// boolean arithmetic uses the C convention that 0 is false and any non-zero&lt;br /&gt;
::// value is true.&lt;br /&gt;
&amp;lt;div id=&amp;quot;and&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;and    &lt;br /&gt;
: d s t   // stores 1 in d if both s and t have non-zero values,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;or&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;or     &lt;br /&gt;
: d s t   // stores 1 in d if either s or t have non-zero values,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;xor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;xor    &lt;br /&gt;
: d s t   // stores 1 in d if exactly one of s and t are non-zero,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;nor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;nor &lt;br /&gt;
:    d s t   // stores 1 in d if both s and t equal zero, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// Lines are numbered starting at zero&lt;br /&gt;
&amp;lt;div id=&amp;quot;j&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;j&lt;br /&gt;
:             a // jumps to line a.&lt;br /&gt;
&amp;lt;div id=&amp;quot;bltz&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bltz&lt;br /&gt;
:      s   a // jumps to line a if s &amp;lt;  0&lt;br /&gt;
&amp;lt;div id=&amp;quot;blez&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;blez &lt;br /&gt;
:     s   a // jumps to line a if s &amp;lt;= 0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;bgez&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bgez &lt;br /&gt;
:     s   a // jumps to line a if s &amp;gt;= 0&lt;br /&gt;
&amp;lt;div id=&amp;quot;bgtz&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bgtz&lt;br /&gt;
:      s   a // jumps to line a if s &amp;gt;  0&lt;br /&gt;
&amp;lt;div id=&amp;quot;beq&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;beq &lt;br /&gt;
:      s t a // jumps to line a if s == t&lt;br /&gt;
&amp;lt;div id=&amp;quot;bne&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bne &lt;br /&gt;
:      s t a // jumps to line a if s != t&lt;br /&gt;
&amp;lt;div id=&amp;quot;bdseal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bdseal&lt;br /&gt;
:    d? a(r?|num) // Jump execution to line a and store current line number if device d? is set.&lt;br /&gt;
&amp;lt;code&amp;gt;bdseal d0 32 #Store line number and jump to line 32 if d0 is assigned.&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;bdseal dThisVictim HarvestCrop #Store line in ra and jump to sub HarvestCrop if device dThisVictim is assigned.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;yield&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;yield           &lt;br /&gt;
: 	// ceases code execution for this power tick&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;#&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
; #&lt;br /&gt;
:     // The following text will be ignored during compiling; use this to create comments.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Device Variables==&lt;br /&gt;
-----&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Activate&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Activate&lt;br /&gt;
:1 if device is activated (usually means running), otherwise 0&lt;br /&gt;
:&amp;lt;code&amp;gt;l r0 d0 Activate # sets r0 to 1 if on or 0 of off&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;AirRelease&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;AirRelease&lt;br /&gt;
&amp;lt;div id=&amp;quot;Charge&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Charge&lt;br /&gt;
:    The current charge the device has.&lt;br /&gt;
&amp;lt;div id=&amp;quot;CLearMemory&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;CLearMemory&lt;br /&gt;
:    When set to 1, clears the counter memory (e.g. ExportCount).  Will set itself back to 0 when triggered.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Color&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Color&lt;br /&gt;
&amp;lt;div id=&amp;quot;CompletionRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;CompletionRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;ElevatorLevel&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ElevatorLevel&lt;br /&gt;
&amp;lt;div id=&amp;quot;ElevatorSpeed&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ElevatorSpeed&lt;br /&gt;
&amp;lt;div id=&amp;quot;Error&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Error&lt;br /&gt;
:	1 if device is in error state, otherwise 0&lt;br /&gt;
&amp;lt;div id=&amp;quot;ExportCount&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ExportCount&lt;br /&gt;
:    How many items exporfted since last ClearMemory.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Filtration&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Filtration&lt;br /&gt;
:	The current state of the filtration system.  For example filtration = 1 for a Hardsuit when filtration is On.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Harvest&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Harvest&lt;br /&gt;
:	Performs the harvesting action for any plant based machinery.&lt;br /&gt;
:  &amp;lt;code&amp;gt;s d0 Harvest 1 # Performs 1 harvest action on device d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;Horizontal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Horizontal&lt;br /&gt;
&amp;lt;div id=&amp;quot;HorizontalRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;HorizontalRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;Idle&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Idle&lt;br /&gt;
&amp;lt;div id=&amp;quot;ImportCount&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ImportCount&lt;br /&gt;
&amp;lt;div id=&amp;quot;Lock&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Lock&lt;br /&gt;
&amp;lt;div id=&amp;quot;Maximum&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Maximum&lt;br /&gt;
&amp;lt;div id=&amp;quot;Mode&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Mode&lt;br /&gt;
&amp;lt;div id=&amp;quot;On&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;On&lt;br /&gt;
&amp;lt;div id=&amp;quot;Open&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Open&lt;br /&gt;
&amp;lt;div id=&amp;quot;Output&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Output&lt;br /&gt;
&amp;lt;div id=&amp;quot;Plant&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Plant&lt;br /&gt;
:    Performs the planting operation for any plant based machinery.&lt;br /&gt;
:  &amp;lt;code&amp;gt;s d0 Plant 1 # Plants one crop in device d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionX&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionX&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionY&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionY&lt;br /&gt;
&amp;lt;div id=&amp;quot;PositionZ&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PositionZ&lt;br /&gt;
&amp;lt;div id=&amp;quot;Power&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Power&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerActual&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerActual&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerPotential&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerPotential&lt;br /&gt;
&amp;lt;div id=&amp;quot;PowerRequired&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PowerRequired&lt;br /&gt;
&amp;lt;div id=&amp;quot;Pressure&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Pressure&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureExternal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureExternal&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureInteral&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureInteral&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureSetting&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureSetting&lt;br /&gt;
&amp;lt;div id=&amp;quot;Quantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Quantity&lt;br /&gt;
:	Total quantity in the device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Ratio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Ratio&lt;br /&gt;
:	Context specific value depending on device, 0 to 1 based ratio.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioCarbonDioxide&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioCarbonDioxide&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioNitrogen&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioNitrogen&lt;br /&gt;
:	The ratio of nitrogen in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioOxygen&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioOxygen&lt;br /&gt;
:	The ratio of oxygen in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioPollutant&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioPollutant&lt;br /&gt;
:	The ratio of pollutant in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioVolatiles&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioVolatiles&lt;br /&gt;
:	The ratio of volatiles in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;RatioWater&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RatioWater&lt;br /&gt;
:	The ratio of water in device atmosphere.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Reagents&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Reagents&lt;br /&gt;
&amp;lt;div id=&amp;quot;RecipeHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RecipeHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;RequestHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RequestHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;RequiredPower&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;RequiredPower&lt;br /&gt;
&amp;lt;div id=&amp;quot;Setting&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Setting&lt;br /&gt;
&amp;lt;div id=&amp;quot;SolarAngle&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;SolarAngle&lt;br /&gt;
:    Solar angle of the device.&lt;br /&gt;
:  &amp;lt;code&amp;gt;l r0 d0 SolarAngle # Sets r0 to the solar angle of d0.&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;Temperature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Temperature&lt;br /&gt;
&amp;lt;div id=&amp;quot;TemperatureSettings&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;TemperatureSettings&lt;br /&gt;
&amp;lt;div id=&amp;quot;TotalMoles&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;TotalMoles&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityMagnitude&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityMagnitude&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeX&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeX&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeY&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeY&lt;br /&gt;
&amp;lt;div id=&amp;quot;VelocityRelativeZ&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VelocityRelativeZ&lt;br /&gt;
&amp;lt;div id=&amp;quot;Vertical&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Vertical&lt;br /&gt;
:	Vertical setting of the device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;VerticalRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;VerticalRatio&lt;br /&gt;
:	Ratio of vertical setting for device.&lt;br /&gt;
&amp;lt;div id=&amp;quot;Volume&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Volume&lt;br /&gt;
:	Returns the device atmosphere volume&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Slot Variables==&lt;br /&gt;
-----&lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Occupied&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Occupied&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 2 Occupied #Stores 1 in r0 if d0 has more seeds&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ls vOccupied dThisVictim 2 Occupied #stores 1 in vOccupied if dThisVictim has more seeds&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;OccupantHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;OccupantHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;Quantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Quantity&lt;br /&gt;
&amp;lt;div id=&amp;quot;Damage&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Damage&lt;br /&gt;
&amp;lt;div id=&amp;quot;Efficiency&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Efficiency&lt;br /&gt;
&amp;lt;div id=&amp;quot;Health&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Health&lt;br /&gt;
&amp;lt;div id=&amp;quot;Growth&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Growth&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 0 Growth # Store the numerical growth stage of d0 in r0&amp;lt;/code&amp;gt; &lt;br /&gt;
&amp;lt;div id=&amp;quot;Pressure&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Pressure&lt;br /&gt;
&amp;lt;div id=&amp;quot;Temperature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Temperature&lt;br /&gt;
&amp;lt;div id=&amp;quot;Charge&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Charge&lt;br /&gt;
&amp;lt;div id=&amp;quot;ChargeRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ChargeRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;Class&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Class&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureWaste&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureWaste&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureAir&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureAir&lt;br /&gt;
&amp;lt;div id=&amp;quot;MaxQuantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;MaxQuantity&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Mature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Mature&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 0 Mature # Store 1 in r0 if d0 has a mature crop&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ls vMature dThisVictim 0 Mature # Store 1 in vMature if dThisVictim has a mature crop&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Examples==&lt;br /&gt;
-----&lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is a sample timer command set, alternating between 1 for 1 tick (0.5s), then off for 2 ticks (1s).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
move r0 0		// Line 0: move the value 0 to register0&lt;br /&gt;
sub r1 r0 3		// Line 1: subtract 3 from the value in r0 and write it to r1&lt;br /&gt;
bltz r1 4		// Line 2: jump to line 4 if r1 &amp;lt; 0 (skip the next line)&lt;br /&gt;
move r0 0		// Line 3: move the value 0 to register0 &lt;br /&gt;
slt o r0 1		// Line 4: if r0 &amp;lt; 1 write 1 to the output, otherwise 0.&lt;br /&gt;
add r0 r0 1		// Line 5: increment r0 by 1&lt;br /&gt;
yield			// Line 6: wait until next power tick (0.5s)&lt;br /&gt;
j 1			// Line 7: jump back to line 1	&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
so you will do l r0 d0 SolarAngle&lt;br /&gt;
Sorry had last args swapped&lt;br /&gt;
That would read in the value&lt;br /&gt;
while,&lt;br /&gt;
s d1 Vertical r0&lt;br /&gt;
Would write the contents of r0 into the devices 1&#039;s Vertical property&lt;br /&gt;
additionally you can make some aliases&lt;br /&gt;
alias SolarSensor d0&lt;br /&gt;
l r0 SolarSensor SolarAngle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Another example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Now the IC is inserted into the housing. The screws D0-D5 can be adjusted directly to the equipment (sensor, console, solar panel, etc.). The ports &#039;o&#039; and &#039;i0-i2&#039; have been removed. Instead, commands that directly read and write hardware parameters are added.&lt;br /&gt;
l &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
 reads the value of the parameter&lt;br /&gt;
s &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt; &amp;lt;register_or_value&amp;gt;&lt;br /&gt;
 writes the value of the parameter&lt;br /&gt;
ls &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;slot_number&amp;gt; &amp;lt;parameter&amp;gt; &lt;br /&gt;
 reads the parameter value from the slot&lt;br /&gt;
For example, &lt;br /&gt;
l r0 d0 Horizontal&lt;br /&gt;
 &lt;br /&gt;
s d5 Activate 1&lt;br /&gt;
 &lt;br /&gt;
ls r3 db 0 OccupantHash&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
-----&lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
* [https://hastebin.com/uwuhidozun.md]&lt;br /&gt;
* [http://www.easy68k.com/]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=IC10&amp;diff=7584</id>
		<title>IC10</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=IC10&amp;diff=7584"/>
		<updated>2018-10-23T04:12:50Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: Added functions, slot variables and examples section headers, added slot variables, and provided examples for various slot variables.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=MIPS scripting language for IC10 housings / chips&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|+Functions&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#abs|abs]]&lt;br /&gt;
*[[#add|add]]&lt;br /&gt;
*[[#alias|alias]]&lt;br /&gt;
*[[#and|and]]&lt;br /&gt;
*[[#beq|beq]]&lt;br /&gt;
*[[#bgez|bgez]]&lt;br /&gt;
*[[#bgtz|bgtz]]&lt;br /&gt;
*[[#blez|blez]]&lt;br /&gt;
*[[#bltz|bltz]]&lt;br /&gt;
*[[#bne|bne]]&lt;br /&gt;
*[[#breq|breq]]&lt;br /&gt;
*[[#brgez|brgez]]&lt;br /&gt;
*[[#brgtz|brgtz]]&lt;br /&gt;
*[[#brlez|brlez]]&lt;br /&gt;
*[[#brltz|brltz]]&lt;br /&gt;
*[[#brne|brne]]&lt;br /&gt;
*[[#ceil|cell]]&lt;br /&gt;
*[[#div|div]]&lt;br /&gt;
*[[#exp|exp]]&lt;br /&gt;
*[[#floor|floor]]&lt;br /&gt;
*[[#j|j]]&lt;br /&gt;
*[[#jr|jr]]&lt;br /&gt;
*[[#l|l]]&lt;br /&gt;
*[[#log|log]]&lt;br /&gt;
*[[#ls|ls]]&lt;br /&gt;
*[[#max|max]]&lt;br /&gt;
*[[#min|min]]&lt;br /&gt;
*[[#mod|mod]]&lt;br /&gt;
*[[#move|move]]&lt;br /&gt;
*[[#mul|mul]]&lt;br /&gt;
*[[#nor|nor]]&lt;br /&gt;
*[[#or|or]]&lt;br /&gt;
*[[#rand|rand]]&lt;br /&gt;
*[[#round|round]]&lt;br /&gt;
*[[#s|s]]&lt;br /&gt;
*[[#slt|slt]]&lt;br /&gt;
*[[#sqrt|sqrt]]&lt;br /&gt;
*[[#sub|sub]]&lt;br /&gt;
*[[#trunc|trunc]]&lt;br /&gt;
*[[#xor|xor]]xor&lt;br /&gt;
*[[#yield|yield]]&lt;br /&gt;
*[[##|#]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
|+Slot Variables &lt;br /&gt;
&amp;lt;div  class=&amp;quot;mw-collapsible mw-collapsed&amp;quot;&amp;gt;&lt;br /&gt;
*[[#Occupied|Occupied]]&lt;br /&gt;
*[[#OccupantHash|OccupantHash]]&lt;br /&gt;
*[[#Quantity|Quantity]]&lt;br /&gt;
*[[#Damage|Damage]]&lt;br /&gt;
*[[#Efficiency|Efficiency]]&lt;br /&gt;
*[[#Health|Health]]&lt;br /&gt;
*[[#Growth|Growth]]&lt;br /&gt;
*[[#Pressure|Pressure]]&lt;br /&gt;
*[[#Temperature|Temperature]]&lt;br /&gt;
*[[#Charge|Charge]]&lt;br /&gt;
*[[#ChargeRatio|ChargeRatio]]&lt;br /&gt;
*[[#Class|Class]]&lt;br /&gt;
*[[#PressureWaste|PressureWaste]]&lt;br /&gt;
*[[#PressureAir|PressureAir]]&lt;br /&gt;
*[[#MaxQuantity|MaxQuantity]]&lt;br /&gt;
*[[#Mature|Mature]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// Text after a // will be ignored to the end of the line. The amount of white&lt;br /&gt;
// space between arguments isn&#039;t important, but new lines start a new command.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Functions==&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;alias&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;alias&lt;br /&gt;
:alias str r? d? // labels register or device reference with name.  When alias is applied to a device, it will effect what shows on the screws in the IC base.  (housing)&lt;br /&gt;
&amp;lt;code&amp;gt;alias vTemperature r0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;alias dAutoHydro1 d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;move&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;move    &lt;br /&gt;
:d s     // stores the value of s in d&lt;br /&gt;
&amp;lt;code&amp;gt;move r0 42 # Store 42 in register 0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;add&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;add     &lt;br /&gt;
:d s t   // calculates s + t and stores the result in d&lt;br /&gt;
&amp;lt;code&amp;gt;add r0 r1 1 # add 1 to r1 and store the result as r0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;add r0 r0 1 # increment r0 by one&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;sub&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;sub     &lt;br /&gt;
:d s t   // calculates s - t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;mul&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;mul     &lt;br /&gt;
:d s t   // calculates s * t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;div     &lt;br /&gt;
:d s t   // calculates s / t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;mod&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;mod     &lt;br /&gt;
:d s t   &lt;br /&gt;
::// calculates s mod t and stores the result in d. Note this&lt;br /&gt;
::// doesn&#039;t behave like the % operator - the result will be &lt;br /&gt;
::// positive even if the either of the operands are negative&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;slt&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;slt     &lt;br /&gt;
:d s t   // stores 1 in d if s &amp;lt; t, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;sqrt&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;sqrt    &lt;br /&gt;
:d s     // calculates sqrt(s) and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;round&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;round   &lt;br /&gt;
:d s     // finds the rounded value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;trunc&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;trunc   &lt;br /&gt;
:d s     // finds the truncated value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;ceil&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ceil   &lt;br /&gt;
: d s     // calculates the ceiling of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;floor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;floor  &lt;br /&gt;
: d s     // calculates the floor of s and stores the result in d&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;max&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;max    &lt;br /&gt;
: d s t   // calculates the maximum of s and t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;min&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;min    &lt;br /&gt;
: d s t   // calculates the minimum of s and t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;abs&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;abs    &lt;br /&gt;
: d s     // calculates the absolute value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;log&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;log    &lt;br /&gt;
: d s     // calculates the natural logarithm of s and stores the result&lt;br /&gt;
::// in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;exp&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;exp    &lt;br /&gt;
: d s     // calculates the exponential of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;rand&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;rand   &lt;br /&gt;
: d       // selects a random number uniformly at random between 0 and 1&lt;br /&gt;
::// inclusive and stores the result in d&lt;br /&gt;
&lt;br /&gt;
::// boolean arithmetic uses the C convention that 0 is false and any non-zero&lt;br /&gt;
::// value is true.&lt;br /&gt;
&amp;lt;div id=&amp;quot;and&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;and    &lt;br /&gt;
: d s t   // stores 1 in d if both s and t have non-zero values,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;or&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;or     &lt;br /&gt;
: d s t   // stores 1 in d if either s or t have non-zero values,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;xor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;xor    &lt;br /&gt;
: d s t   // stores 1 in d if exactly one of s and t are non-zero,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;nor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;nor &lt;br /&gt;
:    d s t   // stores 1 in d if both s and t equal zero, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// Lines are numbered starting at zero&lt;br /&gt;
&amp;lt;div id=&amp;quot;j&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;j&lt;br /&gt;
:             a // jumps to line a.&lt;br /&gt;
&amp;lt;div id=&amp;quot;bltz&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bltz&lt;br /&gt;
:      s   a // jumps to line a if s &amp;lt;  0&lt;br /&gt;
&amp;lt;div id=&amp;quot;blez&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;blez &lt;br /&gt;
:     s   a // jumps to line a if s &amp;lt;= 0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;bgez&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bgez &lt;br /&gt;
:     s   a // jumps to line a if s &amp;gt;= 0&lt;br /&gt;
&amp;lt;div id=&amp;quot;bgtz&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bgtz&lt;br /&gt;
:      s   a // jumps to line a if s &amp;gt;  0&lt;br /&gt;
&amp;lt;div id=&amp;quot;beq&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;beq &lt;br /&gt;
:      s t a // jumps to line a if s == t&lt;br /&gt;
&amp;lt;div id=&amp;quot;bne&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bne &lt;br /&gt;
:      s t a // jumps to line a if s != t&lt;br /&gt;
&amp;lt;div id=&amp;quot;bdseal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bdseal&lt;br /&gt;
:    d? a(r?|num) // Jump execution to line a and store current line number if device d? is set.&lt;br /&gt;
&amp;lt;code&amp;gt;bdseal d0 32 #Store line number and jump to line 32 if d0 is assigned.&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;bdseal dThisVictim HarvestCrop #Store line in ra and jump to sub HarvestCrop if device dThisVictim is assigned.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;yield&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;yield           &lt;br /&gt;
: 	// ceases code execution for this power tick&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;#&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
; #&lt;br /&gt;
:     // The following text will be ignored during compiling; use this to create comments.&lt;br /&gt;
&lt;br /&gt;
==Slot Variables==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Occupied&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Occupied&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 2 Occupied #Stores 1 in r0 if d0 has more seeds&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ls vOccupied dThisVictim 2 Occupied #stores 1 in vOccupied if dThisVictim has more seeds&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;OccupantHash&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;OccupantHash&lt;br /&gt;
&amp;lt;div id=&amp;quot;Quantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Quantity&lt;br /&gt;
&amp;lt;div id=&amp;quot;Damage&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Damage&lt;br /&gt;
&amp;lt;div id=&amp;quot;Efficiency&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Efficiency&lt;br /&gt;
&amp;lt;div id=&amp;quot;Health&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Health&lt;br /&gt;
&amp;lt;div id=&amp;quot;Growth&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Growth&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 0 Growth # Store the numerical growth stage of d0 in r0&amp;lt;/code&amp;gt; &lt;br /&gt;
&amp;lt;div id=&amp;quot;Pressure&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Pressure&lt;br /&gt;
&amp;lt;div id=&amp;quot;Temperature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Temperature&lt;br /&gt;
&amp;lt;div id=&amp;quot;Charge&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Charge&lt;br /&gt;
&amp;lt;div id=&amp;quot;ChargeRatio&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ChargeRatio&lt;br /&gt;
&amp;lt;div id=&amp;quot;Class&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Class&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureWaste&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureWaste&lt;br /&gt;
&amp;lt;div id=&amp;quot;PressureAir&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;PressureAir&lt;br /&gt;
&amp;lt;div id=&amp;quot;MaxQuantity&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;MaxQuantity&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;Mature&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;Mature&lt;br /&gt;
:&amp;lt;code&amp;gt;ls r0 d0 0 Mature # Store 1 in r0 if d0 has a mature crop&amp;lt;/code&amp;gt;&lt;br /&gt;
:&amp;lt;code&amp;gt;ls vMature dThisVictim 0 Mature # Store 1 in vMature if dThisVictim has a mature crop&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
This is a sample timer command set, alternating between 1 for 1 tick (0.5s), then off for 2 ticks (1s).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
move r0 0		// Line 0: move the value 0 to register0&lt;br /&gt;
sub r1 r0 3		// Line 1: subtract 3 from the value in r0 and write it to r1&lt;br /&gt;
bltz r1 4		// Line 2: jump to line 4 if r1 &amp;lt; 0 (skip the next line)&lt;br /&gt;
move r0 0		// Line 3: move the value 0 to register0 &lt;br /&gt;
slt o r0 1		// Line 4: if r0 &amp;lt; 1 write 1 to the output, otherwise 0.&lt;br /&gt;
add r0 r0 1		// Line 5: increment r0 by 1&lt;br /&gt;
yield			// Line 6: wait until next power tick (0.5s)&lt;br /&gt;
j 1			// Line 7: jump back to line 1	&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
so you will do l r0 d0 SolarAngle&lt;br /&gt;
Sorry had last args swapped&lt;br /&gt;
That would read in the value&lt;br /&gt;
while,&lt;br /&gt;
s d1 Vertical r0&lt;br /&gt;
Would write the contents of r0 into the devices 1&#039;s Vertical property&lt;br /&gt;
additionally you can make some aliases&lt;br /&gt;
alias SolarSensor d0&lt;br /&gt;
l r0 SolarSensor SolarAngle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Another example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Now the IC is inserted into the housing. The screws D0-D5 can be adjusted directly to the equipment (sensor, console, solar panel, etc.). The ports &#039;o&#039; and &#039;i0-i2&#039; have been removed. Instead, commands that directly read and write hardware parameters are added.&lt;br /&gt;
l &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
 reads the value of the parameter&lt;br /&gt;
s &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt; &amp;lt;register_or_value&amp;gt;&lt;br /&gt;
 writes the value of the parameter&lt;br /&gt;
ls &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;slot_number&amp;gt; &amp;lt;parameter&amp;gt; &lt;br /&gt;
 reads the parameter value from the slot&lt;br /&gt;
For example, &lt;br /&gt;
l r0 d0 Horizontal&lt;br /&gt;
 &lt;br /&gt;
s d5 Activate 1&lt;br /&gt;
 &lt;br /&gt;
ls r3 db 0 OccupantHash&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* [https://hastebin.com/uwuhidozun.md]&lt;br /&gt;
* [http://www.easy68k.com/]&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=IC10&amp;diff=7583</id>
		<title>IC10</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=IC10&amp;diff=7583"/>
		<updated>2018-10-23T02:41:49Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: added links from script functions in the index to their definitions / examples.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Keywords:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
MIPS scripting language for IC10 housings / chips&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*[[#abs|abs]]&lt;br /&gt;
*[[#add|add]]&lt;br /&gt;
*[[#alias|alias]]&lt;br /&gt;
*[[#and|and]]&lt;br /&gt;
*[[#beq|beq]]&lt;br /&gt;
*[[#bgez|bgez]]&lt;br /&gt;
*[[#bgtz|bgtz]]&lt;br /&gt;
*[[#blez|blez]]&lt;br /&gt;
*[[#bltz|bltz]]&lt;br /&gt;
*[[#bne|bne]]&lt;br /&gt;
*[[#breq|breq]]&lt;br /&gt;
*[[#brgez|brgez]]&lt;br /&gt;
*[[#brgtz|brgtz]]&lt;br /&gt;
*[[#brlez|brlez]]&lt;br /&gt;
*[[#brltz|brltz]]&lt;br /&gt;
*[[#brne|brne]]&lt;br /&gt;
*[[#ceil|cell]]&lt;br /&gt;
*[[#div|div]]&lt;br /&gt;
*[[#exp|exp]]&lt;br /&gt;
*[[#floor|floor]]&lt;br /&gt;
*[[#j|j]]&lt;br /&gt;
*[[#jr|jr]]&lt;br /&gt;
*[[#l|l]]&lt;br /&gt;
*[[#log|log]]&lt;br /&gt;
*[[#ls|ls]]&lt;br /&gt;
*[[#max|max]]&lt;br /&gt;
*[[#min|min]]&lt;br /&gt;
*[[#mod|mod]]&lt;br /&gt;
*[[#move|move]]&lt;br /&gt;
*[[#mul|mul]]&lt;br /&gt;
*[[#nor|nor]]&lt;br /&gt;
*[[#or|or]]&lt;br /&gt;
*[[#rand|rand]]&lt;br /&gt;
*[[#round|round]]&lt;br /&gt;
*[[#s|s]]&lt;br /&gt;
*[[#slt|slt]]&lt;br /&gt;
*[[#sqrt|sqrt]]&lt;br /&gt;
*[[#sub|sub]]&lt;br /&gt;
*[[#trunc|trunc]]&lt;br /&gt;
*[[#xor|xor]]xor&lt;br /&gt;
*[[#yield|yield]]&lt;br /&gt;
*[[##|#]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// Text after a // will be ignored to the end of the line. The amount of white&lt;br /&gt;
// space between arguments isn&#039;t important, but new lines start a new command.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;alias&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;alias&lt;br /&gt;
:alias str r? d? // labels register or device reference with name.  When alias is applied to a device, it will effect what shows on the screws in the IC base.  (housing)&lt;br /&gt;
&amp;lt;code&amp;gt;alias vTemperature r0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;alias dAutoHydro1 d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;move&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;move    &lt;br /&gt;
:d s     // stores the value of s in d&lt;br /&gt;
&amp;lt;code&amp;gt;move r0 42 # Store 42 in register 0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;add&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;add     &lt;br /&gt;
:d s t   // calculates s + t and stores the result in d&lt;br /&gt;
&amp;lt;code&amp;gt;add r0 r1 1 # add 1 to r1 and store the result as r0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;add r0 r0 1 # increment r0 by one&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;sub&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;sub     &lt;br /&gt;
:d s t   // calculates s - t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;mul&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;mul     &lt;br /&gt;
:d s t   // calculates s * t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;div&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;div     &lt;br /&gt;
:d s t   // calculates s / t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;mod&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;mod     &lt;br /&gt;
:d s t   &lt;br /&gt;
::// calculates s mod t and stores the result in d. Note this&lt;br /&gt;
::// doesn&#039;t behave like the % operator - the result will be &lt;br /&gt;
::// positive even if the either of the operands are negative&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;slt&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;slt     &lt;br /&gt;
:d s t   // stores 1 in d if s &amp;lt; t, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;sqrt&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;sqrt    &lt;br /&gt;
:d s     // calculates sqrt(s) and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;round&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;round   &lt;br /&gt;
:d s     // finds the rounded value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;trunc&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;trunc   &lt;br /&gt;
:d s     // finds the truncated value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;ceil&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;ceil   &lt;br /&gt;
: d s     // calculates the ceiling of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;floor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;floor  &lt;br /&gt;
: d s     // calculates the floor of s and stores the result in d&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;max&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;max    &lt;br /&gt;
: d s t   // calculates the maximum of s and t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;min&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;min    &lt;br /&gt;
: d s t   // calculates the minimum of s and t and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;abs&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;abs    &lt;br /&gt;
: d s     // calculates the absolute value of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;log&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;log    &lt;br /&gt;
: d s     // calculates the natural logarithm of s and stores the result&lt;br /&gt;
::// in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;exp&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;exp    &lt;br /&gt;
: d s     // calculates the exponential of s and stores the result in d&lt;br /&gt;
&amp;lt;div id=&amp;quot;rand&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;rand   &lt;br /&gt;
: d       // selects a random number uniformly at random between 0 and 1&lt;br /&gt;
::// inclusive and stores the result in d&lt;br /&gt;
&lt;br /&gt;
::// boolean arithmetic uses the C convention that 0 is false and any non-zero&lt;br /&gt;
::// value is true.&lt;br /&gt;
&amp;lt;div id=&amp;quot;and&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;and    &lt;br /&gt;
: d s t   // stores 1 in d if both s and t have non-zero values,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;or&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;or     &lt;br /&gt;
: d s t   // stores 1 in d if either s or t have non-zero values,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;xor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;xor    &lt;br /&gt;
: d s t   // stores 1 in d if exactly one of s and t are non-zero,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
&amp;lt;div id=&amp;quot;nor&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;nor &lt;br /&gt;
:    d s t   // stores 1 in d if both s and t equal zero, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// Lines are numbered starting at zero&lt;br /&gt;
&amp;lt;div id=&amp;quot;j&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;j&lt;br /&gt;
:             a // jumps to line a.&lt;br /&gt;
&amp;lt;div id=&amp;quot;bltz&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bltz&lt;br /&gt;
:      s   a // jumps to line a if s &amp;lt;  0&lt;br /&gt;
&amp;lt;div id=&amp;quot;blez&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;blez &lt;br /&gt;
:     s   a // jumps to line a if s &amp;lt;= 0&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;bgez&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bgez &lt;br /&gt;
:     s   a // jumps to line a if s &amp;gt;= 0&lt;br /&gt;
&amp;lt;div id=&amp;quot;bgtz&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bgtz&lt;br /&gt;
:      s   a // jumps to line a if s &amp;gt;  0&lt;br /&gt;
&amp;lt;div id=&amp;quot;beq&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;beq &lt;br /&gt;
:      s t a // jumps to line a if s == t&lt;br /&gt;
&amp;lt;div id=&amp;quot;bne&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bne &lt;br /&gt;
:      s t a // jumps to line a if s != t&lt;br /&gt;
&amp;lt;div id=&amp;quot;bdseal&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;bdseal&lt;br /&gt;
:    d? a(r?|num) // Jump execution to line a and store current line number if device d? is set.&lt;br /&gt;
&amp;lt;code&amp;gt;bdseal d0 32 #Store line number and jump to line 32 if d0 is assigned.&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;bdseal dThisVictim HarvestCrop #Store line in ra and jump to sub HarvestCrop if device dThisVictim is assigned.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;yield&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
;yield           &lt;br /&gt;
: 	// ceases code execution for this power tick&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div id=&amp;quot;#&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
; #&lt;br /&gt;
:     // The following text will be ignored during compiling; use this to create comments.&lt;br /&gt;
-----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is a sample timer command set, alternating between 1 for 1 tick (0.5s), then off for 2 ticks (1s).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
move r0 0		// Line 0: move the value 0 to register0&lt;br /&gt;
sub r1 r0 3		// Line 1: subtract 3 from the value in r0 and write it to r1&lt;br /&gt;
bltz r1 4		// Line 2: jump to line 4 if r1 &amp;lt; 0 (skip the next line)&lt;br /&gt;
move r0 0		// Line 3: move the value 0 to register0 &lt;br /&gt;
slt o r0 1		// Line 4: if r0 &amp;lt; 1 write 1 to the output, otherwise 0.&lt;br /&gt;
add r0 r0 1		// Line 5: increment r0 by 1&lt;br /&gt;
yield			// Line 6: wait until next power tick (0.5s)&lt;br /&gt;
j 1			// Line 7: jump back to line 1	&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
so you will do l r0 d0 SolarAngle&lt;br /&gt;
Sorry had last args swapped&lt;br /&gt;
That would read in the value&lt;br /&gt;
while,&lt;br /&gt;
s d1 Vertical r0&lt;br /&gt;
Would write the contents of r0 into the devices 1&#039;s Vertical property&lt;br /&gt;
additionally you can make some aliases&lt;br /&gt;
alias SolarSensor d0&lt;br /&gt;
l r0 SolarSensor SolarAngle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Another example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Now the IC is inserted into the housing. The screws D0-D5 can be adjusted directly to the equipment (sensor, console, solar panel, etc.). The ports &#039;o&#039; and &#039;i0-i2&#039; have been removed. Instead, commands that directly read and write hardware parameters are added.&lt;br /&gt;
l &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
 reads the value of the parameter&lt;br /&gt;
s &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt; &amp;lt;register_or_value&amp;gt;&lt;br /&gt;
 writes the value of the parameter&lt;br /&gt;
ls &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;slot_number&amp;gt; &amp;lt;parameter&amp;gt; &lt;br /&gt;
 reads the parameter value from the slot&lt;br /&gt;
For example, &lt;br /&gt;
l r0 d0 Horizontal&lt;br /&gt;
 &lt;br /&gt;
s d5 Activate 1&lt;br /&gt;
 &lt;br /&gt;
ls r3 db 0 OccupantHash&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* [https://hastebin.com/uwuhidozun.md]&lt;br /&gt;
* [http://www.easy68k.com/]&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=IC10&amp;diff=7582</id>
		<title>IC10</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=IC10&amp;diff=7582"/>
		<updated>2018-10-23T01:52:28Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: alphabetized keywords, added infrastructure for in-definition examples and various examples, added bdseal, added alias definition&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Keywords:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
IC10&lt;br /&gt;
abs&lt;br /&gt;
add&lt;br /&gt;
alias&lt;br /&gt;
and&lt;br /&gt;
beq&lt;br /&gt;
bgez&lt;br /&gt;
bgtz&lt;br /&gt;
blez&lt;br /&gt;
bltz&lt;br /&gt;
bne&lt;br /&gt;
breq&lt;br /&gt;
brgez&lt;br /&gt;
brgtz&lt;br /&gt;
brlez&lt;br /&gt;
brltz&lt;br /&gt;
brne&lt;br /&gt;
ceil&lt;br /&gt;
div&lt;br /&gt;
exp&lt;br /&gt;
floor&lt;br /&gt;
j&lt;br /&gt;
jr&lt;br /&gt;
l&lt;br /&gt;
log&lt;br /&gt;
ls&lt;br /&gt;
max&lt;br /&gt;
min&lt;br /&gt;
mod&lt;br /&gt;
move&lt;br /&gt;
mul&lt;br /&gt;
nor&lt;br /&gt;
or&lt;br /&gt;
rand&lt;br /&gt;
round&lt;br /&gt;
s&lt;br /&gt;
slt&lt;br /&gt;
sqrt&lt;br /&gt;
sub&lt;br /&gt;
trunc&lt;br /&gt;
xor&lt;br /&gt;
yield&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// Text after a // will be ignored to the end of the line. The amount of white&lt;br /&gt;
// space between arguments isn&#039;t important, but new lines start a new command.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
;alias&lt;br /&gt;
:alias str r? d? // labels register or device reference with name.  When alias is applied to a device, it will effect what shows on the screws in the IC base.  (housing)&lt;br /&gt;
&amp;lt;code&amp;gt;alias vTemperature r0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;alias dAutoHydro1 d0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;move    &lt;br /&gt;
:d s     // stores the value of s in d&lt;br /&gt;
&amp;lt;code&amp;gt;move r0 42 # Store 42 in register 0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;add     &lt;br /&gt;
:d s t   // calculates s + t and stores the result in d&lt;br /&gt;
&amp;lt;code&amp;gt;add r0 r1 1 # add 1 to r1 and store the result as r0&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;add r0 r0 1 # increment r0 by one&amp;lt;/code&amp;gt;&lt;br /&gt;
;sub     &lt;br /&gt;
:d s t   // calculates s - t and stores the result in d&lt;br /&gt;
;mul     &lt;br /&gt;
:d s t   // calculates s * t and stores the result in d&lt;br /&gt;
;div     &lt;br /&gt;
:d s t   // calculates s / t and stores the result in d&lt;br /&gt;
;mod     &lt;br /&gt;
:d s t   &lt;br /&gt;
::// calculates s mod t and stores the result in d. Note this&lt;br /&gt;
::// doesn&#039;t behave like the % operator - the result will be &lt;br /&gt;
::// positive even if the either of the operands are negative&lt;br /&gt;
&lt;br /&gt;
;slt     &lt;br /&gt;
:d s t   // stores 1 in d if s &amp;lt; t, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
;sqrt    &lt;br /&gt;
:d s     // calculates sqrt(s) and stores the result in d&lt;br /&gt;
;round   &lt;br /&gt;
:d s     // finds the rounded value of s and stores the result in d&lt;br /&gt;
;trunc   &lt;br /&gt;
:d s     // finds the truncated value of s and stores the result in d&lt;br /&gt;
;ceil   &lt;br /&gt;
: d s     // calculates the ceiling of s and stores the result in d&lt;br /&gt;
;floor  &lt;br /&gt;
: d s     // calculates the floor of s and stores the result in d&lt;br /&gt;
&lt;br /&gt;
;max    &lt;br /&gt;
: d s t   // calculates the maximum of s and t and stores the result in d&lt;br /&gt;
;min    &lt;br /&gt;
: d s t   // calculates the minimum of s and t and stores the result in d&lt;br /&gt;
;abs    &lt;br /&gt;
: d s     // calculates the absolute value of s and stores the result in d&lt;br /&gt;
;log    &lt;br /&gt;
: d s     // calculates the natural logarithm of s and stores the result&lt;br /&gt;
::// in d&lt;br /&gt;
;exp    &lt;br /&gt;
: d s     // calculates the exponential of s and stores the result in d&lt;br /&gt;
;rand   &lt;br /&gt;
: d       // selects a random number uniformly at random between 0 and 1&lt;br /&gt;
::// inclusive and stores the result in d&lt;br /&gt;
&lt;br /&gt;
::// boolean arithmetic uses the C convention that 0 is false and any non-zero&lt;br /&gt;
::// value is true.&lt;br /&gt;
;and    &lt;br /&gt;
: d s t   // stores 1 in d if both s and t have non-zero values,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
;or     &lt;br /&gt;
: d s t   // stores 1 in d if either s or t have non-zero values,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
;xor    &lt;br /&gt;
: d s t   // stores 1 in d if exactly one of s and t are non-zero,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
;nor &lt;br /&gt;
:    d s t   // stores 1 in d if both s and t equal zero, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// Lines are numbered starting at zero&lt;br /&gt;
;j&lt;br /&gt;
:             a // jumps to line a.&lt;br /&gt;
;bltz&lt;br /&gt;
:      s   a // jumps to line a if s &amp;lt;  0&lt;br /&gt;
;blez &lt;br /&gt;
:     s   a // jumps to line a if s &amp;lt;= 0&lt;br /&gt;
;bgez &lt;br /&gt;
:     s   a // jumps to line a if s &amp;gt;= 0&lt;br /&gt;
;bgtz&lt;br /&gt;
:      s   a // jumps to line a if s &amp;gt;  0&lt;br /&gt;
;beq &lt;br /&gt;
:      s t a // jumps to line a if s == t&lt;br /&gt;
;bne &lt;br /&gt;
:      s t a // jumps to line a if s != t&lt;br /&gt;
;bdseal&lt;br /&gt;
:    d? a(r?|num) // Jump execution to line a and store current line number if device d? is set.&lt;br /&gt;
&amp;lt;code&amp;gt;bdseal d0 32 #Store line number and jump to line 32 if d0 is assigned.&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;bdseal dThisVictim HarvestCrop #Store line in ra and jump to sub HarvestCrop if device dThisVictim is assigned.&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;yield           &lt;br /&gt;
: 	// ceases code execution for this power tick&lt;br /&gt;
&lt;br /&gt;
This is a sample timer command set, alternating between 1 for 1 tick (0.5s), then off for 2 ticks (1s).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
move r0 0		// Line 0: move the value 0 to register0&lt;br /&gt;
sub r1 r0 3		// Line 1: subtract 3 from the value in r0 and write it to r1&lt;br /&gt;
bltz r1 4		// Line 2: jump to line 4 if r1 &amp;lt; 0 (skip the next line)&lt;br /&gt;
move r0 0		// Line 3: move the value 0 to register0 &lt;br /&gt;
slt o r0 1		// Line 4: if r0 &amp;lt; 1 write 1 to the output, otherwise 0.&lt;br /&gt;
add r0 r0 1		// Line 5: increment r0 by 1&lt;br /&gt;
yield			// Line 6: wait until next power tick (0.5s)&lt;br /&gt;
j 1			// Line 7: jump back to line 1	&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
so you will do l r0 d0 SolarAngle&lt;br /&gt;
Sorry had last args swapped&lt;br /&gt;
That would read in the value&lt;br /&gt;
while,&lt;br /&gt;
s d1 Vertical r0&lt;br /&gt;
Would write the contents of r0 into the devices 1&#039;s Vertical property&lt;br /&gt;
additionally you can make some aliases&lt;br /&gt;
alias SolarSensor d0&lt;br /&gt;
l r0 SolarSensor SolarAngle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Another example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Now the IC is inserted into the housing. The screws D0-D5 can be adjusted directly to the equipment (sensor, console, solar panel, etc.). The ports &#039;o&#039; and &#039;i0-i2&#039; have been removed. Instead, commands that directly read and write hardware parameters are added.&lt;br /&gt;
l &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
 reads the value of the parameter&lt;br /&gt;
s &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt; &amp;lt;register_or_value&amp;gt;&lt;br /&gt;
 writes the value of the parameter&lt;br /&gt;
ls &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;slot_number&amp;gt; &amp;lt;parameter&amp;gt; &lt;br /&gt;
 reads the parameter value from the slot&lt;br /&gt;
For example, &lt;br /&gt;
l r0 d0 Horizontal&lt;br /&gt;
 &lt;br /&gt;
s d5 Activate 1&lt;br /&gt;
 &lt;br /&gt;
ls r3 db 0 OccupantHash&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* [https://hastebin.com/uwuhidozun.md]&lt;br /&gt;
* [http://www.easy68k.com/]&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
	<entry>
		<id>https://stationeers-wiki.com/index.php?title=IC10&amp;diff=7581</id>
		<title>IC10</title>
		<link rel="alternate" type="text/html" href="https://stationeers-wiki.com/index.php?title=IC10&amp;diff=7581"/>
		<updated>2018-10-22T23:20:26Z</updated>

		<summary type="html">&lt;p&gt;Droxlar: Adjusted formatting to (hopefully) improve readability.  Added IC10 to keywords.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Keywords:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
IC10&lt;br /&gt;
l&lt;br /&gt;
s&lt;br /&gt;
ls&lt;br /&gt;
alias&lt;br /&gt;
move&lt;br /&gt;
add&lt;br /&gt;
sub&lt;br /&gt;
slt&lt;br /&gt;
and&lt;br /&gt;
or&lt;br /&gt;
xor&lt;br /&gt;
nor&lt;br /&gt;
mul&lt;br /&gt;
div&lt;br /&gt;
mod&lt;br /&gt;
j&lt;br /&gt;
bltz&lt;br /&gt;
bgez&lt;br /&gt;
blez&lt;br /&gt;
bgtz&lt;br /&gt;
beq&lt;br /&gt;
bne&lt;br /&gt;
jr&lt;br /&gt;
brltz&lt;br /&gt;
brgez&lt;br /&gt;
brlez&lt;br /&gt;
brgtz&lt;br /&gt;
breq&lt;br /&gt;
brne&lt;br /&gt;
sqrt&lt;br /&gt;
round&lt;br /&gt;
trunc&lt;br /&gt;
ceil&lt;br /&gt;
floor&lt;br /&gt;
max&lt;br /&gt;
min&lt;br /&gt;
abs&lt;br /&gt;
log&lt;br /&gt;
exp&lt;br /&gt;
rand&lt;br /&gt;
yield&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// Text after a // will be ignored to the end of the line. The amount of white&lt;br /&gt;
// space between arguments isn&#039;t important, but new lines start a new command.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;move    &lt;br /&gt;
:d s     // stores the value of s in d&lt;br /&gt;
&lt;br /&gt;
;add     &lt;br /&gt;
:d s t   // calculates s + t and stores the result in d&lt;br /&gt;
;sub     &lt;br /&gt;
:d s t   // calculates s - t and stores the result in d&lt;br /&gt;
;mul     &lt;br /&gt;
:d s t   // calculates s * t and stores the result in d&lt;br /&gt;
;div     &lt;br /&gt;
:d s t   // calculates s / t and stores the result in d&lt;br /&gt;
;mod     &lt;br /&gt;
:d s t   &lt;br /&gt;
::// calculates s mod t and stores the result in d. Note this&lt;br /&gt;
::// doesn&#039;t behave like the % operator - the result will be &lt;br /&gt;
::// positive even if the either of the operands are negative&lt;br /&gt;
&lt;br /&gt;
;slt     &lt;br /&gt;
:d s t   // stores 1 in d if s &amp;lt; t, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
;sqrt    &lt;br /&gt;
:d s     // calculates sqrt(s) and stores the result in d&lt;br /&gt;
;round   &lt;br /&gt;
:d s     // finds the rounded value of s and stores the result in d&lt;br /&gt;
;trunc   &lt;br /&gt;
:d s     // finds the truncated value of s and stores the result in d&lt;br /&gt;
;ceil   &lt;br /&gt;
: d s     // calculates the ceiling of s and stores the result in d&lt;br /&gt;
;floor  &lt;br /&gt;
: d s     // calculates the floor of s and stores the result in d&lt;br /&gt;
&lt;br /&gt;
;max    &lt;br /&gt;
: d s t   // calculates the maximum of s and t and stores the result in d&lt;br /&gt;
;min    &lt;br /&gt;
: d s t   // calculates the minimum of s and t and stores the result in d&lt;br /&gt;
;abs    &lt;br /&gt;
: d s     // calculates the absolute value of s and stores the result in d&lt;br /&gt;
;log    &lt;br /&gt;
: d s     // calculates the natural logarithm of s and stores the result&lt;br /&gt;
::// in d&lt;br /&gt;
;exp    &lt;br /&gt;
: d s     // calculates the exponential of s and stores the result in d&lt;br /&gt;
;rand   &lt;br /&gt;
: d       // selects a random number uniformly at random between 0 and 1&lt;br /&gt;
::// inclusive and stores the result in d&lt;br /&gt;
&lt;br /&gt;
::// boolean arithmetic uses the C convention that 0 is false and any non-zero&lt;br /&gt;
::// value is true.&lt;br /&gt;
;and    &lt;br /&gt;
: d s t   // stores 1 in d if both s and t have non-zero values,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
;or     &lt;br /&gt;
: d s t   // stores 1 in d if either s or t have non-zero values,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
;xor    &lt;br /&gt;
: d s t   // stores 1 in d if exactly one of s and t are non-zero,&lt;br /&gt;
::// 0 otherwise&lt;br /&gt;
;nor &lt;br /&gt;
:    d s t   // stores 1 in d if both s and t equal zero, 0 otherwise&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// Lines are numbered starting at zero&lt;br /&gt;
;j&lt;br /&gt;
:             a // jumps to line a.&lt;br /&gt;
;bltz&lt;br /&gt;
:      s   a // jumps to line a if s &amp;lt;  0&lt;br /&gt;
;blez &lt;br /&gt;
:     s   a // jumps to line a if s &amp;lt;= 0&lt;br /&gt;
;bgez &lt;br /&gt;
:     s   a // jumps to line a if s &amp;gt;= 0&lt;br /&gt;
;bgtz&lt;br /&gt;
:      s   a // jumps to line a if s &amp;gt;  0&lt;br /&gt;
;beq &lt;br /&gt;
:      s t a // jumps to line a if s == t&lt;br /&gt;
;bne &lt;br /&gt;
:      s t a // jumps to line a if s != t&lt;br /&gt;
&lt;br /&gt;
;yield           &lt;br /&gt;
: 	// ceases code execution for this power tick&lt;br /&gt;
&lt;br /&gt;
This is a sample timer command set, alternating between 1 for 1 tick (0.5s), then off for 2 ticks (1s).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
move r0 0		// Line 0: move the value 0 to register0&lt;br /&gt;
sub r1 r0 3		// Line 1: subtract 3 from the value in r0 and write it to r1&lt;br /&gt;
bltz r1 4		// Line 2: jump to line 4 if r1 &amp;lt; 0 (skip the next line)&lt;br /&gt;
move r0 0		// Line 3: move the value 0 to register0 &lt;br /&gt;
slt o r0 1		// Line 4: if r0 &amp;lt; 1 write 1 to the output, otherwise 0.&lt;br /&gt;
add r0 r0 1		// Line 5: increment r0 by 1&lt;br /&gt;
yield			// Line 6: wait until next power tick (0.5s)&lt;br /&gt;
j 1			// Line 7: jump back to line 1	&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
so you will do l r0 d0 SolarAngle&lt;br /&gt;
Sorry had last args swapped&lt;br /&gt;
That would read in the value&lt;br /&gt;
while,&lt;br /&gt;
s d1 Vertical r0&lt;br /&gt;
Would write the contents of r0 into the devices 1&#039;s Vertical property&lt;br /&gt;
additionally you can make some aliases&lt;br /&gt;
alias SolarSensor d0&lt;br /&gt;
l r0 SolarSensor SolarAngle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Another example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Now the IC is inserted into the housing. The screws D0-D5 can be adjusted directly to the equipment (sensor, console, solar panel, etc.). The ports &#039;o&#039; and &#039;i0-i2&#039; have been removed. Instead, commands that directly read and write hardware parameters are added.&lt;br /&gt;
l &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt;&lt;br /&gt;
 reads the value of the parameter&lt;br /&gt;
s &amp;lt;data_channel&amp;gt; &amp;lt;parameter&amp;gt; &amp;lt;register_or_value&amp;gt;&lt;br /&gt;
 writes the value of the parameter&lt;br /&gt;
ls &amp;lt;register&amp;gt; &amp;lt;data_channel&amp;gt; &amp;lt;slot_number&amp;gt; &amp;lt;parameter&amp;gt; &lt;br /&gt;
 reads the parameter value from the slot&lt;br /&gt;
For example, &lt;br /&gt;
l r0 d0 Horizontal&lt;br /&gt;
 &lt;br /&gt;
s d5 Activate 1&lt;br /&gt;
 &lt;br /&gt;
ls r3 db 0 OccupantHash&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* [https://hastebin.com/uwuhidozun.md]&lt;br /&gt;
* [http://www.easy68k.com/]&lt;/div&gt;</summary>
		<author><name>Droxlar</name></author>
	</entry>
</feed>