TIS-100

TIS-100

View Stats:
Help I am stuck on the signal pattern detector
Have been trying to do this for the past two weeks, have had no progress can anyone give a starting hint so that i can get on the right track?
< >
Showing 1-9 of 9 comments
LordBhorak Sep 17, 2016 @ 2:56pm 
If you mean the one that checks for three zeros in a row... Here's a tip for one kind of solution:
Loops loops loops.
Extreme Midget Sep 17, 2016 @ 3:40pm 
yea that one.
CSn|_Zelda Sep 18, 2016 @ 6:07pm 
My hint for this puzzle: build a state machine in a single node.
Extreme Midget Sep 19, 2016 @ 12:10pm 
what do you mean by state machine?
Xavr0k Sep 20, 2016 @ 2:24am 
A state machine is represented with a state diagram like this:
http://imgur.com/a/nyjwB

Each circle represents a state. These could be things such as "last 2 inputs were zeroes". Put an "S" in one to mark it as your starting state. From each state you draw 1 arrow leading to another state for each possible input or set of inputs, in this case it would be =0 or ≠0. Along each each arrow you would write "<input value> / <output value>".

If you can make up a state diagram for this puzzle, translating it into code should be fairly straightforward.
Extreme Midget Sep 20, 2016 @ 7:15am 
oh thanks so much! i really should have taken comuting as an A level.
Extreme Midget Oct 3, 2016 @ 1:15pm 
So I got this solution, do you think it can be optimazed?
http://steamcommunity.com/sharedfiles/filedetails/?id=774477558
Xavr0k Oct 3, 2016 @ 11:12pm 
Well you could shave off 2 instuctions by removing the last 2 lines from the bottom right node since they are redundant.

The top left node executes one more line of code when the input is not zero than when it is zero. The majority of inputs are zero, so that's not optimal.

Otherwise the biggest difference you could make would be to change the way you're remembering what state you're in. You're using a number stored in an ACC but another method would be to remember it by what line of code is being executed. You basically use labels to mark your states and jump between them as necessary. Using this method I got it down to 174/4/15 or 179/4/13 with all the work being done in one node.
Extreme Midget Oct 4, 2016 @ 11:33am 
aah nice! thanks you are a wizard
< >
Showing 1-9 of 9 comments
Per page: 1530 50