Paste a url where
can be downloaded
A whopping 26 parts have been needed to merge the previous designs of analog bus and adder! Now you can operate registers and add the contents of two of them!
Built in the SPH in KSP 1.12.3.
This piece of hardware can be either active or inactive. To work properly you should activate it by pressing ‘0’, or whatever key is associated with AG 10. You can deactivate it later by pressing the same key.
The picture below shows what are the KALs.
The bus has three register, each having three KALs. These three registers are, from left to right, A, B and C.
In each register, there are three KALs; they are, from left to right, read (R), store (S) and write (W). By default, R and W are disabled, while S is always enabled.
The adder has a processor, an output, and a carry in and a carry out. These last two are not stored anywhere.
- Type: SPH
- Class: probe
- Part Count: 26
- Pure Stock
- KSP: 1.12.3
Moving Stuff Between Registers
If you enable the R KAL of a register, it will store whatever is on the bus in that register, and it will continue reading the bus until it is deactivated, after which the data from the bus is successfully copied in the register.
If you enable the W KAL of a register, it will write whatever is in that register to the bus, and it will continue writing to the bus until it is deactivated, after which the data is successfully copied in the bus.
If you enable the W KAL of a register and the R KAL of another register, it will transfer the data from the former to the latter (it will still be in the former though).
Although the bus can be read by several registers at the same time, writing to it with more than one register will put an undefined value on the bus, so avoid it.
Note that the bus and each register can store an integer between 0 and 255 included (an 8-bit number).
More info can be found here.
Using the adder
The adder adds the contents of the A and B registers, but it doesn’t output the result to the bus. To store the result in the A register, please follow these steps:
Deactivate the adder processor. This is to ensure that, once that the data is put in the A register, the adder won’t try to recalculate the sum and change the A register again and again (this is not what we want).
Activate, then deactivate, the adder output. This will store whatever’s in it (the result of the addition, modulo 256) in the A register.
You can then reactivate the adder processor.
The result should now be in the A register.
When the thing is activated, it will not allow you to change the contents of the registers. If you want to put that or that number in some register, you’ll first have to put it in the C register, and then transfer it from C to the register you want to put it in.
To load the C register, enable the ‘LDC’ controller, enter the value you want to put in C, then disable it. The number will then be stored in the C register.
Here’s what’s in the adder processor:
So please, don’t open its editor. It will lag the game, and it can even crash it.
Breaking spacetime and other stuff since [SEGMENTATION FAULT]