BCD adder & subtractor

Build image: 
In-game name (NO VISITORS! Must be LEARNER rank or higher!): 
Nichti
Builder name(s) and current ranks: 
Nichti Thinkerer
Creation location: 
-776 39 -2672
Machine Features: 

it can add and subtract any 6 digit intigers witch result is also a 6 digit intiger.

Input is handled via a number pad, and results can be saved or reset.
Negative numbers are supported.

How To Use: 

It's a modular BCD adder/subtractor, operating entirely via signal strength.
The architecture is fully modular and infinitely expandable; runtime scales linearly with the number of digits.

At its core lies a comparator system that outputs |a − b|.
Inputs a, b, and the output can be inverted, resulting in 8 operating modes.
Each mode is valid within a specific number range. Once this range is exceeded, a mode switch is required.
Switching follows these two rules:

Addition: if a + b > 9

Subtraction: if a > b

Negative numbers are handled using 2’s complement representation.

Next to the number pad, there are four control buttons for operation modes. Currently, only addition (+) and subtraction (−) are implemented.
The remaining two buttons are used to reset the registers and to shift the result into upper memory.

The number pad follows the standard layout found on most keyboards.
Note: If a button is pressed before the processing indicator lamp turns off, the input may be written incorrectly.

Request status: 
Not approved

Comments

I temporarily gonna deny this PR, until the issues are solved.

We found:
- (-333 + -333 = -999334) the negation of the output is a bit funky in this case.
- When subtraction is on and memory/register are reset, the whole machine loops (it should not).
- (-6 + -6 = -8) & (-6 + 0 = 14) Something is wrong when doing -6 and more...

By Ecconia