Programmable RedNet Controller

From Feed The Beast Wiki
Jump to: navigation, search
Programmable RedNet Controller
Programmable RedNet Controller

Programmable RedNet Controller

Name Programmable RedNet Controller
Source Mod MineFactory Reloaded
ID Name Unknown
Type Machine
Stackable Yes (64)

The Programmable RedNet Controller is a Block from MineFactory Reloaded which can be used to create extremely compact redstone circuits, simple or complex. Its interface includes many different gates and circuits, and can also store constants and variables. The Programmable RedNet Controller is compatible with the Computer from ComputerCraft. It is possible to upgrade the Programmable RedNet Controller with the various PRC Logic Expansion Cards, the LX-100, the LX-300 and the LX-500. Programs can be saved onto PRC Memory Cards and copied onto other Programmable RedNet Controllers.

Recipe[edit]

GUI Crafting Table.png
Redstone
Diamond
Redstone
Lapis Lazuli
Gold Ingot
Lapis Lazuli
Plastic Sheets
Programmable RedNet Controller Housing
Plastic Sheets
Programmable RedNet Controller

Upgrades[edit]

The RedNet Controller can be enhanced with PRC Logic Expansion Cards for more internal variables and calculations:

Board Extra Calculations Extra Variables
LX-100 1 8
LX-300 3 16
LX-500 5 24

Circuits[1][edit]

  • Adder (Analog)
    • I0/I1: Inputs
    • O: Sum of values in I0 and I1
  • Adder (Digital, Half)
    • A/B: Inputs
    • S: Digital sum of A+B; 1 if only one of A and B is nonzero
    • C: Carry output of A+B; 1 if both and B are nonzero
  • Adder (Digital, Full)
    • A/B: Inputs
    • Cin: Carry input
    • S: Digital sum of A+B+Cin; 1 if only one or all three of A, B, and Cin is nonzero
    • Cout: Carry output of A+B; 1 if at least two of A, B, and Cin are nonzero
  • And
    • I0-I3: Inputs
    • O: Output; nonzero when all of I0-I3 are nonzero
  • Counter
    • INC: On each rising edge of INC, the value in the counter increments by one
    • DEC: On each rising edge of DEC, the value in the counter decrements by one (pulsing both INC and DEC simultaneously is undefined)
    • PRE: The counter preset, otherwise known as the value it rolls over at. For example, when a counter has a preset of 3, incrementing from 2 yields 0 and decrementing from 0 yields 2. Negative presets are undefined.
    • Q: A one-tick pulse whenever the counter rolls over
    • V: The analog value of the counter
  • D-Latch (Gated)
    • D: Input value
    • E: Enable input. When E is nonzero, Q/Q# are updated from D
    • Q: Output value
    • Q#: Output value (inverted)
  • DeMux (16-out, Analog)
    • I: Input
    • S: Selector; routes I to O0-O15 based on analog value of S
    • O0-O15: Outputs
  • DeMux (4-Output)
    • I: Input
    • S0: Selector low bit
    • S1: Selector high bit. S0 and S1 select which output I is routed to
    • O0-O4: Outputs
  • Decompose Int -> Decimal
    • I: Input
    • SN: Sign of input (nonzero if I is negative)
    • D0-D10: Outputs; one per digit. For example, with an input of 124, D0 (ones) would be 4, D1 (tens) would be 2, and D2 (hundreds) would be 1 with the rest 0. Intended for use with the seven-segment encoder
  • Delay
    • I: Input
    • D: Delay to add when propagating I to O
    • O: Output, or I delayed by D ticks. Somewhat similar to a vanilla repeater
  • Delay (8-Channel)
    • I0-I7: Inputs
    • D: Delay to add when propagating I to O
    • O0-07: Outputs, or the matching I delayed by D ticks
  • Equals
    • A/B: Inputs
    • Q: Nonzero when A==B, zero otherwise
  • Fanout
    • I: Input
    • O0-O15: Outputs, equal to I. This allows you to route one input to many outputs
  • Greater Than
    • A/B: Inputs
    • Q: Nonzero when A>B, zero otherwise
  • Greater Than Or Equal
    • A/B: Inputs
    • Q: Nonzero when A>=B, zero otherwise
  • Inverter
    • I: Input
    • 0: Nonzero when I is zero; zero otherwise
  • JK-FlipFlop
    • J: Set input
    • K: Reset input
    • CLK: Clock input. When CLK has a rising edge, J being high sets the output; K being high resets (zeroes) it; and J and K both being high toggles it
    • Q: Output
    • Q#: Inverted output
  • Less Than
    • A/B: Inputs
    • Q: Nonzero when A<B, zero otherwise
  • Less Than Or Equal
    • A/B: Inputs
    • Q: Nonzero when A<=B, zero otherwise
  • Maximum
    • I0-I3: Inputs
    • O: The maximum value among the inputs
  • Minimum
    • I0-I3: Inputs
    • O: The minimum value among the inputs
  • Multipulse
    • I: Input
    • CLK: Clock signal (Pulses sent on rising edge)
    • CNT: How many pulses to send
    • THi: How many ticks each pulse should last
    • TLo: How many ticks between pulses
    • Q: Output for pulses
  • Mux
    • I0-I3: Inputs
    • S0: Selector low bit
    • S1: Selector high bit. S0 and S1 control which input is routed to O
    • O: Output
  • Nand
    • I0-I3: Inputs
    • O: Output; nonzero when any input is zero
  • Negator
    • I: Input
    • O: Output (mathematical negative of I)
  • Nor
    • I0-3: Inputs
    • O: Output; nonzero when all of I0-I3 are zero
  • Not Equal
    • A/B: Inputs
    • Q: Nonzero when A<>B, zero otherwise
  • One-Shot Pulse
    • I: Input
    • O: Output, sends a single-tick pulse to the output when the input has a rising edge
  • Or
    • I0-3: Inputs
    • O: Output; nonzero when any input is nonzero
  • Passthrough
    • I: Input
    • O: Output, a copy of the input
  • Passthrough (Gated)
    • I: Input
    • E: Enable
    • O: Output, a copy of the input when E is nonzero, and zero otherwise
  • Passthrough (Ring)
    • I: Input
    • CNT: The number of valid outputs in use
    • CLK: On each rising edge of CLK, the output is incremented one, until it reaches CNT at which point it returns to 0
  • Pulse Lengthener
    • I: Input
    • L: Pulse length
    • O: Output, which is an L-tick pulse every time I has a rising edge
  • Randomizer (Analog)
    • Min: The minimum random value
    • Max: The maximum random value. Max <= Min is undefined
    • Q: A random value, changes every tick
  • Randomizer (Digital)
    • Q: A random value (0 or 15), changes every tick
  • SR-Latch
    • R: Reset input, sets output to 0
    • S: Set input, sets output to 15
    • Q: Output
    • Q#: Inverted output
  • SR-Latch (Gated)
    • R: Reset input, sets output to 0
    • S: Set input, sets output to 15
    • E: Enable input. S and R only function when E is nonzero
    • Q: Output
    • Q#: Inverted output
  • Scaler
    • I: Input
    • IMn: Input range minimum
    • IMx: Input range maximum
    • OMn: Output range minimum
    • OMx: Output range maximum
    • O: Output, scaled between the two ranges (for example, 1-2 on input and 1-4 on output will double the input)
  • Schmitt Trigger
    • I: Input
    • Pd: Delay period. Input must be nonzero for Pd ticks before O is nonzero, but O goes to zero as soon as I does
    • O: Output
  • Seven-Segment Encoder
    • I: Input
    • A-G: Outputs, corresponding to one segment each of a 7-segment display. You may wish to review Wikipedia's article on 7-segment displays
  • Subtractor
    • I0-I1: Inputs
    • O: Output of I0 - I1
  • T-FlipFlop
    • T: Toggle input
    • CLK: Clock input, when CLK has a rising edge and T is high, the output toggles. If in doubt, connect T and CLK to the same input
  • Wave (Sawtooth, Falling)
    • Q: Produces a falling sawtooth wave (15, 14, 13, ... 0, 15)
  • Wave (Sawtooth, Rising)
    • Q: Produces a rising sawtooth wave (0, 1, 2 ... 15, 0)
  • Wave (Sine)
    • Q: Produces a sine wave between 0 and 15 with an approximate period of 16 ticks
  • Wave (Square)
    • Pd: Period of the square wave; periods <= 0 are undefined
    • Q: A square wave (0, 15, 0, 15) that changes state every Pd ticks
  • Wave (Triangle)
    • Q: Produces a triangle wave (0, 1, 2 ... 14, 15, 14 ... 1, 0, 1)

Notes[edit]

  1. Technic Pack Wiki