<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://dwarffortresswiki.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Gammon</id>
	<title>Dwarf Fortress Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://dwarffortresswiki.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Gammon"/>
	<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php/Special:Contributions/Gammon"/>
	<updated>2026-04-08T05:37:37Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.35.11</generator>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=User:Gammon&amp;diff=59004</id>
		<title>User:Gammon</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=User:Gammon&amp;diff=59004"/>
		<updated>2009-12-01T23:34:25Z</updated>

		<summary type="html">&lt;p&gt;Gammon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Fluid logic=&lt;br /&gt;
&lt;br /&gt;
''Disclaimer: This is my personal work on the topic, and felt inclined to share it after reading about the same topic on DF Wiki. Use this information for your own works on the matter.''&lt;br /&gt;
&lt;br /&gt;
Fluid logic is a form of [[computing]] which uses a fluid (generally [[water]]) controlled by various means, to trigger [[pressure plate]]s and hopefully accomplish some desirable result.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Gates==											&lt;br /&gt;
&lt;br /&gt;
Water sources are placed above the first piece to maximize water pressure. In the case of XOR &amp;amp; XAND the source will be placed above the shaft in front of the pieces. Drainage must be available to all pieces. The colors are useful for determining which input has what output connected to it; feel free to use notes here as well.&lt;br /&gt;
&lt;br /&gt;
The first image under each gate is the bottom level of that gate. Note that under the end piece of each double length bridge is a channel; The end piece of each bridge is closest to the plate.&lt;br /&gt;
&lt;br /&gt;
Note that between AND &amp;amp; NAND and every other similar pair it is the pressure plate water settings which determines its output. This is the only way in which they differ.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====AND====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#800000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#003366}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
     &lt;br /&gt;
====OR====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
       &lt;br /&gt;
====NOT, INVERTER====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}        &lt;br /&gt;
====NAND====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#800000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#003366}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}      &lt;br /&gt;
====NOR====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;NOR&amp;quot; widths=&amp;quot;100px&amp;quot; heights=&amp;quot;100px&amp;quot; perrow=&amp;quot;6&amp;quot;&amp;gt;&lt;br /&gt;
File:Fig5NOR0.png|Level 0. Water source is at the top, falling from above.&lt;br /&gt;
&amp;lt;/gallery&amp;gt;           &lt;br /&gt;
====XOR====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|+}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#800000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#003366}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
====XAND====                                 &lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|+}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#800000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#003366}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;XAND&amp;quot; widths=&amp;quot;100px&amp;quot; heights=&amp;quot;100px&amp;quot; perrow=&amp;quot;6&amp;quot;&amp;gt;&lt;br /&gt;
File:Fig4XAND2.png|Level -2. Grates hide a drainage bypass.&lt;br /&gt;
File:Fig4XAND1.png|Level -1. Water source at top, falling from above.&lt;br /&gt;
File:Fig4XAND0.png|Level 0. Water source at top, falling down.&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Computing==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Latch===&lt;br /&gt;
&lt;br /&gt;
In Dwarf Fortress, a latch is a circuit which has two stable states and thereby can store one bit of information.&lt;br /&gt;
&lt;br /&gt;
A circuit incorporating latches has state; its output may depend not only on its current input, but also on its previous inputs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====S/R Latch====&lt;br /&gt;
[[Image:Fig6SRLATCH0.png]]&lt;br /&gt;
&lt;br /&gt;
Here are four inputs, Red, Blue, Green and Gold, and two outputs, Pink and Teal. Outside signals are connected to Red and Green. Internally, Teal connects to Blue, and Pink connects to Gold. Only one of the outputs is typically used; if Pink is that output, then input Green will SET the BIT, and input Red will RESET it.&lt;br /&gt;
&lt;br /&gt;
Note: Use a Signal Trap when attempting to capture creature plate signals. Hold RESET while system boots.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Signal Trap====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    -1   0   1&lt;br /&gt;
     X   .   X   I.R     I.S &lt;br /&gt;
        &amp;lt;P           O.Q&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Notes&lt;br /&gt;
*INPUT S to SET, INPUT R to RESET&lt;br /&gt;
*Uses a door and hatch. Useful for capturing creature plate OUTPUT.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Clock Signal===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
         0&lt;br /&gt;
         [   IC  CH.BR.&lt;br /&gt;
         ]&lt;br /&gt;
        &amp;lt;P   OC  PR.PL.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: ACCURACY UNTESTED.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
       &lt;br /&gt;
===Methods Of Implementation===						&lt;br /&gt;
&lt;br /&gt;
The computational &amp;quot;house&amp;quot; is a collection of gates and purpose-made components for the computation of inputs and harvesting of results.&lt;br /&gt;
&lt;br /&gt;
A source of water is pumped into a reservoir with the computational devices arranged below it to accept the water. Below these devices is a system for carrying away the used water.&lt;br /&gt;
&lt;br /&gt;
The system must be able to carry the water at an adequate rate. Pumps are one way to assure this: they take the water to a river or map edge. Untested is the method of &amp;quot;atom-smashing&amp;quot; the water; it would greatly minimize the work needed, and indeed this already occurs inside the devices.&lt;br /&gt;
&lt;br /&gt;
Of concern is what is known as &amp;quot;sloshing&amp;quot;: where water can cause effect upon a pressure plate more then once per operation. This can cause chaos in the computer and completely ruin it. Pressure must be kept as high as possible; and drainage faster then the rate which pressure introduces water into the computer.&lt;br /&gt;
&lt;br /&gt;
All gates using bridges and floodgates are particularly slow at changing states. Each takes 100 steps to switch states, and Pressure plates require 100 steps to turn OFF.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Reservoir====&lt;br /&gt;
&lt;br /&gt;
A pump can be seen supplying water to the reservoir from a brook. The door above determines whether the reservoir may fill. Underneath the water are a series of hatches over the computer components, determining whether the computer is on or off. To the left is a protected access shaft. The pump at the topmost is the highest in a series of pumps, reaching below to remove waste water.&lt;br /&gt;
&lt;br /&gt;
[[File:Fig1Reservoir.png|thumb|The reservoir]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Computer Components====&lt;br /&gt;
&lt;br /&gt;
Here can be seen an S/R Latch: where two NOR gates have their outputs crossed to the others second input. This allows 1 bit to be stored.&lt;br /&gt;
&lt;br /&gt;
An access shaft, I, and a door, X, allow workers to reach the site.&lt;br /&gt;
&lt;br /&gt;
EDIT LATER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Drainage====&lt;br /&gt;
&lt;br /&gt;
Here a pump, %, can be seen removing water from a pit below the S/R Latch. There is ample conduit to bring the water to the brook and pump into it. A waterwheel, gear assembly, and two axles bring power to the pumps.&lt;br /&gt;
&lt;br /&gt;
EDIT LATER&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=User:Gammon&amp;diff=59003</id>
		<title>User:Gammon</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=User:Gammon&amp;diff=59003"/>
		<updated>2009-12-01T22:35:35Z</updated>

		<summary type="html">&lt;p&gt;Gammon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Fluid logic=&lt;br /&gt;
&lt;br /&gt;
''Disclaimer: This is my personal work on the topic, and felt inclined to share it after reading about the same topic on DF Wiki. Use this information for your own works on the matter.''&lt;br /&gt;
&lt;br /&gt;
Fluid logic is a form of [[computing]] which uses a fluid (generally [[water]]) controlled by various means, to trigger [[pressure plate]]s and hopefully accomplish some desirable result.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Gates==											&lt;br /&gt;
&lt;br /&gt;
Water sources are placed above the first piece to maximize water pressure. In the case of XOR &amp;amp; XAND the source will be placed above the shaft in front of the pieces. Drainage must be available to all pieces. The colors are useful for determining which input has what output connected to it; feel free to use notes here as well.&lt;br /&gt;
&lt;br /&gt;
The first image under each gate is the bottom level of that gate. Note that under the end piece of each double length bridge is a channel; The end piece of each bridge is closest to the plate.&lt;br /&gt;
&lt;br /&gt;
Note that between AND &amp;amp; NAND and every other similar pair it is the pressure plate water settings which determines its output. This is the only way in which they differ.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====AND====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#800000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#003366}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
     &lt;br /&gt;
====OR====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
       &lt;br /&gt;
====NOT, INVERTER====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}        &lt;br /&gt;
====NAND====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#800000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#003366}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}      &lt;br /&gt;
====NOR====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;NOR&amp;quot; widths=&amp;quot;100px&amp;quot; heights=&amp;quot;100px&amp;quot; perrow=&amp;quot;6&amp;quot;&amp;gt;&lt;br /&gt;
File:Fig5NOR0.png|Level 0. Water source is at the top, falling from above.&lt;br /&gt;
&amp;lt;/gallery&amp;gt;           &lt;br /&gt;
====XOR====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#800000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#003366}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
====XAND====                                 &lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#800000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#003366}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;XAND&amp;quot; widths=&amp;quot;100px&amp;quot; heights=&amp;quot;100px&amp;quot; perrow=&amp;quot;6&amp;quot;&amp;gt;&lt;br /&gt;
File:Fig4XAND2.png|Level -2. Grates hide a drainage bypass.&lt;br /&gt;
File:Fig4XAND1.png|Level -1. Water source at top, falling from above.&lt;br /&gt;
File:Fig4XAND0.png|Level 0. Water source at top, falling down.&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Computing==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Latch===&lt;br /&gt;
&lt;br /&gt;
In Dwarf Fortress, a latch is a circuit which has two stable states and thereby can store one bit of information.&lt;br /&gt;
&lt;br /&gt;
A circuit incorporating latches has state; its output may depend not only on its current input, but also on its previous inputs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====S/R Latch====&lt;br /&gt;
[[Image:Fig6SRLATCH0.png]]&lt;br /&gt;
&lt;br /&gt;
Here are four inputs, Red, Blue, Green and Gold, and two outputs, Pink and Teal. Outside signals are connected to Red and Green. Internally, Teal connects to Blue, and Pink connects to Gold. Only one of the outputs is typically used; if Pink is that output, then input Green will SET the BIT, and input Red will RESET it.&lt;br /&gt;
&lt;br /&gt;
Note: Use a Signal Trap when attempting to capture creature plate signals. Hold RESET while system boots.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Signal Trap====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    -1   0   1&lt;br /&gt;
     X   .   X   I.R     I.S &lt;br /&gt;
        &amp;lt;P           O.Q&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Notes&lt;br /&gt;
*INPUT S to SET, INPUT R to RESET&lt;br /&gt;
*Uses a door and hatch. Useful for capturing creature plate OUTPUT.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Clock Signal===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
         0&lt;br /&gt;
         [   IC  CH.BR.&lt;br /&gt;
         ]&lt;br /&gt;
        &amp;lt;P   OC  PR.PL.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: ACCURACY UNTESTED.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
       &lt;br /&gt;
===Methods Of Implementation===						&lt;br /&gt;
&lt;br /&gt;
The computational &amp;quot;house&amp;quot; is a collection of gates and purpose-made components for the computation of inputs and harvesting of results.&lt;br /&gt;
&lt;br /&gt;
A source of water is pumped into a reservoir with the computational devices arranged below it to accept the water. Below these devices is a system for carrying away the used water.&lt;br /&gt;
&lt;br /&gt;
The system must be able to carry the water at an adequate rate. Pumps are one way to assure this: they take the water to a river or map edge. Untested is the method of &amp;quot;atom-smashing&amp;quot; the water; it would greatly minimize the work needed, and indeed this already occurs inside the devices.&lt;br /&gt;
&lt;br /&gt;
Of concern is what is known as &amp;quot;sloshing&amp;quot;: where water can cause effect upon a pressure plate more then once per operation. This can cause chaos in the computer and completely ruin it. Pressure must be kept as high as possible; and drainage faster then the rate which pressure introduces water into the computer.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Reservoir====&lt;br /&gt;
&lt;br /&gt;
A pump can be seen supplying water to the reservoir from a brook. The door above determines whether the reservoir may fill. Underneath the water are a series of hatches over the computer components, determining whether the computer is on or off. To the left is a protected access shaft. The pump at the topmost is the highest in a series of pumps, reaching below to remove waste water.&lt;br /&gt;
&lt;br /&gt;
[[File:Fig1Reservoir.png|thumb|The reservoir]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Computer Components====&lt;br /&gt;
&lt;br /&gt;
Here can be seen an S/R Latch: where two NOR gates have their outputs crossed to the others second input. This allows 1 bit to be stored.&lt;br /&gt;
&lt;br /&gt;
An access shaft, I, and a door, X, allow workers to reach the site.&lt;br /&gt;
&lt;br /&gt;
EDIT LATER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Drainage====&lt;br /&gt;
&lt;br /&gt;
Here a pump, %, can be seen removing water from a pit below the S/R Latch. There is ample conduit to bring the water to the brook and pump into it. A waterwheel, gear assembly, and two axles bring power to the pumps.&lt;br /&gt;
&lt;br /&gt;
EDIT LATER&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=User:Gammon&amp;diff=59002</id>
		<title>User:Gammon</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=User:Gammon&amp;diff=59002"/>
		<updated>2009-12-01T22:32:38Z</updated>

		<summary type="html">&lt;p&gt;Gammon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Fluid logic=&lt;br /&gt;
&lt;br /&gt;
''Disclaimer: This is my personal work on the topic, and felt inclined to share it after reading about the same topic on DF Wiki. Use this information for your own works on the matter.''&lt;br /&gt;
&lt;br /&gt;
Fluid logic is a form of [[computing]] which uses a fluid (generally [[water]]) controlled by various means, to trigger [[pressure plate]]s and hopefully accomplish some desirable result.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Gates==											&lt;br /&gt;
&lt;br /&gt;
Water sources are placed above the first piece to maximize water pressure. In the case of XOR &amp;amp; XAND the source will be placed above the shaft in front of the pieces. Drainage must be available to all pieces. The colors are useful for determining which input has what output connected to it; feel free to use notes here as well.&lt;br /&gt;
&lt;br /&gt;
The first image under each gate is the bottom level of that gate. Note that under the end piece of each double length bridge is a channel; The end piece of each bridge is closest to the plate.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====AND====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#800000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#003366}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
     &lt;br /&gt;
====OR====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
       &lt;br /&gt;
====NOT, INVERTER====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}        &lt;br /&gt;
====NAND====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#800000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#003366}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}      &lt;br /&gt;
====NOR====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;NOR&amp;quot; widths=&amp;quot;100px&amp;quot; heights=&amp;quot;100px&amp;quot; perrow=&amp;quot;6&amp;quot;&amp;gt;&lt;br /&gt;
File:Fig5NOR0.png|Level 0. Water source is at the top, falling from above.&lt;br /&gt;
&amp;lt;/gallery&amp;gt;           &lt;br /&gt;
====XOR====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#800000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#003366}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
====XAND====                                 &lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#800000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#003366}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;XAND&amp;quot; widths=&amp;quot;100px&amp;quot; heights=&amp;quot;100px&amp;quot; perrow=&amp;quot;6&amp;quot;&amp;gt;&lt;br /&gt;
File:Fig4XAND2.png|Level -2. Grates hide a drainage bypass.&lt;br /&gt;
File:Fig4XAND1.png|Level -1. Water source at top, falling from above.&lt;br /&gt;
File:Fig4XAND0.png|Level 0. Water source at top, falling down.&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Computing==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Latch===&lt;br /&gt;
&lt;br /&gt;
In Dwarf Fortress, a latch is a circuit which has two stable states and thereby can store one bit of information.&lt;br /&gt;
&lt;br /&gt;
A circuit incorporating latches has state; its output may depend not only on its current input, but also on its previous inputs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====S/R Latch====&lt;br /&gt;
[[Image:Fig6SRLATCH0.png]]&lt;br /&gt;
&lt;br /&gt;
Here are four inputs, Red, Blue, Green and Gold, and two outputs, Pink and Teal. Outside signals are connected to Red and Green. Internally, Teal connects to Blue, and Pink connects to Gold. Only one of the outputs is typically used; if Pink is that output, then input Green will SET the BIT, and input Red will RESET it.&lt;br /&gt;
&lt;br /&gt;
Note: Use a Signal Trap when attempting to capture creature plate signals. Hold RESET while system boots.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Signal Trap====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    -1   0   1&lt;br /&gt;
     X   .   X   I.R     I.S &lt;br /&gt;
        &amp;lt;P           O.Q&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Notes&lt;br /&gt;
*INPUT S to SET, INPUT R to RESET&lt;br /&gt;
*Uses a door and hatch. Useful for capturing creature plate OUTPUT.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Clock Signal===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
         0&lt;br /&gt;
         [   IC  CH.BR.&lt;br /&gt;
         ]&lt;br /&gt;
        &amp;lt;P   OC  PR.PL.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: ACCURACY UNTESTED.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
       &lt;br /&gt;
===Methods Of Implementation===						&lt;br /&gt;
&lt;br /&gt;
The computational &amp;quot;house&amp;quot; is a collection of gates and purpose-made components for the computation of inputs and harvesting of results.&lt;br /&gt;
&lt;br /&gt;
A source of water is pumped into a reservoir with the computational devices arranged below it to accept the water. Below these devices is a system for carrying away the used water.&lt;br /&gt;
&lt;br /&gt;
The system must be able to carry the water at an adequate rate. Pumps are one way to assure this: they take the water to a river or map edge. Untested is the method of &amp;quot;atom-smashing&amp;quot; the water; it would greatly minimize the work needed, and indeed this already occurs inside the devices.&lt;br /&gt;
&lt;br /&gt;
Of concern is what is known as &amp;quot;sloshing&amp;quot;: where water can cause effect upon a pressure plate more then once per operation. This can cause chaos in the computer and completely ruin it. Pressure must be kept as high as possible; and drainage faster then the rate which pressure introduces water into the computer.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Reservoir====&lt;br /&gt;
&lt;br /&gt;
A pump can be seen supplying water to the reservoir from a brook. The door above determines whether the reservoir may fill. Underneath the water are a series of hatches over the computer components, determining whether the computer is on or off. To the left is a protected access shaft. The pump at the topmost is the highest in a series of pumps, reaching below to remove waste water.&lt;br /&gt;
&lt;br /&gt;
[[File:Fig1Reservoir.png|thumb|The reservoir]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Computer Components====&lt;br /&gt;
&lt;br /&gt;
Here can be seen an S/R Latch: where two NOR gates have their outputs crossed to the others second input. This allows 1 bit to be stored.&lt;br /&gt;
&lt;br /&gt;
An access shaft, I, and a door, X, allow workers to reach the site.&lt;br /&gt;
&lt;br /&gt;
EDIT LATER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Drainage====&lt;br /&gt;
&lt;br /&gt;
Here a pump, %, can be seen removing water from a pit below the S/R Latch. There is ample conduit to bring the water to the brook and pump into it. A waterwheel, gear assembly, and two axles bring power to the pumps.&lt;br /&gt;
&lt;br /&gt;
EDIT LATER&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=File:Fig6SRLATCH0.png&amp;diff=59001</id>
		<title>File:Fig6SRLATCH0.png</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=File:Fig6SRLATCH0.png&amp;diff=59001"/>
		<updated>2009-12-01T22:29:25Z</updated>

		<summary type="html">&lt;p&gt;Gammon: Here are four inputs, Red, Blue, Green and Gold, and two outputs, Pink and Teal.
Outside signals are connected to Red and Green. Internally, Teal connects to Blue, and Pink connects to Gold. Only one of the outputs is typically used; if Pink is that outpu&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Here are four inputs, Red, Blue, Green and Gold, and two outputs, Pink and Teal.&lt;br /&gt;
Outside signals are connected to Red and Green. Internally, Teal connects to Blue, and Pink connects to Gold. Only one of the outputs is typically used; if Pink is that output, then input Green will SET the BIT, and input Red will RESET it.&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=File:Fig4XAND0.png&amp;diff=58999</id>
		<title>File:Fig4XAND0.png</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=File:Fig4XAND0.png&amp;diff=58999"/>
		<updated>2009-12-01T22:23:13Z</updated>

		<summary type="html">&lt;p&gt;Gammon: uploaded a new version of &amp;quot;File:Fig4XAND0.png&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;On the first level of this XAND gate, two raising bridges can be seen. Under the end piece of each bridge (the end piece is closest the plate) a channel has been dug to allow drainage when the bridge turns on.&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=File:Fig4XAND1.png&amp;diff=58998</id>
		<title>File:Fig4XAND1.png</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=File:Fig4XAND1.png&amp;diff=58998"/>
		<updated>2009-12-01T22:22:40Z</updated>

		<summary type="html">&lt;p&gt;Gammon: uploaded a new version of &amp;quot;File:Fig4XAND1.png&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;One level under the top of the XAND and we find two floodgates and two floor grates for drainage and access. This is also the top of an AND gate. Notice the space in front of the uppermost floodgate, that is the water source which falls from above.&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=File:Fig4XAND2.png&amp;diff=58997</id>
		<title>File:Fig4XAND2.png</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=File:Fig4XAND2.png&amp;diff=58997"/>
		<updated>2009-12-01T22:21:57Z</updated>

		<summary type="html">&lt;p&gt;Gammon: uploaded a new version of &amp;quot;File:Fig4XAND2.png&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is the bottom of the XAND gate and also the bottom of an AND gate. Two bridges raise and lower to stop or allow the drainage of water from a channel directly above them. A channel below bypasses any unintended blockage of water.&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=File:Fig5NOR0.png&amp;diff=58996</id>
		<title>File:Fig5NOR0.png</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=File:Fig5NOR0.png&amp;diff=58996"/>
		<updated>2009-12-01T22:20:26Z</updated>

		<summary type="html">&lt;p&gt;Gammon: uploaded a new version of &amp;quot;File:Fig5NOR0.png&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Two bridges raise and lower to control drainage and flow. Channels have been dug underneath the bridge end pieces (nearest the plate.) Water source is at the top, falling down onto the uppermost bridge.&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=User:Gammon&amp;diff=58995</id>
		<title>User:Gammon</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=User:Gammon&amp;diff=58995"/>
		<updated>2009-12-01T22:19:40Z</updated>

		<summary type="html">&lt;p&gt;Gammon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Fluid logic=&lt;br /&gt;
&lt;br /&gt;
''Disclaimer: This is my personal work on the topic, and felt inclined to share it after reading about the same topic on DF Wiki. Use this information for your own works on the matter.''&lt;br /&gt;
&lt;br /&gt;
Fluid logic is a form of [[computing]] which uses a fluid (generally [[water]]) controlled by various means, to trigger [[pressure plate]]s and hopefully accomplish some desirable result.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Gates==											&lt;br /&gt;
&lt;br /&gt;
Water sources are placed above the first piece to maximize water pressure. In the case of XOR &amp;amp; XAND the source will be placed above the shaft in front of the pieces. Drainage must be available to all pieces. The colors are useful for determining which input has what output connected to it; feel free to use notes here as well.&lt;br /&gt;
&lt;br /&gt;
The first image under each gate is the bottom level of that gate. Note that under the end piece of each double length bridge is a channel; The end piece of each bridge is closest to the plate.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====AND====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#800000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#003366}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
     &lt;br /&gt;
====OR====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
       &lt;br /&gt;
====NOT, INVERTER====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}        &lt;br /&gt;
====NAND====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#800000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#003366}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}      &lt;br /&gt;
====NOR====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;NOR&amp;quot; widths=&amp;quot;100px&amp;quot; heights=&amp;quot;100px&amp;quot; perrow=&amp;quot;6&amp;quot;&amp;gt;&lt;br /&gt;
File:Fig5NOR0.png|Level 0. Water source is at the top, falling from above.&lt;br /&gt;
&amp;lt;/gallery&amp;gt;           &lt;br /&gt;
====XOR====&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#800000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#003366}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
====XAND====                                 &lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|{{H2O}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╬|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#800000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|X|#FFF|#003366}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RTF|.}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
{| style=&amp;quot;border-spacing: 0&amp;quot;&lt;br /&gt;
|{{RTF|╔}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╗}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#800000|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╥|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT|╨|#003366|#000}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|{{RT0|^|#808}}&lt;br /&gt;
|{{RTF|║}}&lt;br /&gt;
|-&lt;br /&gt;
|{{RTF|╚}}&lt;br /&gt;
|{{RTF|═}}&lt;br /&gt;
|{{RTF|╝}}&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;XAND&amp;quot; widths=&amp;quot;100px&amp;quot; heights=&amp;quot;100px&amp;quot; perrow=&amp;quot;6&amp;quot;&amp;gt;&lt;br /&gt;
File:Fig4XAND2.png|Level -2. Grates hide a drainage bypass.&lt;br /&gt;
File:Fig4XAND1.png|Level -1. Water source at top, falling from above.&lt;br /&gt;
File:Fig4XAND0.png|Level 0. Water source at top, falling down.&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Computing==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Latch===&lt;br /&gt;
&lt;br /&gt;
In Dwarf Fortress, a latch is a circuit which has two stable states and thereby can store one bit of information.&lt;br /&gt;
&lt;br /&gt;
A circuit incorporating latches has state; its output may depend not only on its current input, but also on its previous inputs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====S/R Latch====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
     0   0    &lt;br /&gt;
     [   [    I.S   I.R&lt;br /&gt;
     ]   ]&lt;br /&gt;
     [   [    I.Q   I.Q&lt;br /&gt;
     ]   ]       &lt;br /&gt;
    &amp;lt;P  &amp;lt;P    O.Q   O.Q&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Use a Signal Trap when attempting to capture creature plate signals. Hold RESET while system boots.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Signal Trap====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    -1   0   1&lt;br /&gt;
     X   .   X   I.R     I.S &lt;br /&gt;
        &amp;lt;P           O.Q&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Notes&lt;br /&gt;
*INPUT S to SET, INPUT R to RESET&lt;br /&gt;
*Uses a door and hatch. Useful for capturing creature plate OUTPUT.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Clock Signal===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
         0&lt;br /&gt;
         [   IC  CH.BR.&lt;br /&gt;
         ]&lt;br /&gt;
        &amp;lt;P   OC  PR.PL.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: ACCURACY UNTESTED.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
       &lt;br /&gt;
===Methods Of Implementation===						&lt;br /&gt;
&lt;br /&gt;
The computational &amp;quot;house&amp;quot; is a collection of gates and purpose-made components for the computation of inputs and harvesting of results.&lt;br /&gt;
&lt;br /&gt;
A source of water is pumped into a reservoir with the computational devices arranged below it to accept the water. Below these devices is a system for carrying away the used water.&lt;br /&gt;
&lt;br /&gt;
The system must be able to carry the water at an adequate rate. Pumps are one way to assure this: they take the water to a river or map edge. Untested is the method of &amp;quot;atom-smashing&amp;quot; the water; it would greatly minimize the work needed, and indeed this already occurs inside the devices.&lt;br /&gt;
&lt;br /&gt;
Of concern is what is known as &amp;quot;sloshing&amp;quot;: where water can cause effect upon a pressure plate more then once per operation. This can cause chaos in the computer and completely ruin it. Pressure must be kept as high as possible; and drainage faster then the rate which pressure introduces water into the computer.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Reservoir====&lt;br /&gt;
&lt;br /&gt;
A pump can be seen supplying water to the reservoir from a brook. The door above determines whether the reservoir may fill. Underneath the water are a series of hatches over the computer components, determining whether the computer is on or off. To the left is a protected access shaft. The pump at the topmost is the highest in a series of pumps, reaching below to remove waste water.&lt;br /&gt;
&lt;br /&gt;
[[File:Fig1Reservoir.png|thumb|The reservoir]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Computer Components====&lt;br /&gt;
&lt;br /&gt;
Here can be seen an S/R Latch: where two NOR gates have their outputs crossed to the others second input. This allows 1 bit to be stored.&lt;br /&gt;
&lt;br /&gt;
An access shaft, I, and a door, X, allow workers to reach the site.&lt;br /&gt;
&lt;br /&gt;
EDIT LATER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Drainage====&lt;br /&gt;
&lt;br /&gt;
Here a pump, %, can be seen removing water from a pit below the S/R Latch. There is ample conduit to bring the water to the brook and pump into it. A waterwheel, gear assembly, and two axles bring power to the pumps.&lt;br /&gt;
&lt;br /&gt;
EDIT LATER&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=User_talk:Gammon&amp;diff=58991</id>
		<title>User talk:Gammon</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=User_talk:Gammon&amp;diff=58991"/>
		<updated>2009-12-01T20:12:59Z</updated>

		<summary type="html">&lt;p&gt;Gammon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Could you make the images with the default tileset? --[[User:Kami|Kami]] 19:49, 1 December 2009 (UTC)&lt;br /&gt;
* I will, but time is always in short supply around here. Ideally, I would make everything using the default tileset so I can remove the key. [[User:Gammon|Gammon]] 20:12, 1 December 2009 (UTC)&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=40d:Computing&amp;diff=58982</id>
		<title>40d:Computing</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=40d:Computing&amp;diff=58982"/>
		<updated>2009-12-01T18:51:42Z</updated>

		<summary type="html">&lt;p&gt;Gammon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Computing in dwarf fortress is the practice of setting up complex constructions to perform logical operations and calculations, ideally to control some functionality of your fortress, or such a doddle. Even it isn't a young concept anymore there is still lots of room for improvement and development. One reason is that there are many ways to solve one problem. Innovation and invention is encouraged.&lt;br /&gt;
== General ==&lt;br /&gt;
&amp;lt;!-- ''&amp;quot;So, what is computing? Let's pretend to be stupid ...&amp;quot;'' [http://en.wikipedia.org/wiki/Die_Feuerzangenbowle Die Feuerzangenbowle]&amp;lt;br /&amp;gt; --&amp;gt;&lt;br /&gt;
Concepts of computing in dwarf fortress are far away from what you can call a programmable computer. Even all necessary components are proven to exist, a construction working like a real computer may be too complex to be built in dwarf fortress. Nevertheless, early computing machines and electronic devices are comparably simple. These concepts can be easily transferred into dwarf fortress. So dwarfputing is more or less a kind of electronics, casting logic in hardware.&lt;br /&gt;
&lt;br /&gt;
== Basics ==&lt;br /&gt;
=== Binary information ===&lt;br /&gt;
Binary information can have one of two possible states: true or false, respectively 1 or 0. In dwarf fortress they can be represented by different entities:&lt;br /&gt;
* on/off state or signal of a [[trigger]]&lt;br /&gt;
* power or connection state of a [[machine component]]&lt;br /&gt;
* open or closed state of a [[door]] or similar buildings&lt;br /&gt;
* [[pressure plate|low/high]] or [[flow|flowing/standing]] [[water|fluid]]&lt;br /&gt;
* present [[creature]]s and [[dwarf|borgs]]&lt;br /&gt;
* ...&lt;br /&gt;
Electronic devices and computers base on this elementary form of information, and if you want to go into computing, you’ll have to familiarize with it. [http://en.wikipedia.org/wiki/Propositional_calculus propositional calculus]&lt;br /&gt;
=== Input/Output ===&lt;br /&gt;
Input can be every trigger - [[lever]] or [[pressure plate]]. Typically your dwarfs are pulling levers, any creatures are walking over your pressure plates, or any fluid is covering those plates to initiate any computing. The bottom line is you'll always have a lever or a pressure plate or multiple of them sending binary signals: on/off.&amp;lt;br /&amp;gt;&lt;br /&gt;
Note: Even [[pressure plates]] can be constructed to trigger at different fluid levels, the output will always be just a binary on/off. So everything you build will have a binary base.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Input elements&lt;br /&gt;
* manual: [[lever]] -&amp;gt; binary on/off signal&lt;br /&gt;
* triggered: [[pressure plate]] -&amp;gt; binary on/off signal&lt;br /&gt;
&lt;br /&gt;
According to input, output can be everything that is able to react to an on/off signal. This can be doors, bridges, floodgates allowing or stopping flow, gears controlling pumps and many more. Just refer to the [[lever#On/Off states|lever]] page for a detailed list. Independent of what you finally want to control with your dwarfputer, there are always pressure plates generating this signal. In some special configurations - when [[mechanical logic]] is involved - output may not be a on/off signal but power, thus running or not running machine component.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
Output elements&lt;br /&gt;
* signal: [[pressure plate]] -&amp;gt; binary on/off signal -&amp;gt; linkable Object(s)&lt;br /&gt;
* power: [[gear assembly]] -&amp;gt; binary power on/power off -&amp;gt; machine&lt;br /&gt;
=== Binary logic ===&lt;br /&gt;
Basic binary logic takes one or two input bits and creates an output based on them. The devices that perform these operations are commonly called '''logic gates'''.&amp;lt;br /&amp;gt;&lt;br /&gt;
* NOT - takes one input and returns the opposite of the input&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=1&lt;br /&gt;
|-&lt;br /&gt;
! input A &lt;br /&gt;
! NOT&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
|}&amp;lt;br /&amp;gt;&lt;br /&gt;
* AND - takes two inputs and returns true if both inputs are true&lt;br /&gt;
* OR - takes two inputs and returns true if at least one input is true&lt;br /&gt;
* XOR - takes two inputs and returns true if exactly one input is true&lt;br /&gt;
* NAND - takes two inputs and returns true if either input is false&lt;br /&gt;
* NOR - takes two inputs and returns true if both inputs are false&lt;br /&gt;
* NXOR - takes two inputs and returns true if both inputs are identical&amp;lt;br /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=1&lt;br /&gt;
|-&lt;br /&gt;
! input A &lt;br /&gt;
! input B&lt;br /&gt;
! AND&lt;br /&gt;
! OR&lt;br /&gt;
! XOR&lt;br /&gt;
! NAND&lt;br /&gt;
! NOR&lt;br /&gt;
! NXOR&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 1&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
|}&amp;lt;br /&amp;gt;&lt;br /&gt;
The most human-understandable logic system requires NOT, AND and OR gates, but having a design for either a NAND or a NOR gate is enough to build any of the other gates. Some gates are easier to create or need fewer components than others depending on what discipline your logic relies on.&lt;br /&gt;
=== Complex gates ===&lt;br /&gt;
* [[Latch]] - storing and reading a single binary value&lt;br /&gt;
* [[Repeater]] - sending a repeating signal&lt;br /&gt;
* [[Counter]]/[[Adder]] - binary calculation&lt;br /&gt;
== Disciplines ==&lt;br /&gt;
There are 4 main disciplines of dwarfputing, depending on what will drive the dwarfputer. Each of them has it's assets and drawbacks. &lt;br /&gt;
=== Fluid logic ===&lt;br /&gt;
[[Fluid logic]] is controlling the ''flow of fluid'' over different pressure plates. Fluid logic can be easily constructed and every known logic gate in dwarf fortress has already been built with it. On the other hand this discipline depends on a somehow unlimited source of the used fluid to deal with it's [[evaporation]] and [[Water#Water_in_Fortress_Mode|destruction]].&lt;br /&gt;
=== Mechanical logic ===&lt;br /&gt;
[[Mechanical logic]] uses systems of axles and [[gear assemblies]] to build logical gates. Mechanical logic reacts very fast and can be easily constructed. Especially the feature of gears to toggle on every signal instead of reacting different to on/off signals makes mechanical logic gates very flexible. On the other hand this discipline depends on much mechanical power. And because of the lack of some kind of rotation sensor, you will generally need a pump, a pressure plate and any fluid to convert power into on/off signals.&lt;br /&gt;
=== Borg logic ===&lt;br /&gt;
[[Borg logic]] controlling the path of your dwarves to direct them over pressure plates. They will be driven by constant hauling jobs or military designations. Pressure plates are used in similar setups to those in the fluid logic method. It is theorized that Borg logic would be quicker and easier to set up than fluid logic, although it would require a very large population dedicated to nothing but borging. The tendency of dwarves to eat, sleep, drink, makes this discipline quite unreliable. There are no known examples of borg logic, and it is purely theoretical at this time. Maybe the discovery of [[one-way]] ramps will push it's development.&lt;br /&gt;
=== Animal logic ===&lt;br /&gt;
[[Animal logic]] is like borg logic but uses animals or captured hostiles to trigger pressure plates. Animals have a natural 'follow the leader' tendency and never starve. Hostiles will always target your dwarves and will also need no food or sleep.&lt;br /&gt;
== Examples ==&lt;br /&gt;
There are few examples of a really useful dwarfputer and some concepts witches have the potential to become useful for others. But in most cases they are made just for fun. What doesn't mean to diminish their designers achievements, because these are in general the more complex ones.&amp;lt;br /&amp;gt;At the moment there are no known examples of animal or borg logic.&lt;br /&gt;
=== Useful ===&lt;br /&gt;
* Magma trap&lt;br /&gt;
** This is an example of an useful dwarfputer controlling a magma trap. It automatically floods an area with lava, cleans up and resets afterwards. The timing is perfectly adjusted to let the victims vanish only leaving their valuable metal behind.&amp;lt;br /&amp;gt;video: http://mkv25.net/dfma/movie-1808-perfectmagmatrap&amp;lt;br /&amp;gt;design: http://i576.photobucket.com/albums/ss208/kanddak/magmatrap.png&lt;br /&gt;
=== Concepts ===&lt;br /&gt;
* repeater&lt;br /&gt;
** mechanical logic http://mkv25.net/dfma/movie-1370-pump-basedautorepeater&lt;br /&gt;
* adding machine&lt;br /&gt;
** mechanical logic, 6-bit: http://mkv25.net/dfma/movie-1561-addingmachine&lt;br /&gt;
** fluid logic, 8-bit: http://mkv25.net/dfma/movie-1084-numberabbeydemonstration&lt;br /&gt;
=== Such a doddle ===&lt;br /&gt;
* decimal display for 4-bit binary input&lt;br /&gt;
** mechanical logic, decimal with overflow-bit: http://mkv25.net/dfma/movie-1745-dwarfputerv01&lt;br /&gt;
** probably fluid logic: http://mkv25.net/dfma/movie-1657-7segmentlcddisplay&lt;br /&gt;
** fluid logic, hexadecimal: http://mkv25.net/dfma/movie-1092-7-segmentdisplaydemonstration&lt;br /&gt;
* tic tac toe&lt;br /&gt;
** mechanical logic http://mkv25.net/dfma/movie-1813-tictactoev10simple&lt;br /&gt;
== See Also ==&lt;br /&gt;
* [[Fluid logic]]&lt;br /&gt;
* [[Mechanical logic]]&lt;br /&gt;
* [[Repeater]]&lt;br /&gt;
== Related user pages ==&lt;br /&gt;
[[User:BaronW]] - A calculator capable of addition and subtraction with inputs of up to 1023.&lt;br /&gt;
&lt;br /&gt;
[[User:SL/Logic Gates]] - These use mechanisms for connecting gates and devices and so forth, but fluid for logic. They're built on top of a body of water, and require power (for a pump or two per gate).&lt;br /&gt;
&lt;br /&gt;
[[User:Kyace/Adder]] - A full adder built using fluid logic, with a video of a rough prototype. Trivial to combine 8 of these to make a fluid device capable of adding two 8 bit numbers together.&lt;br /&gt;
&lt;br /&gt;
[[User:Soundandfury#Logic_Gates]] - These have a water supply reservoir above and a drain below.  The drained water can be pumped back to the supply reservoir.&lt;br /&gt;
&lt;br /&gt;
[[User:Bidok]] - Animal logic with all gates, memory, repeater and counter. All powered by kittens.&lt;br /&gt;
&lt;br /&gt;
[[User:Hussell#Assorted_Devices]] - Fluid logic&lt;br /&gt;
&lt;br /&gt;
[[User:Gammon]] - Fluid logic. Very detailed CMOS gates.&lt;br /&gt;
[[Category:Guides]]&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=User:Gammon&amp;diff=58981</id>
		<title>User:Gammon</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=User:Gammon&amp;diff=58981"/>
		<updated>2009-12-01T18:30:57Z</updated>

		<summary type="html">&lt;p&gt;Gammon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Fluid logic=&lt;br /&gt;
&lt;br /&gt;
''Disclaimer: This is my personal work on the topic, and felt inclined to share it after reading about the same topic on DF Wiki. Use this information for your own works on the matter.''&lt;br /&gt;
&lt;br /&gt;
Fluid logic is a form of [[computing]] which uses a fluid (generally [[water]]) controlled by various means, to trigger [[pressure plate]]s and hopefully accomplish some desirable result.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Key==&lt;br /&gt;
&lt;br /&gt;
====Floodgate====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
X             FLOOD    ALLOW FLOW WHEN ON&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Large Raising Bridge====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[  Start      CH.BR.   ALLOW DRAIN WHEN ON, ALLOW FLOW WHEN OFF&lt;br /&gt;
]  End&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Channel below the end piece.&lt;br /&gt;
&lt;br /&gt;
====Small Raising Bridge====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[             BRIDGE   ALLOW DRAIN WHEN OFF&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Channel above piece.&lt;br /&gt;
&lt;br /&gt;
====Pressure Plate====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
P             PR.PL.   X/X ON&lt;br /&gt;
P&amp;lt;                     ON UNDER MAXIMUM&lt;br /&gt;
&amp;gt;P                     ON OVER MINIMUM&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Channel====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.                      DRAIN.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Also used as a drain bypass to route around objects.&lt;br /&gt;
&lt;br /&gt;
====Source====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
~                      WATER SOURCE.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Only depicted in XAND and XOR.&lt;br /&gt;
&lt;br /&gt;
===Notes===&lt;br /&gt;
&lt;br /&gt;
*Water source is above first input piece.&lt;br /&gt;
*-2, -1, 0 Refers to level.&lt;br /&gt;
*I is INPUT, O is OUTPUT. Numbered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Gates==											&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====AND====&lt;br /&gt;
&amp;lt;pre&amp;gt;                        &lt;br /&gt;
    -1   0&lt;br /&gt;
     .   X    I.1  FLOOD       &lt;br /&gt;
     [   .    I.1  BRIDGE      &lt;br /&gt;
     .   X    I.2  FLOOD       &lt;br /&gt;
     [   .    I.2  BRIDGE&lt;br /&gt;
         P    O.1  PR.PL. 6/7  &lt;br /&gt;
&amp;lt;/pre&amp;gt;        &lt;br /&gt;
====OR====&lt;br /&gt;
&amp;lt;pre&amp;gt;                            &lt;br /&gt;
         0&lt;br /&gt;
         [    I.1  BRIDGE      &lt;br /&gt;
         ]         CH.BR.&lt;br /&gt;
         [    I.2  BRIDGE      &lt;br /&gt;
         ]         CH.BR.&lt;br /&gt;
         P    O.1  PR.PL. 0/5  &lt;br /&gt;
&amp;lt;/pre&amp;gt;        &lt;br /&gt;
====NOT, INVERTER====&lt;br /&gt;
&amp;lt;pre&amp;gt;                             &lt;br /&gt;
         0&lt;br /&gt;
         [    I.1  BRIDGE      &lt;br /&gt;
         ]         CH.BR.&lt;br /&gt;
         P    O.1  PR.PL. 6/7  &lt;br /&gt;
&amp;lt;/pre&amp;gt;        &lt;br /&gt;
====NAND====&lt;br /&gt;
&amp;lt;pre&amp;gt;                             &lt;br /&gt;
    -1   0 &lt;br /&gt;
     .   X    I.1  FLOOD       &lt;br /&gt;
     [   .    I.1  BRIDGE      &lt;br /&gt;
     .   X    I.2  FLOOD       &lt;br /&gt;
     [   .    I.2  BRIDGE&lt;br /&gt;
         P    O.1  PR.PL. 0/5  &lt;br /&gt;
&amp;lt;/pre&amp;gt;        &lt;br /&gt;
====NOR====&lt;br /&gt;
&amp;lt;pre&amp;gt;                             &lt;br /&gt;
         0&lt;br /&gt;
         [    I.1  BRIDGE      &lt;br /&gt;
         ]         CH.BR&lt;br /&gt;
         [    I.2  BRIDGE      &lt;br /&gt;
         ]         CH.BR&lt;br /&gt;
         P    O.1  PR.PL. 6/7  &lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;NOR&amp;quot; widths=&amp;quot;100px&amp;quot; heights=&amp;quot;100px&amp;quot; perrow=&amp;quot;6&amp;quot;&amp;gt;&lt;br /&gt;
File:Fig5NOR0.png|Level 0. Water source is at the top, falling from above.&lt;br /&gt;
&amp;lt;/gallery&amp;gt;           &lt;br /&gt;
====XOR====&lt;br /&gt;
&amp;lt;pre&amp;gt;                                      &lt;br /&gt;
-2  -1   0&lt;br /&gt;
     ~   ~                           &lt;br /&gt;
 .   X   [    I.2  FLOOD      I.1  CH.BR.  &lt;br /&gt;
 [   .   ]    I.2  BRIDGE                 &lt;br /&gt;
 .   X   [    I.1  FLOOD      I.2  CH.BR.  &lt;br /&gt;
 [   .   ]    I.1  BRIDGE                 &lt;br /&gt;
         P    O.1  PR.PL. 0/5             &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
====XAND====                                 &lt;br /&gt;
&amp;lt;pre&amp;gt;      &lt;br /&gt;
-2  -1   0    &lt;br /&gt;
     ~   ~     &lt;br /&gt;
 .   X   [    I.2  FLOOD      I.1  CH.BR.  &lt;br /&gt;
 [   .   ]    I.2  BRIDGE                 &lt;br /&gt;
 .   X   [    I.1  FLOOD      I.2  CH.BR.  &lt;br /&gt;
 [   .   ]    I.1  BRIDGE                 &lt;br /&gt;
         P    O.1  PR.PL. 6/7             &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;XAND&amp;quot; widths=&amp;quot;100px&amp;quot; heights=&amp;quot;100px&amp;quot; perrow=&amp;quot;6&amp;quot;&amp;gt;&lt;br /&gt;
File:Fig4XAND2.png|Level -2. Grates hide a drainage bypass.&lt;br /&gt;
File:Fig4XAND1.png|Level -1. Water source at top, falling from above.&lt;br /&gt;
File:Fig4XAND0.png|Level 0. Water source at top, falling down.&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Computing==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Latch===&lt;br /&gt;
&lt;br /&gt;
In Dwarf Fortress, a latch is a circuit which has two stable states and thereby can store one bit of information.&lt;br /&gt;
&lt;br /&gt;
A circuit incorporating latches has state; its output may depend not only on its current input, but also on its previous inputs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====S/R Latch====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
     0   0    &lt;br /&gt;
     [   [    I.S   I.R&lt;br /&gt;
     ]   ]&lt;br /&gt;
     [   [    I.Q   I.Q&lt;br /&gt;
     ]   ]       &lt;br /&gt;
    &amp;lt;P  &amp;lt;P    O.Q   O.Q&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Use a Signal Trap when attempting to capture creature plate signals. Hold RESET while system boots.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Signal Trap====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    -1   0   1&lt;br /&gt;
     X   .   X   I.R     I.S &lt;br /&gt;
        &amp;lt;P           O.Q&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Notes&lt;br /&gt;
*INPUT S to SET, INPUT R to RESET&lt;br /&gt;
*Uses a door and hatch. Useful for capturing creature plate OUTPUT.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Clock Signal===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
         0&lt;br /&gt;
         [   IC  CH.BR.&lt;br /&gt;
         ]&lt;br /&gt;
        &amp;lt;P   OC  PR.PL.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: ACCURACY UNTESTED.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
       &lt;br /&gt;
===Methods Of Implementation===						&lt;br /&gt;
&lt;br /&gt;
The computational &amp;quot;house&amp;quot; is a collection of gates and purpose-made components for the computation of inputs and harvesting of results.&lt;br /&gt;
&lt;br /&gt;
A source of water is pumped into a reservoir with the computational devices arranged below it to accept the water. Below these devices is a system for carrying away the used water.&lt;br /&gt;
&lt;br /&gt;
The system must be able to carry the water at an adequate rate. Pumps are one way to assure this: they take the water to a river or map edge. Untested is the method of &amp;quot;atom-smashing&amp;quot; the water; it would greatly minimize the work needed, and indeed this already occurs inside the devices.&lt;br /&gt;
&lt;br /&gt;
Of concern is what is known as &amp;quot;sloshing&amp;quot;: where water can cause effect upon a pressure plate more then once per operation. This can cause chaos in the computer and completely ruin it. Pressure must be kept as high as possible; and drainage faster then the rate which pressure introduces water into the computer.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Reservoir====&lt;br /&gt;
&lt;br /&gt;
A pump can be seen supplying water to the reservoir from a brook. The door above determines whether the reservoir may fill. Underneath the water are a series of hatches over the computer components, determining whether the computer is on or off. To the left is a protected access shaft. The pump at the topmost is the highest in a series of pumps, reaching below to remove waste water.&lt;br /&gt;
&lt;br /&gt;
[[File:Fig1Reservoir.png|thumb|The reservoir]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Computer Components====&lt;br /&gt;
&lt;br /&gt;
Here can be seen an S/R Latch: where two NOR gates have their outputs crossed to the others second input. This allows 1 bit to be stored.&lt;br /&gt;
&lt;br /&gt;
An access shaft, I, and a door, X, allow workers to reach the site.&lt;br /&gt;
&lt;br /&gt;
EDIT LATER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Drainage====&lt;br /&gt;
&lt;br /&gt;
Here a pump, %, can be seen removing water from a pit below the S/R Latch. There is ample conduit to bring the water to the brook and pump into it. A waterwheel, gear assembly, and two axles bring power to the pumps.&lt;br /&gt;
&lt;br /&gt;
EDIT LATER&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=File:Fig5NOR0.png&amp;diff=58980</id>
		<title>File:Fig5NOR0.png</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=File:Fig5NOR0.png&amp;diff=58980"/>
		<updated>2009-12-01T18:26:41Z</updated>

		<summary type="html">&lt;p&gt;Gammon: Two bridges raise and lower to control drainage and flow. Channels have been dug underneath the bridge end pieces (nearest the plate.) Water source is at the top, falling down onto the uppermost bridge.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Two bridges raise and lower to control drainage and flow. Channels have been dug underneath the bridge end pieces (nearest the plate.) Water source is at the top, falling down onto the uppermost bridge.&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=User:Gammon&amp;diff=58978</id>
		<title>User:Gammon</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=User:Gammon&amp;diff=58978"/>
		<updated>2009-12-01T18:12:40Z</updated>

		<summary type="html">&lt;p&gt;Gammon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Fluid logic=&lt;br /&gt;
&lt;br /&gt;
''Disclaimer: This is my personal work on the topic, and felt inclined to share it after reading about the same topic on DF Wiki. Use this information for your own works on the matter.''&lt;br /&gt;
&lt;br /&gt;
Fluid logic is a form of [[computing]] which uses a fluid (generally [[water]]) controlled by various means, to trigger [[pressure plate]]s and hopefully accomplish some desirable result.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Key==&lt;br /&gt;
&lt;br /&gt;
====Floodgate====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
X             FLOOD    ALLOW FLOW WHEN ON&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Large Raising Bridge====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[  Start      CH.BR.   ALLOW DRAIN WHEN ON, ALLOW FLOW WHEN OFF&lt;br /&gt;
]  End&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Channel below the end piece.&lt;br /&gt;
&lt;br /&gt;
====Small Raising Bridge====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[             BRIDGE   ALLOW DRAIN WHEN OFF&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Channel above piece.&lt;br /&gt;
&lt;br /&gt;
====Pressure Plate====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
P             PR.PL.   X/X ON&lt;br /&gt;
P&amp;lt;                     ON UNDER MAXIMUM&lt;br /&gt;
&amp;gt;P                     ON OVER MINIMUM&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Channel====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.                      DRAIN.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Also used as a drain bypass to route around objects.&lt;br /&gt;
&lt;br /&gt;
====Source====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
~                      WATER SOURCE.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Only depicted in XAND and XOR.&lt;br /&gt;
&lt;br /&gt;
===Notes===&lt;br /&gt;
&lt;br /&gt;
*Water source is above first input piece.&lt;br /&gt;
*-2, -1, 0 Refers to level.&lt;br /&gt;
*I is INPUT, O is OUTPUT. Numbered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Gates==											&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====AND====&lt;br /&gt;
&amp;lt;pre&amp;gt;                        &lt;br /&gt;
    -1   0&lt;br /&gt;
     .   X    I.1  FLOOD       &lt;br /&gt;
     [   .    I.1  BRIDGE      &lt;br /&gt;
     .   X    I.2  FLOOD       &lt;br /&gt;
     [   .    I.2  BRIDGE&lt;br /&gt;
         P    O.1  PR.PL. 6/7  &lt;br /&gt;
&amp;lt;/pre&amp;gt;        &lt;br /&gt;
====OR====&lt;br /&gt;
&amp;lt;pre&amp;gt;                            &lt;br /&gt;
         0&lt;br /&gt;
         [    I.1  BRIDGE      &lt;br /&gt;
         ]         CH.BR.&lt;br /&gt;
         [    I.2  BRIDGE      &lt;br /&gt;
         ]         CH.BR.&lt;br /&gt;
         P    O.1  PR.PL. 0/5  &lt;br /&gt;
&amp;lt;/pre&amp;gt;        &lt;br /&gt;
====NOT, INVERTER====&lt;br /&gt;
&amp;lt;pre&amp;gt;                             &lt;br /&gt;
         0&lt;br /&gt;
         [    I.1  BRIDGE      &lt;br /&gt;
         ]         CH.BR.&lt;br /&gt;
         P    O.1  PR.PL. 6/7  &lt;br /&gt;
&amp;lt;/pre&amp;gt;        &lt;br /&gt;
====NAND====&lt;br /&gt;
&amp;lt;pre&amp;gt;                             &lt;br /&gt;
    -1   0 &lt;br /&gt;
     .   X    I.1  FLOOD       &lt;br /&gt;
     [   .    I.1  BRIDGE      &lt;br /&gt;
     .   X    I.2  FLOOD       &lt;br /&gt;
     [   .    I.2  BRIDGE&lt;br /&gt;
         P    O.1  PR.PL. 0/5  &lt;br /&gt;
&amp;lt;/pre&amp;gt;        &lt;br /&gt;
====NOR====&lt;br /&gt;
&amp;lt;pre&amp;gt;                             &lt;br /&gt;
         0&lt;br /&gt;
         [    I.1  BRIDGE      &lt;br /&gt;
         ]         CH.BR&lt;br /&gt;
         [    I.2  BRIDGE      &lt;br /&gt;
         ]         CH.BR&lt;br /&gt;
         P    O.1  PR.PL. 6/7  &lt;br /&gt;
&amp;lt;/pre&amp;gt;            &lt;br /&gt;
====XOR====&lt;br /&gt;
&amp;lt;pre&amp;gt;                                      &lt;br /&gt;
-2  -1   0&lt;br /&gt;
     ~   ~                           &lt;br /&gt;
 .   X   [    I.2  FLOOD      I.1  CH.BR.  &lt;br /&gt;
 [   .   ]    I.2  BRIDGE                 &lt;br /&gt;
 .   X   [    I.1  FLOOD      I.2  CH.BR.  &lt;br /&gt;
 [   .   ]    I.1  BRIDGE                 &lt;br /&gt;
         P    O.1  PR.PL. 0/5             &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
====XAND====                                 &lt;br /&gt;
&amp;lt;pre&amp;gt;      &lt;br /&gt;
-2  -1   0    &lt;br /&gt;
     ~   ~     &lt;br /&gt;
 .   X   [    I.2  FLOOD      I.1  CH.BR.  &lt;br /&gt;
 [   .   ]    I.2  BRIDGE                 &lt;br /&gt;
 .   X   [    I.1  FLOOD      I.2  CH.BR.  &lt;br /&gt;
 [   .   ]    I.1  BRIDGE                 &lt;br /&gt;
         P    O.1  PR.PL. 6/7             &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
[[File:Fig4XAND2.png]][[File:Fig4XAND1.png]][[File:Fig4XAND0.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Computing==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Latch===&lt;br /&gt;
&lt;br /&gt;
In Dwarf Fortress, a latch is a circuit which has two stable states and thereby can store one bit of information.&lt;br /&gt;
&lt;br /&gt;
A circuit incorporating latches has state; its output may depend not only on its current input, but also on its previous inputs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====S/R Latch====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
     0   0    &lt;br /&gt;
     [   [    I.S   I.R&lt;br /&gt;
     ]   ]&lt;br /&gt;
     [   [    I.Q   I.Q&lt;br /&gt;
     ]   ]       &lt;br /&gt;
    &amp;lt;P  &amp;lt;P    O.Q   O.Q&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Use a Signal Trap when attempting to capture creature plate signals. Hold RESET while system boots.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Signal Trap====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    -1   0   1&lt;br /&gt;
     X   .   X   I.R     I.S &lt;br /&gt;
        &amp;lt;P           O.Q&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Notes&lt;br /&gt;
*INPUT S to SET, INPUT R to RESET&lt;br /&gt;
*Uses a door and hatch. Useful for capturing creature plate OUTPUT.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Clock Signal===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
         0&lt;br /&gt;
         [   IC  CH.BR.&lt;br /&gt;
         ]&lt;br /&gt;
        &amp;lt;P   OC  PR.PL.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: ACCURACY UNTESTED.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
       &lt;br /&gt;
===Methods Of Implementation===						&lt;br /&gt;
&lt;br /&gt;
The computational &amp;quot;house&amp;quot; is a collection of gates and purpose-made components for the computation of inputs and harvesting of results.&lt;br /&gt;
&lt;br /&gt;
A source of water is pumped into a reservoir with the computational devices arranged below it to accept the water. Below these devices is a system for carrying away the used water.&lt;br /&gt;
&lt;br /&gt;
The system must be able to carry the water at an adequate rate. Pumps are one way to assure this: they take the water to a river or map edge. Untested is the method of &amp;quot;atom-smashing&amp;quot; the water; it would greatly minimize the work needed, and indeed this already occurs inside the devices.&lt;br /&gt;
&lt;br /&gt;
Of concern is what is known as &amp;quot;sloshing&amp;quot;: where water can cause effect upon a pressure plate more then once per operation. This can cause chaos in the computer and completely ruin it. Pressure must be kept as high as possible; and drainage faster then the rate which pressure introduces water into the computer.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Reservoir====&lt;br /&gt;
&lt;br /&gt;
A pump can be seen supplying water to the reservoir from a brook. The door above determines whether the reservoir may fill. Underneath the water are a series of hatches over the computer components, determining whether the computer is on or off. To the left is a protected access shaft. The pump at the topmost is the highest in a series of pumps, reaching below to remove waste water.&lt;br /&gt;
&lt;br /&gt;
[[File:Fig1Reservoir.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Computer Components====&lt;br /&gt;
&lt;br /&gt;
Here can be seen an S/R Latch: where two NOR gates have their outputs crossed to the others second input. This allows 1 bit to be stored.&lt;br /&gt;
&lt;br /&gt;
An access shaft, I, and a door, X, allow workers to reach the site.&lt;br /&gt;
&lt;br /&gt;
EDIT LATER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Drainage====&lt;br /&gt;
&lt;br /&gt;
Here a pump, %, can be seen removing water from a pit below the S/R Latch. There is ample conduit to bring the water to the brook and pump into it. A waterwheel, gear assembly, and two axles bring power to the pumps.&lt;br /&gt;
&lt;br /&gt;
EDIT LATER&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=User:Gammon&amp;diff=58977</id>
		<title>User:Gammon</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=User:Gammon&amp;diff=58977"/>
		<updated>2009-12-01T18:11:27Z</updated>

		<summary type="html">&lt;p&gt;Gammon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Fluid logic=&lt;br /&gt;
&lt;br /&gt;
''Disclaimer: This is my personal work on the topic, and felt inclined to share it after reading about the same topic on DF Wiki. Use this information for your own works on the matter.''&lt;br /&gt;
&lt;br /&gt;
Fluid logic is a form of [[computing]] which uses a fluid (generally [[water]]) controlled by various means, to trigger [[pressure plate]]s and hopefully accomplish some desirable result.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Key==&lt;br /&gt;
&lt;br /&gt;
====Floodgate====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
X             FLOOD    ALLOW FLOW WHEN ON&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Large Raising Bridge====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[  Start      CH.BR.   ALLOW DRAIN WHEN ON, ALLOW FLOW WHEN OFF&lt;br /&gt;
]  End&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Channel below the end piece.&lt;br /&gt;
&lt;br /&gt;
====Small Raising Bridge====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[             BRIDGE   ALLOW DRAIN WHEN OFF&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Channel above piece.&lt;br /&gt;
&lt;br /&gt;
====Pressure Plate====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
P             PR.PL.   X/X ON&lt;br /&gt;
P&amp;lt;                     ON UNDER MAXIMUM&lt;br /&gt;
&amp;gt;P                     ON OVER MINIMUM&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Channel====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.                      DRAIN.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Also used as a drain bypass to route around objects.&lt;br /&gt;
&lt;br /&gt;
====Source====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
~                      WATER SOURCE.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Only depicted in XAND and XOR.&lt;br /&gt;
&lt;br /&gt;
===Notes===&lt;br /&gt;
&lt;br /&gt;
*Water source is above first input piece.&lt;br /&gt;
*-2, -1, 0 Refers to level.&lt;br /&gt;
*I is INPUT, O is OUTPUT. Numbered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Gates==											&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====AND====&lt;br /&gt;
&amp;lt;pre&amp;gt;                        &lt;br /&gt;
    -1   0&lt;br /&gt;
     .   X    I.1  FLOOD       &lt;br /&gt;
     [   .    I.1  BRIDGE      &lt;br /&gt;
     .   X    I.2  FLOOD       &lt;br /&gt;
     [   .    I.2  BRIDGE&lt;br /&gt;
         P    O.1  PR.PL. 6/7  &lt;br /&gt;
&amp;lt;/pre&amp;gt;        &lt;br /&gt;
====OR====&lt;br /&gt;
&amp;lt;pre&amp;gt;                            &lt;br /&gt;
         0&lt;br /&gt;
         [    I.1  BRIDGE      &lt;br /&gt;
         ]         CH.BR.&lt;br /&gt;
         [    I.2  BRIDGE      &lt;br /&gt;
         ]         CH.BR.&lt;br /&gt;
         P    O.1  PR.PL. 0/5  &lt;br /&gt;
&amp;lt;/pre&amp;gt;        &lt;br /&gt;
====NOT, INVERTER====&lt;br /&gt;
&amp;lt;pre&amp;gt;                             &lt;br /&gt;
         0&lt;br /&gt;
         [    I.1  BRIDGE      &lt;br /&gt;
         ]         CH.BR.&lt;br /&gt;
         P    O.1  PR.PL. 6/7  &lt;br /&gt;
&amp;lt;/pre&amp;gt;        &lt;br /&gt;
====NAND====&lt;br /&gt;
&amp;lt;pre&amp;gt;                             &lt;br /&gt;
    -1   0 &lt;br /&gt;
     .   X    I.1  FLOOD       &lt;br /&gt;
     [   .    I.1  BRIDGE      &lt;br /&gt;
     .   X    I.2  FLOOD       &lt;br /&gt;
     [   .    I.2  BRIDGE&lt;br /&gt;
         P    O.1  PR.PL. 0/5  &lt;br /&gt;
&amp;lt;/pre&amp;gt;        &lt;br /&gt;
====NOR====&lt;br /&gt;
&amp;lt;pre&amp;gt;                             &lt;br /&gt;
         0&lt;br /&gt;
         [    I.1  BRIDGE      &lt;br /&gt;
         ]         CH.BR&lt;br /&gt;
         [    I.2  BRIDGE      &lt;br /&gt;
         ]         CH.BR&lt;br /&gt;
         P    O.1  PR.PL. 6/7  &lt;br /&gt;
&amp;lt;/pre&amp;gt;            &lt;br /&gt;
====XOR====&lt;br /&gt;
&amp;lt;pre&amp;gt;                                      &lt;br /&gt;
-2  -1   0&lt;br /&gt;
     ~   ~                           &lt;br /&gt;
 .   X   [    I.2  FLOOD      I.1  CH.BR.  &lt;br /&gt;
 [   .   ]    I.2  BRIDGE                 &lt;br /&gt;
 .   X   [    I.1  FLOOD      I.2  CH.BR.  &lt;br /&gt;
 [   .   ]    I.1  BRIDGE                 &lt;br /&gt;
         P    O.1  PR.PL. 0/5             &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
====XAND====                                 &lt;br /&gt;
&amp;lt;pre&amp;gt;      &lt;br /&gt;
-2  -1   0    &lt;br /&gt;
     ~   ~     &lt;br /&gt;
 .   X   [    I.2  FLOOD      I.1  CH.BR.  &lt;br /&gt;
 [   .   ]    I.2  BRIDGE                 &lt;br /&gt;
 .   X   [    I.1  FLOOD      I.2  CH.BR.  &lt;br /&gt;
 [   .   ]    I.1  BRIDGE                 &lt;br /&gt;
         P    O.1  PR.PL. 6/7             &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
[[File:Fig4XAND0.png]][[File:Fig4XAND1.png]][[File:Fig4XAND2.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Computing==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Latch===&lt;br /&gt;
&lt;br /&gt;
In Dwarf Fortress, a latch is a circuit which has two stable states and thereby can store one bit of information.&lt;br /&gt;
&lt;br /&gt;
A circuit incorporating latches has state; its output may depend not only on its current input, but also on its previous inputs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====S/R Latch====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
     0   0    &lt;br /&gt;
     [   [    I.S   I.R&lt;br /&gt;
     ]   ]&lt;br /&gt;
     [   [    I.Q   I.Q&lt;br /&gt;
     ]   ]       &lt;br /&gt;
    &amp;lt;P  &amp;lt;P    O.Q   O.Q&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Use a Signal Trap when attempting to capture creature plate signals. Hold RESET while system boots.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Signal Trap====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    -1   0   1&lt;br /&gt;
     X   .   X   I.R     I.S &lt;br /&gt;
        &amp;lt;P           O.Q&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Notes&lt;br /&gt;
*INPUT S to SET, INPUT R to RESET&lt;br /&gt;
*Uses a door and hatch. Useful for capturing creature plate OUTPUT.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Clock Signal===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
         0&lt;br /&gt;
         [   IC  CH.BR.&lt;br /&gt;
         ]&lt;br /&gt;
        &amp;lt;P   OC  PR.PL.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: ACCURACY UNTESTED.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
       &lt;br /&gt;
===Methods Of Implementation===						&lt;br /&gt;
&lt;br /&gt;
The computational &amp;quot;house&amp;quot; is a collection of gates and purpose-made components for the computation of inputs and harvesting of results.&lt;br /&gt;
&lt;br /&gt;
A source of water is pumped into a reservoir with the computational devices arranged below it to accept the water. Below these devices is a system for carrying away the used water.&lt;br /&gt;
&lt;br /&gt;
The system must be able to carry the water at an adequate rate. Pumps are one way to assure this: they take the water to a river or map edge. Untested is the method of &amp;quot;atom-smashing&amp;quot; the water; it would greatly minimize the work needed, and indeed this already occurs inside the devices.&lt;br /&gt;
&lt;br /&gt;
Of concern is what is known as &amp;quot;sloshing&amp;quot;: where water can cause effect upon a pressure plate more then once per operation. This can cause chaos in the computer and completely ruin it. Pressure must be kept as high as possible; and drainage faster then the rate which pressure introduces water into the computer.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Reservoir====&lt;br /&gt;
&lt;br /&gt;
A pump can be seen supplying water to the reservoir from a brook. The door above determines whether the reservoir may fill. Underneath the water are a series of hatches over the computer components, determining whether the computer is on or off. To the left is a protected access shaft. The pump at the topmost is the highest in a series of pumps, reaching below to remove waste water.&lt;br /&gt;
&lt;br /&gt;
[[File:Fig1Reservoir.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Computer Components====&lt;br /&gt;
&lt;br /&gt;
Here can be seen an S/R Latch: where two NOR gates have their outputs crossed to the others second input. This allows 1 bit to be stored.&lt;br /&gt;
&lt;br /&gt;
An access shaft, I, and a door, X, allow workers to reach the site.&lt;br /&gt;
&lt;br /&gt;
EDIT LATER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Drainage====&lt;br /&gt;
&lt;br /&gt;
Here a pump, %, can be seen removing water from a pit below the S/R Latch. There is ample conduit to bring the water to the brook and pump into it. A waterwheel, gear assembly, and two axles bring power to the pumps.&lt;br /&gt;
&lt;br /&gt;
EDIT LATER&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=File:Fig4XAND2.png&amp;diff=58976</id>
		<title>File:Fig4XAND2.png</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=File:Fig4XAND2.png&amp;diff=58976"/>
		<updated>2009-12-01T18:02:52Z</updated>

		<summary type="html">&lt;p&gt;Gammon: This is the bottom of the XAND gate and also the bottom of an AND gate. Two bridges raise and lower to stop or allow the drainage of water from a channel directly above them. A channel below bypasses any unintended blockage of water.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is the bottom of the XAND gate and also the bottom of an AND gate. Two bridges raise and lower to stop or allow the drainage of water from a channel directly above them. A channel below bypasses any unintended blockage of water.&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=File:Fig4XAND1.png&amp;diff=58975</id>
		<title>File:Fig4XAND1.png</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=File:Fig4XAND1.png&amp;diff=58975"/>
		<updated>2009-12-01T18:00:38Z</updated>

		<summary type="html">&lt;p&gt;Gammon: One level under the top of the XAND and we find two floodgates and two floor grates for drainage and access. This is also the top of an AND gate. Notice the space in front of the uppermost floodgate, that is the water source which falls from above.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;One level under the top of the XAND and we find two floodgates and two floor grates for drainage and access. This is also the top of an AND gate. Notice the space in front of the uppermost floodgate, that is the water source which falls from above.&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=File:Fig4XAND0.png&amp;diff=58974</id>
		<title>File:Fig4XAND0.png</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=File:Fig4XAND0.png&amp;diff=58974"/>
		<updated>2009-12-01T17:56:49Z</updated>

		<summary type="html">&lt;p&gt;Gammon: uploaded a new version of &amp;quot;File:Fig4XAND0.png&amp;quot;:&amp;amp;#32;On the first level of this XAND gate, two raising bridges can be seen. Under the end piece of each bridge (the end piece is closest the plate) a channel has been dug to allow drainage when the bridge&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;On the first level of this XAND gate, two raising bridges can be seen. Under the end piece of each bridge (the end piece is closest the plate) a channel has been dug to allow drainage when the bridge turns on.&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=File:Fig4XAND0.png&amp;diff=58973</id>
		<title>File:Fig4XAND0.png</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=File:Fig4XAND0.png&amp;diff=58973"/>
		<updated>2009-12-01T17:55:12Z</updated>

		<summary type="html">&lt;p&gt;Gammon: uploaded a new version of &amp;quot;File:Fig4XAND0.png&amp;quot;:&amp;amp;#32;Reverted to version as of 17:49, 1 December 2009&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;On the first level of this XAND gate, two raising bridges can be seen. Under the end piece of each bridge (the end piece is closest the plate) a channel has been dug to allow drainage when the bridge turns on.&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=File:Fig4XAND0.png&amp;diff=58972</id>
		<title>File:Fig4XAND0.png</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=File:Fig4XAND0.png&amp;diff=58972"/>
		<updated>2009-12-01T17:54:15Z</updated>

		<summary type="html">&lt;p&gt;Gammon: uploaded a new version of &amp;quot;File:Fig4XAND0.png&amp;quot;:&amp;amp;#32;On the first level of this XAND gate, two raising bridges can be seen. Under the end piece of each bridge (the end piece is closest the plate) a channel has been dug to allow drainage when the bridge&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;On the first level of this XAND gate, two raising bridges can be seen. Under the end piece of each bridge (the end piece is closest the plate) a channel has been dug to allow drainage when the bridge turns on.&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=File:Fig4XAND0.png&amp;diff=58971</id>
		<title>File:Fig4XAND0.png</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=File:Fig4XAND0.png&amp;diff=58971"/>
		<updated>2009-12-01T17:49:54Z</updated>

		<summary type="html">&lt;p&gt;Gammon: On the first level of this XAND gate, two raising bridges can be seen. Under the end piece of each bridge (the end piece is closest the plate) a channel has been dug to allow drainage when the bridge turns on.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;On the first level of this XAND gate, two raising bridges can be seen. Under the end piece of each bridge (the end piece is closest the plate) a channel has been dug to allow drainage when the bridge turns on.&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=File:Fig1Reservoir.png&amp;diff=58970</id>
		<title>File:Fig1Reservoir.png</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=File:Fig1Reservoir.png&amp;diff=58970"/>
		<updated>2009-12-01T17:47:51Z</updated>

		<summary type="html">&lt;p&gt;Gammon: A reservoir holding water ensures a high pressure throughout this fluid logic computer.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A reservoir holding water ensures a high pressure throughout this fluid logic computer.&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=40d_Talk:Fluid_logic&amp;diff=58945</id>
		<title>40d Talk:Fluid logic</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=40d_Talk:Fluid_logic&amp;diff=58945"/>
		<updated>2009-12-01T00:49:15Z</updated>

		<summary type="html">&lt;p&gt;Gammon: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Can anyone explain how the XOR of the Mechanical-Fluid Gates work? I don´t seem to understand it...--[[User:Kami|Kami]] 17:34, 12 October 2009 (UTC)&lt;br /&gt;
* Sure.  It assumes the pump is powered by a windmill on a map with strong wind (40 power).  If neither input is on, the power is only transfered to the southeast gear assembly (total of 10 power consumed).  If only the yellow gear assembly is connected (considered to be a logic high), then every gear assembly but the green input is powered (30 power in gear assys, 10 power for the pump).  If only the green assembly is connected, the yellow assy and the white one to the north are both disconnected (25 power in gear assys, 10 for the pump).  But if both assys are connected, the entire thing requires 45 power to work, and nothing turns.  Easily modifiable with a huge number of gears for water wheel power.  I believe a windmill farm would be necessary on a map with 20 or 10 wind. -[[User:Arrkhal|Arrkhal]] 20:27, 12 October 2009 (UTC)&lt;br /&gt;
** Now I understand. But I think this should be mentioned anywhere. ^^&amp;lt;br /&amp;gt;By the way, I don´t think this is a good concept. You´ll have to empower every single part of your &amp;quot;computer&amp;quot; by itself. And you´ll have to calculate your power well and build tons of useless gears. Complex logic will lead you to a state you can´t handle it anymore... I´ll think of it. --[[User:Kami|Kami]] 13:31, 13 October 2009 (UTC)&lt;br /&gt;
*** Probably not the best system, yeah.  I was mainly just trying to think of a system which destroys a minimum amount of water, to be able to compute on a map with only murky pools.  You may want to look at the [[mechanical logic]] page, too.  That's where I got the XOR design from.  If there's a better way to make an XOR with gears and axles, I can't think of it. -[[User:Arrkhal|Arrkhal]] 23:36, 13 October 2009 (UTC)&lt;br /&gt;
****Just hook the inputs up to the same gear- gear assemblies toggle.  You'll need to &amp;quot;invert&amp;quot; the pressure plate, though, since hooking up two levers to a gear assembly leaves them both off and the power on.  With one lever pulled, the power's off, and with both it's back on.  23:34, 14 October 2009 (UTC)&lt;br /&gt;
****I think this is more mechanical computing than water computing, because in this case the logic lies within the gears and power. The water is only used to convert power into lever signals.&amp;lt;br /&amp;gt;But I see the destruction of water is a problem you will have to solve if you have limited ressources. Did you ever consider to use hatches to control the flow of water? This would require more pumping, but could work?&amp;lt;br /&amp;gt;An XOR with gears that is not based on underpovering can be made the same way you did for the infinite flow gates above. A XOR B = (A AND NOT B) OR (NOT A AND B) | A XNOR B = (A AND B) OR (NOT A and NOT B)&amp;lt;br /&amp;gt;Oh, and here is an short example of computing I tested: http://mkv25.net/dfma/movie-1745-dwarfputerv01 --[[User:Kami|Kami]] 10:46, 15 October 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
==Help: Time Keeping, a counting problem==&lt;br /&gt;
Ok, I am well-and-truly crazy, but I want to make a DF clock.  One which accurately tracks days and month.  (Additional awesome for tracking 'hours' within days, but that would be crazy).  So, i think i know what to do conceptually, but i'm having problems making the leap from concept to a concept of execution in the game.  (Part of this certainly results from my having had problems getting pressure plates to work properly before)&lt;br /&gt;
&lt;br /&gt;
Thoughts: &amp;lt;br&amp;gt;&lt;br /&gt;
So, there's going to be some minimal repeater, which toggles with a frequency of f.  Each toggle of the repeater fills a 1x1 area with 7/7 water, or dumps that water.&lt;br /&gt;
&lt;br /&gt;
The resevoir into which the water is dumped with each toggle is 7x1, causing it to fill to 1/7 everywhere the first time, 2/7 the second, etc...  When it reaches 7/7 it dumps...&lt;br /&gt;
&lt;br /&gt;
...into a 7x7, which similarly fills up to 7/7 over 7 dumps of the second level system.&lt;br /&gt;
&lt;br /&gt;
Issues: How do i ensure perfect draining of a 1x7 area in relatively short time?  A 7x7 area?  How many iterations / what final depth on last iteration do i need to count out a day/month?  (Ie, how short or long does a repeater tend to run per repeat, and what multiple of that is sufficient to count out a month?)&lt;br /&gt;
&lt;br /&gt;
Biggest issue: It must work slowly enough to allow draining yet quickly enough to permit accurate counting of days.&lt;br /&gt;
&lt;br /&gt;
I suppose after the 1x7 it could trigger another 1x1 repeater, and i could just parallelize that way, with each repeater being triggered slower and slower.  The 7x1 could also be a 6x1 column with a 1x2 top layer (7 cubes, 6 vertical, 7th needs a floor to measure depth), which would help with rapid draining, but will it be rapid enough?&lt;br /&gt;
&lt;br /&gt;
So, any thoughts?  How can I build this and not go crazy?&lt;br /&gt;
&lt;br /&gt;
--[[User:Squirrelloid|Squirrelloid]] 09:45, 31 October 2009 (UTC) has the potential to become the greatest dwarfputer ever!&lt;br /&gt;
&lt;br /&gt;
Here are some suggestions:&lt;br /&gt;
* If you fill an area with 1/7 water you will encounter a problem with evaporation, especially when it takes more time until you add more water for example when you´re counting months.&lt;br /&gt;
* Possible solution: You could work with multiple of 2/7 water or use some system that adds an additional 1/7 water per field for the first time.&lt;br /&gt;
* You can´t totally drain an area, even it goes -1 z-level through a whole at one side a 1/7 portion of water will always stay there. One possibility would be to use a hatch or a bridge, but then you can´t use a pressure plate as trigger.&lt;br /&gt;
* Imagination: 6/7 would be perfect if you have an 1x3 area and want to use multiple of 2/7 water.&lt;br /&gt;
* Don´t use larger areas for each level like you suggested (1 7 43 ...). Use multiple small components connected via pressure plate in a row.&lt;br /&gt;
* Suggest to work with components like others used for their alculation machines. Using the height of water is not the the best idea comparing to pure binary logic with filled/not filled.&lt;br /&gt;
* I think the best repeater would be a that goblin one.&lt;br /&gt;
&lt;br /&gt;
--[[User:Kami|Kami]] 11:18, 31 October 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
:Ok, big first issue: I made a rough build of a single component as i proposed, just to see if it would work at all.  It doesn't.  For some reason I can't have a single pressure plate open the floodgates *and* close the hatches?  Am i misunderstanding something about the way pressure plates work? &lt;br /&gt;
&lt;br /&gt;
:So, i'm filling with pressurized water, meaning the 1x1 component goes to 7/7 instantaneously.  This means it should open the floodgate to drain the 1x1 and close the hatch to prevent additional fill of the 1x1 at the same time.  Flood gate opens fine but the hatch refuses to close...  What the heck am i doing wrong?  Shouldn't the pressure plate toggle both hatches and floodgates to the opposite of their current positions?&lt;br /&gt;
&lt;br /&gt;
:If it toggles multiple times, maybe i could just open and close components with a 3/7-4/7 signal and it could just repeatedly toggle the components at some frequency that could be counted with other components...  of course, then i need to time every component separately - now that sounds like a nightmare.&lt;br /&gt;
&lt;br /&gt;
:This would be easier if screw pumps didn't create water, so their supply was actually limited by how much had gone in...&lt;br /&gt;
&lt;br /&gt;
:Issue with lots of binary components - that sounds a lot more space intensive.  It does, however, sound more foolproof.&lt;br /&gt;
&lt;br /&gt;
:--[[User:Squirrelloid|Squirrelloid]] 13:00, 31 October 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
::Relevant additional question - Does anyone know how many 'steps' there are in a DF day?  Month?  Year? --[[User:Squirrelloid|Squirrelloid]] 13:19, 31 October 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
:Your Problem is: pressure plates and levers have a &amp;quot;on&amp;quot; and a &amp;quot;off&amp;quot; state. &amp;quot;On&amp;quot; opens door, floodgates and hatches, &amp;quot;off&amp;quot; closes them. It is not possible to open one thing and close another directly with the same lever or pressure plate. Look at [[lever]] for more information. You´ll have to use some kind of signal-inverter or use a bridge to block flow. Bridges can be used as inverted doors ([[fluid logic]]). --[[User:Kami|Kami]] 15:00, 31 October 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
::That's really stupid.  But creatures stepping on a pressure plate just work like a toggle?  What the hell?  Why can't fluids work more like that.  --[[User:Squirrelloid|Squirrelloid]] 17:02, 31 October 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
Ok, I think I have a design that might work.  Its not exactly binary, but its going to be a whole lot easier to build rather than figuring out the mess of logic.&lt;br /&gt;
&lt;br /&gt;
So the example repeater on the Repeater page says it works ~1/300 'steps'.  Assume there are 1200 'steps' in a day.&lt;br /&gt;
&lt;br /&gt;
P|_+_|_+^_&lt;br /&gt;
&lt;br /&gt;
Where P is pressurized water, | is a floodgate, + is a drawbridge, ^ is a 3/7-7/7 pressure plate, and _ is a hatch.  The doors and bridges are linked to the pressure plate in the repeater, which alternately toggles them, so it counts up to 4.  The ^ at the end opens all the hatches when 'on' (voiding the system), and also triggers a day counter, built on similar principles but 28 long.  The day counter similarly triggers a month counter that is 12 long.  The difference being each step of the day/month counter needs a ^ to trigger a display somewhere (unless you use the counter itself as the display, which is admittedly inelegant).&lt;br /&gt;
&lt;br /&gt;
... The ^ from the repeater is going to toggle on and off once per iteration isn't it, so it'll do two parts instead of one per 300 'steps'?  crap.  I suppose you need to make it twice as long then, huh? Ie:&lt;br /&gt;
&lt;br /&gt;
P|_+_|_+_|_+_|_+^_&lt;br /&gt;
&lt;br /&gt;
(As much fun as building a full binary system would be, I want something that can be constructed relatively quickly, which in this case means 'with a limited number of logic structures')&lt;br /&gt;
&lt;br /&gt;
--[[User:Squirrelloid|Squirrelloid]] 08:44, 1 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
:Ok, it doesn't work, i can't keep water at 7/7 through the whole thing (annoying).&lt;br /&gt;
:a day is also not an integer multiple of that particular repeater.  Its somewhere between 3 and 4 iterations.  Ugg, getting this to work properly is going to drive me nuts.  I'm not really sure I want to try to code in binary... --[[User:Squirrelloid|Squirrelloid]] 12:04, 1 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
:Hmm.. with a little more complication i don't need to have them in sequence.  But drainage becomes a bigger engineering problem...  Ok, lets solve the repeater:day ratio problem first, then i'll try to figure out how to 'wire' this mess. --[[User:Squirrelloid|Squirrelloid]] 12:39, 1 November 2009 (UTC)&lt;br /&gt;
::I have seen a video of a goblin running forth an back towards triggered doors. http://mkv25.net/dfma/movie-1299-goblininfiniteloop I think this would be a perfect and scalable repeater... I think if you know how fast a goblin can run and how long it would take to find the new way, you´ll be able to have him &amp;quot;repeat&amp;quot; exactly x times a day. --[[User:Kami|Kami]] 19:39, 2 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
:::So, there's this theory that a day has 1200 'ticks'.  Bridges and floodgates have a 100 tick delay (assuming they're built *before* the pressure plate, o/w 101 ticks...).  Theory seems to suggest pressurized water pushes 7/7 water into an open space each tick.  So the minimal repeater with pressurized water: P+^| has a 202 tick cycle (assuming +,| are built before ^).  Theory - we need to extend the front end of this 38 squares to get a 240 tick repeater (1200/240 = 5).&lt;br /&gt;
&lt;br /&gt;
:::by front end i mean something like P+____..._____+^|, where _ are open space with hatch covers, because this needs to completely drain each cycle, and also not interfere with the spacing of the actual repeater, just the time it takes to refill/retrigger.&lt;br /&gt;
&lt;br /&gt;
:::I need to actually build this and run some timing tests...  The other problem is i'm assuming infinitely pressurized water - need to check feasibility if i'm draining 38 squares of water each cycle of the repeater... (admittedly, i can use its waste water to pressurize whatever adder i have keeping track of how often its repeated...)&lt;br /&gt;
&lt;br /&gt;
:::--[[User:Squirrelloid|Squirrelloid]] 20:17, 2 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Image improvement ==&lt;br /&gt;
[[User:HebaruSan|HebaruSan]], you added an 'Image Rules Notice'. Can you explain what you'd like to have improved? Using the default tileset would rather reduce than improve clarity.&lt;br /&gt;
: The only thing that's rule-related is to convert from GIF to PNG, which is minor. I'd still find these a bit confusing after that, though; a few suggestions:&lt;br /&gt;
:* Change |thumb to |right or |left so they appear at full size, since they're an important part of the content and not an aside.&lt;br /&gt;
:* Omit the gridlines.&lt;br /&gt;
:* Use a black background.&lt;br /&gt;
:* Use the foreground color for color-coding the functional pieces. So the gear assembly itself would be green or purple, not the tile under it.&lt;br /&gt;
:* Use a thicker/bolder font.&lt;br /&gt;
:* ''Maybe'' draw some partially transparent arrows over the tiles to illustrate the flow of the logic. I.e., from this tile, to that tile, to that tile, ...&lt;br /&gt;
:* ''Maybe'' split them out into one graphic per diagram. This may not matter much once they're full-size, though.&lt;br /&gt;
: I found [[User:Hussell/SetResetLatch]] to be pretty readable, using mostly the standard tileset. I'll try to find some time today to mock one of these up with RT, to see how it looks.&lt;br /&gt;
: --[[User:HebaruSan|HebaruSan]] 14:03, 9 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
::With the sole exception of screwpumps, i think the default tileset would make things a lot clearer.  Also, why say 'input' and 'output' when what you mean is 'water' and 'pressure plate'?  A less formal abstract treatment and a more DF-termed treatment might make it more accessible. --[[User:Squirrelloid|Squirrelloid]] 14:36, 9 November 2009 (UTC)&lt;br /&gt;
:::I allready tried to use default tileset, not for water logic but for mechanical logic, and failed so far. Especially pumps and plates for different levels are a problem, but also linkage issues and I/O can be difficult do display. But I have to admit that [[User:Hussell/SetResetLatch|Hussell's SetResetLatch]] looks quite good.&amp;lt;br /&amp;gt;@[[User:Squirrelloid|Squirrelloid]]: I don't think the problem of this page are the images. There should be more Text to explain how they are working.--[[User:Kami|Kami]] 15:11, 9 November 2009 (UTC)&lt;br /&gt;
:::: [[File:Fluid darkbg.png|right]] For comparison, here's what it might look like with black backgrounds, varying foregrounds, no gridlines, and thicker glyphs:&lt;br /&gt;
:::: --[[User:HebaruSan|HebaruSan]] 17:29, 9 November 2009 (UTC) &amp;lt;br clear=&amp;quot;all&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CMOS logic ==&lt;br /&gt;
&lt;br /&gt;
The logic gate described as CMOS logic is actually classic transistor logic, which relies on the flow of current (water). The point of CMOS logic is that there is only flow at state changes. It would look like this in Dwrf Fortress (not tested yet):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
║S║ - water source&lt;br /&gt;
╠X╣ - floodgate&lt;br /&gt;
║p║ - pressure plate&lt;br /&gt;
╠B╣ - drawbridge&lt;br /&gt;
║D║ - drain&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The floodgate and the bridge are connected to the same input, and the pressure plate will be the output (either positive or negative). It has an advantage of low water usage (the same as real CMOS circuits), so it can be connected to a permanent water source (or even a pond that is filled occasionally), and can be drained by letting the water into a large cavern where it will evaporate.&lt;br /&gt;
&lt;br /&gt;
[[Special:Contributions/89.132.124.161|89.132.124.161]] 13:11, 17 November 2009 (UTC)&lt;br /&gt;
* I'm on to testing this logic and will write to the main page when ready. [[User:Petersohn|Petersohn]] 07:50, 18 November 2009 (UTC)&lt;br /&gt;
** Done. [[User:Petersohn|Petersohn]] 12:46, 30 November 2009 (UTC)&lt;br /&gt;
*I have added my personal work on this subject to my user page. The gates I use are similar, but I feel they may yet contribute. [[User:Gammon|Gammon]] 00:45, 1 December 2009 (UTC)&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=40d_Talk:Fluid_logic&amp;diff=58944</id>
		<title>40d Talk:Fluid logic</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=40d_Talk:Fluid_logic&amp;diff=58944"/>
		<updated>2009-12-01T00:45:00Z</updated>

		<summary type="html">&lt;p&gt;Gammon: /* CMOS logic */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Can anyone explain how the XOR of the Mechanical-Fluid Gates work? I don´t seem to understand it...--[[User:Kami|Kami]] 17:34, 12 October 2009 (UTC)&lt;br /&gt;
* Sure.  It assumes the pump is powered by a windmill on a map with strong wind (40 power).  If neither input is on, the power is only transfered to the southeast gear assembly (total of 10 power consumed).  If only the yellow gear assembly is connected (considered to be a logic high), then every gear assembly but the green input is powered (30 power in gear assys, 10 power for the pump).  If only the green assembly is connected, the yellow assy and the white one to the north are both disconnected (25 power in gear assys, 10 for the pump).  But if both assys are connected, the entire thing requires 45 power to work, and nothing turns.  Easily modifiable with a huge number of gears for water wheel power.  I believe a windmill farm would be necessary on a map with 20 or 10 wind. -[[User:Arrkhal|Arrkhal]] 20:27, 12 October 2009 (UTC)&lt;br /&gt;
** Now I understand. But I think this should be mentioned anywhere. ^^&amp;lt;br /&amp;gt;By the way, I don´t think this is a good concept. You´ll have to empower every single part of your &amp;quot;computer&amp;quot; by itself. And you´ll have to calculate your power well and build tons of useless gears. Complex logic will lead you to a state you can´t handle it anymore... I´ll think of it. --[[User:Kami|Kami]] 13:31, 13 October 2009 (UTC)&lt;br /&gt;
*** Probably not the best system, yeah.  I was mainly just trying to think of a system which destroys a minimum amount of water, to be able to compute on a map with only murky pools.  You may want to look at the [[mechanical logic]] page, too.  That's where I got the XOR design from.  If there's a better way to make an XOR with gears and axles, I can't think of it. -[[User:Arrkhal|Arrkhal]] 23:36, 13 October 2009 (UTC)&lt;br /&gt;
****Just hook the inputs up to the same gear- gear assemblies toggle.  You'll need to &amp;quot;invert&amp;quot; the pressure plate, though, since hooking up two levers to a gear assembly leaves them both off and the power on.  With one lever pulled, the power's off, and with both it's back on.  23:34, 14 October 2009 (UTC)&lt;br /&gt;
****I think this is more mechanical computing than water computing, because in this case the logic lies within the gears and power. The water is only used to convert power into lever signals.&amp;lt;br /&amp;gt;But I see the destruction of water is a problem you will have to solve if you have limited ressources. Did you ever consider to use hatches to control the flow of water? This would require more pumping, but could work?&amp;lt;br /&amp;gt;An XOR with gears that is not based on underpovering can be made the same way you did for the infinite flow gates above. A XOR B = (A AND NOT B) OR (NOT A AND B) | A XNOR B = (A AND B) OR (NOT A and NOT B)&amp;lt;br /&amp;gt;Oh, and here is an short example of computing I tested: http://mkv25.net/dfma/movie-1745-dwarfputerv01 --[[User:Kami|Kami]] 10:46, 15 October 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
==Help: Time Keeping, a counting problem==&lt;br /&gt;
Ok, I am well-and-truly crazy, but I want to make a DF clock.  One which accurately tracks days and month.  (Additional awesome for tracking 'hours' within days, but that would be crazy).  So, i think i know what to do conceptually, but i'm having problems making the leap from concept to a concept of execution in the game.  (Part of this certainly results from my having had problems getting pressure plates to work properly before)&lt;br /&gt;
&lt;br /&gt;
Thoughts: &amp;lt;br&amp;gt;&lt;br /&gt;
So, there's going to be some minimal repeater, which toggles with a frequency of f.  Each toggle of the repeater fills a 1x1 area with 7/7 water, or dumps that water.&lt;br /&gt;
&lt;br /&gt;
The resevoir into which the water is dumped with each toggle is 7x1, causing it to fill to 1/7 everywhere the first time, 2/7 the second, etc...  When it reaches 7/7 it dumps...&lt;br /&gt;
&lt;br /&gt;
...into a 7x7, which similarly fills up to 7/7 over 7 dumps of the second level system.&lt;br /&gt;
&lt;br /&gt;
Issues: How do i ensure perfect draining of a 1x7 area in relatively short time?  A 7x7 area?  How many iterations / what final depth on last iteration do i need to count out a day/month?  (Ie, how short or long does a repeater tend to run per repeat, and what multiple of that is sufficient to count out a month?)&lt;br /&gt;
&lt;br /&gt;
Biggest issue: It must work slowly enough to allow draining yet quickly enough to permit accurate counting of days.&lt;br /&gt;
&lt;br /&gt;
I suppose after the 1x7 it could trigger another 1x1 repeater, and i could just parallelize that way, with each repeater being triggered slower and slower.  The 7x1 could also be a 6x1 column with a 1x2 top layer (7 cubes, 6 vertical, 7th needs a floor to measure depth), which would help with rapid draining, but will it be rapid enough?&lt;br /&gt;
&lt;br /&gt;
So, any thoughts?  How can I build this and not go crazy?&lt;br /&gt;
&lt;br /&gt;
--[[User:Squirrelloid|Squirrelloid]] 09:45, 31 October 2009 (UTC) has the potential to become the greatest dwarfputer ever!&lt;br /&gt;
&lt;br /&gt;
Here are some suggestions:&lt;br /&gt;
* If you fill an area with 1/7 water you will encounter a problem with evaporation, especially when it takes more time until you add more water for example when you´re counting months.&lt;br /&gt;
* Possible solution: You could work with multiple of 2/7 water or use some system that adds an additional 1/7 water per field for the first time.&lt;br /&gt;
* You can´t totally drain an area, even it goes -1 z-level through a whole at one side a 1/7 portion of water will always stay there. One possibility would be to use a hatch or a bridge, but then you can´t use a pressure plate as trigger.&lt;br /&gt;
* Imagination: 6/7 would be perfect if you have an 1x3 area and want to use multiple of 2/7 water.&lt;br /&gt;
* Don´t use larger areas for each level like you suggested (1 7 43 ...). Use multiple small components connected via pressure plate in a row.&lt;br /&gt;
* Suggest to work with components like others used for their alculation machines. Using the height of water is not the the best idea comparing to pure binary logic with filled/not filled.&lt;br /&gt;
* I think the best repeater would be a that goblin one.&lt;br /&gt;
&lt;br /&gt;
--[[User:Kami|Kami]] 11:18, 31 October 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
:Ok, big first issue: I made a rough build of a single component as i proposed, just to see if it would work at all.  It doesn't.  For some reason I can't have a single pressure plate open the floodgates *and* close the hatches?  Am i misunderstanding something about the way pressure plates work? &lt;br /&gt;
&lt;br /&gt;
:So, i'm filling with pressurized water, meaning the 1x1 component goes to 7/7 instantaneously.  This means it should open the floodgate to drain the 1x1 and close the hatch to prevent additional fill of the 1x1 at the same time.  Flood gate opens fine but the hatch refuses to close...  What the heck am i doing wrong?  Shouldn't the pressure plate toggle both hatches and floodgates to the opposite of their current positions?&lt;br /&gt;
&lt;br /&gt;
:If it toggles multiple times, maybe i could just open and close components with a 3/7-4/7 signal and it could just repeatedly toggle the components at some frequency that could be counted with other components...  of course, then i need to time every component separately - now that sounds like a nightmare.&lt;br /&gt;
&lt;br /&gt;
:This would be easier if screw pumps didn't create water, so their supply was actually limited by how much had gone in...&lt;br /&gt;
&lt;br /&gt;
:Issue with lots of binary components - that sounds a lot more space intensive.  It does, however, sound more foolproof.&lt;br /&gt;
&lt;br /&gt;
:--[[User:Squirrelloid|Squirrelloid]] 13:00, 31 October 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
::Relevant additional question - Does anyone know how many 'steps' there are in a DF day?  Month?  Year? --[[User:Squirrelloid|Squirrelloid]] 13:19, 31 October 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
:Your Problem is: pressure plates and levers have a &amp;quot;on&amp;quot; and a &amp;quot;off&amp;quot; state. &amp;quot;On&amp;quot; opens door, floodgates and hatches, &amp;quot;off&amp;quot; closes them. It is not possible to open one thing and close another directly with the same lever or pressure plate. Look at [[lever]] for more information. You´ll have to use some kind of signal-inverter or use a bridge to block flow. Bridges can be used as inverted doors ([[fluid logic]]). --[[User:Kami|Kami]] 15:00, 31 October 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
::That's really stupid.  But creatures stepping on a pressure plate just work like a toggle?  What the hell?  Why can't fluids work more like that.  --[[User:Squirrelloid|Squirrelloid]] 17:02, 31 October 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
Ok, I think I have a design that might work.  Its not exactly binary, but its going to be a whole lot easier to build rather than figuring out the mess of logic.&lt;br /&gt;
&lt;br /&gt;
So the example repeater on the Repeater page says it works ~1/300 'steps'.  Assume there are 1200 'steps' in a day.&lt;br /&gt;
&lt;br /&gt;
P|_+_|_+^_&lt;br /&gt;
&lt;br /&gt;
Where P is pressurized water, | is a floodgate, + is a drawbridge, ^ is a 3/7-7/7 pressure plate, and _ is a hatch.  The doors and bridges are linked to the pressure plate in the repeater, which alternately toggles them, so it counts up to 4.  The ^ at the end opens all the hatches when 'on' (voiding the system), and also triggers a day counter, built on similar principles but 28 long.  The day counter similarly triggers a month counter that is 12 long.  The difference being each step of the day/month counter needs a ^ to trigger a display somewhere (unless you use the counter itself as the display, which is admittedly inelegant).&lt;br /&gt;
&lt;br /&gt;
... The ^ from the repeater is going to toggle on and off once per iteration isn't it, so it'll do two parts instead of one per 300 'steps'?  crap.  I suppose you need to make it twice as long then, huh? Ie:&lt;br /&gt;
&lt;br /&gt;
P|_+_|_+_|_+_|_+^_&lt;br /&gt;
&lt;br /&gt;
(As much fun as building a full binary system would be, I want something that can be constructed relatively quickly, which in this case means 'with a limited number of logic structures')&lt;br /&gt;
&lt;br /&gt;
--[[User:Squirrelloid|Squirrelloid]] 08:44, 1 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
:Ok, it doesn't work, i can't keep water at 7/7 through the whole thing (annoying).&lt;br /&gt;
:a day is also not an integer multiple of that particular repeater.  Its somewhere between 3 and 4 iterations.  Ugg, getting this to work properly is going to drive me nuts.  I'm not really sure I want to try to code in binary... --[[User:Squirrelloid|Squirrelloid]] 12:04, 1 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
:Hmm.. with a little more complication i don't need to have them in sequence.  But drainage becomes a bigger engineering problem...  Ok, lets solve the repeater:day ratio problem first, then i'll try to figure out how to 'wire' this mess. --[[User:Squirrelloid|Squirrelloid]] 12:39, 1 November 2009 (UTC)&lt;br /&gt;
::I have seen a video of a goblin running forth an back towards triggered doors. http://mkv25.net/dfma/movie-1299-goblininfiniteloop I think this would be a perfect and scalable repeater... I think if you know how fast a goblin can run and how long it would take to find the new way, you´ll be able to have him &amp;quot;repeat&amp;quot; exactly x times a day. --[[User:Kami|Kami]] 19:39, 2 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
:::So, there's this theory that a day has 1200 'ticks'.  Bridges and floodgates have a 100 tick delay (assuming they're built *before* the pressure plate, o/w 101 ticks...).  Theory seems to suggest pressurized water pushes 7/7 water into an open space each tick.  So the minimal repeater with pressurized water: P+^| has a 202 tick cycle (assuming +,| are built before ^).  Theory - we need to extend the front end of this 38 squares to get a 240 tick repeater (1200/240 = 5).&lt;br /&gt;
&lt;br /&gt;
:::by front end i mean something like P+____..._____+^|, where _ are open space with hatch covers, because this needs to completely drain each cycle, and also not interfere with the spacing of the actual repeater, just the time it takes to refill/retrigger.&lt;br /&gt;
&lt;br /&gt;
:::I need to actually build this and run some timing tests...  The other problem is i'm assuming infinitely pressurized water - need to check feasibility if i'm draining 38 squares of water each cycle of the repeater... (admittedly, i can use its waste water to pressurize whatever adder i have keeping track of how often its repeated...)&lt;br /&gt;
&lt;br /&gt;
:::--[[User:Squirrelloid|Squirrelloid]] 20:17, 2 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
== Image improvement ==&lt;br /&gt;
[[User:HebaruSan|HebaruSan]], you added an 'Image Rules Notice'. Can you explain what you'd like to have improved? Using the default tileset would rather reduce than improve clarity.&lt;br /&gt;
: The only thing that's rule-related is to convert from GIF to PNG, which is minor. I'd still find these a bit confusing after that, though; a few suggestions:&lt;br /&gt;
:* Change |thumb to |right or |left so they appear at full size, since they're an important part of the content and not an aside.&lt;br /&gt;
:* Omit the gridlines.&lt;br /&gt;
:* Use a black background.&lt;br /&gt;
:* Use the foreground color for color-coding the functional pieces. So the gear assembly itself would be green or purple, not the tile under it.&lt;br /&gt;
:* Use a thicker/bolder font.&lt;br /&gt;
:* ''Maybe'' draw some partially transparent arrows over the tiles to illustrate the flow of the logic. I.e., from this tile, to that tile, to that tile, ...&lt;br /&gt;
:* ''Maybe'' split them out into one graphic per diagram. This may not matter much once they're full-size, though.&lt;br /&gt;
: I found [[User:Hussell/SetResetLatch]] to be pretty readable, using mostly the standard tileset. I'll try to find some time today to mock one of these up with RT, to see how it looks.&lt;br /&gt;
: --[[User:HebaruSan|HebaruSan]] 14:03, 9 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
::With the sole exception of screwpumps, i think the default tileset would make things a lot clearer.  Also, why say 'input' and 'output' when what you mean is 'water' and 'pressure plate'?  A less formal abstract treatment and a more DF-termed treatment might make it more accessible. --[[User:Squirrelloid|Squirrelloid]] 14:36, 9 November 2009 (UTC)&lt;br /&gt;
:::I allready tried to use default tileset, not for water logic but for mechanical logic, and failed so far. Especially pumps and plates for different levels are a problem, but also linkage issues and I/O can be difficult do display. But I have to admit that [[User:Hussell/SetResetLatch|Hussell's SetResetLatch]] looks quite good.&amp;lt;br /&amp;gt;@[[User:Squirrelloid|Squirrelloid]]: I don't think the problem of this page are the images. There should be more Text to explain how they are working.--[[User:Kami|Kami]] 15:11, 9 November 2009 (UTC)&lt;br /&gt;
:::: [[File:Fluid darkbg.png|right]] For comparison, here's what it might look like with black backgrounds, varying foregrounds, no gridlines, and thicker glyphs:&lt;br /&gt;
:::: --[[User:HebaruSan|HebaruSan]] 17:29, 9 November 2009 (UTC) &amp;lt;br clear=&amp;quot;all&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CMOS logic ==&lt;br /&gt;
&lt;br /&gt;
The logic gate described as CMOS logic is actually classic transistor logic, which relies on the flow of current (water). The point of CMOS logic is that there is only flow at state changes. It would look like this in Dwrf Fortress (not tested yet):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
║S║ - water source&lt;br /&gt;
╠X╣ - floodgate&lt;br /&gt;
║p║ - pressure plate&lt;br /&gt;
╠B╣ - drawbridge&lt;br /&gt;
║D║ - drain&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The floodgate and the bridge are connected to the same input, and the pressure plate will be the output (either positive or negative). It has an advantage of low water usage (the same as real CMOS circuits), so it can be connected to a permanent water source (or even a pond that is filled occasionally), and can be drained by letting the water into a large cavern where it will evaporate.&lt;br /&gt;
&lt;br /&gt;
[[Special:Contributions/89.132.124.161|89.132.124.161]] 13:11, 17 November 2009 (UTC)&lt;br /&gt;
* I'm on to testing this logic and will write to the main page when ready. [[User:Petersohn|Petersohn]] 07:50, 18 November 2009 (UTC)&lt;br /&gt;
** Done. [[User:Petersohn|Petersohn]] 12:46, 30 November 2009 (UTC)&lt;br /&gt;
&lt;br /&gt;
I have added my personal work on this subject to my user page. The gates I use are similar, but I feel they may yet contribute. [[User:Gammon|Gammon]] 00:45, 1 December 2009 (UTC)&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
	<entry>
		<id>https://dwarffortresswiki.org/index.php?title=User:Gammon&amp;diff=58943</id>
		<title>User:Gammon</title>
		<link rel="alternate" type="text/html" href="https://dwarffortresswiki.org/index.php?title=User:Gammon&amp;diff=58943"/>
		<updated>2009-12-01T00:38:22Z</updated>

		<summary type="html">&lt;p&gt;Gammon: Created page with '=Fluid logic=  ''Disclaimer: This is my personal work on the topic, and felt inclined to share it after reading about the same topic on DF Wiki. Use this information for your own…'&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Fluid logic=&lt;br /&gt;
&lt;br /&gt;
''Disclaimer: This is my personal work on the topic, and felt inclined to share it after reading about the same topic on DF Wiki. Use this information for your own works on the matter.''&lt;br /&gt;
&lt;br /&gt;
Fluid logic is a form of [[computing]] which uses a fluid (generally [[water]]) controlled by various means, to trigger [[pressure plate]]s and hopefully accomplish some desirable result.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Key==&lt;br /&gt;
&lt;br /&gt;
====Floodgate====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
X             FLOOD    ALLOW FLOW WHEN ON&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Large Raising Bridge====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[  Start      CH.BR.   ALLOW DRAIN WHEN ON, ALLOW FLOW WHEN OFF&lt;br /&gt;
]  End&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Channel below the end piece.&lt;br /&gt;
&lt;br /&gt;
====Small Raising Bridge====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[             BRIDGE   ALLOW DRAIN WHEN OFF&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Channel above piece.&lt;br /&gt;
&lt;br /&gt;
====Pressure Plate====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
P             PR.PL.   X/X ON&lt;br /&gt;
P&amp;lt;                     ON UNDER MAXIMUM&lt;br /&gt;
&amp;gt;P                     ON OVER MINIMUM&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Channel====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
.                      DRAIN.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Also used as a drain bypass to route around objects.&lt;br /&gt;
&lt;br /&gt;
====Source====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
~                      WATER SOURCE.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Only depicted in XAND and XOR.&lt;br /&gt;
&lt;br /&gt;
===Notes===&lt;br /&gt;
&lt;br /&gt;
*Water source is above first input piece.&lt;br /&gt;
*-2, -1, 0 Refers to level.&lt;br /&gt;
*I is INPUT, O is OUTPUT. Numbered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Gates==											&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====AND====&lt;br /&gt;
&amp;lt;pre&amp;gt;                        &lt;br /&gt;
    -1   0&lt;br /&gt;
     .   X    I.1  FLOOD       &lt;br /&gt;
     [   .    I.1  BRIDGE      &lt;br /&gt;
     .   X    I.2  FLOOD       &lt;br /&gt;
     [   .    I.2  BRIDGE&lt;br /&gt;
         P    O.1  PR.PL. 6/7  &lt;br /&gt;
&amp;lt;/pre&amp;gt;        &lt;br /&gt;
====OR====&lt;br /&gt;
&amp;lt;pre&amp;gt;                            &lt;br /&gt;
         0&lt;br /&gt;
         [    I.1  BRIDGE      &lt;br /&gt;
         ]         CH.BR.&lt;br /&gt;
         [    I.2  BRIDGE      &lt;br /&gt;
         ]         CH.BR.&lt;br /&gt;
         P    O.1  PR.PL. 0/5  &lt;br /&gt;
&amp;lt;/pre&amp;gt;        &lt;br /&gt;
====NOT, INVERTER====&lt;br /&gt;
&amp;lt;pre&amp;gt;                             &lt;br /&gt;
         0&lt;br /&gt;
         [    I.1  BRIDGE      &lt;br /&gt;
         ]         CH.BR.&lt;br /&gt;
         P    O.1  PR.PL. 6/7  &lt;br /&gt;
&amp;lt;/pre&amp;gt;        &lt;br /&gt;
====NAND====&lt;br /&gt;
&amp;lt;pre&amp;gt;                             &lt;br /&gt;
    -1   0 &lt;br /&gt;
     .   X    I.1  FLOOD       &lt;br /&gt;
     [   .    I.1  BRIDGE      &lt;br /&gt;
     .   X    I.2  FLOOD       &lt;br /&gt;
     [   .    I.2  BRIDGE&lt;br /&gt;
         P    O.1  PR.PL. 0/5  &lt;br /&gt;
&amp;lt;/pre&amp;gt;        &lt;br /&gt;
====NOR====&lt;br /&gt;
&amp;lt;pre&amp;gt;                             &lt;br /&gt;
         0&lt;br /&gt;
         [    I.1  BRIDGE      &lt;br /&gt;
         ]         CH.BR&lt;br /&gt;
         [    I.2  BRIDGE      &lt;br /&gt;
         ]         CH.BR&lt;br /&gt;
         P    O.1  PR.PL. 6/7  &lt;br /&gt;
&amp;lt;/pre&amp;gt;            &lt;br /&gt;
====XOR====&lt;br /&gt;
&amp;lt;pre&amp;gt;                                      &lt;br /&gt;
-2  -1   0&lt;br /&gt;
     ~   ~                           &lt;br /&gt;
 .   X   [    I.2  FLOOD      I.1  CH.BR.  &lt;br /&gt;
 [   .   ]    I.2  BRIDGE                 &lt;br /&gt;
 .   X   [    I.1  FLOOD      I.2  CH.BR.  &lt;br /&gt;
 [   .   ]    I.1  BRIDGE                 &lt;br /&gt;
         P    O.1  PR.PL. 0/5             &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
====XAND====&lt;br /&gt;
&amp;lt;pre&amp;gt;                                       &lt;br /&gt;
-2  -1   0 &lt;br /&gt;
     ~   ~                          &lt;br /&gt;
 .   X   [    I.2  FLOOD      I.1  CH.BR.  &lt;br /&gt;
 [   .   ]    I.2  BRIDGE                 &lt;br /&gt;
 .   X   [    I.1  FLOOD      I.2  CH.BR.  &lt;br /&gt;
 [   .   ]    I.1  BRIDGE                 &lt;br /&gt;
         P    O.1  PR.PL. 6/7             &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Computing==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Latch===&lt;br /&gt;
&lt;br /&gt;
In Dwarf Fortress, a latch is a circuit which has two stable states and thereby can store one bit of information.&lt;br /&gt;
&lt;br /&gt;
A circuit incorporating latches has state; its output may depend not only on its current input, but also on its previous inputs.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====S/R Latch====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
     0   0    &lt;br /&gt;
     [   [    I.S   I.R&lt;br /&gt;
     ]   ]&lt;br /&gt;
     [   [    I.Q   I.Q&lt;br /&gt;
     ]   ]       &lt;br /&gt;
    &amp;lt;P  &amp;lt;P    O.Q   O.Q&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: Use a Signal Trap when attempting to capture creature plate signals. Hold RESET while system boots.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Signal Trap====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    -1   0   1&lt;br /&gt;
     X   .   X   I.R     I.S &lt;br /&gt;
        &amp;lt;P           O.Q&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Notes&lt;br /&gt;
*INPUT S to SET, INPUT R to RESET&lt;br /&gt;
*Uses a door and hatch. Useful for capturing creature plate OUTPUT.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Clock Signal===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
         0&lt;br /&gt;
         [   IC  CH.BR.&lt;br /&gt;
         ]&lt;br /&gt;
        &amp;lt;P   OC  PR.PL.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Note: ACCURACY UNTESTED.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
       &lt;br /&gt;
===Methods Of Implementation===						&lt;br /&gt;
&lt;br /&gt;
The computational &amp;quot;house&amp;quot; is a collection of gates and purpose-made components for the computation of inputs and harvesting of results.&lt;br /&gt;
&lt;br /&gt;
A source of water is pumped into a reservoir with the computational devices arranged below it to accept the water. Below these devices is a system for carrying away the used water.&lt;br /&gt;
&lt;br /&gt;
The system must be able to carry the water at an adequate rate. Pumps are one way to assure this: they take the water to a river or map edge. Untested is the method of &amp;quot;atom-smashing&amp;quot; the water; it would greatly minimize the work needed, and indeed this already occurs inside the devices.&lt;br /&gt;
&lt;br /&gt;
Of concern is what is known as &amp;quot;sloshing&amp;quot;: where water can cause effect upon a pressure plate more then once per operation. This can cause chaos in the computer and completely ruin it. Pressure must be kept as high as possible; and drainage faster then the rate which pressure introduces water into the computer.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fig.1 Reservoir&lt;br /&gt;
&lt;br /&gt;
A pump can be seen supplying water to the reservoir from a brook. Two doors, seen as XX, determine whether the reservoir may fill. The series X~X~X~X~X~X indicates hatches over the computer components, determining whether the computer is on or off.&lt;br /&gt;
&lt;br /&gt;
EDIT LATER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fig.2 Computer Components&lt;br /&gt;
&lt;br /&gt;
Here can be seen an S/R Latch: where two NOR gates have their outputs crossed to the others second input. This allows 1 bit to be stored.&lt;br /&gt;
&lt;br /&gt;
An access shaft, I, and a door, X, allow workers to reach the site.&lt;br /&gt;
&lt;br /&gt;
EDIT LATER&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Fig.3 Drainage&lt;br /&gt;
&lt;br /&gt;
Here a pump, %, can be seen removing water from a pit below the S/R Latch. There is ample conduit to bring the water to the brook and pump into it. A waterwheel, gear assembly, and two axles bring power to the pumps.&lt;br /&gt;
&lt;br /&gt;
EDIT LATER&lt;/div&gt;</summary>
		<author><name>Gammon</name></author>
	</entry>
</feed>