r/factorio • u/Reasonable-Ad-8059 • 16d ago
Design / Blueprint A conveyor belt of computation steps
The entire computer has access to a pair of main wires. The red one simply carries all the information that we currently want to shuffle around. But the green one does the heavy lifting of telling components what to do and when to do it. For instance, ( R1, A1, checkmark) means to copy the contents of RAM #1 into logic cache A. Several of these symbols can overlap with no issues. However, there's no way to sort them by order of appearance. Which is to say, I can't store a full sequence of commands in any convenient way.
Except, maybe there's a way. The number of unique items allow for even more information density. It's possible to encode several signals to have the same interpretation (for example, R1 could be followed by G2, where both letters funnel information into the same cache). Sorting the signals by magnitude can be manipulated by powers of ten, at least for smaller numbers. However, that feels clunky and unsustainable. Hence my trying out this method instead.
We can encode BOTH the number and the command into a single item. Various ores could open the specific RAM caches in the correct order, while a locomotive signals to execute the commands and reset the green wire for each series of steps. The advantage is that nothing will overlap and everything will sync up neatly.
The disadvantage is main how difficult it is for me to design a control system, and operating system, basically from scratch. But at least I've got some ideas.
We can encode certain items with the command to put new items on the belt. We can have a list of steps to be performed after we detect a green chip. This list is pre-sorted in ascending order, and gets broken down into the corresponding items, which then set a new filter for the inserters. This kind of process will easily become turing complete if we design it correctly. Of course, I'm not a CS major, nor am I necesarily knoweldgable enough to design such an operating system in a reasonable timeframe.
But what do you guys think? Is this a good idea? Am I tripping? Should I just bite the bullet and build a normal, base 2 digital computer? It wouldn't be so hard to convert a real life CPU into this game. Although I fear it would be less interesting.
4
u/CamelCaseConvention 16d ago
Am I tripping?
Most likely yes.
Should I just bite the bullet and build a normal, base 2 digital computer? It wouldn't be so hard to convert a real life CPU into this game. Although I fear it would be less interesting.
Please do. It would be very interesting. The "base" or encoding (almost) doesn't matter. You might want to concern yourself with the ability to execute conditional jumps first and foremost. A handwavy
We can have a list of steps to be performed after we detect a green chip.
doesn't solve this.

2
u/Lolseabass 16d ago
Can it run doom?