Skip to content

[Bug] Fabrication: single wire lanes output nothing #1903

Open
@bobthehuge

Description

@bobthehuge

Minecraft version

1.20.1

CodeChickenLib version

4.4.0

CBMultipart version

3.3.0

ProjectRed version

4.19.0

What happened?

IC doesn't output anything when joining IOs with simple cables (even with matching colors). It outputs correctly when using a repeater but only on the lane which has it.

This setup doesn't output anything.
scrambler0template
scrambler0setup

This one only outputs on the white to black lane (where the repeater is).
scrambler1template
scrambler1setup

Am i missing something ?

Crash log

No crash reported.

(edit: added compilation log for scrambler 0)
Assembly merge tile map setup
Assembly Phase 1: Allocations
Assembly Phase 2: Pathfinding
Pathfinding at TileCoord(x:-5, y:0, z:-1)
Pathfinding at TileCoord(x:-8, y:0, z:-2)
Pathfinding at TileCoord(x:0, y:0, z:-1)
Pathfinding at TileCoord(x:7, y:0, z:0)
Pathfinding at TileCoord(x:6, y:0, z:0)
Pathfinding at TileCoord(x:4, y:0, z:0)
Pathfinding at TileCoord(x:5, y:0, z:0)
Pathfinding at TileCoord(x:2, y:0, z:0)
Pathfinding at TileCoord(x:3, y:0, z:0)
Pathfinding at TileCoord(x:0, y:0, z:0)
Pathfinding at TileCoord(x:1, y:0, z:0)
Pathfinding at TileCoord(x:-7, y:0, z:-1)
Pathfinding at TileCoord(x:-6, y:0, z:-1)
Pathfinding at TileCoord(x:-4, y:0, z:-1)
Pathfinding at TileCoord(x:-3, y:0, z:-1)
Pathfinding at TileCoord(x:-2, y:0, z:-1)
Pathfinding at TileCoord(x:-1, y:0, z:-1)
Pathfinding at TileCoord(x:-5, y:0, z:-2)
Pathfinding at TileCoord(x:-8, y:0, z:-1)
Pathfinding at TileCoord(x:0, y:0, z:-2)
Pathfinding at TileCoord(x:7, y:0, z:1)
Pathfinding at TileCoord(x:6, y:0, z:1)
Pathfinding at TileCoord(x:4, y:0, z:1)
Pathfinding at TileCoord(x:5, y:0, z:1)
Pathfinding at TileCoord(x:2, y:0, z:1)
Pathfinding at TileCoord(x:3, y:0, z:1)
Pathfinding at TileCoord(x:0, y:0, z:1)
Pathfinding at TileCoord(x:1, y:0, z:1)
Pathfinding at TileCoord(x:-7, y:0, z:-2)
Pathfinding at TileCoord(x:-6, y:0, z:-2)
Pathfinding at TileCoord(x:-4, y:0, z:-2)
Pathfinding at TileCoord(x:-3, y:0, z:-2)
Pathfinding at TileCoord(x:-2, y:0, z:-2)
Pathfinding at TileCoord(x:-1, y:0, z:-2)
Pathfinding at TileCoord(x:-8, y:0, z:-4)
Pathfinding at TileCoord(x:-7, y:0, z:-4)
Pathfinding at TileCoord(x:-6, y:0, z:-4)
Pathfinding at TileCoord(x:-5, y:0, z:-4)
Pathfinding at TileCoord(x:-4, y:0, z:-4)
Pathfinding at TileCoord(x:-3, y:0, z:-4)
Pathfinding at TileCoord(x:-2, y:0, z:-4)
Pathfinding at TileCoord(x:-1, y:0, z:-4)
Pathfinding at TileCoord(x:0, y:0, z:-4)
Pathfinding at TileCoord(x:-4, y:0, z:-5)
Pathfinding at TileCoord(x:-8, y:0, z:-6)
Pathfinding at TileCoord(x:-7, y:0, z:-5)
Pathfinding at TileCoord(x:-6, y:0, z:-5)
Pathfinding at TileCoord(x:-5, y:0, z:-5)
Pathfinding at TileCoord(x:-3, y:0, z:-5)
Pathfinding at TileCoord(x:-2, y:0, z:-5)
Pathfinding at TileCoord(x:-1, y:0, z:-5)
Pathfinding at TileCoord(x:0, y:0, z:-5)
Pathfinding at TileCoord(x:-4, y:0, z:-6)
Pathfinding at TileCoord(x:-8, y:0, z:-5)
Pathfinding at TileCoord(x:-7, y:0, z:-6)
Pathfinding at TileCoord(x:-6, y:0, z:-6)
Pathfinding at TileCoord(x:-5, y:0, z:-6)
Pathfinding at TileCoord(x:-3, y:0, z:-6)
Pathfinding at TileCoord(x:-2, y:0, z:-6)
Pathfinding at TileCoord(x:-1, y:0, z:-6)
Pathfinding at TileCoord(x:0, y:0, z:-6)
Pathfinding at TileCoord(x:-7, y:0, z:-7)
Pathfinding at TileCoord(x:-6, y:0, z:-7)
Pathfinding at TileCoord(x:-5, y:0, z:-7)
Pathfinding at TileCoord(x:-4, y:0, z:-7)
Pathfinding at TileCoord(x:-3, y:0, z:-7)
Pathfinding at TileCoord(x:-2, y:0, z:-7)
Pathfinding at TileCoord(x:-1, y:0, z:-7)
Pathfinding at TileCoord(x:0, y:0, z:-7)
Pathfinding at TileCoord(x:-8, y:0, z:-7)
Pathfinding at TileCoord(x:7, y:0, z:-7)
Pathfinding at TileCoord(x:1, y:0, z:-7)
Pathfinding at TileCoord(x:3, y:0, z:-7)
Pathfinding at TileCoord(x:4, y:0, z:-7)
Pathfinding at TileCoord(x:5, y:0, z:-7)
Pathfinding at TileCoord(x:6, y:0, z:-7)
Pathfinding at TileCoord(x:2, y:0, z:-7)
Pathfinding at TileCoord(x:7, y:0, z:-6)
Pathfinding at TileCoord(x:1, y:0, z:-6)
Pathfinding at TileCoord(x:2, y:0, z:-6)
Pathfinding at TileCoord(x:3, y:0, z:-6)
Pathfinding at TileCoord(x:5, y:0, z:-6)
Pathfinding at TileCoord(x:6, y:0, z:-6)
Pathfinding at TileCoord(x:4, y:0, z:-6)
Pathfinding at TileCoord(x:7, y:0, z:-5)
Pathfinding at TileCoord(x:1, y:0, z:-5)
Pathfinding at TileCoord(x:2, y:0, z:-5)
Pathfinding at TileCoord(x:3, y:0, z:-5)
Pathfinding at TileCoord(x:4, y:0, z:-5)
Pathfinding at TileCoord(x:5, y:0, z:-5)
Pathfinding at TileCoord(x:6, y:0, z:-5)
Pathfinding at TileCoord(x:7, y:0, z:-4)
Pathfinding at TileCoord(x:1, y:0, z:-4)
Pathfinding at TileCoord(x:2, y:0, z:-4)
Pathfinding at TileCoord(x:3, y:0, z:-4)
Pathfinding at TileCoord(x:4, y:0, z:-4)
Pathfinding at TileCoord(x:5, y:0, z:-4)
Pathfinding at TileCoord(x:6, y:0, z:-4)
Pathfinding at TileCoord(x:3, y:0, z:-2)
Pathfinding at TileCoord(x:-8, y:0, z:1)
Pathfinding at TileCoord(x:7, y:0, z:-2)
Pathfinding at TileCoord(x:1, y:0, z:-2)
Pathfinding at TileCoord(x:2, y:0, z:-2)
Pathfinding at TileCoord(x:4, y:0, z:-2)
Pathfinding at TileCoord(x:5, y:0, z:-2)
Pathfinding at TileCoord(x:6, y:0, z:-2)
Pathfinding at TileCoord(x:-7, y:0, z:1)
Pathfinding at TileCoord(x:-6, y:0, z:1)
Pathfinding at TileCoord(x:-5, y:0, z:1)
Pathfinding at TileCoord(x:-4, y:0, z:1)
Pathfinding at TileCoord(x:-3, y:0, z:1)
Pathfinding at TileCoord(x:-2, y:0, z:1)
Pathfinding at TileCoord(x:-1, y:0, z:1)
Pathfinding at TileCoord(x:3, y:0, z:-1)
Pathfinding at TileCoord(x:-8, y:0, z:0)
Pathfinding at TileCoord(x:7, y:0, z:-1)
Pathfinding at TileCoord(x:1, y:0, z:-1)
Pathfinding at TileCoord(x:2, y:0, z:-1)
Pathfinding at TileCoord(x:4, y:0, z:-1)
Pathfinding at TileCoord(x:5, y:0, z:-1)
Pathfinding at TileCoord(x:6, y:0, z:-1)
Pathfinding at TileCoord(x:-7, y:0, z:0)
Pathfinding at TileCoord(x:-6, y:0, z:0)
Pathfinding at TileCoord(x:-5, y:0, z:0)
Pathfinding at TileCoord(x:-4, y:0, z:0)
Pathfinding at TileCoord(x:-3, y:0, z:0)
Pathfinding at TileCoord(x:-2, y:0, z:0)
Pathfinding at TileCoord(x:-1, y:0, z:0)
Assembly Phase 2: Pathfinding lookup
Searching manifest at TileCoord(x:-5, y:0, z:-1)
Searching manifest at TileCoord(x:-8, y:0, z:-2)
Searching manifest at TileCoord(x:0, y:0, z:-1)
Searching manifest at TileCoord(x:7, y:0, z:0)
Searching manifest at TileCoord(x:6, y:0, z:0)
Searching manifest at TileCoord(x:4, y:0, z:0)
Searching manifest at TileCoord(x:5, y:0, z:0)
Searching manifest at TileCoord(x:2, y:0, z:0)
Searching manifest at TileCoord(x:3, y:0, z:0)
Searching manifest at TileCoord(x:0, y:0, z:0)
Searching manifest at TileCoord(x:1, y:0, z:0)
Searching manifest at TileCoord(x:-7, y:0, z:-1)
Searching manifest at TileCoord(x:-6, y:0, z:-1)
Searching manifest at TileCoord(x:-4, y:0, z:-1)
Searching manifest at TileCoord(x:-3, y:0, z:-1)
Searching manifest at TileCoord(x:-2, y:0, z:-1)
Searching manifest at TileCoord(x:-1, y:0, z:-1)
Searching manifest at TileCoord(x:-5, y:0, z:-2)
Searching manifest at TileCoord(x:-8, y:0, z:-1)
Searching manifest at TileCoord(x:0, y:0, z:-2)
Searching manifest at TileCoord(x:7, y:0, z:1)
Searching manifest at TileCoord(x:6, y:0, z:1)
Searching manifest at TileCoord(x:4, y:0, z:1)
Searching manifest at TileCoord(x:5, y:0, z:1)
Searching manifest at TileCoord(x:2, y:0, z:1)
Searching manifest at TileCoord(x:3, y:0, z:1)
Searching manifest at TileCoord(x:0, y:0, z:1)
Searching manifest at TileCoord(x:1, y:0, z:1)
Searching manifest at TileCoord(x:-7, y:0, z:-2)
Searching manifest at TileCoord(x:-6, y:0, z:-2)
Searching manifest at TileCoord(x:-4, y:0, z:-2)
Searching manifest at TileCoord(x:-3, y:0, z:-2)
Searching manifest at TileCoord(x:-2, y:0, z:-2)
Searching manifest at TileCoord(x:-1, y:0, z:-2)
Searching manifest at TileCoord(x:-8, y:0, z:-4)
Searching manifest at TileCoord(x:-7, y:0, z:-4)
Searching manifest at TileCoord(x:-6, y:0, z:-4)
Searching manifest at TileCoord(x:-5, y:0, z:-4)
Searching manifest at TileCoord(x:-4, y:0, z:-4)
Searching manifest at TileCoord(x:-3, y:0, z:-4)
Searching manifest at TileCoord(x:-2, y:0, z:-4)
Searching manifest at TileCoord(x:-1, y:0, z:-4)
Searching manifest at TileCoord(x:0, y:0, z:-4)
Searching manifest at TileCoord(x:-4, y:0, z:-5)
Searching manifest at TileCoord(x:-8, y:0, z:-6)
Searching manifest at TileCoord(x:-7, y:0, z:-5)
Searching manifest at TileCoord(x:-6, y:0, z:-5)
Searching manifest at TileCoord(x:-5, y:0, z:-5)
Searching manifest at TileCoord(x:-3, y:0, z:-5)
Searching manifest at TileCoord(x:-2, y:0, z:-5)
Searching manifest at TileCoord(x:-1, y:0, z:-5)
Searching manifest at TileCoord(x:0, y:0, z:-5)
Searching manifest at TileCoord(x:-4, y:0, z:-6)
Searching manifest at TileCoord(x:-8, y:0, z:-5)
Searching manifest at TileCoord(x:-7, y:0, z:-6)
Searching manifest at TileCoord(x:-6, y:0, z:-6)
Searching manifest at TileCoord(x:-5, y:0, z:-6)
Searching manifest at TileCoord(x:-3, y:0, z:-6)
Searching manifest at TileCoord(x:-2, y:0, z:-6)
Searching manifest at TileCoord(x:-1, y:0, z:-6)
Searching manifest at TileCoord(x:0, y:0, z:-6)
Searching manifest at TileCoord(x:-7, y:0, z:-7)
Searching manifest at TileCoord(x:-6, y:0, z:-7)
Searching manifest at TileCoord(x:-5, y:0, z:-7)
Searching manifest at TileCoord(x:-4, y:0, z:-7)
Searching manifest at TileCoord(x:-3, y:0, z:-7)
Searching manifest at TileCoord(x:-2, y:0, z:-7)
Searching manifest at TileCoord(x:-1, y:0, z:-7)
Searching manifest at TileCoord(x:0, y:0, z:-7)
Searching manifest at TileCoord(x:-8, y:0, z:-7)
Searching manifest at TileCoord(x:7, y:0, z:-7)
Searching manifest at TileCoord(x:1, y:0, z:-7)
Searching manifest at TileCoord(x:3, y:0, z:-7)
Searching manifest at TileCoord(x:4, y:0, z:-7)
Searching manifest at TileCoord(x:5, y:0, z:-7)
Searching manifest at TileCoord(x:6, y:0, z:-7)
Searching manifest at TileCoord(x:2, y:0, z:-7)
Searching manifest at TileCoord(x:7, y:0, z:-6)
Searching manifest at TileCoord(x:1, y:0, z:-6)
Searching manifest at TileCoord(x:2, y:0, z:-6)
Searching manifest at TileCoord(x:3, y:0, z:-6)
Searching manifest at TileCoord(x:5, y:0, z:-6)
Searching manifest at TileCoord(x:6, y:0, z:-6)
Searching manifest at TileCoord(x:4, y:0, z:-6)
Searching manifest at TileCoord(x:7, y:0, z:-5)
Searching manifest at TileCoord(x:1, y:0, z:-5)
Searching manifest at TileCoord(x:2, y:0, z:-5)
Searching manifest at TileCoord(x:3, y:0, z:-5)
Searching manifest at TileCoord(x:4, y:0, z:-5)
Searching manifest at TileCoord(x:5, y:0, z:-5)
Searching manifest at TileCoord(x:6, y:0, z:-5)
Searching manifest at TileCoord(x:7, y:0, z:-4)
Searching manifest at TileCoord(x:1, y:0, z:-4)
Searching manifest at TileCoord(x:2, y:0, z:-4)
Searching manifest at TileCoord(x:3, y:0, z:-4)
Searching manifest at TileCoord(x:4, y:0, z:-4)
Searching manifest at TileCoord(x:5, y:0, z:-4)
Searching manifest at TileCoord(x:6, y:0, z:-4)
Searching manifest at TileCoord(x:3, y:0, z:-2)
Searching manifest at TileCoord(x:-8, y:0, z:1)
Searching manifest at TileCoord(x:7, y:0, z:-2)
Searching manifest at TileCoord(x:1, y:0, z:-2)
Searching manifest at TileCoord(x:2, y:0, z:-2)
Searching manifest at TileCoord(x:4, y:0, z:-2)
Searching manifest at TileCoord(x:5, y:0, z:-2)
Searching manifest at TileCoord(x:6, y:0, z:-2)
Searching manifest at TileCoord(x:-7, y:0, z:1)
Searching manifest at TileCoord(x:-6, y:0, z:1)
Searching manifest at TileCoord(x:-5, y:0, z:1)
Searching manifest at TileCoord(x:-4, y:0, z:1)
Searching manifest at TileCoord(x:-3, y:0, z:1)
Searching manifest at TileCoord(x:-2, y:0, z:1)
Searching manifest at TileCoord(x:-1, y:0, z:1)
Searching manifest at TileCoord(x:3, y:0, z:-1)
Searching manifest at TileCoord(x:-8, y:0, z:0)
Searching manifest at TileCoord(x:7, y:0, z:-1)
Searching manifest at TileCoord(x:1, y:0, z:-1)
Searching manifest at TileCoord(x:2, y:0, z:-1)
Searching manifest at TileCoord(x:4, y:0, z:-1)
Searching manifest at TileCoord(x:5, y:0, z:-1)
Searching manifest at TileCoord(x:6, y:0, z:-1)
Searching manifest at TileCoord(x:-7, y:0, z:0)
Searching manifest at TileCoord(x:-6, y:0, z:0)
Searching manifest at TileCoord(x:-5, y:0, z:0)
Searching manifest at TileCoord(x:-4, y:0, z:0)
Searching manifest at TileCoord(x:-3, y:0, z:0)
Searching manifest at TileCoord(x:-2, y:0, z:0)
Searching manifest at TileCoord(x:-1, y:0, z:0)
Assembly Phase 4: Declare remaps
Assembly Phase 5: Consume remaps
Assembly Phase 6: Register and Gate collection
Assembly merge tile map cleanup

How do you make it happen again?

Create an IC setup as shown in pictures.

Edit: added compilation log for scrambler0

Activity

k-7iro

k-7iro commented on Dec 7, 2024

@k-7iro

As you may know, you can use Buffer Gate until it is fixed.

MrTJP

MrTJP commented on Dec 25, 2024

@MrTJP
Owner

To clarify, the issue here is that there is no compile-time check for this condition, which is not allowed. The compiler assumes 1 compute unit between each input and output register.

Likely I'll add a warning for this condition, unless there is an elegant way to add support for this condition in the compiler itself. Will investigate..

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      [Bug] Fabrication: single wire lanes output nothing · Issue #1903 · MrTJP/ProjectRed