Starbound

Starbound

Macrochip WIP
127 Comments
SFC-Daniel 18 Aug, 2017 @ 12:59pm 
the Chip was programmed with your first(?) ALU Build and went black when accessed, other ALU builds are ok, deleted the problematic chip to not reset my worldposition accidentally^^.
And also have the problems with Megamacrochips facing to the left, the image appears one chip wide to the right.
SFC-Daniel 17 Aug, 2017 @ 4:09am 
Hello again^^ tried to acces a remotechip but don't know what was build in there and got:
https://pastebin.com/htMbwdpk
Storm_UK  [author] 2 Jul, 2017 @ 6:08am 
From what I've been reading, multiplication takes several steps involving left shifting bits from one number and ANDing with each bit in the other in turn then totalling them all up. It can use these ALU's (left shift is effectively A plus A) though the circuit would be quite large in any case.

As for division, I guess something similar is done right-shifting somehow but *shrugs*

I may have went a little overboard trying to duplicate the 74181 ALU chip, heh. A simpler 'cheaty' component that took two input values and performed the selected arithmetic would have been better perhaps. Building a circuit in starbound is already rather meta anyway!
SFC-Daniel 2 Jul, 2017 @ 4:13am 
Hm clipboard issue after the first insertation is solved by use of a better program then the base editor it seems^^ The 4 ALU Solution is flawless but a little complicated^^ but its the way probably. We won't see multiplication with those ALU's though right?
SFC-Daniel 2 Jul, 2017 @ 3:54am 
Btw the cla is useful when building an 8-bit adder from single parts but not really with the new alus's and comperators for me.
SFC-Daniel 2 Jul, 2017 @ 3:32am 
could insert the Sticks finally^^ rebound ctrl key and rebootet pc was the trick i think. 3 ALU Version works like a charm :D thanks and the CLA Module is only the exterior without the main adder?
Storm_UK  [author] 26 Jun, 2017 @ 12:13pm 
https://pastebin.com/GtadpYkP for a new 4 ALU test.
Storm_UK  [author] 26 Jun, 2017 @ 10:54am 
hmm don't have any problem with pasting it into my starbound chat. :(
SFC-Daniel 26 Jun, 2017 @ 5:01am 
can't insert the spawnitem command text please try if you can, its too long/big or something.
Storm_UK  [author] 25 Jun, 2017 @ 2:26pm 
I think I've got it working - with 3 ALU's here: [ https://pastebin.com/XcB2j0hC ] :)
Storm_UK  [author] 24 Jun, 2017 @ 1:02pm 
Hmm still not quite right on some matching bit additions. Scratching my head.
SFC-Daniel 24 Jun, 2017 @ 10:36am 
ok^^ can't insert the CLA pastebin text into starbound only parts so its too long to copy?
And easier while this is CLA adder totally overflowing me with input variables :D?^^

and checked out the 3rd a+b stick^^seems alright but it flickers so some propagation delay. why actually 4 bit^^ and not 8 which can also do 4 bit operations^^?
Storm_UK  [author] 24 Jun, 2017 @ 7:51am 
Now [ https://pastebin.com/ES1zWNub ] with my new CLA.
Storm_UK  [author] 24 Jun, 2017 @ 4:42am 
For addtion it seems to be 1st ALU P > 2nd ALU, 2nd ALU (P&G) > 3rd ALU (9th bit)
[ https://pastebin.com/mQrPTp1y ]. I've got a CLA in the works to make this easier!
SFC-Daniel 22 Jun, 2017 @ 2:30pm 
hm works ^^ but^^ i don't understand why the alu connection is only when p g and c-out are all active and why the changed a plus b +1 formual in ALU 2 then generates still the correct result O.o (128 and 8 + 8 example) seems only to occur with 8 (bit 4)^^ and secondly i don't like propagation increasing builds^^ can you add the 3Andgate into the ALU and create a new output instead? wont delay the 9th bit then^^
Storm_UK  [author] 22 Jun, 2017 @ 5:22am 
Hmm, been playing a bit more with the ALU. For addition, pass P G and C-out to an AND3 and then that to the C-in of the next ALU. Think have cascaded two adding/subtracting here https://pastebin.com/HU3JuvLL to some extent.
SFC-Daniel 22 Jun, 2017 @ 1:28am 
Checked out the File you gave me and its correct so far with Plus/Minus except two issues^^

Bit 9 is always active no matter what i tried, and ALU 2 can not be set to A plus B but only to A plus B +1
SFC-Daniel 22 Jun, 2017 @ 12:47am 
oh remotesensors are still at 250 tiles range in the Standartversion of Macrochips? Read it in the description.
SFC-Daniel 19 Jun, 2017 @ 2:14pm 
ok got the stick now will continue later^^ thanks so far :)
Storm_UK  [author] 19 Jun, 2017 @ 2:06pm 
The /spawnitem should make a vcdatastick pop at your mouse pointer. Works here. As to multiplication... no idea, sorry!
SFC-Daniel 19 Jun, 2017 @ 2:01pm 
Is multiplication available with the ALU? and hides behind which function?^^
SFC-Daniel 19 Jun, 2017 @ 1:58pm 
ok how do i spawn your stick again? copied the text and pasted in chat with admin mode on but doesnt work
Storm_UK  [author] 19 Jun, 2017 @ 1:37pm 
Going beyond my logic circuit knowledge now I think. I've kinda managed a two-ALU addition/subtraction with this circuit [ https://pastebin.com/iynJn7kW ] - the 9th bit needs more logic to properly calculate but works for A-B results leading to negative values now with S0110 C-in 1 input on first ALU.
SFC-Daniel 19 Jun, 2017 @ 1:36pm 
And thanks for the comparator :) works with 8bit it seems and is very efficient this will make most addings/subractions superfuild^^
SFC-Daniel 19 Jun, 2017 @ 1:15pm 
Besides the ALU developement i figured out how to convert an 8bit signal into 256 analog positions^^ And would need an 2x4 bit multiplicated result at 8bit too^^ So but generally i have 8bits data that need to be added/subracted/multiplicated so i only have 4 input slots at the ALU how do i connect the bits 5-8 then?
Storm_UK  [author] 19 Jun, 2017 @ 12:29pm 
The trick seems to be how to determine the '9th' bit from the 2nd ALU's G/P/C-out for negative values on subtraction. Answers on a postcard to...
Storm_UK  [author] 19 Jun, 2017 @ 12:25pm 
Subtraction did seem to output a twos complement negative number for me from two cascaded ALU's with P > C-in of the higher priority nibbles. A minus B minus 1 (plus C) seems to be the function necessary for A - B, S0110 C-in 0. I've added another component which may be useful here - upload in a sec.
SFC-Daniel 19 Jun, 2017 @ 10:49am 
The thing is ALU 1 needs to know from ALU 2 if it can keep the bits active that are in most cases not correct when computing 8 bit numbers and vice versa
Storm_UK  [author] 19 Jun, 2017 @ 8:12am 
Hmm, having some success cascading P > C-in of next ALU for A plus B. Not figured out A minus B yet.
SFC-Daniel 19 Jun, 2017 @ 8:01am 
a minus b appears when c-in is active^^ still not clear how to process 8bit data
Storm_UK  [author] 19 Jun, 2017 @ 7:32am 
S0110 should be A minus B, S1001 should be A plus B. I think its working correctly now, just not sure on the uses :)
SFC-Daniel 19 Jun, 2017 @ 7:26am 
The 2's complement is normally implemented within the last bit not via c-out^^ since the cascade would also need the c-out for higher numbers
SFC-Daniel 19 Jun, 2017 @ 7:24am 
meant the old platforms, when the directiongiver failed the platform turned around and took the right direction after a short while instead.
Ok chips woring alus are up and i want to add(subrakt) 36(A) and 12(B) whih fuction should i set?
Storm_UK  [author] 19 Jun, 2017 @ 7:23am 
Looks like the ALU returns a twos complement negative value, with the C-out denoting positive/negative. Eg, 1111 = -7 in this case.
Storm_UK  [author] 19 Jun, 2017 @ 7:13am 
You mean the lifts like in the stations? If so think those are just wired buttons and scripted vehicle lifts.
SFC-Daniel 19 Jun, 2017 @ 7:12am 
And the negative result output was very welcome how do i see ot now?
SFC-Daniel 19 Jun, 2017 @ 7:06am 
btw did they gave platform also an intelligent call function?
SFC-Daniel 19 Jun, 2017 @ 7:05am 
its ok now^^
Storm_UK  [author] 19 Jun, 2017 @ 7:00am 
Reuploaded. If still not working then prob need to look at your log again.
SFC-Daniel 19 Jun, 2017 @ 6:44am 
non alu containing chips also dont work.
Storm_UK  [author] 19 Jun, 2017 @ 6:43am 
They're okay here. You may need to start a fresh circuit to place/test ALU's as the component nodes changed.
SFC-Daniel 19 Jun, 2017 @ 6:40am 
oh and Starbound update inc
SFC-Daniel 19 Jun, 2017 @ 6:36am 
chips are not working atm
Storm_UK  [author] 19 Jun, 2017 @ 6:24am 
Hmm, incorrect bracket. Not sure how I managed to upload that after testing but fixed.
SFC-Daniel 19 Jun, 2017 @ 6:12am 
Getting disconnected when accessing my chips, when relog i start on my ship and if i break the chip it dissolves.
https://pastebin.com/c1wZKPqN
Storm_UK  [author] 19 Jun, 2017 @ 4:43am 
Right, completely revised the ALU script, basing off some code I stumbled across. A lot tidier than the way I was going about it! It looks to match the outputs on this simulation well: http://www.righto.com/2017/03/inside-vintage-74181-alu-chip-how-it.html

The P/G outputs are not useful at present. 'A=B' if all F outputs are high (not each input A is equal to input B which is what I would have thought??) P/G will be useable with the a carry-lookahead chip (the '74182', which I may be adding next.) Ripple carry passing the carry straight up to next should function however.
SFC-Daniel 18 Jun, 2017 @ 2:49pm 
Blackscreen this time with better reference ;) https://pastebin.com/A50854HV
unistalled longer ship travels btw
Storm_UK  [author] 18 Jun, 2017 @ 1:50pm 
That sky.config.patch error looks to be from the mod Longer Ship Travel Time (https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=816819845) not this one ;)

The difference between "+" and "plus"... that confused me too when working out the functions! In logic summations, + means 'or', a + in a circle means 'xor' and line above means 'not'.
SFC-Daniel 18 Jun, 2017 @ 1:42pm 
another blackscreen and whats the difference between "+" and "plus"?
SFC-Daniel 18 Jun, 2017 @ 1:41pm 
The old blackscreen with chipreset while playing around with the inputs of the alu:(switched s0 on off on or so)
[22:32:26.285] [Error] Could not apply patch from file /sky.config.patch in source: C:\Program Files (x86)\Steam\steamapps\workshop\content\211820\816819845\contents.pak. Caused by: (JsonPatchException) Could not apply patch to base. (JsonPatchException) Could not apply operation to base. (TraversalException) Could not find "speedupTimer" to remove
[22:32:27.459] [Error] Fatal Error: Access violation detected at 0000000140652426 (Read of address 0000000000000142)

and you changed the calculation method allocation^^ have to find the normal ones again^^