@Override
    protected void read(MCDataInput packet, int key) {
        switch (key) {
            case KEY_STATE:
                gateState = packet.readByte();
                if (Configurator.staticGates) {
                    tile().markRender();
                }
                break;
            default:
                super.read(packet, key);
        }
    }
Mapped inputs and outputs of the gate.
OOOO IIII
High nybble is output.
Low nybble is input
integration/src/main/java/mrtjp/projectred/integration/part/RedstoneGatePart.java