History

Current version

3/8/2026, 10:06:41 PM

Imported from wiki

by tmascroft · 3/8/2026, 9:32:04 PM

Logic Processor

## Math Unit

:::infobox
| Property | Value |
|----------|-------|
| Power Usage | 10W |
| Placed With | [Kit (Logic Processor)](/wiki/kit-logic-processor) |
| Placed On | Small Grid, On Frames, resources_needed = 1g gold, 1 copper |

![Math Unit](MathUnit.png)
:::
### Deconstruction Steps

| Step | Tool | Recovered Item |
|---|---|---|
| 1 | [Hand Drill](/wiki/hand-drill) | - |

## Compare Unit

:::infobox
| Property | Value |
|----------|-------|
| Power Usage | 10W |
| Placed With | [Kit (Logic Processor)](/wiki/kit-logic-processor) |
| Placed On | Small Grid, On Frames |

![Compare Unit](CompareUnit.png)
:::
### Deconstruction Steps

| Step | Tool | Recovered Item |
|---|---|---|
| 1 | [Hand Drill](/wiki/hand-drill) | - |

## Select Unit

:::infobox
| Property | Value |
|----------|-------|
| Power Usage | 10W |
| Placed With | [Kit (Logic Processor)](/wiki/kit-logic-processor) |
| Placed On | Small Grid, On Frames |

![Select Unit](SelectUnit.png)
:::
### Deconstruction Steps

| Step | Tool | Recovered Item |
|---|---|---|
| 1 | [Hand Drill](/wiki/hand-drill) | - |

## Min/Max Unit

:::infobox
| Property | Value |
|----------|-------|
| Power Usage | 10W |
| Placed With | [Kit (Logic Processor)](/wiki/kit-logic-processor) |
| Placed On | Small Grid, On Frames |

![Min/Max Unit](MinMaxUnit.png)
:::
### Deconstruction Steps

| Step | Tool | Recovered Item |
|---|---|---|
| 1 | [Hand Drill](/wiki/hand-drill) | - |

## Unary Math Unit

:::infobox
| Property | Value |
|----------|-------|
| Power Usage | 10W |
| Placed With | [Kit (Logic Processor)](/wiki/kit-logic-processor) |
| Placed On | Small Grid, On Frames |

![Unary Math Unit](MathUnary.png)
:::
### Deconstruction Steps

| Step | Tool | Recovered Item |
|---|---|---|
| 1 | [Hand Drill](/wiki/hand-drill) | - |

## Gate Unit

:::infobox
| Property | Value |
|----------|-------|
| Power Usage | 10W |
| Placed With | [Kit (Logic Processor)](/wiki/kit-logic-processor) |
| Placed On | Small Grid, On Frames |

![Gate Unit](GateUnit.png)
:::
### Deconstruction Steps

| Step | Tool | Recovered Item |
|---|---|---|
| 1 | [Hand Drill](/wiki/hand-drill) | - |


The Logic Processor is a multi-purpose Logic Circuit unit that has variants, all related to some mathematical operation.

## Math Unit

### Connectors

- Top: Power
- Left: Input 1
- Right: Input 2
- Bottom: Output

### Screws (options)

- Left: Input 1 Selector. Click with screwdriver to select the "left" operand
- Right: Input 2 Selector. Click with screwdriver to select the "right" operand
- Bottom: Operation Selector. Click with screwdriver to select what operation to run on the 2 inputs.

### Available Operations

- Add: Adds the two inputs together. (output = i1 + i2)
- Subtract: Substract the right operand from the left one. (output: i1 - i2)
- Multiply: Multiplies the two inputs (output = i1 x i2)
- Divide: Divides the left operand by the right operand (output = i1 / i2)
- Mod: Runs the modulo function such that output = i1 % i2, where the output is the remainder of the division of the left operand by the right operand.
- Atan2: Arc Tangent of y/x. (Inverse Tan of [ i2 / i1 ] ).

## Compare Unit

### Connectors

- Top: Power
- Left: Input 1
- Right: Input 2
- Bottom: Output

### Screws (options)

- Bottom Left: Input 1 Selector. Click with screwdriver to select the "left" operand
- Bottom Right: Input 2 Selector. Click with screwdriver to select the "right" operand
- Bottom Center: Operation Selector. Click with screwdriver to select what operation to run on the 2 inputs.

### Available Operations

**Note:** This is a floating point comparison and is very precise!

- Equals: Outputs 1 (true) if Input 1 is exactly equal to Input 2, otherwise outputs 0 (false).
- NotEquals: Outputs 1 (true) if Input 1 has a different value than Input 2, otherwise outputs 0 (false).
- Greater: Outputs 1 (true) if Input 1 is greater than Input 2, otherwise outputs 0 (false).
- Lesser: Outputs 1 (true) if Input 1 is smaller/lesser than Input 2, otherwise outputs 0 (false).


## Select Unit

### Connectors

- Top: Power and Selector Input
- Left: Input 1
- Right: Input 2
- Bottom: Output

### Screws (options)

- Top: Selector Input. Use Screwdriver to select what input is used to flip the selection. This should usually be a unit that outputs a true/false value (0 for false, 1 for true), such as a Logic Compare unit.
- Bottom Left: Input 1 Selector. Use Screwdriver to select what value to use when the Selector Input value is 0 (false).
- Bottom Right: Input 2 Selector. Use Screwdriver to select what value to use when the Selector Input value is 1 (true).


## Min/Max Unit

### Connectors

- Top: Power
- Left: Input 1
- Right: Input 2
- Bottom: Output

### Screws (options)

- Bottom Left: Input 1 Selector. Click with screwdriver to select the "left" operand
- Bottom Right: Input 2 Selector. Click with screwdriver to select the "right" operand
- Bottom Center: Operation Selector. Click with screwdriver to select what operation to run on the 2 inputs.

### Available Operations

- Less: **Outputs Input 1 if Input 1 is less than Input 2, otherwise outputs Input 2**
- Greater: **Outputs Input 1 if Input 1 is greater than Input 2, otherwise outputs Input 2**


## Unary Math Unit

### Connectors

- Top: Power
- Left: Input
- Right: Output

### Screws (options)

- Left: Input Selector. Click with the Screwdriver to select the input data.
- Right: Operation Selector. Click with Screwdriver to select what operation to run on the Input.

### Available Operations

- Ceil: Rounds the input "Up" to the closest whole integer.
- Atan: Returns the arctangent (inverse tangent) of the input, in radians.
- Asin: Returns the arcsine (inverse sine) of the input, in radians. The input must be between -1 and 1.
- Acos: Returns the arccosine (inverse cosine) of the input, in radians. The input must be between -1 and 1.
- Abs: Ensures the input is Positive and not Negative (converts -1 to 1, -123.456 to 123.456, etc). Has no effect on positive numbers.
- Tan: Returns the tangent of the input, where the input is given in radians.
- Sqrt: Returns the square root of the input. The input must be non-negative.
- Sin: Returns the sine of the input, where the input is given in radians.
- Round: Rounds the input to the closest whole integer.
- Rand: Returns a random number between 0 and 1.
- Not: Returns the logical negation of the input. If the input is 0 (false), it returns 1 (true); otherwise, it returns 0 (false).
- Log: The natural logarithm of the input. The natural logarithm of x is the power to which e (Euler's number) would have to be raised to equal x. The input must be positive.
- Floor: Rounds the input "Down" to the closest whole integer.
- Exp: The natural exponential function of the input. e raised to the power of the input.
- Cos: Returns the cosine of the input, where the input is given in radians.

## Logic Gate Unit

### Connectors

- Top: Power
- Left: Input 1
- Right: Input 2
- Bottom: Output

### Screws (options)

- Top: Operation Selector. Click with the Screwdriver to select the logic operation to be performed on the two inputs
- Left: Input Selector. Click with the Screwdriver to select the input data.
- Right: Input Selector. Click with the Screwdriver to select the input data.

### Available Operations

**Note:** The operations as described below are **logical** as opposed to **bitwise**. All non-zero inputs are effectively treated as **One** or **True**, therefore an **OR** operation where input 1 is the value of **four** and input 2 is the value of **one** will result in an output of **1** as opposed to **5** as it would be in a bitwise OR.

- OR: Where **either** inputs are **True** the output will be **True (1)**, otherwise the output will be **False (0)**
- AND: Where **both** inputs are **True** the output will be **True (1)**, otherwise the output will be **False (0)**
- XOR: Similar to the **OR** operation with the exception that if **both** inputs are **True**, the output will be **False (0)**

The following operations simply **invert** the output of the aforementioned **OR**, **AND** and **XOR** operations.

- NOR: Inverted **OR** output. If a standard **OR** operation outputs **True (1)**, this operation will output **False (0)** and visa-versa.
- NAND: Inverted **AND** output. If a standard **AND** operation outputs **True (1)**, this operation will output **False (0)** and visa-versa.
- XNOR: Inverted **XOR** output. If a standard **XOR** operation outputs **True (1)**, this operation will output **False (0)** and visa-versa.